Введение 4
1 Анализ предметной области 6
1.1 Постановка задачи 6
1.2 Актуальность темы бакалаврской работы 7
1.3 Цели и задачи бакалаврской работы 7
1.4 Обзор аналогов 8
1.4.1 Комплект Xiaomi Smart Home 8
1.4.2 Система Google Home 10
1.4.3 Система Amazon Echo 11
1.4.4 Система автоматизации Apple HomeKit 12
2 Проектирование системы 15
2.1 Функциональные требования 15
2.1.1 Функциональные требования работы с устройствами 15
2.1.2 Функциональные требования работы со сценариями 16
2.2 Структурная схема системы 17
2.3 Выбор средств реализации 18
2.3.1 Выбор структуры проекта 18
2.3.2 Выбор способа реализации серверного приложения 20
2.3.3 Выбор программной платформы для реализации задачи 21
2.3.4 Выбор аппаратного обеспечения для реализации задачи 22
2.3.5 Выбор протокола для реализации задачи 23
2.3.6 Выбор интегрированной среды разработки для аппаратного
обеспечения 25
2.3.7 Выбор дизайна для создания удобного интерфейса 26
3 Разработка системы 29
3.1 Структура приложения 29
3.1.1 Выбор шаблона проектирования 29
3.1.2 Разработка контроллеров 31
3.1.3 Разработка представлений 35
3.1.4 Разработка программного кода аппаратной части 36
4 Руководство пользователя 37
5 Практическое применение системы 43
Заключение 45
Список использованных источников 46
В данный момент времени идет тенденция к увеличению качества жизни, так как технологии для этого доступны практически для всех людей. Вы не обязаны разбираться в программировании и электротехнике - готовые программы уже существуют в интернете, а для подключения датчиков можно посмотреть даташит (официальный документ производителя электронных компонентов), где все подробно расписано. Но если у вас нет времени или вам не хочется этим заниматься, подобные системы можно с лёгкостью купить в специализированных магазинах. Подобные системы домашней автоматизации решают следующие задачи:
- дистанционное управление электроприборами;
- обеспечение комфортной среды;
- увеличение свободного времени, которое ранее использовалось на выполнение рутинных задач;
- повышение качества жизни человека.
Подобная система может называть как домашней автоматизацией (англ. home automation), так и умным домом (англ. smart home). Это система домашних устройств, способных выполнять действия и решать определённые повседневные задачи без участия человека. Домашняя автоматизация рассматривается как частный случай интернета вещей, она включает доступные через интернет домашние устройства, в то время как интернет вещей включает любые связанные через интернет устройства в принципе.
Наиболее распространенные примеры автоматических действий в «умном доме» — автоматическое включение и выключение света, автоматическая коррекция работы отопительной системы или кондиционера и автоматическое уведомление о вторжении, возгорании или протечке воды.
Домашняя автоматизация в современных условиях — чрезвычайно гибкая система, которую пользователь конструирует и настраивает самостоятельно в зависимости от собственных потребностей. Это предполагает, что каждый владелец умного дома самостоятельно определяет, какие устройства куда установить и какие задачи они будут исполнять [1].
Цель данного дипломного проекта - разработка программного обеспечения WIFI модуля на базе микропроцессорной системы NodeMCU ESP8266, для реализации автоматизированного управления по беспроводной сети.
Заданием для выпускной квалификационной работы является разработать микропроцессорную систему автоматизации на базе модуля NodeMCU ESP8266 и выполнить следующие пункты:
- провести анализ предметной области, анализ аналогичных решений и их начального конфигурирования;
- разработать способ применения микроконтроллера NodeMCU ESP8266;
- выбрать протокол взаимодействия микроконтроллера с элементами управления;
- разработать структуру программного обеспечения контроллера;
- разработать и протестировать программное обеспечение.
В результате выполнения выпускной квалификационной работы были рассмотрены фабричные системы автоматизации, на основе этого был выделен общие функциональные требования.
В ходе выполнения работы были спроектированы и разработаны системные модули, отвечающие за взаимодействие управляющего устройства с сервером, взаимодействие пользователя с сервером. В пояснительной записке проведен анализ и обоснование выбора средств реализации, разработана архитектура и функциональные требования к системе.
Подводя итоги, можно сказать, что проект может использоваться как замена готовым системам автоматизации при условии, что у вас есть отладочная плата NodeMCU ESP8266, нужные датчики и исполнительные устройства.
Данная система обладает модульностью и расширяемостью, т.е. ее можно дополнять и улучшать в будущем.
1 СТО 4.2-07-2014 "Система менеджмента качества. Общие требования к построению, изложению и оформлению документов учебной деятельности". - Взамен СТО 4.2-07-2012; введ. 30.12.2013. - Красноярск: СФУ, 2013. - 60 с
2 Домашняя автоматизация [Электронный ресурс] // «Википедия
-свободная энциклопедия». - Режим доступа:
https: //ru.wikipedia. org/wiki/Домашняя автоматизация
3 Xiaomi Mi Home [Электронный ресурс] // «Умный дом Xiaomi».
- Режим доступа: https: //xiaomi-smarthome.ru/xiaomi-mi-home/
4 Приложение Google Home - центр управления устройствами умный дом [Электронный ресурс] // Голосовые помощники и умный дом. - Режим доступа: https://voiceapp.ru/articles/google-home-app
5 Что мы знаем об Amazon Alexa? [Электронный ресурс] // Хабр -
сообщество IT-специалистов. - Режим доступа:
https: //habr.com/ru/company/unet/blog/371435/
6 HomeKit - что это такое? Умный дом от Apple [Электронный
ресурс] // Яндекс. - Режим доступа:
https://yandex.ru/turbo/s/sprut.ai/client/article/1039
7 Коржов, В. В. Многоуровневые системы клиент-сервер / В. В. Коржов // Сети/Network world - 1997. - №6.
8 Дейт, Дж. К. Введение в системы баз данных: учебное пособие / Дж. К. Дейт. - Москва, Санкт-Петербург, Киев: Вильямс, 2005. - 41 с.
9 Простым языком об HTTP [Электронный ресурс] // Хабр - Режим доступа: https://habr.com/ru/post/215117/
10 Протокол FTP [Электронный ресурс] // «Википедия - свободная энциклопедия». - Режим доступа: https://ru.wikipedia.org/wiki/FTP
11 Протокол MQTT [Электронный ресурс] // MQTT. - Режим доступа: http://mqtt.org/
12 «Плоский» дизайн - Flat Design [Электронный ресурс] // Powerbranding. - Режим доступа: http://powerbranding.ru/design/flat-design- june13/
13 Fluent Design System [Электронный ресурс] // Fluent Design System. - Режим доступа: https://www.microsoft.Com/design/fluent/#/
14 Material Design Lite [Электронный ресурс] // Material Design Lite. - Режим доступа: https://getmdl.io/
15 Materialize [Электронный ресурс] // A modern responsive front¬end framework based on Material Design. - Режим доступа: https://materializecss.com/...17