Розумний будинок Ардуін схема. Розумний будинок на базі Arduino своїми руками: модулі, що підключаються, і налаштування системи

Світ не стоїть на місці. Техніка проникає у життя людей. З кожним днем ​​все складніше уявити повсякденність без електроніки. І якщо раніше все це було доступно лише заможним людям, то тепер техніка знаходиться в кожному будинку і робить життя простіше та цікавіше.

До речі, зараз будь-яка людина, володіючи базовими знаннями, може зібрати самостійно будь-яке пристосування, яке в майбутньому може стати корисним у повсякденному житті. Інтернет повний тематичних сайтів та форумів, фото та відео майстер-класів, порад та інструкцій. Ось так і створюються пристрої, які сприяють більш легкому та приємному життю. Якщо будинок чи квартира оснащена спеціальними датчиками, які зчитують ту чи іншу інформацію та виконують певні функціїТакий будинок можна назвати «розумним».

«Розумний» будинок – що це?

Можливо, у фантастичних фільмах про майбутнє багато хто вже зустрічав подібну будову. Красива простора квартира, де все автоматизовано. Комп'ютер будить сім'ю вранці, готує сніданки, займається пранням та прасуванням одягу, а також підтримує чистоту вдома. Простіше кажучи - виконує роль покоївки-кухаря і навіть більше.

Насправді все, звичайно, не так чарівно і барвисто. Нинішні машини та комп'ютери ще не досягли такого рівня розвитку. Тому функції сучасного «розумного» будинку обмежені. Наприклад, датчики можуть контролювати:

  • Вмикання-вимикання світла.
  • Витрати енергії.
  • Температура.
  • Вологість у будинку.

Професійних компаній, які займаються будівництвом та облаштуванням «розумних» будинків, дуже мало. До того ж, їхні слуги досить дорогі і по кишені лише вузькому колу споживачів. Але це зовсім не привід відмовляти собі в облаштуванні комфортного життяв власному будинку. Адже можна зробити «розумний дім» власноруч.

Технологія збирання

« Розумний будинок» - це лише контролери з датчиками, основною метою яких є зчитування інформації та, виходячи з цього, виконання відповідних команд. Наприклад, контроль температури у приміщенні. Якщо в кімнаті температура падає нижче раніше встановленого рівня, система автоматично включає обігрів кімнати. Це лише один із прикладів функцій « розумного будинку». Подібні контрольні датчикивстановлені по всьому будинку та виконують найрізноманітніші функції.

Отже, як зробити свій будинок «розумним»? Що для цього потрібне? Для початку потрібно зайнятися закупівлею необхідних контролерів, які буде необхідно запрограмувати та налагодити. На перший погляд, все досить просто, але насправді можуть виникнути проблеми з експлуатацією самої системи, для складання та управління якої необхідні певні знання. Тому компанія Arduino постаралася максимально спростити свою систему, з якою може впоратися навіть дитина.

Що таке система Arduino?

Система компанії Arduino – це платформа розробки власних програм комфорту. Система легка в управлінні і рідко дає збої або виходить із ладу. Система Arduino має відкритий вихідний код та можливість підключення за допомогою USB-кабелю. Спочатку система має набір програм, встановлених за замовчуванням, але завдяки відкритого типувихідного коду можна встановлювати власні розробки.

Принцип роботи Arduino

Як працює система Arduino? Дуже просто. Встановлені по всьому будинку або квартирі датчики зчитують інформацію про навколишньому середовищіі передають усі дані на комп'ютер, Який самостійно приймає рішення. Ця система може працювати на комп'ютері, ноутбуці, планшеті або навіть телефоні. Всі програми для Ардуін можна знайти у вільному доступі. Все "залізо" виробник робить максимально стандартизованим під системні роз'єми.

Функції системи Arduino

Система ардуїно для проекту «розумного дому» повинна виконувати такі функції:

Незважаючи на набір різноманітних функцій, існують кілька важливих причин, Відштовхуючись від яких споживачі віддають свою перевагу саме Arduino.

Переваги

  • Ціна.
  • Якість.
  • Зручність.
  • Простота монтажу та проекту в цілому.
  • Низька вартість у разі поломки або виходу з експлуатації окремих комплектуючих.
  • Доступність програмного забезпечення.

Життя без інтернету, побутової техніки, смартфонів уявити складно. Багато багатих людей до цього списку додали б ще й систему «Розумний дім». У статті розберемо, що це як її встановити і як користуватися.

Що це за система?

Як уже стало зрозуміло, систему «Розумний дім» придбати зможе не кожен. Але якщо мати необхідні навички, можна створити її самостійно через спеціальний додаток. Відповідно, далі поговоримо про систему «Розумний дім» і спробуємо створити її для свого житлового приміщення.

Що за фактом є дана система? Це набір датчиків та контролерів. Вони існують різних видів, тому можуть реагувати як на рухи, так і на теплову енергію. Такі пристрої здатні контролювати роботу вдома: комунікації, систему безпеки тощо. Існують і «розумніші» споруди, які можуть самостійно включати опалення, запускати різні процеси тощо. Кожна людина хоче прийти додому, де на неї чекатиме гаряча ванна, розігріта вечеря. «Розумний» будинок – саме найкраще рішеннядля тих, хто мешкає один. Якщо немає коштів на таку систему, її можна зробити самостійно.

Як працюють датчики?

Датчики здатні зчитувати інформацію та дані, потім їх обробляти та передавати відповідну команду. Вони здатні реагувати на температуру, різкі рухи та звук.

