Компоненты и советы по проектированию архитектуры решения IoT
11 мая 2022 г.Предприятия продолжают прыгать на подножку Интернета вещей и обращаться к [консалтинговым фирмам IoT] (https://itrexgroup.com/services/iot-development-consulting/). Согласно недавним исследованиям по фактам и факторам ожидается глобальный рынок IoT к 2028 году достичь 1 842 млрд долларов США, увеличившись в среднем на 24,5%. Однако развертывание IoT не так просто. Beecham Research сообщает, что 75% всех IoT-проектов либо не соответствуют установленным ожиданиям, либо терпят неудачу.
Распространенной причиной этого является отсутствие планирования и вытекающие из этого технические проблемы. Что помогает предотвратить риск сбоя, так это заранее разработать план архитектуры IoT. В этом сообщении блога мы проливаем свет на основные компоненты архитектуры IoT и показываем, как разработка архитектуры IoT может выглядеть на практике, на примере проекта из портфолио ITRex.
Давайте погрузимся прямо, начиная с самых основ.
Что такое архитектура IoT?
Архитектура Интернета вещей представляет собой сочетание аппаратных и программных компонентов, которые взаимодействуют друг с другом, образуя интеллектуальную киберцифровую систему. Взаимодействуя друг с другом, эти компоненты составляют основу для построения решения IoT. Прежде чем мы углубимся в детали, давайте проясним ситуацию: не существует универсального подхода к проектированию архитектуры IoT. Тем не менее, базовая компоновка остается практически неизменной независимо от решения.
Стандартная архитектура IoT: что под капотом?
Общие приложения IoT, управляемые данными, опираются на стандартную архитектуру IoT, охватывающую четыре уровня:
- Уровень устройства
- Сетевой уровень
- Уровень поддержки сервисов и приложений
- Прикладной уровень
Однако в последнее время все больше и больше подключенных систем начали смещать акцент на периферийную обработку, что привело к добавлению дополнительного уровня к традиционной четырехуровневой архитектуре. Доля действий, выполняемых на периферии, зависит от конкретной реализации, но обычно включает обеспечение подключения, а также фильтрацию, агрегирование, защиту и обработку входящих данных. Таким образом, архитектура стандартного IoT-решения с периферийной аналитикой может выглядеть следующим образом:
Уровень устройства
Уровень устройств включает в себя все виды интеллектуальных подключенных устройств или неэлектронных объектов, дополненных камерами и/или датчиками и, при необходимости, исполнительными механизмами. Датчики принимают данные из внешнего мира и преобразуют их в электрические сигналы, чтобы компьютер мог их обработать. Датчики IoT различаются по размеру и назначению. Они способны записывать все типы информации — от температуры до движения, влажности и многого другого. Актуаторы, в свою очередь, заставляют подключенные устройства действовать в соответствии с командами, отправленными из центра обработки данных. Как только исполнительный механизм получает команду, он заставляет устройство вести себя определенным образом. Например, интеллектуальная система освещения может включать свет при обнаружении поблизости движения.
Сетевой уровень
Сетевой уровень включает в себя различные коммуникационные технологии, которые соединяют уровень устройств и последующие уровни архитектуры IoT. В зависимости от рассматриваемого решения IoT подключение устройств может быть разрешено напрямую или через шлюзы. Последнее часто применяется к устаревшим устройствам, которые не могут быть подключены напрямую или при несоответствии протокола. Современные IoT-решения опираются на следующие коммуникационные технологии:
- LPWAN, или глобальные сети с низким энергопотреблением, были созданы специально для поддержки крупномасштабных решений IoT. LPWAN предоставляет возможности для удаленной связи, будучи энергоэффективным, долговечным и дешевым. Недостатком является то, что LPWAN передают только небольшие объемы данных с довольно низкой скоростью, поэтому они лучше подходят для случаев использования, которые не чувствительны ко времени и не требуют высокой пропускной способности, например, умные здания или промышленный IoT.
- Zigbee — это стандарт беспроводной связи малого радиуса действия, который лучше всего подходит для приложений Интернета вещей средней дальности с равномерно распределенными поблизости узлами, например, для умных домов. По сравнению с LPWAN Zigbee обеспечивает более высокую скорость передачи данных, но менее энергоэффективен.
- Сотовые сети (3G/4G/5G) обеспечивают надежную широкополосную связь, поэтому они хорошо подходят для поддержки таких вариантов использования, как подключенные автомобили, маршрутизация трафика, управление автопарком или расширенная помощь водителю. Тем не менее, сотовые сети плохо сочетаются с сенсорными сетями с батарейным питанием и несут высокие эксплуатационные расходы, что ограничивает их использование.
- Bluetooth обеспечивает связь ближнего действия и используется для небольших потребительских IoT-устройств, таких как спортивные или медицинские носимые устройства, устройства Internet of Body и умная бытовая техника.
- Wi-Fi обеспечивает передачу данных с высокой пропускной способностью. Тем не менее, из-за проблем с покрытием, масштабируемостью и энергопотреблением Wi-Fi часто не является приемлемым выбором для обширных сетей IoT или устройств IoT с батарейным питанием. Вместо этого он больше подходит для интеллектуальных устройств, которые подключаются к розетке, таких как гаджеты для умного дома, камеры видеонаблюдения или цифровые вывески.
- RFID использует радиоволны для передачи небольших объемов данных от метки RFID к расположенному поблизости считывателю. Эта коммуникационная технология широко используется в логистике и розничной торговле.
Чтобы получить лучшее представление о том, какая коммуникационная технология соответствует вашему решению, мы составили таблицу, в которой представлены предпочтительные способы использования каждой из них:
Уровень граничных вычислений
Уровень пограничной обработки состоит из шлюзов, локальных серверов или других пограничных узлов, разбросанных по сети. Идея внедрения периферийных устройств заключается в том, чтобы хранить и обрабатывать данные рядом с их источником, отправляя в облако только часть сгенерированных записей или массово загружая данные в облако через заданные промежутки времени вместо их передачи в режиме реального времени.
Помимо обработки данных, пограничный уровень может фильтровать, объединять и шифровать входящую информацию. Локальная обработка данных помогает сэкономить время и ресурсы, которые в противном случае потребовались бы для передачи всех сгенерированных записей в облако.
Таким образом, это приводит к лучшей задержке и более высокой производительности. Добавление пограничного уровня является приемлемым вариантом для случаев использования IoT, которым требуется анализ данных в режиме реального времени и требуется встроенная масштабируемость и повышенная безопасность, например, медицинские системы IoT, системы видеонаблюдения или умные автомобили.
Уровень поддержки сервисов и приложений
Именно здесь оказывается большая часть данных, собираемых IoT-устройствами. Итак, уровень поддержки сервисов и приложений используется для накопления, обработки и хранения данных. Здесь происходят два основных процесса:
- Накопление данных Системы Интернета вещей генерируют огромные объемы данных, и не все эти данные нужно немедленно использовать. Таким образом, архитектура IoT может иметь озеро данных для хранения всей сгенерированной информации и отправки только очищенных и отфильтрованных записей по конвейеру управления данными. Итак, основная цель этого этапа — собрать все данные воедино, выяснить, соответствует ли та или иная информация бизнес-требованиям, и решить, как ее хранить — во временной базе данных или в хранилище данных.
- Абстракция данных На этом этапе информация с устройств IoT дополняется данными из соответствующих внешних источников. Это могут быть ERP, EMR и другие корпоративные системы. Преобразованные в соответствии с унифицированным форматированием данные попадают в централизованное хранилище, например, в хранилище данных, где к ним можно удобно получить доступ для анализа.
Прикладной уровень
На прикладном уровне накопленные, обработанные и интегрированные данные с IoT-устройств и внешних источников обрабатываются алгоритмами аналитики, а результаты анализа представляются пользователям. Типы приложений различаются в зависимости от бизнес-требований системы IoT. Они могут включать в себя веб-приложения или мобильные приложения, которые предоставляют конечным пользователям визуализированную информацию или управляют устройствами IoT с помощью приводов, инструментов бизнес-аналитики или расширенных аналитических решений, основанных на машинном обучении и искусственном интеллекте.
Проектирование архитектуры IoT на практике: что ждет впереди?
Теперь, когда мы пролили свет на теоретическую концепцию архитектуры IoT, давайте посмотрим, как ее разработка может выглядеть на практике. Чтобы проиллюстрировать особенности построения IoT-решений, обратимся к проекту из портфолио ITRex.
Один из наших клиентов обратился к нам с идеей создания умного зеркала для фитнеса. чтобы помочь людям тренироваться дома так же эффективно, как и в спортзале.
Зеркало заменит фитнес-тренера, «наблюдающего» за тренирующимся человеком, чтобы давать обратную связь о тренировках и составлять индивидуальные планы тренировок для будущих тренировок.
Инженеры ITRex взяли на себя задачу и разработали архитектуру решения, охватывающую все: от аппаратного обеспечения до прошивки и мобильных приложений для конечных пользователей. Архитектура, которую мы в итоге разработали, в значительной степени ориентирована на граничные вычисления. Большая часть данных с датчиков и камер зеркала обрабатывается на самом устройстве, и только часть статистической информации передается в облако.
Кирилл Сташевский, технический директор ITRex, объясняет выбор приоритета граничных вычислений над традиционными облачными моделями: «Мы протестировали оба подхода — и граничные вычисления выиграл с точки зрения обеспечения более высокой производительности. Таким образом, данные с зеркальных камер и клейких датчиков движения, которые сопровождают зеркало и идут на весах, анализируются рядом с тем местом, где они генерируются. Это экономит много времени и помогает сократить операционные расходы. И это то, что касается разработки успешных архитектур IoT — вы должны делать выбор и проверять предположения, выбирая то, что лучше всего подходит для вас». Таким образом, высокоуровневая архитектура решения выглядит следующим образом:
Зеркало оснащено сетями искусственного интеллекта, предварительно обученными на обширных видеозаписях тренировок людей. Когда человек тренируется, он записывается встроенными в зеркало камерами, и видеозапись тут же пропускается через сети ИИ, которые сравнивают тренировку с эталонной моделью.
Таким образом, ИИ-движок в режиме реального времени генерирует рекомендации о том, является ли тренировка человека здоровой, и предлагает необходимые улучшения — будь то вес, техника или интенсивность. Когда стажер использует зеркало, для персонализации локально развернутых сетей ИИ используются видеоматериалы, поэтому качество предложений со временем улучшается.
По словам Кирилла, персонализация — еще одна причина, по которой мы выбрали архитектуру, ориентированную на периферию. Локальное обучение сетей на основе видеозаписей, записанных в контексте использования зеркала, дает гораздо лучшие результаты, чем обучение алгоритмов в облаке с опорой на общий контент. Еще одной причиной выбора архитектуры, ориентированной на периферию, является конфиденциальность, поскольку обработка данных рядом с местом их создания избавляет от необходимости передавать отснятый материал по сети для анализа.
Несмотря на то, что архитектура решения ориентирована на периферию, она также включает в себя облачную часть. Однако его основная цель — сбор статистических данных об использовании и производительности зеркал. Еще одним компонентом решения является социальное мобильное приложение, позволяющее конечным пользователям записывать свои результаты, делиться ими с друзьями и тренироваться вместе.
Резюме того, почему важно заранее разработать план архитектуры IoT
Если вы намерены внедрить IoT, вы должны заранее разработать продуманную архитектуру будущего решения. Системы с плохой архитектурой не масштабируются и не могут справиться со сложностью, в то время как хорошо спроектированная архитектура IoT позволит вам планировать будущее и гарантировать:
- Удобство обслуживания. Хорошо спроектированные системы Интернета вещей проще и дешевле обслуживать. Поскольку общая картина со всеми компонентами, процессами и интеграциями ясна, проще перейти к более мелким задачам. Когда дело доходит до поиска проектов, хорошо спроектированные системы также облегчают привлечение новых талантов и сокращают время, необходимое для передачи знаний.
- Масштабируемость. С запланированной начальной архитектурой становится проще масштабировать систему IoT как по вертикали, так и по горизонтали, добавляя новые функции или добавляя дополнительные конечные узлы.
- Рентабельность. Уделение времени тщательному проектированию системы Интернета вещей помогает сделать лучший выбор технологий, тем самым снижая затраты на разработку и эксплуатацию расходов на решения Интернета вещей.
- Высокая производительность. Наличие четкого архитектурного видения помогает улучшить поток данных, а также обрабатывать входящие данные с помощью соответствующих инструментов, что помогает достичь более высокой производительности системы.
- Интероперабельность. Архитектура IoT может охватывать несколько устройств, использующих разные протоколы связи, которые не всегда хорошо сочетаются друг с другом. Продуманная архитектура IoT помогает обеспечить бесперебойную совместную работу различных устройств и компонентов.
- Безопасность. Вложив первоначальные усилия в проектирование системы, вы сможете избежать лазеек в системе безопасности и спланировать необходимые механизмы безопасности IoT.
Если у вас есть какие-либо вопросы без ответа или вы хотите присоединиться к побеждающей стороне IoT практически без риска, [свяжитесь с командой разработчиков ITRex IoT] (https://itrexgroup.com/contact-us/). ITRex поможет вам разработать надежную и масштабируемую архитектуру для поддержки вашего будущего решения.
Первоначально опубликовано [здесь] (https://itrexgroup.com/blog/iot-architecture-components-design-tips/)
Оригинал