Большинство плат в симуляторе работают с чистыми сигналами: пин переходит в высокое состояние, светодиод загорается. Каталог DFRobot — это электроника другого рода. Сердечный ритм не бывает чистым. Как и уровень CO в гараже, pH аквариума или вопрос «есть ли кто-то в этой комнате прямо сейчас». Именно такие датчики и делают DFRobot известными, и именно их это партнёрство приносит в Velxio: оборудование, которое измеряет сложный физический мир, причём сам сложный физический мир тоже симулируется — в виде ползунков и элементов управления, которые можно перетаскивать, пока ваш код выполняется.
Это четвёртый пост в нашей серии о компаниях, поддерживающих Velxio, после Seeed Studio, M5Stack и Pimoroni.
Начнём с UNIHIKER
UNIHIKER M10 — это одноплатный компьютер DFRobot для образования: 2,8-дюймовый сенсорный экран спереди, полноценная Linux-система внутри, Python как первый язык и краевые разъёмы, к которым класс может подключать компоненты без макетной платы. В Velxio он загружается как то, чем он является, — небольшой Linux-компьютер с экраном.

Откройте velxio.dev/example/unihiker-system-time и нажмите Run. Это собственное упражнение DFRobot «системное время» из их вики: Python-скрипт рисует дату и часы на встроенном экране и обновляет их раз в секунду. Ничего не было адаптировано для симулятора; суть в том, что урок, который учитель уже использует, работает как опубликованный. Отсюда другие примеры UNIHIKER идут туда, куда идёт класс: светофор на краевых контактах, цифровое пианино, звёздное небо, которого можно касаться и IoT-умный дом, который отправляет данные в панель SIoT, как учит вики.
Одно замечание о планах: UNIHIKER запускает полноценную Linux-гостевую систему, что тяжелее браузерных плат, поэтому для него нужен платный план Velxio. Всё остальное в этом посте — датчики и HuskyLens на Arduino Uno или ESP32 — работает на бесплатном плане.
Сердечный ритм, с которым можно поспорить
Пример Gravity ECG — тот, который стоит показать в первую очередь. Без проводов он открывается с фронтендом сердечного ритма AD8232, подключённым к Uno, и красным светодиодом, который мигает на каждом R-зубце, — пульс, который видно на плате. Затем перетащите ползунок BPM с 40 до 180 и наблюдайте, как светодиод успевает, пока последовательный монитор выводит вычисленную частоту сердечных сокращений.
Этот ползунок и есть вся идея симулированных датчиков. На столе проверка вашего сигнала тахикардии означает поиск человека с сердцем, бьющимся 180 раз в минуту. В Velxio это означает перетаскивание элемента управления, и пример с сигналом тревоги делает именно это: пороги, гистерезис, логика, которую вам действительно пришлось бы правильно реализовать, прежде чем такая схема станет полезной.
Линейка Gravity, шесть датчиков

Каждый из них уже есть в палитре компонентов, и у каждого есть собственный физический элемент управления:
- Датчик присутствия C4001 mmWave. Радар, а не PIR: он видит присутствие, расстояние и направление. Примеры охватывают индикацию присутствия, ночник, зоны расстояния и определение приближения или удаления.
- ЭКГ AD8232, как указано выше: четыре примера от графика в последовательном плоттере до сигнала тревоги.
- MQ7 угарный газ. От сырого показания до калиброванного вывода в ppm, трёхсветодиодного индикатора качества воздуха и сигнала тревоги при 200 ppm.
- Аналоговый набор pH. Индикация, контроль диапазона для аквариума, стрелка тренда и контроллер дозирования с двумя насосами, что является по-настоящему сложной задачей управления в двадцать строк.
- Датчик влажности почвы. Полив по порогу, калиброванный процент с гистограммой, автополив с гистерезисом и вывод в милливольтах на ESP32.
- Офлайн-распознавание речи DF2301Q. Модуль, который слушает «привет, робот» без облака за спиной. В светильнике с голосовым управлением вы вводите или выбираете фразу, и модуль реагирует так, как слышит её настоящий.
HuskyLens — AI-камера, которая обучается