Найпростіші та доступні датчики відстеження часто використовують на сходових майданчиках- всім знайоме автоматичне включення світла. Крім часто застосовуються в системах пожежної безпеки. Як різко починає підвищуватися температура, відразу ж спрацьовує сигналізація.

Перед тим як почати працювати з системою у власному будинку, потрібно створити проект, який дозволить правильно розподілити датчики та всі можливі контролери. Важливо відзначити, що для цього потрібно мати навички в галузі програмування та електроніки. Якщо такі відсутні, слід віддавати перевагу пристрої простого плану, тобто створені для споживача-новачка. Саме такими є системи Ардуїно. Виробник постачає абсолютно прості в установці та експлуатації пристосування.

Чому «Ардуїно»?

Це питання цілком логічне і зрозуміле. Вище вже писалося про те, що компанія випускає прості для розуміння системи, але це не єдина причина, через яку слід вибрати Arduino. Набори для «Розумного дому» придбати можна в магазині або замовити на сайті. Установку провести дозволяється самостійно, але ніхто не відмовить у наданні кваліфікованого майстра. Він виконає всі роботи без помилок і не нехтуватиме гарним оформленням(Наприклад, сховає дроти, а не «вивалить» їх на загальний розгляд). Але більша частинаклієнтів все ж таки вирішує проводити всі роботи самостійно. Чому? Це набагато простіше та дешевше. Всі фірми, які випускають подібні проекти, чудово накручують ціну і на словах завищують якість багатьох моделей. Компанія, що описується, таким не займається. Відгуки в Інтернеті це підтверджують на 100%.

Вартість за комплектуючі та встановлення системи Arduino (проекти «Розумного дому» дуже популярні) набагато дешевше, ніж у інших виробників. Навіть сама компанія пропонує всю установку проводити самостійно, тому що у разі поломки власник повинен розбиратися у схемах та проекті в цілому. Також, знаючи доскональну систему, можна з легкістю і легко підлаштувати її під себе.

На платформі Arduino є купа бібліотек з тому знайти собі підходящу програму не важко.

Набори

У продажу є набори «Розумний дім». У них покупець може знайти всі необхідні складові для створення автоматизованих систем у власному будинку: материнську та макетну плати, електронні деталі та правила використання. Цей набір навчить людину правильно підключати діоди, включати пристрої з бавовни та керувати девайсами дистанційно.

"Дерзай" створений для дітей віком від 14 років. У комплекті постачається інструкція. За допомогою набору можна створити п'ять готових проектів: секундомір, нічник і так далі.

Arduino Starter Kit – базовий набір, з якого всі власники радять розпочати ознайомлення. У ньому поставляється плата Arduino UNO, датчики, екран, резистори та інше. Коштує близько 80 євро.

«Матрьошка» призначена для дітей віком від 10 років. Вона продається у кількох версіях, які між собою відрізняються кількістю та типом деталей, відповідно, за допомогою кожного з них можна здійснити зовсім відмінні один від одного експерименти. Постачається плата Arduino UNO Rev3, зроблена в Італії. За допомогою цього набору можна зробити нічний світильник, міксер, тестер для батарей і таке інше.

«Амперка», як правило, купується для навчальних закладів. Вона виробляється для дітей віком від 12 років. Після закінчення занять діти зможуть створити робота, який рухається прямою лінією. Контролер поставляється моделі Arduino Uno.

Набори "Дерзай" ("Розумний дім") на Arduino на даний момент найбільш популярні.

Платформи

Стандартна платформа – Arduino Uno. "Розумний дім" часто працює на її базі. Вона найпоширеніша, оскільки коштує недорого. Використовуючи її, можна легко управляти мікроконтролерною технікою. Якщо людина не знайома з платами від Arduino, то всі власники радять їй почати знайомство саме з цією.

Arduino Leonardo коштує трохи дешевше за вищеописаний варіант. Справа в тому, що, на відміну від Uno, його можна використовувати як USB-пристрій. Наприклад, завдяки цій платі можна керувати мишею та клавіатурою.

Чому найчастіше створюється «Розумний дім» на Arduino Mega2560? Вона лише трохи зовні відрізняється від Uno, але має більший функціонал. Використовують її найчастіше для роботи одночасно з великою кількістюпристроїв. Відповідно з нею набагато простіше працювати, коли йдетьсяпро масштабні проекти. Загалом якщо планується створення «Розумного дому» , Arduino Mega - найбільш вдалий варіант.

Переваги системи

Компанія «Ардуїно» користується великим попитому людей, які погано розуміються на програмуванні. Усі системи мають зрозумілий інтерфейс. Однак цим переваги не обмежуються.

Виробник передбачив можливість створювати власні програми – вихідний код відкритий. Мова, що використовується, максимально проста в освоєнні. Якщо є потреба, можна переносити програми за допомогою кабелю USB. Набори «Розумного дому» досить цікаві.

Тобто при знанні мови програмування можна придбати лише один варіант програмного забезпечення та підлаштувати його максимально під себе.

Якщо необхідні додаткові утиліти, їх можна скачати безкоштовно з офіційного сайту. Систему дозволяється керувати з комп'ютера та телефону за допомогою програми.

Принципи роботи

Датчики надсилають інформацію на комп'ютер або телефон за допомогою технології бездротової передачі даних. Спеціальна утиліта обробляє дані – виконується команда. Є головний датчик (центральний), який можна або придбати, або зробити самостійно. На платах Arduino (проекти «Розумного будинку розроблені на них») є стандартні роз'єми. Завдяки цьому можна легко підібрати всі комплектуючі.

Що потрібно для збирання?

Якщо з'явилося бажання зібрати проект самостійно, необхідно зібрати деякі пристрої і взяти прилади. Які?

  • Датчики та контролери.
  • Інтернет-модуль.
  • Виту пару (кабель).
  • Перемикач.
  • Резистор.
  • Провід для інтернет-модуля.
  • Реле.

З приладдя знадобляться паяльник, викрутки і таке інше.

Набори від компанії Arduino потрібно купувати у перевірених магазинах. Чому? Всі необхідні прилади потрібні для роботи з електрикою, тому підробки використовувати небезпечно. Усі необхідні утиліти можна завантажити з Інтернету. Тому досить просто створити «Розумний дім» своїми руками базі Arduino.

Датчики потрібно вибирати, відштовхуючись від своїх переваг: включення чи відключення світла, контроль температури тощо.

Процес встановлення

Звернути увагу потрібно на те, що «Розумний будинок» повинен мати лише лампи світлодіодного типу. Звичайні варіанти не зможуть витримати напруги - або луснуть, або просто перегорять.

Після того, як проект "Розумний дім" на Arduino вже буде готовий, потрібно почати підключати контролери та датчики. Роблять це, не відхиляючись від креслення та схеми, які були створені раніше. Контакти мають бути ізольованими.

Усі роботи можна поетапно у вигляді алгоритму:

  1. Встановлення коду.
  2. Налаштування програми під комп'ютер або телефон.
  3. Переадресація портів.
  4. Тестування датчиків та забезпечення.
  5. Виправлення неполадок, якщо такі виявлені під час перевірки.

Завантажити програмне забезпечення краще з перевіреного джерела архівом. Після того, як останній буде відкритий і всі утиліти встановлені, слід перезапустити програму або перезавантажити пристрій.

Програмне забезпечення «Розумного дому» на Arduino відображатиме стан датчиків та інформацію з них. Якщо є потреба, завжди можна змінити мережеву адресу, вимкнути сигналізацію.

Робота з роутером

На роутері слід відкрити порт. Що потрібно зробити, щоб виконати цю дію? Відкрити меню конфігурацій, написати мережеву адресу Arduino та активувати порт.

Відразу після цього можна встановити ім'я домену. Тепер нічого не заважає власнику розпочати тестування системи, яка була створена власними руками.

Дистанційне керування

Завдяки серверу компанії можна пов'язати всю техніку між собою. Дозволяється використовувати хмарні сервіси, що дозволяє візуалізувати процеси. Завдяки Інтернету можна повністю керувати своїм будинком. Увімкнути/вимкнути бойлер або опалення можна, перебуваючи на іншому кінці міста.

Є ще один спосіб, який допоможе керувати будинком – СМС-повідомлення. Не завжди буває так, що є інтернет-з'єднання, тому такий спосіб є досить актуальним.

Підсумки

Потрібно звернути увагу на те, що «Розумний будинок» на базі Arduino не може працювати з відкритою мережевою адресою, оскільки інакше його легко зламатиме. Усі будівлі, які працюють на «розумній» системі, можуть допомагати економити електроенергію кожній людині, а також правильно використовувати усі ресурси. Головне, правильно підібрати всі компоненти без будь-яких підробок.

Також важливим є те, що «Ардуїно» має безліч бібліотек, які включають тисячі програмних кодів. Саме тому створити систему «Розумний дім» на Arduino, користуючись лише Інтернетом, буде більш ніж легко.

До теперішнього часу системи типу «розумний дім» із дивовижної екзотики, доступної лише найзаможнішим особам, перетворилися на буденність, до якої може долучитися будь-хто. Вибирати є з чого: випуск подібних апаратно-програмних комплексів освоїли багато розробників. До найбільш відомих належить компанія Arduino, з продукцією якої ми зараз і познайомимося.

Що таке «розумний дім»

Цей термін має більш зрозумілий аналог - «домашня автоматизація». Суть подібних рішень полягає в тому, щоб забезпечити автоматичне виконання різних процесів, що відбуваються у житлі, офісі чи спеціалізованих об'єктах. Найпростіший приклад- Автоматичне включення освітлення в той момент, коли хтось із мешканців входить до кімнати.

Система «розумний дім» від Arduino є комплектом обладнання для управління роботою різних пристроїв за допомогою мобільного телефону на базі ОС Android

У будь-якій системі «розумний дім» можна виділити такі складові:

  1. Сенсорна частина. Це набір пристроїв, основна частина яких представлена ​​всілякими датчиками, що дозволяють системі реєструвати події різного характеру. Прикладами можуть бути датчики температури і руху. Інші пристрої сенсорної частини служать передачі системі команд пользователя. Це виносні кнопки та пульти дистанційного керуванняіз приймачами.

    Одним з найбільш часто використовуваних елементів «розумного будинку» є датчик руху

  2. Виконавча частина. Це пристрої, якими система може керувати, реагуючи таким чином на ту чи іншу подію відповідно до заданого сценарієм користувача. Насамперед це реле, за допомогою яких контролер «розумного будинку» може подавати харчування на будь-який електричний прилад, тобто вмикати та вимикати його. Наприклад, по бавовні в долоні (система почує його за допомогою мікрофона) можна налаштувати включення реле, що подає харчування на вентилятор. Зверніть увагу: у цьому прикладі вентилятор може бути будь-яким. Але можна застосувати і прилад, спеціально випущений до роботи у складі тієї чи іншої системи. Наприклад, компанія Arduino випускає для своїх систем електромоторчики, за допомогою яких можна, скажімо, закривати або відкривати кватирку, а компанія Xiaomi ( китайський виробникподібних систем) - пристрої керування очищувачем повітря. Такий пристрій повністю контролюється системою, тобто вона може не тільки включити його, але й змінити налаштування.

    Електромоторчик є виконавчим пристроєм, який включається за сигналом контролера системи і надає руху підключеного до нього механізму

  3. Процесор. Може також називатися контролером. Це «мозок» системи, який координує та узгоджує роботу всіх її складових.

    Плата процесора (або контролера) управляє виконавчими пристроями на основі вбудованої програми та даних, отриманих від сенсорів

  4. Програмне забезпечення. Це набір інструкцій, якими керується процесор. У системах деяких виробників, у тому числі від Arduino, користувач може написати програму самостійно, в інших - використовуються готові рішення, в яких доступні лише типові сценарії.

