Введение 4
1 Анализ предметной области 8
1.1 Постановка задачи 8
1.2 Функциональные возможности 9
1.3 Анализ существующих решении 10
1.3.1 Xiaomi 10
1.3.2 IKEA 11
1.3.3 Apple 12
1.3.4 Samsung 12
1.4 Определение параметров комфортности 13
1.5 Вывод по главе 14
2 Проектирование системы 15
2.1 Определение функциональных требований 15
2.1.1 Работа с пользователями 16
2.1.2 Работа с устройствами 16
2.1.3 Работа со сценариями 18
2.1.4 Работа с логом событий 19
2.1.5 Диаграмма прецедентов 19
2.2 Определение структуры приложения 21
2.2.1 Структура контроллеров 23
2.2.2 Структура представлений 24
2.2.3 Структура моделей 26
2.3 Выбор средства реализации 28
2.3.1 Выбор программной платформы для реализации web-клиента 28
2.3.2 Выбор аппаратной платформы для реализации 29
2.3.3 Выбор модели представления данных 30
2.3.4 Выбор протокола 32
2.3.5 Выбор средств разработки 33
2.4 Вывод по главе 33
3 Реализация приложения 34
3.1 Разработка серверного программного обеспечения 34
3.1.1 Разработка системы аутентификации 34
3.1.2 Разработка сервиса передачи данных между сервером и
устройствами 35
3.1.3 Обработка сценариев 37
3.2 Разработка web-клиента 39
3.2.1 Разработка контроллеров 39
3.2.2 Разработка представлений 42
3.2.3 Определение моделей данных 48
3.3 Разработка приложения для аппаратной части 51
3.4 Вывод по главе 52
4 Инструкция пользователя 53
Заключение 63
Список использованных источников 65
Наша жизнь полна рутины, одинаковых действий, выполняемых изо дня в день в один и тот же промежуток времени. Каждый из нас перед выходом из дома проверяет закрыты ли окна, выключен ли свет, перекрыта ли вода. Если в доме есть питомец - нельзя забывать о его питании. То же самое можно сказать и растениях - если не позаботиться о них должным образом, то они могут засохнуть. Но повседневность сегодня такова, что по приходу домой единственное желание, которое у нас появляется - это лечь спать, чтобы побыстрее добраться до выходных. Но даже здесь появляются трудности - вы уже легли, но забыли выключить лампу, а выключатель слишком далеко, шторы не закрыты, а свет фонарного столба как на зло бьет вам прямо в глаза. Эти действия могут негативно сказываться как и на общей жизнедеятельности человека, так и на его психологическом состоянии, на его здоровье и уровне продуктивности. Время - один из главных ресурсов, оно расходуется куда быстрее, пока мы выполняем все эти действия день ото дня.
Развитие науки и техники, а также сетей Интернет, создало новое направление продуктов, тесно связанных с нашей повседневной жизнью. Речь идет о концепции «Умный дом» и «Интернета вещей». Эти концепции неразрывно связаны. Так как в доме могут быть находится вещи, которые связаны между собой и непосредственно связаны с домом (помещением), в котором они находятся. Следующим шагом в развитии этого направления стало развитие решений задач автоматизации - процесс выполнения определенных повседневных задач без участия человека.
Автоматизация включает в себя решение таких задач, как:
- управление источниками света;
- коррекция работы отопительной системы;
- уведомление об угрозе жизни (вторжение, возгорание, протечка воды).
Современные системы дают пользователям возможность гибкой настройки под свои нужды и предлагают широкий спектр датчиков и исполнительных устройств. Несмотря на разных производителей подобных систем, существуют основные типы устройств, присутствующих в каждой системе и решающих выше представленные задачи.
Основными устройствами системы автоматизации являются:
- Головное устройство - устройство, регулирующее входные данные и исполнительные устройства, связывая их в единую сеть и обеспечивая доступ в сеть интернет для доступа откуда угодно;
- Датчики - устройства, позволяющие системе считать текущее состояние внешней среды;
- Исполнительные устройства - устройства позволяющие выполнять действия на основе поступающей команды или изменения состояний внешней среды.
Связь может осуществляться как по проводным сетям Ethernet, так и по беспроводным сетям (Wi-Fi), при этом датчики и исполнительные устройства делятся на три основных типа: систему безопасности представленную в таблице 1, систему управления освещением представленную в таблице 2 и систему управления климатом представленную в таблице 3, которые решают три основные задачи. Данные задачи решаются системами автоматизации, и в таблицах можно увидеть различные предлагаемые алгоритмы работы...
В процессе выполнения выпускной квалификационной работы целью которой является создание доступной системы управления комфортностью были выполнены следующие задачи:
- был проведен обзор аналогов, благодаря которому был определен список функциональных требований и получено представление о создаваемой системе;
- было проведено проектирование системы;
а) определены функциональные требования для следующих модулей:
1) передача данных между устройством и сервером;
2) работа с пользователями;
3) работа со сценариями;
4) работа с логом событий;
5) работа с устройствами;
б) определена структура приложения, при которой был проведен выбор средств разработки и реализации для:
1) программной платформы для реализации web- приложения;
2) аппаратной платформы для реализации;
3) модели представления данных;
4) протокола для связи сервера и подключаемых устройств;
в) реализовано приложение:
1) с использование шаблона mvc;
2) разработана серверная часть;
3) разработан web-клиент;
4) разработано приложение для отладки аппаратной части;
система полностью удовлетворяет полученным требованиям, а
именно:
а) состав системы состоит из сервера, веб-приложения, устройства с подключенными к нему датчиками и исполнительными устройствами;
б) передача данных осуществляется с учетом возможной потери данных и в корректном виде через протокол mqtt;
в) вывод данных и управление устройствами осуществляется через простой в использовании интерфейс;
г) система решает следующие задачи:
1) управление освещением;
2) управление другими системами (безопасности, климата);
Если рассмотреть требуемые функциональные возможности, то было реализовано:
- возможность включения/выключения подключенных к системе осветительных приборов, как по состоянию внешних условий, так и по активации пользователя;
- управление другими системами (безопасности, климата);
- пользовательский интерфейс в виде веб-приложения;
- серверная часть, реализующая логику обработки поступающих данных. Данная бакалаврская работа написана в соответствии с нормами СТО 4.2¬07-2014 Система менеджмента качества [24].
1. Системы умного дома [Электронный ресурс]: Tadviser.ru - Режим доступа: https://tadviser.ru/index.php/CTaTba:Системы, умного дома
2. Глупый умный дом. Часть 2. Xiaomi [Электронный ресурс]: mobile- review.ru - Режим доступа: https://mobile-review.com/articles/2019/smart-home-
3. shtml
3. Глупый умный дом. Часть 3. IKEA [Электронный ресурс]: mobile- review.ru - Режим доступа: https://mobile-review.com/articles/2019/smart-home- 3.shtml
4. Глупый умный дом. Часть 2. Apple [Электронный ресурс]: mobile- review.ru - Режим доступа: https://mobile-review.com/articles/2019/smart-home- 2.shtml
5. Глупый умный дом. Часть 2. Samsung [Электронный ресурс]: mobile- review.ru - Режим доступа: https://mobile-review.com/articles/2019/smart-home- 2.shtml
6. ГОСТ 30494-2011 Здания жилые и общественные. Параметры микроклимата в помещениях. - Введ. 01.01.2013. - Москва : Стандартинформ, 2014. - 4 с.
7. Построение полноценного MVC веб-сайта на ExpressJS
[Электронный ресурс]: Habrahabr - Режим доступа:
https://habr.com/ru/post/192256/
8. Официальный сайт Node.js [Электронный ресурс]: Node.js - Режим доступа: https: //nodej s. org/en/
9. Официальный сайт NodeMCUv.3 [Электронный ресурс]: NodeMCU - Режим доступа: http: //www. nodemcu.com/index en.html
10. Как работает реляционная БД [Электронный ресурс]: Habrahabr - Режим доступа: https: //habr.com/ru/company/mailru/blog/266811/
11. SQL или NoSQL — вот в чём вопрос [Электронный ресурс]: Habrahabr - Режим доступа: https://habr.com/ru/company/ruvds/blog/324936/
12. Официальный сайт MySQL [Электронный ресурс]: MySQL - Режим доступа: https: //www.mysql .com/
13. Система управления базами данных MongoDB [Электронный ресурс]: MongoDB - Режим доступа: https://www.mongodb.com/
14. Data Distribution Service (DDS) [Электронный ресурс]: DDS- Foundation - Режим доступа: https://www.dds-foundation.org/what-is-dds-3/
15. Habrahabr Протокол MQTT: концептуальное погружение
[Электронный ресурс]: Habrahabr. - Режим доступа:
https://habr.com/ru/post/463669/...23