Stwórz swój własny regulator temperatury za pomocą Arduino

  • Mark Lucas
  • 0
  • 3941
  • 706
Reklama

Podnieś idealny chleb, zaparz piękne piwo i hoduj szczęśliwe pisklęta za pomocą kontrolera temperatury Arduino. Jeśli mieszkasz w mało wiarygodnym klimacie, takim jak Anglia, wskazówki, które nakazują utrzymanie czegoś w ustalonej temperaturze, nie są szczególnie pomocne - nie mamy klimatyzatorów, a podniesienie termostatu dla całego domu nie jest praktyczne dla po prostu robiąc bochenek chleba. Nawet trzymane w środku pisklęta mogą umrzeć, jeśli temperatura spadnie w nocy; a nakłonienie ich do wyklucia się ma przede wszystkim jeszcze bardziej rygorystyczny zakres temperatur. Ale potrzebuję mojego chleba, a pisklęta potrzebują wykluwania się - więc zamiast kupować drogi sprzęt, możemy połączyć kompetentny kontroler temperatury z Arduino i domowymi kawałkami.

To samo dotyczy również utrzymywania niskiej temperatury produktów - uruchomienie całej lodówki tylko po to, by zrobić jogurt, może być marnotrawstwem - ale w przypadku regulatora temperatury zasada jest taka sama. Zamiast aktywować element grzewczy, będziesz aktywować wtyczkę w mini lodówce lub innym elemencie chłodzącym, takim jak Peltier (chłodziarka termoelektryczna) - i oczywiście logika zostanie odwrócona.

Czego będziesz potrzebować

To projekt Arduino - jeśli nigdy wcześniej nie pracowałeś z Arduino, nasz darmowy przewodnik dla początkujących to fantastyczne miejsce do rozpoczęcia.

  • Arduino
  • Czujnik temperatury - używam TMP36, tanie jednopakowe urządzenie, które jest dostarczane z zestawem dla początkujących Oomlout (Wielka Brytania) / Sparkfun (USA).
  • Przekaźniki lub przełączniki wtykowe RC
  • Zaciski śrubowe
  • Box, aby zatrzymać ciepło
  • Element grzewczy lub żarówka i urządzenie (lub oba)

Ostatni element został celowo niejasny. Jeśli masz żarówkę (taką, która się nagrzewa, a nie żarówkę energooszczędną) lub gorącą lampę do kontuzji sportowych i tak dalej, prawdopodobnie jest to najłatwiejsza konfiguracja. Używam opaski grzewczej - w zasadzie opaski gumowej, która nagrzewa się, gdy przepływa prąd, używana na butlach i beczkach do początkowych etapów fermentacji w produkcji wina lub piwa - technicznie może to być ryzyko pożaru, jeśli nie zostanie owinięta wokół czegoś , więc proszę nie rób tego, używam go tylko do testowania. Możesz także kupić podkładki grzewcze do tego samego celu.

Ze względów bezpieczeństwa używam tych wtyczek RC do przełączania urządzeń prądu przemiennego, ze zhakowanym sterownikiem szczegółowo opisanym w tym artykule z automatyki domowej. Urządzenia sterujące z Arduino: początek automatyki domowej Urządzenia sterujące z Arduino: początek automatyki domowej Last W tym czasie pokazałem kilka sposobów sterowania mową w projektach Arduino za pomocą SiriProxy, wbudowanych elementów głosowych OS X oraz niektórych skryptów Automator, a nawet dedykowanego układu sprzętowego do rozpoznawania głosu. JA… . Jest bezprzewodowy, więc w żadnym wypadku nie muszę dotykać przewodów pod napięciem.

Wykrywanie temperatury

Zacznijmy od podłączenia i przetestowania czujnika. [Schemat z Adafruita]

Z płaską stroną do siebie i nogami skierowanymi w dół, czujnik temperatury TMP36 jest podłączony +, sygnał, GND w tej kolejności. + Przechodzi na wyjście 3,3 V z Arduino; potrzebujesz również innej linii od +3,3 V do styku AREF - oznacza to, że Arduino używa 3,3 V dla odniesienia wejścia analogowego zamiast 5 V. Podłącz styk sygnału czujnika do A1. W poprzednich próbach korzystałem z TMP36 bezpośrednio na linii 5 V. działa, nieco niestety po sparowaniu z przekaźnikiem, za każdym razem, gdy przekaźnik był aktywowany, nastąpił spadek mocy, co spowodowało bardzo wahania odczytów.

