Допустим, вы — главный инженер предприятия по производству автомобильных двигателей и должны реагировать на перемены в вашей отрасли, слишком быстрые для тех, кто занят на производстве и в техническом обслуживании. Благодаря встроенной электронике двигатели уже сегодня нельзя считать чисто механическими, к тому же они взаимодействуют со все большим количеством электронных систем автомобиля. Вам нужны облака для хранения различных конфигураций и обновлений, новые мощности для сборки и испытаний, новые навыки в области безопасности, мобильные приложения для диагностики и ремонта, связь с системами ERP и средства анализа Больших Данных, помогающие в проектировании и обслуживании изделий на протяжении всего их жизненного цикла. Знание типичных потребностей пользователя и возможность адаптации к ним продуктов и потоков операций в реальном времени дают немало преимуществ: гибкость — изделия могут автономно адаптироваться к различным условиям применения; удобство использования — даже сложные изделия становятся проще в обращении; продуктивность — продлевается время безотказной работы и улучшаются характеристики.
Интернет вещей принесет колоссальные улучшения с точки зрения темпов инновации, уровней эффективности и качества — соединение производственных, медицинских, автомобильных и транспортных систем с ИТ-системами и ценной для бизнеса информацией будет приносить массу выгод. Крупнейшие ИТ-компании прогнозируют появление миллиардов соединенных с сетями устройств и целой вселенной бизнес-сервисов, объем рынка которых будет исчисляться триллионами долларов [1, 2].
Однако пока неясно, какие для реализации всего этого понадобятся архитектуры, технологический стек, ПО и т. д.: бизнес-руководители знают о цепочке создания ценностей, а технологии их не интересуют; производственники предпочитают не связываться с программными технологиями; ИТ-службы строят далеко идущие планы, забывая о реальных продуктах и клиентах; инженерные отделы не доверяют ИТ-системам, которые часто не оправдывают ожиданий. Соединить друг с другом все эти разнородные сообщества, позволив им понимать друг друга и работать вместе, можно с помощью архитектурных решений и средств моделирования.
Разработка ПО для Интернета вещей сдерживается проблемами, связанными с новизной приложений, устройств и сервисов. Мобильные технологии, «умные» устройства, онлайн-сервисы, сенсорные среды, цифровая медицина, носимые и имплантируемые устройства — все это вносит свои специфические сложности в составление требований к ПО и в разработку надежного и безопасного кода. Применение узкоспециальных программных интерфейсов и быстрых методов разработки с предоставлением гарантий надежности ПО требует особых подходовк к созданию конфигураций Интернета вещей. Помочь справиться с этими задачами призваны референтные архитектуры для Интернета вещей.
Термин Интернет вещей (Internet of Things, IoT) впервые был использован Кевином Эштоном при работе над стандартом разметки объектов с помощью RFID-меток, предназначенным для логистики, но идея повсеместных вычислений появилась еще в конце 1980-х годов. Важной вехой было появление протокола IPv6, благодаря которому и стал возможен Интернет вещей. А сегодня ускорению его развития способствуют коммерческий интерес и начало работы над референтными архитектурами для конкретных отраслей. В Google, к примеру, анонсировали разработку Brillo — операционной системы для устройств Интернета вещей и «умного» дома. Появились коммерческие аппаратные компоненты для межмашинной связи по стандартам Bluetooth, ZigBee, IPC Global и Wi-Fi малой мощности. В Microsoft объявили, что Windows 10 сможет работать на популярных платах прототипирования, таких как Raspberry Pi 2. В Samsung и ряде других компаний выпустили новое поколение чипов для «умных» устройств. Появилось немало проектов, в которых сетевые микроконтроллеры используются как центральные управляющие элементы для систем датчиков, приводов и радиометок.
Однако до сих пор применения Интернета вещей были изолированными и базировались в основном на проприетарном ПО, предназначенном для определенных систем и сценариев. Когда стала ощутимой потребность в референтных архитектурах, появилось множество проектов стандартизации, ставящих целью улучшить интероперабельность и упростить разработку (табл. 1). Стандарт Reference Architecture Model Industrie (RAMI) 4.0 выходит за рамки Интернета вещей, так как дополнительно дает рекомендации, касающиеся особенностей производства и логистики. В свою очередь, Industrial Internet Reference Architecture (IIRA) в сильной степени ориентирован на промышленные применения. В проекте IoT-A в деталях учтены аспекты Интернета вещей, касающиеся ИТ. В области межмашинной связи есть крупные проекты стандартизации, базирующиеся на эффективных, масштабируемых, защищенных технологических стеках. Эти стандарты опираются на традиционную модель OSI, предлагая спецификации для канального, прикладного, сетевого и транспортного уровней.
Таблица 1. Референтные архитектуры Интернета вещей |
Разработка референтных архитектур Интернета вещей — длительный, трудоемкий процесс, предполагающий множество согласований, направленных на то, чтобы максимально абстрагироваться от индивидуальных потребностей и технологий. Выработанный эталон должен выполнять роль общего руководства, при этом реализация всех его деталей для конкретных применений не обязательна. Тем не менее можно перечислить основные требования, которые отражаются в архитектурных шаблонах Интернета вещей:
- механизмы установления соединений и осуществления связи должны быть двухточечными или же обеспечивать распространение информации между многими точками (путем многоадресной рассылки или трансляции в расчете на любое устройство, способное выполнить прием);
- системы управления устройствами должны реагировать на подключение новых устройств и изменения в их конфигурации, а также предоставлять механизмы распространения изменений;
- необходимо наличие механизмов сбора, анализа и перемещения данных, осуществляющих извлечение информации, требуемой для предоставления сервисов;
- для обработки все возрастающих объемов данных важно определить требования к масштабируемости систем;
- для всех элементов Интернета вещей нужны механизмы безопасности, установления доверенных соединений и обеспечения приватности.
Референтная архитектура Интернета вещей должна учитывать все эти требования и предусматривать дополнительные функции, информационные структуры и механизмы, а референтные модели должны описывать элементы систем и их взаимодействия. Такая модель обычно регламентирует свойства связанных элементов (например, пользователей, устройств и серверных механизмов), представляя собой шаблон системы или ее реализации для конкретной предметной области. Архитектуру и модели удобно использовать для подготовки технико-экономического обоснования проектов.
На сегодняшний день разработаны две основные архитектуры Интернета вещей — IoT-A и IIRA. Первая описана более подробно и постоянно расширяется, вторая пока находится на стадии обсуждения.
IoT-A семантически ориентирована, предоставляет возможность интерпретации данных для технико-экономических обоснований и фокусируется на общих концепциях информатики, не заостряясь на прикладных аспектах семантики [3]. IIRA, в свою очередь, акцентируется на отраслевой деятельности: бизнесе, операциях (прогнозирование, мониторинг, оптимизация и т. п.), информации (аналитика и данные) и приложениях (пользовательский интерфейс, интерфейсы программирования, правила, логика). Спецификация RAMI 4.0, рассчитанная на производственные применения, расширяет IIRA, дополняя функциональный уровень двумя концепциями, определенными в стандартах IEC 62890, 62264 и 61512, — жизненного цикла и потока создания ценности.
В IoT-A достаточно полно охвачены моделирование и структурирование управления бизнес-процессами на основе Интернета вещей, виртуальные объекты, сервисы IoT и кросс-сервисная организация с точки зрения функциональности, информации и областей применения. Облачные аспекты, в том числе серверная архитектура и управление ею, определяются конкретной реализацией. То же относится к агентским программам и коду, работающему на устройствах для конкретных применений. В IIRA эти вопросы тоже рассматриваются, но эта модель больше фокусируется на технико-экономических обоснованиях и сценариях применения.
Обе архитектуры вкратце упоминают межмашинную связь, указывая, в частности, что сетевой уровень можно реализовать с помощью IPv6, а сетевой и транспортный — на протоколах UDP и CoAP (Constrained Application Protocol). Вместо HTTP можно использовать более легкий протокол MQTT, работающий поверх TCP/IP.
Ориентации на вещи (датчики, приводы, метки и т. п.) в IоT-A и в IIRA уделено много внимания. В обеих архитектурах на всех уровнях предусматриваются механизмы управления и безопасности.
В целом оба архитектурных шаблона задают и разъясняют общую структуру Интернета вещей, описывая модели обработки данных и взаимодействия людей и устройств с использованием стандартов межмашинной связи. В табл. 2 перечислены архитектурные уровни и протоколы согласно нынешним версиям стандартов.
Таблица 2. Уровни архитектуры и протоколы Интернета вещей |
В рамках различных инициатив разработано уже немало моделей, архитектурных проектов и инструментов — пришло время объединять различные подходы и отраслевые стандарты, иначе возникают препятствия для реализации ключевых механизмов Интернета вещей. Один из таких механизмов — эффективная, защищенная связь. Соответствующих технологий сегодня существует немало, но прежде всего необходимы защищенные, простые беспроводные сети малой мощности.
Аппаратные компоненты, подходящие для создания Интернета вещей, уже доступны в продаже, но пока нет стандартных сетевых ОС реального времени для различных предметных областей, хотя имеется огромное разнообразие таких систем.
Для определенных сценариев применения Интернета вещей можно, к примеру, задействовать существующие стандарты на программируемые логические контроллеры с циклическим или событийным вызовом задач. И наоборот, инструментарии разработки, созданные для Интернета вещей, можно использовать в сфере автоматизации промышленных процессов.
Кроме того, практически отсутствуют стандарты, связанные с человеко-машинным интерфейсом и анализом Больших Данных. Первым шагом к стандартизации может стать создание семантических описаний для устройств, параметров и пользовательских интерфейсов, например, с помощью языков наподобие Vorto или Weave.
***
Интернет вещей — революционная концепция, обещающая серьезные перемены обществу в целом. Однако, меняя мир сетей, Интернет вещей нуждается в программном обеспечении, которое отвечает особым требованиям. Но, чтобы избежать распространения систем Интернета вещей, не способных общаться друг с другом, лидерам промышленности и программной отрасли необходимо договориться о стандартах.
Литература
- R. Howells. The Business Case for IoT. SAP, 18 June 2015. URL: http://scn.sap.com/community/business-trends/blog/2015/06/18/the-business-case-for-iot (дата обращения: 18.02.2016).
- D. Evans. The Internet of Things: How the Next Evolution of the Internet Is Changing Everything. Cisco, Apr. 2011, URL: http://www.cisco.com/web/about/ac79/docs/innov/IoT_IBSG_0411FINAL.pdf (дата обращения: 18.02.2016).
- L. Atzori, A. Lera, G. Morabito. The Internet of Things: A Survey // Computer Networks. — 2010. vol. 54, N 15. P. 2787–2805. URL: http://www.sciencedirect.com/science/article/pii/S1389128610001568 (дата обращения: 18.02.2016).
Михаэль Вейрих (michael.weyrich@ias.uni-stuttgart.de) — директор, Институт автоматизации и программных систем Штутгартского университета; Кристофер Эберт (christof.ebert@vector.com) — управляющий директор, Vector Consulting Services.