Programación en C- Sensor Ultrasónico y de humedad

// Definición de pines
const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 13;

void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}

void loop() {
long duration;
int distance;

// Enviar pulso de ultrasonido
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

// Leer pulso de retorno
duration = pulseIn(echoPin, HIGH);

// Calcular distancia en cm
distance = duration * 0.034 / 2;

// Encender LED si la distancia es menor o igual a 5 cm
if (distance <= 5) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}

delay(100);
}

// Definición de pines
const int humidityPin = A0;

void setup() {
pinMode(humidityPin, INPUT);
Serial.begin(9600);
}

void loop() {
int humidityValue = analogRead(humidityPin);

// Mapear valor de humedad (puedes ajustar según los valores de tu sensor)
if (humidityValue > 700) {
Serial.println(“Tierra seca (1)”);
} else if (humidityValue <= 700 && humidityValue > 300) {
Serial.println(“Tierra mojada (2)”);
}

delay(500);
}

// Definición de pines
const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 13;
const int humidityPin = A0;

void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT);
pinMode(humidityPin, INPUT);
Serial.begin(9600);
}

void loop() {
// Sensado de ultrasonido
long duration;
int distance;

digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;

if (distance <= 5) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}

// Sensado de humedad
int humidityValue = analogRead(humidityPin);
if (humidityValue > 700) {
Serial.println("Tierra seca (1)");
} else if (humidityValue <= 700 && humidityValue > 300) {
Serial.println("Tierra mojada (2)");
}

delay(500);
}

// Define los pines del sensor de humedad y el LED

const int sensorPin = A0; // Pin analógico donde está conectado el sensor de humedad

const int ledPin = 13;    // Pin digital donde está conectado el LED

// Valores umbrales para humedad

const int dryThreshold = 600;  // Valor umbral para tierra seca (ajusta según tu sensor)

void setup() {

  pinMode(ledPin, OUTPUT);  // Configura el pin del LED como salida

  pinMode(sensorPin, INPUT); // Configura el pin del sensor como entrada

  Serial.begin(9600);        // Inicializa la comunicación serial para monitorear los valores del sensor

}

void loop() {

  int sensorValue = analogRead(sensorPin); // Lee el valor del sensor de humedad

  Serial.print(“Humedad del suelo: “);

  Serial.println(sensorValue);  // Muestra el valor leído en el monitor serial

  if (sensorValue > dryThreshold) { // Si la tierra está seca

    digitalWrite(ledPin, HIGH); // Enciende el LED

  } else {

    digitalWrite(ledPin, LOW);  // Apaga el LED si la humedad es óptima

  }

  delay(1000); // Espera 1 segundo antes de la siguiente lectura

}

Leave a Comment

Tu dirección de correo electrónico no será publicada. Los campos requeridos están marcados *

Scroll to Top