Кошик
20 відгуків
ПП Будпостач газобетон, дом из газобетона, газобетон цена, газоблок цена, газоблоки Киев, газоблок
+380 (67) 548-64-12
+380 (67) 760-76-88
+380 (66) 087-53-08

Розумний будинок своїми руками, схема інформаційного обміну

Розумний будинок своїми руками, схема інформаційного обміну

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

У попередній статті я розповів про загальні принципи, на яких має будуватися система автоматизації будинку. Зараз же, перш ніж приступити до розгляду шкірного модуля, блоку, елемента системи окремо, хотілося б поділитися думками щодо загальносистемного інформаційного обміну. З моєї точки зору система Розумного Будинку ентузіаста (а ми говоримо насамперед про «своїх руках") винна будується в ідеології багатозадачності, багатопоточності, множинності працюють паралельно процесів. Мікроклімат в будинку, комфорт, безпека і економічність ― це ті природні процеси, які йдуть одноразово, альо в тій же година взаємозалежне. Логічним було б і управляти цими процесами відразу, за допомогою різних програмних блоків, пов'язаних між собою інформаційними зв'язку обов'язками.

Розумний будинок ― конструктор
 

Розумний будинок своїми руками

Як я вже говорив, з моєї точки зору немає необхідності винаходити "велосипед" і робити все "з нуля" самостійно. Навряд чи вийде краще, ніж у тих, хто займається цим роками. Тому якщо якась та завдання або хоча б елемент у реалізації Розумного Будинку вже вирішена, потрібно постаратися використовувати чужий досвід. Так ми знаходимо, що функція відеоспостереження вже вирішена за допомогою програми ZoneMinder, функція візуалізації, представлення даних, інтерфейсу вирішена за допомогою Apache і всіляких фреймворків і CMS, функція координації, а також планування завдань ― за допомогою вбудованих сервісів операційної системи, а функція для управління датчиками, виконавчими механізмами та іншими пристроями Розумного Будинку за допомогою owfs, якщо мова йде про 1-wire, або іншими бібліотеками, програмами та рішеннями, якщо мова йде про X-10, Modbus та інших стандартах.

Наше завдання полягає у двох промовах:

1. зібрати в єдине ціле і зв'язку зв'язати між собою в єдину систему різні програмні блоки;
2. розробити високорівневу логіку роботи всієї системи (що, коли і навіщо включати і за якими алгоритмами)

В якості операційної системи я застосовую Linux. Ця ОС дуже вдало вписується в ідеологію своєрідного конструктора, середовища, в якому абсолютно різні процеси можуть бути пов'язані між собою десятками різних способів. Безумовно, будь-яка сучасна ОС, у тому числі Windows підходить для вирішення цього завдання, але в Unix-подібних системах набагато легше при необхідності проникнути крізь візуальний десктоп, вглиб, до системних процесах. У Unix ми знайдемо більше способів для сполучення різних програм між собою. Саме в Unix з'єднання явилися і розвиваються Інтернет-рішення, які я використовую ― це їх рідна середу. Альо, тім не менш, все це також прекрасно працює в Microsoft Windows, хоча і з певними складнощами.

Телевізор з доступом в Інтернет

Розумний будинок своїми руками

Ітак, моя система автоматизації Розумного Будинку побудована на Інтернет-рішеннях, а саме на таких програмних блоках як Web-сервер, реляційна база даних, скриптові мови програмування, на таких протоколах як TCP-IP, HTTP, на таких стандартах як HTML, CSS. І вибір цей далеко не випадковий. Інтернет-технології міцно увійшли в наше життя і це проникнення триває. Вже дуже багато побутові прилади та обладнання мають підтримку зазначених протоколів і стандартів. Таким чином, вже зараз можна вибирати для дому ті обладнання, яке управляється через Інтернет-технології, а в майбутньому такі пристрої буде, думаю, превалювати. Ми вже маємо на сьогоднішній день не тільки побутові медіа-плеєри з підтримкою TCP, SMB, Ethernet, а й холодильники, мікрохвильові печі і навіть пральні машини. Нехай Вас не лякає той факт, що іноді до приладу потрібно підвести кабель UTP Cat 5. Все більше пристроїв підтримують Wi-Fi та інші радіо-технології. Стандарти Інтернет давно вже показали свою перспективність, гнучкість, надійність і головне ― довговічність. Скриптові мови програмування, такі як PHP, Perl, Python активно розвиваються, прості у використанні, підтримуються всіма платформами, мають величезну кількість бібліотек, баз знань і рішень.

Кабель UTP, RJ-45

Розумний будинок своїми руками

Программіровать інтерфейс між системою і людиною тім більше потрібно саме на Інтернет-рішеннях, так як це дозволить контролювати і змінювати роботу систем Розумного Будинку не тільки з локальної мережі будинку, але і через Інтернет або навіть мобільний телефон. Більшість сучасних мобільних телефонів мають вбудовані Web-браузери. Навіть побутові телевізори вже почали виробляти з можливістю доступу в Мережу і Інтернет браузером. Сидячи на домашньому дивані, не включаючи комп'ютер можна буде і подивитися камери спостереження і дистанційно відкрити двері сусідові. І все це без будь-яких складних апаратних конвертерів, мультиплексорів, перехідників. Та й сам Web-інтерфейс не потрібно переробляти під конкретні пристрої. Сучасні засоби CSS + HTML дозволяють робити так звані "гумові" Інтерфейси, які самі адаптуються до розміру і дозволу екрану. Сучасні фреймворки і бібліотеки самі визначають які стандарти підтримує клієнтське ПЗ, а які ні і використовують потрібні компоненти.

Розумний будинок своїми руками

Важливою відмінною рисою такого підходячи є тієї факт, що для супроводу такої системи або її розширення можливо залучати сторонніх фахівців, що займаються у сфері Інтернет-технологій, Web-програмістів та адміністраторів. Справа в тому, що скриптові мови, такі як PHP або Perl НЕ компілюються і не кодуються. Написані для Розумного Будинку програми завжди існують у вигляді вихідних кодів, що дозволяє вносити до них будь-які корективи. До речі, ця особливість також цікава і з точки зору віддаленої корекції коду програми. Наприклад, будучи у від'їзді, я зміг віддалено за допомогою SSH зайти на свій сервер через Інтернет і виправити помічену помилку в регулюванні опалення, пов'язану з помилкою в управлінні 3-х ходовим змішувачем.

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

 

Розумний будинок своїми руками

Центром системи є СУБД. У моєму випадку використовується MySQL, але можна використовувати будь-які системи управління базами даних, такі, наприклад, як Oracle або Microsoft SQL. MySQL дуже невелика і функціональна система, зручна для зберігання не дуже великої кількості даних. Однак у цій СУБД немає багатьох можливостей, доступних в Oracle. Останній набагато більш адаптований для роботи з великою кількістю користувачів і величезними масивами даних. Втім, для роботи систем Розумного Будинку досить простою і зручною СУБД MySQL.

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

Розумний будинок своїми руками

Альо зберігання всіх даних в централізованій СУБД зручно не тільки з точки зору обміну інформації між керуючими модулями, але і з точки зору моніторингу роботи системи через вже згаданий Веб-інтерфейс. Це свого роду такий же клієнт СУБД, як і модулі управління. Веб-інтерфейс через СУБД має можливість переглядати, аналізувати поточні дані, а також керувати роботою окремих програм, але не безпосередньо, а опосередковано. Іншими словами, модулі працюють на базі тих даних, які є в СУБД і існує можливість, як за допомогою Веб-інтерфейсу, так і за допомогою інших модулів і програм управляти алгоритмами роботи. Очевидно, що це вельми гнучкий і зручний механізм побудови такого роду систем. Клієнт-сервер.

Така ідеологія і підхід до вирішення проблеми автоматизації будинку дуже зручний з точки зору розширення системи або її зміни, коли всі блоки працюють паралельно, пов'язані між собою, але в теж час незалежні один від одного. У нас завжди є можливість завершити роботу будь-якого блоку без якого-небудь істотного впливу на роботу інших систем. Єдиним критично-важливим елементом у цій схемі є сама СУБД, без якої вся подальша робота неможлива. Альо насправді потенційно "ризиковані" елементи цієї схеми все-таки самописние скрипти управління, а такий надійний і стабільний продукт як MySQL.

Статті pp-budpostach.com.ua Все про лазні

Статті по пїноблоку,пінобетону,пінобетонним блокам

Статті pp-budpostach.com.ua Статті по бетону

Статті Все про парканах

Статті pp-budpostach.com.ua Все про дахах ( види, матеріал, як краще вибрати)

Статті Все про Фундаменті

Статті по газобетону ( газоблокам ), газобетонних блоків, блоків газосиликатнных

Новини, статті, чутки, факти, різне і по чу-чуть

Статті по цеглині ( рядовому, особового,облицювальної,клинкерному, шамотною, силікатній,)

Інші статті

Наскільки вам зручно на сайті?

Розповісти Feedback form banner