Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Записка диплом.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.65 Mб
Скачать
  1. Проектирование информационной системы

    1. Выбор аппаратных средств реализации

Аппаратная конфигурация устройства мониторинга температуры состоит из следующий комплектующих:

  1. Arduino pro mini 5v (Рис. 10) – миниатюрная плата микроконтроллера, позволяющая реализовать алгоритм поведения устройства.

  2. SIM800L (Рис. 11) – недорогой GSM-модуль, нужен для отправки данных на сервер с помощью GPRS.

  3. DS18B20 (Рис. 12) – цифровой датчик температуры, недорогой и соответствует предъявленным к измерению температуры требованиям [7].

  4. Стабилизатор напряжения LM317T – нужен для установления необходимого GSM-модулю напряжения питания.

  5. Блок питания, обеспечивающий постоянное напряжение 5 вольт и силу тока 3 ампера. Максимальная сила тока, потребляемая GSM-модулем – 2 ампера, БП выбирался с запасом.

Все эти составляющие располагаются на спроектированной и изготовленной печатной плате, и защищаются от внешних воздействий корпусом. Для создания прототипа и тестирования прошивки комплектующие располагались на макетной плате, а вместо Arduino pro mini использовался Arduino Uno, имеющий аналогичный контроллер, но более лёгкий для перепрограммирования и подключения к макетной плате.

Рис. 10 Arduino Pro Mini

Рис. 11 GSM-модуль SIM800L

Рис. 12 Цифровой датчик температуры DS18B20

    1. Выбор программных средств реализации

Для создания сервера, принимающего данные от модулей мониторинга, и рассылающего уведомления пользователям, выбрана связка среды выполнения NodeJS [3] и фреймворка Express [4]. Такой выбор обоснован тем, что архитектура сервера в NodeJS позволяет легко реализовать выполнение задач по расписанию, более уверенно чем Apache справляется с большим количеством одновременных запросов, и главное, является гораздо более безопасной без дополнительной настройки благодаря тому, что пользователь не сможет сделать ничего, что не предусмотрел создатель сервера.

Веб-интерфейс администратора также создан на базе NodeJS / Express. Дизайн интерфейса основан на CSS-фреймворке Bootstrap [5]. Чтобы страницы были динамическими, то есть регулярно и быстро обновляли данные без перезагрузки в браузере, используется AngularJS [6] – веб-фреймворк, следующий шаблону проектирования MVC и позволяющий встраивать в HTML-страницы динамические блоки, связанные с описанными источниками данных, обеспечивая синхронизацию содержимого страницы с содержимым соответствующих моделей на лету.

Как сервер, принимающий данные и рассылающий уведомления, так и веб-интерфейс пользуются общей базой данный MySQL – бесплатной популярной реализацией SQL базы данных.

Для описания шаблонов разметки веб-страниц используется шаблонизатор Jade, для стилей – препроцессор CSS Stylus. Оба решения позволяют облегчить стандартный синтаксис HTML/CSS, делают его более прозрачным и читаемым, и привносят некоторый дополнительный функционал, который делает разработку проще и удобнее.

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

Вся веб-составляющая расположена на виртуальном выделенном сервере под управлением CentOS 6 – лёгкой и быстрой Unix-операционной системы.

Программное обеспечение, использованное для работы над устройством мониторинга температуры:

  1. Fritzing – средство разработки и прототипирования электронных устройств с открытым исходным кодом. Использовалось для создания разводки печатной платы.

  2. Arduino IDE – официальная среда разработки ПО для контроллеров Arduino, использовалась для создания алгоритма действия контроллера и его прошивки.