РАЗРАБОТКА ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА СБОРА И ХРАНЕНИЯ ДАННЫХ ТЕРМОМЕТРИИ

Разработка программно-аппаратного комплекса сбора и хранения

данных термометрии

Ш.А. Оцоков, Э.А. Челышев, Д.В. Шибитов, М.В. Раскатова Национальный исследовательский университет «МЭИ», Москва

Аннотация: В статье описывается разработка программно-аппаратного комплекса сбора и хранения данных термометрии, состоящего из модуля сбора и передачи данных на сервер и базы данных, осуществляющей хранение полученных измерений. Модуль сбора и передачи данных был реализован на базе платформы Arduino Uno, передача данных на сервер велась с использованием протокола MQTT. База данных была реализована с использованием системы управления базами данных MySQL. Разработанный программно-аппаратный комплекс был испытан на теплоэлектроцентрали Московского энергетического института.

Ключевые слова: измерительное устройство, термопара, Arduino, Wi-Fi, MQTT, издатель, брокер, подписчик, интернет вещей, MySQL, база данных, теплоэлектроцентраль.

Введение

Современный мир характеризуется увеличением роли систем автоматической обработки информации. Все большую популярность получают сейчас технологии интернета вещей [1]. Особое значение технологии интернета вещей начинают приобретать в промышленной сфере, например, в энергетике. Постоянный автоматический мониторинг показаний температуры, давления и прочих важных параметров энергетического оборудования способен упростить его техническое обслуживание и помочь в определении предаварийных ситуаций. Кроме того, собранные с энергетического оборудования данные могут быть в дальнейшем использованы для создания интеллектуальных средств управления объектами энергетики.

В данной статье рассматривается разработка программно-аппаратного комплекса сбора и хранения данных термометрии, состоящего из модуля сбора и передачи данных и базы данных, расположенной на сервере. Модуль сбора и передачи данных реализован с использованием платформы Arduino Uno с микроконтроллером ATmega328 и предназначен для опрашивания

измерительных термометрических устройств и передачи собранных данных по сети при помощи микроконтроллера EPS-12 с поддержкой протокола Wi-Fi. База данных реализована с использованием системы управления базами данных MySQL и осуществляет функцию хранения данных. Разработанный программно-аппаратный комплекс является прототипом системы сбора и обработки данных с объектов энергетики.

Сравнение с аналогами

Стоит отметить, что исследования по применению платформы Arduino и технологий интернета вещей для контроля параметров некоторой системы ведутся уже достаточно давно. Так, например, в статье [2] описывается разработка программно-аппаратного комплекса для измерения температуры окружающей среды с использованием термистора и платформы Arduino. Измеренные таким образом показания передаются на компьютер и визуализируются при помощи программной среды LabVIEW.

Разработка программно-аппаратного комплекса дистанционного управления микроклиматом теплицы рассматривается в [3]. В данной работе к платформе Arduino подключен ряд измерительных и исполнительных устройств. Первые позволяют получать сведения о микроклиматических показателях внутри теплицы, а вторые способны влиять на ее микроклимат. Для удобной работы с пользователем было разработано веб-приложение. Передача данных в рамках рассматриваемой системы осуществляется с использованием протокола Wi-Fi.

В работе [4] также рассматривается разработка системы мониторинга, основанной на технологиях интернета вещей. Данные с ряда датчиков передаются в удобное и интуитивно понятное веб-приложение, разработанное с использованием языка программирования PHP и системы управления базами данных MySQL.

Рассматриваемый в данной статье программно-аппаратный комплекс имеет ряд отличий от рассмотренных выше. Во-первых, для передачи данных по сети использовался протокол прикладного уровня MQTT (англ. Message Queuing Telemetry Transport), обеспечивающий надежную связь даже в условиях нестабильного канала передачи и ограниченной пропускной способности [5, 6]. Во-вторых, данный комплекс был опробован в действии на реальном объекте энергетики, а именно - теплоэлектроцентрали Московского энергетического института. Наконец, разработанный комплекс имеет широкую сферу применения и может быть использован не только на объектах энергетики, но и в быту.

Разработка модуля сбора и передачи данных термометрии

Модуль сбора и передачи данных термометрии предназначен для опроса измерительных термометрических устройств и последующей передачи собранных данных по сети на сервер для дальнейшего продолжительного хранения. Данный модуль реализован на базе платформы Arduino Uno [7], представленной на рисунке 1.

Рис. 1. - Платы Arduino Uno

В качестве измерительного устройства в работе использовалась термопара ДТПК454-05.200/2С.1. На выходе термопары формируется

аналоговый сигнал, который преобразуется в унифицированный сигнал постоянного тока 0(4) - 20 мА с использованием нормирующего преобразователя НПТ-1 для дальнейшей подачи на вход микроконтроллера. Рассматриваемый нормирующий преобразователь может быть запрограммирован в зависимости от технических характеристик подключаемого устройства. Опрос измерительного устройства производится с интервалом пять минут.

Полученные первым микроконтроллером данные передаются на микроконтроллер с поддержкой Wi-Fi EPS-12 при помощи универсального асинхронного приёмопередатчика (англ. Universal Asynchronous Receiver-Transmitter, UART). Плата микроконтроллера EPS-12 представлена на рисунке 1. В микроконтроллере EPS-12 данные последовательно инкапсулируются в кадры протокола Wi-Fi, затем в IP-пакеты, после чего передаются на маршрутизатор с использованием беспроводной передачи по протоколу Wi-Fi.

Для взаимодействия модуля сбора и передачи данных был также использован протокол прикладного уровня MQTT (англ. Message Queuing Telemetry Transport). В передаче по протоколу MQTT участвуют три стороны: издатель, подписчик и брокер [8]. Издатель - программа или устройство, передающее сообщение, предназначенное для приема подписчиком. Издатель при отправке сообщения указывает также его топик (англ. topic), то есть идентификатор принадлежности сообщения к некоторой теме. При этом сообщение не направляется подписчику напрямую, а передается брокеру. Брокер - сервер со статическим IP-адресом, который принимает и аккумулирует собщения от издателей по мере их поступления, а затем по запросу подписчика (так называемой подписке) передает ему сообщения, относящиеся к топику, который в запросе указал подписчик [9]. Стоит отметить, что подписчик может таким образом получать сообщения,

относящиеся к некоторому топику, сразу от нескольких издателей. В данной работе издателем является микроконтроллер EPS-12, а подписчиком - сервер с базой данных.

Такой асинхронный подход позволяет обеспечить надежную передачу сообщений даже в условиях нестабильной связи. Например, если подписчик некоторое время не будет принимать сообщения, то адресованные подписчику сообщения сохранятся у брокера и будут переданы подписчику, как только будет получен от него соответствующий запрос [10].

Разработка базы данных для хранения данных термометрии

Для долговременного хранения данных термометрии была разработана база данных с использованием системы управления базами данных MySQL [11]. ER-диаграмма базы данных представлена на рисунке 2.

--I-

С devices

id

topicSubscribe

type_id

comment

v _

чО<

Х>--|-

f devicetvpes N

id

name

V

( measurements ^

id

device id

value

data_add

v _;

Рис. 2. - ER-диаграмма разработанной базы данных

База данных была нормализована и включает в себя три связанные таблицы: devicestypes, devices и measurements. Таблица devicestypes хранит данные о типе оборудования и содержит в себе два поля: id (числовой

идентификатор, выступающий в роли первичного ключа) и name, содержащее строку-наименование типа оборудования. Таблица devices содержит числовой идентификатор id, являющийся первичным ключом, поле topicSubscribe, содержащий топик сообщений, передаваемых данным устройством, поле type_id, которое является внешним ключом по отношению к таблице devicestypes, а также поле комментария comment. Таблица measurements содержит полученные измерения и включает в себя поля: id (первичный ключ), device_id (тип устройства), value (непосредственно измерение) и data_add (дата и время снятия измерения).

Такая структура базы данных была выбрана с целью облегчить масштабирование системы. Рассматриваемая база данных была спроектирована таким образом, чтобы в ней могли храниться измерения не только с различных термометрических устройств, но и с устройств других типов. Например, сведения о влажности, давлении и т.п.

Применение разработанного комплекса

Разработанный программно-аппаратный комплекс был использован на теплоэлектроцентрали Московского энергетического института. С его помощью контролировался ряд параметров парового котла: температура газов в поворотной камере, температура уходящих газов и температура воды на выходе из теплообменника. По результатам проведенных испытаний сотрудники теплоэлектроцентрали сделали вывод о том, что разработанный программно-аппаратный комплекс решает поставленные перед ним задачи, обеспечивая достаточные уровень надежности и качество измерений.

Заключение

В рамках работы был разработан программно-аппаратный комплекс сбора и хранения данных термометрии. На данный момент комплекс используется на теплоэлектроцентрали Московского энергетического

института для измерения температуры парового котла. Система может быть легко масштабирована для сбора данных термометрии с территориально распределенных измерительных устройств. Технология, примененная при разработке данного программно-аппаратного комплекса, может быть использована также для создания аналогичных комплексов, способных осуществлять сбор и хранение помимо данных термометрии данных по целому ряду важных параметров.

Литература

1. Kang Y.-M., Han M.-R., Han K., Kim J.-B. A Study on the Internet of Things (IoT) Applications // International Journal of Software Engineering and Its Applications. 2015. № 9. pp. 117-126. DOI: 10.14257/ijseia.2015.9.9.10.

2. Испулов Н. А., Жумабеков А. Ж., Абдрахманов А. Б., Нургожина М. Об измерении температуры термистором с помощью микроконтроллеров АМшпо // Вестник Карагандинского университета. Серия: Физика. 2017. № 1(85). С. 73-81.

3. Фейламазова С. А., Ахмедова З. Х., Абдуразакова З. Ш. Разработка аппаратно-программного комплекса дистанционного управления микроклиматом теплицы // Вестник Астраханского государственного технического университета. Серия: Управление, вычислительная техника и информатика. 2021. № 4. С. 68-75. DOI: 10.24143/2072-9502-2021-4-68-75.

4. Hassan J. A., Jasim B. H. Design and implementation of internet of things-based electrical monitoring system // Bulletin of Electrical Engineering and Informatics. 2021. Vol. 10, № 6. pp. 3052-3063.

5. Селезнев С. П., Яковлев В. В. Архитектура промышленных приложений IoT и протоколы AMQP, MQTT, JMS, REST, CoAP, XMPP, DDS // International Journal of Open Information Technologies. 2019. Т. 7. № 5. С. 1728.

6. Mishra B., Kertesz A. The Use of MQTT in M2M and IoT Systems: A Survey // IEEE Access, 2020, № 8 URL: ieeexplore.ieee.org/document/9247996/metrics.

7. Arduino Documentation. URL: docs.arduino.cc/.

8. Жарлыкасова А. Н., Жарлыкасов Б. Ж., Муслимова А. З. Модель удаленного управления с использованием протокола MQTT // Наука. Информатизация. Технологии. Образование : Материалы XI международной научно-практической конференции, Екатеринбург, 26 февраля - 02 марта 2018 года. Екатеринбург: Российский государственный профессионально-педагогический университет, 2018. С. 485-491.

9. Sending Data over MQTT. URL: docs.arduino.cc/tutorials/uno-wifi-rev2/uno-wifi-r2-mqtt-device-to-device.

10. Жарлыкасова А. Н., Муслимова А. З. Сравнительный анализ протоколов передачи данных и преимущества протокола MQTT // Тенденции развития современного естествознания и технических наук : Сборник научных трудов по материалам Международной научно-практической конференции. В 2-х частях, Белгород, 30 октября 2017 года / Под общей редакцией Е.П. Ткачевой. Белгород: Общество с ограниченной ответственностью "Агентство перспективных научных исследований", 2017. С. 75-78.

11. MySQL Documentation. URL: dev.mysql.com/doc/.

References

1. Kang Y.-M., Han M.-R., Han K., Kim J.-B. International Journal of Software Engineering and Its Applications Number. 2015. № 9. pp. 117-126. DOI: 10.14257/ijseia.2015.9.9.10.

2. Ispulov N. A., Zhumabekov A. Zh., Abdrakhmanov A. B., Nurgozhina M. Vestnik Karagandinskogo universiteta. Seriya: Fizika. 2017. № 1(85). pp. 73-81.

3. Feylamazova S. A., Akhmedova Z. Kh., Abdurazakova Z. Sh. Vestnik Astrakhanskogo gosudarstvennogo tekhnicheskogo universiteta. Seriya: Upravlenie, vychislitel'naya tekhnika i informatika. 2021. № 4. pp. 68-75. DOI: 10.24143/2072-9502-2021-4-68-75.

4. Hassan J. A., Jasim B. H. Bulletin of Electrical Engineering and Informatics. 2021. Vol. 10, № 6. pp. 3052-3063.

5. Seleznev S. P., Yakovlev V. V. International Journal of Open Information Technologies. 2019. Vol. 7. № 5. pp. 17-28.

6. Mishra B., Kertész A. IEEE Access, 2020, №8 URL: ieeexplore.ieee.org/document/9247996/metrics.

7. Arduino Documentation. URL: docs.arduino.cc/.

8. Zharlykasova A. N., Zharlykasov B. Zh., Muslimova A. Z. Nauka. Informatizatsiya. Tekhnologii. Obrazovanie: Materialy XI mezhdunarodnoy nauchno-prakticheskoy konferentsii. Ekaterinburg, 2018, pp. 485-491.

9. Sending Data over MQTT. URL: docs.arduino.cc/tutorials/uno-wifi-rev2/uno-wifi-r2-mqtt-device-to-device.

10. Zharlykasova A. N., Muslimova A. Z. Tendentsii razvitiya sovremennogo estestvoznaniya i tekhnicheskikh nauk: Sbornik nauchnykh trudov po materialam Mezhdunarodnoy nauchno-prakticheskoy konferentsii. Belgorod, 2017. pp. 75-78.

11. MySQL Documentation. URL: dev.mysql.com/doc/.