Подключение устройств Modbus TCP через шлюз устройств IoT Edge

Область применения:Флажок IoT Edge 1.4 IoT Edge 1.4

Это важно

Поддерживаются выпуски IoT Edge 1.5 LTS и IoT Edge 1.4. Если вы используете более раннюю версию, см. Update IoT Edge.

Чтобы подключить устройства IoT, которые используют протокол Modbus TCP или Modbus RTU, к Центру Интернета вещей Azure, используйте устройство IoT Edge в качестве шлюза. Устройство шлюза считывает данные с устройства Modbus, а затем передает эти данные в облако с помощью поддерживаемого протокола.

Снимок экрана: устройства Modbus, которые подключаются к Центру Интернета вещей через шлюз IoT Edge.

В этой статье объясняется, как создать собственный образ контейнера для модуля Modbus (или можно использовать предварительно подготовленный пример), а затем развернуть его на устройство IoT Edge, которое будет выполнять роль шлюза.

В этой статье предполагается, что вы используете протокол Modbus TCP. Дополнительные сведения о том, как настроить модуль для поддержки Modbus RTU, см. в проекте модуля Azure IoT Edge Modbus на GitHub.

Предпосылки

  • Устройство Azure IoT Edge. Пошаговые инструкции по настройке см. в статье "Развертывание Azure IoT Edge в Windows или Linux".
  • Строка подключения первичного ключа для устройства IoT Edge.
  • Физическое или эмулированное устройство, поддерживающее Modbus TCP. Необходимо знать его IPv4-адрес.

Подготовка контейнера Modbus

Если вы хотите протестировать функции шлюза Modbus, корпорация Майкрософт предлагает использовать пример модуля. Вы можете получить доступ к модулю из Azure Marketplace, Modbus, или с помощью URI образа mcr.microsoft.com/azureiotedge/modbus:1.0.

Примечание.

Модуль Modbus был архивирован 11 октября 2023 года. Теперь она доступна только для чтения.

Если вы хотите создать собственный модуль и настроить его для своей среды, на сайте GitHub существует проект модуля Modbus с открытым исходным кодом Azure IoT Edge . Следуйте инструкциям в этом проекте, чтобы создать образ контейнера. Чтобы создать образ контейнера, ознакомьтесь с разделом "Разработка модулей C# в Visual Studio или разработка модулей Azure IoT Edge с помощью Visual Studio Code". В этих статьях содержатся инструкции по созданию новых модулей и публикации образов контейнеров в реестре.

Попробуйте решение

В этом разделе описывается развертывание примера модуля Modbus от Майкрософт на устройстве IoT Edge.

  1. На портале Azure перейдите в центр Интернета вещей.

  2. Перейдите на устройства и выберите устройство IoT Edge.

  3. Выберите "Задать модули".

  4. В разделе "Модули IoT Edge " добавьте модуль Modbus:

    1. Выберите раскрывающийся список "Добавить" и выберите "Модуль Marketplace".
    2. Modbus Найдите и выберите модуль TCP Modbus от Корпорации Майкрософт.
    3. Модуль автоматически настроится для вашего Центра Интернета вещей и отобразится в списке модулей IoT Edge. Маршруты также настроятся автоматически. Выберите "Рецензирование и создание".
    4. Просмотрите манифест развертывания и нажмите кнопку "Создать".
  5. Выберите модуль Modbus, ModbusTCPModuleв списке и перейдите на вкладку "Параметры двойника модуля ". Требуемые свойства JSON для двойника модуля заполняются автоматически.

  6. Найдите свойство SlaveConnection в ФОРМАТЕ JSON и задайте его значение IPv4-адресу устройства Modbus.

  7. Выберите "Обновить".

  8. Выберите "Просмотр и создание", просмотрите развертывание и нажмите кнопку "Создать".

  9. Вернитесь на страницу сведений об устройстве и нажмите кнопку "Обновить". Вы должны увидеть, что новый модуль ModbusTCPModule работает вместе со средой выполнения IoT Edge.

Просмотреть данные

Просмотр данных, поступающих через модуль Modbus:

iotedge logs modbus

Вы также можете просмотреть данные телеметрии, отправляемые устройством, с помощью расширения Центра Интернета вещей Azure для Visual Studio Code (прежнее название — расширение Azure IoT Toolkit).

Дальнейшие действия