Сучасні системи «розумний дім» поділяються на кілька різновидів:

  1. Оснащені власним контролером.
  2. Використовують в цій якості процесор комп'ютера користувача (планшета, смартфона).
  3. Обробляють інформацію за допомогою віддаленого сервера, що належить компанії-розробнику (хмарний сервіс).

Система може не тільки активувати той чи інший прилад, але й проінформувати користувача про подію шляхом відправлення повідомлення на телефон або якимось іншим способом. Таким чином, на неї можна покласти функції сигналізації, у тому числі протипожежної.

Сценарії можуть бути набагато складнішими, ніж ми описали в прикладах. Наприклад, можна навчити систему включати бойлер та перекладати постачання гарячою водоюна нього при відключенні централізованої подачі, якщо при цьому виявляється присутність когось із мешканців будинку (допомагають інфрачервоні, ультразвукові датчики, а також датчики руху).

Знайомимося з Arduino

Arduino - італійська компанія, що займається розробкою та виробництвом компонентів та програмного забезпечення для простих систем«Розумний дім», призначених для нефахівців. Примітним є те, що цей розробник зробив архітектуру створених ним систем повністю відкритою, що дало можливість стороннім виробникам розробляти нові та копіювати вже існуючі Arduino-сумісні пристрої та випускати ПЗ для них.

Набір Arduino Uno містить необхідні компоненти для реалізації пристроїв, описаних у книзі, що додається.

Такий підхід забезпечив високу популярність системам італійської компанії, але у нього є і недолік: через те, що за виробництво компонентів для Arduino-систем беруться, так би мовити, всі кому не ліньки, не завжди вдається з першого разу придбати якісний виріб. Найчастіше доводиться стикатися з проблемою сумісності компонентів від різних виробників.

Потенційному користувачеві слід знати, що з 2008 року є дві компанії, які випускають продукцію під торговою маркою Arduino. У першій, яка починала цей напрямок, офіційний сайт розміщено за адресою www.arduino.cc; у другій, що утворилася - за адресою www.arduino.org. Те, що було розроблено до розколу, на обох сайтах представлено однаково, а ось асортименти нової продукції вже відрізняється.

ПЗ для систем «розумний дім» Arduino має вигляд програмної оболонки (називається IDE), в якій можна писати та компілювати програми. Розповсюджується безкоштовно. Програми пишуться мовою C++.

Версії програми Arduino IDE, представлені на вказаних сайтах, теж сильно відрізняються, хоча мають однакові не лише назву, а й номери версій. Через це в них досить легко заплутатися. Відмінність полягає в тому, що кожне програмне забезпечення підтримує свої бібліотеки та плати.

«Залізо» системи складається з плати з мікроконтролером (процесорна плата) та встановлених на ній плат розширення, які зазвичай називають шилдами. Підключення шилд до процесорної плати дозволяє додавати до «розумного будинку» нові компоненти. Зібрана системаможе бути як повністю автономною, так і працює у зв'язці з комп'ютером через стандартний дротовий або бездротовий інтерфейс.


На процесорну плату можна встановлювати спеціальні розширення (шилди), які збільшують функціональність системи

Переваги системи Arduino

Цей апаратно-програмний комплекс приваблює користувача такими перевагами:

  • можливість автономної роботи, обумовлена ​​наявністю власного контролера;
  • широкі можливості з налаштування роботи системи (користувач сам пише програму, де можуть бути передбачені сценарії будь-якої складності);
  • простота процесу завантаження програми в контролер: програматор для цього не потрібний, достатньо мати USB-кабель (у мікроконтролері є прошивка завантажувача Bootloader);
  • доступна вартість компонентів, обумовлена ​​відсутністю того чи іншого виробника монопольних прав (архітектура є відкритою).

Якщо завантажувач Bootloader почав працювати зі збоями, або в придбаному мікроконтролері його не виявилося, користувач може прошити його самостійно. У програмній оболонці IDE для цієї мети передбачена підтримка низки найбільш доступних та популярних програматорів. Крім того, майже всі процесорні плати Arduino мають штирьовий роз'єм, що дозволяє здійснювати внутрішньосхемне програмування.

У програмі Arduino IDE, представленій на сайті arduino.cc, закладено можливість створення апаратно-програмних платформ, у той час як у версії програми на arduino.org така функція відсутня.

Які рішення пропонує Arduino

Оскільки виробництвом Arduino-сумісних датчиків та приладів займається безліч компаній, асортименти цієї продукції досить широкий. Ось що застосовується найчастіше:

  1. Сенсори, що відстежують кліматичні параметри:
  2. Сенсори, що дозволяють визначити просторове становище об'єкта, на якому вони закріплені:
  3. Сенсори, що дозволяють реєструвати присутність різних об'єктів:
  4. Аварійні сенсори:
  5. Інші пристрої, наприклад:
    • мікрофон;
    • годинник;
    • датчик відчинення дверей;
    • пульти дистанційного керування (радіочастотні та інфрачервоні) з приймачами;
    • дистанційні кнопки.

