Начало работы с комплектом разработки Particle Argon


Поскольку мир движется в сторону автоматизации и искусственного интеллекта, каждый день появляются различные инновации, делающие устройства более интеллектуальными и масштабируемыми. В эпоху Интернета вещей всё подключено к Интернету, и на рынке появляется множество плат с поддержкой IoT. Ранее мы уже рассматривали несколько плат, таких как PIC IoT WG Development,  STM32F Nucleo-64 Development Boards, Sipeed MaixDuino Ai и другие.

Комплект разработки Particle Argon Наблюдая за быстрым ростом отрасли Интернета вещей, некоторые мировые лидеры платформ Интернета вещей, такие как Particle Cloud, представили свои устройства Интернета вещей 3-го поколения, такие как Particle Argon, Xenon, Boron и т. д.

Все эти платы представляют собой универсальные и мощные комплекты для разработки решений для Интернета вещей (IoT). Все они построены на базе однокристальной системы (SoC) Nordic nRF52840 и включают в себя ядро ​​ARM Cortex-M4F с 1 МБ флэш-памяти и 256 КБ ОЗУ. Этот чип поддерживает Bluetooth 5 и NFC. Кроме того, Argon добавляет Wi-Fi с помощью ESP32 от Espressif. Boron поддерживает LTE благодаря модулю Ublox SARA-U260, а Xenon — Wi-Fi и сотовую связь. Эти комплекты также поддерживают ячеистые сети (Mesh-сети), что помогает расширить возможности устройств Интернета вещей.

В этой статье мы распакуем новый комплект Particle Argon, рассмотрим его особенности и продемонстрируем работу комплекта на примере кода мигания светодиодом.

Комплект разработки Particle Argon с развернутой антенной

Плата разработки Particle Argon IoT — описание аппаратного обеспечения

Для начала давайте заглянем внутрь коробки: вы найдете одну плату Argon IoT, мини-макетную плату, кабель micro-USB, несколько светодиодов и резисторы для начала работы с комплектом.

Плата разработки Particle Argon с комплектом упаковки

Теперь изучите плату Argon с помощью приведенной ниже блок-схемы.

Структурная схема платы Argon

Как видно на блок-схеме, плата построена на базе ESP32 и ядра Nordic nRF с процессором ARM M4. Также имеется внешняя флеш-память и разъём SWD для программирования и отладки кода. Что касается питания, то здесь предусмотрена схема зарядки LiPo-аккумулятора.

Из приведенной выше блок-схемы можно перечислить особенности платы Argon.

Функции:

  1. Wi-Fi-сопроцессор Espressif ESP32-D0WD 2,4 ГГц.
    1. Встроенная флэш-память 4 МБ для ESP32.
    2. Поддержка 802.11 b/g/n.
    3. 802.11 n (2,4 ГГц), до 150 Мбит/с.
  2. Nordic Semiconductor nRF52840 SoC.
    1. Процессор ARM Cortex-M4F 32-бит @ 64 МГц.
    2. 1 МБ флэш-памяти, 256 КБ ОЗУ.
    3. Bluetooth 5: 2 Мбит/с, 1 Мбит/с, 500 Кбит/с, 125 Кбит/с.
    4. Поддерживает инструкции DSP, аппаратно-ускоренные вычисления с плавающей точкой (FPU).
    5. Криптографический и защитный модуль ARM TrustZone CryptoCell-310.
    6. Мощность передачи до +8 дБм (до -20 дБм с шагом 4 дБ).
    7. NFC-A-метка.
  3. Встроенная дополнительная флэш-память SPI объемом 4 МБ.
  4. 20 смешанных сигналов GPIO (6 аналоговых, 8 ШИМ), UART, I2C, SPI.
  5. Micro USB 2.0 с полной скоростью (12 Мбит/с).
  6. Интегрированный разъем для зарядки и аккумулятора Li-Po.
  7. Разъем JTAG (SWD).
  8. Светодиод состояния RGB.
  9. Кнопки сброса и режима.
  10. Встроенная печатная антенна.
  11. Разъем U.FL для внешней антенны.

Таким образом, характеристики платы Argon позволяют с легкостью решать сложные задачи Интернета вещей благодаря встроенному процессору ARM и радиочастотным чипам.

Теперь давайте рассмотрим маркировку и описание контактов платы Argon.

Маркировка контактов

Маркировка контактов платы Argon

Схема контактов

Распиновка платы Argon

Максимальное входное напряжение питания платы Argon составляет +6,2 В.

