Inteligentny dom oparty na Arduino: przegląd i instrukcje montażu (projekt, podłączenie, programowanie)

Inteligentny dom Arduino

Inteligentne domy pozwalają zapomnieć o wielu technicznych aspektach życia codziennego i skupić się na innych zadaniach, dając wolny czas rodzinie lub rekreacji. Na rynku są gotowe rozwiązania, ale takie systemy nie zawsze nadają się do realizacji zadań, które chcielibyśmy zobaczyć. Istnieje jednak bardziej elastyczna alternatywa, która pozwala stworzyć inteligentny dom własnymi rękami na Arduino. To właśnie ten system pozwala przełożyć każdą twórczą myśl na zautomatyzowany proces.

Co to jest Arduino

Arduino to platforma do dodawania i programowania urządzeń elektronicznych, z typami sterowania: ręcznym, półautomatycznym i automatycznym. Platforma jest rodzajem konstruktora, z określonymi zasadami interakcji elementów ze sobą. System jest otwarty, więc każdy zainteresowany producent wnosi swój wkład w rozwój Arduino.

  • zbieranie informacji za pomocą czujników;
  • analiza danych i podejmowanie decyzji za pomocą programowalnego mikrokontrolera;
  • wdrażanie decyzji podejmowanych za pomocą wydawanych poleceń do różnych urządzeń podłączonych do systemu.

Konstruktor Arduino jest dobry, ponieważ w jego systemie można zastosować dowolne elementy inteligentnego domu różnych producentów. Ta funkcja pozwala platformie nie ograniczać się tylko do jednego ekosystemu inteligentnego domu, ale wybierać dowolne komponenty elektroniczne w celu rozwiązania własnych problemów.

Oprócz ogromnej listy urządzeń podłączonych do systemu, środowisko programistyczne C++ zapewnia mu elastyczność. Użytkownik może samodzielnie zaprogramować reakcję komponentów systemu na pojawiające się zdarzenia lub skorzystać z już stworzonej biblioteki.

Przydatna informacja! Arduino to włoska firma produkująca i rozwijająca komponenty oprogramowania dla prawdziwych i nieskomplikowanych systemów Smart Home, które są skierowane do wszystkich zainteresowanych tą kwestią. Architektura jest całkowicie otwarta, więc zewnętrzni deweloperzy (głównie z Chin) zdążyli już całkowicie skopiować i wydać własne alternatywne elementy systemu oraz oprogramowanie dla nich.

Są dwa sposoby na nauczenie się interakcji z Arduino: metodą niezależnych prób i błędów lub przy pomocy książki z kompletnym zestawem do inteligentnego domu, która opowie o wszystkich zawiłościach pracy w tym systemie.

Zestaw inteligentnego domu Arduino

Projekt inteligentnego domu Arduino

Inteligentny dom „na każdą okazję” nie istnieje. Dlatego jego projektowanie zaczyna się od zdefiniowania zadań, wyboru i umieszczenia głównego węzła Arduino, a następnie pozostałych elementów. Na ostatnim etapie funkcjonalność jest łączona i finalizowana za pomocą programowania.

  1. Kontrola wilgotności w cokole.
  2. Automatyczne włączanie konwektorów, gdy temperatura w domu spadnie poniżej dopuszczalnego poziomu w dwóch możliwych opcjach – w obecności i nieobecności osoby w pomieszczeniu.
  3. Włączam światła uliczne o zmierzchu.
  4. Wysyłanie wiadomości o zmianach każdego wykrytego stanu.

Jako przykład możemy rozważyć projekt automatyki dla parterowego domu z dwoma pokojami, piwnicą do przechowywania warzyw. W skład kompleksu wchodzi siedem pomieszczeń: hol wejściowy, łazienka z prysznicem, kuchnia, ganek, sypialnia, jadalnia, piwnica.

  1. Ganek. Gdy właściciel zbliży się do domu w nocy, zapalą się światła. Należy też wziąć pod uwagę coś przeciwnego – wychodząc z domu w nocy, trzeba też zapalić światło.
  2. Korytarz. Po wykryciu ruchu i o zmierzchu włącz światło. W ciemności konieczne jest zapalenie przytłumionego światła żarówki.
  3. Piwnica na ul. Gdy właściciel podejdzie, w ciemności powinna zapalić się lampka przy drzwiach do piwnicy. Po otwarciu drzwi światło w środku zapala się i gaśnie, gdy osoba wychodzi z budynku. Przy wyjściu włącza się oświetlenie na werandzie, a gdy oddalasz się od piwnicy, gaśnie przy drzwiach. Kontrola wilgotności jest zainstalowana w piwnicy, a po osiągnięciu krytycznej temperatury włącza się kilka wentylatorów, aby poprawić cyrkulację powietrza.
  4. Prysznic. Posiada zainstalowany kocioł. Jeśli w domu jest osoba, kocioł włącza ogrzewanie wody. Automatyczne wyłączanie po osiągnięciu maksymalnej temperatury grzania. Kiedy wchodzisz do toalety, włącza się kaptur i światło.
  5. Kuchnia. Włączanie oświetlenia głównego odbywa się ręcznie. Jeśli właściciel domu przez dłuższy czas nie przebywa w kuchni, światło wyłącza się automatycznie. Podczas gotowania okap włącza się automatycznie.
  6. Kantyna. Sterowanie oświetleniem jest podobne jak w kuchni. Będąc w kuchni, istnieje możliwość wydania polecenia głosowego inteligentnemu asystentowi głośnika, aby uruchomić muzykę.
  7. Sypialnia. Oświetlenie jest włączane ręcznie. Ale następuje automatyczne wyłączenie, jeśli przez długi czas w pokoju nie ma osoby. Dodatkowo musisz wyłączyć oświetlenie na bawełnie.

