#include <WiFi.h>
#include <PubSubClient.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 4
#define MQTT_BROKER "broker.mqttdashboard.com"
#define MQTT_PORT 1883
#define MQTT_TOPIC "Virtus3/temperatura"
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
WiFiClient wifiClient;
PubSubClient client(wifiClient);
void setup() {
Serial.begin(115200);
sensors.begin();
WiFi.begin("Wokwi-GUEST", ""); // Conecte-se à rede Wi-Fi aberta
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("Conectado à rede Wi-Fi!");
client.setServer(MQTT_BROKER, MQTT_PORT);
}
void loop() {
sensors.requestTemperatures();
float temperature = sensors.getTempCByIndex(0);
Serial.print("Temperatura: ");
Serial.println(temperature);
if (client.connect("EVirtusClientTest")) {
client.publish(MQTT_TOPIC, String(temperature).c_str());
client.disconnect();
Serial.println("Dados enviados para o broker MQTT!");
} else {
Serial.println("Falha na conexão com o broker MQTT.");
}
delay(10000); // Envie a cada 10 segundos
}
Loading
ds18b20
ds18b20