Программа Автоматизация научных исследований
![]()
|
Формирование требованийВ ходе проектирования элементов системы «умный дом», в рамках данной работы, были определены следующие базовые направления авто- матизации: Управление системой освещения. Наблюдение и анализ текущего температурного режима. Управление системой отопления. Управление системой охлаждения. Отображение системы управления в виде web-интерфейса. Также были сформулированы базовые сценарии-последовательности дей- ствий системы: в случае, если температура превышает заданный максимум – осу- ществляется включение охлаждения по оптимальному алгоритму; в случае, если температура опускается ниже заданного минимума – производится включение обогревателя по оптимальному алгоритму; включение / отключение выбранного потребителя электроэнергии по нажатию кнопки из web-интерфейса; отключение всех потребителей электроэнергии по нажатию одной кнопки из web-интерфейса; Разрабатываемое решение должно в полной мере обеспечить выпол- нение данных сценариев. В соответствие с вышеизложенным, можно сфор- мулировать требования, которым должна удовлетворять разрабатываемая система домашней автоматизации: считывание показаний с датчиков температуры; управление системой освещения; управление системой охлаждения и отопления по оптимальному ал- горитму; разработка интуитивно-понятного web-интерфейса; графическое отображение показаний с датчиков температуры; возможность включения/отключения потребителей из web-интерфейса. Анализ имеющихся систем управления. Выбор оп- тимального подходаНа сегодняшний день, имеется значительное количество способов ре- шения поставленных в данной работе задач. Существуют следующие под- ходы к их решению: Выбор готовой системы управления «умным домом». Разработка собственной системы. Для ответа на вопрос, относительно выбора способа решения, были сфор- мулированы следующие шаги: Составление списка готовых решений (в том числе тех, которые толь- ко частично удовлетворяют поставленным требованиям). Анализ и подробное рассмотрение составленного списка. В случае, когда решение не подходит для поставленной задачи – изме- нение задачи на альтернативную, не уступающую исходной по функ- циональности. Если ни одно из существующих решений не удовлетворяет поставлен- ным задачам – определение целесообразности дальнейших действий: разработка общего решения, вместо решения узкой задачи; написание тестов и документации. Проведем сравнительный анализ вышеизложенных способов реше- ния поставленных задач. Исследование существующих подходовОдним из самых распространенных путей решения разработки си- стемы домашней автоматизации является использование готовых систем управления «умным домом». Рассмотрим некоторые из них: Node-Red – представляет собой инструмент с открытым исходным кодом, разработанный компанией IBM, позволяющий создавать при- ложения, соединяя готовые компоненты. Эти компоненты могут быть устройствами, WEB API или онлайн-службами. Существенным недо- статком является отсутствие визуализации [13]. SmartVISU – оптимальное решение для быстрой и недорогой уста- новки системы KNX. Компоновка/конфигурация виджетов происхо- дит только через конфигурационный текстовый файл, это является значительным недостатком данной системы управления. Преимуще- ством является наличие интуитивно-ясной визуализации [16]. MajorDoMo – открытая программная платформа для автоматизации домашних процессов. Является кросплатформенной, но имеет один большой недостаток – ограниченное число решаемых задач. Поддер- живает только самые популярные устройства из линейки соответ- ствующей технологии (например, поддерживает только контроллер RaZZbery из всего многообразия контроллеров технологии Z-wave) [12]. NetPing – система мониторинга окружающей среды. Разработчиком и производителем устройств является российская компания «Alentis Electronis». Основная сфера применения – удаленный контроль и мо- ниторинг. Позволяет осуществлять весьма ограниченное количество подключаемых датчиков (до 16 датчиков на 1 устройство). Не удоб- ный и относительно интуитивно непонятный встроенный Web-интерфейс. Сам производитель рекомендует использование стороннего программ- ного обеспечения, например Zabbix, Nagios, PRTG Network [14]. OpenRemote – система автоматизации жилых и промышленных по- мещений. Позволяет создавать мобильное приложение для «умного дома» без навыков программирования. Поддерживает ограниченное количество технологий, такие как KNX, AMX, Z-Wave. Проще говоря, является конструктором, который служит для создания интерфейса мобильного приложения [15]. HomeSapiens – интелектуальная система с голосовым управлением. Также, как и OpenRemote, поддерживает ограниченное количество технологий, такие как Z-wave, Gira, ZigBee, x10, C-Bus. Основной ак- цент разработчиков направлен на рекламу голосового управления и удобного интерфейса [10]. Freedomotic – программное обеспечение с открытым исходным кодом для процессов домашней автоматизации. Является кросплатформен- ной. Основная задача – предоставление энтузиастам возможности са- мостоятельного создания системы управления «умным домом», с ис- пользованием самодельного оборудования или готовых решений по- пулярных архитектур [9]. AgoControl – не бесплатная законченная промышленная система. От- лично подойдет для бюджетной системы автоматизации. Поддержи- вает минимальный набор протоколов и сценариев, имеет web-интерфейс [7]. Fibaro – система домашней автоматизации, поддерживает только бес- проводную технологию Z-Wave. Закрытая система. Удобный для ис- пользования web-интерфейс [8]. Разработка собственной системы управления «умным до- мом»Следующим этапом является разработка собственной системы управ- ления «умным домом». Разработка программного продукта с «нуля» весьма непростая зада- ча, даже с учетом опыта промышленной разработки, потенциала у дан- ного начиная практически нет – с огромной долей вероятности это будет узкоспециализированное решение, жестко привязанное к конкретным ком- понентам системы. В ходе построения архитектуры системы можно допу- стить недочеты, которые в дальнейшем невозможно будет исправить. Разработка собственного решения требует больших финансовых и временных затрат, по сравнению с использованием «коробочного» продук- та. Также не стоит забывать, что процесс разработки – это очень ответ- ственное занятие, требующее продуманной методологии разработки и чет- кой организации трудового процесса. Объединение первого и второго подходовСуть этого подхода заключается в использовании готовой платфор- мы, которая служит сервером «умного дома», и реализации собственных модульных «драйверов», посредством которых осуществляется взаимодей- ствие с системами и устройствами разного вида. Выбор данного подхода позволяет осуществлять реализацию слож- ных сценариев и создавать графические интерфейсы с минимальными вре- менными затратами. |