W całym domu znajdują się konwektory. Konieczne jest automatyczne kontrolowanie utrzymywanej temperatury w domu w dwóch trybach: gdy dana osoba jest w domu i podczas jego nieobecności. W pierwszej opcji temperatura powinna spaść nie mniej niż 20 stopni i wzrosnąć nie więcej niż 22. W drugiej temperatura w domu powinna spaść nie mniej niż 12 stopni.

Projekt jest gotowy, pozostaje do zaangażowania się w jego realizację.

Plusy i minusy systemu

Przed wyborem komponentów i modułów do tworzenia automatyki w inteligentnym domu należy zwrócić uwagę zarówno na zalety, jak i wady systemu.

  1. Korzystanie z komponentów innych producentów z kontrolerem Arduino.
  2. Tworzenie własnych programów inteligentnego domu, ponieważ kod źródłowy projektu jest otwarty.
  3. Język programowania jest prosty, w sieci jest wiele instrukcji, nawet początkujący może to rozgryźć.
  4. Prosty projekt jest wykonywany w ciągu godziny praktyki przy użyciu domyślnych bibliotek przeznaczonych do: odczytywania sygnałów przycisków, wyświetlania informacji na wyświetlaczach LCD lub wskaźnikach siedmiosegmentowych i tak dalej.
  5. Możesz zasilać, wysyłać polecenia i wiadomości, programować lub przesyłać gotowe rozwiązania programowe do Arduino za pomocą kabla USB.
  1. Środowisko programistyczne Arduino IDE to program zbudowany w Javie, w skład którego wchodzą: edytor kodu, kompilator oraz transfer oprogramowania układowego na płytkę. W porównaniu z nowoczesnymi rozwiązaniami na rok 2019 jest to najgorsze środowisko deweloperskie (w formie, w jakiej jest serwowane). Nawet po przejściu do innego środowiska programistycznego będziesz musiał opuścić IDE dla oprogramowania układowego.
  2. Mała ilość pamięci flash do tworzenia programów.
  3. Aby ukończyć projekt, bootloader musi być flashowany dla każdego nakładki mikrokontrolera. Jego rozmiar to 2 Kb.
  4. Pusty projekt zajmuje 466 bajtów na Arduino UNO i 666 bajtów w pamięci stałej płytki Mega.
  5. Niska częstotliwość procesora.
READ
Inteligentny dom zrób to sam od podstaw lub całoroczna podróż / Sudo Null IT News

Moduły i rozwiązania „inteligentnego domu” na Arduino

Głównym elementem inteligentnego domu jest centralna płytka mikrokontrolera. Za współdziałanie wszystkich elementów systemu odpowiadają dwie lub więcej połączonych ze sobą płyt.

  • Arduino UNO to średniej wielkości płytka z własnym procesorem i pamięcią. Podstawą jest mikrokontroler ATmega328. Dostępnych jest 14 cyfrowych wejść/wyjść (6 z nich można wykorzystać jako wyjścia PWM), 6 wejść analogowych, kryształ 16 MHz, port USB (na niektórych płytach USB-B), złącze programowania w obwodzie, przycisk RESET . Pamięć Flash – 32 kB, pamięć o dostępie swobodnym (SRAM) – 2 kB, pamięć nieulotna (EEPROM) – 1 kB.

  • Arduino NANO to płytka o minimalnych wymiarach z mikrokontrolerem ATmega328. Różnicą od UNO jest kompaktowość, wynikająca z rodzaju zastosowanych nakładek kontaktowych – tzw. „grzebienia nóg”.

  • Arduino MEGA to duża płytka z mikrokontrolerem ATMega 2560. Częstotliwość taktowania wynosi 16 MHz (jak w UNO), 54 piny cyfrowe zamiast 14 i 16 pinów analogowych zamiast 6. Pamięć Flash – 256 kB, SRAM – 8 kB, EEPROM-4.

