IoT

Разработка прототипов устройств для облачных приложений с использованием операционной системы Mongoose и платформы Google IoT Core

ОС Mongoose с открытым исходным кодом от компании Cesanta позволяет разработчикам встраиваемых систем быстро перейти от идеи к прототипу и, далее, плавно к производству изделия. ОС помогает ускорить разработку прототипов устройств, подключаемых с использованием облачных технологий IoT и безопасно подключиться к Google Cloud IoT Core.
3396
В избранное

Операционная система (ОС) Mongoose с открытым исходным кодом от компании Cesanta позволяет разработчикам встраиваемых систем быстро перейти от идеи к прототипу и, далее, плавно к производству изделия. ОС помогает ускорить разработку прототипов устройств, подключаемых с использованием облачных технологий IoT и безопасно подключиться к Google Cloud IoT Core.

Стартовый комплект ОС Mongoose включает:

  • Беспроводное (Over-the-air) обновление и удаленное управление;
  • Инфраструктуру удаленного вызова процедур (RPC) для полного удаленного контроля;
  • Поддержку шифрования и аппаратной криптографии;
  • ARM® mbed TLS-оптимизацию для небольшого объема памяти;
  • Возможность разработки на C или Java Script (со встроенным движком JavaScript-mJS);
  • Готовые приложения.

Google Cloud IoT Core  обеспечивает соединение и централизованное управление миллионами глобально распределенных устройств IoT.

При использовании в рамках более широкого решения Google Cloud IoT, ОС  Mongoose может поглощать все IoT данные и подключаться к самым современным службам аналитики Google Cloud, включая  Cloud Pub/Sub, Dataflow, Bigtable, BigQuery и  Machine Learning.

Сегодня разработчики ОС Mongoose предлагают стартовый набор на основе отладочного комплекта Texas Instruments Launchpad с беспроводным микроконтроллером SimpleLink™ CC3220SF (Рис. 1), имеющим 1 МБ Flash памяти и 256 КБ RAM. MCU имеет две физически разделенные на чипе среды выполнения: процессор приложений на Arm® Cortex®-M4 и сетевой процессор на Arm Cortex-M3. Сетевой процессор обслуживает Wi-Fi® и логические слои интернет-приложений, запускает расширенные функции безопасности, разгружая MCU хоста от таких задач и обеспечивая более надежное соединение чипа с облаком с помощью единого устройства.

Отладочная плата  CC3220SF-LAUNCHXL

Рис. 1. Отладочная плата CC3220SF-LAUNCHXL

Комплекты для разработки программного обеспечения интернета вещей (SDK) для подключения встроенных устройств к облачным платформам обычно содержат коллекцию исходных файлов и примеры для отправки и получения данных с облака через Message Queuing Telemetry Transport (MQTT). Но для реализации этой задачи требуется значительное время и усилия, которые необходимы для создания прототипа и разработки всех основных функциональных возможностей инфраструктуры. Вместе с тем, основанный на ОС Mongoose и Google Cloud IoT Core стартовый набор SimpleLink CC3220  позволяет реализовать компоненты и инфраструктуру, т.е. это готовый прототип, позволяющий  отправлять данные в облако Google IoT в считанные минуты.

Стартовый набор поставляется с пошаговыми обучающими программами, которые включают следующие темы:

  • Настройка со стороны облака – как сконфигурировать Google Cloud IoT Core;
  • Настройка устройства - как настроить и запустить устройство с  ОС Mongoose в течение пяти минут;
  • Подготовка к работе с Google Cloud IoT Core -  как подготовить плату и подключить ее к  Google Cloud IoT Core;
  • Пример IoT кнопки – как установить кнопку интернета и отправить сообщение в Google Cloud Iot Core с помощью этой кнопки;
  • Пример с дистанционно управляемым светодиодом – как настроить и удаленно управлять светодиодом через Google Cloud IoT Core.

Для старта проекта просто закажите  отладочный комплект CC3220SF-LAUNCHXL и следуйте выложенным ниже инструкциям.

Операционная система Mongoose на CC3220

Руководство по быстрому старту для Google IoT Core

Бюджетная  отладочная плата CC3220SF LaunchPad (CC3220SF-LAUNCHXL) для  IoT приложений разработана компанией Texas Instruments (TI). На ней установлены кнопки, светодиоды, имеется встроенный акселерометр Bosh BMA222 и встроенный температурный датчик TMP006 от TI.

Учебник  обеспечивает простоту старта разработки приложений для IoT с CC3220, Mongoose OS и Google IoT Core и охватывает следующие темы:

Настройка со стороны облака

  1. Инсталлируйте gcloud command line tool
  2. Следуйте инструкциям по настройке Google IoT Core
  3. Войдите в консоль Google IoT Core Console. Убедитесь, что в консоли отображается  реестр устройств и что ваше устройство есть в этом списке

