Hola estoy probando mi sensor HC-SR04 en mi ESP8266 pero no logro que funcione en mi consola solo me imprime
Distancia: 0 cm
Distancia: 0 cm
Distancia: 0 cm
Distancia: 0 cm
Distancia: 0 cm
Distancia: 0 cm
Distancia: 0 cm
parece que no detecta nada el sensor, ya probe conectar bien los cables pero el problema sigue
NOTA: Ya habia echo esto antes y si me funcionaba bien ahora intento hacer los mismo pero solo con hacer una simple prueba no me funciona, mi codigo es este, tambien probe con diferente sensor y el problema sigue.
Espero me puedan ayudar gracias.
#include <ESP8266WiFi.h>
const char* ssid = "Luis"; // Nombre de tu red WiFi
const char* password = "camote=12"; // Contraseña de tu red WiFi
const int trigPin = D1; // Pin TRIGGER del sensor HC-SR04
const int echoPin = D2; // Pin ECHO del sensor HC-SR04
void setup() {
Serial.begin(115200);
delay(1000);
WiFi.begin(ssid, password);
Serial.println("Conectando a la red WiFi");
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(".");
}
Serial.println("");
Serial.println("Conexión WiFi establecida");
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
// La velocidad del sonido es de aproximadamente 0.034 cm por microsegundo.
// Dividimos por 2 porque el sonido va y viene.
int distance = duration * 0.034 / 2;
Serial.print("Distancia: ");
Serial.print(distance);
Serial.println(" cm");
delay(1000); // Espera 1 segundo antes de realizar la siguiente medición
}
el mio es este
con salidas de 3v lo raro es que ya eh utilizado anteriormente con dos sensores HC-SR04 y normal pero ahora ya no me funciona, tambien use la libreria ultrasonic.h y sigue igual, creo que me comprare un esp32 que trae salida de 5V y un arduino uno para probar ahi
hi,
Una cosa que podrias probar es de poner una resistencia de 1K al pin del echo que va al esp8266. Esta resistencia te baja el voltaje a 3.3 voltios. Usa otro pin para la entrada del echo. Esta forma puedes determinar si los 5 voltios de entradaa esta danado el pin de entrada de le ESP8266.Solamente una sugerencia.
El HC-SR04 funciona perefectamente con 3.3V asi que no tiene nada que ver. La especificación del sensor lo dice. Es mas funciona desde menos tensión hasta tensión aun mayor a 5V.
El ESP32 es primo mayor de ESP8266. Tambien trabaja a 3.3V . No conectes cosas a 5V a un ESP32 porque a la larga dañaras sus GPIOs o sea sus pines.
EL UNO trabaja a 5V
El problema no es 3.3 o 5V. Es revisar las conexiones que dices que ya lo has hecho o probar en otras.
Yo tengo robots de auto que se mueven con sensor ultrasonico a 3.3V y no tienen problemas.
Hay pines en el ESP8266 que no deben usarse para cosas generales.
D1 y D2 no deberían dar problemas
D0 si.
Prueba D5 a D8.
Cómo alimentas el sensor ultrasonico?
Revisa las conexiones.
Usas un protoboard?
alimento al sensor VCC directo a 3V del esp8266, intente hacer con y sin protoboard pero sigue imprimiendo solo 0cm, pongo el codigo en el simulador y todo bien.
lo que si me paso es que cuando cambio rapidamente de sensor me marca una sola vez 70cm o 128cm y luego comienza a mandar 0cm
Queres que lo arme y te muestre que es un problema de tu hardware?
Eso funciona.
Bueno ya el código no coincide con el esquema que nos has mostrado.
Ahora diras.. si si, cambié los pines. Entonces nosotros te diremos, pero nos basamos en lo que publicas!!
Revisa por favor.
Ahi no veo D1 y D2 y lo estas conectando del lado equivocado.
Usa el lado izquierdo de la foto del post #7 no el derecho de esa misma foto.
Asi mismo lo estoy haciendo y nada, pero estoy notando de que cuando conecto solo el D1 Y D2 los conecto y desconecto si me da resultados pero si los dejo conectados solo se queda en 0cm
El esquema 10 no dice eso.
Lo has conectado a cosas que no corresponde en el esquema del post#10.
Cuando conectas y desconectas tienes o generas cosas en el pin echo que son interpretadas como lecturas y por supuesto erróneas.
Cambia de pines, ajusta el código y ver si no es el sensor el que esta fallando.