Użyłem starego kabla sieciowego jako kabla sygnałowego - bardzo przydatne, aby mieć go wokół, ponieważ w środku jest 8 przewodów. Kabel jest dość cienki, dlatego pamiętaj o wzmocnieniu drugiego końca lutem, w którym zostanie wkręcony w blok zacisków.

Wzór w kodzie zakłada, że ​​używasz czujnika tMP36; powinieneś być w stanie znaleźć próbkę kodu dla innych czujników. Ten przykładowy kod pochodzi od Adafruita - załaduj go i otwórz konsolę szeregową, aby sprawdzić dane wyjściowe.

Jeśli to możliwe, porównaj z termometrem. Odczyty nieprawidłowe?

  • Sprawdź, czy dostarczane napięcie wynosi 3,3 V.
  • Czy AREF jest również podłączony do 3,3 V.?

Dodawanie logiki przełączania

Do sterowania elementem grzejnym używam gniazd RC z Maplin i rozłożyłem sterownik. Należy podłączyć tylko uziemienie i pin kontrolny. Zmodyfikowałem kod, aby zawierał odpowiednie biblioteki, które można pobrać stąd.

W tym momencie zamierzam również usunąć wszystkie odniesienia do Farenheita i kontynuować pracę tylko z Celsjuszem. Następnie zdefiniowałem pożądaną temperaturę do utrzymania i dodałem w prostej strukturze sterowania, takiej jak:

jeśli (temperatura C < desiredTempC) mySwitch.switchOn(1,1); Serial.println("Heater ON");  else Serial.println("Heater OFF"); mySwitch.switchOff(1,1);  

Nie ma tu nic skomplikowanego, czego nie zrozumiesz - po prostu porównując bieżący odczyt temperatury z pożądanym i włączając przełącznik, jeśli jest niższy; w przeciwnym razie wyłącz.

Pełny kod można znaleźć tutaj, ale musisz go dostosować, jeśli używasz przekaźnika (nie jest to trudne). Oto kompletny schemat okablowania, którego użyłem:

Kładąc wszystko razem

Przyklej czujnik do używanego pudełka i umieść element grzewczy w odpowiednim miejscu. Ustaw żądaną temperaturę i włącz wszystko. Jeśli na razie utrzymasz połączenie z komputerem, możesz użyć konsoli szeregowej, aby obserwować zmiany w miarę nagrzewania się urządzenia.

Dalsza praca

  • Aby zmniejszyć wpływ wszelkich wahań temperatury, możesz spróbować wygładzić wyniki. Utwórz tablicę do przechowywania 10 odczytów i oblicz średnią dla każdej pętli.
  • Aby uniknąć szybkiej aktywacji i dezaktywacji elementu grzejnego, utwórz zmienną do zapisywania odliczania. Za każdym razem, gdy aktywujesz lub dezaktywujesz, zapisz aktualny czas w odliczaniu, a następnie przed ponownym przełączeniem stanu sprawdź, czy upłynął X czasu od ostatniej zmiany stanu.
  • W przypadku projektu bez komputera podłącz mały ekran LCD, aby wyświetlić aktualną temperaturę i pozwolić zobaczyć aktualną i żądaną temperaturę.

Testowanie

Wreszcie, czym byłby ten projekt bez małego testu? W maszynie do chleba ubiłem porcję gotowego ciasta i podzieliłem na dwa bochenki. Ten, który zakwasił się w skrzyni, był o wiele milszy, ale wtedy temperatura powietrza w dzisiejszych czasach i tak wynosi około 26 stopni Celsjusza - byłoby to znacznie bardziej przydatne w zimie. Niezależnie od tego, lepiej pójdę zrobić zupę, aby towarzyszyć temu cudownemu chlebowi.

Więc co byś zrobił, to wymaga stałej temperatury?




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.