import network
import urequests
import time
import dht
from machine import Pin
# Konfigurasi WiFi
SSID = "Jhy"
PASSWORD = "amagantenk4"
# Konfigurasi Flask API
FLASK_API_URL = "http://192.168.128.52:5000/data"
# Inisialisasi sensor
dht_pin = Pin(14)
ir_pin = Pin(26, Pin.IN)
dht_sensor = dht.DHT11(dht_pin)
# Fungsi untuk koneksi ke WiFi
def connect_wifi():
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect(SSID, PASSWORD)
print("Menghubungkan ke WiFi...", end="")
while not wlan.isconnected():
print(".", end="")
time.sleep(1)
print("\nTerhubung ke WiFi:", wlan.ifconfig())
# Fungsi untuk mengirim data ke Flask API
def send_to_flask(temp, hum, motion):
headers = {
"Content-Type": "application/json"
}
data = {
"temperature": temp,
"humidity": hum,
"motion": motion
}
try:
response = urequests.post(FLASK_API_URL, json=data, headers=headers)
print("Respon dari Flask API:", response.text)
response.close()
except Exception as e:
print("Gagal mengirim data:", e)
# Main Loop
connect_wifi()
while True:
try:
dht_sensor.measure()
temperature = dht_sensor.temperature()
humidity = dht_sensor.humidity()
ir_detecting = 0 if ir_pin.value() else 1
print(f"Suhu: {temperature}°C, Kelembaban: {humidity}%, Gerakan: {ir_detecting}")
send_to_flask(temperature, humidity, ir_detecting)
except Exception as e:
print("Error membaca sensor:", e)
time.sleep(5)