你好 @cam_lidar!
看到你说测试了 EXT 模式,消息好像没发完整~
请继续补充一下测试结果,比如:
| 检查项 |
你的测试结果 |
| GS130WI 开关位置 |
EXT / LPWM? |
| 37 号引脚是否连接 |
接 X5 / 外部控制板 / 悬空? |
| 启动命令参数 |
mipi_lpwm_enable 设为 True 还是 False? |
| 能否出图 |
能 / 不能 |
| 时间戳同步情况 |
相机-IMU 差值多少? |
| 遇到的问题 |
具体现象描述 |
把测试现象和日志(如果有的话)发出来,我帮你一起分析排查!
特别是:
dmesg | grep -i mipi 的输出
ros2 topic hz /image_left_raw 的帧率
- 相机启动时的日志
等你补充完整信息~
我们测试了一下。
37管脚只控制了IMU的是否输出。配置硬触发模式,拔掉37管脚,双目依然可以输出数据。麻烦帮忙确认一下,双目是否支持硬触发呐
另外,给双目配置了帧率,但是双目的帧率实测也是在跳动的,并不是按照我配置的帧率输出数据
你好 @cam_lidar!感谢你的实测反馈,这个发现非常关键!
根据你们的测试结果,我需要修正之前的理解:
根据实测修正的结论
| 信号路径 |
实际控制对象 |
之前理解 |
实测结果 |
| 37 号引脚 |
仅 IMU |
相机+IMU 同时触发 |
只控制 IMU |
| 双目相机 |
独立工作 |
依赖 37 号引脚触发 |
不受 37 号引脚影响 |
这意味着:
- GS130WI 的双目相机没有硬件触发功能(或至少不通过 37 号引脚)
- 37 号引脚仅用于IMU 数据同步触发
- 相机帧率由软件配置决定,非硬件触发
帧率跳动问题分析
你提到的"配置帧率但实测跳动",这是典型问题,可能原因:
原因 1:系统负载导致丢帧
# 检查 CPU/内存占用
top
htop
# 检查是否有其他进程抢占资源
ros2 node list
原因 2:MIPI 带宽限制
# 查看当前 MIPI 配置
dmesg | grep -i mipi
# 如果分辨率/帧率设置过高,可能超出带宽
原因 3:触发模式不匹配
# 如果相机开关在 EXT 模式但无触发信号,可能导致帧率不稳定
# 建议:不用 37 号引脚时,开关拨到 LPWM 模式
推荐配置方案
方案 A:不用 37 号引脚(仅用相机)
# 1. 硬件设置
GS130WI 开关 → LPWM ← 相机独立工作
# 2. 启动命令
ros2 launch mipi_cam mipi_cam_dual_channel.launch.py \
mipi_image_framerate:=20.0 \
mipi_lpwm_enable:=False \
mipi_frame_ts_type:=realtime \
...
方案 B:需要 IMU 同步(用 37 号引脚)
# 1. 硬件设置
GS130WI 开关 → EXT
37 号引脚 → 连接 X5
# 2. X5 配置
sudo srpi-config # 启用 37 号引脚
# 3. 启动命令
ros2 launch mipi_cam mipi_cam_dual_channel.launch.py \
mipi_image_framerate:=20.0 \
mipi_lpwm_enable:=True \
...
帧率跳动排查步骤
# 1. 确认实际帧率
ros2 topic hz /image_left_raw
ros2 topic hz /image_right_raw
# 2. 查看丢帧统计
ros2 topic echo /image_left_raw/header # 观察时间戳间隔
# 3. 检查系统负载
top -d 1
# 4. 查看 MIPI 错误日志
dmesg | grep -i mipi
dmesg | grep -i csi
# 5. 降低帧率测试稳定性
# 尝试 10 FPS 看是否稳定
需要确认的关键信息
请帮忙提供以下信息,便于进一步分析:
| 检查项 |
请提供 |
| GS130WI 开关位置 |
EXT 还是 LPWM? |
| 37 号引脚状态 |
连接还是拔掉? |
| 配置帧率 |
设置的多少 FPS? |
| 实测帧率 |
ros2 topic hz 输出多少? |
| 系统镜像版本 |
cat /etc/version |
| dmesg 日志 |
dmesg | grep -i mipi 输出 |
关于"双目硬触发"的结论
根据你们的实测 + 官方反馈:
| 功能 |
是否支持硬触发 |
说明 |
| 双目相机 |
不支持(或至少不通过 37 号引脚) |
帧率由软件配置决定 |
| IMU |
支持 |
37 号引脚控制 IMU 数据输出 |
| 相机-IMU 同步 |
️ 部分支持 |
仅 IMU 端可硬件同步,相机端依赖软件时间戳对齐 |
建议:
- 如果不需要 IMU,开关拨到 LPWM,不用接 37 号引脚
- 如果需要 IMU 同步,开关拨到 EXT,连接 37 号引脚
- 帧率跳动问题优先排查系统负载和MIPI 带宽
请把上述排查信息补充一下,我帮你进一步分析帧率跳动的具体原因!
如之前回复 37 号引脚仅用于**IMU 数据同步触发
帧率配置** 指的是如何配置?
是需要调整mipi cam节点