Начало работы с Arduino UNO R4 и Arduino IoT Cloud


Если вы занимаетесь разработкой или являетесь энтузиастом электроники, то вам наверняка знакома платформа Arduino и её платы. Как известно, платформа Arduino значительно упростила для таких энтузиастов, как мы, создание собственных проектов на микроконтроллерах, сделав их простыми и универсальными. Несмотря на множество плат Arduino, Arduino Uno стала самой популярной и остаётся таковой даже спустя почти 15 лет после своего запуска. Если вы хотите узнать обо всех платах Arduino, ознакомьтесь с нашим кратким сравнительным руководством по платам Arduino. Хотя это надёжная плата для базовых проектов, для более новых и сложных проектов требуется гораздо более мощная плата разработки. Именно поэтому Arduino выпустила Arduino Uno R4. Сохраняя тот же форм-фактор, размер и совместимость с существующими платами расширения Arduino Uno, Arduino Uno R4 оснащёна очень мощным процессором Arm SoC для более сложных сценариев использования.

Начало работы с Arduino UNO R4 и Arduino IoT Cloud

В этой статье мы рассмотрим плату разработки Arduino Uno R4 WiFi, оснащенную микроконтроллером Renesas RA4M1 ARM Cortex-M4 для приложений общего назначения и SoC ESP32-S3 для Wi-Fi и Bluetooth. Мы рассмотрим ее особенности, области применения и как загрузить код на простом примере с использованием Arduino IoT Cloud. Ранее на нашем сайте мы рассматривали начало работы с Arduino IoT Cloud с помощью NodeMCU. Также напоминаем что на нашем сайте есть одно из лучших в сети руководств по началу работы с платой Arduino Uno для начинающих.

Время распаковки!

Теперь давайте распакуем Arduino Uno R4 WiFi. Данная плата поставляется в очень минималистичной упаковке. В коробке находится сама плата с акриловым основанием для защиты, а также благодарственная записка и несколько классных наклеек Arduino.

Содержимое коробки с Arduino Uno R4 WiFi

Компоненты Arduino Uno R4 WiFi

Теперь, если мы посмотрим на плату разработки Arduino Uno R4 WiFi, мы увидим, что она имеет множество аппаратных улучшений по сравнению со своей предшественницей. Вот изображение с маркировкой компонентов Arduino Uno R4 WiFi для лучшего понимания.

Компоненты платы Arduino Uno R4 WiFi

Как видите, плата Arduino Uno R4 WiFi оснащена двумя микроконтроллерами: ESP32-S3 от Esperissif для подключения по Wi-Fi и Bluetooth, а также 32-битным микроконтроллером RA4M1 Arm Cortex M4 от Renesas для управления всеми выводами GPIO. Ещё одна интересная особенность — матрица из 12x8 светодиодов, которую можно использовать для отображения текста, значков, простых индикаторов или даже для минималистичных игр. Это избавляет от необходимости использования внешних дисплеев для таких базовых задач, как отладка и т.п. Плата также поддерживает облачные сервисы Arduino IoT, что значительно упрощает разработку IoT-проектов. В последующих частях этой статьи мы рассмотрим, как создать простой IoT-проект с использованием этой платы.

Теперь вернемся к аппаратной части: Arduino Uno R4 оснащен 14-битным АЦП, что является огромным улучшением по сравнению с 10-битным АЦП в Arduino Uno R3. Еще одно дополнение — 12-битный ЦАП, который пригодится при создании сложных аудиопроектов. Он также имеет встроенные часы реального времени (RTC) и поддерживает протоколы CAN и HID. Это упрощает создание автомобильных, промышленных и других интерфейсных проектов без необходимости использования внешних приемопередатчиков или модулей. 

Распиновка платы разработки Arduino Uno R4 WiFi

Теперь давайте посмотрим на распиновку платы разработки Arduino Uno R4 WiFi. Как видите, она очень похожа на плату разработки Uno R3, но каждый контакт имеет больше функций. Также предусмотрены некоторые контакты ESP32-S3, выведенные через 6-контактный разъем, и даже некоторые через контрольные точки для опытных разработчиков. Но имейте в виду, что контакты ESP32 и контакты быстроразъемного соединения выдерживают напряжение только 3,3 В, поэтому учитывайте это при их использовании.

Давайте программировать — первый пример IoT: мигание светодиода

Для начала рассмотрим пример с IoT и создадим учетную запись в Arduino Cloud. Для этого перейдите на веб-сайт Arduino Cloud и нажмите кнопку «Начать». Если вы еще не вошли в систему, создайте учетную запись или войдите, если она у вас уже есть. Теперь вы будете перенаправлены в приложение Arduino Cloud. После входа в систему пройдите начальную настройку, как показано в видео, и вам будет предложено установить агент Arduino Cloud. Установите его, если вы еще этого не сделали, и запустите приложение. После запуска щелкните по приложению облачного агента и выберите Go to Arduino Cloud («Перейти в Arduino Cloud»), что вернет вас в приложение Arduino Cloud.

Добавление нового устройства в Arduino Cloud

Теперь в приложении Arduino Cloud нажмите Devices («Устройства»), затем Add Devices («Добавить устройства») и выберите плату Arduino во всплывающем окне. Убедитесь, что плата подключена к компьютеру, и дождитесь, пока Arduino Cloud обнаружит плату. После обнаружения нажмите «Настроить» и следуйте инструкциям на экране, чтобы присвоить имя и настроить устройство. Следуйте инструкциям, приведенным в видео, для настройки Uno R4. После завершения вас перенаправит обратно в приложение Cloud.

