Ваши данные об окружающей среде в облаке Arduino IoT
Компоненты и расходные материалы
| × | 1 | ||||
| × | 1 |
Приложения и онлайн-сервисы
|
Об этом проекте
История
Создав этот проект, вы научитесь считывать данные с различных датчиков, доступных на ENV Shield, а также узнаете, как визуализировать данные на виджетах, доступных в Arduino Cloud.
Что вам нужно
Для проекта требуется Arduino MKR WiFi 1010, MKR ENV Shield, аккумулятор (или другое средство питания плат) и учетная запись в Arduino IoT Cloud:
- Ядром проекта является Arduino MKR WiFi 1010. Эта плата обрабатывает вычисления и связь благодаря микроконтроллеру SAMD21 и встроенному модулю NINA-W10, поддерживающему WiFi и BLE;
- Аккумулятор подключается к MKR WiFi 1010 и используется для питания устройства, когда альтернативный источник питания недоступен;
- MKR ENV Shield - это экран Arduino MKR с датчиками окружающей среды для измерения температуры, влажности, давления, света и УФ-излучения.
- Учетные данные необходимы для подключения к сети Wi-Fi.
Аппаратная конфигурация относительно проста:для этого требуются только MKR WiFi 1010, MKR ENV Shield и аккумулятор.
Совместите MKR WiFi 1010 и экран ENV, убедившись, что маркированные штыревые разъемы совпадают
Батарейный блок должен быть подключен к соответствующему разъему на MKR WiFi 1010:
Структура кода
В коде, необходимом для этого проекта, есть две основные части:шаблон скелета, сгенерированный API-интерфейсами Arduino IoT Cloud для отображения данных, полученных с платы MKR WiFi, и библиотека Arduino MKRENV, которая позволяет нам считывать значения, измеренные всеми его датчиками:
- Наша вещь в Arduino IoT Cloud будет настроен для хранения шести свойств, которые будут представлять все измерения, полученные MKR WiFi 1010 и отправленные по защищенному соединению.
- Скетч Arduino сначала автоматически создается IoT Cloud и обрабатывает подключение к Интернету, а также передачу данных между нашей Thing и платой, а затем мы добавим библиотеку Arduino MKRENV для управления датчиками ENV Shield.
Эскиз
Первый раздел кода используется для включения библиотек, необходимых нашему приложению.
thingProperties.h
включает в себя все функции подключения Wi-Fi и управление подключением к облаку; единственная информация, которая требуется от пользователя, - это учетные данные, необходимые для установления соединения с сетью Wi-Fi ( SSID и ПАРОЛЬ ).
Arduino IoT Cloud аутентифицирует подключенное устройство с помощью ключа, хранящегося внутри крипто-чипа платы во время настройки устройства (в разделе Устройства раздел - ДОБАВИТЬ УСТРОЙСТВО) , гарантируя передачу данных по защищенному каналу.
Библиотека Arduino_MKRENV включает все необходимое для считывания значений, измеренных каждым датчиком на экране MKR ENV.
#include "thingProperties.h" #include
Как обычно, настройка
Раздел позволяет нам инициализировать все объекты, используемые скетчем, включая Arduino IoT Cloud и его свойства. ArduinoCloud.begin ()
гарантирует, что наша доска готова к подключению и обмену данными с приборной панелью:
void setup () {// Инициализируем последовательный порт и ждем открытия порта:Serial.begin (9600); // Эта задержка дает возможность дождаться последовательного монитора без блокировки, если ничего не найдено delay (1500); // Определяется в thingProperties.h initProperties (); // Подключение к Arduino IoT Cloud ArduinoCloud.begin (ArduinoIoTPreferredConnection); / * Следующая функция позволяет получить больше информации, относящейся к состоянию сети и подключению к IoT Cloud и ошибкам. Чем выше число, тем более детализированная информация вы получите. По умолчанию 0 (только ошибки). Максимальное значение 4 * / setDebugMessageLevel (2 ); ArduinoCloud.printDebugInfo (); if (! ENV.begin ()) {Serial.println ("Не удалось инициализировать экран MKR ENV!"); в то время как (1); }}
Последний бит кода - это цикл, в котором мы запрашиваем каждый датчик на MKR ENV Shield. После каждого чтения в скетче обновляются переменные свойств и благодаря ArduinoCloud.update ()
данные синхронизируются с облаком:
void loop () {ArduinoCloud.update (); // Ваш код здесь влажность =int (ENV.readHumidity ()); люкс =int (ENV.readIlluminance ()); давление =int (ENV.readPressure ()); температура =int (ENV.readTemperature ()); uva =int (ENV.readUVA ()); uvb =int (ENV.readUVB ()); uvi =int (ENV.readUVIndex ()); delay (1000);}
Как настроить и использовать
Соедините все части вместе, затем подключите свой MKR WiFi 1010 к компьютеру и войдите в свою учетную запись Arduino Cloud.
Вам необходимо выполнить процедуру, описанную в разделе «Приступая к работе с Arduino Cloud», и создать свойства, как указано в следующей таблице, помня, что каждое имя чувствительно к регистру:
Каждый раз, когда вы добавляете новый виджет, вам необходимо заполнять форму, подобную приведенной ниже.
Если вы правильно заполнили каждое свойство, у вас должно получиться что-то вроде этого:
Когда все свойства созданы, нажмите кнопку редактировать код . Вы будете перенаправлены в веб-редактор Arduino Create Web Editor, где замените основной эскиз на первой вкладке следующим кодом:
/ * Эскиз, сгенерированный Arduino IoT Cloud Thing "env_shield" https://create.arduino.cc/cloud/things/829941ed-efdd-4572-91c0-e93a732192ec Описание свойств облака Arduino IoT Следующие переменные автоматически генерируются и обновляются при внесении изменений в свойства Thing int влажность; int lux; внутреннее давление; внутренняя температура; int uva; int uvb; int uvi; Свойства, помеченные как READ / WRITE в Cloud Thing, также будут иметь функции, которые вызываются при изменении их значений с панели инструментов. Эти функции создаются с помощью Thing и добавляются в конце этого скетча. * / # Include "thingProperties.h" #include void setup () {// Инициализируем последовательный порт и ждем открытия порта:Последовательный. begin (9600); // Эта задержка дает возможность дождаться последовательного монитора без блокировки, если ничего не найдено delay (1500); // Определяется в thingProperties.h initProperties (); // Подключение к Arduino IoT Cloud ArduinoCloud.begin (ArduinoIoTPreferredConnection); / * Следующая функция позволяет получить больше информации о состоянии сети и подключении к IoT Cloud, а также об ошибках. Чем больше число, тем более детализированную информацию вы получите. По умолчанию 0 (только ошибки). Максимум 4 * / setDebugMessageLevel (4); ArduinoCloud.printDebugInfo (); if (! ENV.begin ()) {Serial.println ("Не удалось инициализировать экран MKR ENV!"); в то время как (1); }} void loop () {ArduinoCloud.update (); // Ваш код здесь влажность =int (ENV.readHumidity ()); люкс =int (ENV.readIlluminance ()); давление =int (ENV.readPressure ()); температура =int (ENV.readTemperature ()); uva =int (ENV.readUVA ()); uvb =int (ENV.readUVB ()); uvi =int (ENV.readUVIndex ()); delay (1000);} void onHumidityChange () {// Делаем что-то} void onLuxChange () {// Делаем что-то} void onPressureChange () {// Делаем что-то} void onTemperatureChange () {// Что-то делаем} void onUvaChange () {// Делаем что-то} void onUvbChange () {// Делаем что-то} void onUviChange () {// Делаем что-то}
Загрузите эскиз на доску, и как только соединение будет установлено, MKR WiFi начнет синхронизировать значения, полученные из MKR ENV Shield, с их свойствами в облаке, которые будут отображаться на приборной панели созданной Вещи
Эскиз в Arduino Create доступен ниже в разделе кода.
Мы надеемся, что вам понравится создавать простой датчик для дома / сада с помощью Arduino IoT Cloud, MKR WiFi 1010 и элегантного MKR ENV Shield.
Ваш
Команда Arduino
Код
Данные об окружающей среде в Arduino IoT Cloud
Производственный процесс
- Используйте MATLAB для использования ваших данных IoT в реальном времени
- Создайте свою облачную инфраструктуру для повышения производительности и эффективности
- Заблуждение № 3:облако - это безответственный способ ведения бизнеса
- Являются ли Интернет вещей и облачные вычисления будущим данных?
- Готова ли ваша система к IoT?
- Как заставить данные IoT работать на ваш бизнес
- Интернет вещей и ваше понимание данных
- 3 удивительных преимущества облака в IoT
- Облако в Интернете вещей
- Исследование предполагает, что инвестиции в IoT превзойдут облако