Najpopularniejszą płytką jest Arduino UNO, z którą łatwiej się pracuje pod względem prac instalacyjnych. Płyta NANO jest mniejsza i bardziej kompaktowa, co pozwala na umieszczenie jej w dowolnym miejscu inteligentnego domu. MEGA służy do złożonych zadań.

  1. Silnik krokowy.
  2. Manipulator sterowania.
  3. Przekaźnik elektrochemiczny SRD-05VDC-SL-C 5 V.
  4. Płytka bezlutowa do płytki stykowej MB-102.
  5. Moduł z kartą dostępu i dwoma znacznikami.
  6. Czujnik dźwięku LM393.
  7. Czujnik poziomu cieczy.
  8. Dwa proste urządzenia do wyświetlania informacji cyfrowych.
  9. Wyświetlacz LCD do wyświetlania wielu znaków.
  10. Matryca LED TC15-11GWA.
  11. Trójkolorowy moduł RGB.
  12. Czujnik temperatury i miernik wilgotności DHT11.
  13. Moduł czasu rzeczywistego DS1302.
  14. Serwo SG-90.
  15. Pilot na podczerwień.
  16. Matryca klawiatury na 16 przycisków.
  17. Chip 74HC595N rejestru przesuwnego dla dodatkowych wyjść.
  18. Podstawowe drobne elementy elektroniczne do tworzenia obwodów.

Możesz również znaleźć bardziej kompletny zestaw do stworzenia inteligentnego domu na Arduino od podstaw własnymi rękami. A do realizacji kolejnego projektu, oprócz elementów zestawu szkoleniowego, potrzebne będą dodatkowe rzeczy i moduły.

Czujniki i przetworniki

Do kontrolowania temperatury i wilgotności w domu i w piwnicy potrzebny będzie czujnik temperatury i wilgotności. W konstruktorze inteligentnego domu jest to płytka, która łączy w sobie czujniki temperatury i wilgotności oraz wyświetlacz LCD do wyprowadzania danych.

Płytka jest uzupełniona kompatybilnymi czujnikami ruchu lub innymi czujnikami PIR, które określają obecność lub nieobecność osoby w zasięgu i jest połączona z oświetleniem poprzez przekaźnik.

Czujnik gazu pozwoli Ci szybko zareagować na dym, dwutlenek węgla czy wyciek gazu, a po podłączeniu do obwodu automatycznie włączy okap.

Czujnik gazu Arduino

Komponent obwodu „Przekaźnik” łączy ze sobą obwody elektryczne o różnych parametrach. Przekaźnik włącza i wyłącza urządzenia zewnętrzne otwierając i zamykając obwód elektryczny, w którym się znajdują. Za pomocą tego modułu sterowanie oświetleniem następuje również wtedy, gdy osoba stoi i samodzielnie przełącza przełącznik dwustabilny.

Diody LED mogą wskazywać stan przekaźnika w danym czasie. Na przykład czerwony — oświetlenie wyłączone, zielony — oświetlenie włączone. Schemat okablowania lampy wygląda tak.

W przypadku większego projektu lepiej jest zastosować magistralę przekaźnikową, taką jak ośmiokanałowy moduł przekaźników 5V.

Kontroler

  • opis elementów;

  • wyprowadzenie płyty;

  • schemat ideowy tablicy;

  • wyprowadzenie mikrokontrolera ATMega 328.

Ustawienie programowe

Programowanie podłączonych elementów Arduino odbywa się w edytorze IDE. Możesz go pobrać z oficjalnej strony. Do programowania można wykorzystać gotowe biblioteki.

Lub skorzystaj z gotowego rozwiązania do szkicowania Ardublock – graficznego języka programowania wbudowanego w IDE. Zasadniczo wszystko, co musisz zrobić, to pobrać i zainstalować oprogramowanie, a następnie użyć bloków do utworzenia obwodu.

READ
Najlepsze artykuły gospodarstwa domowego - oceny i recenzje

Zdalne sterowanie inteligentnym domem

  • Adapter Wi-Fi skonfigurowany do odbierania i przesyłania sygnału przez router;
  • lub router Wi-Fi podłączony za pomocą kabla Ethernet.

Dostępna jest również opcja zdalnego sterowania Bluetooth. W związku z tym do płytki musi być podłączony moduł Bluetooth.

Istnieje kilka możliwości sterowania inteligentnym domem Arduino: za pomocą aplikacji na smartfona lub przez internet. Rozważmy każdy bardziej szczegółowo.

Aplikacje kontrolne

Ponieważ ten system budowy nie jest zamkniętym ekosystemem, zaimplementowano dla niego wiele aplikacji. Różnią się od siebie nie tylko interfejsem, ale także wykonywaniem różnych zadań.

Blynk

Aplikacja na Androida i iOS o świetnym designie, pozwala na tworzenie projektów, które mają bezpośredni dostęp do wyzwalacza zdarzeń na płytce Arduino. Ale aby aplikacja działała, potrzebne jest połączenie z Internetem, w przeciwnym razie nie będzie można z nią współdziałać.

Virtuino

Fajna darmowa aplikacja na Androida, która pozwala łączyć projekty w jeden i sterować kilkoma płytami jednocześnie za pomocą Wi-Fi lub Bluetooth.

Umożliwia tworzenie wizualnych interfejsów dla diod LED, przełączników, liczników, urządzeń obwodów analogowych. Posiada materiały szkoleniowe oraz bibliotekę wiedzy o procesie pracy z systemem.

Ładowarka Bluino – Arduino IDE

Aplikacja na telefon to środowisko programistyczne do kodowania Arduino. Dzięki niemu możesz szybko i łatwo skompilować kod do pliku, a następnie przesłać go za pomocą adaptera OTG na płytkę.

Sterowanie Bluetooth Arduino

Aplikacja steruje pinami Arduino oraz steruje podstawowymi funkcjami poprzez Bluetooth. Ale program nie jest nastawiony na zdalne sterowanie, a jedynie na monitorowanie.

RemoteXY: sterowanie Arduino

Dzięki aplikacji użytkownik może stworzyć własny interfejs zarządzania tablicą. Połączenie odbywa się za pomocą Wi-Fi, Bluetooth lub Internetu za pośrednictwem serwera w chmurze.

Kontroler Bluetooth 8 Lamp

Stworzona przy użyciu modułów Bluetooth HC-05, HC-06 i HC-07, aplikacja zapewnia ośmiokanałowe sterowanie. W ten sposób uzyskuje się kontrolę i regulację pracy Arduino, zgodnie z każdą z 8 diod LED.

Sterowanie głosowe BT dla Arduino

Aplikacja jest specjalnie dostosowana do zdalnej kontroli danych z czujnika ultradźwiękowego połączonego przez Bluetooth przez Arduino. Połączenia wykonywane są przez moduł HC-05.

Po podłączeniu czujnik ultradźwiękowy będzie mógł przekazywać informację o odległości do obiektu, która zostanie wyświetlona w interfejsie aplikacji w telefonie.

Kontroler Wi-Fi IoT

Aplikacja z interfejsem informującym o konfiguracji każdego wejścia/wyjścia na płytce Arduino. W narzędziu możesz przełączać GPIO w czasie rzeczywistym i wyświetlać wartość ADC.

Klient sieciowy

Możesz zdalnie sterować tablicą inteligentnego domu, umieszczając odbiór i przetwarzanie danych inteligentnego domu na serwerze WWW. Oczywiście serwer dla inteligentnego domu Arduino trzeba stworzyć niezależnie.

Do tych celów będziesz potrzebować Arduino Ethernet Shield, rozszerzenia sieciowego dla pinów Arduino Uno, które umożliwia dodanie złącza RJ-45 w celu połączenia z siecią.

Przy łączeniu zdalnym konieczne jest doprowadzenie zewnętrznego zasilania do płytki nie z USB.

Następnie podłącz płytkę przez USB do komputera, a przez Ethernet płytkę do routera, który rozprowadza Internet do komputera. Gdy połączenie zostanie nawiązane prawidłowo, na porcie pojawi się zielona poświata.

Następnie musisz użyć bibliotek osłony Ethernet i napisać kod w IDE, aby utworzyć serwer i wysłać dane do serwera. Przykład serwera domowej roboty jest dobrze opisany w tej instrukcji.

Powiadomienia SMS

  1. Pracuj z połączeniami głosowymi.
  2. Odbieraj i wysyłaj SMS-y.
  3. Połącz się z Internetem przez GPRS.

Obwód działa poprzez specjalną płytkę rozszerzeń GSM zawierającą specjalny modem.

Możesz dowiedzieć się o tworzeniu uniwersalnego alarmu na Arduino, z wysyłaniem powiadomień SMS na smartfon, z odpowiedniej instrukcji wideo.

Nauka podstaw Arduino

Korzystając z aplikacji Arduino 2 Handbook, możesz opanować materiał w ciągu dwóch tygodni. Aplikacja jest całkowicie offline i nie wymaga połączenia z Internetem. Opisuje takie informacje: funkcje, dane, operatory, biblioteki Arduino.

Po opanowaniu podstaw możesz odwiedzić zasób Habrahabr, który zawiera 100 lekcji programowania Arduino.

Dla tych, którzy są przyzwyczajeni do czerpania wiedzy z książek, Jeremy Bloom: Learning Arduino będzie wspaniałym narzędziem do teorii i praktyki.

Najpopularniejszy samouczek Arduino

Książka zawiera podstawowe informacje o sprzęcie i oprogramowaniu Arduino. Opisano zasady programowania w środowisku Arduino IDE. Autor książki uczy analizy obwodów elektrycznych i czytania specyfikacji technicznych. Informacje z książki pomogą w przyszłości określić dobór odpowiednich części do stworzenia inteligentnego domu.

