import time
import board
import busio
import digitalio
import bme280
# ==== Инициализация BME280 (I2C) ====
i2c = busio.I2C(board.GP1, board.GP0) # SCL, SDA
# ==== Инициализация MQ2 (аналоговый датчик, эмуляция через ползунок) ====
# В Wokwi аналоговые датчики заменяются ползунками (Potentiometer)
mq2_value = 0 # Это значение будет меняться через ползунок в Wokwi
# ==== Инициализация датчика воды (GPIO) ====
water_sensor = digitalio.DigitalInOut(board.GP15)
water_sensor.direction = digitalio.Direction.INPUT
water_sensor.pull = digitalio.Pull.UP # Активный низкий уровень
# ==== Основной цикл ====
while True:
# Чтение с BME280
temperature = bme280.temperature
humidity = bme280.humidity
pressure = bme280.pressure
print(f"\n🌡️ Температура: {temperature:.1f} °C")
print(f"💧 Влажность: {humidity:.1f} %")
print(f"🔽 Давление: {pressure:.1f} гПа")
# Чтение с MQ2 (в Wokwi используйте ползунок)
mq2_value = 20000 # Пример значения (замените на реальное с ползунка)
print(f"🔥 MQ2: Значение={mq2_value}")
# Проверка датчика воды
if not water_sensor.value: # Если сенсор активирован (низкий уровень)
print("⚠️ Обнаружена утечка воды!")
else:
print("Вода не обнаружена.")
time.sleep(2)