logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino

ghost666 26 Cze 2015 14:08 9810 8
  • Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na ArduinoProjekt opisuje w jaki sposób skonstruowano oparty o Arduino system kontroli klimatyzatora powietrza. Założeniem było dodanie do starego klimatyzatora systemów automatyki, które pozwolą na zdalną jego kontrolę poprzez MegaunoLink Pro, zainstalowany na komputerze. Układ składa się z Arduino Uno, kontrolującego serwomechanizmy sterujące klimatyzatorem, sensora DS18B20 mierzącego temperaturę i łącza MegaunoLink Pro, pozwalającego na odczyt temperatury i ustawianie punktów kontrolnych dla klimatyzacji.

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Elementy mechaniczne

    Jako że klimatyzator, który ma być kontrolowany przez system jest dosyć stary, nie ma żadnej możliwości na jego cyfrową kontrolę. Zamiast tego zaprojektowano mechaniczny system przekręcania pokręteł w układzie, który sprzęgnięty jest z serwomotorem. System ten przełącza klimatyzator do różnych trybów pracy - wyłączony, tryb wentylatorowy oraz chłodzenie - niskiej i wysokiej mocy. Część mechaniczna została wydrukowana w technologii druku 3D z ABSu. Projekt został dostosowany do pokręteł klimatyzatora, jednakże powinien pasować do szerszej gamy systemów. Pliki z projektem można pobrać ze strony źródłowej

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Mózg systemu (Arduino Uno)

    Hardware

    Projekt kontrolowany jest przez mikrokontroler na płytce Arduino Uno. Temperatura w pomieszczeniu mierzona jest z pomocą sensora DS18B20. Serwomechanizmy sterowane są z pomocą modułu Tower Pro MG995. Jako że serwomotor pobiera znaczny prąd na linii zasilania dodano kondensator o pojemności 4700 µF. Pozwoli to uniknąć zapadów zasilania, które mogły by powodować resetowanie mikrokontrolera.

    Sensor DS18B20 podpięty jest do pinu 10 Arduino Uno. Potrzebuje on ponadto podłączenia do masy i zasilania 5 V oraz rezystora podciągającego pomiędzy linią zasilania, a danych. Serwomotor podpięty jest pod pin 9 Arduino Uno i oczywiście do masy i zasilania 5 V.

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Software

    Program który działa na Arduino Uno jest dosyć prosty. Temperatura odczytywana jest z sensora i jeśli jest wyższa niż zadany punkt kontrolny (plus wartość wynikająca z histerezy) to serwomotor zmienia ustawienia klimatyzatora na chłodzenie niskiej mocy. Gdy temperatura w pomieszczeniu spadnie poniżej ustalonego punktu (minus wartość wynikająca z histerezy) serwomotor wyłącza klimatyzator. Histereza dodana jest w układzie po to, żeby uniknąć częstego przełączania klimatyzatora i wpływu szumu na odczyt.

    Oprócz podstawowej kontroli poprzez temperaturę w pomieszczeniu w układ wbudowano system kontroli poprzez zdalne komendy wydawane przez MegaunoLink. Komendy te pozwalają na konfigurację różnych ustawień, takich jak punkty kontrolne temperatury, histereza, położenie i opóźnienie serva itp. Parametry te zapisywane są w pamięci EEPROM Arduino, więc nawet po wyłączeniu są one zapamiętane.

    Do konfiguracji punktów kontroli temperatury i serw stworzono specjalni interfejs w oparciu o MegaunoLink, Poniższa ilustracja pokazuje jak wyglądał interfejs na początki (po lewej) i w wersji finalnej (po prawej). Każdy przycisk wysyła zdefiniowaną informację do Arduino, pozwalającą kontrolować każdy z parametrów. Na przykład jeśli naciśnie się przycisk Set Temperature interfejs prześle po łączu szeregowym !SetTemperature 23\r\n. Arduino odbierze ten komunikat i ustawi nową temperaturę na 23°C. Oprócz wysyłania komunikatów interfejs oparty o MegaunoLink ma możliwość prezentowania danych, informacji o stanie kontrolera etc. Włączony Arduino przesyła do MegaunoLink następujące komunikaty:

    {UI|SET|DisabledIndicatorPicture.Visible=false}
    {UI|SET|EnabledIndicatorPicture.Visible=true}


    Te komendy kontrolują pojawianie się i znikanie symboli reprezentujących stan modułu.

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Ustawianie pozycji serwa

    Zanim kontroler rozpocznie poprawną pracę, koniecznie trzeba skonfigurować pozycję serwomotorów. W drugiej zakładce interfejsu jest szereg przycisków, pozwalających na zrobienie tego. Pozwala to na dostosowanie serwomotoru do wykorzystywanego klimatyzatora. Naciśnięcie każdego z przycisków umożliwia także przesunięcie serwa na zadaną pozycję. Pozwala to na łatwe dostosowanie jego ruchu do danego klimatyzatora. Dane przechowywane są w pamięci EEPROM układu.

    Ostatnim parametrem jaki trzeba skonfigurować jest opóźnienie serwa, które to kontroluje opóźnienie pomiędzy każdym krokiem serwomotora. Pozwala to na zapewnienie cichej i płynnej jego pracy. Bez tego serwomotor porusza się głośno pomiędzy poszczególnymi pozycjami.

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Dane o temperaturze

    Finalnym komponentem systemu jest możliwość odczytu temperatury poprzez MegaunoLink. W tym celu system wykorzystuje możliwość MegaunoLink do rysowania tabel i wykresów, co pozwala na wyświetlanie aktualnej temperatury oraz historii temperatur. Realizowane jest to poprzez wysyłanie z poziomu Arduino komunikatów do portu szeregowego które odczytywane i interpretowane są przez MegaunoLink. Na przykład, aby wysłać wartość do tablicy Arduino wysyła:

    {TABLE|SET|Target Temperature|23.00|}


    Rysowanie wykresu temperatury w funkcji czasu osiąga się następującą komendą:

    {TIMEPLOT|data|Current Temperature|T|24.000}


    Oczywiście stworzono bibliotekę do Arduino, umożliwiającą łatwe generowanie tych komend.

    Sterowanie klimatyzacji bez ingerencji w sterownik klimatyzatora na Arduino


    Źródło:

    http://www.megunolink.com/arduino-controlled-air-conditioner/

    Fajne? Ranking DIY
    O autorze
    ghost666
    Tłumacz Redaktor
    Offline 
    Fizyk z wykształcenia. Po zrobieniu doktoratu i dwóch latach pracy na uczelni, przeszedł do sektora prywatnego, gdzie zajmuje się projektowaniem urządzeń elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku członek zespołu redakcyjnego.
    https://twitter.com/Moonstreet_Labs
    ghost666 napisał 11960 postów o ocenie 10197, pomógł 157 razy. Mieszka w mieście Warszawa. Jest z nami od 2003 roku.
  • #2 14806616
    Konto nie istnieje
    Poziom 1  
  • #3 14806755
    pheonix
    Poziom 13  
    Chcę zauważyć że większość projektów na Arduino umieszczane tutaj zaniżają poziom tego forum ...
  • #4 14806786
    szczodros
    Poziom 19  
    pheonix napisał:
    Chcę zauważyć że większość projektów na Arduino umieszczane tutaj zaniżają poziom tego forum ...


    pragnę zauważyć, że poza Polską (DIY Zagranica) ze świecą szukać ciekawych, dobrych DIY tylko przeważnie Arduino, druk 3D, coś tam drobnego jeszcze i voila.
    Chyba tylko My Polacy i państwa słowiańskie :D dominujemy w budowie od podstaw z pojedynczych elementów. Może dlatego, że Hamburgerykanie są zbyt leniwi i wolą gotowe klocki :D
  • #5 14806797
    ghost666
    Tłumacz Redaktor
    szczodros napisał:
    pheonix napisał:
    Chcę zauważyć że większość projektów na Arduino umieszczane tutaj zaniżają poziom tego forum ...


    pragnę zauważyć, że poza Polską (DIY Zagranica) ze świecą szukać ciekawych, dobrych DIY tylko przeważnie Arduino, druk 3D, coś tam drobnego jeszcze i voila.
    Chyba tylko My Polacy i państwa słowiańskie :D dominujemy w budowie od podstaw z pojedynczych elementów. Może dlatego, że Hamburgerykanie są zbyt leniwi i wolą gotowe klocki :D


    Albo po prostu mają na nie kasę.
  • #6 14807161
    danielpoland
    Poziom 13  
    gromleon napisał:
    Czy dobrze rozumiem? Autor projektu zamontował zwykły termostat i do tego zamiast zastąpić pokrętło mechaniczne np przekaźnikami to dorobili mechanizm aby pokrętłem kręcił?
    Szał!


    Dobrze że nie zastosował jakiegoś "taniego" sterownika PLC do sterowania klimatyzacją.
  • #7 14809139
    markoz7874
    Poziom 31  
    szczodros napisał:
    ..pragnę zauważyć, że poza Polską (DIY Zagranica) ze świecą szukać ciekawych, dobrych DIY tylko przeważnie Arduino, druk 3D, coś tam drobnego jeszcze i voila.
    Chyba tylko My Polacy i państwa słowiańskie :D dominujemy w budowie od podstaw z pojedynczych elementów. Może dlatego, że Hamburgerykanie są zbyt leniwi i wolą gotowe klocki :D


    Pragnę zauważyć, że to nie amerykanie publikują posty na forum elektrody, ale dobierają je Polacy.
    Może wiec zamiast krytykować innych, skierujmy swoje uwagi do tych, którzy takie tematy na elektrodzie umieszczają.
    Bez problemu można znaleźć tematy o bardziej ambitnym wykonaniu.
  • #9 14816455
    japko1024
    Poziom 18  
    Albo gdy jest na gwarancji.

    Dodano po 10 [minuty]:

    Zastanawiam się nad zbudowaniem podobnego układu. W naszej jakże nowoczesnej uczelni mamy drzwi do koła naukowego bez obrotowych klamek - od środka otwiera się je naciskając kontakt, a od zewnątrz jest czytnik kart RFID z klawiaturą do wpisywania szyfru. Z tym, że nie mamy takich kart (chociaż nasze legitymacje mają tego typu czip, nie da się nimi otworzyć drzwi) i musimy klucz wypożyczać ze znajdującej się na niższym piętrze portierni, zostawiając tam swoje dokumenty. I właśnie myślałem o czymś takim, żeby przymocować nieinwazyjnie jakiś mechanizm z serwomotorem, który naciskałby przycisk, kiedy osoba chcąca wejść wysyłałaby sygnał przez Bluetooth ze swojego smartfona z napisaną przeze mnie aplikacją lub zbliżała legitymację do drzwi, po których drugiej stronie znajdowałaby się cewka do łączności zbliżeniowej. Podobnie, jak w przypadku papierowej listy w portierni, moglibyśmy zapisywać informacje, kto kiedy przyszedł.
REKLAMA