Autor podaje przykłady działania silników elektrycznych, czujników, wskaźników, serwonapędów, różnych interfejsów przesyłania danych. Książka zawiera ilustrowane komponenty, schematy połączeń i wykazy programów. Co najważniejsze, komponenty do ćwiczeń, z którymi pracuje autor, nie są drogim, nieskomplikowanym i popularnym materiałem do eksperymentalnych złożeń w domu.

READ
Ogrzewanie w inteligentnym domu: urządzenie i zasada działania wskazówki dotyczące organizacji inteligentnego systemu © Geostart

Powiązane filmy wideo

Doskonałym rozwiązaniem dla osób zainteresowanych tematem będzie filmik dla początkujących. Opisuje główne elementy płytki, dlaczego są używane, a także podstawy programowania w Arduino IDE.

Nie będzie zbyteczne zapoznanie się z przykładem realizacji tworzenia inteligentnego kontrolera dla szklarni.

Tutaj dowiesz się, które projekty inteligentnego domu oparte na Arduino zostały już stworzone i wykorzystane przez programistów dla własnej przyjemności.

Inteligentny dom oparty na Arduino: instrukcja montażu krok po kroku

„Inteligentny dom” od Arduino

Połączenie, instalacja, konfiguracja

Do tej pory systemy takie jak „inteligentny dom” z niesamowitej egzotyki, dostępnej tylko dla najbogatszych osób, stały się codziennością, do której może dołączyć każdy. Jest z czego wybierać: wydawanie takich systemów sprzętowych i programowych zostało opanowane przez wielu programistów. Do najbardziej znanych należy firma Arduino, której produkty poznamy teraz.

Czym jest „inteligentny dom”

Termin ten ma bardziej zrozumiały odpowiednik – „automatyka domowa”. Istotą takich rozwiązań jest zapewnienie automatycznej realizacji różnych procesów zachodzących w domu, biurze czy specjalistycznych obiektach. Najprostszym przykładem jest automatyczne włączanie oświetlenia w momencie, gdy do pomieszczenia wchodzi jeden z lokatorów.

System inteligentnego domu od Arduino

W każdym systemie „inteligentnego domu” można wyróżnić następujące komponenty:

    część dotykowa. Jest to zestaw urządzeń, których główną część reprezentują różne czujniki, które pozwalają systemowi rejestrować zdarzenia o różnym charakterze. Przykładami są czujniki temperatury i ruchu. Inne urządzenia części dotykowej służą do przesyłania poleceń użytkownika do systemu. Są to zdalne przyciski i piloty z odbiornikami.

Nowoczesne systemy „inteligentny dom” dzielą się na kilka odmian:

  1. Wyposażony we własny kontroler.
  2. Wykorzystując w tym charakterze procesor komputera użytkownika (tablet, smartfon).
  3. Przetwarzanie informacji za pomocą zdalnego serwera należącego do firmy deweloperskiej (usługa w chmurze).

System może nie tylko aktywować dane urządzenie, ale również poinformować użytkownika o zdarzeniu wysyłając wiadomość na telefon lub w inny sposób. W ten sposób można mu przypisać funkcje alarmowe, w tym przeciwpożarowe.

Scenariusze mogą być znacznie bardziej złożone niż opisaliśmy w przykładach. Na przykład możesz nauczyć system włączania kotła i przekazywania do niego ciepłej wody, gdy scentralizowane zasilanie jest wyłączone, jeśli wykryta zostanie obecność jednego z mieszkańców w domu (również czujniki podczerwone, ultradźwiękowe jak czujniki ruchu pomagają).

Poznawanie Arduino

Arduino to włoska firma zajmująca się projektowaniem i produkcją komponentów oraz oprogramowania do prostych systemów inteligentnego domu przeznaczonych dla osób nie będących specjalistami. Warto zauważyć, że ten programista całkowicie otworzył architekturę stworzonych przez siebie systemów, co umożliwiło zewnętrznym producentom opracowywanie nowych i kopiowanie istniejących urządzeń zgodnych z Arduino, a także wydawanie dla nich oprogramowania.

Zestaw inteligentnego domu Arduino

Takie podejście zapewniło dużą popularność systemom włoskiej firmy, ale ma też wadę: ze względu na to, że niejako „wszyscy” zajmują się produkcją komponentów do układów Arduino, nie zawsze jest to możliwe kupić produkt wysokiej jakości po raz pierwszy. Często masz do czynienia z problemem kompatybilności komponentów różnych producentów.

Potencjalny użytkownik powinien mieć świadomość, że od 2008 roku istnieją dwie firmy produkujące produkty pod marką Arduino. Pierwszy, który zapoczątkował ten kierunek, ma oficjalną stronę internetową www.arduino.cc; drugi, nowo utworzony, na www.arduino.org. To, co zostało opracowane przed splitem, jest prezentowane w ten sam sposób na obu stronach, ale oferta nowych produktów jest już inna.

