5浏览
查看: 5|回复: 0

C4002 毫米波传感器调试工具

[复制链接]
C4002 毫米波传感器调试工具
安装与使用指南


适用于 DFRobotSEN0691 C4002 毫米波雷达模块
PC + 手机端 Web 调试工具

一、项目简介
DFRobotSEN0691 C4002 是一款 60GHz 毫米波传感器模块,能够同时检测运动目标和静态存在目标,探测距离最长可达11 米。与传统的红外或超声波传感器相比,它具有探测范围大、不受温度/光照影响、能区分运动和存在等显著优势。
然而,C4002 的参数设置相对复杂。它有 15 个或 25 个距离门(由分辨率模式决定),每个门可以独立配置运动检测、存在检测以及灵敏度阈值。此外还有上报周期、检测范围、锁定时间、光照阈值等众多参数。要针对不同场景充分调整参数,才能发挥出理想的效果。
本项目正是为此而生——一个基于 Web 的 C4002 调试工具。你只需要将雷达模块通过串口转 USB 模块连接到电脑,然后运行本工具,即可在浏览器中查看实时数据、调整各项参数。
主要特点:
·        同时支持 PC 和移动端浏览器,手机端可自动适配
·        实时显示目标状态、距离、速度、能量、光照等数据
·        可视化距离条,直观展示目标位置
·        所有参数均可在线调整,即时生效
·        完整的操作日志和原始帧显示,便于调试
·        跨平台,仅需 Python 环境
二、工作原理简述2.1 毫米波测距原理
C4002 采用 60GHz 调频连续波(FMCW)技术。模块发射频率随时间线性变化的毫米波信号,并接收目标反射的回波。通过对比发射信号与回波信号的频率差,可以计算出目标的距离。同时利用多普勒效应,可以检测目标的运动速度和方向。
2.2 距离门(Distance Gate)
距离门是 C4002 的核心概念。模块将整个探测范围划分为多个连续的"门"(Gate),每个门对应一段距离区间,可以独立配置运动检测和存在检测的启用/禁用状态。
距离门的划分取决于分辨率模式:
·        80cm 模式:0~12 米范围划分为 15 个距离门,每个门宽约 80cm
·        20cm 模式:0~5 米范围划分为 25 个距离门,每个门宽约 20cm
2.3 检测类型
C4002 有两种检测模式,可以同时工作:
·        运动检测(Motion):检测移动中的目标,输出距离、速度和方向
·        存在检测(Presence):检测静止的人体存在,输出距离和能量值
目标状态由以下值表示:0=无目标,1=存在(静态人体),2=运动(移动目标),3=存在+运动(同时检测到两种),4=运动或无目标,5=存在或无目标。
三、硬件准备3.1 所需硬件
·        DFRobot SEN0691 C4002 毫米波传感器模块× 1
·        串口转 USB 模块(如 CP2102、CH340、FT232)× 1
·        杜邦线若干(母对母)
·        5V USB 电源适配器(或通过 USB 口供电)
3.2 接线方式
C4002 模块有 4 个引脚,按以下方式连接到串口模块:
C4002 引脚
颜色
连接至
  
VCC (5V)
  
  
红色
  
  
串口模块 5V
  
  
GND
  
  
黑色
  
  
串口模块 GND
  
  
TX
  
  
绿色
  
  
串口模块 RX
  