Описание контактов платы

  1. Li+  => Pin внутренне подключен к положительному выводу разъема батареи LiPo.
  2. RU  => Контакт включения устройства подтянут к земле. Чтобы отключить устройство, подключите этот контакт к GND.

3.  VUSB  => контакт внутренне подключен к источнику питания USB (+ve).

4.  3V3  => Выход встроенного регулятора 3,3 В.

5.  GND  => Контакт заземления системы.

 6.  RST  => Вход системного сброса с активным низким уровнем. Этот вывод имеет внутреннюю подтяжку к питанию.

7.  MD  => Этот вывод внутренне подключен к кнопке MODE. Функция MODE имеет активный низкий уровень.

8.  RX  => В первую очередь используется как UART RX, но может также использоваться как цифровой GPIO.

9.  TX  => В основном используется как UART TX, но может также использоваться как цифровой GPIO.

10.  SDA  => В основном используется как вывод данных для I2C, но может также использоваться как цифровой GPIO.

11.  SCL   => В основном используется как тактовый вывод для I2C, но может также использоваться как цифровой GPIO.

12.  MO, MI, SCK  => Это контакты интерфейса SPI, но их также можно использовать как цифровой GPIO.

13.  D2-D8  => Это общие выводы GPIO. D2-D8 поддерживают ШИМ.

14.  A0-A5  => Это аналоговые входные контакты, которые также могут работать как стандартные цифровые GPIO. Контакты A0-A5 поддерживают ШИМ.

Программирование плат разработки Argon IoT

Существует множество способов программирования плат Particle. Вы можете использовать Web IDE для написания и загрузки кода из любой точки мира. Эта возможность называется «программирование по воздуху» (Over-the-Air programming), и мы ранее использовали её для программирования NodeMCU и ESP32. Для программирования платы Argon также можно использовать Desktop IDE и командную строку. Если устройства IoT подключены в полевых условиях, их необходимо программировать по беспроводной связи (OTA).

Все устройства Particle 3-го поколения имеют предустановленный загрузчик и пользовательское приложение Tinker. Вы можете скачать приложение Particle на устройства iOS и Android, чтобы переключать контакты и получать цифровые и аналоговые показания. Этот загрузчик позволяет программировать плату через USB, OTA, а также вручную, с помощью процедуры сброса к заводским настройкам.

В этом руководстве мы будем использовать Web IDE для программирования комплекта разработки Particle Argon IoT. Мы также рассмотрим как использовать функционал Tinker в плате Argon.

Настройка комплекта Argon для Particle IO

Перед программированием платы Argon её необходимо настроить с помощью приложения Particle для Android или iOS. Скачайте приложение, показанное на рисунке ниже, и убедитесь, что у вас есть работающее интернет-соединение, чтобы плата Argon могла к ней подключиться.

Приложение Particle

1. Подключите плату Argon к ноутбуку или любому источнику питания USB с помощью входящего в комплект кабеля micro-USB. Вы увидите мигающий синий светодиод (режим прослушивания). Если он не мигает, удерживайте кнопку MODE в течение 3 секунд, пока светодиод RGB не замигает синим. Подробнее о значениях различных состояний светодиода см. в документации Particle IO.

Мигающий синий светодиод на плате Argon

2. Откройте приложение Particle IoT на своем телефоне и создайте учетную запись, если у вас ее нет, или войдите в систему, используя свои учетные данные Particle.

Окно входа в приложение Particle IoT

3. Теперь, чтобы добавить наше устройство Argon, нажмите кнопку «+». Снова нажмите кнопку «+» напротив пункта «Set up Argon, Boron or Xenon» .

Добавление платы Argon в приложение Particle IoT

4. Для связи с приложением Argon используется Bluetooth, поэтому приложение попросит включить Bluetooth на смартфоне. Теперь отсканируйте QR-код, напечатанный на плате Argon, чтобы подключить устройство к смартфону.

Связывание платы Argon со смартфоном

5. Далее система спросит, подключена ли антенна. Если да, поставьте галочку в соответствующем поле и нажмите «Далее». Теперь соединение с телефоном будет успешно установлено.

Завершение процесса связывания платы Argon со смартфоном

6. Далее вам будет предложено подключиться к сети Mesh. Поскольку мы не используем Mesh, нажмите «Не использовать сеть Mesh» и нажмите «Далее» .

Теперь нам нужно отправить учётные данные сети Wi-Fi в Argon. Приложение выполнит поиск сетей Wi-Fi, выберите нужную и введите пароль. После этого ваша плата Argon успешно подключится к Particle Cloud, и вы увидите, как на плате медленно мигает голубой цвет.

Подключение платы Argon к Particle Cloud

7. Теперь дайте имя вашей плате Argon. Введите любое имя и нажмите «Далее».

Задание имени для платы Argon

8. Откройте веб-браузер на ноутбуке и введите ссылку setup.particle.io?start-building. Настройка почти завершена. Чтобы убедиться, что Argon успешно подключен к облаку, нажмите кнопку Signal Device. Светодиод Argon замигает всеми цветами радуги.

Завершение процесса подключения платы Argon к облаку

9. Вы можете подать сигнал на своё устройство через приложение. Нажмите на название вашей платы и откройте устройство, как показано ниже. Вы увидите, что плата Argon подключена к сети. На следующем экране вы увидите кнопку Signal.

Подача сигнала на плату Argon через приложение

10. Теперь мы готовы программировать плату Argon с помощью Web IDE.

Программирование платы Argon с использованием Web IDE

1. Перейдите в Particle Console и войдите в систему, используя учетные данные, которые вы используете для входа в приложение Particle.

Страница входа в Particle Console

2. Как видите, в левой части экрана есть множество опций, включая добавление новых устройств, создание ячеистых (Mesh) сетей, интеграцию с IFTTT, Microsoft Azure и Web IDE. Кроме того, на экране отображается список ваших устройств.

Отображение подключенных устройств в Particle Console

3. Сначала выберите опцию «Web IDE». Откроется новая вкладка с онлайн IDE, как показано ниже. В этой IDE будут библиотеки для различных датчиков и плат с примерами кода. Если вы знакомы с Arduino IDE, вам будет очень легко работать с ней, а структура программирования в ней такая же, как и в Arduino IDE.

Примеры скетчей в Web IDE

4. Мы будем использовать очень простой пример кода для мигания светодиодом. Нажмите на него.

Пример кода мигания светодиодом в Web IDE

5. Базовая структура такая же, как в Arduino IDE, использует функции setup() и loop() для написания кода.

Теперь объявим две переменные для двух светодиодов.

6. В void setup() установите режим работы на вывод данных с помощью функции pinMode() для обоих светодиодов.

7. В void loop() используйте функцию digitalWrite(), чтобы светодиоды включались и выключались, как показано ниже.

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

Компиляция кода в Web IDE

Если в коде нет ошибок, в нижней части экрана вы увидите сообщение Code verified («Код проверен»).

Теперь код готов к прошивке платы Argon. Убедитесь, что плата подключена к ноутбуку или другому источнику питания, а также к интернету. RGB-светодиод должен медленно мигать голубым цветом, что означает, что плата подключена к облаку частиц.

Теперь прошейте код, нажав кнопку прошивки в левом верхнем углу. На экране должно появиться сообщение «Flash successful», как показано ниже. Чтобы увидеть это в действии, подключите два светодиода к контактам D6 и D7 и выполните сброс платы.

Сообщение об успешной прошивке платы в Web IDE

Таким образом, вы можете написать свой собственный код и загрузить его с помощью функциональности OTA, сделав свой проект более интеллектуальным.

Использование функциональности Tinker на плате разработки Argon

В Web-IDE есть специальный пример кода под названием Tinker. Загрузив этот код в плату Argon, вы сможете управлять несколькими пинами одновременно, не прибегая к жёсткому кодированию. Кроме того, вы можете получать показания датчиков, не указывая пины в коде.

1. Сразу после прошивки примера кода Tinker вы увидите, что опция Tinker включена в настройках устройства Argon, как показано на рисунке. Щелкните по опции Tinker.

Проверка доступности функциональности Tinker на плате разработки Argon

2. Теперь выберите контакт, на котором вы хотите получить выход или вход. При нажатии вам будет предложено нажать кнопки  digitalWrite,  digitalRead,  analogRead  и  analogWrite. В нашем случае нажмите кнопку digitalWrite  на контактах D7 и D6.

Настройка функциональности контактов в плате разработки Argon

После назначения функции просто нажмите на контакт D7 или D6, и светодиод загорится. При повторном нажатии на D7 светодиод погаснет. Аналогичным образом, вы можете получать данные с датчиков на разных контактах и ​​одновременно управлять устройствами.

Вы можете попробовать все примеры кодов для лучшего понимания различных функций платы.

Помимо использования онлайн-IDE, вы можете скачать Particle Desktop IDE и Workbench, где можно писать код и Flash-файлы так же, как в онлайн-IDE. Однако эти IDE также являются программным обеспечением для онлайн-разработки. Подробнее о Particle Cloud можно узнать в официальной документации здесь.

Полный код программы

Видео, демонстрирующее работу проекта

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

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

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