Spisu treści:
- Krok 1: Materiały eksploatacyjne
- Krok 2: Budowa gniazdka
- Krok 3: Projekt curciutu
- Krok 4: Przylutuj płytkę
- Krok 5: Zamontuj płytkę drukowaną
- Krok 6: Kod Arudino
- Krok 7: Pulpit nawigacyjny Thingspeak
- Krok 8: Konfiguracja CloudMQTT
- Krok 9: Testy końcowe
Wideo: Przekaźnik sterowany temperaturą ESP8266: 9 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Mój przyjaciel jest naukowcem, który przeprowadza eksperymenty bardzo wrażliwe na temperaturę i wilgotność powietrza. W pomieszczeniu inkubatora jest mały grzejnik ceramiczny, ale termostat grzejnika nie był wystarczająco dokładny, był w stanie utrzymać temperaturę tylko w granicach 10-15 stopni.
Komercyjne urządzenia rejestrujące temperaturę i wilgotność mogą być dość drogie, a uzyskanie danych z urządzenia może być trudne. Dodatkowo nie mogą kontrolować temperatury, tylko rejestrują dane. Zapytał, jak trudno byłoby zbudować urządzenie, które mogłoby precyzyjnie sterować grzałką za pomocą przekaźnika, jednocześnie rejestrując temperaturę i wilgotność. Brzmiało dość łatwo.
Chwytając ESP8266, przekaźnik, DHT22 i jakąś internetową platformę IoT, ruszamy.
Krok 1: Materiały eksploatacyjne
Ten projekt wykorzystuje garść materiałów eksploatacyjnych, z których wszystkie są dość powszechne i być może masz je już pod ręką. Oto pełna lista tego, czego użyłem, możesz dostosować w razie potrzeby do potrzeb Twojego projektu.
- ESP8266 ESP-01 (lub podobna płytka ESP8266)
- Czujnik temperatury i wilgotności DHT-22
- Zmienny regulator napięcia LM317 (lub standardowy regulator 3.3V byłby łatwiejszy)
- Przekaźnik wysokoprądowy 5V (zacząłem od 10A, ale zdmuchnąłem go w ciągu 2 dni)
- Różne rezystory i kondensatory
- Przewody połączeniowe
- Standardowe gniazdko elektryczne i osłona
- Elektryczne pudełko gangów
- Stara wtyczka USB z adapterem
- Stara wtyczka elektryczna
Z perspektywy czasu użycie NodeMCU zamiast ESP-01 miałoby znacznie większy sens. Nie miałem wtedy żadnego, więc zadowoliłem się tym, co miałem pod ręką.
Krok 2: Budowa gniazdka
Chociaż technicznie zacząłem od mikrokontrolera i kodu, warto najpierw zacząć od gniazdka sieciowego. Do tego projektu użyłem pojedynczej skrzynki, standardowego gniazdka z 2 wtykami i przewodu zasilającego ze starej listwy zasilającej.
Gniazdko elektryczne zostaje połączone z dwoma białymi przewodami połączonymi ze sobą i dwoma przewodami uziemiającymi. Dwa czarne przewody przechodzące przez górną stronę przekaźnika. Upewnij się, że zaciski są dobrze przykręcone i żadna z żył nie będzie się zwierać, położyłem trochę lutowia na przewodach, aby podstawki pozostały razem.
Uważaj na wysokie napięcie i dwukrotnie sprawdź każde połączenie. Dobrym pomysłem jest nałożenie taśmy elektrycznej na płuca z drutu, aby się nie poluzowały
Krok 3: Projekt curciutu
Obwód jest dość prosty, ale jeśli użyjesz ESP-01 tak jak ja, będziesz musiał dodać regulator napięcia, aby uzyskać 3,3 V. Standardowe przekaźniki wymagają 5 V, więc potrzebujesz szyny 3,3 V i 5,0 V.
Mój obwód wykorzystywał regulator napięcia LM317 z zestawem rezystorów, aby uzyskać stałą szynę 3,3 V, podłączyłem USB 5 V do zasilania przekaźnika. Istnieją przekaźniki 3,3 V, ale nie są potrzebne do przekaźników wysokoprądowych, jeśli zamierzasz zasilać mały grzejnik.
DHT22 wymaga rezystora podciągającego 4,7k.
Krok 4: Przylutuj płytkę
Ułóż i przylutuj wszystkie komponenty. Może to być trochę trudne, ale wcześniej zaplanuj ślady za pomocą kawałka papieru milimetrowego.
Użyłem płyty USB do wtyczki zasilania, ale była ona dość słaba i zamiast tego zastąpiłem ją dwoma pinami nagłówka. Użyłem dwóch żeńskich nagłówków na płycie i przylutowałem dwa męskie piny bezpośrednio do starej wtyczki USB. Okazało się to bardziej niezawodne i solidne. Kolory okablowania USB to:
Czarny UziemionyCzerwony 5V
Użyłem również męskich nagłówków, aby odsłonić piny DHT22 i Relay na mojej płycie perfboard, aby połączyć je standardowymi przewodami połączeniowymi.
Upewnij się, że oznaczyłeś każdy styk, zasilanie i złącze uziemienia na wypadek późniejszego odłączenia.
Krok 5: Zamontuj płytkę drukowaną
Z boku puszki zamontuj płytkę drukowaną za pomocą śrub i/lub kleju na gorąco. Upewnij się, że rozmieszczenie jest wykonane tak, aby przewody połączeniowe sięgały do przekaźnika zamontowanego w pudełku i można było łatwo podłączyć złącze zasilania.
Dodaj przewód połączeniowy z termokurczliwym przewodem do czujnika DHT22 o długości odpowiedniej do Twojej sytuacji. Mój miał około 8 cali długości. Zamiast tego użyłem kabla CAT5, aby przewody mogły być lekko wygięte i były wolnostojące.
Krok 6: Kod Arudino
Kod Arduino używa mojej klasy SensorBase, która jest dostępna na mojej stronie Github. Nie musisz używać mojego kodu SensorBase. Możesz pisać bezpośrednio do serwera MQTT i Thingspeak.
Ten projekt zawiera trzy kluczowe funkcje oprogramowania:
- Lokalny serwer WWW do ustawiania i wyświetlania wartości
- Zdalny serwer MQTT do wysyłania i przechowywania danych
- Pulpit nawigacyjny Thingspeak do wykresów danych
Możesz użyć jednej lub więcej z tych funkcji. Po prostu dostosuj kod w razie potrzeby. To jest konkretny zestaw kodu, którego użyłem. Będziesz musiał dostosować hasła i klucze API.
- Kod bazowy czujnika na Github.
- Kod laboratoryjny na Github.
Krok 7: Pulpit nawigacyjny Thingspeak
Skonfiguruj bezpłatne konto Thingspeak i zdefiniuj nowy pulpit nawigacyjny. Będziesz musiał użyć tej samej kolejności przedmiotów, jak wymieniłem poniżej, nazwy nie mają znaczenia, ale kolejność ma.
Jeśli chcesz dodać lub usunąć elementy, dostosuj parametry Thingspeak w kodzie Arduino. Jest to dość proste i dobrze udokumentowane na ich stronie internetowej.
Krok 8: Konfiguracja CloudMQTT
Dowolna usługa MQTT lub podobna usługa IoT, taka jak Blynk, będzie działać, ale w tym projekcie wybieram CloudMQTT. W przeszłości korzystałem z CloudeMQTT do wielu projektów, a ponieważ ten projekt zostanie przekazany znajomemu, sensowne jest utworzenie nowego konta, które można również przenieść.
Utwórz konto CloudMQTT, a następnie utwórz nową „instancję”, wybierz rozmiar „Cute Cat”, ponieważ używamy go tylko do kontroli, bez logowania. CloudMQTT dostarczy ci nazwę serwera, nazwę użytkownika, hasło i numer portu. (Zauważ, że numer portu nie jest standardowym portem MQTT). Przenieś wszystkie te wartości do kodu ESP8266 w odpowiednich lokalizacjach, upewniając się, że wielkość liter jest poprawna. (poważnie, skopiuj/wklej wartości)
Możesz użyć panelu „Websocket UI” w CloudMQTT, aby zobaczyć połączenia urządzenia, naciśnięcia przycisków i, w dziwnym scenariuszu, gdy pojawi się błąd, komunikat o błędzie.
Będziesz potrzebować tych ustawień również podczas konfigurowania klienta Android MQTT, więc zanotuj wartości, jeśli zajdzie taka potrzeba. Mamy nadzieję, że Twoje hasło nie jest zbyt skomplikowane do wpisania na telefonie. Nie możesz tego ustawić w CloudMQTT.
Krok 9: Testy końcowe
Teraz musimy przetestować finalne urządzenie.
Zanim cokolwiek przetestujesz, sprawdź dwukrotnie KAŻDY przewód i użyj multimetru w trybie ciągłości, aby prześledzić wszystkie przewody. Upewnij się, że wszystko jest podłączone do miejsca, w którym myślisz, że jest połączone. Ponieważ przekaźnik izoluje wysokie napięcie od niskiego napięcia, nie musisz się martwić o zwarcie mikrokontrolera.
Użyłem prostego testera obwodów elektrycznych, aby sprawdzić, czy wszystko jest prawidłowo podłączone po stronie wysokiego napięcia, a także sprawdził się dobrze, aby przetestować mój przekaźnik.
Dodaj swój ESP2866 do sieci Wi-Fi, łącząc się z urządzeniem za pomocą telefonu lub laptopa. Używa on standardowej biblioteki WifiManager i ma całą niezbędną dokumentację na swojej stronie Github.
Używając żarówki żarowej, umieściłem czujnik DHT22 obok żarówki i podłączyłem lampę do gniazdka. Pozwoliło to na szybkie podgrzanie temperatury, powodując, że przekaźnik wyłączył lampę i powtórzył proces. Było to bardzo pomocne w przetestowaniu wszystkiego, w tym mojego połączenia Wi-Fi.
Twoje urządzenie powinno prawidłowo włączać przekaźnik, gdy temperatura jest zbyt niska i wyłączać go, gdy temperatura osiągnie wysoką wartość. W moich testach udało się utrzymać temperaturę naszej przestrzeni laboratoryjnej w granicach 1 stopnia Celsjusza przez 24 godziny na dobę.
Zalecana:
Przekaźnik I2C z Arduino IDE: 5 kroków
Przekaźnik I2C Met Arduino IDE: Zamawiam ładną płytkę przekaźnikową, ale nie było instrukcji ArduinoIDE, tylko Raspberry Pi e.o. Dowiaduję się, jak go używać z Arduino i chcę się nim podzielić, abyś mógł zaoszczędzić ten czas. Oryginalny przykład RaspberryPi: wiki.52pi.com/index.php/DockerPi_4_Channel_R
Zestaw przełączników zdalnego sterowania DIY firmy 2262/2272 M4 płytka do chleba i przekaźnik dla producenta: 4 kroki (ze zdjęciami)
Zestaw przełączników zdalnego sterowania DIY firmy 2262/2272 M4 Bread Board & Relay for Maker: inteligentny dom nadchodzi w naszym życiu. jeśli chcemy, aby inteligentny dom się spełnił, potrzebujemy wielu przełączników zdalnego sterowania. dzisiaj zrobimy test, zróbmy łatwy obwód, aby nauczyć się teorii przełącznika zdalnego sterowania. Ten projekt zestawu autorstwa SINONING ROBOT
Stwórz własny przekaźnik półprzewodnikowy: 4 kroki (ze zdjęciami)
Stwórz własny przekaźnik półprzewodnikowy: W tym projekcie przyjrzymy się przekaźnikom półprzewodnikowym, dowiemy się, jak działają i kiedy ich używać, a na koniec stworzymy własny przekaźnik półprzewodnikowy DIY. Zacznijmy
Przekaźnik budzika Arduino: 6 kroków (ze zdjęciami)
Przekaźnik budzika Arduino: Mam wiele problemów z wstawaniem wcześnie rano, zwłaszcza jeśli ostatniej nocy nie spałem. Zasadniczo ten projekt pozwala na otwarcie przekaźnika w ustawionym czasie za pomocą klawiatury i lcd. Ten przekaźnik może sterować wieloma urządzeniami z włączania
Automatyczne zdalne włączanie/wyłączanie za pomocą gniazda MIC w kamerze / przekaźnik półprzewodnikowy niskiego napięcia: 4 kroki (ze zdjęciami)
Automatyczne zdalne włączanie/wyłączanie za pomocą gniazda MIC w kamerze / przekaźnik półprzewodnikowy niskiego napięcia: Przegląd: Użyliśmy gniazda MIC kamery do wykrywania, czy kamera jest włączona. Zbudowaliśmy niskonapięciowy przekaźnik półprzewodnikowy do wykrywania gniazda MIC i automatycznego włączania i wyłączania zdalnego urządzenia w tym samym czasie, co kamera. Półprzewodnikowy