Настройка со стороны облака. Консоль Google IoT Core

Рис. 2. Настройка со стороны облака. Консоль Google IoT Core

Настройка устройства

  1. Загрузите и инсталлируйте TI CCS Uniflash
  2. Загрузите и инсталлируйте Mongoose OS mos tool
  3. Подключите CC3220S FLaunch Pad к вашему ПК с помощью кабеля micro-USB
  4. Запустите mos tool. Появится веб-интерфейс (Web UI) с диалогом подключения
  5. Выберите "Serial Port", нажмитекнопку Connect (Рис. 3)
  6. Выберите платформу "cc3220" , "demo-js" app, нажмите кнопку Flash. Если вы видите Tick uptime: журналы устройств появляются, но кнопка Flash все еще вращается, перезапустите инструмент mos
  7. Введите ваши  учетные данные WiFi и нажмите "Save"
  8. Нажмите "Done". Это  должно открыть файл init.js, который Вы можете редактировать и загружать на устройство, нажав на кнопку  на панели инструментов (Рис. 4).

Устранение неполадок: Обращайтесь на Mongoose OS forum или Mongoose OS chat.

Настройка устройства

Рис. 3. Настройка устройства

Открытие файла init.js

Рис. 4. Открытие файла init.js

Учебник 1. Подготовка Google IoT Core

Подготовка платы и подключение ее к  Google IoTCore

  1. Следуйте инструкциям по установке Google IoT Core Setup
  2. Следуйте инструкциям по настройке со стороны устройства Setup device side
  3. Откройте веб-интерфейс mos Web UI 
  4. Убедитесь, что устройство подключено к Wi-Fi: значок "devicesetup" зеленый (Рис. 5).
  5. Посмотрите журналы устройства после перезагрузки, вы должны видеть сообщение MQTT CONNACK 0
  6. Откройте консоль Google IoT и убедитесь, что устройство отображается в реестре устройств IoT.

Веб-интерфейс mos Web UI

Рис. 5. Веб-интерфейс mos Web UI 

Подробности регистрации

Рис. 6. Подробности регистрации

Учебник 2: Кнопка Интернет

Отправка сообщения в Google IoT Core по нажатию кнопки

  1. В веб-интерфейсе mos откройте файл init.js (Рис. 7)
  2. Скопируйте/ вставьте следующий код:


     
  3. Нажмите кнопку Загрузить .  Дождитесь перезагрузки устройства
  4. Нажмите на кнопку, чтобы отправить сообщение
  5. Откройте консоль Google IoT Core в другой вкладке браузера, перейдите в реестр iot-registry, кликните на ваше устройство, а затем на  вкладку "Configuration and state history"
  6. Нажмите кнопку обновить, выберите состояние и выберите текстовое представление (Рис. 8)

Файл init.jsв веб-интерфейсе mos

Рис. 7. Файл init.jsв веб-интерфейсе mos

Выбор состояния и текстового представления

Рис. 8. Выбор состояния и текстового представления

Учебник 3. Удаленное управление светодиодом

Реализация удаленного управления светодиодом с помощью Google IoT Core Config

  1. В веб-интерфейсе mos Web UI откройте файл init.js
  2. Скопируйте/ вставьте следующий код:


     
  3. Нажмите кнопку Загрузить . Дождитесь перезагрузки устройства.
  4. Нажмите на кнопку отправки сообщения.
  5. Откройте Google IoT Core Console  в другой вкладке браузера, перейдите на реестр iot-registry, кликните на ваше устройство, а затем на вкладку "Configuration and state history”.
  6. Нажмите на кнопку "Update Config" (Рис. 9). Введите {"on": true}, кликните кнопку "Отправить на устройство". (Рис. 10)
  7. Обратите внимание на сообщение журнала с устройства, и изменение цвета свечения светодиода.
  8. Обновите конфигурацию несколько раз, измените "on" c True на false и обратно, посмотрите, как реагирует устройство.

Обновление конфигурации

Рис. 9. Обновление конфигурации

Отправка сообщения на устройство

Рис. 10. Отправка сообщения на устройство

Приобрести изделие CC3220SF-LAUNCHXL, как и другие средства разработки и отладки можно непосредственно на нашем сайте.

Материал подготовил
Шрага Александр,
a.shraga@terraelectronica.ru

Производитель: Texas Instruments
Наименование
Производитель
Описание Корпус/
Изображение
Цена, руб. Наличие
CC3220SF-LAUNCHXL
CC3220SF-LAUNCHXL
Texas Instruments
Арт.: 2265723 ИНФО AN RD
Поиск
предложений
Отладочный комплект на основе беспроводного микроконтроллера SimpleLink™ Wi-Fi® CC3220SF
CC3220SF-LAUNCHXL
-
Поиск
предложений

Сравнение позиций

  • ()