Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Computer ControlsComputer Controls
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Aquamat - sterownik akwariowy Open Source

musashimm 22 Lut 2011 20:05 19196 16
  • Aquamat - sterownik akwariowy Open Source

    Witam,
    Chciałbym przedstawić projekt sterownika akwariowego. Projekt jest typu open source tworzony za pomocą darmowych programów lub darmowych wersji programów.

    Funkcjonalności sterownika

    * Zegar RTC
    o obsługa dni tygodnia
    o podtrzymanie bateryjne
    * Wyjścia
    o 16 wyjść
    o możliwość niezależnej blokady każdego wyjścia
    * Timery godzinowe
    o 8 timerów
    o przypisanie niezależnie do dowolnego wyjścia
    o możliwość blokady
    o obsługa dni tygodnia
    o rozdzielczość minutowa
    * Timery interwałowe
    o 8 timerów
    o czas włączenia / wyłączenia regulowany od 1-99 minut
    o rozdzielczość minutowa
    * Kontrola temperatury
    o 4 czujniki DS18B20 na jednym przewodzie (ROM_SEARCH)
    o niezależne przypisanie wyjść COOL i HEAT do każdego czujnika
    o rozdzielczość pomiarowa 0.1 st. C
    o temperatura dzienna i nocna
    * Interfejs komunikacyjny
    o RS-232/USB
    o pełne sterowanie i konfiguracja za pomocą interfejsu graficznego
    * Wyświetlacz LCD
    o wyświetlanie statusu sterownika
    o stan poszczególnych wyjść
    o stan czujników temperatury
    * Moduł alarmowy
    o alarmowanie o przekroczeniu progowych temperatur
    o alarm w przypadku uszkodzenia czujnika temperatury
    * Log
    o dziennik systemowy umożliwiający zapis do 999 zdarzeń systemowych (start sterownika, alarmy max temp,min temp, uszkodzenie czujnika)
    * Automatyczna dolewka
    o zabezpieczenie czasowe przed długotrwałym dolewaniem wody
    * Przyciski szybkiego wysterowania wyjść (Quick Buttons)

    Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source Aquamat - sterownik akwariowy Open Source
    Film

    Na projekt składają się 3 pod projekty:

    * sterownik "Aquamat" Prezentacja
    * Interfejs graficzny "Aquamat Control" Prezentacja
    * Bootloader "AvrBoot" Prezentacja

    Repozytorium projektu znajduje się na GitHub. https://github.com/musashimm/aquamat

    Projekt jest typu open source tworzony za pomocą darmowych programów lub darmowych wersji programów (Avr-gcc,Eagle,Qt).

    Pozdrawiam

    Wojciech

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    musashimm
    Poziom 10  
    Offline 
    musashimm napisał 8 postów o ocenie 82, pomógł 0 razy. Jest z nami od 2008 roku.
  • Computer ControlsComputer Controls
  • #2
    tomgart
    Poziom 25  
    W jakim programie robiłeś render płytki? KiCad czy w Eaglu jak piszesz?
    O projekcie nie ma się co rozwodzić bo wiadomo 10/10 :)
  • Computer ControlsComputer Controls
  • #3
    musashimm
    Poziom 10  
    Render jest wykonany przy pomocy konwertera EAGLE->Povray Eagle3D
  • #4
    phrozen
    Poziom 20  
    To że korzystałeś z oprogramowania Open Source lub darmowych wersji oprogramowania nie jest równoznaczne z tym, że twój projekt jest Open Source - Nie myl pojęć - Open Source mówi o otwartym oprogramowaniu w sensie licencyjnym. Poprawnie sformułowana nazwa projektu brzmiała by: Aquamat - sterownik akwariowy zrealizowany w oparciu o oprogramowanie Open Source, a bardziej po polsku: w oparciu o wolne oprogramowanie.

    Tak jak aktualnie nazywasz projekt lub go opisujesz, mógłbyś pisać gdybyś wraz z jego opisem umieścił pełny kod źródłowy sterownika wraz z odpowiednią licencją.

    Może się czepiam - ale coś robić muszę:P
  • #5
    myrcioch
    Poziom 18  
    Chyba jednak jest GPL:
    Code:

    svn checkout http://aquamat.googlecode.com/svn/trunk/ aquamat-read-only
  • #6
    phrozen
    Poziom 20  
    myrcioch napisał:
    Chyba jednak jest GPL:
    Code:

    svn checkout http://aquamat.googlecode.com/svn/trunk/ aquamat-read-only


    To ja się tak pięknie rozpisałem... Gdyby tak autor w pierwszym poście umieścił linka do svna to bym nie mógł psioczyć.

    Upierdliwy do bólu ;] Taki dzisiaj mam dzień.

    A odnośnie samych wartości merytorycznych projektu, delikatny przerost formy nad treścią ale ze względu na nowe dowody (:]) w postaci źródeł znalezionych przez kolegę myrcioch godny polecenia.

    Skoro zbudowałeś taki wypasiony sterowniczek - nie myślałeś może żeby od razu dodać obsługę rs485? Długość kabli RS232 ma swoje ograniczenia których można by uniknąć dzięki rs485 - bo kable można by puścić np. do jakiegoś serwerka, który zajmował by się sterowaniem wszystkiego + np dołożyć kamerkę i byłby "haj lajf".
  • #7
    musashimm
    Poziom 10  
    Witam,

    Ad1. Licencja.
    Żeby nie było wątpliwości co do otwartości.
    Repozytorium znajduje się na GitHubie
    https://github.com/musashimm/aquamat
    W katalogu głównym znajduje się plik COPYING, w którym jest zawarta treść licencji GPLv2.

    Ad2. Funkcjonalności
    Sterownik ma takie funkcjonalności, jakie uważałem, że będą najbardziej przydatne, w czasie pisania kodu. Co do komunikacji, w tej chwili sterownik ma USB, ze względu, że większość nowych laptopów nie ma RSa (choć można by było użyć konwerter). Co do RS485, to czemu nie, choć, jak na razie nie odczułem takiej potrzeby. Sama komunikacja ze sterownikiem jest potrzebna na początku (zerowa konfiguracja) gdzie palcowanie przyciskami jest mniej wygodne i nie daje pełnego obrazu konfiguracji. Dwa, od czasu do czasu może zajść potrzeba zapisania logu, celem przeanalizowania parametrów pracy lub zrobienia backup'u konfiguracji przed aktualizacją firmware'u.

    Ad3. Projekt jest Open Source i każde uwagi (nawet te krytyczne) są mile widziane, o ile podniosą jakość samego projektu lub dodadzą nową funkcjonalność. Jeżeli komuś potrzebny jest RS485 zamiast USB może zmodyfikować wzór płytki i dodać ją jako nowy wariant do projektu. W związku z powyższym zachęcam wszystkich zainteresowanych do udziału w projekcie.

    Pozdrawiam

    W.
  • #8
    munruthel
    Poziom 12  
    Może warto dodać pHmetr i konduktometr? Sam akwarium nie mam, ale z tego co się orientuję te parametry także są ważne.

    pozdrawiam
  • #9
    Suchy
    Poziom 17  
    Witam, fajny projekcik też coś takiego nie długo będę robił tylko dodatkowo dla terrarium żółwia.

    Zgrabny projekt ale jak kolega wcześniej napisał trochę przerost formy nad treścią, szacun dla Ciebie bo sam nie mogę się zabrać za mój lecz dodałbym pomiar ważniejszych parametrów takich jak twardość wody albo zawartość amoniaku i innych krytycznych wartości - jeżeli są dostępne elektroniczne elementy mierzące powyższe wartości, temperaturę może regulować niezależna grzałka.

    Twoim użądzeniem sterowałbym natomiast światło, pomiar związków zawartych w wodzie, napowietrzenie oraz automatyczny karmik w razie dłuższego wyjazdu.

    Pozdrawiam.
  • #10
    musashimm
    Poziom 10  
    Suchy napisał:
    trochę przerost formy nad treścią


    Czy możesz napisać co pod rozumiesz?
  • #11
    maly_13
    Poziom 19  
    Choć bardziej wysilił się bym nad obudową przy takim sterowniku.
    Ja osobiście zatrzymałem sie na skalarze w wersji 5.. która jeszcze była darmowa, nie korzystam z pomiaru ph itp. jednak przy wiekszych akwariach i jak chcemy w pełni zautomatyzować wszystko to taki czujniki były by wskazane.

    Może pokusze się o wykonanie tego sterownika powiedzmy że jakaś konkurencja dla skalara się pojawiła i narazie open source
    Tak trzymać.
  • #12
    musashimm
    Poziom 10  
    Witam,

    Z sondami do pomiaru PH i innych parametrów problem jest taki, że:

    1. Sonda kosztuje - z tego co się orientowałem jest to 150-200 PLN za sondę. Taki koszt powoduje, że jest znaczący w stosunku do całego rozwiązania sterownika.
    2. Eksploatacja - sondy wymagają okresowej regeneracji i kalibracji.

    W związku z powyższym funkcjonalność związana z sondami została przesunięta nieco dalej.

    Lista planowanych funkcjonalności w na dziś:

    1. Timery sekundowe (w fazie testów)
    2. Wyjścia PWM DC (wstępny plan działania)
    3. Scenariusze sterowania wyjściami PWM (wschód/zachód,zależne od temp, czasu itp.)
    4. Sonda pomiarowa PH

    Po konsultacji z innymi zainteresowanymi sterownikiem została wyrzucona funkcjonalność sterowania statecznikami ściemnialnymi T5 - ze względu na koszt statecznika, a wydaje się, że punkty 2,3 mogą ja zastąpić. Oczywiście nie widzę problemu jakby ktoś z Was chciałby dodać taką funkcjonalność.

    Pozdrawiam

    W.
  • #13
    kartofel
    Poziom 11  
    Jest kilka sterowników akwariowych dostępnych w sieci. Każdy kto chce zbudować powinien wybrać sobie taki jaki potrzebuje. Autor ma ochotę rozwijać projekt (co obserwuję od kilku miesięcy) i to jest najważniejsze.
    Mnie osobiście podoba się:
    - konfiguracja przez usb. Urządzenie ma działać i być pomocne akwaryście. Konfiguruję przez przyjemny program na pc wysyłam do sterownika i zapominam. Nie lubię bluetooth mały zasięg, uważam nieprzydatny przy tego typu sterowniku.
    - pomiar kilku temperatur co przydatne jest gdy są np. dwa akwaria (główne + kotnik), ew. w dużym, wysokim akwarium występują różne temperatury.
    - wyjścia sekundowe to gratka dla posiadaczy podajników nawozów DIY.
    - wyjątkowa możliwość konfiguracji dużej ilości wyjść
    - przyciski szybkiego sterowania
    maly_13 napisał:
    Choć bardziej wysilił się bym nad obudową przy takim sterowniku.
    Obudowę każdy wykonuje według swoich potrzeb, możliwości. Myślę, że przy tym urządzeniu nie jest to najważniejsze. Znam kilka wersji obudowy wyżej wymienionego skalara. I tu każdy zabuduje jak będzie chciał.
    Już miałem Cię pytać dlaczego jeszcze nie wrzuciłeś Elektrodę.
  • #15
    musashimm
    Poziom 10  
    To może być napisał taki scenariusz w C...

    Poniżej koncepcja portów PWM napisana w "zwykłym" C

    Code:


    #include <stdio.h>

    #define TAU1 10000
    #define TICKS 50
    #define TICKS2 2

    struct PWM {
        int width;
    };

    volatile int clock10ms = TICKS;
    volatile int clock05s = TICKS2;

    int i;

    struct PWM pwms[4];

    void interrupt(void) {

        printf ("%3d ",clock10ms);
        for (i=0;i<4;i++) {
            if (clock10ms <= pwms[i].width) {
                printf ("* ");
                //PORTOUT |= _BV(i);
            } else {
                printf ("_ ");
                //PORTOUT &= ~_BV(i);
            }
        }

        printf ("\n");

        if (!(--clock10ms)) {
            clock10ms=TICKS;
                    if (!(--clock05s)) {
                            clock05s=TICKS2;
                    }
            }
    }

    int main(void)
    {
        int i=0;

        pwms[0].width = 0;
        pwms[1].width = 30;
        pwms[2].width = 40;
        pwms[3].width = 50;

        for (i=0;i<100;i++) {
            interrupt();
        }
    }


    W tym przypadku sterowanie szerokością co 2% (0-50)
  • #16
    mimor555
    Poziom 24  
    Świetny projekcik. Na pewno pomaga w utrzymaniu akwarium. Ale czy nie było by taniej i szybciej złożyć sterownik zwany SKALAR`em ? Jaki jest całkowity koszt ? Czy masz w planach zakupienie sondy Ph?
  • #17
    musashimm
    Poziom 10  
    Główna część nie powinna być droższa niż 100 PLN (zależnie od użytych elementów). Drogie są gniazda sieciowe montowane na listwę. Ale każdy może listwę złożyć z elementów jakie posiada. Postaram się w przyszłym tygodniu zrobić szczegółowy kosztorys.

    Ja osobiście lubię modyfikować, analizować kod, a tego Skalar nie może mi dać.

    Co do sondy PH, jest w planach ale ze względu na koszt samej sondy, została przesunięta dalej.

    W.