from wifi_lib import conecta
import time
from umqtt.simple import MQTTClient
import dht
from machine import Pin
import random
# Configurações de rede Wi-Fi
ssid = "Wokwi-GUEST"
password = ""
# Conectando ao Wi-Fi
station = conecta(ssid, password)
# Configurações MQTT
mqtt_client_id = "clientId-5hMLc44WVs-Wokwi"
mqtt_server = "broker.mqttdashboard.com"
mqtt_port = 1883
mqtt_user = ""
mqtt_password = ""
topic = "smartcity/sensores"
def recebi(topico, msg):
print(topico)
print(msg)
# Inicializando o cliente MQTT
try:
client = MQTTClient(mqtt_client_id,
mqtt_server,
mqtt_port,
mqtt_user,
mqtt_password)
client.connect()
client.set_callback(recebi)
client.subscribe("smartcity/sensores")
client.subscribe("smartcity/sensores-node-red")
print("Conectado ao Broker MQTT")
except Exception as e:
print(f"Falha na conexão com o Broker MQTT: {e}")
# Iniciando leitura de sensor e envio MQTT
sensor = dht.DHT11(Pin(4))
sensor.measure()
temp = sensor.temperature()
humidity = sensor.humidity()
# Enviando dados para o broker MQTT
for i in range (3*60):
temp = random.uniform(10.0, 30.0) # Gera um valor de temperatura entre 10.0 e 30.0 graus Celsius
humidity = random.uniform(10.0, 80.0) # Gera um valor de umidade entre 10% e 80%
msg = f'Temperatura: {temp:.2f}C, Umidade: {humidity:.2f}%'
print(f'Dados enviados: {msg}')
client.publish("smartcity/sensores-node-red", msg)
time.sleep(1)