Google Cloud - обнаружение автономных устройств

Я новичок в IoT Core Google Cloud и связанных с ним службах, и наткнулся на проблема, для которой я не могу найти "передового" решения.

Используя Google Cloud IoT Core для получения данных телеметрии от устройств IoT, как лучше всего определить, когда сенсорное устройство Интернета вещей переходит в автономный режим или перестает работать? Другие реализации облачных служб Интернета вещей имеют встроенные тайм-ауты уведомлений для генерации предупреждений, но я не могу найти ничего подобного для Google IoT

Пример: ряд устройств IoT Edge отслеживает температуру в холодильных камерах и каждую минуту отправляет результат измерения в Google Cloud IoT Core через MQTT или HTTP через Wi-Fi или мобильные соединения для передачи данных. Если измеренная температура превышает допустимые пределы, срабатывает предупреждающее сообщение, которое направляется эксплуатационному обслуживающему персоналу.

Однако, если один из датчиков IoT Edge внезапно перестает работать по какой-либо причине, как это могут обнаружить службы Google Cloud IoT? Очевидно, единственным признаком того, что что-то не так, является то, что от определенного DeviceID не было получено никаких сообщений в течение периода, значительно превышающего настроенный интервал обмена сообщениями, например 2 x interval + grace_period, чтобы можно было сгенерировать предупреждение о нехватке данных телеметрии, возможно, вызванной отключением питания, которое необходимо устранить?

Существуют ли какие-либо стандартные средства, с помощью которых можно автоматически поддерживать статус «Присутствие устройства IoT» для каждого устройства на основе (отсутствия) полученных от устройства данных телеметрии таким образом, чтобы состояние изменилось (онлайн / офлайн переходы) могут вызывать создание предупреждающих сообщений?

Или потребуется отдельная запланированная служба для итерации всех (предположительно активных) устройств, измерения времени с момента последнего полученного обновления телеметрии (температуры) и непосредственного обновления статуса присутствия устройства?


person Morten    schedule 21.02.2019    source источник
comment
Здесь нужно прояснить, в чем заключается настоящая проблема. Если проблема, которую вы описываете, заключается в том, что устройство просто перестало отправлять показания датчиков из-за внутренней ошибки, но оно все еще подключено к брокеру MQTT, это не то, что IoT Core может отслеживать напрямую, поскольку оно является частью вашего приложения. Однако, если проблема связана с тем, что устройство потеряло соединение, это можно отследить с помощью ответа Алекса.   -  person devunwired    schedule 26.02.2019


Ответы (1)


Предполагая, что вам просто нужны события отключения, ранее было опубликовано решение, которое включает настройку журналов StackDriver. который экспортирует сообщения в Pub / Sub. Оттуда вы можете обработать событие в облачной функции, чтобы отправить электронное письмо аналогично тому, как это доступно в вашей указанной реализации. Для настройки требуется больше времени, но он более гибок с точки зрения того, что вы можете делать с событиями подключения / отключения.

Событие или статус подключения устройства Google Core IoT в автономном режиме

person Alex Hong    schedule 25.02.2019