HuskyLens — это камера DFRobot с нейронной сетью на борту: она распознаёт лица, объекты, цвета и линии, и вы обучаете её, нажимая кнопку обучения. В Velxio она сохраняет этот характер. Вы подаёте ей сцены, она сообщает, что видит, через I2C или UART, а собственная библиотека Arduino от DFRobot работает с ней без изменений; оба официальных примера DFRobot работают как опубликованные. Галерея развивает это с помощью приветствия с распознаванием лиц, поворотного сервопривода, следящего за объектом и сигнала управления для следования по линии, что составляет большую часть робота до того, как у вас появится робот.
Работа с DFRobot
DFRobot поддержал эту работу и предоставил оборудование, а их культура документирования сделала многое из остального: у каждого модуля Gravity есть публичная вики-страница с описанным протоколом, а уроки UNIHIKER записаны шаг за шагом. Когда компания так тщательно документирует оборудование, «сделать симуляцию соответствующей документации» становится проверяемым утверждением, и их библиотеки, работающие без изменений, — это и есть проверка.
Мы хотим поблагодарить команду DFRobot за то, что они относятся к браузерному симулятору как к настоящему месту для жизни их оборудования. Для такой темы, как датчики, это важнее обычного: класс может откалибровать pH-контроллер без жидкостей на столе, а тот, кто решает, подходит ли C4001 для его проекта, может узнать это бесплатно.
Физическое оборудование находится на dfrobot.com, а вики, которой следуют эти примеры, — на wiki.dfrobot.com.
Все примеры DFRobot в галерее
Каждая ссылка открывает проект, готовый к запуску.
UNIHIKER M10 (платный план)
- Системные часы на экране
- Приветствие на встроенном экране
- Мигание светодиодом на контакте 2
- Светофор на краевых контактах 0/1/2
- Кнопки A/B + зуммер
- Цифровое пианино
- Мастер эмотиконов
- Звёздное небо (касание экрана)
- Светильник с AI-голосовым управлением
- Ультразвуковой дальномер
- Управление сервоприводом
- Монитор температуры и влажности
- IoT-умный дом (SIoT)
HuskyLens
- Официальный пример I2C от DFRobot
- Официальный пример UTILITIES от DFRobot
- Чтение обнаруженного объекта (I2C)
- Приветствие с распознаванием лиц
- Поворотный сервопривод следует за объектом
- Сигнал управления для следования по линии
- Управление экраном: алгоритмы, обучение, пользовательский текст
- Фото и скриншоты на TF-карту
- Режим UART (TX0/RX0)
Датчики Gravity
- ЭКГ: график в последовательном плоттере
- ЭКГ: измерение частоты сердечных сокращений
- ЭКГ: светодиод, бьющийся в такт сердцу
- ЭКГ: сигнал тахикардии / брадикардии
- C4001: присутствие mmWave (I2C)
- C4001: ночник с датчиком присутствия
- C4001: зоны расстояния
- C4001: приближение или удаление
- MQ7: чтение уровня CO
- MQ7: калиброванный вывод в ppm
- MQ7: трёхсветодиодный индикатор качества воздуха
- MQ7: сигнал CO при 200 ppm
- pH: чтение значения pH
- pH: контроль диапазона для аквариума
- pH: сглаженное показание со стрелкой тренда
- pH: контроллер дозирования с двумя насосами
- Влажность почвы: порог полива
- Влажность почвы: калиброванный процент + гистограмма
- Влажность почвы: автополив с гистерезисом
- Влажность почвы: вывод в милливольтах на ESP32
Распиновка и возможности UNIHIKER указаны в справочнике по плате: UNIHIKER M10.