RX
黄色/白色
串口模块 TX
注意:TX 接 RX、RX 接 TX,即交叉连接。
四、安装 Python 环境
本工具使用 Python 编写,需要先安装 Python 运行环境。推荐使用Python 3.9 及以上版本。
4.1 下载安装 Python
访问https://www.python.org/downloads/ 下载 Python 3.9+
·        运行安装程序,务必勾选底部 "Add Pythonto PATH"
·        安装完成后,打开命令提示符(CMD)输入以下命令验证:
python --version
如果正确显示版本号,说明安装成功。
4.2 安装依赖库
下载本项目后,进入项目文件夹,执行:
pip install -rrequirements.txt
或者手动安装:
pip installfastapi uvicorn pyserial
五、下载与运行5.1 下载项目
从附件下载项目压缩包,解压到任意文件夹
5.2 启动服务
打开命令提示符,进入项目文件夹,执行:
cdC4002_Debug_Tool
python web_server.py
出现以下输出说明启动成功:
启动Web服务...
本地访问: http://localhost:8000
局域网访问: http://192.168.x.x:8000
5.3 连接雷达
将C4002 通过串口转 USB 模块连接到电脑。
打开浏览器,访问 http://localhost:8000
在页面顶部的"串口连接"区域:
·        从下拉框选择正确的串口号(Windows 下通常为 COM3、COM4等)
·        波特率保持默认 115200
·        点击"连接"按钮
连接成功后,状态显示变为"已连接",所有设置项变为可用状态。
C4002 毫米波传感器调试工具图2六、功能详解6.1 操作标签页
页面顶部有四个标签页:操作、数据、可视化、日志。"操作"标签页是主界面,包含串口连接、设备操作、设备设置、距离门设置等区域。
6.2 数据标签页 — 实时状态
切换到"数据"标签页,可以看到雷达探测到的实时数据卡片:
C4002 毫米波传感器调试工具图4
数据项
说明
单位
  
目标状态
  
  
当前检测到的目标类型(无目标/存在/运动/存在+运动)
  
  
-
  
  
存在距离
  
  
静态人体目标的距离
  
  
米 (m)
  
  
存在能量
  
  
静态目标的回波能量强度(值越大越确信)
  
  
0-99
  
  
运动距离
  
  
运动目标的距离
  
  
米 (m)
  
  
运动速度
  
  
运动目标的移动速度
  
  
米/秒 (m/s)
  
  
运动方向
  
  
运动目标的移动方向(远离/靠近/无方向)
  
  
-
  
  
光照强度
  
  
环境光强度
  
  
勒克斯 (lux)
  
  
消失倒计时
  
  
目标消失后还剩多少秒
  
  
秒 (s)
  
固件版本
雷达模块的固件版本号
-
6.3 可视化标签页
在"可视化"标签页中,你可以看到:
距离位置条:一条从 0m 到 10m 的横向距离条,存在目标显示为蓝色圆点,运动目标显示为红色圆点,位置实时更新。
目标卡片:分别显示存在目标和运动目标的详细数据。
距离门历史:以方块形式显示每个距离门的最近触发状态。蓝色方块表示该门有存在触发,红色方块表示有运动触发,灰色表示无触发。
C4002 毫米波传感器调试工具图56.4 分辨率模式
分辨率模式决定了距离门的数量和每个门的宽度。切换分辨率后,距离门配置和阈值网格会自动重建,阈值缓存会被清空并重新读取。
·        80cm 模式(默认):15 个距离门,每个门 80cm,总覆盖0~12m
·        20cm 模式:25 个距离门,每个门 20cm,总覆盖0~5m
应用场景:如果主要检测近距离精确位置(例如 3 米以内),选择 20cm 模式可以获得更精细的分辨率;如果需要覆盖较远距离(例如走廊、大厅),选择 80cm 模式。
6.5 距离门配置
每个距离门可以独立设置为四种状态:
·        禁用:该门不参与任何检测
·        运动:仅启用运动检测
·        存在:仅启用存在检测
·        运动存在:同时启用运动和存在检测
配置完成后点击"应用距离门配置"按钮生效。注意:距离门配置是只写的,模块不会返回当前配置,请自行记录设置状态。
应用场景:例如只关心 3~5 米的运动目标,可以将其他门设为禁用,将对应门设为"运动",减少误报。
6.6 阈值与灵敏度
灵敏度阈值组:提供四个预设档位,一键切换运动或存在的检测灵敏度。
·        低灵敏度(0):适用于高噪声环境,减少误报
·        中灵敏度(1):默认推荐,平衡检测率和误报率
·        高灵敏度(2):适用于微弱信号检测,提升检测距离
·        自定义(3):手动逐门设置阈值
距离门阈值:当选择"自定义"灵敏度时,可以手动为每个门设置 0-99 的阈值。阈值越低越灵敏。未手动设置的门(#15-24)会保持随机值,这是模块的已知行为。
设置阈值后点击"应用距离门阈值"按钮。运动门阈值和存在门阈值需要分别设置。
C4002 毫米波传感器调试工具图36.7 Out 模式(输出引脚模式)
C4002 的 OUT 引脚(硬件 Pin 2)可以根据检测结果输出高/低电平,用于直接驱动继电器、蜂鸣器等外部设备。有三种触发模式:
·        运动触发:检测到运动时输出高电平
·        存在触发:检测到静态人体时输出高电平
·        运动或存在触发:检测到任何一种时输出高电平
6.8 上报周期
设置雷达模块向上位机发送数据的频率。范围 1-255 × 0.1s(即 0.1s ~ 25.5s),默认 10(即 1.0s)。
如果需要在移动端远程观察实时数据,建议设置为 0.5-1 秒,既能看到流畅的更新,又不会因网络延迟导致体验不佳。
6.9 检测范围
设置最近检测距离和最远检测距离,范围 0-1100cm。缩小检测范围可以减少非关注区域的干扰。
注意:最近距离必须小于最远距离。检测范围是全局限制,与距离门配置配合使用效果最佳。例如将检测范围设为 0-300cm,再将 300cm 以外的门禁用,双重保障。
6.10 光照阈值
设置光照触发条件,范围 0-50 lux。当设置为 0 时(默认),光照不影响检测。当设置为非 0 值时,只在环境光照低于设定值时触发检测。
应用场景:安装在走廊的灯光控制系统中,设置光照阈值为 10 lux,只在夜间(环境光低于 10 lux)时有人经过才开灯,白天不触发。
6.11 目标消失延迟
当目标离开检测区域后,延迟多长时间才判定为"无人"。范围0-65535 秒。
应用场景:在卫生间或会议室中,人员短暂离开,设置 30-60 秒的消失延迟,避免灯频繁开关。
6.12 锁定时间
当状态从"有人"切换到"无人"时,传感器会进入一段锁定时间,期间不进行检测。范围 0.2-10 秒,精度 0.1 秒。
应用场景:在走廊场景中,人快速通过时,设置 1-2 秒锁定时间,防止刚熄灭灯光又瞬间触发。
6.13 LED 指示灯
C4002 模块上有两个指示灯:
·        运行指示灯(绿色闪烁):模块正常运行时的状态指示
·        输出指示灯(蓝色):对应 OUT 引脚的输出状态
两者均可开启或关闭。
6.14 环境校准
环境校准用于采集当前环境的底噪数据,使传感器更好地适应安装环境。校准流程如下:
·        点击"开始环境校准"按钮
·        出现 10 秒倒计时,请在倒计时期间离开检测区域
·        倒计时结束后,模块开始 40 秒底噪采集
·        采集完成后,自动读取校准后的阈值数据
建议在安装完成后、正常使用前进行一次环境校准。校准期间确保检测区域内无人移动。
6.15 恢复出厂设置与重启
恢复出厂设置:将模块所有参数重置为出厂默认值(检测范围 0-1100cm、分辨率 80cm、上报周期 1s、波特率 115200 等),然后自动重启。操作前会弹出二次确认对话框,防止误触。
重启模块:仅执行重启,保留所有当前配置。同样有二次确认。
两者的进度对话框会在检测到模块重启完成、恢复正常数据上报后自动关闭。
七、手机端使用
这是本工具的一大亮点。在同一局域网下,用手机直接输入电脑 IP 地址即可访问。
·        确保手机和电脑连接到同一个 Wi-Fi 网络
·        启动服务后,命令行会显示类似 "局域网访问: http://192.168.x.x:8000" 的地址
·        在手机浏览器中输入该地址
·        手机界面会自动适配屏幕大小,布局和功能与 PC 端完全一致
这样当你远离电脑、在现场调整雷达安装位置或测试不同场景时,可以随时掏出手机观察实时数据、调整参数。
八、日志功能
"日志"标签页记录了所有操作和通信数据,对调试非常有帮助。
·        自动刷新:默认开启,新日志会自动滚动到底部,可手动关闭
·        原始帧:开启后,每条日志会附带完整的十六进制原始帧数据
·        清空日志:一键清除所有日志内容
C4002 毫米波传感器调试工具图6九、常见问题
Q: 连接失败,提示"串口被占用"?
A: 关闭其他可能占用该串口的程序(如 ArduinoIDE、串口调试助手),重新连接。
Q: 连接成功但没有任何数据?
A: 检查波特率是否匹配(默认 115200),检查 TX/RX 接线是否正确(交叉连接)。
Q: 数据更新很慢?
A: 检查"上报周期"设置,默认为 1 秒。可以调小到 0.1 秒(1)以获得更快的更新。
Q: 手机打不开网页?
A: 确认手机和电脑在同一个局域网,关闭电脑防火墙或添加8000 端口例外。
Q: 检测经常误报?
A: 尝试以下操作:1) 执行环境校准 2) 调低灵敏度(选择"低灵敏度") 3) 禁用不关注的距离门4) 缩小检测范围。
Q: 设置了参数但模块没反应?
A: 每个参数修改后需要点击对应的"应用"按钮才能生效。操作成功后会有模态框提示。
Q: 恢复出厂设置后参数不对?
A: 恢复出厂设置后会执行重启,页面会自动等待模块重新就绪后重新读取所有设置。
十、附录10.1 文件清单
以下为项目核心文件:
文件
用途
  
