A121 Range Sensor

来自Waveshare Wiki
跳转至: 导航搜索
A121-Range-Sensor
{{{name2}}}
{{{name3}}}
功能简介
特性 毫米波雷达
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 I2C UART

说明

产品简介

A121 Range Sensor 距离传感器基于 60 GHz 脉冲相干雷达(PCR) 技术,可实现人体存在与运动检测,并支持高精度距离测量。通过可配置的检测区域和灵敏度参数,具备良好的抗干扰能力。 模块集成 Arm® Cortex®-M4 MCU(STM32L431CBT6),既可作为独立运行单元,在 Acconeer RSS 之上直接部署用户应用,也可通过寄存器命令协议与外部主控通信。其体积小、功耗低、易集成,适用于人体存在检测、接近感应、非接触触发及生命体征监测等应用。

应用场景

  • 消费电子
    • 人体存在与运动检测
    • 材料分类与目标检测
    • 生命体征检测(如呼吸、心率)
    • 手势控制与非接触式按键
  • 物联网与智慧城市
    • 智慧停车解决方案
    • 液位/高度监测
    • 液体表面流速测量
    • 结构完整性监测
    • 人流统计
  • 工业与农业
    • 接近与距离感知
    • 振动测量
  • 汽车电子
    • 车内监测(乘员/状态检测)
    • 门禁控制与人机交互

工作原理

Acconeer A121 采用脉冲相干雷达(PCR)技术,通过发射超短射频脉冲并对回波进行相干接收,利用皮秒级时间分辨率精确测量信号往返时间,从而实现亚毫米级距离精度;同时通过相位信息可感知微小位移与运动。脉冲式工作方式使其平均功耗极低,芯片高度集成无需天线孔径即可实现最远约 23 米测距,并且由于使用的是射频电磁波,不受光照、灰尘、噪声等环境干扰,适合小体积、低功耗的电池供电设备。原理

A121 Range Sensor 01.jpg

产品参数

产品 A121 Range Sensor
工作频段 60GHz
调制方式 PCR
供电电压 5V
IO电平 3.3V
输出接口 USB/UART/I2C
通信波特率 UART :921.6Kbps
I2C :100K/400K
探测距离分辨率 0.03m@25°Profile1
探测角度 水平 :53°
垂直 :65°
探测精度 0.03m@Profile1
最大工作电流 5V 80mA
环境温度 -40~85℃
产品尺寸 39×39mm



探索工具

  • 帮助您快速开始测试和评估我们的传感器,满足您的使用场景需求。还将指导您找到最佳传感器设置,并帮助您微调最终产品实现的数据处理。以下是在windows电脑中运行,liunx可以参考这个 :点击跳转
  • 点击下载上位机
  • 下载固件,默认是探索工具的固件。

开始使用

  • 在合适的位置提取 portable_exploration_tool.zip 文件
  • 双击 update.bat 脚本,这个更新时间比较漫长,请耐心等待,如果出现失败,需要检查一下网络问题,并重新运行update.bat。
  • 更新完成后,双击 run_app.bat 脚本即可启动探索工具应用,在弹出的 Acconeer Exptool Launcher 窗口,点击A121

A121 Range Sensor portable exploration tool 01.png

  • 用type-c的数据线连接电脑,在设备管理器找到端口。在端口 (COM 和 LPT) 中列出为 USB-Enhanced -SERIAL-A CH342 和 USB-Enhanced -SERIAL-B CH342,如果没有,需要重新安装一下驱动
  • 连接探索工具应用模块时,使用 USB-Enhanced -SERIAL-A CH342 端口,再点击连接即可,连接成功后就可以进入测试了,每一个测试旁边都有一个文档说明,不清楚点击查看即可

刷固件

  • 在探索工具中点击 Flash
    • 选择XM125
    • 勾选 Show all devices
    • 选择 USB-Enhanced -SERIAL-A CH342 端口,可以使用在线下载,也可以使用本地文件
    • 点击下一个界面的 Flash ,根据提示进入boot模式,就可以开始刷入固件
    • 显示 Done ,表示刷入成功

固件说明

  • A121 Range Sensor 提供全方面的固件,包括上位机、UART和I2C,下面对这些固件进行一个说明 :
  • UART固件都是通过 USB-Enhanced -SERIAL-B CH342 端口输出或者板子上的串口引脚输出信息
  • I2C固件是通过I2C引脚输出信息,搭配检忙脚一起使用,从机地址默认为0x52,可以通过板子上的电阻进行调整为0x51或0x53
  • A121 Range Sensor 固件
示例程序 基础例程说明
探测工具
acc_exploration_server_a121 刷此固件可以与探索工具进行连接
UART
Getting started
example_bring_up 基础 bring up 示例,用于快速上手与应用开发
example_control_helper 控制辅助示例,演示控制接口的基本用法
example_detector_distance 距离探测器基础示例
example_detector_presence 存在探测器基础示例
example_service Service 基础接口示例
Advanced control
example_detector_distance_calibration_caching 距离探测 + 校准结果缓存
example_detector_distance_low_power_hibernate 距离探测低功耗休眠模式
example_detector_distance_low_power_off 距离探测低功耗关断模式
example_detector_distance_with_iq_data_print 距离探测并打印 IQ 原始数据
example_detector_presence_low_power_hibernate 存在探测低功耗休眠模式
example_detector_presence_low_power_off 存在探测低功耗关断模式
example_detector_presence_multiple_configurations 存在探测多配置切换示例
example_detector_presence_with_iq_data_print 存在探测并打印 IQ 原始数据
example_service_calibration_caching Service 模式下的校准缓存示例
example_service_low_power_sensor_disable Service 低功耗 :禁用传感器
example_service_low_power_sensor_hibernate Service 低功耗 :休眠传感器
example_service_multiple_configurations Service 多配置示例
example_service_sensor_disable Service :传感器禁用
example_service_sensor_hibernate Service :传感器休眠
example_service_sensor_off Service :传感器关闭
example_service_subsweeps Service :子扫描(subsweeps)配置示例
Processing
example_processing_amplitude 幅值处理示例
example_processing_coherent_mean 相干平均处理示例
example_processing_noncoherent_mean 非相干平均处理示例
example_processing_peak_interpolation 峰值插值处理示例
example_processing_static_presence 静态存在检测处理示例
example_processing_subtract_adaptive_bg 自适应背景减除处理示例
Troubleshooting
example_diagnostic_test 诊断测试示例,用于硬件/通信排查
Reference Apps
ref_app_breathing 呼吸检测参考应用
ref_app_parking 停车/车位检测参考应用
ref_app_smart_presence 智能存在检测参考应用
ref_app_tank_level 料位/液位检测参考应用
ref_app_touchless_button 非接触式按钮参考应用
Example Apps
example_cargo 货柜利用率与人员存在检测参考示例
example_hand_motion_detection 用于检测手部运动或手势的示例
example_surface_velocity 用于测量目标表面运动速度的示例
example_vibration 用于检测和分析振动特征的示例
example_waste_level 用于测量垃圾或物料液位高度的示例
I2C
i2c_distance_detector I2C 接口距离探测器基础示例
i2c_example_cargo I2C 接口货物检测示例
i2c_presence_detector I2C 接口存在探测器基础示例
i2c_ref_app_breathing I2C 接口呼吸检测参考应用

镜头说明

  • 我们提供的参考镜头采用 3301PA 材质 制成,为 实心一体结构设计,具备良好的机械强度与稳定性。镜头整体由以下几个关键部件组成:

1. 底座(Lens Holder)

用于固定 PCB 与镜头组件,确保镜头与芯片之间的相对位置精度,提升系统装配稳定性与一致性。

2. 平盖(Flat cover)

主要用于 保护感光芯片表面,防止在装配、运输或使用过程中被刮伤或污染,同时对成像不产生光学畸变影响。

3. 菲涅尔镜片(Fresnel Zone Plate)

通过 相位调制原理 实现光线聚焦,在保证聚焦能力的同时有效降低镜片厚度与重量,适用于对结构高度有要求的应用场景。

4. 曲面镜片(Hyperbolic Lens)

通过 折射原理 对入射光进行聚焦,可有效改善成像质量,提高光学系统的聚焦精度与成像清晰度。

探测范围

  • 平盖

A121 Range Sensor 13.jpg

  • 曲面镜片

A121 Range Sensor 14.jpg

  • 菲涅尔镜片

A121 Range Sensor 15.jpg

其他

  • 如何配置A121,跟其他参数说明请点击此链接

产品尺寸

  • A121 Range Sensor 16.jpg
  • A121-Range-Sensordetails-size.jpg

UART固件使用

  • 此处简单说明一下UART固件的效果跟使用方式,波特率默认为921600
  • 测试不同功能,需要刷入不同固件,如果刷固件参考前面的刷固件处

硬件连接

  • 刷好固件后,通过Type C数据线连接电脑,选择USB-Enhanced -SERIAL-B CH342 端口就可以查看信息或者通过MX1.25的接口上的TX 查看信息

Getting started

  • example_bring_up效果

A121 Range Sensor bring up.png

  • example_control_helper效果

A121 Range Sensor control helper.png

  • example_detector_distance效果

A121 Range Sensor distance low power off.png

  • example_detector_presence效果

A121 Range Sensor presence low power.png

  • example_service效果

A121 Range Sensor sensor off.png

Reference Apps

  • ref_app_breathing效果

A121 Range Sensor breathing.png

  • ref_app_parking效果

A121 Range Sensor parking.png

  • ref_app_smart_presence效果

A121 Range Sensor smart presence.png

  • ref_app_tank_level效果

A121 Range Sensor tank level.png

  • ref_app_touchless_button效果

A121 Range Sensor touch botton.png

Example Apps

  • example_cargo效果

A121 Range Sensor cargo.png

  • example_hand_motion_detection效果

A121 Range Sensor hand.png

  • example_surface_velocity效果

A121 Range Sensor surface.png

  • example_vibration效果

A121 Range Sensor vibration.png

  • example_waste_level效果

A121 Range Sensor waste level.png

I2C固件使用

  • 此处简单说明一下I2C固件的效果跟使用方式,从机地址默认为0x52
  • 测试不同功能,需要刷入不同固件,如果刷固件参考前面的刷固件处

树莓派使用

开启树莓派 I2C

  • 在树莓派终端输入命令:sudo raspi-config nonint do_i2c 0

硬件连接

接入树莓派I2C的参考如下: A121 Range Sensor 02.png

安装库

  • C
git clone https://github.com/WiringPi/WiringPi.git
cd WiringPi/
./build debian
#根据编译出来的文件名来进行下一步
sudo mv debian-template/wiringpi_*.*_arm64.deb .
sudo apt install ./wiringpi_*.*_arm64.deb
#查看是否安装成功,成功会出现版本号
gpio -v
  • Python
sudo apt install python-smbus2

下载程序

cd ~
wget https://www.waveshare.net/w/upload/5/5d/A121_Range_Sensor_Demo.zip
unzip A121_Range_Sensor_Demo.zip
cd A121_Range_Sensor_Demo/

运行C程序

cd ~/A121_Range_Sensor_Demo/Raspberrypi/c/
#此处根据烧录的固件进行选择编译,分别是
make A121_APP=BREATHING -B
make A121_APP=CARGO -B
make A121_APP=PRESENCE -B
make A121_APP=DISTANCE -B
#运行程序
./main
  • 终端就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor Rpi C breathing.png
    • CARGO:
    • A121 Range Sensor Rpi C cargo.png
    • PRESENCE:
    • A121 Range Sensor Rpi C presence.png
    • DISTANCE:
    • A121 Range Sensor Rpi C distance.png

运行Python程序

cd ~/A121_Range_Sensor_Demo/Raspberrypi/python/example
#此处根据烧录的固件进行选择编译,分别是
python main.py breathing
python main.py cargo
python main.py presence
python main.py distance
  • 终端就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor Rpi Py breathing.png
    • CARGO:
    • A121 Range Sensor Rpi Py cargo.png
    • PRESENCE:
    • A121 Range Sensor Rpi Py presence.png
    • DISTANCE:
    • A121 Range Sensor Rpi Py distance.png

ESP32S3使用

  • 关于ESP32S3的环境搭建跟基本使用,请参考这个链接
  • 环境搭建完成后,即可连接传感器,下载示例

硬件连接

  • 参考下图进行连接:

A121 Range Sensor 04.png

Arduino esp32示例使用

  • 进入到A121_Range_Sensor_Demo\ESP32S3\Arduino\*,*是对应固件的示例,双击ino文件
  • 选择开发板:

TOF Laser Range Sensor C 19.png

  • 选择ESP32S3的端口,然后进行编译上传
  • 上传完成后,打开串口监测器,就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor Esp32 Arduino breathing.png
    • CARGO:
    • A121 Range Sensor Esp32 Arduino cargo.png
    • PRESENCE:
    • A121 Range Sensor Esp32 Arduino presence.png
    • DISTANCE:
    • A121 Range Sensor Esp32 Arduino distance.png

Micropython示例使用

  • 进入到A121_Range_Sensor_Demo\ESP32S3\micropython,双击对应固件的py文件
  • 选择开发板:

TOF Laser Range Sensor C 26.png

  • 选择ESP32S3的端口,然后运行程序
  • Shell就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor Esp32 Mpy breathing.png
    • CARGO:
    • A121 Range Sensor Esp32 Mpy cargo.png
    • PRESENCE:
    • A121 Range Sensor Esp32 Mpy presence.png
    • DISTANCE:
    • A121 Range Sensor Esp32 Mpy distance.png

Pico使用

  • 关于Pico的环境搭建跟基本使用,请参考这个链接
  • 环境搭建完成后,即可连接传感器,下载示例

硬件连接

  • 参考下图进行连接:

A121 Range Sensor 03.png

Arduino pico示例使用

  • 进入到A121_Range_Sensor_Demo\pico\Arduino\*,*是对应固件的示例,双击ino文件
  • 选择开发板:

A121 Range Sensor 06.png

  • 选择Pico的端口,然后进行编译上传
  • 上传完成后,打开串口监测器,就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor pico Arduino breathing.png
    • CARGO:
    • A121 Range Sensor pico Arduino cargo.png
    • PRESENCE:
    • A121 Range Sensor pico Arduino presence.png
    • DISTANCE:
    • A121 Range Sensor pico Arduino distance.png

Micropython示例使用

  • 进入到A121_Range_Sensor_Demo\pico\micropython,双击对应固件的py文件
  • 选择开发板:

A121 Range Sensor 07.png

  • 选择ESP32S3的端口,然后运行程序
  • Shell就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor pico Mpy breathing.png
    • CARGO:
    • A121 Range Sensor pico Mpy cargo.png
    • PRESENCE:
    • A121 Range Sensor pico Mpy presence.png
    • DISTANCE:
    • A121 Range Sensor pico Mpy distance.png

Arduino使用

    • 关于Arduino的环境搭建跟基本使用,请参考这个R4链接、R3是默认安装。
  • 环境搭建完成后,即可连接传感器,下载示例

硬件连接

  • 参考下图进行连接:

A121 Range Sensor 05.png

Arduino 示例使用

  • 进入到A121_Range_Sensor_Demo\Arduino\*,*是对应固件的示例,双击ino文件
  • 选择开发板:

A121 Range Sensor 08.png

  • 选择Pico的端口,然后进行编译上传
  • 上传完成后,打开串口监测器,就会输出相关的信息,如下图:
    • BREATHING:
    • A121 Range Sensor Arduino breathing.png
    • CARGO:
    • A121 Range Sensor Arduino cargo.png
    • PRESENCE:
    • A121 Range Sensor Arduino presence.png
    • DISTANCE:
    • A121 Range Sensor Arduino distance.png

FAQ


技术支持


联系人:黄工
QQ:2850151199
EMAIL:2850151199@qq.com
电话:0755-83040712
微信:扫下方二维码添加
Service20-Weichat.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证