
Założenia:
* niezależna praca dwukanałowa
* możliwość regulacji progu temperatury, przy której załączany jest wentylator, dla każdego kanału z osobna
* możliwość regulacji wartości histerezy – wspólna dla każdego z kanałów
* rozdzielczość nastawień 0,1 st. C
* zastosowanie tranzystorów na wyjściach wentylatorów
* możliwość zasilania napięciem od 7V do 20V
* dokonywanie wszystkich regulacji za pomocą potencjometru
* dokładność pomiaru 0,5 st. C, przy zachowaniu rozdzielczości 0,1 st. C
* całość zamknięta w zgrabnej obudowie
* czujniki temperatury zabezpieczone przed wodą
Urządzenie spełniło wszystkie założenia. Najwięcej problemów sprawiło zabezpieczenie czujników przed działaniem wody. Urządzenie nie jest przeznaczone do ogrzewania (termostat), lecz do schładzania obiektów.
Realizacja:
Po przeanalizowaniu wymagań jakie zostały postawione wobec urządzenia, doszedłem do wniosku, iż najlepszym (najtańszym) rozwiązaniem będzie zastosowanie mikro kontrolera, wybór padł na Atmega8, z racji tego, iż była „na stanie”. Program został napisany w Bascomie AVR, w programie napisałem własne, proste procedury odejmowania liczb zawierających rozwinięcie dziesiętne. Nie używałem zmiennej typu single, ponieważ potrzebuje ona bardzo dużo pamięci RAM. Atmega jest taktowana wewnętrznym rezonatorem 8Mhz. Do Atmegi została dołączona bardzo mała ilość elementów elektronicznych. Na płytce znajduje się dodatkowo stabilizator napięcia Lm7805, który umożliwia w miarę szeroki zakres zasilania urządzenia (zakres ten rozszerzy się po zastosowaniu większego radiatora). Sterownik został wyposażony w wyświetlacz LCD 2x16 znaków, oparty na układzie hd44780. Funkcję czujników temperatury realizują bardzo dobre czujniki firmy Dallas – DS18B20. Układ mocy wyjść sterownika został zrealizowany na tranzystorach NPN BD139, gdzie ich maksymalna obciążalność wynosi 1A (na więcej nie pozwoli odpowiednio dobrany rezystor bazy). Napięcie panujące na wyjściach (wentylatorów) jest równe napięciu, które zasila układ.
Poniżej schemat układu (brakuje tylko diod zabezpieczających na wyjściach, które są podłączone bezpośrednio w gniazdach):


Obudowa:
Jednym z założeń było wykonanie w miarę zgrabnej obudowy do układu. Zastosowana została obudowa uniwersalna typu Z-P4, w której wywiercone zostały odpowiednie otwory. Panel przedni oraz tylny zostały zaprojektowane w programie graficznym, wydrukowane na drukarce laserowej po czym zostały za laminowane. Rolę gniazd wyjść wentylatorów pełni mały moduł z gniazdami RCA. Zasilanie układu podłączą się do przymocowanej z tyłu kostki. Czujniki temperatury podłączone są na stałe do sterownika, za pomocą przewodu o dł. ok. 2,5m. Przyciski zostały zamocowane za pomocą nakrętek, natomiast wyświetlacz LCD został przyklejony do przedniego panelu. Płytka sterownika przymocowana jest do obudowy na metalowych dystansach, które przykręcone są od spodu za pomocą nakrętek.

Uruchomienie, pierwsze ustawienia:
Podczas uruchamiania, mikro kontroler sprawdza czy podpięte są dwa czujniki temperatury (jeśli nie, to sterownik dalej się nie uruchamia oraz wyświetlany jest odpowiedni komunikat na LCD), po czym następuje sprawdzenie pamięci EEPROM – jeśli nie znajdują się w niej żadne dane, bądź dane są niepoprawne, wyświetlany jest odpowiedni komunikat informujący, iż należy ustawić parametry pracy urządzenia, po czym kontynuuje swoją pracę.
Ustawienia dokonuje się w bardzo prosty sposób, tj. za pomocą trzech przycisków oraz jednego potencjometru. Dwa przyciski odpowiadają za regulację temperatury progowej – odpowiednio dla kanału 1 oraz 2. Natomiast trzeci przycisk (niebieski) odpowiada za regulację wartości temperatury histerezy. Potencjometr jest uniwersalny – służy do regulacji wszystkich wartości. Naciskając przycisk np. „Kanał 1” przystępujemy do regulacji temperatury progowej kanału pierwszego. Ustawiamy ją za pomocą potencjometru, po odpowiednim ustawieniu ponownie naciskamy przycisk „Kanał 1” – następuje zapis wartości do pamięci EEPROM, oraz powrót do normalnej pracy. Analogicznie ustawia się pozostałe dwa parametry pracy.
Wartość histerezy można ustawić w zakresie 0-4 st. C, przy zachowaniu rozdzielczości 0,1 st. C, natomiast wartość temperatury progowej mieści się w przedziale 10-30 st. C.
Praca:
Zasada działania jest następująca (każdy kanał osobno):
Dokonywany jest pomiar temperatury co ok. 1s, gdy temperatura przekroczy ustawiony próg wtedy pojawia się napięcie na wyjściu, wentylator rozpoczyna chłodzenie. Praca wentylatora trwa tak długo, dopóki wartość temperatury mierzonej nie spadanie poniżej ustawionego progu temperatury pomniejszonego o wartość histerezy – wtedy dopiero wentylator jest wyłączany.
Wyświetlacz LCD:
Podczas normalnej pracy na wyświetlaczu prezentowane są takie dane jak:
* stan wyjścia odpowiedniego kanału -- liczba na czarnym tle oznacza pracę kanału, natomiast liczba bez tła oznacza brak pracy kanału. Numer kanału prezentowany jest właśnie tą liczbą.
* aktualna temperatura każdego z kanałów
* temperatura progowa każdego z kanałów
* co ok. 2 minuty na czas 2 sekund wyświetlana jest wartość histerezy

Dodatkowo wyświetlacz LCD jest bardzo przydatny podczas nastawiania temperatur progowych – prezentowana jest wtedy na bieżąco ustawiana temperatura za pomocą potencjometru.
Zapraszam na stronę projektu, gdzie dodatkowo umieszczony jest film prezentujący działanie: http://diy-elektronika.pl/527-dwukanalowy-sterownik-wentylatorow Pytania odnośnie softu, bądź plików Eagle proszę kierować poprzez e-mail.
Inne zdjęcia (układ podczas testowania softu):



Cool? Ranking DIY