web_server.py
  
  
主程序,FastAPI  Web 服务器,启动入口
  
  
config.py
  
  
命令码、默认值、状态字典等常量配置
  
  
protocol.py
  
  
通信协议的帧构建与解析
  
  
requirements.txt
  
  
Python 依赖库列表
  
web/index.html
前端界面  HTML+CSS+JS(单个文件)
10.2 参数速查表
参数
范围
默认值
单位
  
检测范围
  
  
0 - 1100
  
  
0-1100
  
  
cm
  
  
分辨率模式
  
  
0 (80cm) / 1 (20cm)
  
  
80cm (0)
  
  
-
  
  
上报周期
  
  
1 - 255
  
  
10 (1.0s)
  
  
×0.1s
  
  
Out 模式
  
  
1/2/3
  
  
3 (运动或存在触发)
  
  
-
  
  
光照阈值
  
  
0 - 50
  
  
0 (任意光照)
  
  
lux
  
  
目标消失延迟
  
  
0 - 65535
  
  
0
  
  
s
  
  
锁定时间
  
  
0.2 - 10
  
  
1.0
  
  
s
  
  
运动灵敏度
  
  
0/1/2/3
  
  
中 (1)
  
  
-
  
  
存在灵敏度
  
  
0/1/2/3
  
  
中 (1)
  
  
-
  
  
距离门阈值
  
  
0 - 99
  
  
-
  
  
-
  
  
运行指示灯
  
  
0/1
  
  
开启 (1)
  
  
-
  
  
输出指示灯
  
  
0/1
  
  
开启 (1)
  
  
-
  
波特率
见下拉框
115200
bps
10.3 已知Bug
·        亮度检测不准确,固件bug。
·        恢复出厂设置只恢复部分,固件bug。
·        距离门阈值默认值随机,固件bug。




高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
关于楼主

楼主的其它帖子

上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2026 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail