Интеграция импульсного радара Acconeer A111 с Raspberry Pi: практическое руководство
Введение
Экспериментальные продукты: SparkX доставляет передовую технологию быстро. Хотя эти элементы тщательно тестируются, они продаются без формальных гарантий и живой технической поддержки.
Нужны ультра-точные измерения расстояния, скорости, движения или жестов, превосходящие ультразвук и инфракрас? Познакомьтесь с Acconeer A111 — компактным импульсным 60 ГГц радаром, приносящим высокопроизводительное 감지 в ваши проекты.
A111 — однокристальное импульсное когерентное радарное решение (PCR) с интегрированными антеннами и 50 МГц SPI-интерфейсом. Поддерживает детектирование расстояния, жестов, движения и скорости до двух метров, может отслеживать несколько объектов одновременно.
Наша breakout-плата добавляет стабилизатор 1,8 В, преобразование уровней напряжения и 20-пиновый 2×10 female header, полностью совместимый с GPIO-заголовками Raspberry Pi.
Необходимые материалы
Для работы с A111 необходимо использовать архитектуру ARMv7 или ARM Cortex-M4, так как текущий SDK закрыт и поддерживает только эти платформы. Это руководство демонстрирует интеграцию датчика с Raspberry Pi, платформой, архитектура которой совместима с SDK.
Breakout-плата предоставляет 20-пиновый 2×10 female header, который напрямую вставляется в любую модель Raspberry Pi. Если предпочитаете ручную проводку, плата также предлагает male-хедеры и типичные 9 male-to-female перемычек.
Настройка железа
Raspbian и SPI
Предполагая, что у вас уже установлен Raspbian на Pi, обратитесь к документации Raspberry Pi для установки ОС или используйте наш учебник по headless-настройке Raspberry Pi для упрощенного процесса.
Включите SPI на Pi — см. наш учебник по SPI на Pi для инструкций.
Breakout A111 спроектирован для установки прямо поверх Raspberry Pi. Он не занимает все 40 GPIO-пинов Pi B+ (или новее), но 26-пиновый 2×13 заголовок полностью совместим с любой моделью Pi.
Для установки припаяйте 2×13 заголовок с female-стороной, обращенной от чипа A111. Затем подключите экран breakout к Pi, выровняв текст «Pi Display» с дисплейным заголовком Pi. Датчик должен смотреть вверх после вставки.
Breakout A111, вставленный в Raspberry Pi.
Альтернативно, для ручной проводки используйте распиновку ниже для остальной части туториала:
| Breakout Pin | Raspberry Pi Pin Name | RasPi Pin Number |
|---|---|---|
| CS | SPI0 CS0 | 24 |
| SCLK | SPI0 SCLK | 23 |
| MISO | SPI0 MISO | 21 |
| MOSI | SPI0 MOSI | 19 |
| INT | GPIO25 | 22 |
| EN | GPIO27 | 13 |
| VCCIO | 3.3V | 1,17 |
| GND | GND | 6, 14, 20, etc. |
| VIN | 5V | 2, 4 |
⚡ Входное напряжение и логические уровни: Плата выставляет как VIN, так и VCCIO. VIN питает датчик, потребляя до ~80 мА. VCCIO задает I/O напряжение и может быть ниже VIN. Подключите VIN к 5 В Pi и VCCIO к 3,3 В; Pi может драйвить только 3,3 В I/O.
Включение SPI на вашем Raspberry Pi
Обратитесь к учебнику по SPI на Pi для детальных шагов активации SPI через инструменты конфигурации Raspberry Pi.
Получение SDK
SDK Acconeer A111 проприетарен и сейчас поддерживает только ARMv7 и Cortex-M4. Для скачивания SDK посетите страницу продуктов Acconeer и найдите раздел A1 Software Development Kit. Нажмите GET SOFTWARE**, примите лицензию и запросите A1 SDK for Linux ARMv7 версию.
Запрос ARMv7 SDK от Acconeer.
После предоставления email вы получите ссылку для скачивания по email почти мгновенно.
SCP SDK на ваш Pi
После скачивания ZIP-файла передайте его на Pi. На Windows используйте WinSCP. На macOS или Linux используйте SCP:
scp acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_5.zip 192.168.0.100:~
Примечание: Замените 192.168.0.100 на IP-адрес или хостнейм вашего Pi.
Распаковка SDK
На Pi распакуйте SDK командами (установите unzip при необходимости):
unzip acconeer_evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c_v1_3_5.zip -d a111
Перейдите в директорию a111/evk_service для подготовки к сборке примерного ПО.
Обзор SDK
Пакет SDK содержит исходный код, предкомпилированные библиотеки, заголовочные файлы и документацию. Ключевые директории:
- doc — API-документация, сгенерированная Doxygen.
- include — заголовочные файлы, описывающие API.
- lib — предкомпилированные статические архивы.
- out — скомпилированные бинарники плат и примеров.
- rule — Makefile-правила для сборки плат и примеров.
- source — C-источники для пользовательских плат и примеров.
- makefile — топ-уровневый Makefile, вызывающий правила рекурсивно.
Добавление пользовательских примеров и файлов плат
Распиновка SparkFun A111 Breakout отличается от дефолтной SDK. Скачайте пользовательские файлы из нашего GitHub репозитория (zip). Распакуйте их в соответствующие директории SDK:
unzip sparkx-a111-source.zip -d a111/evk_service_linux_armv7l_xc111_r4a_xr111-3_r1c_a111_r2c
Включенные файлы:
rule/makefile_build_sparkx_detector_distance.inc— правила сборки для примера детектора расстояния.rule/makefile_build_example_*_sparkx— правила сборки примеров для SparkX breakout.source/acc_board_rpi_sparkx.c— определение платы с подключениями пинов и настройками тактирования.source/sparkx_detector_distance.c— модифицированный исходник детектора расстояния.
Убедитесь, что эти файлы размещены в тех же относительных местоположениях, что и в оригинальном ZIP SDK.
Пользовательские примеры добавлены в директорию rule SDK.
Сборка и запуск тестового скетча
Сборка платы и примеров приложений
С SDK и пользовательскими файлами на месте, соберите все примеры запуском make из верхнеуровневой директории SDK. Рекурсивный Makefile скомпилирует определение платы и все встроенные примеры.
После успешной сборки выполните нужный бинарник из директории out для запуска датчика A111 и проверки функциональности.
Для детальных инструкций по сборке и устранению неполадок обратитесь к документации SDK в папке doc.
Удачного хакинга с Acconeer A111 на вашем Raspberry Pi!
Производственный процесс
- Подключение нескольких DS18B20 1-Wire датчиков к Raspberry Pi для точного мониторинга температуры
- Профессиональный мониторинг температуры на Raspberry Pi с датчиком DS18B20
- ИК-датчик температуры TMP006 с Raspberry Pi: библиотека Python и руководство по настройке
- Создание удалённого датчика температуры на Raspberry Pi и Python — пошаговое руководство
- Точный мониторинг температуры в серверной на Raspberry Pi
- Интеграция данных сенсоров в Raspberry Pi: практическое руководство
- Управление светодиодом с PIR-датчиком движения на Raspberry Pi
- Построение низкобюджетного датчика влажности почвы на Raspberry Pi для умного полива
- Практическое руководство: real-time панорамирование/наклон для отслеживания лиц на Raspberry Pi
- Датчик занятости ванной комнаты на Raspberry Pi с голосовыми и SMS-уведомлениями через Twilio