По всем вопросам звоните:

+7 495 274-22-22

УДК: 004.384

Проектирование основного модуля программного обеспечения ведущего устройства для системы домашней автоматизации «умный загородный дом»

С. С. Крамчанинов магистр, Донской государственный технический университет
Л. В. Черкесова д-р физ.-мат. наук, проф. кафедры КБИС, Донской государственный технический университет, г. Ростов-на-Дону

Разрабатываемая авторами система автоматизации «Умный загородный дом» для загородных хозяйств. В статье описывается создание основного модуля (ядра), который запускает все элементы и позволяет остальным модулям безопасно взаимодействовать друг с другом.

Литература:

1. Крамчанинов С.С., Черкесова Л.В. Разработка системы автоматизации загородного дома и ведения домашнего хозяйства (Умный загородный дом) // Молодой исследователь Дона. – 2017. – №3 (6). – С. 40–44.

2. Node.js // Википедия [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/w/ index.php?title=Node. js&oldid=60839653 (дата обращения: 15.10.17).

3. Каскиаро М. Шаблоны проектирования Node.js / М. Каскиаро, Л. Маммино. – М.: ДМК Пресс, 2017.

4. Гамма, Э. Приемы объектно-ориентированного проектирования. Паттерны проектирования / Э. Гамма и др. – СПб.: Питер, 2015.

5. Пауэрс Ш. Изучаем Node. Переходим на сторону сервера. – 2-е изд. – СПб.: Питер, 2017.

6. ChildProcess // Node.js v 9.10.1 Documentation [Электронный ресурс]. – Режим доступа: https://nodejs.org/api/ child_process.html (дата обращения: 11.01.18).

Система автоматизации загородного дома и ведения домашнего хозяйства «Умный загородный дом» разрабатывается для людей, которые имеют загородный дом и подсобное хозяйство в условиях небольшого бюджета и относительной отдалённости от города. Разработка ведётся с учётом того, что пользоваться системой будут люди, плохо знакомые с компьютером, это важно для пожилого населения, а для установки и настройки системы необходимы базовые навыки работы с компьютером и электротехникой [1].

Система разделяется на 2 части: ведущее устройство (компьютер) и ведомое устройство (микроконтроллер).

Для удешевления аппаратной части системы было принято решение в ведущем устройстве использовать программную платформу Node.js, которая может работать на многих операционных системах, тем самым предоставляя большой выбор устройств конечному потребителю.

Node или Node.js – программная платформа, основанная на движке V8 (транслирующем JavaScript в машинный код), превращающая JavaScript из узкоспециализированного языка в язык общего назначения. Node.js добавляет возможность JavaScript взаимодействовать с устройствами ввода-вывода через свой API (написанный на C++), подключать другие внешние библиотеки, написанные на разных языках, обеспечивая вызовы к ним из JavaScript кода [2].

Разработка ведётся модулями для масштабируемости системы. Основой программного обеспечения ведущего устройства является главный модуль системы, который имеет имя main.js и находится в корневом каталоге системы, файл со свойствами системы имеет имя config.json и находится там же.

В разработке основного модуля системы (ядра программного обеспечения ведущего устройства) используются такие шаблоны проектирования, как:

– реактор (Reactor) – шаблон, лежащий в основе асинхронной природы платформы Node.js;

– обратный вызов (Callback) – функции, вызываемые для передачи результата операции. Заменяют использование инструкции return, которая всегда выполняется синхронно;

– открытый модуль (RevealingModule) – шаблон использует возможность автоматического вызова функции для создания ограниченной области видимости и экспортирования только тех элементов, которые должны быть общедоступными;

Для Цитирования:
С. С. Крамчанинов, Л. В. Черкесова, Проектирование основного модуля программного обеспечения ведущего устройства для системы домашней автоматизации «умный загородный дом». Строительство: новые технологии - новое оборудование. 2018;11.
Полная версия статьи доступна подписчикам журнала
Язык статьи:
Действия с выбранными: