Пограничный вычислительный шлюз для сбора данных Modbus, хранящихся в формате Mysql

Node-RED, инструмент с открытым исходным кодом, основанный на потоковом программировании, предоставляет разработчикам гибкий подход к визуальному программированию, позволяя IOTМаршрутизатор EG Edge Computing Gateway легко подключаться к различным источникам данных для их обработки и преобразования. EG Edge Computing Gateway способен собирать и анализировать данные в режиме реального времени на границе, где они генерируются, что снижает требования к пропускной способности и повышает эффективность обработки данных. Он также может собирать данные по различным протоколам (например, Modbus, MQTT, OPC UA и т. д.) и выполнять необходимое преобразование и хранение данных.

I. Основные функции пограничного вычислительного шлюза EG

EG Edge Computing Gateway играет роль среднего уровня сбора и обработки данных в системе и гибко обрабатывает данные от множества датчиков и устройств для фильтрации и предварительного анализа в режиме реального времени. EG Edge Computing Gateway имеет следующие функции:

Преобразование протокола: Поддержка протоколов передачи данных между различными устройствами, таких как Modbus, OPC UA, MQTT и др.

Локальная обработка и анализ: Обеспечивает вычислительную мощность для фильтрации, преобразования и простого анализа данных.

Хранение и передача данных: Передает обработанные данные по сети в базу данных в облаке или на локальном сервере.

II. Механизм работы Node-RED

Node-RED предоставляет редактор потоков на основе браузера, который позволяет пользователям перетаскивать узлы для создания потоков обработки данных. Каждый узел имеет входные и выходные характеристики и способен выполнять определенные задачи по обработке данных. Node-RED имеет богатую поддержку плагинов, таких как Modbus, MQTT, OPC UA и т. д., что делает его способным интегрировать множество источников данных.

III. Сбор и обработка данных

Процесс референции: регулярно собирать данные с ведомых устройств через шлюз EG, форматировать собранные данные в формат, распознаваемый базой данных MySQL, и загружать в собственную базу данных MySQL пользователя. В качестве примера возьмем сбор данных о ведомых устройствах Modbus RTU, процесс работы выглядит следующим образом:

mysql

 

1. Подключитесь к базе данных MySQL

Сначала убедитесь, что установлен узел MySQL, затем в редакторе Node-RED добавьте узел MySQL и настройте параметры подключения к базе данных, включая хост, порт, имя пользователя, пароль и имя базы данных.

Используйте узел MySQL для настройки параметров подключения к базе данных MySQL пользователя, конфигурация будет завершена и развернута, а индикация connected будет означать, что подключение успешно.

2. Сбор данных о рабах

Использование Modbus RTU для сбора данных

Настройте адрес и порт узла Modbus и укажите регистры данных для сбора.

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

3. Форматирование данных

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

Формат выходных данных узла ModbusОписаниеФормат MySQL SQL для загрузки данных
{

"temp": 31.0,

"hum": 45.5

}

Преобразует данные объекта, выводимые узлом Modbus слева, в SQL-запрос, требуемый MySQL справа.INSERT INTO my_table (temp, hum) VALUES (25.55, 45.5);

Код образца:

var data = msg.payloadvar sql = `INSERT INTO my_table (temp, hum) VALUES(${data.temp},${data.hum});`msg.topic = sqlreturn msg;

4. Загрузка данных

После завершения форматирования данных соедините узел вычисления функций и узел MySQL и нажмите на узел инъекции, чтобы выполнить сбор и загрузку данных. При успешном тестировании можно настроить узел инъекции на периодическое выполнение, чтобы обеспечить сбор и загрузку данных в базу данных MySQL через регулярные промежутки времени.

mysql2

Пограничный вычислительный шлюз EG собирает данные через регулярные промежутки времени и преобразует их в форматы, поддерживаемые MySQL. Этот метод позволяет обрабатывать в реальном времени и хранить в долгосрочной перспективе большие объемы данных полевых устройств. Это повышает эффективность обработки данных и может служить основой для последующего анализа данных и принятия решений. Внедрение пограничных вычислений позволяет выполнять первичную обработку данных в непосредственной близости от источника данных, снижая зависимость от облачных вычислений и уменьшая задержку и стоимость передачи данных.

Примечание: Если вам нужно получить данные из базы данных MySQL, вы также можете загрузить узел MySQL, передав в свойство msg.topic запрос на получение данных с помощью SQL-запроса.

Последние статьи

Свяжитесь с нами