Oprogramowanie dla systemów inteligentnego domu Arduino ma postać powłoki oprogramowania (tzw. IDE), w której można pisać i kompilować programy. Rozprowadzane za darmo. Programy pisane są w C++.

Wersje programu Arduino IDE prezentowane na tych stronach są również bardzo różne, chociaż mają tę samą nie tylko nazwę, ale także numery wersji. Z tego powodu dość łatwo się w nich pomylić. Różnica polega na tym, że każde oprogramowanie obsługuje własne biblioteki i tablice.

„Sprzęt” systemu składa się z płytki z mikrokontrolerem (płyty procesora) oraz zainstalowanych na niej płytek rozszerzeń, które potocznie nazywane są osłonami. Podłączenie nakładki do płyty procesora pozwala na dodawanie nowych komponentów do inteligentnego domu. Zmontowany system może być całkowicie autonomiczny lub współpracować z komputerem za pośrednictwem standardowego interfejsu przewodowego lub bezprzewodowego.

Instalowanie kart rozszerzeń

Zalety systemu Arduino

Ten kompleks sprzętowo-programowy przyciąga użytkownika takimi zaletami:

  • możliwość autonomicznej pracy, dzięki obecności własnego kontrolera;
  • szerokie możliwości konfiguracji działania systemu (użytkownik sam pisze program, w którym można podać scenariusze o dowolnej złożoności);
  • prostota procesu ładowania programu do kontrolera: nie jest do tego wymagany programator, wystarczy mieć kabel USB (mikrokontroler posiada firmware Bootloader);
  • przystępny koszt komponentów, ze względu na brak praw monopolowych dla jednego lub drugiego producenta (architektura jest otwarta).
READ
Zdalne sterowanie oświetleniem: rodzaje systemów, dobór zasad instalacji sprzętu © Geostart

Jeśli Bootloader zaczął działać nieprawidłowo lub nie było go w zakupionym mikrokontrolerze, użytkownik ma możliwość samodzielnego flashowania. IDE zapewnia wsparcie dla niektórych z najbardziej dostępnych i popularnych programistów w tym celu. Ponadto prawie wszystkie płyty procesorów Arduino mają listwę pinową, która umożliwia programowanie w obwodzie.

Program Arduino IDE, prezentowany na stronie arduino.cc, ma możliwość tworzenia niestandardowych platform sprzętowych i programowych, podczas gdy ta funkcja nie jest dostępna w wersji programu arduino.org.

Jakie rozwiązania oferuje Arduino?

Ponieważ wiele firm zajmuje się produkcją czujników i urządzeń kompatybilnych z Arduino, asortyment tych produktów jest dość szeroki. Oto, co jest najczęściej używane:

  1. Czujniki monitorujące parametry klimatyczne:
  2. temperatura;
  3. wilgotność;

Niektóre z tych urządzeń są zawarte w podstawowym zestawie Arduino Start, który niektórzy producenci nazywają StarterKit.

Część wykonawcza zawiera ogromny zestaw urządzeń, m.in.:

  • silniki elektryczne;
  • przekaźniki i różne przełączniki;
  • ściemniacze (pozwalają na płynną zmianę intensywności oświetlenia);
  • samozamykacze;
  • zawory i zawory 3-drogowe z siłownikami.

Jeśli planujesz podłączyć oświetlenie przez przekaźnik Arduino, bardziej poprawne jest użycie lamp LED jako lamp. Lampy żarowe po podłączeniu przez takie przekaźniki szybko się palą.

Wideo: pierwsze kroki z Arduino – sterowanie diodą LED za pomocą interfejsu internetowego

Budowanie projektu na Arduino

Pokażemy proces tworzenia i konfiguracji „inteligentnego domu” Arduino na przykładzie systemu, który będzie zawierał następujące funkcje:

  • monitorowanie temperatury na zewnątrz i wewnątrz;
  • śledzenie stanu okna (otwarte/zamknięte);
  • monitorowanie warunków pogodowych (czysto/deszczowo);
  • generowanie sygnału dźwiękowego po zadziałaniu czujnika ruchu, jeśli funkcja alarmu jest aktywna.

Skonfigurujemy system w taki sposób, aby dane można było przeglądać przez specjalną aplikację, a także przeglądarkę internetową, czyli użytkownik może to zrobić z dowolnego miejsca, w którym jest dostęp do Internetu.

  1. “GND” – uziemienie.
  2. “VCC” – jedzenie.
  3. “PIR” – czujnik ruchu.

Niezbędne komponenty do produkcji systemu inteligentnego domu

System inteligentnego domu Arduino będzie wymagał:

  • Płytka mikroprocesorowa Arduino;
  • Moduł Ethernet ENC28J60;
  • dwa czujniki temperatury marki DS18B20;
  • mikrofon;
  • czujnik deszczu i śniegu;
  • Czujnik ruchu;
  • kontaktron;
  • przekaźnik;
  • rezystor o rezystancji 4,7 kOhm;
  • skrętka;
  • Kabel Ethernet.

Wszystkie komponenty kosztują około 90 USD.

Zestaw głównych komponentów

Montaż „inteligentnego domu”: instrukcje krok po kroku

Oto kolejność do naśladowania.

Podłączanie urządzeń wykonawczych i czujników

Wszystkie elementy łączymy zgodnie ze schematem.

Schemat systemu „inteligentnego domu” opartego na sprzęcie Arduino

Rozwój kodu programu

Użytkownik pisze cały program w powłoce Arduino IDE, do której ten ostatni wyposażony jest w edytor tekstu, kierownik projektu, kompilator, preprocesor oraz narzędzia do wgrywania kodu programu do mikroprocesora płytki Arduino. Wersje IDE zostały opracowane dla systemów operacyjnych Mac OS X, Windows i Linux. Językiem programowania jest C++ z pewnymi uproszczeniami. Programy użytkownika dla Arduino nazywane są zwykle szkicami (sketch) lub szkicami, program IDE zapisuje je w plikach z rozszerzeniem „.ino”.

Funkcja main(), która jest obowiązkowa w C++, jest automatycznie tworzona przez powłokę IDE, przypisując w niej szereg standardowych akcji. Użytkownik musi napisać funkcje setup() (wykonywane raz przy starcie) i loop() (wykonywane w nieskończonej pętli). Obie te funkcje są obowiązkowe dla Arduino.

Nie ma potrzeby wstawiania do programu plików nagłówkowych standardowych bibliotek – IDE robi to automatycznie. Nie dotyczy to bibliotek użytkownika — należy je określić.

Dodawanie bibliotek do „Menedżera projektów” IDE odbywa się w nieco nietypowy sposób. Jako kod źródłowy napisany w C++ są one dodawane do specjalnego folderu w katalogu roboczym powłoki IDE. Następnie nazwy tych bibliotek pojawią się w odpowiednim menu IDE. Te, które użytkownik zaznaczy, zostaną uwzględnione na liście kompilacji.

IDE zapewnia minimum ustawień i nie ma w ogóle możliwości konfiguracji kompilatora. W ten sposób początkujący programista jest ubezpieczony od błędów.

Oto przykład najprostszego programu, który sprawia, że ​​dioda podłączona do 2. wyjścia płyty mruga co 13 sekundy:

Jednak w tej chwili użytkownik nie zawsze musi osobiście pisać program: wiele gotowych bibliotek i szkiców jest umieszczanych w sieci (spójrz tutaj: http://arduino.ru/Reference). Istnieje również gotowy program dla systemu rozważanego w tym przykładzie. Należy go pobrać, rozpakować i zaimportować do IDE. Tekst programu opatrzony jest komentarzami wyjaśniającymi zasadę jego działania.

Schemat programu w Arduino IDE

Gdy użytkownik naciśnie przycisk „Odśwież” w przeglądarce lub aplikacji zainstalowanej na smartfonie, mikrokontroler Arduino wysyła dane do tego klienta. Z każdej ze stron oznaczonych jako “/tempin”, “/tempout”, “/rain”, “/window”, “/alarm” pojawia się kod programu, który jest wyświetlany na ekranie.

Instalacja aplikacji klienckiej na smartfonie (dla systemu Android)

Aby odbierać dane z systemu inteligentnego domu w sieci można pobrać gotową aplikację.

READ
Zbuduj swój inteligentny dom w oparciu o urządzenia ekosystemu Xiaomi: 5 porad / Wygodny dom i sprzęt AGD / iXBT Live

Oto, co musi zrobić właściciel gadżetu:

  1. Pobierz plik SmartHome.apk.
  2. Wyślij go na swój telefon.
  3. Otwórz “Menedżera plików”, umieść ten plik.
  4. Kliknij na niego i wybierz „Zainstaluj” (powinien być zaznaczony „znacznik wyboru”, co pozwala na instalowanie programów poza usługą Google Play).

Za pomocą tej aplikacji można nie tylko odbierać informacje z systemu inteligentnego domu, ale także nimi zarządzać – włączać i wyłączać alarm. Jeśli jest włączony, to po wyzwoleniu czujnika ruchu do aplikacji zostanie wysłane powiadomienie. Aplikacja raz na minutę odpytuje system Arduino o wyzwolenie czujnika ruchu.

Aktywując ikonę „Ustawienia”, możesz edytować swój adres IP.

Konfiguracja przeglądarki do pracy z „inteligentnym domem”

W pasku adresu przeglądarki wpisz XXX.XXX.XXX.XXX/all, gdzie „XXX.XXX.XXX.XXX” to Twój adres IP. Następnie będzie można odbierać dane z systemu i nimi zarządzać.

Prezentowany tutaj kod pozwala na włączanie i wyłączanie światła przez przeglądarkę, podczas gdy ta funkcja nie jest zaimplementowana w aplikacji na smartfony z systemem Android.

Praca z routerem

Następnie musisz otworzyć port na routerze:

  • otwórz ustawienia routera;
  • wprowadź adres IP Arduino;
  • otwarty port 80.

Zakładanie konta na noip.com

Ten krok jest opcjonalny, ale jest niezbędny, jeśli chcesz przypisać nazwę domeny do adresu. Aby to zrobić, musisz zarejestrować się na stronie https://www.noip.com/, przejść do sekcji „Dodaj hosta” i wprowadzić adres IP systemu.

Uzyskiwanie nazwy domeny dla systemu Arduino

Tworzenie projektu zakończone, możesz sprawdzić wydajność systemu.

Wideo: inteligentny dom na Arduino

Cechy niektórych urządzeń Arduino

Z uwagi na fakt, że komponenty kompatybilne z Arduino są produkowane przez wiele firm trzecich, nad jakością których samo Arduino nie ma wpływu, bardzo prawdopodobne jest, że użytkownik kupi komponent, który nie działa do końca poprawnie.

Podobna sytuacja istnieje w rozwoju komputerów osobistych. Kiedyś IBM otworzył architekturę swoich komputerów, w wyniku czego wiele firm zaczęło produkować komputery kompatybilne z IBM i poszczególne komponenty. W efekcie tego typu „komputery osobiste” rozprzestrzeniły się szeroko na całym świecie, jednak jakość komponentów i stopień ich kompatybilności w wielu przypadkach okazały się nie na najwyższym poziomie. Apple obrało odwrotną drogę. Ograniczyło to krąg programistów, którzy mieli dostęp do architektury, a taką samą politykę prowadzono w zakresie tworzenia oprogramowania. W rezultacie komputery Apple okazały się mniej popularne i droższe, ale pod względem jakości przewyższają o rząd wielkości urządzenia zgodne z IBM z systemem Windows.

W przypadku niektórych komponentów do układów Arduino użytkownicy zauważyli, co następuje:

  1. Czujnik temperatury DHT11, dostarczany z zestawem podstawowym (StarterKit), daje znaczny błąd 2-3 stopni. W pomieszczeniach zaleca się stosowanie czujnika temperatury DHT22, który daje dokładniejsze odczyty, a do instalacji na zewnątrz – DHT21, który może pracować w niskich temperaturach i jest chroniony przed uszkodzeniami mechanicznymi.
  2. Na niektórych płytach mikroprocesorowych Arduino, gdy podłączone do nich przekaźniki zamykają się, port COM ulega awarii. Z tego powodu szkicu nie można załadować do mikrokontrolera: gdy tylko rozpocznie się wylewanie, procesor ponownie się uruchomi. Przekaźnik klika, port COM jest wyłączony, a proces ładowania szkicu zostaje zatrzymany.
  3. Czujnik zamknięcia okna/drzwi czasami zaskakuje w postaci fałszywych alarmów. Mając to na uwadze, szkic jest napisany w taki sposób, aby system wykonał niezbędne działanie dopiero po otrzymaniu kilku sygnałów z rzędu.
  4. Aby skonfigurować kontrolę procesu za pomocą klaśnięć, niektórzy użytkownicy, z braku doświadczenia, zamawiają detektor dźwięku z ręcznym ustawianiem progu zamiast mikrofonu. Do takich celów ten element nie jest odpowiedni, ponieważ ma zbyt mały zasięg: trzeba klaskać nie dalej niż 10 cm od detektora. Ponadto czujnik ten przesyła sygnały w impulsach o krótkim czasie trwania, dzięki czemu w przypadku dużego szkicu, którego przetworzenie zajmuje stosunkowo dużo czasu, mikrokontroler po prostu nie ma czasu na ich naprawienie.
  5. Do urządzenia przeciwpożarowego należy zastosować czujkę dymu, a nie czujkę pożarową. Ten ostatni rejestruje płomień nie dalej niż 30 cm od siebie.
  6. W przypadku awarii mikrokontrolera lub błędu kodu, lepiej zastosować normalnie zamknięte przekaźniki z ręcznymi przełącznikami połączonymi szeregowo.

Aby uniknąć kupowania komponentów niskiej jakości, doświadczeni użytkownicy zalecają najpierw przestudiowanie recenzji na ich temat opublikowanych w Internecie. Niedrogie czujniki można kupić w kilku odmianach, aby przekonać się, który z nich działa najlepiej.

Być może system inteligentnego domu Arduino nie jest najwyższej jakości, ale najszerszy wybór komponentów i ich przystępna cena zdecydowanie sprawiły, że stał się jednym z najpopularniejszych. Korzystając z naszych wskazówek, szybko nauczysz się tworzyć projekty Arduino, automatyzując różne domowe procesy.

Rating
( No ratings yet )
Like this post? Please share to your friends:
Leave a Reply

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: