Диплом: Разработка программного обеспечения алгоритмического управления для систем автоматизации зданий

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
22
ГЛАВА 2. Проектирование автоматизированной системы
управления зданием
2.1 Разработка схемы взаимодействия компонентов системы.
В первой главе были подобраны некоторые компоненты системы. Все
их можно разделить на четыре условные группы
1. Серверная часть. В качестве сервера выступает компактный
компьютер Raspberry Pi B+ (можно применить более дешевые
аналоги). Его мощности вполне достаточно для обеспечения
работы web сайта, на котором крутится пользовательский
интерфейс, работы демона (сервиса), обеспечивающего связку
сервера с отдельными модулями и работу базы данных
MySQL, в которой будет храниться вся информация о работе
системы.
2. Микроконтроллеры. Отдельные, независимые дуг от друга
модули управления, построенные на базе чипа ESP8266 и
выполняющие функции по сбору, первичной обработке и
отправке на сервер данных с подключенных датчиков, а так же
управлению нагрузками (реле, сервоприводы, клапаны, замки и
т.п.)
3. Конечное оборудование. Всевозможные датчики, реле и
прочие измерительные и исполнительные устройства.
4. Сетевая часть. Сетевая инфраструктура представляет собой
Wi-Fi сеть, работающую на частоте 2,4 мегагерца. В качестве
точки доступа и маршрутизатора выступает Zyxel Keenetic 4G
III.
Схема построения локальной сети представлена на рисунке 13.
23
Рисунок 13. Схема построения сети.
При построении сети для больших зданий может потребоваться
установка дополнительных точек доступа или повторителей.
Детально разберем принцип взаимодействия элементов системы.
Единой точкой обмена информацией является база данных MySQL. В
базе данных хранится информация о найденных в сети модулях ESP8266, их
IP и MAC адресах, конфигурации портов. Все запросы пользователей
обрабатываются WEB сервером и заносятся в базу данных.
Пользователю доступны следующие функции:
1. Просмотр найденных в автоматическом режиме модулей.
2. Настройка каждого из модулей для приведения в соответствие
программной и аппаратной части.
3. Назначение связок датчик/исполнительное устройство/временные
интервалы для работы демона.
4. Создание сценариев работы системы. Назначение граничных
параметров датчиков.
24
5. Настройка информационного окружения главной страницы сайта
управления
6. Просмотр диагностической и служебной информации о работе
системы.
7. Просмотр статистики измерений
Так же пользователь может отключить любой модуль, для прекращения
работы с ним.
В системе реализован механизм автоматического поиска
установленных модулей.
Автоматический поиск модулей ESP8266 разделен на несколько
этапов:
1. Модуль поиска отправляет в локальную сеть широковещательный
ICMP пакет. В моем случае используется сеть 10.0.0.0/24,
широковещательный адрес для этой сети 10.0.0.255.
2. Каждый из узлов сети отвечает на данный пакет. Таким образом,
формируется таблица IP адресов всех хостов с сети.
3. Модуль поиска начинает опрашивать каждый хост из этой таблицы
в поисках хостов сети, отвечающих на стандартный HTTP запрос по
порту 81 или HTTPS по порту 4433 (зависит от настройки системы).
4. Получив ответ, модуль анализирует полученную информацию. В
случае получения данных, подходящих по формату и содержащих
ключевые поля данный хост добавляется в таблицу устройств, в
случае отсутствия его в данной таблице. Хосты, которые уже
находятся в таблице устройств, проверяются на работоспособность,
и помечаются, как отключенные в случае недоступности.
Данный поиск может осуществляться в автоматическом режиме по
расписанию, так и вручную. Второй вариант необходим при
25
установке системы или ее модернизации и существенно экономит
время персонала, проводящего работы.
Программный модуль автоматического поиска устройств может быть
отключен, а добавление новых устройств может производиться вручную.
Демон – главная программа, принимающая решение о совершении
действия в системе. Демон, так же как и пользователь работает с базой
данных, прямого взаимодействия демона и пользователя нет. В случае
большого количества модулей ESP8266 могут возникнуть проблемы с
большим временем опроса модулей, в этом случае предусмотрено
«размножение» демонов, с назначением каждому из них отдельного пула
модулей.
Демон, считав конфигурационные данные из БД, опрашивает модули
ESP8266, обрабатывает полученную информацию, сверяется с пороговыми
значениями, указанными пользователем для конкретного сценария и
принимает решение о совершении или не совершении действия в системе.
Взаимодействие демона и отдельных модулей ESP8266 осуществляется
по протоколу HTTP (или HTTPS) и использует не стандартный порт 81. При
обмене информацией между модулями ESP8266 и демонами используется
формат данных JSON.
По умолчанию все модули ESP8266 идут со всеми портами,
сконфигурированными как порт ввода (INPUT) и без назначенного
обработчика. Это означает, что любой вновь установленный модуль, не
проходивший процедуру инициирования, при обращении к нему будет
выдавать только текущее состояние порта.
Схема взаимодействия контроллеров, демона и БД представлена на рисунке
14.
26
Рисунок 14. Схема взаимодействия контроллеров, демона и БД
На данной схеме представлено типовое «общение» демона с базой
данных и контроллерами. Все вычисления производятся внутри демона. В
базу данных сохраняются только «чистые» данные.
Распишем более подробно:
1. Демон отправляет запрос «read» контроллеру
2. Контроллер, получив запрос, опрашивает датчики и порты
ввода/вывода, аккумулирует и первично обрабатывает информацию
3. Котроллер отправляет аккумулированную информацию в виде JSON
массива демону.
4. Демон разбирает JSON, отправляет данные в БД, сохраняя
полученные данные для оперативной работы
5. Демон запрашивает из БД пороговые значения для портов
контроллера, с которым в данный момент работает.
6. Демон сравнивает пороговые значения, полученные из БД, с
данными полученными от контроллера и принимает решение о
воздействии на соответствующий порт.
7. Контроллер, получив команду, изменяет состояние порта, результат
выполнения отправляет демону.
8. Демон, получив данные от контроллера, разбирает массив и
записывает их БД.
27
2.2 Разработка схемы локальной сети для обеспечения
взаимодействия компонентов системы.
Создаваемая система управления не требует никаких сложных настроек
сети. Для работы системы необходима сеть, построенная на базе стека
протокола TCP/IP. В качестве транспорта используется беспроводная сеть
Wi-Fi.
Для обеспечения безопасности системы в целом в сети Wi-Fi
реализован механизм защиты доступа к беспроводной сети и шифрования
данных, передаваемых в ней WPA2.
Технология WPA2 пришла на смену технологии WPA, которая в свою
очередь, представляла собой доработанную технологию WEP (Wired
Equivalent Privacy). В настоящее время технологии WEP и WPA считаются
уязвимыми, поэтому в создаваемой сети была использована технология
защиты сети WPA2.
Технология WPA2, по своей сути, является суммой нескольких
технологий. К ним относятся:
1. 802.1.х
2. EAP
3. TKIP
4. MIC
5. CCMP
6. AES
Описание данных технологий выходит за рамки данной работы и будет
опущено.
Штатный функционал WPA2 подразумевает использование RADIUS
сервера для аутентификации пользователя в сети. Так как аутентификация с
использованием RADUIS сервера в данном случае будет избыточной -
используется упрощенная реализацией технологии WPA WPA2-PSK (Wi-Fi
Protected Access Pre-Shared Key).
28
WPA2-PSK подразумевает использование одного пароля (ключ сети),
устанавливаемого на точке доступа или маршрутизаторе. При подключении к
сети клиенту необходимо предоставить ключ сети. Если ключи совпадают –
пользователь получает доступ к сети.
Как упоминалось выше, в сети используется стек протоколов TCP/IP.
Адресное пространство IP выбрано из, так называемых, серых или
фэйковых адресов (адресов, предназначенных для использования в
локальных сетях и не маршрутизируемых в сети Интернет). Была выбрана
сеть 10.0.0.0/24 из диапазона адресов 10.0.0.0/8, прописанного в RFC 6890
(Сети специального назначения).
В сети с маской /24 (она же 255.255.255.0) можно разместить до 254
хостов, из которых один будет занят для использования в маршрутизаторе,
остальные будут поделены между отдельными модулями ESP8266,
клиентскими терминалами и серверами.
Использование более широкой маски считаю в данном случае не
целесообразным.
В качестве клиентского терминала может выступать любое устройство,
имеющее возможность подключения к сети как проводной, так и
беспроводной, имеющее в составе своего программного обеспечения
средства работы с web сайтами (в устройстве должен присутствовать
браузер). К терминалам можно отнести:
1. Персональный компьютер, включая ноутбуки.
2. Планшетные компьютеры.
3. Смартфоны.
4. SmartTV. Некоторые модели современных телевизоров имеют в
составе своего ПО браузер.
5. Медиа проигрыватели.
29
2.3 Разработка схемы электропитания системы.
Для обеспечения стабильной бесперебойной работы всей системы
потребуется обеспечить стабилизированным питанием все компоненты
системы.
Для этих целей разработаем схему простого бестрансформаторного
блока питания, способного обеспечить стабильное питание отдельных узлов.
Так как в системе может использоваться несколько напряжений
питания - требуется разработка универсальной схемы блока питания.
Принципиальная схема представлена на рисунке 15.
Рисунок 15. Универсальный бестрансформаторный блок питания с
регулируемым выходным напряжением.
Данный блок питания отличается компактными размерами и простотой
исполнения. LM317 обеспечивает стабилизацию напряжения с погрешностью
всего 0,1%. При использовании LM317 возможна настройка блока питания
для разных потребителей. Так для питания модуля ESP8266 требуется
питание в 3,3 вольта (в исполнении NodeMCU 5v), компьютер Raspberry Pi
питается от 5 вольт, для подключения внешних электромагнитных реле
может потребоваться питание от 5 до 12 вольт. Подбором резистора R4
можно обеспечить любое из требуемых выходных напряжений из диапазона
30
от 1,2 до 37 вольт. При этом стабилизатор LM317 способен обеспечить ток
потребления до 1,5 ампера.
2.4 Разработка схем подключения внешних датчиков и
исполнительных устройств
Для подключения датчиков требуется обеспечить правильное
подключение их к портам микроконтроллера, а так же обеспечить
гальваническую развязку порта контроллера и нагрузки, например для
подключения датчика напряжения.
Рассмотрим схемы подключения датчика температуры DS1820.
Для правильной работы датчика DS1820 его необходимо подключить
согласно схеме рисунок 16.
Рисунок 16. Схема включения линии 1-Ware к порту
микроконтроллера.
Так же работа датчиков DS1820 возможна только по двум проводам
дата и земля. При этом питание датчика снимается с Data порта (порта
ввода/вывода) микроконтроллера. При этом к негативным последствиям с
использованием паразитного питания можно отнести увеличение времени
отклика датчиков.
Свободный вход микросхемы, особенно высокоомный, может, под
воздействием помех, в процессе работы устройства, оказываться в различных
31
состояниях. Напряжение помехи может интерпретироваться
микроконтроллером как логическая единица, логический ноль либо может
попасть в зону неопределенности (зона значений между логическими
единицей и нулем). Это может привести к сбоям в работе микроконтроллера.
На практике всем неиспользуемым портам микроконтроллера задается
заранее определенное логическое значение путем подключения резистора
между портом ввода/вывода и землей для задания логического нуля или
плюсом, для задания логической единицы.
По той же причине при подключении тактовой кнопки необходимо
задавать заранее определенное состояние порта ввода/вывода как логический
ноль. В противном случае значение на порту может меняться хаотично.
В нашем случае для обеспечения взаимодействия человека и системы
управления используется бистабильное (импульсное реле). Использование
данного реле так же упрощает, в случае необходимости, организацию
проходного выключателя.
Схема включения выключателя с использованием бистабильного реле
представлена на рисунке 17.
Рисунок 17. Схема подключения выключателя (кнопки) с
использованием бистабильного реле.

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран