یک سنسور آب و هوا را به سرور Home Assistant خود متصل کنید تا دما و رطوبت را کنترل کند و دستگاه های هوشمند را فعال کند.
شما می توانید به سرعت یک سنسور دما و رطوبت دیجیتال DIY با ماژول نمایشگر OLED بسازید تا دما و رطوبت اتاق خود را نشان دهد. همچنین میتوانید این سنسور آب و هوای DIY را در نرمافزار اتوماسیون خانه هوشمند خود، مانند سرور Home Assistant، ادغام کنید تا واحد HVAC (تهویه مطبوع)، فن یا رطوبتساز خود را برای کنترل دما و رطوبت بهطور خودکار انجام دهید.
چیزهایی که شما نیاز دارید
برای ساخت یک سنسور دما و رطوبت هوشمند DIY به اجزای زیر نیاز دارید:
- یک سنسور دما/رطوبت دیجیتال با دقت بالا AHT10
- یک برد Wemos D1 Mini یا NodeMCU
- صفحه نمایش OLED SSD1306 128×64
- چند سیم جامپر (DuPont).
- پرینت سه بعدی یا هر موردی برای مونتاژ اجزا
- لحیم کاری و قلع
- سرور Home Assistant که روی Raspberry Pi یا هر سخت افزار سازگار x86 یا x64 اجرا می شود. اگر میخواهید بیشتر بدانید، میتوانید قبل از شروع با Home Assistant و نحوه عملکرد آن آشنا شوید.
مرحله 1: Firmware را آماده کنید
باید با استفاده از افزونه ESPHome در سرور Home Assistant خود، سفتافزار را کامپایل و آماده کنید. مراحل به شرح زیر است:
- در سرور Home Assistant خود، به Settings > Add-ons بروید و روی دکمه Add-On Store کلیک کنید.
- ESPHome را جستجو کنید و بر روی افزونه ESPHome در نتایج جستجو کلیک کنید. روی ESPHome (dev) یا ESPHome (بتا) کلیک نکنید.
- روی دکمه Install کلیک کنید.
- پس از نصب روی Start کلیک کنید. همچنین گزینه های Start on boot، Watchdog و Show on sidebar را فعال کنید.
- روی Open Web UI کلیک کنید و + New Device را بزنید.
- نام دستگاه مانند “climate-sensor” را تایپ کنید و روی Next کلیک کنید.
- یک برد خاص را انتخاب کنید و برد Wemos D1 Mini را از لیست انتخاب کنید.
- روی Next > Skip کلیک کنید. اگر از برد NodeMCU استفاده می کنید ESP8266 را انتخاب کنید.
- روی گزینه Edit کلیک کنید و سپس تغییرات زیر را در پنجره ویرایشگر YAML اعمال کنید.
اعتبار Wi-Fi خود را اضافه کنید:
wifi:
ssid: "YourWiFiSSID"
password: "WiFiPassword"
سپس کد زیر را درست زیر خط captive_portal قرار دهید:
web_server:
port: 80
i2c:
sda: D2
scl: D1
scan: True
time:
- platform: sntp
id: my_time
sensor:
- platform: aht10
temperature:
name: "Living Room Temperature"
id: temp
humidity:
name: "Living Room Humidity"
id: hum
update_interval: 10s
- platform: uptime
name: "Station Bureau Uptime Sensor"
- platform: wifi_signal
name: "Station Bureau WiFi Signal"
update_interval: 30s
font:
- file: 'slkscr.ttf'
id: font1
size: 12
- file: 'BebasNeue-Regular.ttf'
id: font2
size: 15
- file: 'arial.ttf'
id: font3
size: 15
display:
- platform: ssd1306_i2c
model: "SSD1306 128x64"
reset_pin: D0
address: 0x3C
rotation: 180°
lambda: |-
// Print "Ravi Smart Home" in top center.
it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, "Ravi Smart Home");
// Print temperature (from AHT10 sensor)
if (id(temp).has_state()) {
it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT , "Temperature: %.1f°", id(temp).state);
}
// Print Humidity (from AHT10 sensor)
if (id(hum).has_state()) {
it.printf(127, 60, id(font3), TextAlign::BASELINE_RIGHT , "Humidity: %.1f", id(hum).state);
}
عنوان خود را جایگزین «خانه هوشمند راوی» کنید. هنگامی که کد را اضافه و به روز کردید، روی ذخیره و سپس نصب کلیک کنید.
از لیست گزینه ها گزینه Plug into this computer را انتخاب کنید و سپس منتظر بمانید تا سیستم عامل کامپایل شود. این ممکن است 10-15 دقیقه طول بکشد.
پس از کامپایل شدن سیستم عامل، روی دکمه دانلود پروژه کلیک کنید. با این کار، فایل کامپایلشده air-sensor.bin در سیستم شما دانلود میشود.
مرحله 2: نرم افزار را روی D1 Mini یا NodeMCU فلش کنید
برای فلش کردن میانافزار دانلود شده در D1 Mini یا NodeMCU، میتوانید از نصبکننده وب استفاده کنید، یا برای فلش کردن میانافزار، میتوانید از ابزار فلش مبتنی بر وب یا ابزار ESPHome-Flasher برای سیستم ویندوز، لینوکس یا مک خود استفاده کنید. برای فلش کردن سیستم عامل با استفاده از نصب کننده مبتنی بر وب، مراحل زیر را دنبال کنید:
- پس از دانلود فریمور، گزینه Open ESPHome web را مشاهده خواهید کرد. روی آن کلیک کنید. این یک پنجره جدید باز خواهد کرد. ر.
- روی دکمه Connect کلیک کنید، پورت COM را انتخاب کنید و سپس دکمه Connect را کلیک کنید. اگر برد شناسایی نشد، درایورهای CH240/CH341 را نصب کنید.
- روی Install > Choose File کلیک کنید و فایل firmware condition-sensor-factory.bin را انتخاب کنید.
- در نهایت روی دکمه Install کلیک کنید. منتظر بمانید تا ابزار وب ESPHome فلش سیستم عامل را تمام کند.
هنگامی که سیستم عامل فلش شد، به داشبورد ESPHome بروید و فایل weather-sensor.bin را پیدا کنید. باید وضعیت را به صورت ONLINE نمایش دهد.
مرحله 3: سنسور آب و هوا را به داشبورد Home Assistant اضافه کنید
اکنون می توانید با دنبال کردن مراحل زیر، سنسور آب و هوا را به داشبورد Home Assistant اضافه کنید:
- در سرور Home Assistant خود، به تنظیمات > دستگاهها و خدمات بروید.
- دستگاه سنسور آب و هوا باید به طور خودکار کشف و قابل مشاهده باشد. روی دکمه CONFIGURE کلیک کنید و سپس روی ارسال کلیک کنید. این دستگاه را به لیست دستگاه های ESPHome اضافه می کند.
- روی سنسور آب و هوا که در زیر ESPHome فهرست شده است کلیک کنید و سپس روی پیوند 1 دستگاه کلیک کنید.
- روی افزودن به داشبورد > مشاهده > افزودن به داشبورد کلیک کنید. اتاق مورد نظر را که می خواهید سنسور را در آن اضافه کنید انتخاب کنید.
مرحله 4: AHT10 را به D1 Mini یا NodeMCU وصل کنید
برای اتصال سنسور دما و رطوبت AHT10 به برد میکروکنترلر D1 Mini یا NodeMCU با استفاده از سیم های جامپر به دستورالعمل های زیر مراجعه کنید.
- پایه VIN نمایشگر AHT10 و OLED را به پایه 5 ولتی D1 Mini یا پایه 3.3 ولتی NodeMCU متصل کنید.
- پایه GND صفحه نمایش AHT10 و OLED را به پایه G در D1 Mini یا NodeMCU متصل کنید.
- پایه SCL نمایشگر AHT10 و OLED را به پایه D1 NodeMCU یا D1 Mini متصل کنید.
- پایه SDA صفحه نمایش AHT10 و OLED را به پایه D2 NodeMCU یا D1 Mini متصل کنید.
برای لحیم کاری این قطعات به یک آهن لحیم کاری نیاز دارید. قبل از انجام این پروژه DIY می توانید نحوه لحیم کاری را یاد بگیرید.
پس از اتصال صفحه نمایش AHT10 و OLED، می توانید مقادیر دما و رطوبت را در صفحه نمایش OLED و داشبورد Home Assistant بررسی کنید.
مقادیر در زمان واقعی تغییر خواهند کرد. بنابراین، با دمیدن سنسور AHT10 می توانید بررسی کنید که آیا به درستی کار می کند. انجام این کار مقادیر دما و رطوبت را فورا تغییر می دهد. پس از موفقیت آمیز بودن آزمایشها، میتوانید اجزا را در یک جعبه چاپ سه بعدی مانند این مورد از Thingiverse قرار دهید.
همچنین میتوانید ادغام Amazon Alexa یا Google Assistant را در Home Assistant راهاندازی کنید تا اعلانها و هشدارهای صوتی را هنگامی که سطح دما یا رطوبت از حد معینی بیشتر شود یا به آن کاهش یابد، دریافت کنید.
سنسور آب و هوای دیجیتال شما آماده است
به این ترتیب می توانید یک سنسور دما و رطوبت دیجیتال مبتنی بر Wi-Fi هوشمند برای اتاق خود بسازید و آن را با سرور Home Assistant ادغام کنید تا اتوماسیون ایجاد کنید و سایر دستگاه های هوشمند را راه اندازی کنید. به عنوان مثال، میتوانید خودکارسازی را اضافه کنید تا یک واحد HVAC را هنگامی که دما یا/و رطوبت به سطح معینی برسد یا به آن کاهش یابد، خاموش کنید.