Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал:
https://er.chdtu.edu.ua/handle/ChSTU/6424| Назва: | Мережевий моніторинг систем “Smart Home” на основі Arduino |
| Автори: | Зубко, Ігор Анатолійович Куліков, Владислав Валерійович |
| Дата публікації: | чер-2023 |
| Короткий огляд (реферат): | У першому розділі проведено огляд існуючих систем “Smart Home”, наведено їх основні характеристики та можливості. Також розглянуті їх сучасні тенденції розвитку. У другому розділі розглянуті основні особливості та складові компоненти системи моніторингу даних з датчиків на Arduino. Наведені основні особливості системи збору даних на Arduino, а також визначені вимоги до її функціональних можливостей. Обрано обчислювальні компоненти, компоненти бездротового зв’язку, виведення та живлення. Запропоновано структурну схему пристрою. У третьому розділі запропоновано алгоритм роботи системи, розглянуті основні особливості програмування компонентів системи моніторингу. Розглянуті особливості програмного використання модулів BME280 та ESP8266. Наведено опис прикладу програмного забезпечення для системи моніторингу. Наведено результати тестування. |
| URI (Уніфікований ідентифікатор ресурсу): | https://er.chdtu.edu.ua/handle/ChSTU/6424 |
| Розташовується у зібраннях: | 123 Комп’ютерна інженерія (Спеціалізовані комп’ютерні системи) |
Файли цього матеріалу:
| Файл | Опис | Розмір | Формат | |
|---|---|---|---|---|
| Б_123_2023_Куліков+.pdf Restricted Access | 1.99 MB | Adobe PDF | Переглянути/Відкрити Запит копії |
Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ
КАФЕДРА РОБОТОТЕХНІКИ ТА СПЕЦІАЛІЗОВАНИХ КОМП’ЮТЕРНИХ СИСТЕМ
ПОЯСНЮВАЛЬНА ЗАПИСКА
до кваліфікаційної роботи
освітнього ступеня «бакалавр»
на тему: Мережевий моніторинг систем “Smart Home” на основі
Arduino
Виконав: здобувача вищої освіти 4 курсу,
групи СКС-1907, спеціальності
123 «Комп'ютерна інженерія»
Куліков В.В.
(прізвище та ініціали)
Керівник Зубко І.А.
(прізвище та ініціали)
Рецензент
(прізвище та ініціали)
Черкаси 2023
1
ЗМІСТ
СПИСОК СКОРОЧЕНЬ ТА УМОВНИХ ПОЗНАЧЕНЬ ............................................. 3
ВСТУП .............................................................................................................................. 4
1. ОГЛЯД ІСНУЮЧИХ АНАЛОГІВ І РІШЕНЬ .......................................................... 5
1.1 Історія технології ................................................................................................... 5
1.2 Принцип роботи ..................................................................................................... 6
1.3 Функції .................................................................................................................... 7
1.4 Існуючі системи розумного дому ....................................................................... 12
1.5 Протоколи, стандарти та технології ................................................................... 18
1.6 Переваги і недоліки .............................................................................................. 26
2. ПОБУДОВА СИСТЕМИ МОНІТОРИНГУ ............................................................ 28
2.1 Аналіз і вибір мікроконтролера .......................................................................... 28
2.2 Опис Arduino Leonardo ........................................................................................ 31
2.3 Можливості системи керування ......................................................................... 33
2.4 Опис алгоритму роботи системи ........................................................................ 34
2.5 Вибір і встановлення датчиків ............................................................................ 35
2.6 Об'єднання компонентів ...................................................................................... 44
3. АЛГОРИТМ РОБОТИ СИСТЕМИ МОНІТОРИНГУ ........................................... 46
3.1 Алгоритм роботи системи, для виведення метеоданих в бот.......................... 46
3.2 Побудова пристрою ............................................................................................. 47
3.3 Особливості виконання програми ...................................................................... 48
3.4 Результати тестування ......................................................................................... 54
ВИСНОВКИ ................................................................................................................... 58
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ..................................................................... 59
ЧДТУ 231940.001 ПЗ
Змн. Лист № докум. Підпис Дата
Розроб. Куліков Літ. Лист Листів
Мережевий моніторинг систем
Перевір. Зубко У 2 60
“Smart Home” на основі Arduino
Реценз.
Пояснювальна записка
Н. Контр. 2 ЧДТУ, СКС-1907
Затверд. Лукашенко
СПИСОК СКОРОЧЕНЬ ТА УМОВНИХ ПОЗНАЧЕНЬ
Smart Home - це будинок з мікроконтролерною системою, яка може
працювати з піключеними для неї пристроями.
ІТ - Інформаційні технології
ОС - Операційна система
ПЗ - Програмне забезпечення
ПК - Персональний комп’ютер
Віджет - Графічний засіб відображення інформації на екрані персонального
комп’ютеру чи смартфону
Гаджет - Обчислювальний пристрій. Частіше за все смартфон чи планшет
Лист
3 ЧДТУ 231940.001 ПЗ 3
Змн. Лист № докум. Підпис Дата
ВСТУП
Нові технології дозволяють в будь-який будинок або квартиру впровадити
комплекс підсистем, відповідальних за виконання різних функцій. Залежно від
типу будівлі, кількість і складність підсистем може змінюватися. Ці системи
складаються з множини датчиків, до даних, які поступають з датчиків, потрібно
застосовувати постійний моніторинг.
Моніторинг - це система постійного спостереження, збирання, оброблення,
передавання, збереження та аналізу інформації про стан навколишнього
середовища, для його аналізу і прийняття рішень.
Автоматичний контроль дозволяє отримувати і обробляти інформацію про
стан контрольованої системи. На основі моніторингу можна виявити: появу деталі
з розмірами, що виходять за допустимі межі, коротке замикання, вихід температури
за межі встановленого діапазону, аварію обладнання та інше.
Робота присвячена питанням створення системи, яка б дозволила виконувати
моніторинг контрольованого комплексу підсистем, та відображати її, за допомогою
сучасних методів представлення інформації, у вигляді зручному для користувача.
Лист
4 ЧДТУ 231940.001 ПЗ 4
Змн. Лист № докум. Підпис Дата
1. ОГЛЯД ІСНУЮЧИХ АНАЛОГІВ І РІШЕНЬ
Розумний будинок - система домашніх пристроїв, здатних виконувати дії і
вирішувати певні повсякденні завдання без участі людини. Побутові прилади в
"розумному будинку" об'єднуються в універсальну домашню мережу, яка може
мати можливість виходу в мережі загального користування. Це об'єднання безлічі
систем різних виробників в єдиний керований комплекс і є головною особливістю
такого будинку. Сигнали від датчиків, встановлених в кожному приміщенні,
надходять до центрального комп'ютера, який обробляє отримані сигнали і в
залежності від поставленого завдання генерує керуючі команди для пристроїв, які
слід задіяти.
За початковим задумом «розумний будинок» повинен бути готовим до змін,
тобто будівля повинна легко пристосовуватися до потреб і потреб людини.
Притаманна "розумному дому" також можливість змінювати конфігурацію систем,
нарощуючи або видозмінюючи її. Природно, технічні та інженерні системи такого
будинку повинні бути спроектовані так, щоб їх можна було досить просто
адаптувати до можливих змін в майбутньому. Крім цього, всі системи будинку
повинні мати можливість інтеграції один з одним при мінімумі витрат. Їх
обслуговування повинно бути організовано також оптимальним чином.
1.1 Історія технології
Ідея розумного будинку була у свідомості людей давно. Цей "божевільний"
винахід неодноразово проходить сторінками ХХ століття. Письменники наукової
фантастики описують місце, де все в будинку знаходиться на одній машині і
працює лише за допомогою роботів. На жаль, технологічний прогрес не досяг мети
створення такого місця до сьогодні. Коли виникла ідея розумного будинку?
Перший крок був у 1960-х роках, коли брати Спіри винайшли перший пристрій,
здатний регулювати оптичну силу. На той час історія розумного будинку мало хто
повірив, але саме цей винахід породив ідею створення розумного будинку.
Лист
5 ЧДТУ 231940.001 ПЗ 5
Змн. Лист № докум. Підпис Дата
Через десятиліття люди винайшли метод передачі інформації за допомогою
одного кабелю для управління багатьма пристроями. Лише в 1970-х роках
технологія почала проходити сім миль, щоб прогресувати. Це коштує чималих
грошей, і лише багаті можуть дозволити собі розкіш автоматичного житла.
Наприкінці ХХ століття поява транзисторів, цифрових контролерів,
мікросхем та інших програмованих пристроїв ознаменувало прихід цієї ери. Вони
швидко замінили застарілі електричні моделі. Після цього з’явився перший проект
Розумного будинку.
Перший з них був реалізований в Англії. У цьому розумному будинку були
надані такі функції:
• регулювання температури приміщенні;
• алгоритм безпеки;
• сигналізація;
• регулювання гаражних воріт.
У 1990-х роках технологічний розвиток вийшов на новий етап. Тоді було
створено спеціальну асоціацію для електронної промисловості. Їхня робота полягає
лише у створенні будинку, в якому всі процеси будуть повністю автоматизовані. За
ними слідують різні датчики, сенсорні екрани, розрахунки та логічні механізми, які
згодом стали незамінною частиною розумних будинків.
У 1999 р. Була розроблена програма, яка дозволяє об'єднати роботу та
налаштування всіх побутових приладів в одну систему та контролювати за
допомогою комп'ютера.
1.2 Принцип роботи
Принцип роботи розумного будинку полягає у керуванні комп’ютером, який
збирає та обробляє сигнали від різних датчиків, розташованих у будинку або на
відкритому повітрі. Для передачі сигналів використовуються кабелі або радіохвилі.
Лист
ЧДТУ 231940.001 ПЗ
6
Змн. Лист № докум. Підпис Дата
Датчики (рух, вологість, тиск, інтенсивність світла, повінь, дим, чадний газ,
температура тощо) реєструють внутрішні та зовнішні зміни та передають їх у
центральний блок.
Існують також системи без центрального блоку, де кожен елемент сам
визначає, які сигнали від детектора пов'язані з ним. Будь-які зміни, що
відбуваються в одній підсистемі, будуть негайно враховані в іншій підсистемі. Усі
підсистеми беруть це до уваги і негайно реагують на зміни.
1.3 Функції
Система управління являє собою набір апаратних і програмних засобів, її
основною метою є підвищення ефективності, тобто зменшення можливих витрат
користувача (електроенергія, тепло), а також забезпечення інших функцій, таких як
державний контроль. Розглянемо всі функції докладніше.
1.3.1. Розумне водопостачання
Поряд з іншими можливостями в Розумному будинку впроваджена
автоматизація систем водопостачання та каналізації. Це вирішує проблему захисту
квартир від комунальних аварій. Крім того, ця функція дозволяє жити максимально
комфортно і не витрачати час на побутові негаразди. Автоматизація води
перетворить ваш будинок на ідеальне місце для життя. Не потрібно турбуватися
про протоку, перебуваючи далеко від дому. Автоматичне включення води,
наповнення ванни водою при необхідній температурі у встановлений час - такі
дрібниці роблять повсякденне життя набагато зручнішим. Автоматизація
дренажної системи пропонує величезну кількість можливостей.
Контроль якості води. Датчик регулярно вимірює чистоту води, а фільтр
очищення відповідає за очищення води.
Контроль проливу. Коли від датчика надходить сигнал витоку, система
перекриє подачу води.
Лист
ЧДТУ 231940.001 ПЗ
7
Змн. Лист № докум. Підпис Дата
1.3.2. Опалення, вентиляція і кондиціонування.
Домашній комфорт і здоров’я всіх членів сім’ї залежать від нормальної
роботи систем опалення, вентиляції та кондиціонування. Більше того, енергетичні
витрати цих систем можуть бути найвищими, і їх автоматизація заощадить ваші
гроші. Система автоматизації може значно спростити процес клімат-контролю,
полегшити розуміння та реалізувати найкращий режим управління обладнанням,
який матиме величезний вплив на ваш будинок. А автоматична система вентиляції
буде підтримувати гарну атмосферу. Сонячне світло можна використовувати не
тільки для додаткового освітлення, але і для обігріву будинку. Система управління
може використовувати енергію сонця для обігріву кожної кімнати в будинку, тим
самим керуючи зовнішніми жалюзі. Під час перегляду фільмів, вечірок чи інших
ситуацій, коли у вашому домі багато людей, система може регулювати відповідний
термостат, щоб максимізувати комфорт людей. Коли ви лягаєте спати, система
може знизити температуру в більшості кімнат, але до того часу, коли ви
прокинетесь, бажана температура була встановлена. Це зменшить споживання
енергії, коли ви не знаходитесь у відпустці. Керуючи вентиляцією ванної кімнати
та басейну, система управління може контролювати вологість приміщення та
вимикати вентиляцію після зниження параметрів до прийнятного рівня.
Керуючи кліматичною системою, ви також можете підключити її до системи
безпеки, якщо спрацьовує датчик диму, система вентиляції буде вимкнена, а
повітряний клапан буде закритий для запобігання пожежі.
1.3.3. Освітлення
Освітлення впливає майже на всі аспекти життя в вашому будинку. Це
впливає на зручність, комфорт, енергозбереження та безпеку. Тому автоматизація
системи освітлення вашої квартири є розумним рішенням.
Освітлення слід контролювати за допомогою автоматизованої системи, щоб
освітлювати будинок та територію навколо будинку, а також безпечно дістатись до
ванної кімнати посеред ночі або піднятися сходами з підземного гаража. Ви можете
використовувати автоматизовану систему для вимкнення світла в певний час доби,
Лист
ЧДТУ 231940.001 ПЗ
8
Змн. Лист № докум. Підпис Дата
щоб заощадити на оплаті комунальних послуг. Якщо ви забудете вимкнути світло
в деяких кімнатах, система автоматично вимкне світло, коли ви активуєте сцену "Я
на роботі".
1.3.4. Клімат-контроль
На сьогоднішній день майже 40% квартир використовують кондиціонер,
системи теплих підлог та багато інших функцій для створення комфорту та
належної температури в приміщенні. Однак пристрій зазвичай працює безперервно
і споживає найбільше енергії на пристрої, тому ви побачите багато комунальних
платежів. Для належного розподілу всіх функцій між системами вентиляції та
опалення необхідно організувати окрему систему управління для цих установ. Ви
можете спробувати самоконтроль та автоматичний клімат-контроль в системі
розумного будинку.
Підключення до системи клімат-контролю забезпечить індивідуальну
температуру для кожної окремої кімнати в будинку. Злагоджена робота допоможе
підтримувати середню температуру в приміщенні, одночасно підтримуючи
температуру в технічному кабінеті, гаражі чи підвалі.
Важливою «майстерністю» клімат-контролю є те, що він може
підлаштуватися під власника будинку та їх перебування в кімнаті. За відсутності
господаря температура повітря в приміщенні автоматично знижуватиметься, а коли
з’явиться власник, вона знову підніметься до потрібної їм температури.
Аналогічним чином, якщо ви встановите ще деякі параметри, ви можете
встановити перемикання таких температур всього за кілька хвилин до прибуття
господарів будинку.
Система такого клімат-контролю працює багатофункціонально та
багатозадачно завдяки управлінню інтелектуальними технологіями. Ви можете
одночасно підвищувати і знижувати температуру, вмикати кондиціонер, вимикати
опалення в різних кімнатах.
Лист
ЧДТУ 231940.001 ПЗ
9
Змн. Лист № докум. Підпис Дата
Сьогодні клімат-контроль дозволяє контролювати не тільки вологість
повітря, кімнатну температуру, але і визначати наявність протягів і відкритих вікон
в будинку.
Система також піклується про іонізацію повітря в будинку. Чисте і свіже
повітря в будинку - основна функція кондиціонування. Система здатна наситити
повітря корисними мікрочастинками для благополуччя своїх власників.
1.3.5. Безпека
Як правило, автоматизовані системи виконують приблизно одні й ті ж
функції. Сцени "Я вдома", "канікули", "на добраніч" - виконуються не тільки
інженерною системою будинку, але й елементами системи безпеки, які можуть
активувати світло та музику для імітації поява вогнів. Однак, на відміну від дуже
передбачуваного методу таймера, що імітує існування, система управління фіксує
поведінку останніх кількох тижнів, яка виконується в будинку, коли хтось
перебуває вдома, а потім відтворюється. Це робить будинок таким, ніби хтось
насправді всередині.
Система безпеки може бути повністю автономною. Але дві системи повинні
працювати разом. Наприклад, система безпеки може виявити, коли хтось заходить
у ваш будинок і подавати сигнал тривоги. У цьому випадку автоматизована система
може вмикати світло та сигналізацію, а також відображати зображення, зняті
камерами спостереження, на домашніх панелях та мобільних телефонах.
Крім того, знання стану вашої домашньої системи може зробити вас більш
безтурботним, особливо коли ви відсутні. Користувацький інтерфейс системи
домашньої автоматизації, що працює на планшеті або мобільному телефоні, може
показати вам, які двері та вікна відчинені, в якій кімнаті перебувають діти, та багато
іншої корисної інформації.
Якщо щось трапиться раптово, поки ви не будете вдома, автоматизована
система надішле вам попередження, і ви зможете побачити стан будинку. Система
також покаже вам журнали подій, що сталися навколо будинку, коли ви були поза
межами. Ви зможете зрозуміти, хто входив у двері, хто дзвонив, які кімнати ви
Лист
ЧДТУ 231940.001 ПЗ
10
Змн. Лист № докум. Підпис Дата
бачили та коли траплялися умови дорожнього руху, і в цей час ви можете
переглядати зображення з камер відеоспостереження. Існування цієї системи
значно зменшує ризик виникнення будь-якої поганої ситуації, оскільки ваші діти,
ваші співробітники знають, що існує система, яка не може досягти згоди, і
вимкнути її дуже важко. Крім того, навіть коли ви не вдома, ви можете закрити
жалюзі, двері, закрити систему безпеки і навіть вимкнути телевізор, який ваша
дитина дивиться тривалий час.
Створюючи систему безпеки зверніть увагу на те, як система працює з
Інтернетом. Сповіщення надсилаються на ваш телефон через глобальну мережу, і
дані часто передаються в різні центри за одним і тим же каналом. Обов’язково
надайте альтернативний спосіб надсилання сповіщень у системі. Зловмисник може
закрити ваш будинок або скористатися простим обладнанням, щоб заблокувати
стільниковий модем. Отже, система повинна мати можливість надсилати вам SMS-
повідомлення та отримувати команди управління через SMS. Крім того,
особливістю стільникових мереж є те, що найбільшим пріоритетом є голосові
дзвінки, а потім передача повідомлень та даних. Тому найкраще, щоб ваша система
безпеки могла за допомогою голосового каналу дзвонити вам в екстрених
випадках.
Система безпеки завжди повинна мати окремий контролер, який контролює
всі системи та надсилає вам спеціальні повідомлення про аварійні ситуації. Він
повинен мати окреме джерело безперебійного живлення. Контролер не повинен
встановлювати зв’язок з локальною мережею будинку. Він повинен взаємодіяти
лише на рівні однієї фізичної лінії зв'язку (дискретний сигнал), що заважатиме
зловмисникам перепрограмувати контролер безпеки.
Щоб запобігти блокуванню стільникових сигналів спеціальними
глушниками, встановіть антену стільникового модему подалі від свого будинку. Це
значно покращить надійність системи, і голосові дзвінки завжди можна робити в
надзвичайних ситуаціях.
Лист
ЧДТУ 231940.001 ПЗ
11
Змн. Лист № докум. Підпис Дата
Крім того слід налаштувати систему безпеки так, щоб вона надсилала вам
повідомлення при відключенні живлення, підключенні фіксованої лінії та кабелю
провайдера, оскільки це може бути підготовкою до ризиків безпеки
1.4 Існуючі системи розумного дому
Сучасний ринок пропонує великий вибір технічного обладнання для
домашньої автоматизації, тому порівняння систем «розумного будинку» від різних
виробників буде корисним для багатьох людей. З цією метою ми пропонуємо
переглянути та оцінити їх найважливіші характеристики. Ця інформація допоможе
вирішити проблему якомога розумніше і зробити найкращий вибір для одного
запиту.
1.4.1 Xiaomi
Виробник: Китай. Відсутність українського інтерфейсу за замовчуванням, лише
англійської та китайської, що ускладнює труднощі в процесі встановлення та
налаштування. Розумний будинок від Xiaomi належить до бюджетного класу
обладнання, що дозволяє зробити управління різними пристроями та побутовою
технікою в будинку максимально простим і зручним.
Рисунок 1 – система Xiaomi
Лист
ЧДТУ 231940.001 ПЗ
12
Змн. Лист № докум. Підпис Дата
Переваги:
• Можливість масштабування;
• наявність власної камери відеоспостереження;
• Бездротовий протокол ZigBee; зручне управління через смартфон через
Wi-Fi;
• наявність настроюваних скриптів; компактність і стильний дизайн;
• низька вартість базового набору (лише $ 90).
• повна автономність пристроїв;
Недоліки:
• дуже мала дальність сигналу (до 10 м);
• скромний набір датчиків і виконавчих механізмів в базовій комплектації;
• відсутність резервного живлення концентратора.
Таким чином, комплект Xiaomi є чудовою початковою платформою для
підключення інших датчиків та пристроїв, включаючи сторонніх виробників.
Його елементи працюють як самостійно, так і в цілому. З їх допомогою можна
створити дуже функціональну систему управління житловою площею,
включаючи охорону.
Ця система, враховуючи свою вартість, підходить для ознайомлення з
системою розумного будинку. Якщо ви все ще не вирішили, який розумний
будинок найкраще використовувати для своєї кімнати, рекомендується
звернутися за кваліфікованою допомогою до консультантів нашої компанії. Ми
допоможемо вам не тільки зробити правильний вибір, але і зрозуміти основні
функції таких цифрових пристроїв.
1.4.2 Fibaro
Виробник: Польща (розробка та реєстрація бренду - США). Важко знайти
україномовний інтерфейс. Розумний будинок Fibaro - це професійне обладнання
для домашньої автоматизації та безпеки з найширшими функціональними
можливостями. Однак, на відміну від багатьох подібних систем, її потрібно
встановлювати та налаштовувати досвідченими професіоналами
Лист
ЧДТУ 231940.001 ПЗ
13
Змн. Лист № докум. Підпис Дата
Рисунок 2 – система Fibaro
Переваги:
• відмінне наповнення системи різними датчиками та приладами;
• наявність камери відеоспостереження;
• величезний вибір сценаріїв для користувача;
• відправка повідомлень на кілька телефонів одночасно;
• робота на основі протоколу Z-Wave, що дозволяє успішно взаємодіяти з
іншим обладнанням;
• датчик витрати оснащений сиреною;
• розумна розетка відображає рівень енергоспоживання підключених
пристроїв, а також відключається при стрибках напруги;
• короткий діапазон системного сигналу збільшується за рахунок
можливості кожного з його елементів бути повторювачем сигналу;
голосове управління через Google, але лише англійською мовою.
Недоліки:
висока вартість обладнання (від 600$);
тільки професійний монтаж і налаштування;
обов'язкове підключення центрального контролера Fibaro Home Center до
Інтернету через LAN-кабель;
Лист
ЧДТУ 231940.001 ПЗ
14
Змн. Лист № докум. Підпис Дата
неможливість функціонування без центрального хаба;
відсутність резервного живлення хаба;
обмежена дальність сигналу;
затримка Push-повідомлень;
необхідність в обов'язковій установці програмного забезпечення на ПК, а
також урізаний мобільний додаток.
У порівнянні з розумними домашніми системами інших виробників, пристрої
Fibaro найкраще оснащені різними датчиками для контролю стану будинку та
забезпечення автоматизації управління побутовою технікою. Однак установка
таких складних систем під силу лише професіоналам.
1.4.3 BroadLink
Виробник: Китай. Значення за замовчуванням не має українського
інтерфейсу. Розумний дім BroadLink - це набір найдосконаліших цифрових
пристроїв, призначених для ефективного управління побутовими приладами та
освітленням, енергетикою, безпекою та іншими системами вдома.
Рисунок 3 – система BroadLink
Переваги:
швидко встановлюється, підключається і настроюється;
Лист
ЧДТУ 231940.001 ПЗ
15
Змн. Лист № докум. Підпис Дата
має широкий асортимент датчиків (вологості, температури, освітлення,
шуму, забруднення повітря);
можна легко додавати і прибирати різні пристрої;
функціонує без центрального хаба (автономна робота датчиків);
бездротове взаємодія пристроїв між собою;
є своя камера відеоспостереження; контролюється по Wi-Fi через Інтернет з
будь-якої точки планети;
демократична вартість обладнання (від 200$).
Недоліки:
невелика дальність дії сигналу( до 50 м);
відсутність резервного живлення хаба; пульт працює тільки на прийом
сигналів.
1.4.4 Ajax
Виробник: Україна, отже, налаштування за замовчуванням підтримують
український та російський інтерфейси. Ця система автоматизації будинку може
виконати два важливі завдання: забезпечити комфорт та зручність у житті
приміщення управління; забезпечити безпеку будинку, контролювати межу об'єкта
крадіжки, а також електричні, пожежні, газові та інші загрози, які можуть будинок.
Обладнання для розумного дому Ajax працює на власному ювелірному шифруванні
та двосторонньому двосторонньому радіообладнанні. За рахунок резервного блоку
живлення воно має повністю автономне головне джерело живлення, а все його
обладнання має стильний дизайн.
Лист
ЧДТУ 231940.001 ПЗ
16
Змн. Лист № докум. Підпис Дата
Рисунок 4 – система Ajax
Переваги:
• проста установка; канал
• бездротового зв'язку між елементами системи;
• великий діапазон сигналу (до 2000 м);
• наявність захисту від зняття будь-якого з датчиків (бампера);
• можливий доступ інших користувачів (повний або частковий); автономна
робота концентратора від акумулятора (до 16 годин);
• З'єднання Wi-Fi та GSM; різноманітність способів інформування
користувача (дзвінок, SMS, push-повідомлення);
• розумна розетка відображає витрати електроенергії (з урахуванням
підключених пристроїв), автоматично відключається при перепадах
напруги;
• установка за допомогою QR-коду та управління через смартфон (iOS,
Android); підключення до 100 пристроїв;
• наявність кнопки тривоги на пульті дистанційного керування (брелок);
невисока вартість набору (від 200 доларів).
Недоліки:
• робота лише з центральним контролером (концентратором), тобто
відсутність автономності датчика;
Лист
ЧДТУ 231940.001 ПЗ
17
Змн. Лист № докум. Підпис Дата
• немає власної камери відеоспостереження (але є можливість підключення
стороннього обладнання);
• керувати лише за допомогою телефону, хоча це позбавляє від необхідності
встановлювати будь-які додаткові програми на ПК.
Ajax багатофункціональний, надійний, зручний, компактний. Він має якісний
захист від крадіжки, відмінний дизайн та чіткий інтерфейс. Встановлення та
конфігурація такого комплексу спрощується до мінімуму і є повністю доступною
навіть для технічно непідготовлених користувачів. Важливою перевагою є досить
демократична ціна на пристрій з урахуванням його широких функціональних
можливостей.
1.5 Протоколи, стандарти та технології
1.5.2 KNX
Побудова системи автоматизації на основі стандарту KNX є найдорожчим
варіантом, але вона дуже популярна в Європі і насправді є європейським
стандартом для автоматизації будівель. Цей стандарт порівняно рідко
використовується для автоматизації будинків або навіть автоматизації квартир, але
часто використовується для автоматизації будівель та офісів.
Цей стандарт з’явився на початку 1990-х. Стандарт базується на шині EIB
(Європейська інсталяційна шина). Стандарт характеризується великою кількістю
властивих йому функцій, а також складністю проектування та монтажу. Протокол
KNX може використовувати шину, електричну мережу або радіоканал як носій
передачі даних. Стандарт надає різні варіанти топології мережі, але більшість
фахівців KNX пов'язують її з найбільш часто використовуваним провідним
варіантом. Система децентралізована, може не мати центрального контролера. Але
має бути джерело живлення.
Цей протокол дуже підходить для автоматизації великих будівель і може
об'єднати до 50 000 пристроїв у мережу. Створена Всесвітня асоціація KNX, що
включає понад 350 компаній по всьому світу. Сьогодні найвідомішими
Лист
ЧДТУ 231940.001 ПЗ
18
Змн. Лист № докум. Підпис Дата
виробниками обладнання KNX є Schneider Electric, ABB та Gira. У світі
виробляється велика кількість пристроїв з різними функціями. Тому ви можете
вирішити будь-які проблеми, використовуючи цей стандарт.
Кабель 4 × 0,8 найчастіше використовується для роботи пристрою, одна пара
проводів використовується для роботи самої шини KNX, а друга пара - для
живлення. Обмін даними між пристроями здійснюється безпосередньо, без участі
спеціального контролера, тому вихід з ладу одного пристрою не призведе до
вимкнення всієї системи. Цей спосіб має переваги та недоліки. Однак ніхто не
заважає вам використовувати окремий контролер для вирішення складних
інтерактивних завдань, які неможливо виконати, налаштувавши пристрій.
Єдиним недоліком KNX є висока вартість обладнання та висока ступінь уваги
до професіоналів. У реалізації проекту беруть участь великі компанії, оскільки
початкові витрати на навчання персоналу, придбання необхідного програмного
забезпечення та випробувального обладнання дуже великі. Хоча теоретично
стандарт фактично не підходить для того, щоб це робити самостійно. Коротше
кажучи, стандарт KNX - це дуже дороге, відоме та надійне рішення для систем
автоматизації будівель.
1.5.3 Z-Wave
Z-Wave - це бездротовий протокол, дуже схожий на ZigBee. Він був
розроблений спеціально для систем домашньої автоматизації датською компанією
Zen-sys наприкінці 1990-х. Цей протокол також використовує структуру топології
клітин, все для забезпечення наднизького енергоспоживання. Різниця полягає в
тому, що протокол закритий, тому розробка та виробництво комунікаційних
модулів є єдиною компанією Sigma Designs. Незалежно від виробника, усі пристрої
використовують один і той же тип модуля зв'язку. Це забезпечує сумісність
пристрою, хоча є деякі тонкощі, пов'язані з діапазоном частот.
Z-хвиля використовує смугу частот 868 МГц без перешкод. Для передачі
даних використовується шифрування AES. Мережа повинна мати центральний
контролер, який може надавати послуги до 255 пристроїв. Коли кількість пристроїв
Лист
ЧДТУ 231940.001 ПЗ
19
Змн. Лист № докум. Підпис Дата
збільшується, можна поєднати два контролери. Оскільки угода закрита, розроблено
набагато менше інформації та програмного забезпечення. Однак є кілька
безкоштовних проектів, які дозволяють поєднувати пристрої Z-Wave з іншими
системами домашньої автоматизації (наприклад, LinuxMCE).
Всі пристрої Z-Wave на ринку можна розділити на такі групи:
1. Підключіть розетку або електричний вимикач, який замінює традиційний
настінний вимикач. Їх також можна зібрати в деякі електроприлади, такі як
електроплити або обігрівачі.
2. Електричний регулятор яскравості, роз’ємний модуль або як заміна
традиційного настінного вимикача.
3. Пристрій управління двигуном, як правило, використовується для
відкривання або закриття дверей, вікон, штор або жалюзі.
4. Різні типи датчиків використовуються для вимірювання температури,
вологості, концентрації газів (наприклад, вуглекислого газу або чадного газу) та
інших параметрів.
5. Управління термостатом
6. Пульт дистанційного керування, такий як універсальний пульт, що
підтримує ІЧ-порт, або спеціальний пульт Z-Wave, має спеціальні кнопки для
функцій мережі, управління групами або сценами.
7. Контролер USB та шлюз IP використовуються для забезпечення доступу
програмного забезпечення ПК до мережі Z-Wave. Використання протоколу IP для
цих інтерфейсів може забезпечити віддалений доступ через Інтернет.
Z-Wave дуже підходить для систем домашньої автоматизації та використання
концепцій "зроби сам". Але це не означає, що великі проекти не можуть
здійснюватися на базі цього обладнання. Багато компаній продають різні пристрої
Z-Wave і використовують їх у своїх проектах. Їх не можна назвати дешевими, але
їх установка дуже проста і доступна для більшості людей.
Лист
ЧДТУ 231940.001 ПЗ
20
Змн. Лист № докум. Підпис Дата
1.5.5 Технологія мережі Wi-Fi
Wi-Fi - це популярна технологія в бездротових мережах. Wi-Fi означає
"бездротову лояльність". Wi-Fi був винайдений NCR / AT&T у Нідерландах у 1991
році. Завдяки цій технології ви можете обмінюватися інформацією між двома або
більше пристроями. Wi-Fi призначений для мобільних обчислювальних пристроїв,
таких як ноутбуки, але в наш час він широко використовується в мобільних
додатках та побутовій електроніці, таких як телевізори, DVD-програвачі та цифрові
камери. Повинні бути два способи зв’язку із з’єднанням Wi-Fi, які можна здійснити
через точку доступу до підключення клієнта або від підключення клієнта до
клієнта. Wi-Fi - це різновид технології бездротової локальної мережі. Технологія
Wi-Fi дозволяє локальній мережі працювати без проводів та кабелів. Це робить
його популярним для вибору та використання в домашніх та ділових мережах. В
даний час існує чотири основних типи технології Wi-Fi: Wi-Fi-802.11a; Wi-Fi-
802.11b; Wi-Fi-802.11g; Wi-Fi-802.11n.
-802.11a-Серія бездротових технологій, що використовуються для
визначення формату та структури радіосигналів, що передаються мережевими
маршрутизаторами Wi-Fi з антенами.
-Wi-Fi-802.11b-Серія бездротових технологій, які підтримують пропускну
здатність 11 Мбіт / с. Сигнал в безумовному спектрі становить приблизно 2,4 ГГц.
Порівняно з Wi-Fi-802.11a, ця нижча частота означає, що вона може працювати на
розумній відстані. Діапазон сигналів побутової техніки.
-Серія Wi-Fi-802.11g, з’явилася у 2002 та 2003 роках. Ця технологія
підтримує нові продукти. Завдяки швидкому доступу та максимальній швидкості
ця технологія перевершує 802.11a та 802.11b. 802.11 b підтримує пропускну
здатність до 54 Мбіт / с і використовує частоту 2,4 ГГц для досягнення більшого
діапазону. Але вартість підключення перевищує 802.11b.
-Wi-Fi-802.11n - це найновіша технологія Wi-Fi. Він спрямований на
вдосконалення 802.11g. Підтримуйте пропускну здатність, використовуючи кілька
Лист
ЧДТУ 231940.001 ПЗ
21
Змн. Лист № докум. Підпис Дата
бездротових сигналів та антен замість однієї. Він підтримує пропускну здатність
100 Мбіт / с і збільшує потужність сигналу.
Принцип WiFi.
Wi-Fi - це високошвидкісне підключення до Інтернету та підключення до
мережі без використання будь-яких кабелів або проводів. бездротової мережі
Використовуйте три важливі елементи - радіосигнал, антену та
маршрутизатор. Передача здійснюється радіохвилями. Для спілкування через
мережі Wi-Fi комп'ютери та мобільні телефони повинні бути оснащені адаптерами
Wi-Fi. Wi-Fi дозволяє людям отримати доступ до Інтернету в будь-якому місці в
межах фактичної зони покриття. Радіосигнал передається від маршрутизатора, а
сигнал приймається приймачем Wi-Fi (наприклад, комп’ютером та мобільним
телефоном) із вбудованим адаптером Wi-Fi. До тих пір, поки комп’ютер отримує
сигнал в межах зони дії маршрутизатора, він негайно підключатиметься до
пристрою. Діапазон Wi-Fi залежить від оточення, типу місця або простору. Адаптер
Wi-Fi зчитує сигнал і підключається до Інтернету між користувачем та мережею.
Швидкість пристрою, підключеного до Wi-Fi, збільшується, коли комп'ютер
наближається до основного джерела, і навпаки, коли комп'ютер віддаляється,
швидкість зменшується. Багато нових ноутбуків та мобільних телефонів мають
вбудовані трансивери Wi-Fi.
Бездротовий маршрутизатор - це різновид обладнання, яке зазвичай
використовується в приміщенні. Цей тип обладнання в основному
використовується постачальниками послуг Інтернету для підключення своїх
мережевих кабелів, що називається обладнанням WLAN Wi-Fi.Основною
функцією цього типу маршрутизатора є поєднання мережевих функцій
маршрутизатора та бездротової точки доступу. Як і дротова мережа, концентратор
розташований у центрі мережі, і всі комп’ютери підключені до концентратора для
забезпечення доступу до мережі. В даний час бездротові концентратори можна
використовувати як маршрутизатори в так званих шлюзах. Найпоширенішим
способом бездротового підключення користувачів до Інтернету є використання
Лист
ЧДТУ 231940.001 ПЗ
22
Змн. Лист № докум. Підпис Дата
невеликого настільного маршрутизатора Wi-Fi з антеною. Пристрій передає
сигнали на роботі чи вдома. Однак сигнал цього WiFi-маршрутизатора дуже
слабкий, і для збільшення покриття Інтернету в масив потрібно помістити
спеціальні розширення Wi-Fi.
До недоліків Wi-Fi належать: обмежений діапазон; перешкоди від інших
пристроїв, таких як мікрохвильові печі, телефони тощо; велике споживання енергії;
ризики безпеки даних, особливо у громадських місцях; передача даних має певні
обмеження, і дані не можуть передаватися довго відстані. У порівнянні з дротовим
підключенням, вартість впровадження Wi-Fi дуже висока.
До переваг технології WiFi належать: бездротові пристрої можна передавати
з одного місця в інше; використання комунікаційних пристроїв у мережі Wi-Fi
може зменшити мережеві витрати за рахунок економії лінійних витрат;
налаштування Wi-Fi простіше, ніж підключення кабелів, тому цілком безпечно , не
буде заважати будь-якій мережі; можливість підключення до Інтернету через точку
доступу в бездротовому середовищі.
1.5.8 Порівняння протоколів HTTP та MQTT
Протокол MQTT, або транспортна телеметрія черги повідомлень, був
розроблений Енді Стенфорд-Кларком та Арленом Ніппером. Це протокол взаємодії
IoT, заснований на моделі Publisher / Subscribe. Ця модель є простою моделлю, яка
забезпечує підтримку якості обслуговування (QoS). Завдяки своїм можливостям
його можна знайти в кожному другому пристрої на основі IoT. Цей протокол має
багато функцій, оскільки працює через TCP і використовує SSL / TLS для безпеки.
Він використовує CONNECT, PUBLISH, SUBSCRIBE, DISCONNECT тощо для
обміну повідомленнями між серверами [21].
Оскільки MQTT є протоколом на основі TCP / IP, спочатку встановлюється
TCP-з'єднання, а потім передаються дані. Зв'язок MQTT відбувається у три етапи:
1) встановлення з'єднання TCP;
2) встановлення з'єднання MQTT та публікація даних;
3) припинення з'єднання TCP.
Лист
ЧДТУ 231940.001 ПЗ
23
Змн. Лист № докум. Підпис Дата
Розглянемо їх:
1. Встановлення TCP-з'єднання - це тристороннє рукостискання, яке
досягається шляхом передачі 3-х пакетів між клієнтом та сервером. Сервер завжди
слухає. Перший клієнт надсилає на сервер повідомлення-повідомлення у вигляді
запиту на підключення - пакету з позначкою SYN = 1 і ACK = 0. Отримавши пакет
запиту на підключення, сервер надсилає пакет підтвердження з прапорами SYN =
1 та ACK = 1, щоб повідомити клієнта про те, що сервер отримав з'єднання пакету
запиту та готовий до зв'язку. Клієнт, отримавши SYN Flag = 1 і ACK = 1 в пакеті
підтвердження від сервера, надішле пакет підтвердження з SYN Flag = 0 і ACK = 1,
щоб повідомити сервер про те, що клієнт отримав підтвердження з'єднання і
готовий до спілкуватися. Передача даних відбуватиметься лише після успішного
рукостискання з TCP.
2. Після успішного рукостискання TCP, першим пакетом, надісланим від
видавця брокера, є пакет CONNECT, який є нічим іншим, як пакетом запиту на
підключення до сервера. Отримавши запит на підключення, пакетний брокер
надішле емітенту пакет підтвердження із заявою, що брокер отримав пакет запиту
на підключення та готовий до зв'язку. Як тільки видавець отримає пакет
підтвердження від сервера або брокера, видавець помітить, що сервер також
готовий до спілкування, і видавець почне публікувати повідомлення. Після
публікації повідомлення видавець від’єднається від продавця, надіславши пакет
запиту на від’єднання. Рукостискання видавця MQTT з брокером різняться залежно
від рівня якості обслуговування. Описаний вище алгоритм рукостискання брокера-
видавця MQTT відноситься до рівня QOS.
3. Припинення з'єднання TCP відоме як симетричне вивільнення. Кажуть, що
зв’язок закінчується, коли клієнт і сервер надсилають один одному пакет із
позначкою FIN = 1. Коли клієнт хоче від’єднатися від сервера, він надсилає запит
на від’єднання з позначкою FIN = 1, вказуючи на те, що він хоче розірвати зв’язок.
Після отримання пакету запиту на відключення сервер надішле два пакети, перший
пакет буде пакетом підтвердження з ACK = 1 клієнту, повідомляючи йому, що
Лист
ЧДТУ 231940.001 ПЗ
24
Змн. Лист № докум. Підпис Дата
сервер отримав запит на відключення, а другий пакет буде пакетом запиту на
відключення з FIN = 1 і ACK = 1 на бічному сервері, що означає, що сервер також
хоче від'єднатися. Отримавши закінчувальний пакет від сервера з прапором FIN =
1 і ACK = 1, клієнт розуміє, що сервер також відправив завершення зі свого боку,
тоді клієнт надішле на сервер пакет підтвердження з ACK = 1, що означає на
дзвінок відповіли, і він негайно роз’єднує дзвінок (рис. 5).
Рисунок 5 – Етапи встановлення зв'язку MQTT
Протокол передачі гіпертексту (HTTP) використовується Інтернетом для
визначення способу передачі та форматування повідомлень. Цей протокол
відповідає за дії, які повинен виконати сервер під час надсилання інформації через
мережу. Після введення URL-адреси у браузер протокол надсилає HTTP-запит на
сервер, а потім відповідь HTTP надсилається назад у браузер. Цей протокол також
відповідає за перевірку веб-сайтів у Всесвітній павутині на форматування та
презентацію.
Лист
ЧДТУ 231940.001 ПЗ
25
Змн. Лист № докум. Підпис Дата
1.6 Переваги і недоліки
Люди все частіше доходять до висновку, що в новій або вже існуючій
квартирі потрібно встановити систему автоматизаці. Хтось прагне
використовувати новітні інновації, а хтось хоче здивувати своїх гостей. Деякі люди
об’єктивно розглядають переваги «розумного будинку». Давайте розглянемо, які
переваги дає система автоматизації.
Автоматизована економія. Це стосується вашого будинку та ефективності
інженерної системи вашого будинку. Система автоматизації може керувати
багатьма пристроями натисканням кнопки, а також може керувати термостатом і
вимикати світло там, де це не потрібно або де його забули вимкнути. Ви будете
споживати менше електроенергії та природного газу, тим самим заощаджуючи
земні ресурси для своїх майбутніх поколінь. Завдяки автоматичному поливу,
контролюючи вологість та температуру ґрунту на вулиці, ви можете заощадити
воду та електроенергію. Ефективна система дозволяє використовувати найкращу
енергію в будь-якій ситуації, наприклад, використовуючи котли, сонячні колектори
або теплові насоси для нагрівання води. Однак не слід вважати, що завдяки
економії енергії система автоматизації отримає повну віддачу.
Автоматичний будинок зручніший. Ви зможете керувати та керувати всіма
видами електронного обладнання з екрана вашого смартфона чи планшета. Однієї
зручності достатньо, щоб надихнути багатьох людей на автоматизацію своїх
будинків.
Автоматизація створює комфорт. Завдяки можливості активного контролю
та управління різними електронними компонентами система автоматизації
гарантує максимальний комфорт. Все середовище - від контролю освітлення та
підтримання оптимальної температури, до відтворення улюбленої музики та
відображення зведеної інформації на РК-панелі вдома, контролюється системою
управління, яка поступово вивчає ваш спосіб життя. Ви отримуєте помічника, який
завжди доглядає за вами і намагається перевершити ваші очікування.
Лист
ЧДТУ 231940.001 ПЗ
26
Змн. Лист № докум. Підпис Дата
Автоматизація підвищує безпеку для вас і вашого будинку. Домашня
автоматизація допомагає запобігти потенційно поганим речам, дозволяючи
дистанційно керувати своїм будинком за допомогою смартфонів та інших
пристроїв. Ви можете керувати будинком, навіть коли ви дуже далеко. Система
також може відстежувати стан та місцезнаходження мешканців та типові сценарії
їх поведінки. Багато систем безпеки виконують основні функції системи домашньої
автоматизації. Безпека завжди важлива, і мешканці вашого будинку можуть
поступово звикати до використання сучасних технологій.
Недоліки розумного будинку такі ж важливі, як і переваги. Першим, і
найголовнішим недоліком є ціна обладнання та його монтаж. Це аспект
неодноразово перекриває весь ефект комфорту та економії ресурсів, зазначених у
перевагах. Якщо порахувати заощадження від використання системи автоматизації
отримується термін окупності просто фантастичний.
Другий недолік з’являється при установці та встановленні смарт-пристрою
для підтримки всіх підсистем, пристроїв та датчиків для їх підключення потрібна
проводка. Звичайно, ви можете використовувати радіокеровані датчики, але
одночасно вартість системи зросте в рази. Якщо система реалізована по-старому
будинку, необхідно повністю перепланувати водопостачання, опалення,
кондиціонування та вентиляції та замінити всю проводку i встановити все
необхідне обладнання, можливо модифікувати вікна, двері, жалюзі або штори,
встановивши на них електропривод.
Лист
ЧДТУ 231940.001 ПЗ
27
Змн. Лист № докум. Підпис Дата
2. ПОБУДОВА СИСТЕМИ МОНІТОРИНГУ
Система «зроби сам» - це аналог дорогої та професійної системи
автоматизації. Головна перевага - низька ціна обладнання. До недоліків можна
віднести нижчу якість та надійність компонентів порівняно з комерційною
продукцією, а також відсутність гарантій та технічної підтримки. На додаток до
вищезазначених недоліків, слід також пам’ятати, що ви повинні володіти
наступними навичками:
• Знання про електроенергію. Розуміти принципи управління різними
електроприладами;
• Розуміти принципи побудови систем автоматизації: тип контролера, вхід і
вихід контролера та тип сигналу;
• Навички програмування та чітке розуміння необхідних системних
алгоритмів;
• Мати повне розуміння використовуваного обладнання.
Розумні будинки в категорії «Зроби сам» в основному засновані на
використанні відомого мікроконтролера Arduino або одноплатного комп’ютера
Raspberry pi. При створенні системи домашньої автоматизації ці платформи були
обрані через їх доступність та низьку вартість.
2.1 Аналіз і вибір мікроконтролера
Raspberry Pi має всі риси комп'ютера: центральний процесор і графічний
процесор, зовнішню і оперативну пам'ять, відеовихід для підключення до екрану та
порт USB. Arduino на перший погляд схожа на звичайну плату з чіпом. Сімейство
мікрокомп’ютерів Raspberry Pi використовує спеціально розроблену версію Linux,
яка має багатозадачні функції та підтримує графічний інтерфейс. На рис. 6, 7
показані плата комп’ютера Raspberry Pi та плата мікроконтролера Ardunio.
Лист
28 ЧДТУ 231940.001 ПЗ 28
Змн. Лист № докум. Підпис Дата
Рисунок 6 - Одноплатний комп'ютер Raspberry Pi
Рисунок 7 - Плата-Мікроконтролер Ardunio
Плата Arduino - це мікроконтролер, а не повноцінний комп'ютер. В даний час
існує приблизно 25 типів друкованих плат із різними розмірами, процесорами та
кількістю аналогових та цифрових портів. На відміну від Raspberry Pi, Arduino не
Лист
ЧДТУ 231940.001 ПЗ
29
Змн. Лист № докум. Підпис Дата
використовує операційну систему, тому одночасно може запускати лише одну
програму. Однак це не означає, що на Arduino неможливо керувати багатьма
задачами. Просто для цього потрібен дещо інший підхід при написанні коду. При
використанні Arduino в операційній системі відсутні основні інструменти, але з
іншого боку, через відсутність операційної системи, ви можете легко і швидко
запускати завантажену програму. На Arduino відсутня операційна система, тому ви
можете ініціалізувати програму відразу після включення пристрою. Навіть якщо в
Arduino трапиться несподіване відключення електроенергії, насправді немає
ризику пошкодити запущену програму та спричинити деякі помилки. Щоб
відновити роботу, підключіть Arduino до джерела живлення. На Raspberry Pi робота
самого пристрою завершується і відновлюється за допомогою програмного
процесу, як і на звичайному комп’ютері, аварійне вимкнення може спричинити
серйозну помилку в операційній системі.
Усі сучасні комп’ютери можуть отримати доступ до Інтернету, навіть
мікрокомп’ютер Raspberry Pi також може вийти в Інтернет. Плата розробників має
порт Ethernet для забезпечення доступу до мережі. Rapberry Pi навіть підтримує
бездротовий Інтернет, вам потрібно лише придбати USB-адаптер для WiFi та
встановити відповідні драйвери. Після завершення всіх необхідних налаштувань ви
отримаєте повний доступ до Інтернету. Окрім перегляду Інтернету, Raspberry Pi
також може використовуватися для створення та запуску декількох веб-серверів та
віртуальної мережі. Плата мікроконтролера Arduino не може використовуватися з
мережею без додаткових модифікацій. Для забезпечення доступу в Інтернет
Arduino повинен бути обладнаний додатковою платою порту Ethernet. Це дуже
складна робота, яка вимагає певних навичок в схемотехніці та управлінні
мережами. Після завершення всіх операцій ви зможете керувати платою через
Інтернет або запустивши на ній веб-сервер.
Функції Arduino та Raspberry Pi майже безмежні. Щоб розширити їх, ви
можете використовувати плати розширення. Існує безліч таких плат, призначених
для вирішення конкретних проблем. Raspberry Pi та Arduino можуть добре
Лист
ЧДТУ 231940.001 ПЗ
30
Змн. Лист № докум. Підпис Дата
працювати разом. Arduino більше підходить для управління двигуном, прийому
сигналів датчиків, управління реле тощо. Крім того, Arduino виконує роль плати
управління, а Raspberry Pi виконує операції обрахунку.
Для того, щоб створити систему контролю над приладами, була обрана плата
мікроконтролера Arduino. Оскільки основним завданням цієї плати є взаємодія з
датчиками та пристроями, Arduino підходить для апаратних проектів, які
вимагають чіткого та швидкого реагування на різні сигнали. В даному випадку
система домашньої автоматизації є таким проектом. Як зазначалося вище, існує
багато різновидів Arduino, і найбільш підходящою платою для цього проекту є
Arduino Leonardo.
2.2 Опис Arduino Leonardo
Arduino Leonardo - це пристрій на основі мікроконтролера ATmega32U4.
Пристрій включає: 20 входів / виходів, кварцовий резонатор 16 МГц, роз'єм micro
USB, роз'єм живлення, роз'єм для онлайн-програмування ICSP та кнопку скидання.
Обсяг доступної пам'яті, що використовується для зберігання програми в
мікроконтролері ATmega32U4, становить 32 КБ, з яких 4 КБ виділено для потреб
завантажувача. Розмір оперативної пам'яті типу SRAM становить 2,5 КБ. Крім того,
мікроконтролер має 1 КБ EEPROM. Основна відмінність Leonardo від усіх
попередніх материнських плат полягає в тому, що мікроконтролер ATmega32U4
має вбудований USB-контролер, що позбавляє потреби в додатковому процесорі.
Arduino Leonardo може використовувати в якості джерела живлення мікро
USB, зовнішній акумулятор або адаптер змінного струму. На рис. 8 показана плата
мікроконтролера Arduino Leonardo.
Лист
ЧДТУ 231940.001 ПЗ
31
Змн. Лист № докум. Підпис Дата
Рисунок 8 - Плата-Мікроконтролер Ardunio Leonardo
Напруга джерела живлення може коливатися від 6 до 20 вольт. Для того, щоб
запобігти короткому замиканню та перевантаженню, плата обладнана
запобіжником. Якщо споживання струму перевищує 500 мА, запобіжник
автоматично розірве з'єднання. Arduino Leonardo має безліч функцій для
коменікації з комп’ютерами чи іншими мікроконтролерами. Мікросхема
ATmega32U4 включає приймач UART (Універсальний асинхронний приймач /
передавач), призначений для зв'язку з іншими цифровими пристроями.
Мікроконтролер ATmega32U4 підтримує послідовний зв’язок через USB, при
підключенні до комп’ютера він визначається як віртуальний COM-порт. Варто
зазначити, що мікроконтролер ATmega32U4 підтримує інтерфейс ICSP, що
полегшує підключення плати розширення Ethernet і роботу з програмістом.
На рис. 9 і 10 показані виходи (піни, порти), розташовані на мікросхемі
ATmega32U4 та на самій платі. Ці порти потрібні для підключення аналогових та
Лист
ЧДТУ 231940.001 ПЗ
32
Змн. Лист № докум. Підпис Дата
цифрових пристроїв та забезпечення живлення. Кожен порт управляється трьома
регістрами - DDR, PORT, PIN, які визначаються змінними в IDE Arduino.
Рисунок 9 – виходи на мікросхемі ATmega32U4
Рисунок 10 – виходи на платі Arduino Leonardo
2.3 Можливості системи керування
Велика кількість різних виходів на платі дозволить підключити різні датчики
та пристрої, оскільки сам Arduino Leonardo не зможе виконувати функції системи
Лист
ЧДТУ 231940.001 ПЗ
33
Змн. Лист № докум. Підпис Дата
домашньої автоматизації. Перед вибором датчиків та обладнання необхідно
визначити призначення діючої системи автоматизації будинку. Поточний проект
системи автоматизації буде спроектований як кімната площею 15 квадратних
метрів, розташована в приватному будинку. Система домашньої автоматизації
повинна виконувати такі завдання:
• управління освітленням та побутовою технікою;
• дистанційний контроль всієї системи;
• регулювання температури в приміщенні та назовні;
• Контролювати витоки води;
• Контролювати несанкціоноване проникнення.
Система є прототипом, вона не може контролювати всі інженерні агрегати,
обладнання, системи опалення та забезпечити повну безпеку будівлі. Це пов’язано
з високими фінансовими витратами на придбання компонентів, впровадженням
внутрішніх систем та відсутністю навичок програмування та електротехніки. У
майбутньому ця система автоматизації будинку буде модернізована, і з часом її
якість та функції стануть такими ж якісними, як і зрілі комерційні рішення.
2.4 Опис алгоритму роботи системи
Інформація, зібрана від різних датчиків будинку, надсилається на планшет
або ПК через бездротову мережу. Потім використовуйте спеціальне програмне
забезпечення для обробки даних та виконання конкретних команд.
Основну функцію виконує центральний датчик, який можна придбати або
зібрати самостійно. Роз'єми на платі стандартні, що значно спрощує вибір
компонентів.
Arduino живиться від роз’єму USB або зовнішнього джерела живлення.
Джерело напруги визначається автоматично.
Якщо обрати варіант відсутності зовнішнього живлення через USB, можливо
підключити акумулятор або блок живлення (перетворювач напруги). В останньому
випадку для підключення використовується роз'єм 2,1 мм з "+" на головному
контакті.
Лист
ЧДТУ 231940.001 ПЗ
34
Змн. Лист № докум. Підпис Дата
Проводи від акумулятора підключені до різних клем роз'єму живлення - Vin
і Gnd.
Для нормальної роботи платформи потрібна напруга від 6 до 20 вольт. Якщо
цей параметр нижчий за 7 вольт, напруга 5-контактного виводу може бути низьким,
і існує ризик несправності.
Якщо подається напруга 12 В, регулятор напруги може перегрітися і може
пошкодити друковану плату. Тому оптимальним рівнем є джерело живлення 7-12
В.
2.5 Вибір і встановлення датчиків
2.5.1 Датчик звуку
Управління світленням за допомогою системи автоматизації будинку
забезпечує комфортну роботу приміщення, економити витрати на електроенергію
та продовжувати термін служби електричних приладів. Багато систем дозволяють
використовувати телефон для управління освітленням, натискаючи віртуальні
кнопки або навіть використовуючи голос або голосові команди. У поточному
проекті буде реалізована функція увімкнення та вимкнення світла за хлопком. Для
цього типу управління використовуються звукові датчики.
Звукові датчики використовуються для контролю рівня шуму або виявлення
гучних сигналів, таких як плескання в долоні, стукіт у двері або свист. Для
поточного завдання було обрано датчик на мікросхемі lm393. Цей вибір
обумовлений низькою ціною та простотою його роботи. На рис. 11 показаний цей
датчик.
Лист
ЧДТУ 231940.001 ПЗ
35
Змн. Лист № докум. Підпис Дата
Рисунок 11 – датчик звуку LM393
Принцип роботи датчика дуже простий. Мікрофон перетворює коливання
звуку в коливання струму. Для усунення шуму та посилення сигналу
використовується електронна обв'язка.
2.5.2 Датчик температури
Контроль температури дуже важливий для комфортного та раціонального
використання електроенергії та природних ресурсів. Сучасні «розумні будинки»
можуть автоматично контролювати мікроклімат всього будинку та окремих кімнат.
У поточній системі автоматизації контроль температури забезпечить більше
інформації. Два датчики температури будуть встановлені всередині приміщення і
зовні. Використання цих датчиків дозволить у майбутньому створити
повнофункціональні системи домашньої автоматизації та можливість
автоматичного контролю мікроклімату приміщення.
В якості датчика температури обрано DS18B20.
Лист
ЧДТУ 231940.001 ПЗ
36
Змн. Лист № докум. Підпис Дата
Рисунок 12 – датчик температури DS18B20
Цей датчик є цифровим датчиком, який дозволяє з високою швидкістю та
точністю зчитувати кожну зміну температури та передавати його на Arduino
Leonardo. Крім того, друковану плату можна використовувати для паралельного
підключення 127 таких датчиків. В поточному проекті буде використано 2
DS18B20 датчики. Один призначений для контролю температури в приміщенні, а
інший зовні. Для підключення до плати мікроконтролера використовуються 3
стандартні контакти: GND, + 5 В, DATA. Однак для того, щоб датчик працював
належним чином, слід використовувати підтягуючий резистор 4,7 кОм.
Підтягуючий резистор утворює ланцюг між DATA і + 5В, що забезпечує посилення
сигналу між провідником, по якому поширюється електричний сигнал, і джерелом
живлення.
Рисунок 13 – схема підключення датчика температури DS18B20
Лист
ЧДТУ 231940.001 ПЗ
37
Змн. Лист № докум. Підпис Дата
2.5.3 Датчик руху
Детектор руху (або детектор руху) і геркон є основним елементом системи
безпеки, оскільки вони першими виявляють самовільний вхід в будинок. Датчики
руху використовують різні технології для виявлення руху. PIR HC-SR501 є
найбільш підходящим для поточної конструкції, цей датчик показаний на рис. 14.
Рисунок 14 – датчик руху PIR HC-SR501
Детектор PIR (пасивний інфрачервоний датчик) має невеликі розміри, низьку
вартість, низьке споживання енергії та простий в експлуатаціъ. Детектор руху
складається з піроелектрично чутливого датчика, який може вимірювати рівень
інфрачервоного випромінювання. Кожен предмет у кімнаті має певний ступінь
випромінювання. При зміні температури змінюється і рівень радіації. HC-SR501
використовує мікросхему BISS0001, яка приймає зовнішнє джерело
випромінювання і виконує мінімальну обробку сигналу для перетворення його з
аналогового на цифровий.
Геркон (геркон) - це спеціальний електромеханічний пристрій з
магнетронними феромагнітними контактами. Назва "герконовий перемикач"
походить від фрази "герметичний контакт". По суті, герконові вимикачі - це два
контакти у вакуумній колбі. Контакти можуть бути у двох станах, замкнутих і
розімкнутих, вони змінюють свій стан під впливом на них магнітного поля.
Герконові вимикачі - це дуже популярні датчики, які в основному
Лист
ЧДТУ 231940.001 ПЗ
38
Змн. Лист № докум. Підпис Дата
використовуються для контролю відчинення дв ерей і вікон. У поточній системі
цей датчик буде використовуватися для контролю відчинення вікон.
2.5.4 Датчик витоків води.
Той, хто стикався з такою ситуацією, як прорив труби або крана, знає
важливість своєчасного пошуку проблеми. Навіть невеликий витік, який здається
незначним, може призвести до великих матеріальних витрат. В даний час існує
багато рішень у галузі контролю та попередження в надзвичайних ситуаціях,
пов’язаних із спалахами води. Вони відрізняються ціною, функціональністю та
доступністю.
В якості детектора води була обрана недорога сенсорна плата з компаратором
LM393. Датчик в основному використовується для виявлення води, але він може
використовуватися для контролю рівня води за допомогою певних налаштувань
резистора. Це робиться для усунення помилкових тривог, особливо коли датчик
знаходиться у приміщенні з підвищеною вологістю або невеликою кількістю
бризок води на ньому. Звичайно, цей датчик не можна врятувати від мокрої
підлоги, але він все одно може запобігти сильним витокам.
Рисунок 15 – схема компаратора LM393
Лист
ЧДТУ 231940.001 ПЗ
39
Змн. Лист № докум. Підпис Дата
Рисунок 16 –компаратор LM393
Датчик складається з друкованої плати з провідними контактами та плати з
компаратором LM393. Друкована плата містить провідні контакти. Як контакти
даних використовуються аналогові або цифрові контакти. Плата мікроконтролера
Arduino Leonardo може зчитувати цифрові значення датчиків від 0 до 1023 або
аналогові значення в діапазоні напруг від 0 до 5 вольт. Якщо плата датчика суха,
при використанні цифрової величини на аналоговий вихід камери подається
напруга 5 вольт - значення 1023. Якщо датчик змочиться, напруга на аналоговому
виході буде коливатися від 5 до 0 вольт від цифрового 1023 до 0. Значення залежить
від кількості води або рівня води на датчику.
Рисунок 17 – схема підключення компаратор LM393
Лист
ЧДТУ 231940.001 ПЗ
40
Змн. Лист № докум. Підпис Дата
Датчик витоку води повинен не тільки попереджати про пориви, але і
боротися з ними, тобто перекривати воду. Для цього можна використовувати
електромагнітний клапан (соленоїд) або привід (сервомотор). При виявленні
імпульсу сигнал надходить від датчика на плату управління Arduino, потім від
Arduino до модуля реле і від реле до сервоприводу або електромагнітного клапана,
який, у свою чергу, блокує воду.
2.5.5 Реле
Реле являє собою електричний вимикач. Такі пристрої використовують
електромагніти, щоб перемикачі працювали механічно. Реле використовуються
там, де сигнали малої потужності потрібно використовувати для управління
ланцюгами, або де один сигнал повинен керувати кількома ланцюгами. Релейне
обладнання можна розділити на дві частини: вхідну та вихідну. Вхідна частина має
котушку, коли мала напруга від електронної схеми впливає на неї, котушка генерує
магнітне поле. Ця напруга називається робочою напругою. Часто використовувані
реле мають різні конфігурації робочої напруги, такі як 5 В, 9 В, 12 В, 24 В тощо.
Вихідна частина складається з контакторів (супресорів), які з'єднуються і
від'єднуються механічно. В основній схемі реле є три типи контакторів: нормально
розімкнуті та нормально замкнуті, нормально закриті та нормально замкнуті та
загальнодоступні COM. За відсутності вхідного стану COM підключений до NC.
Коли робоча напруга реле котушки подається під напругу і com змінює контакт NO.
Поточний проект обрав модуль SRD-05VDC-SL-C з двома реле. Цей модуль
керуватиме побутовою технікою та сервером.
Рисунок 18 – Модуль реле SRD-05VDC-SL-C
Лист
ЧДТУ 231940.001 ПЗ
41
Змн. Лист № докум. Підпис Дата
Рисунок 19 – Схема підключення модуля реле SRD-05VDC-SL-C
2.5.6 Адаптер Wi-Fi ESP8266
Його можна використовувати як автономний пристрій або як адаптер UART
до Wi-Fi, щоб дозволити іншим мікроконтролерам підключатися до мережі Wi-Fi.
Наприклад, ви можете підключити ESP8266 до Arduino, щоб додати можливості
Wi-Fi до вашої плати Arduino. Найбільш практичним застосуванням є
використання його як автономного пристрою.
За допомогою ESP8266 ви можете керувати входами і виходами так само, як
і за допомогою Arduino, але з можливостями Wi-Fi. Це означає, що ви можете
виносити свої проекти в онлайн, що чудово підходить для домашньої автоматизації
та додатків інтернету речей. Чому ESP8266 така популярна? В основному з
наступних причин:
Низька вартість: ви можете придбати плату ESP8266 за ціною від $3 (або
менше) в залежності від моделі.
Лист
ЧДТУ 231940.001 ПЗ
42
Змн. Лист № докум. Підпис Дата
Низьке енергоспоживання: ESP8266 споживає дуже мало енергії в порівнянні
з іншими мікроконтролерами і навіть може переходити в режим глибокого сну, щоб
споживати менше енергії;
Wi-Fi: ESP8266 може створювати власну мережу Wi-Fi (точка доступу) або
підключатися до інших мереж Wi-Fi (станція), щоб отримати доступ до Інтернету.
Це означає, що ESP8266 може отримувати доступ до онлайн-сервісів, наприклад,
робити HTTP-запити або зберігати дані в хмарі. Він також може діяти як веб-
сервер, щоб ви могли отримати доступ до нього за допомогою веб-браузера і мати
можливість віддалено керувати і контролювати ваші плати.
Сумісність з "мовою програмування" Arduino: ті, хто вже знайомий з
програмуванням плат Arduino, будуть раді дізнатися, що вони можуть
програмувати ESP8266 в стилі Arduino.
Сумісність з MicroPython: ви можете програмувати ESP8266 за допомогою
прошивки MicroPython, яка є повторною реалізацією Python 3, призначеною для
мікроконтролерів і вбудованих систем.
Технічні дані ESP8266
Щоб дізнатися більше про технічні характеристики ESP8266, перегляньте
наступний список:
Рисунок 20 – Адаптер Wi-Fi ESP8266
Лист
ЧДТУ 231940.001 ПЗ
43
Змн. Лист № докум. Підпис Дата
Wi-Fi чіп ESP8266-12E
Процесор: 32-бітне RISC ядро мікропроцесора L106 на базі Tensilica Diamond
Standard 106Micro, що працює на частоті 80 або 160 МГц
Пам'ять:
32 Кб оперативної пам'яті інструкцій
32 Кб кеш-пам'яті інструкцій
80 Кб оперативної пам'яті користувацьких даних
16 Кб оперативної пам'яті системних даних ETS
Зовнішня флеш-пам'ять QSPI: підтримується до 16 Мб (зазвичай в комплекті
від 512 Кб до 4 Мб)
Wi-Fi IEEE 802.11 b/g/n
Вбудований TR-перемикач, балун, LNA, підсилювач потужності та
узгоджувальна мережа
Аутентифікація WEP або WPA/WPA2, або відкриті мережі
17 виводів GPIO
Послідовна шина периферійного інтерфейсу (SPI)
I²C (програмна реалізація)
I²S інтерфейси з DMA (спільні виводи з GPIO)
UART на виділених виводах, а також UART тільки для передачі даних можна
увімкнути на GPIO2
10-розрядний АЦП (АЦП послідовного наближення)
2.6 Об'єднання компонентів
На рис. 21 представлена принципова схема всієї системи без обладнання. Для
полегшення з'єднання використовується друкована плата, а вихід плати становить
+ 5 В і GND. Як бачите, більше половини контактів на Arduino Leonardo є
безкоштовними, що дозволить підключати інші датчики та пристрої в
майбутньому, покращуючи тим самим систему автоматизації будинку.
Лист
ЧДТУ 231940.001 ПЗ
44
Змн. Лист № докум. Підпис Дата
Рисунок 21 – схема системи керування приладами
Організувати розумний будинок складно, оскільки в ньому багато датчиків,
контролерів і датчиків. Ці датчики завжди передають інформацію на пристрій
управління. Після обробки інформації в майбутньому ці пристрої передаватимуть
остаточну команду пристрою. Система домашньої автоматизації може працювати
в автоматичному режимі. Але завжди є деякі дані, які потрібно донести до
користувачів. Для цього просто використовуйте панель керування або панель
управління. Крім того, не завжди можливо запрограмувати всі операції
користувача, які будуть виконуватися автоматично. Такі дії включають
незаплановане освітлення або включення електроприладів. Використання панелі
управління дозволить користувачеві вручну керувати різними пристроями.
Лист
ЧДТУ 231940.001 ПЗ
45
Змн. Лист № докум. Підпис Дата
3. АЛГОРИТМ РОБОТИ СИСТЕМИ МОНІТОРИНГУ
3.1 Алгоритм роботи системи, для виведення метеоданих в бот
Систему моніторингу доцільно побудувати у вигляді чат боту для телеграм.
Блок-схема алгоритму роботи сисеми моніторингу представлена на рис. 22.
Початок
Виведення привітання і запрошеня вводу
ні Бот отримав запит на так
виведення інформації
Надсилання команди для отримання інформації з датчиків
так Arduino отримала команду для ні
відправки інформації про стан
датчиків
Відправлення останньої збереженої
інформації про стан датчиків
ні Бот отримав інформацію так Продовження циклічного
про стан датчиків зчитування стану датчиків
Виведення отриманої інформації
про стан датчиків
Рисунок 22 – Алгоритм роботи системи, для виведення метеоданих в бот
Лист
ЧДТУ 231940.001 ПЗ
46
Змн. Лист № докум. Підпис Дата
3.2 Побудова пристрою
Модуль датчика BME280, який використовується, працює через протокол
зв’язку I2C, тому потрібно під’єднати його до контактів I2C ESP32 або ESP8266.
підключення BME280 до ESP32
Стандартні контакти ESP32 I2C :
▪ GPIO 22 : SCL (SCK)
▪ GPIO 21 : SDA (SDI)
Отже, потрібно зібрати свою схему, як показано на рис. 23
Рисунок 23 – Схема підключення BME280 до ESP32
Лист
ЧДТУ 231940.001 ПЗ
47
Змн. Лист № докум. Підпис Дата
Підключення BME280 до ESP8266 NodeMCU
Виводи ESP8266 I2C за замовчуванням:
▪ GPIO 5 (D1): SCL (SCK)
▪ GPIO 4 (D2): SDA (SDI)
Отже, потрібно зібрати свою схему, як показано на рис. 24, якщо
використовується плата ESP8266.
Рисунок 24 – Схема підключення BME280 до ESP8266
3.3 Особливості виконання програми
Показання датчика запиту Telegram – код
Лист
ЧДТУ 231940.001 ПЗ
48
Змн. Лист № докум. Підпис Дата
Наступний код дозволяє запитувати показання датчика BME280 з плати
ESP32 або ESP8266, надіславши повідомлення боту Telegram. Щоб це працювало
потрібно вставити облікові дані мережі (SSID і пароль), токен Telegram Bot і ваш
ідентифікатор користувача Telegram.
Код сумісний з платами ESP32 і ESP8266 NodeMCU. Код завантажить
потрібні бібліотеки відповідно до вибраної плати.
Почати роботу потрібно з імпорту необхідних бібліотек.
#ifdef ESP32
#include <WiFi.h>
#else
#include <ESP8266WiFi.h>
#endif
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
#include <ArduinoJson.h>
#include <Adafruit_BME280.h>
#include <Adafruit_Sensor.h>
Мережеві облікові дані повинні бути записані в наведені нижче змінні.
const char* ssid = "REPLACE_WITH_YOUR_SSID";
const char* password = "REPLACE_WITH_YOUR_PASSWORD";
В цю зміннупорібно записати ідентифікатор користувача, який отриманий
від IDBot.
#define CHAT_ID "XXXXXXXXXX"
Токен Telegram Bot, який отримано від Botfather, записується у змінну
BOTtoken.
Лист
ЧДТУ 231940.001 ПЗ
49
Змн. Лист № докум. Підпис Дата
#define BOTtoken "XXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXX //
your Bot Token (Get from Botfather)
Створити новий клієнт WiFi за допомогоюWiFiClientSecure.
WiFiClientSecure client;
Створити бот з маркером і клієнтом, визначеними раніше.
UniversalTelegramBot bot(BOTtoken, client);
ThebotRequestDelayіlastTimeBotRan використовуються для перевірки нових
повідомлень Telegram кожні х секунд. У цьому випадку код буде перевіряти
наявність нових повідомлень кожну секунду (1000 мілісекунд). Можна змінити цей
час затримки в змінній вbotRequestDelay .
int botRequestDelay = 1000;
unsigned long lastTimeBotRan;
Створити Adafruit_BME280 через виклик bme. Це створює об’єкт I2C на
стандартних контактах ESP I2C.
Adafruit_BME280 bme;
getReadings() функція запитує температуру та вологість від датчика BME280
і повертає результати як рядкову змінну, яку ми можемо надіслати боту Telegram.
String getReadings(){
float temperature, humidity;
temperature = bme.readTemperature();
humidity = bme.readHumidity();
String message = "Temperature: " + String(temperature) + " ºC \n";
message += "Humidity: " + String (humidity) + " % \n";
return message;
Лист
ЧДТУ 231940.001 ПЗ
50
Змн. Лист № докум. Підпис Дата
}
handleNewMessages() функція обробляє те, що відбувається, коли надходять
нові повідомлення.
void handleNewMessages(int numNewMessages) {
Serial.println("handleNewMessages");
Serial.println(String(numNewMessages));
Він перевіряє доступні повідомлення:
for (int i=0; i<numNewMessages; i++) {
Отримавши ідентифікатор чату для цього конкретного повідомлення його
потрібно зберегти в змінній chat_id. Ідентифікатор чату визначає, хто надіслав
повідомлення.
String chat_id = String(bot.messages[i].chat_id);
Якщо chat_id відрізняється від власного ідентифікатора чату (CHAT_ID), це
означає, що хтось неавторизований надіслав повідомлення вашому боту. Якщо це
так, проігноруйте повідомлення та зачекайте на наступне повідомлення.
if (chat_id != CHAT_ID){
bot.sendMessage(chat_id, "Unauthorized user", "");
continue;
}
В іншому випадку це означає, що повідомлення надіслано від дійсного
користувача. Отже, можна зберегти це в змінну text та перевірити її вміст.
String text = bot.messages[i].text;
Serial.println(text);
Лист
ЧДТУ 231940.001 ПЗ
51
Змн. Лист № докум. Підпис Дата
Змінна from_name зберігає ім'я відправника.
String from_name = bot.messages[i].from_name;
Якщо бот отримає повідомлення /start , виконується надсилання дійсних
команд для керування ESP32/ESP8266. Це корисно, якщо команди керування
невідомі.
if (text == "/start") {
String welcome = "Welcome, " + from_name + ".\n";
welcome += "Use the following command to get current readings.\n\n";
welcome += "/readings \n";
bot.sendMessage(chat_id, welcome, "");
}
Відправити повідомлення боту дуже просто. Потрібно використовувати
метод sendMessage() на об’єкт бота і передати як аргументи ідентифікатор чату
одержувача, повідомлення та режим аналізу.
bool sendMessage(String chat_id, String text, String parse_mode = "")
У даному прикладі надсилається повідомлення на ідентифікатор, збережений
у змінній chat_id (що відповідає особі, яка надіслала повідомлення) і надсилається
повідомлення, збережене в змінній welcome.
bot.sendMessage(chat_id, welcome, "");
Якщо він отримує повідомлення /readings , зчитуються поточні показання
датчика, викликавши функцію getReadings(). Потім надсилається повідомлення.
if (text == "/readings") {
String readings = getReadings();
bot.sendMessage(chat_id, readings, "");
}
Лист
ЧДТУ 231940.001 ПЗ
52
Змн. Лист № докум. Підпис Дата
В функції Setup(), ініціалізується серійний монітор.
Serial.begin(115200);
Якщо використовується ESP8266, потрібно використовувати такий рядок:
#ifdef ESP8266
client.setInsecure();
#endif
У прикладах бібліотеки Universal Telegram Bot Library для ESP8266 сказано:
« Це найпростіший спосіб змусити це працювати. Якщо ви передаєте
конфіденційну інформацію або контролюєте щось важливе, використовуйте
certStore або принаймні client.setFingerPrint “.
Ініціалізація датчика BME280.
if (!bme.begin(0x76)) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
Ініціалізація Wi-Fi і підключення ESP до локальної мережі за допомогою
SSID і пароля, визначених раніше.
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");}
Лист
ЧДТУ 231940.001 ПЗ
53
Змн. Лист № докум. Підпис Дата
В основному циклі loop(), перевіряється наявність нових повідомлень
щосекунди.
void loop() {
if (millis() > lastTimeBotRan + botRequestDelay) {
int numNewMessages = bot.getUpdates(bot.last_message_received + 1);
while(numNewMessages) {
Serial.println("got response");
handleNewMessages(numNewMessages);
numNewMessages = bot.getUpdates(bot.last_message_received + 1);
}
lastTimeBotRan = millis();
}
}
Коли прийде нове повідомлення, потрібно викликати функцію
handleNewMessages.
while(numNewMessages) {
Serial.println("got response");
handleNewMessages(numNewMessages);
numNewMessages = bot.getUpdates(bot.last_message_received + 1);
}
3.4 Результати тестування
Для завантаження коду проорами на плату ESP, порібно відкрити меню
Інструменти > Плата та вибрати плату, яка буде використана. Перейшовши до
Інструменти > Порт потрібно вибрати COM-порт, до якого підключена плата.
Після завантаження коду потрібно натиснути кнопку ESP на борту EN/RST,
щоб почати виконання коду. Потім відкрити серійний монітор, щоб перевірити, що
відбувається у фоновому режимі.
Лист
ЧДТУ 231940.001 ПЗ
54
Змн. Лист № докум. Підпис Дата
Перейшовши до свого облікового запису Telegram і відкривши бесіду зі своїм
ботом, а також надіславши наступні команди можна побачити відповідь бота:
▪ /start показує вітальне повідомлення з дійсними командами.
▪ /readings повертає поточні показники температури та вологості з
датчика BME280.
Рисунок 25 – Приклад роботи бота
У той же час на моніторі послідовного порту повинно відображатися, що
ESP32 або ESP8266 отримує повідомлення.
Лист
ЧДТУ 231940.001 ПЗ
55
Змн. Лист № докум. Підпис Дата
Рисунок 26 – Приклад відображення інформації в моніторі послідовного порту
Якщо спробувати взаємодіяти зі своїм ботом з іншого облікового запису,
виводиться повідомлення « Неавторизований користувач ».
Таким чином можна створити Telegram Bot для взаємодії з платами ESP32
або ESP8266 NodeMCU. За допомогою цього бота можна використовувати свій
обліковий запис Telegram для моніторингу датчиків і контролю виходів. На
простому прикладі показано, як запитувати показання датчика від датчика
BME280. Ідея полягає в тому, щоб удосконалити проект, додати більше команд для
виконання інших завдань. Наприклад, надіславши повідомлення Telegram,
контролювати виходи, або надіслати повідомлення на свій обліковий запис, коли
виявлено рух.
Перевага використання Telegram для керування платами ESP полягає в тому,
що якщо є підключення до Інтернету, можна контролювати їх з будь-якої точки
світу. Також значною перевагою є відсутність необхідності створення або
Лист
ЧДТУ 231940.001 ПЗ
56
Змн. Лист № докум. Підпис Дата
використання окремого програмного забезпечення для зв'язку з віддаленим
датчиком.
Даний приклад доцільно застосовувати і масштабувати для систем з
невеликою кількістю датчиків. Для використання більшої кількості датчиків,
доцільно використовувати для підключення датчиків окрему плату Arduino. Таким
чином можливо масштабувати систему у великих межах з гнучкою стуктурою.
Лист
ЧДТУ 231940.001 ПЗ
57
Змн. Лист № докум. Підпис Дата
ВИСНОВКИ
В рамках бакалаврської роботи була запропонована система автоматизації
будинку, яка може управляти електроприладами, контролювати доступ до будинку,
запобігати поривам вітру та віддалено отримувати доступ до панелі управління. Під
час роботи було проаналізовано ринок та технологію системи автоматизації
будинку. Сформовано головну мету поточної системи, яку потрібно виконати.
Результатом кваліфікаційної роботи бакалавра є запропонована програмно-
апаратна система продуктів для автоматизації будинку, яка має мінімально-
необхідний набір функцій для вирішення поставлених завдань. Програмна частина
реалізована з використанням середовища розробки Arduino IDE. У апаратне
забезпечення тестової системи входять плати BME280, ESP8266 або ESP32.
Дана система автоматизації є прототипом або основою «розумного будинку».
У неї є недоліки, такі як відсутність повного графічного інтерфейсу панелі
управління, що компенсується відсутністю необхідності створення або
використання окремого програмного забезпечення для зв'язку з віддаленими
датчиками, система не може забезпечити повний контроль доступу, але може
повідомляти користувачів про серйозні ситуації в реальному часі.
Лист
58 ЧДТУ 231940.001 ПЗ 58
Змн. Лист № докум. Підпис Дата
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1. Pajankar A. Raspberry Pi Supercomputing and Scientific Programming /
Ashwin Pajankar. – Munich: Appress, 2017. – 234 с.
2. Dickson B. How to prevent your IoT devices from being forced into botnet
bondage [Електронний ресурс] / Dickson. – 2021. – Режим доступу до
ресурсу: https://techcrunch.com/2016/08/16/how-to-prevent-your-iot-
devices-from-being-forced-into-botnet-slavery/.
3. Building Automation System Clawson Michigan Clawson Manor
[Електронний ресурс]. – 2021. – Режим доступу до ресурсу:
https://cooljohnson.com/Building-Automation-Systems-Michigan/Clawson-
Michigan/Building-Automation-System-Clawson-Manor.html.
4. Cистема умный дом – технология экономии, удобства и комфорта
высокого уровня. – Режим доступу до ресурсу:
http://smarton.com.ua/smart_home/systema_umniy_dom_intro
5. Протокол X10 [Электронный ресурс] // IQ home, 2015. – Режим доступу
до ресурсу: http://www.iq-home.com/tech/x10.html
6. Реле модуль подключение к Arduino [Электронный ресурс] // Сообщество
Zelectro, 2013. – Режим доступу до ресурсу: http://zelectro.cc/relayModule
7. Природнє і штучне освітлення: ДБН В.2.5-28-2006.
8. Building Automation System Clawson Michigan Clawson Manor
[Електронний ресурс]. – 2016. – Режим доступу до ресурсу:
https://cooljohnson.com/Building-Automation-Systems-Michigan/Clawson-
Michigan/Building-Automation-System-Clawson-Manor.html.
9. CEDIA Find: Cool Automation Integrates Smart Air Conditioners with Third-
Party Control Systems [Електронний ресурс]. – 2015. – Режим доступу до
ресурсу: https://www.cepro.com/article/cedia_find_cool_automation_
integrates_ smart_air_ conditioners_with_third_par/.
10. An Overview of Home Automation Systems [Електронний ресурс]. – 2017.
– Режим доступу до ресурсу: https://ieeexplore.ieee.org/document/7791223/.
Лист
59 ЧДТУ 231940.001 ПЗ 59
Змн. Лист № докум. Підпис Дата
11. ZigBee Alliance, “Zigbee Specification,” 2006
12. Gu, H.; DiaoThe design of smart home platform based on Cloud Computing.
In Proceeding of the International Conference on the Design of Smart Home
Platform Based on Cloud Computing, Harbin, China, 12–14 August 2011.
13. Wang, P.; Yao, C.; Zheng, Z.; Sun, G.; Song, L. Joint Task Assignment,
Transmission, and Computing Resource Allocation in Multilayer Mobile Edge
Computing Systems. IEEE IoT J. 2018, 6, 2872–2884.
14. Hu, Q.; Li, F. Hardware Design of Smart Home Energy Management System
with Dynamic Price Response. IEEE Trans. Smart Grid 2013, 4, 1878–1887.
15. КІБЕРКОДЕР. Детальні уроки програмування та завдання для
самостійної роботи [Текст] / "BitKit", 2015. – 104 с.
16. Довідкова інформація Arduino [Электронный ресурс]. – Режим доступу :
https://www.arduino.cc
17. Дэвид Роуз, Дивовижні технології. Дизайн та інтернет речей : навч.
посібник/ Дэвид Роуз. Харків: «Книжный Клуб «Клуб Семейного
Досуга», 2018- 336 с. ISBN978-617-12-5388-9
18. Waher P. IoT: Building ARDUINO-BASED projects: Explore and learn about
Internet of things to develop interactive Arduino-based internet projects: A
course in three modules. Birmingham: Packt Publishing, 2016.
Лист
ЧДТУ 231940.001 ПЗ
60
Змн. Лист № докум. Підпис Дата