Программируемый беспроводной IIoT-модуль WM2000

Изометрический рендер WM2000.

Введение

WM2000 - первый программируемый беспроводной IIoT-модуль Tibbo. В устройстве есть интерфейсы Wi-Fi и Bluetooth Low Energy (BLE), которые дали несколько новых возможностей: автоматическое подключение к Wi-Fi (автоассоциация), отладку по беспроводной связи, обновление по воздуху (OTA) и защиту транспортного уровня (TLS).

Аппаратная часть WM2000 включает два высокоскоростных последовательных порта. Кроме того, у модуля есть программные порты I²C/SPI, встроенные флеш-память и EEPROM, часы реального времени и десять линий GPIO, две из которых работают как внешние прерывания. Девять линий можно настроить на выход широтно-импульсной модуляции (PWM).

WM2000 полностью поддерживается средой Tibbo IDE (TIDE) и специальной платформой программирования, которая охватывает все аппаратные возможности модуля.

Два приложения Tibbo BASIC/C

WM2000 - первое устройство Tibbo, способное хранить до двух скомпилированных бинарных файлов Tibbo BASIC/C - «APP0» и «APP1» (в любой момент выполняется только один из них).

Все прежние изделия хранят одно приложение, которое может занять всю флеш-память, не занятую Monitor/Loader (M/L) и TiOS. В WM2000 флеш-памяти как минимум в четыре раза больше, чем у любого предшественника, поэтому второе приложение - APP1 - можно хранить в пространстве, оставшемся после M/L, TiOS и APP0.

Блок конфигурации устройства Device Configuration Block (DCB), хранящийся во флеш-памяти, позволяет определить, какое из двух приложений запускается при включении питания или перезагрузке WM2000 (есть и принудительный запуск APP0 через линию MD). Для работы с новой консолью BLE, дающей доступ к DCB, Tibbo подготовила удобное веб-приложение BLE Terminal.

Приложения Tibbo BASIC/C могут работать с DCB через предоставленный API (новые свойства и методы нескольких объектов). В частности, APP0 и APP1 могут читать и записывать данные DCB, а также переключаться друг на друга.

В Tibbo считают, что APP0 будет играть роль «вторичного Monitor/Loader», а APP1 - реализовывать основные функции изделий на базе WM2000. Например, такой «вторичный M/L» может предоставлять способы настройки параметров изделия, обновления его кода из облака или выполнения других функций управления. С этой целью Tibbo разработала «сопутствующее» приложение, которое поставляется с WM2000 как APP0. Это сопутствующее приложение позволяет просматривать и изменять конфигурацию устройства через смартфонное приложение L.U.I.S. (доступно для iOS и Android). Поскольку сопутствующее приложение написано на Tibbo BASIC, пользователи могут изменять его код под свои нужды.

Упрощённое подключение к Wi-Fi

В платформе WM2000 значительно улучшен объект wln.: он поддерживает автоматическую ассоциацию с заданной беспроводной сетью. Благодаря этому интерфейсом Wi-Fi в WM2000 пользоваться так же просто, как портом Ethernet в устройствах Tibbo, ориентированных на проводную связь. Задайте SSID и пароль целевой сети Wi-Fi, включите «autoconnect» - и WM2000 автоматически подключится к сети и будет оставаться подключённым, пока сеть в зоне досягаемости! Это же даёт возможность беспроводной отладки приложений Tibbo BASIC/C.

Все параметры автоматической ассоциации с Wi-Fi хранятся в DCB и настраиваются через консоль BLE или из кода Tibbo BASIC/C. Интерфейс Wi-Fi можно настроить и с помощью сопутствующего приложения, которое поставляется с модулем.

Аппаратные особенности

Примечания:

  1. Хотя во флеш-памяти WM2000 можно хранить два независимых скомпилированных бинарных файла (приложения) Tibbo BASIC/C, одновременно может выполняться только один.
  2. Несколько параметров конфигурации WM2000 хранятся в DCB, доступ к которому есть через консоль BLE. Веб-приложение BLE Terminal от Tibbo использует Web Bluetooth API (совместим с браузерами Chrome, Chromium, Edge и Opera) для подключения к консоли BLE модуля WM2000. Параметры конфигурации можно также читать и задавать из кода Tibbo BASIC/C.
  3. TLS поддерживается на одном исходящем TCP-соединении.
  4. Чтобы включить отладку по Wi-Fi, нужно включить autoconnect - автоматическую ассоциацию с заданной сетью Wi-Fi. Это можно сделать через консоль BLE, сопутствующее приложение или в коде.
  5. В режиме отладки через последовательный порт приложениям Tibbo BASIC/C доступен только один последовательный порт. Если нужны оба порта, используйте вместо этого отладку по Wi-Fi. Режим отладки выбирается через консоль M/L или сопутствующее приложение.
  6. Для нормальной работы модуля питание RTC должно быть подключено всегда. Если резервной батареи нет, подключите вход резервного питания к VCC. Вход резервного питания потребляет ток, даже когда модуль активен.
  7. Ток, потребляемый входом резервного питания, может изменяться в пределах ±15% в зависимости от конфигурации подключённого оборудования.

Возможности программирования

На WM2000 работает Tibbo OS (TiOS). Ниже перечислены возможности, которые поддерживает его платформа программирования:

  • Объекты:
    • adc - даёт доступ к трём каналам АЦП
    • beep - формирует сигналы зуммера(1)
    • bt - отвечает за интерфейс BLE (Bluetooth Low Energy)(1)
    • button - отслеживает линию MD (настройки)
    • fd - управляет файловой системой во флеш-памяти и прямым доступом к секторам(1)
    • io - работает с линиями ввода-вывода, портами и прерываниями
    • kp - работает с матричными клавиатурами и клавиатурами с двоичным выходом
    • pat - «проигрывает» шаблоны на пяти парах светодиодов
    • ppp - обеспечивает доступ в Интернет через последовательный модем (GPRS и др.)
    • pwm - управляет каналами широтно-импульсной модуляции(1)
    • romfile - облегчает доступ к файлам ресурсов (постоянным данным)
    • rtc - отсчитывает дату и время
    • ser - управляет последовательными портами (режимы UART, Wiegand, «тактовый сигнал/данные»)(1)
    • sock - обмен данными через сокеты (до 32 сеансов UDP, TCP и HTTP) и поддержка TLS(2)
    • ssi - управляет каналами последовательного синхронного интерфейса (SPI, I²C)
    • stor - даёт доступ к EEPROM
    • sys - отвечает за общие функции устройства(1)
    • wln - работает с интерфейсом Wi-Fi(1)
  • Группы функций: строковые функции, тригонометрические функции, функции преобразования даты и времени, функции шифрования и вычисления хэшей и другие
  • Типы переменных: byte, char, integer (word), short, dword, long, real и string, а также пользовательские массивы и структуры

Примечания:

  1. Эти объекты платформы либо новые, либо получили новые возможности (по сравнению с EM2000).
  2. TLS1.2 с криптосистемой RSA-2048, поддерживается на одном исходящем TCP-соединении.
Исходный материал Tibbo обновлён 12 сентября 2022Оригинал на docs.tibbo.com · Сообщить об ошибке