Использование шлюза IIoT с открытым исходным кодом для ускорения интеграции устройств Modbus
Для промышленных приложений Интернета вещей (IIoT) обычно требуется пограничный шлюз для интеграции периферийных устройств Modbus и других устройств, но реализация шлюза может быть дорогостоящей и трудоемкой. Фреймворк для периферийных вычислений с открытым исходным кодом может значительно упростить развертывание.
Промышленный Интернет вещей (IIoT) относится к взаимосвязанным устройствам, датчикам и исполнительным механизмам, объединенным в сеть вместе с промышленной инфраструктурой и приложениями, включая производство, транспорт, энергетику, розничную торговлю, здравоохранение и управление цепочками поставок. Эта возможность подключения позволяет собирать, обмениваться и анализировать данные, потенциально способствуя повышению производительности и эффективности, а также другим экономическим преимуществам. Периферийные вычисления появились в ответ на рост числа промышленных приложений Интернета вещей. При периферийных вычислениях данные обрабатываются самим устройством, локальным компьютером или сервером, а не передаются в центр обработки данных.
В случаях промышленного использования, когда необходимо связать ряд датчиков с граничными шлюзами, архитекторам и разработчикам решений необходимо принять решение о проектировании программного обеспечения и разработке пограничных шлюзов; как обрабатывать данные с различных датчиков; и как выполнять анализ данных на этапе проектирования и разработки. В таких ситуациях, если нет среды с открытым исходным кодом, разработка нового программного обеспечения и исправление ошибок могут потребовать больших усилий и затрат. Эти проблемы можно смягчить, используя инфраструктуры граничных вычислений с открытым исходным кодом для разработки программного обеспечения граничных шлюзов на этапе разработки. EdgeX Foundry - это инфраструктура граничных вычислений с открытым исходным кодом, которую можно использовать при разработке программного обеспечения для пограничного шлюза, уменьшая задержки и стоимость. Modbus - это открытый протокол, широко используемый в промышленных системах, и с появлением требований к периферийным вычислениям важна возможность сопряжения периферийных устройств Modbus с системой пограничных вычислений.
В этой серии из двух частей описывается проектирование пограничного шлюза на основе EdgeX Foundry и разработка приложений для функций периферийных вычислений. В этой первой статье описываются промышленные датчики с примерами использования и дается обзор требований к пограничному шлюзу, а также обсуждается, как EdgeX удовлетворяет требованиям пограничного шлюза.
Обзор промышленных датчиков
В промышленной автоматизации датчики и исполнительные механизмы играют решающую роль в любых интеллектуальных продуктах. Сенсор позволяет обнаруживать, анализировать и обрабатывать различные преобразования. Приводы получают сигналы от датчиков и выполняют действия в зависимости от входа.
Некоторые из датчиков, используемых в промышленности, - это датчики температуры и влажности, датчики давления, датчики приближения, газовые и химические датчики и другие. Некоторые из вариантов использования этих датчиков включают следующее:
- Температура играет ключевую роль в определении целостности биологических образцов. Если образцы не хранятся под строгим контролем температуры, они станут бесполезными и повлияют на экспериментальные выводы или, что еще хуже, на здоровье пациента. Администратор ИТ-системы больницы может установить датчики температуры для круглосуточного контроля температуры в лабораториях и клиниках.
- Некоторые продукты чувствительны к влажности и температуре. Хранение таких продуктов на обычном складе может привести к их коррозии, поэтому их необходимо хранить в среде с контролируемым микроклиматом. Управляющий складом может разместить датчики для постоянного наблюдения за складской средой.
- Датчики давления используются для определения изменений давления в газах и жидкостях. Датчики давления воды могут быть прикреплены к верхней части трубы с открытым концом, погруженной в контейнер, и использоваться для измерения уровня воды в резервуаре или скорости изменения уровня воды в любое время.
В промышленных средах в реальном времени связь между устройствами, односторонняя или двусторонняя связь между устройствами происходят систематически. В зависимости от производителя оборудования используется проприетарный протокол или протокол с открытым исходным кодом. Многие производители адаптируют открытые протоколы, чтобы легко интегрировать свой продукт на рынок. Modbus - один из наиболее распространенных протоколов автоматизации, соединяющих промышленные электронные устройства и SCADA (диспетчерское управление и сбор данных).
Преимущество протокола Modbus заключается в том, что он поддерживает нескольких производителей, поставщиков программного обеспечения, сервисных организаций и имеет активные группы сообщества для поддержки. Существует несколько версий протокола Modbus для последовательного порта и Ethernet, и наиболее распространенными являются Modbus RTU, Modbus ASCII, Modbus TCP и Modbus Plus. Он обменивается данными через несколько типов физических носителей, таких как последовательный RS-232, RS-485, RS-422 и через Ethernet, и может поддерживать как одноранговые, так и многоточечные сети. С Modbus TCP / IP через Ethernet, Modbus и другие типы смешанных протоколов могут одновременно сосуществовать через один и тот же физический интерфейс. Эти функции побуждают отрасли и пользователей выбирать датчики, поддерживающие протокол Modbus.
Обзор пограничного шлюза
Подключение устройства
Ключевым требованием пограничного шлюза является возможность подключения датчиков и исполнительных механизмов. Существует множество отраслевых протоколов, которые упрощают различные методы связи между устройствами. Граничное решение должно поддерживать наиболее распространенные промышленные протоколы, такие как ZigBee, Bluetooth LE, BACnet, Modbus и Siemens S7.
Аналитика данных и механизм правил
Данные могут быть вычислены локально с возможностью локального запуска приложений на шлюзе. Сервисы искусственного интеллекта могут локально обрабатывать данные, поступающие с нижестоящих устройств, локально реагировать на аналитические данные и отправлять подмножество данных в облако. Создание правил также важно.
Хранение данных
Помимо локальной обработки, шлюз должен иметь возможность хранить данные локально. Это ключ к автономной работе шлюза. Комбинация локальных вычислений и локального хранилища должна позволить шлюзу также работать в автономном режиме.
Совместимость
Подключенные устройства и приложения, работающие на пограничном шлюзе, должны обеспечивать взаимодействие с другими продуктами или системами.
Безопасность
Может потребоваться обмен данными между различными модулями пограничного шлюза, такие модули и устройства должны аутентифицировать свои соединения друг с другом, и, следовательно, безопасность должна быть интегрирована в пограничное решение. Граничное решение должно обеспечивать управление доступом на основе разрешений, безопасную зашифрованную связь, управление сертификатами и интеграцию с существующими решениями безопасности.
Управление устройствами
Для пограничных шлюзов требуется способ удаленного управления и доступа к каждому отдельному шлюзу. Функции удаленного управления должны позволять операторам удаленно запускать, останавливать, настраивать и обновлять шлюз и подключенные к нему устройства.
Подключение к облаку
Связь между пограничным шлюзом и облачной системой очень важна. Это может помочь в регистрации точных данных для глубокого анализа и передачи собранных данных в другие приложения по запросу.
Переносимость
Программное обеспечение для пограничного решения должно быть переносимым на различные операционные системы и аппаратные платформы. Это поможет пользователям избежать привязки к аппаратному и программному решению конкретного поставщика.
EdgeX Foundry
Почему открытый исходный код, а не разработка?
Разработка новой программной среды потребует много времени, усилий и затрат. Это требует много времени для каждого этапа, такого как проектирование, разработка и тестирование. EdgeX Foundry - это платформа пограничных вычислений с открытым исходным кодом, которая уже предоставляет все микросервисы, необходимые для обслуживания пограничного шлюза. Эта структура запускает слабосвязанные микросервисы, и нет необходимости запускать все службы вместе, поэтому нужно запускать только зависимые службы. При необходимости можно использовать другие сервисы. Из-за этих преимуществ в качестве программной основы пограничного шлюза предпочтительнее использовать среду периферийных вычислений с открытым исходным кодом.
Проект EdgeX Foundry был запущен в рамках Linux Foundation. Это открытая, совместимая платформа для IoT Edge. Фреймворк структурирован на разных уровнях, каждый из которых состоит из нескольких микросервисов. Модульная архитектура позволяет пользователям легко масштабировать, обновлять и распределять логику по различным системам, улучшая ремонтопригодность.
EdgeX совместим с системами Windows, macOS и Linux. Эта архитектура платформы разработана таким образом, что любой технический специалист может изучить ее за короткий промежуток времени, реализовать и внести свой вклад самостоятельно.
EdgeX ускоряет вывод на рынок полных периферийных решений и / или предложений периферийного программного и аппаратного обеспечения, предоставляя заменяемые справочные службы для приема данных с устройств, нормализации, периферийного интеллекта (AI / ML) и совместной поддержки для новых служб данных IoT и передовых приложений для периферийных вычислений. .
EdgeX уже реализован в таких продуктах, как EdgeXpert, EdgeXRT, HP Engage Edge, EdgeBox и шлюзы Dell. Использование EdgeX framework во многих этих продуктах еще больше укрепляет доверие к использованию в других пограничных шлюзах.
Как EdgeX удовлетворяет требованиям пограничного шлюза?
EdgeX Foundry - это программная платформа с открытым исходным кодом, не зависящая от поставщика, которая служит пограничным промежуточным программным обеспечением между физическим обнаружением и активизацией «вещей» и системой информационных технологий (ИТ).
Рис. 1. EdgeX Foundry (Источник:www.edgexfoundry.org)
Хранилище данных - Redis DB
EdgeX по умолчанию предоставляет Redis с открытым исходным кодом в качестве базы данных. Redis предоставляет другой набор опций сохраняемости, таких как RDB, AOF. Это структура данных в памяти, используемая для хранения и пересылки. Это помогает в случаях, когда пограничные устройства переключаются между подключенным и отключенным режимами.
Аналитика данных - механизм правил Койпера
EdgeX предоставляет EMQ X Kuiper, легкий программный пакет с открытым исходным кодом для периферийной аналитики Интернета вещей и потоковой обработки. Kuiper может работать на различных пограничных устройствах с ограниченными ресурсами. Правила Койпера основаны на Source, SQL и Sink.
- Источник:источник потоковых данных, например данных от брокера MQTT.
- SQL:SQL - это то место, где вы указываете бизнес-логику потоковой обработки данных. Kuiper предоставляет SQL-подобные операторы, позволяющие пользователю извлекать, фильтровать и преобразовывать данные.
- Приемник:приемник используется для отправки результата анализа указанной цели, например брокеру MQTT или HTTP-адресу REST.
Для использования Kuiper требуются следующие четыре шага:
- Создайте поток, в котором необходимо указать источник данных
- Напишите SQL / правило для анализа данных
- Укажите цель приемника для сохранения результата анализа.
- Развернуть и запустить правило
Подключение устройства - Службы устройства
EdgeX предоставляет четыре слабосвязанных уровня микросервисов. Среди них уровень сервисов устройства взаимодействует со сервисами устройства. Сервисы устройств EdgeX переводят информацию, поступающую с устройств, по сотням протоколов и тысячам форматов и переносят их в EdgeX.
Сервисы устройств - это граничные соединители, взаимодействующие с такими устройствами, как умная бытовая техника, датчики, исполнительные механизмы и любые машины в промышленности. Помимо получения данных с датчиков и исполнительных устройств, устройства также обслуживают:
- Получайте обновления статуса от устройств / датчиков.
- Преобразование данных перед отправкой данных датчика в EdgeX
- Изменить конфигурацию
- Обнаружение устройств
Сервисы устройств могут обслуживать одно или несколько устройств одновременно. Устройство может быть шлюзом Edge / IoT (и всеми устройствами этого шлюза), диспетчером устройств, концентратором датчиков, веб-службой, доступной через HTTP, или программным датчиком, который действует как устройство или набор устройств для EdgeX. Литейный цех.
Совместимость - MQTT Broker и REST API
EdgeX поддерживает облегченный протокол обмена сообщениями MQTT. Он позволяет пользователю публиковать или подписывать транспорт обмена сообщениями, который идеально подходит для подключения удаленных устройств с небольшим объемом кода и минимальной пропускной способностью сети.
EdgeX поддерживает сервис устройства отдыха, который обеспечивает простой способ сторонним приложениям передавать данные в EdgeX по протоколу REST.
Безопасность - Магазин безопасности и шлюз API
EdgeX предоставляет два ключевых компонента безопасности. Первый - это хранилище безопасности, которое используется для обеспечения безопасного места для хранения секретов EdgeX, таких как пароль, сертификат и ключ доступа. Второй - это шлюз API, который используется в качестве обратного прокси-сервера для ограничения доступа к ресурсам EdgeX REST и выполнения работ, связанных с контролем доступа.
Управление устройствами - API управления устройствами
EdgeX предоставляет возможность периодически проверять работоспособность. API-интерфейсы управления устройствами, используемые для получения метаданных о любом устройстве.
Подключение к облаку
EdgeX обеспечивает поддержку для подключения к облачным платформам, таким как AWS, Microsoft Azure и IBM Watson Cloud.
Возможность подключения к облаку в EdgeX предоставляется двумя способами:
- Службы приложений:эти службы необходимо скомпилировать для развертывания для отправки данных в облачные службы, такие как AWS и Microsoft Azure. Он получает данные непосредственно из шины сообщений, через которую edgex-core-data публикует события данных.
- Настраиваемая служба приложения:она обеспечивает быстрый способ использования конфигурации вместо компиляции служб для использования функций сборки в SDK.
Во второй статье будет представлен пример взаимодействия промышленного датчика с EdgeX для достижения функциональных возможностей периферийных вычислений.
Интернет вещей
- Советы и тенденции безопасности IIoT на 2020 год
- Введение в терминологию с открытым исходным кодом
- Открытый исходный код и Интернет вещей:инновации через сотрудничество
- AT&T и Tech Mahindra совместно работают над новой платформой искусственного интеллекта с открытым исходным кодом
- Уязвимости приложений делают устройства IoT открытыми для атак
- Программные риски:защита открытого исходного кода в IoT
- Инструменты разработки IoT с открытым исходным кодом и инструменты, поддерживаемые поставщиком
- Интеграция 5G в системы IIoT ускоряет внедрение Индустрии 4.0
- Необходимость открытого исходного кода на периферии (электронная книга)
- Открытый исходный код стимулирует внедрение Интернета вещей и граничных вычислений