
Komponenty sprzętowe:
- Mikrokontroler: Arduino MKR WiFi 1010 (Mikrokontroler do przetwarzania danych z czujników i sterowania systemem grzewczym. Posiada funkcje WiFi i Bluetooth).
- Czujniki: Czujnik wilgotności i temperatury: Czujniki wilgotności, ciśnienia i temperatury BME280
- Wyświetlacz OLED: Wyświetlacz OLED SSD1306 0,96 cala I2C 128 x 64 piksele
- Moduł przekaźnika: Moduł przekaźnika 5V/12V, używany jako przełącznik do sterowania systemem grzewczym.
- Zegar czasu rzeczywistego: Zegar czasu rzeczywistego RTC DS3231 I2C (do śledzenia dokładnego czasu)
- zasilacz: zasilacz 5V/2A
- obudowa: drukowana w 3D (zobacz szkic w tej notatce) lub skrzynka do modernizacji, aby pomieścić komponenty
- płyta obwodów drukowanych
- płytka stykowa i przewody połączeniowe (jeśli chcesz uruchomić to jako prototyp i ewentualnie rozbudować)
- niestandardowa drukowana płytka obwodów (zaprojektuj ją za pomocą KiCad EDA i wydrukuj ją za pomocą Eurocircuits)

Wymagania dotyczące oprogramowania:
-
IDE: Arduino IDE (możesz użyć dowolnego IDE, które pozwala na przesyłanie kodu do Arduino)
-
Programowanie: Wystarczy podstawowa znajomość asemblera i dostrajania konfiguracji. Jeśli chcesz rozbudować projekt, przydatne może być pewne doświadczenie z powyższymi technologiami.
-
Arduino: C++
-
Baza danych: SQL (MariaDB)
-
Front-end: TypeScript (front-end Angular17)
-
Backend: TypeScript (Node.js, Express)
Krok 1: Obudowa wydrukowana w 3D

Krok 2: Wydrukuj PCB


Krok 3: Montaż sprzętu i konfiguracja mikrokontrolera

Konfiguracja mikrokontrolera
Rozpocznij proces montażu od ustawienia mikrokontrolera. Zamontuj go na płytce stykowej, aby można było łatwiej prototypować i łączyć. Podłącz mikrokontroler do źródła zasilania, upewniając się, że otrzymuje stabilne zasilanie 5V/2A. To początkowe ustawienie stanowi podstawę termostatu, zapewniając niezbędną kontrolę i moc przetwarzania dla pozostałych komponentów.
Integracja czujnika
Następnie zintegruj czujniki temperatury i wilgotności z mikrokontrolerem. W zależności od wybranego typu czujnika, postępuj zgodnie z odpowiednim schematem połączeń, aby je prawidłowo podłączyć. Dla czujnika Adafruit wymienionego powyżej, możesz znaleźć schemat na ich stronie internetowej. Czujnik będzie dostarczał dane w czasie rzeczywistym o temperaturze i wilgotności otoczenia, które mikrokontroler wykorzysta do regulacji systemu grzewczego. Zamocuj czujnik w miejscu, gdzie będzie mógł dokładnie mierzyć temperaturę w pomieszczeniu.
Połączenie wyświetlacza OLED
Podłącz wyświetlacz OLED do mikrokontrolera, upewniając się, że piny są poprawnie skonfigurowane. Wyświetlacz będzie używany jako interfejs użytkownika do pokazywania aktualnej temperatury, ustawionej temperatury oraz innych istotnych informacji. Prawidłowe podłączenie wyświetlacza jest kluczowe dla wyraźnego i dokładnego wyświetlania danych.
Przekaźnik Konfiguracja modułu
Skonfiguruj moduł przekaźnika, który będzie sterował systemem grzewczym na podstawie odczytów temperatury i danych wejściowych od użytkownika. Podłącz przekaźnik do mikrokontrolera, aby zapewnić, że może on obsłużyć obciążenie systemu grzewczego. Przekaźnik działa jako przełącznik, a mikrokontroler może go włączać lub wyłączać, aby regulować temperaturę. Przetestuj działanie przekaźnika, aby upewnić się, że reaguje poprawnie na sygnały sterujące z mikrokontrolera.
Krok 4: Programowanie termostatu
-
okresowo wysyła sygnał kontrolny do serwera.
-
jeśli sygnał jest poprawny, umieszcza żądanie danych czujnika w kolejce.
-
przetwarza wszystkie oczekujące żądania w kolejce.
-
próbuje ponownie połączyć się, jeśli jest w trybie awaryjnym i upłynął wystarczający czas.
-
steruje przekaźnikiem grzewczym na podstawie temperatury podczas trybu awaryjnego.
-
aktualizuj wyświetlacz okresowo.
-
Podłącz płytkę: Podłącz Arduino MKR 1010 WiFi do komputera za pomocą kabla USB.
-
Wybierz płytę główną: Przejdź do Narzędzia->Płyta główna i wybierz Arduino MKR WiFi 1010.
-
Wybierz port: Przejdź do Narzędzia->Porty i wybierz port odpowiadający podłączonej płytce (np. COM3, /dev/ttyUSB0).
-
Otwórz szkic: Otwórz plik szkicu Arduino (.ino) w Arduino IDE.
-
Skonfiguruj szkic: zmodyfikuj szkic, aby dopasować go do adresu IP serwera, danych logowania WiFi i innych ustawień.
-
Zweryfikuj szkic: Kliknij ikonę znaku wyboru w lewym górnym rogu Arduino IDE, aby skompilować i zweryfikować kod. Zapewnia to brak błędów składniowych.
-
Prześlij szkic: Kliknij ikonę prawej strzałki obok znaku wyboru, aby przesłać kod do Arduino MKR 1010 WiFi. IDE ponownie skompiluje kod, a następnie prześle go do płyty głównej.
-
Włącz Monitor Szeregowy: Przejdź do Narzędzia->Monitor Szeregowy, aby włączyć monitor szeregowy.
-
Ustaw prędkość transmisji: Upewnij się, że prędkość transmisji na dole monitora szeregowego jest ustawiona na 9600, aby pasowała do ustawienia Serial.begin(9600); w kodzie.
-
Wyświetl wynik: Powinieneś zobaczyć dane wyjściowe z Arduino, które zawierają komunikaty debugowania i odczyty czujników.

