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

System monitorowania domu na Intel Edison z modułem ESP8266

ghost666 03 Lis 2015 18:31 6813 3
  • System monitorowania domu na Intel Edison z modułem ESP8266
    W poniższym artykule opisane jest, jak autor projektu wykorzystując moduł ED-E (EDison-Esp8266, wymowa jak Eddie) skonstruował system automatyzacji domowej. ED-E do monitorowania i zarządzania domem wykorzystuje sensory i aktuatory bezprzewodowe. System składa się dwóch elementów: jednostki bazowej i jednostek wykonawczych z WiFi.

    Jednostka bazowa składa się z modułu Intel Edison, sześciu sensorów, wyświetlacza OLED oraz czterech przycisków do kontroli systemu. Jednostkę wyposażono także w buzzer alarmowy. Całość zamknięta jest w obudowie wykonanej w technologii druku 3D. Moduł Intel Edison odpowiedzialny jest m.in. za logowanie danych z sensorów i zapis ich w bazie danych MySQL. Dane te wysyłane są też do Intel IoT Analytics Dashboard, co umożliwia oglądanie danych w czasie rzeczywistym. W sytuacji alarmowej jednostka bazowa wydaje głośny dźwięk z buzzera oraz wysyła powiadomienie poprzez e-mail. W jednostkę bazową wbudowano następujące sensory:

    * Płomienia
    * Gazowy (monitoruje poziom H2, LPG, CH4, CO, par alkoholu, dym i propan)
    * Jakości powietrza (monitoruje poziom CO, par alkoholu, acetonu, rozpuszczalników i formaldehydu)
    * Termometr
    * Miernik wilgotności
    * Decybelomierz (miernik poziomi hałasu)

    Jednostki wykonawcze wyposażone są w transmiter WiFi. Te niewielkie modułu pozwalają na umieszczenie ich w dowolnym miejscu, zależnie gdzie są potrzebne. Podzielić je można na dwa rodzaje: sensory i aktuatory.

    Sensory to niewielkie moduły działające generalnie bistabilnie. Gdy system detekcji w module wykryje przekroczenie pewnego progu, sygnał z sensora zostaje wysłany poprzez WiFi do jednostki bazowej, która z kolei wysyła dane do IoT Analytics . Sensory takie mogą być umieszczane np. przy drzwiach, co umożliwia użytkownikowi systemu zdalne monitorowanie stanu drzwi etc.

    Aktuatory działają odwrotnie niż sensory. Gdy naciśniemy jakiś wirtualny przycisk w IoT Analytics, jednostka bazowa wyśle sygnał do aktuatora poprzez WiFi. Moduł taki, po otrzymaniu informacji wykona jakąś akcję - trochę jak przekaźnik. Można wykorzystać te moduły do otwierania drzwi, załączania świateł, ogrzewania etc. z dowolnego miejsca na świecie.

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266






    System ED-E wspiera w zasadzie nieskończoną ilość modułów na WiFi (ograniczona jest jedynie maksymalną ilością urządzeń w danej sieci), więc możliwości konfiguracji systemu automatyki są w zasadzie nieskończone. W poniższym artykule opisano, jak zmontować jednostkę bazową i jak złożyć, i uruchomić moduły WiFi.



    Krok 1: Zbierz potrzebne materiały

    System monitorowania domu na Intel Edison z modułem ESP8266


    Zanim zaczniemy musimy zgromadzić potrzebne do budowy materiały. Do zmontowania jednostki bazowej potrzebujemy:

    * Modułu Intel Edison z płytką Arduino Breakout
    * Płytkę uniwersalną Adafruit Permaproto
    * Sensor jakości powietrza Grove Air Quality
    * Sensor gazowy Grove MQ2
    * Sensor temperatury i wilgotności Grove DHT22
    * Sensor dźwięku Grove Sound
    * Sensor płomienia Grove Flame
    * Wyświetlacz OLED Grove 96x96 OLED Display
    * Buzzer - Grove Buzzer
    * Złącza z rastrem 0,1"
    * Złącza do zasilania
    * Rezystor 10 kΩ
    * Przyciski 6 mm
    * Dużo kabelków

    Do konstrukcji sensorów z WiFi potrzebne nam będą:

    * Moduł Adafruit HUZZAH Esp8266
    * Bateria o pojemności 500 mAh
    * Konektor JST z płytką z wyprowadzeniami
    * Mikroswitch

    Do konstrukcji aktuatorów z WiFi potrzebne nam będą:

    * Moduł Adafruit HUZZAH Esp8266
    * Przekaźnik SPDT
    * Zasilacz 5 V (np. ładowarka USB)
    * Przedłużacz

    Krok 2: Druk 3D obudowy jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266


    Obudowa jednostki bazowej składa się z trzech elementów wydrukowanych osobno:

    * Lewej strony
    * Prawej strony
    * Przycisków

    Jeśli nie posiadacie drukarki 3D, można druk zlecić komuś innemu. W oryginalnym artykule autor podaje kilka potencjalnych firm z swojej okolic.

    Pliki .stl z projektami tych elementów pobrać można korzystając z poniższych linków:

    http://www.instructables.com/files/orig/FC5/TDYI/IEOOZ8VS/FC5TDYIIEOOZ8VS.stl
    http://www.instructables.com/files/orig/F2O/F95C/IEOOZ8VW/F2OF95CIEOOZ8VW.stl
    http://www.instructables.com/files/orig/FJ9/WTB6/IEOOZ8W6/FJ9WTB6IEOOZ8W6.stl

    Krok 3: Podłączanie sensorów do jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Rozpocznijmy montaż systemu od złożenia jednostki bazowej. Najpierw należy podłączyć sensory do modułów Intel Edison. Do realizacji tego etapu potrzebne są nam wszystkie sensory wbudowane w bazę (oprócz OLEDa), płytka uniwersalna i trochę kabelków.

    Wszystkie sensory od Grove używają tego samego, 4-pinowego połączenia. W ramach połączenia znajdziemy dwie linie sygnałowe (jednakże przedstawione moduły korzystają tylko z jednej), zasilanie oraz masę. Rozpoczynamy montaż od przecięcia płytki uniwersalnej na dwie części i zalutowanie pinów, tak jakbyśmy konstruowali shield do Arduino. Upewnijmy się, że płytki pasują do Intel Edison, jak pokazano na zdjęciu.

    Montaż sensorów rozpoczynamy od przylutowania czerwonych kabelków - zasilania - do płytki uniwersalnej. Następnie lutujemy kabelki czarne - masę. Na płytce uniwersalnej wykonujemy połączenia tak, aby masa i 5 V z Intel Edison połączone było z, odpowiednio, masą i zasilaniem sensorów. Gdy podłączymy już zasilanie do sensorów, musimy podłączyć - żółte kabelki - linie sygnałowe. Lutujemy je w następujący sposób:

    * Sensor jakości powietrza > A0
    * Sensor płomienia > D2
    * Sensor gazowy MQ2 > A1
    * Decybelomierz > A2
    * Buzzer > D3
    * Termometr > D8

    Po zlutowaniu wszystkiego w całość sprawdzamy jeszcze raz wszystkie połączenia. Jeśli wszystko jest ok, możemy kontynuować do następnego kroku.

    Krok 4: Dodanie modułu wyświetlacza OLED do jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Inaczej niż sensory, wyświetlacz zasilany jest napięciem 3,3 V i kompatybilne z tym napięciem muszą być także sygnały sterujące. Podłączenie wyświetlacza pokazanego na zdjęciu przebiega następująco:

    * Podłączamy czerwony przewód - zasilanie - do napięcia 3,3 V
    * Podłączamy czarny przewód - masę - do GND
    * Podłączamy żółty przewód - SCL interfejsu - do A5
    * Podłączamy biały przewód - SDA interfejsu - do A4.

    I gotowe!

    Krok 5: Dodanie przycisków i zasilania do jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Już prawie skończyliśmy montaż jednostki bazowej. Na tym etapie montujemy przyciski i gniazdo zasilania. Potrzebne nam będzie do tego trochę kabelków i rezystory 10 kΩ. Całość montujemy na fragmencie płytki uniwersalnej.

    * Umieszczamy przyciski możliwie najbliżej siebie na płytce drukowanej.
    * Podłączamy nóżkę górnego przycisku do D4
    * Podłączamy nóżkę kolejnego przycisku do D5
    * Podłączamy nóżkę kolejnego przycisku do D6
    * Podłączamy nóżkę dolnego przycisku do D7
    * Do każdej z powyższych nóżek przyłączamy poprzez rezystory 10 kΩ zasilanie (5 V)
    * Przeciwległe nóżki przycisków podłączamy do masy

    Złącze zasilania łączymy kabelkami z masą i pinem VIN modułu Intel Edison. Na tym etapie trzeba być niezmiernie ostrożnym, jako że nie chcielibyśmy podłączyć nic odwrotnie i podać 12 V tam, gdzie powinna być masa lub inny sygnał.

    Krok 6: Instalacja oprogramowania jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266


    Zanim umieścimy całą elektronikę jednostki bazowej musimy wgrać do modułu oprogramowanie i je przetestować. Rozpoczynamy od wgrania najnowszego firmware do modułu Intel Edison Następnie musimy zainstalować zależności:

    1. Otwieramy plik konfiguracyjny opkg:

    Code:
    vi /etc/opkg/base-feeds.conf 


    2. Do pliku dodajemy trzy linijki i zapisujemy go:

    Code:
    src/gz all  http://repo.opkg.net/edison/repo/all
    
    src/gz edison  http://repo.opkg.net/edison/repo/edison
    src/gz core2-32  http://repo.opkg.net/edison/repo/core2-32


    3. Odświeżamy listę pakietów:

    Code:
    opkg update


    4. Fianalnie instalujemy zależności korzystając z:

    Code:
    opkg install boost boost-dev libmysqlclient-dev mariadb python-pip


    Następnie skonfigurować musimy IoT Analytics. Aby oprogramowanie komunikowało się z chmurą musimy wykonać następujące kroki:

    1. Rozpoczynamy od wgrania najnowszej wersji iotkit-agent z pomocą komendy:

    Code:
    npm update -g iotkit-agent


    2. Tworzymy konto na https://dashboard.us.enableiot.com/.

    3. Gdy zalogujemy się do systemu nadajemy nazwę, naszemu systemowi. Autor wybrał ED-E, jako że tak nazywa się jego system. Tworzymy system na stronie

    4. Z menu w lewej górnej strony wybieramy "Account"

    5. Otwieramy zakładkę z szczegółami i kopiujemy stamtąd kod aktywacyjny, który podajemy do Intel Edison w następujący sposób:

    Code:
    iotkit-admin activate activation_code


    6. Następnie klikamy na zakładkę "Catalog" gdzie wybieramy "Add New Catalog Item" u dołu ekranu.

    7. Konfigurujemy wszystkie sensory, wprowadzając ich typ, rodzaj generowanych danych, jednostkę i rodzaj prezentacji danych jako Time Series. Klikamy Zapisz.

    Następnie zainstalować musimy oprogramowanie. Pobieramy je na ED-E z girhuba, rozpakowujemy i instalujemy:

    Code:
    wget https://github.com/spadgenske/ED-E/archive/0.1.0.zip
    
    mv 0.1.0.zip ED-E.zip
    unzip ED-E.zip
    cd ED-E/base/src
    python install.py


    Skrypt Pythona powinien zainstalować program bez żadnych problemów. Aby sprawdzić oprogramowanie, wykorzystujemy:

    Code:
    python main.py


    Ekran powinien stać się pusty, a następnie wyświetlić główne menu programu. Po chwili wszystkie sensory powinny zostać odczytane, a dane wysłane do Intel IoT Analytics. Aby je odczytać, wystarczy wejść w zakładkę "Charts" na stronie. Dane przechowywane są także w bazie danych MySQL o nazwie EDE, co umożliwia ich np. eksport do Excela.

    Aby oprogramowanie automatycznie startowało, po uruchomieniu systemu:

    Code:
    cd /etc
    
    mkdir init.d
    cd init.d


    W tym folderze tworzymy plik ED-E.sh:

    Code:
    #!/bin/sh                                                                                        
    
    python ~/ED-E/base/src/main.py


    I nadajemy mu prawo wykonywalności. Następnie musimy wykonać odświeżenie ustawień:

    Code:
    chmod +x ED-E.sh
    
    update-rc.d ED-E.sh defaults


    Przy kolejnym uruchomieniu systemu, program ED-E powinien uruchomić się automatycznie. Jeśli wszystko działa poprawnie, to możemy umieścić elektronikę stacji bazowej w obudowie.

    Krok 7: Finalny montaż jednostki bazowej

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Na tym etapie zmontujemy jednostkę bazową w całość. Wykonujemy po kolei poniższe kroki:

    1. Delikatnie wklejamy płytkę uniwersalną z przyciskami do elementu z drukarki 3D. Pomiędzy obudową a płytką z przyciskami umieszczamy wydrukowany element - przyciski. To bardzo trudny do zmontowania element, więc róbcie to delikatnie, a na koniec pokryjcie całość potrójną warstwą kleju, aby wszystko dobrze trzymało.
    2. Delikatnie przykręć sensor jakości powietrza, płomienia i dźwięku do połowy obudowy, w której są przyciski. Do tego potrzebne będzie nam 6 sztuk śrub M2x5.
    3. Korzystając z dwóch kolejnych śrub M2x5 przykręć wyświetlacz OLED.
    4. Korzystając ze śrub 4-40 przyłączamy Moduł Intel Edison wraz z płytką mu towarzyszącą do obudowy. Należy to zrobić delikatnie, aby nic nie popsuć.
    5. Do Intel Edison przyczepić możemy płytki uniwersalne z przylutowanymi kablami.
    6. Korzystając z kolejnych śrubek M2 przykręć buzzer, sensor gazu i termometr do drugiej połówki obudowy.
    7. Wklej na klej na ciepło gniazdo zasilania.
    8. Skręć obie połówki obudowy korzystając z sześciu śrub 4-40.
    9. Podłącz zasilanie do urządzenia i zaloguj się do niego poprzez SSH. System jest już na chodzie i można z niego do woli korzystać.

    Krok 8: Budowanie Sensorów z WiFi

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Budowa sensora wyposażonego w interfejs WiFi jest bardzo prosta. Potrzebują one układu zasilania i detektora. Oto jak je montujemy:

    1. Podłącz terminal ujemny na złączu JST do masy płytki Huzzah.
    2. Dołącz terminal dodani na złączu JST do zasilania (vbat) płytki Huzzah.
    3. Podłącz jedno wyprowadzenie przełącznika do masy, a drugi do pinu rst.
    4. Otwórz plik sensor.ino w Arduino IDE (powyżej wersji 1.6.4), zmień SSID i hasło na ustawienia swojej sieci.
    5. Ustaw HOST - numer IP stacji bazowej, można zobaczyć go w menu ED-E.
    6. Zmień nazwę urządzenia na taką, która poinformuje co to za sensor.
    7. Upewnij się, że płytka Adafruit Huzzah jest zainstalowana i wybrana w Arduino IDE.
    8. Wgraj program do pamięci i podłącz do baterii (autor wykorzystał baterię o pojemności 500 mAh).
    9. Umieść sensor w obudowie.

    Jeśli moduł bazowy działa poprawnie, tak jak układy ESP8266, za każdym razem, gdy przycisk zostanie zwarty płytka Huzzah wyśle do ED-E informacje o tym fakcie, które następnie zostaną zapisane w bazie MySQL i Intel IoT Analytics. Wykorzystana bateria oferuje dosyć duży czas pracy sensora, ale oczywiście po jakimś czasie się wyczerpie. Jeśli wykorzystaliśmy akumulatorek, można go naładować dedykowaną ładowarką.

    Krok 9: Budowanie aktuatorów z WiFi

    System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266 System monitorowania domu na Intel Edison z modułem ESP8266


    Aktuatory są przeciwieństwem sensorów w tym systemie: otrzymują one dane z sieci i zmieniają swój stan zgodnie z otrzymanymi danymi. Działają mniej-więcej jak przekaźnik i w takiej formie je wykorzystamy. Poniższy opis omawia, jak skonstruować sterowany poprzez opisywany system przedłużacz.

    W jednostce bazowej aktywujemy aktuator i ustawiamy jego protokół jako websockets zamiast REST:

    Code:
    iotkit-admin register Lamp powerswitch.v1.0
    
    iotkit-admin protocol rest+ws


    Gdy już aktywowaliśmy wykorzystanie aktuatorów przez jednostkę bazową możemy zbudować taki moduł. Podłączamy masę ESP8266 do masy przekaźnika, V+ do zasilania (VCC) PIN 13 ESP8266 do jego cewki. Do ESP8266 podłączyć musimy zasilanie. Następnie podłączamy przedłużacz do przekaźnika tak, aby sterował on przepływem prądu do gniazdek w przedłużaczu. Montaż należy przeprowadzić bardzo uważnie - z napięciem sieciowym nie ma żartów!

    Do ESP8266 w aktuatorze wgrywamy actuator.ino, w którym musimy zmienić SSID, hasło i numer IP stacji bazowej. Po dokonaniu tego musimy zresetować stację bazową. Gdy system załaduje się, już możemy sterować naszym przedłużaczem z poziomu Intel IoT Analytics.

    Źródło: http://www.instructables.com/id/Build-your-own-Home-Automation-and-Monitoring-Syst/?ALLSTEPS


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • Servizza
  • #2 04 Lis 2015 20:17
    treker
    Poziom 25  

    Wreszcie ktoś pomyślał o ciekawej obudowie i nie wpakował wszystkiego w zwykły prostopadłościan :)

  • Servizza
  • #3 05 Lis 2015 17:49
    dragonn
    Poziom 11  

    Jakieś info ile trzyma bateria w module?

  • #4 07 Lis 2015 20:59
    Gruby__
    Poziom 16  

    Wydaje mi się, że metalowa puszka ogranicza zasięg czujników, mam racje?