Деякі з цих пристроїв включені до складу базового набору Arduino Start, який ряд виробників має назву StarterKit.


Стартовий набір системи Arduino включає процесорну плату і кілька найбільш часто використовуваних пристроїв

Виконавча частина містить величезний набір пристроїв, наприклад:

  • електромотори;
  • реле та різні перемикачі;
  • димери (дозволяють плавно змінювати інтенсивність освітлення);
  • доводчики дверей;
  • вентилі та 3-ходові клапани з сервоприводами.

Якщо ви плануєте підключити через реле Arduino освітлення, то правильніше використовувати як світильники світлодіодні лампи. Лампи розжарювання при підключенні через реле швидко горять.

Відео: починаємо працювати з Arduino - керуємо світлодіодом через web-інтерфейс

Складання проекту на Arduino

Процес створення та налаштування «розумного будинку» Arduino покажемо на прикладі системи, в яку будуть закладені такі функції:

  • моніторинг температури на вулиці та в приміщенні;
  • відстеження стану вікна (відкрито/зачинено);
  • моніторинг погодних умов(ясно/дощ);
  • генерація звукового сигналу під час спрацювання датчика руху, якщо активована функція сигналізації.

Систему налаштуємо таким чином, щоб дані можна було переглядати за допомогою спеціального додатку, а також веб-браузера, тобто користувач зможе зробити це з будь-якого місця, де є доступ до Інтернету.

Використовувані скорочення:

  1. "GND" - заземлення.
  2. "VCC" - харчування.
  3. "PIR" - датчик руху.

Необхідні компоненти для виготовлення системи «розумного дому»

Для системи «розумного будинку» Arduino знадобиться таке:

  • мікропроцесорна плата Arduino;
  • модуль Ethernet ENC28J60;
  • два температурні датчики марки DS18B20;
  • мікрофон;
  • датчик дощу та снігу;
  • датчик руху;
  • перемикач язичковий;
  • реле;
  • резистор опором 4,7 кОм;
  • кабель "кручена пара";
  • кабель Ethernet.

Вартість всіх компонентів складає приблизно 90 доларів.


Для виготовлення системи з необхідними нам функціями знадобиться набір пристроїв вартістю близько 90 доларів

Складання «розумного будинку»: покрокова інструкція

Ось у якій послідовності потрібно діяти.

Підключення виконавчих та сенсорних пристроїв

Підключаємо всі компоненти згідно зі схемою.


Складання системи в основному зводиться до підключення виконавчих пристроїв до відповідних контактів процесорної плати

Розробка програмного коду

Користувач пише всю програму цілком в оболонці Arduino IDE, для чого остання оснащена текстовим редактором, менеджером проектів, компілятором, препроцесором та засобами для заливання програмного коду в мікропроцесор плати Arduino. Розроблено версії IDE для операційних систем Mac OS X, Windows та Linux. Мова програмування - С++ із деякими спрощеннями. Програми для Arduino прийнято називати скетчами (sketch) або начерками, програма IDE зберігає їх у файли з розширенням «.ino».

Функцію main(), яка в С++ є обов'язковою, оболонка IDE створює автоматично, прописуючи ряд стандартних дій. Користувач повинен написати функції setup() (виконується одноразово під час старту) та loop() (виконується в нескінченному циклі). Обидві ці функції Arduino є обов'язковими.

Заголовні файли стандартних бібліотек вставляти в програму не потрібно – IDE робить це автоматично. До бібліотек користувача це не відноситься - вони повинні бути вказані.

Додавання бібліотек до «Менеджер проекту» IDE здійснюється кілька незвичайним способом. У вигляді вихідних текстів, написаних С++, вони додаються в особливу папку в робочому каталозі IDE. Після цього назви цих бібліотек з'являться у меню IDE. Ті, що зазначить користувач, будуть внесені до списку компіляції.

У IDE передбачено мінімум налаштувань, а можливість налаштування компілятора відсутня зовсім. Таким чином, програміст-початківець застрахований від помилок.

Ось приклад найпростішої програми, що змушує кожні 2 секунди блимати підключений до 13-го виводу плати світлодіод:

void setup () (pinMode (13, OUTPUT); // Призначення 13 висновку Arduinoвиходом)

void loop () (digitalWrite (13, HIGH); // Включення 13 висновку, параметр виклику функції digitalWrite HIGH - ознака високого логічного рівня

delay (1000); // Цикл затримки на 1000 мс – 1 секунду

digitalWrite (13, LOW); // Вимкнення 13 висновку, параметр виклику LOW - ознака низького рівня логічного рівня

delay (1000); // Цикл затримки на 1 секунду)

Однак у заразперед користувачем далеко не завжди постає необхідність особисто писати програму: у мережі викладено безліч готових бібліотек та скетчів (загляньте сюди: http://arduino.ru/Reference). Є готова програма й у системи, аналізованої у цьому прикладі. Її потрібно завантажити, розпакувати та імпортувати в IDE. Текст програми має коментарі, що пояснюють принцип її роботи.


Всі програми на Arduino працюють за одним принципом: користувач надсилає запит процесору, а той завантажує необхідний код на екран комп'ютера чи смартфона

Коли користувач натискає кнопку «Refresh» (Оновлення) у браузері або встановленому на смартфоні додатку, мікроконтролер Arduino здійснює відсилання даних цього клієнта. З кожної зі сторінок, позначених як "/tempin", "/ tempout", "/rain", "/window", "/alarm", надходить програмний код, який і відображається на екрані.

Встановлення клієнтської програми на смартфон (для ОС Android)

Для отримання даних від системи «розумний дім» у мережі можна завантажити готову програму.

Ось що необхідно зробити власнику гаджета:


За допомогою цієї програми можна не тільки отримувати інформацію від системи «розумний дім», але й керувати нею – включати та відключати сигналізацію. Якщо вона увімкнена, то при спрацюванні датчика руху програмі буде надіслано повідомлення. Опитування системи Arduino щодо спрацьовування датчика руху додаток виконує з періодичністю раз на хвилину.

Активувавши іконку «Налаштування», можна відредагувати свою IP-адресу.

Налаштування браузера на роботу з «розумним будинком»

В адресному рядку браузера слід ввести XXX.XXX.XXX.XXX/all, де «XXX.XXX.XXX.XXX» - вашу IP-адресу. Після цього з'явиться можливість отримувати дані від системи та здійснювати керування нею.

Представлений тут програмний код дозволяє через браузер вмикати та вимикати світло, тоді як у додатку для Android-смартфону така функція не реалізована.

Робота з роутером


Налаштування облікового запису на noip.com

Цей етап не є обов'язковим, але він необхідний, якщо ви хочете надати адресу доменне ім'я. Для цього треба зареєструватися на сайті https://www.noip.com/, перейти в розділ «Add host» та ввести IP-адресу системи.


Після реєстрації на сайті noip.com доступ до системи можна отримувати не тільки за IP-адресою, а й за доменним ім'ям.

Створення проекту завершено, можна перевіряти працездатність системи.

Відео: розумний будинок на «Ардуїно»

Особливості роботи деяких апаратних засобів Arduino

Зважаючи на те, що Arduino-сумісні компоненти випускаються безліччю сторонніх компаній, якість продукції яких сама компанія Arduino ніяк не контролює, користувач з великою ймовірністю може придбати компонент, що працює не зовсім коректно.

Схожа ситуація склалася у сфері розробки персональних комп'ютерів. Свого часу компанія IBM зробила архітектуру своїх комп'ютерів відкритою, внаслідок чого IBM-сумісні комп'ютери та окремі компоненти почали випускати багато компаній. У результаті «персоналки» цього широко поширилися у всьому світі, проте, якість комплектуючих і рівень їх сумісності у часто виявлялися не так високому рівні. Протилежної тактики дотримувалася компанія Apple. Вона обмежила коло розробників, які мають доступ до архітектури, і таку ж політику провела у сфері розробки програмного забезпечення. В результаті комп'ютери Apple виявилися менш поширеними і дорожчими, зате за якістю вони на порядок перевершують IBM-сумісні пристрої, що працюють під Windows.

Щодо деяких комплектуючих для систем Arduinoкористувачі помітили таке:

  1. Датчик температури DHT11, що постачається з базовим набором(StarterKit), дає значну похибку 2-3 градуси. У приміщенні рекомендують застосовувати температурний датчик DHT22, що дає більш точні показання, а для встановлення на вулицю - DHT21, здатний працювати при негативних температурахта має захист від механічних пошкоджень.
  2. На деяких мікропроцесорних платах Arduino при замиканні підключених до них реле виходить із ладу COM-порт. Через це на мікроконтролер не вдається завантажити скетч: як тільки починається заливка, процесор перезавантажується. Реле при цьому натискає, COM-порт відключається і процес завантаження скетчу припиняється.
  3. Датчик закриття вікна/двері іноді подає сюрпризи у вигляді хибних спрацьовувань. З урахуванням цього скетч пишуть так, щоб система робила необхідна діятільки після отримання кількох сигналів поспіль.
  4. Для налаштування керування процесами за допомогою бавовни деякі користувачі через недосвідченість замість мікрофона замовляють детектор звуку з ручним налаштуванням порога. Для таких цілей цей компонент не підходить, тому що має занадто малий радіус дії: плескати доводиться не далі 10 см від детектора. Крім того, цей датчик передає сигнали імпульсами малої тривалості, так що за наявності великого скетчу, на обробку якого йде порівняно багато часу, мікроконтролер просто не встигає їх зафіксувати.
  5. Для пристрою проти пожежної сигналізаціїслід використовувати датчик диму, а чи не датчик вогню. Останній реєструє полум'я не далі ніж 30 см від себе.
  6. На випадок збою в роботі мікроконтролера або помилки в коді краще застосовувати нормально замкнуті реле з ручними вимикачами, що послідовно підключені.

Щоб уникнути покупки низькоякісних комплектуючих, досвідчені користувачі радять попередньо вивчати відгуки про них, опубліковані в Мережі. Недорогі датчики можна купувати у кількох варіантах, щоб особисто перевірити, який із них працює краще.

Можливо, система «розумний дім» від компанії Arduino є не найякіснішою, зате найширший вибіркомпонентів та його доступна вартість точно зробили її однією з найпопулярніших. Скориставшись нашими порадами, ви швидко навчитеся створювати проекти Arduinoавтоматизуючи різні домашні процеси.

У цьому проекті я покажу, як збудувати розумний будинок. Він може контролювати температуру зовні та всередині приміщення, фіксувати відкрите або закрите вікно, показувати, чи дощ, а також подавати тривожний сигнал, коли спрацює датчик руху PIR. Я створив програму на ОС Android для відображення всіх даних (дані можна також переглядати через браузер). Ви зможете бачити температуру у вашому будинку та іншу інформацію з будь-якої точки світу! Додаток перекладено англійською та польською мовами. Я створив цей пристрійоскільки хотів мати свій власний розумний будинок, яким можна керувати. Ви також зможете побудувати розумний будинок з рекомендованих нижче компонентів. Тоді приступимо.

Пояснення скорочень для початківців:

GND – земля
VCC - харчування
PIR – датчик руху

Крок 1: Компоненти

Вартість всіх компонентів не перевищує $90

  • Датчик температури DS18B20 x 2 штуки
  • Язичковий перемикач
  • Резистор 4.7 ком
  • Кабель, кручена пара
  • ethernet кабель
  • інструменти (паяльник, викрутка)

Крок 2: З'єднання

Схема з'єднань показана вище.

Крок 3: Програмний код

Спочатку вам необхідно завантажити, розархівувати та імпортувати цю бібліотеку в середу розробки Arduino IDE. Далі потрібно завантажити цю програмув Arduino. У коментарях пояснюється програмний код.

Крок 4: Принцип роботи

Якщо ви натиснете на кнопці refresh (оновити) у вашому додатку або браузері, то Arduino відправить дані в смартфон/браузер. Програма отримує програмний код з кожної сторінки (/tempin, /tempout, /rain, /window, /alarm) та відображає його на вашому смартфоні.

Крок 5: Програми для Android.

Для встановлення програми на вашому смартфоні під керуванням ОС Android вам необхідно виконати наступне (це видно на картинках вище):

1. Спочатку завантажте файл smartHome.apk
2. Надішліть файл apk на ваш телефон
3. Відкрийте файловий менеджер та розмістіть файл smarthHome.apk
4. Клацніть на ньому та натисніть встановити (вам необхідно встановити галочку, яка дозволяє встановлювати програми поза маркетом google play)
5. Після встановлення вам необхідно активувати програму

Крок 6: Налаштування програми

Я коротко поясню, як працює програма. Він відображає всі дані з вашого будинку. Ви можете натиснути на іконку налаштувань для редагування вашої IP адреси, та вмикати та вимикати тривожну сигналізацію. Коли ви включаєте сигналізацію, то програма отримує дані від активного датчика руху PIR. Якщо датчик визначає сторонній рух у будинку, він надсилає повідомлення. Програма отримує дані від датчика щохвилини. У полі IP введіть IP-адресу.

Крок 7: Браузер

Введіть в адресному рядку браузера вашу ip адресу / all. При цьому ви побачите всі дані та зможете вмикати та вимикати світло.

Для цих функцій ви також можете використовувати програму на Android.

Крок 8: Переадресація портів

Вам потрібно відкрити порт на вашому роутері. Увійдіть в конфігурацію роутера, встановіть адресу arduino ip і відкрийте порт 80. Процедура показана на зображенні вище.

Комплексні системи керування інженерними комунікаціямижитла, відомі під назвою «Розумний будинок» набирають все більшої популярності. Широкому впровадженню цих систем перешкоджає достатньо висока вартість комплектуючихелементів та монтажних робіт. Розумний будинок на базі Arduino є рішенням цілком доступним для всіх, хто хоч трохи розбирається в електроніці.

Що таке Arduino

Ардуїно - це бренд, під яким випускаються апаратні та програмні засобидля самостійної побудови систем автоматики та телеуправління.

По суті це модульний конструктор, який має широкі можливості. Апаратні засоби Ардуїно є великий асортиментдрукованих плат, на яких організовано різні датчики, виконавчі пристрої та плати розширення. Ядро системи є плати з програмованими мікроконтролерамирізного рівня складності від Arduino Pro Mini до Arduino Mega. Плати розширення дозволяють використовувати велика кількістьзовнішні пристрої.

На невеликий друкованій платівстановлений мікроконтролер, трохи дискретних елементів, кварц і різні видироз'ємів, у тому числі і вертикальні штирі, за допомогою яких збираються конструкції-етажерки з додаванням плат розширення. Як мікроконтролери використовуються чіпи сімейства Atmega. Тип контролера визначає функціональні можливостіплати, що залежать від кількості входів та виходів.

Так широко розповсюджений модульArduino Unoз мікроконтролеромAtmega328 має такі характеристики:

  • Цифрові входи/виходи – 14
  • З них 6 – ШІМ
  • Аналогові входи – 6
  • Пам'ять – 32 Кб
  • Харчування – 7-12 В
  • Ціна – 950 рублів

Цифрові контактиможна запрограмувати виконання конкретної функції. Це може бути вхід чи вихід. Ці входи/виходи можуть працювати з пристроями, для яких достатньо двох рівнів. Це логічна одиниця або рівень, близький до напруги живлення і логічний низький рівень, що відповідає нулю. На цифрові входи можна підключати дворівневі датчики. До них належить пара магніт-геркон. Цей датчик реагує на відчинення дверей та вікон. За таким принципом працює багато датчиків охоронної та пожежної сигналізації.

Цифрові виходи можуть керувати роботою електромагнітних реле, які в свою чергу включають і вимикають розетки, до яких підключені різні побутові прилади. Розумний від Arduino обійдеться значно дешевше ніж готовий промисловий комплект.

Аналогові входи через аналогово-цифрові перетворювачі передають на контролер інформацію про стан датчиків температури, освітленості та деяких інших приладів. Порівнюючи показання датчиків з командами, що зберігаються в пам'яті, центральний блок системи може керувати пристроями, де потрібна плавна зміна потужності. Шість виходів, пов'язаних із широтно-імпульсним модулятором, дозволяють плавно керувати потужністю навантаження. Наприклад, регулювати яскравість світильника, регулювати температуру обігрівача або керувати частотою обертання електродвигуна.

Самої потужною та багатофункціональною платоюцієї лінійки є Arduino Mega. На друкованій платі змонтовано контролерAT mega 2560 , дискретні елементи, порт USB-конектор для підключення живлення. Плата має 54 універсальні контакти, які можна запрограмувати на виконання функцій входу/виходу. 14 їх можуть керувати аналоговими пристроями за допомогою широтно-імпульсної модуляції. 16 аналогових входів призначено для підключення будь-яких аналогових приладів.

Плата контролера Arduino Megaкоштує близько 1 500 рублів. Програмувати його найпростіше за допомогою персонального комп'ютера через порт USB.

Периферійні модулі для Ардуїно

Плата контролера є ядром системи, але підключати до неї якісь пристрої не можна. Виходи мають невелику здатність навантаження і обмежений струм. Для організації системи управління побутовою технікою будуть потрібні зовнішні силові модулі, пристрої зв'язку та інші пристрої. Це не є проблемою, оскільки для контролерів Arduino розроблено велику кількість периферійних модулів.

Ось тільки деякі з них:

  • Газоаналізатор – MQ-2
  • Датчик освітленості – 2CH-Light-2
  • Датчик температури зовнішній – DS18B20-PL
  • Датчик температури та вологості кімнатний – DHT-11
  • Драйвери електродвигуна - L298N, L9110
  • Релейні модулі – 1ch5V, 4ch5V
  • Модуль дистанційного керування IC2262/2272

Датчик, що визначає витік газу в приміщенні, реагує на пропан та бутан, які є складовими побутового газу. Модуль має регулювання чутливості та аналоговий/цифровий виходи. Датчик освітленості може бути частиною автоматизованої системиуправління світлом. Він складається з двох незалежних каналів з індивідуальним регулюванням чутливості. Вуличний термодатчик призначений для роботи за температури від – 55 до +125 градусів. Кімнатний датчик температури та вологості призначений. Діапазон зміни температури від 0 до +55 0 С та вологості від 20 до 90%.

Оскільки напруга живлення модулів Ардуїно лежить в діапазоні від 7 до 12 вольт, то для організації охоронної або пожежної сигналізації можна використовувати будь-які стандартні датчики, які мають такі ж робочі рівні.

Драйвери електродвигунівдозволяють керувати однофазними, двофазними, чотирифазними та кроковими двигунами. За допомогою таких пристроїв можна відкривати та закривати жалюзі або штори. Підключені до драйверів сервоприводи дозволяють регулювати потік теплоносія у радіаторах опалення. Незамінними у системі «Розумний дім» є релейні ключі. Керовані потенціалом логічної одиниці +5 вольт, реле допускають комутацію навантажень у ланцюгах змінного струмудо 10 ампер при напрузі до 250 вольт.

З їх допомогою можна вмикати та вимикати електричні розетки, електронасоси та інші системи.

Модуль дистанційного керування складається з пульта та приймального пристрою. Пульт обладнаний чотирма кнопками та забезпечує передачу команд на приймальний блок на відстані до 100 метрів. Всі периферійні модулі мають однакову напругу живлення і сумісні з будь-якими мікроконтролерами Arduino.

Організація системи «Розумний дім»

Без певних навичок, знання принципових схем та основ електроніки за систему «Розумний дім» повному обсязікраще не братися.

Програмування мікроконтролерів лінійки Ардуїноздійснюється мовою С/С++.

Для початку можна написати найпростіші програми, які можуть включати та вимикати світлодіод або керувати роботою мікроелектродвигуна. Прикладів таких програм дуже багато. Вони використовують прості оператори виду: якщо, поки, те й інші. Вони дозволяють писати програми навіть школярам. Коли перші програми будуть правильно виконуватися, можна спробувати зібрати складніші пристрої, де будуть задіяні ШІМ виходи для плавного керування світлом.

Для того, щоб зробити «Розумний дім» на Ардуїно своїми руками необхідно скласти технічний проект, де буде вказано кількість датчиків та виконавчих пристроїв для кожного приміщення. Можна почати з однієї кімнати, де буде реалізовано декілька простих функцій. Деякі будуть виконуватися за сигналами від зовнішніх датчиків, а деякі за сигналами таймера. Коли вранці людина стає на роботу контролер Ардуїно, за сигналом таймера включить електричний чайникабо кавоварку. Якщо на вулиці темно, що зафіксує зовнішній датчику кімнаті плавно загориться світильник. Комфортну температурув приміщенні також можна задати як для сну, так і для прокидання.

Для невеликої кількості функцій підійде мікроконтролер Arduino Uno та набір периферійних модулів.

Для керування побутовими приладамипотрібні релейні ключі, які включатимуть та вимикатимуть електричні розетки. Для керування світлом буде потрібно детектор руху. Якщо розумна системамонтується на кухні необхідно передбачити автоматичне включення витяжки, датчик витоку побутового газу та датчик протікання води. Як елемент пожежної сигналізації у приміщенні має бути встановлений димовий датчик.

Висновок

Контролер Ардуїно дозволить виконати проект розумного будинку і вкластися в порівняно невелику суму. Якщо підрахувати всі витрати на обладнання трикімнатної квартирисума навряд чи перевищить 30-40 тисяч рублів. Якщо скоротити кількість функцій, бюджет виявиться ще скромнішим.