Настройка платы Arduino Uno R4 в Arduino Cloud

Теперь вы видите, что устройство успешно добавлено в облако, но находится в автономном режиме. Это происходит потому, что в Uno R4 нет программы, и поэтому оно не подключено к облаку. Для продолжения разверните левую панель, нажав на кнопку в верхнем левом углу и выбрав пункты меню.

Развертывание левой панели в Arduino Cloud

На странице Things («Вещи») нажмите Create Thing («Создать вещь»), и вы перейдете на страницу, где сможете добавить облачные переменные. Вещь можно просто объяснить как виртуальное представление оборудования, которое можно использовать для управления реальной платой или считывания с нее данных. Это как виртуальный контакт. Или, говоря простым языком, любые устройства ввода или вывода, а также датчики, подключенные к плате, можно считать вещью.

Добавление новой переменной в Arduino Cloud

Сначала на странице «Устройства» свяжите ранее добавленное устройство, нажав на кнопку в разделе Associate device («Связать устройство») и выбрав наше устройство. Затем нажмите кнопку «Добавить», чтобы создать новую переменную.

Ввод параметров новой переменной в Arduino Cloud

Назовите переменную led и выберите тип boolean. Установите для переменной права доступа на чтение и запись, а политику обновления переменной — на on change («при изменении»). Нажмите add variable («Добавить переменную»), чтобы завершить процедуру, и новая переменная будет создана. После добавления нажмите кнопку configure («Настроить») в разделе network («Сеть»), введите SSID и пароль вашей сети Wi-Fi в соответствующие поля во всплывающем окне и нажмите «Сохранить». 

Теперь вернитесь на страницу эскизов, выбрав её на левой панели или нажав на кнопку sketch («Скетч») вверху. Там вы найдёте только что созданный скетч и сможете его открыть.

Выбор скетча в Arduino Cloud

В редакторе скетчей вы увидите уже открытые файлы, включая сам скетч и заголовочный файл thingsProperties.h. Этот заголовочный файл содержит все необходимые объявления, относящиеся к облаку IoT, включая учетные данные Wi-Fi, объявления переменных и другие необходимые объявления. На вкладке secret («Секретные данные») вы найдете сами учетные данные Wi-Fi.

Таким образом, чтобы светодиод мигал, измените скетч, как показано ниже, и загрузите его на плату Arduino.

Обратите внимание, что функции, связанные с облаком, не нужны для мигания светодиода, требуется только инициализация вывода в функции setup, а также функции цифровой записи и задержки в цикле. Но поскольку мы будем использовать тот же скетч для следующего примера, мы просто оставили оставшийся код. Теперь, после загрузки кода, вы можете увидеть, как светодиод на Uno R4 начинает мигать каждую секунду.

Мигание светодиода на плате Arduino Uno R4

Пример 2: Управление светодиодом с помощью панели управления IoT

Чтобы управлять светодиодом с панели управления, сначала перейдите на панель управления в левой части экрана и нажмите Create Dashboard («Создать панель управления»).

Добавление новой панели управления в Arduino Cloud

На странице панели управления вы увидите два значка для переключения режимов: один для просмотра панели управления, другой для редактирования панели управления. Переключитесь в режим редактирования. Теперь появится новая кнопка «Добавить», нажмите на неё и выберите переключатель.

Добавление переключателя на панель управления в Arduino Cloud

После добавления нажмите кнопку link variable («Связать переменную») на панели свойств переключателя, выберите переменную LED, которую мы добавили ранее, и нажмите «Готово». Затем вернитесь в режим просмотра. В скетче измените код следующим образом и загрузите код.

После загрузки перейдите на панель управления, и теперь вы можете управлять светодиодом с помощью переключателя.

Мигание светодиодом с помощью переключателя на панели управления в Arduino Cloud

Пример 3: Подключение датчика температуры

В этом примере мы будем использовать датчик DHT11. Для этого следуйте приведенной ниже схеме и подключите датчик DHT11 к плате Arduino Uno R4 WiFi.

Схема подключения датчика DHT11 к плате Arduino Uno R4 WiFi

Подключите контакты питания к контактам 5 В и GND на плате Arduino, а сигнальный контакт — к контакту D7 на Arduino. После этого перейдите на страницу «Things», отредактируйте существующий объект и создайте новую переменную с именем temperature, типом integer, установите для переменной права доступа на чтение и запись, а политику обновления переменной — на периодическое обновление. Затем перейдите на панель управления и добавьте новый виджет индикатора, свяжите его с переменной temperature и установите минимальное и максимальное значение для индикатора.

Позже перейдите к скетчам и отредактируйте существующий скетч. Новая переменная будет автоматически добавлена ​​в скетч. Измените скетч следующим образом и загрузите код на плату.

После загрузки кода откройте панель управления, там вы увидите, что показания датчика температуры обновляются значениями с датчика DHT11.

Отображение температуры с датчика DHT11 на панели управления в Arduino Cloud

Как мы знаем, это лишь некоторые из основных задач, которые можно выполнить с помощью Arduino Uno R4 WiFi. Uno R4 WiFi — это очень мощная и универсальная плата, которую можно использовать в качестве замены многим существующим решениям для Интернета вещей.

Полный код проекта

(Проголосуй первым!)
Загрузка...
49 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *