В Интернете вещей (Internet of Things, IoT) датчики, камеры, механизмы и прочие устройства подключаются невероятными темпами. Но ценность всех этих цифровых устройств определяется не столько подключениями, сколько приложениями, выполнение которых становится возможным благодаря подключениям.
Возьмем, к примеру, подключенную транспортную систему. Того, чтобы автобусы были оснащены системой GPS и могли подключаться к Интернету, не достаточно. Реальную пользу принесет приложение, способное динамически планировать автобусные маршруты с учетом того, где и как долго ожидают пассажиры и куда они собираются ехать.
Можно даже сказать, что приложения и есть та причина, по которой мы подключаем объекты и получаем от них данные. Поэтому разработчикам IoT-инфраструктуры необходимо понять, в чем нуждаются разработчики приложений, и в соответствии с этим предоставить последним возможность использовать IoT-инфраструктуру и передаваемые по ней данные. При этом дело не только в открытых интерфейсах прикладного программирования (API) — следует позаботиться и о том, чтобы упростить приложениям обмен данными с инфраструктурой.
Кроме того, необходимо учитывать удобства взаимодействия с устройствами на границе сети. Как правило, инженер, отвечающий за тот или иной технологический процесс, контролирует производственную линию и вносит изменения в программы с помощью фиксированного интерфейса «человек-машина», используя дисплей, физически объединенный с оборудованием. Между тем появилась и быстро растет нужда в дистанционных и мобильных интерфейсах, особенно, среди подрастающего поколения «ровесников тысячелетия», которые хотят взаимодействовать с IoT-средой через айпады и другие мобильные устройства.
Чтобы разработчики могли соединять приложения с любым протоколом, интерфейсом или устройством, создана гибкая среда разработки приложений — платформа Cisco IOx. В будущем такие системы дадут инженеру заводской службы технического контроля возможность наблюдать автоматизированные операции через «умные» очки, в которых будут отражаться и статистика техобслуживания, и уведомления о неисправностях.Крайне важно также наличие согласованной среды разработки IoT-приложений во всей сети — от облака до границы. В этом случае разработчики могут гибко реализовать свои приложения с помощью облачных и распыленных вычислений, комбинируя их в соответствии с необходимостью. Так, компания Davra Networks предлагает платформу реализации IoT-приложений, где облачное управление ресурсами и сервисы бизнес-аналитики сочетаются с IoT-контроллером распыленных вычислений, обеспечивающих локальную аналитику, локальное принятие решений и масштабный сбор информации от датчиков. А платформа Cisco IOx позволяет узлам системы распыленных вычислений выполнять приложения на границе сети с помощью таких же ресурсов вычисления и хранения, которые располагаются в облаке. Например, приложение может использовать и распыленные, и облачные вычисления, чтобы соединить локальное присутствие с удаленным экспертным потенциалом. В этом случае инженер на производстве может с помощью мобильного устройства сделать снимок аварийного оборудования и получить рекомендации удаленного специалиста по диагностике и устранению проблемы.
Наконец, говоря о полнофункциональной платформе разработки приложений, нужно понимать, что универсальной IoT-платформы не существует. Следует исходить не из фиксированных технологий, а из конкретных задач и отраслевых проектов и применительно к ним создавать технологические платформы. Именно так действует берлинский стартап azeti, специализирующийся на программном обеспечении для мониторинга и контроля удаленных объектов. Первыми такими объектами стали мачты с операторским оборудованием, а сейчас приложения azeti используются также на электрических подстанциях и буровых вышках. Компания строит модули платформы разработки IoT-приложений, исходя из потребностей той или иной вертикальной индустрии.
Сегодня на узлах системы распыленных вычислений Cisco функционируют 20-30 приложений сторонних организаций, обеспечивающих сбор и анализ данных в реальном времени на границе сети, и в то же время постоянно разрабатываются новые. Мы стремимся облегчить разработчикам процесс создания разнообразных приложений, потому что знаем, зачем им нужно соединять объекты: они хотят получать новую выгоду от своих подключений.