
Zaczęło się od kupienia obudowy GMC AVC-K1:
Autor postanowił ją nieco przerobić, a założenia były takie: trzy kanały sterujące wentylatorami, wyświetlanie temperatury, sterowanie za pomocą enkodera i przycisku wbudowanego w enkoder. W obudowie już znajdował się regulator obrotów wbudowanych wentylatorów wraz z możliwością sterowania poprzez enkoder i wyświetlaczem LCD. Autor zaś posiadał wyświetlacz OLED WEH001602DGPP5N00000.
Tak wygląda schemat:

Parę słów o wyjściu „Amplifier”.
Można z niego zasilać np. wzmacniacz niskich częstotliwości, czy, jak w przypadku autora, sterować włączeniem wzmacniacza. Początkowo autor chciał włączać i wyłączać wzmacniacz za pomocą przycisku w enkoderze, ale okazało się to niepotrzebne. Przy podaniu zasilania wychodzi 12V, można to wyłączyć w ustawieniach.
Program napisano w CodeVisionAVR v2.04.4a, wszystkie przykłady i biblioteki pochodzą stąd. Po włączeniu wentylatory kręcą się z maksymalną prędkością, ułatwiając uruchomienie. Następnie oblicza się PWM w procentach dla każdego kanału zgodnie z formułą: (Tz – Tmin)*100/(Tmax-Tmin), ale nie mniej niż 5% w przypadku CPU, 30% dla GPU i 20% dla wentylatorów w obudowie.
Tz - zmierzona temperatura;
Тmin i Тmax - są określane w ustawieniach dla każdego kanału.
Na wyświetlaczu po kolei wyświetla się temperatura CPU, GPU, CASE, napięcie na liniach 12 i 5V. Krótkie wciśnięcie przycisku pauzuje wyświetlanie wartości, a w prawym dolnym rogu pojawia się symbol „P”.
Poruszając przyciskiem enkodera w prawo lub w lewo wybiera się kolejną lub wcześniejszą wartość temperatury.
Wyświetlanie CPU i/lub GPU można ukryć, nie ma to wpływu na sterowanie wentylatorami.
W momencie wystąpienia błędu czujnika lub braku czujnika prędkość wentylatora jest ustawiana na maksimum. Kiedy temperatura przekracza zadaną wartość, włącza się alarm i w prawym dolnym rogu wyświetla się symbol „!”.
Dłuższe wciskanie przycisku pozwala przejść w menu ustawienia. Ustawienia wybiera się za pomocą przycisku enkodera „Set Min T CPU” >> „Set Max T CPU” >> „Set Alarm CPU” >> „Set Screen CPU ” >> „Set Min T GPU” itd.
Krótkie wciśnięcie przycisku umożliwia przejście do kolejnego poziomu zmiany ustawień. Ponowne wciśnięcie powoduje przejście na poziom wyżej.
Aby zapisać zmiany wybieramy w menu opcję „Save Settings”. Ustawienia zostaną również zapisane bez podejmowania żadnej akcji w ciągu 30s.
Czujniki montujemy na radiatorze, blisko jego podstawy. Autor umieścił czujnik na procesorze na rurce przewodzącej ciepło, wychodzącej z podstawy radiatora, zabezpieczając go taśmą i warstwą gąbki. Na karcie graficznej autor umieścił między żeberkami i na górze radiatora styropian, żeby nie wiało na czujnik od wentylatora.
Czujnik należy umieścić z dala od otworów wentylacyjnych, poprzez które wpada powietrze z zewnątrz. Jeśli płyta główna nie uruchomi się bez sygnału tacho z wentylatora, należy ze złącza igłą wyciągnąć przewód czujnika obrotów. Następnie w takie same złącze wstawiamy przewód i podłączamy do płyty głównej.
Użyte tranzystory VT3, VT7, VT14, VT15 - IRF9530N można zastąpić innymi o podobnych parametrach, pozostałe dowolne z prądem kolektora co najmniej 100mA. Brzęczyk z wbudowanym generatorem na 5V. Wyświetlacz można zmienić na inny, kompatybilny z HD44780 2х16, dodając obwody odpowiadające za podświetlenie i sterowanie kontrastem.
Mikrokontroler jest taktowany wewnętrznym generatorem 8MHz.
FUSE bity: High – D9, Low – E4.
Materiał wideo prezentujący pracę urządzenia:
http://youtu.be/qVbaQivIYBk
Urządzenie pracuje już 2 lata, przegrzanie przy największym obciążeniu nie występuje, podobnie jak szum przy oglądaniu filmów.
W załączniku schemat, płytka drukowana pod obudowę autora w Proteus 7 (pamiętajcie o wskazaniu pliku EEPROM z rozszerzeniem .bin), źródło i firmware.
Autor: Aleksiej Aleksandrow
Link do tłumaczonego tekstu: http://www.radiokot.ru/circuit/digital/pcmod/50/
Cool? Ranking DIY