#include #include const char* ssid = "ALBER 2.4G"; const char* password = "asrael2050"; const char* mqtt_server = "broker.emqx.io"; const int mqtt_port = 1883; const char* topic = "motor/control"; WiFiClient espClient; PubSubClient client(espClient); // Pines del sensor const int trigPin = 5; const int echoPin = 18; void setup_wifi() { WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); } } void setup() { Serial.begin(115200); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); setup_wifi(); client.setServer(mqtt_server, mqtt_port); } void loop() { if (!client.connected()) { while (!client.connected()) { client.connect("ESP32-Sensor"); } } client.loop(); // Medir distancia digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); long duration = pulseIn(echoPin, HIGH); float distance = duration * 0.034 / 2; Serial.print("Distancia: "); Serial.println(distance); if (distance < 20.0) { client.publish(topic, "adelante"); } else { client.publish(topic, "stop"); } delay(1000); }