MS602 网络采集桥接

本仓库将 MS602 相机接到单独的 Pi,由 Pi 提供图像服务;小主机继续运行原有 ROS1 Noetic 业务与 topic 接口。这样可以把相机 USB 负载从小主机移出。

目录

  • pi/:Pi 原生图像服务及 systemd 单元。
  • ros1/scripts/:覆盖到小主机 ROS 包 ms602/scripts/ 的文件。

工作方式

Pi 服务默认处于待机。小主机网络桥接节点建立图像连接后,Pi 自动打开六路相机;连接断开后自动释放相机并回到待机。

日常 ROS 预览使用缩小后的低带宽流。收到 /ms602_save_cmd 后,小主机向 Pi 请求当前六路原始帧,并按原有语义保存为 TIFF。保存命令兼容:

保存目录#位置字段

也兼容只传保存目录。

Pi 部署

  1. 在 Pi 安装 Git 与运行依赖:
apt-get update
apt-get install -y git
git clone http://107.173.157.41:3000/clear/MS602-Network-Bridge.git /opt/ms602-network-bridge
sudo /opt/ms602-network-bridge/pi/install.sh
  1. 插入相机后检查:
v4l2-ctl --list-devices
systemctl status ms602-camera-native.service
curl http://127.0.0.1:16021/status

相机名称兼容 Cam1 到 Cam6 与 YeRui-MS602-1 到 YeRui-MS602-6 两个批次。

服务端口:图像流 16020/TCP,状态与原始帧接口 16021/TCP。

小主机部署

将 ros1/scripts/ 内的文件覆盖到:

/home/clear/sensor_ros_driver/ms602_ws/src/ms602/scripts/

确保 ROS 包的启动命令是:

rosrun ms602 ms602_driver_entry.py

编辑 config.txt:

mode=1
pi_ip=192.168.1.214
stream_port=16020
status_port=16021
reconnect_sec=2.0
  • mode=0:保留原来的 USB 直连方案。
  • mode=1:使用网络桥接方案。

更换 Pi 地址时,只修改 pi_ip 后重启 MS602 驱动管理器。

验收

在小主机上检查:

rostopic list | grep '^/ms602'
rostopic hz /ms602/cam550/image_raw
rostopic pub -1 /ms602_save_cmd std_msgs/String "data: '/tmp/ms602_save#test'"

应持续发布六路 image topic 与六路 exif topic。网络短暂中断后,桥接节点每 2 秒重连一次;重新连通后自动恢复图像发布。

S
Description
MS602 相机 Pi 网络采集桥接方案
Readme
45 KiB
0 Stars 1 Watchers 0 Forks
v1.0.0
Latest
2026-08-20 16:15:11 +08:00
Languages
Python 98.8%
Shell 1.2%