6edb8d39ab
在开始'设备契约层 + 目录重构 + 通止规装配'改造之前,先钉住当前可运行状态, 使后续任何删除/重构都可回退。 本基线包含: - 现有 ROS 2 工作区全部源码(arm_application / arm_control / arm_bringup 等) - 官方 flexiv_ros2 栈(含 flexiv_hardware / flexiv_controllers 等符号链接) - 设备契约层 src/arm_interfaces(新增,46 项单测通过) - devices/ 设备选型与品牌清单(新增) - scripts/gen_site_example.py 与由它生成的 config/site.example.yaml 按 .gitignore 排除:build/ / install/ / log/ / config/site.yaml / 模型权重二进制。
devices/grippers/dh_pgea/protocol/ —— 大寰 Modbus 协议资料
放什么
大寰(DH)夹爪的 Modbus RTU 协议手册、寄存器表、型号规格书。
格式与命名要求
| 项 | 要求 |
|---|---|
| 格式 | 厂商原始 PDF / 文档,不要转换 |
| 命名 | 保持原文件名,或改为 <型号>_<文档类型>.pdf,如 PGEA-100-20-W_寄存器表.pdf |
| 是否必需 | 不必需。寄存器表已固化进驱动代码,此目录仅供人工排查时对照 |
为什么放这里
驱动里硬编码了寄存器地址与 CRC 表。当现场出现「某个动作没反应」时, 需要拿手册逐条核对寄存器定义与从站号,所以把手册放在驱动旁边最方便。
已知的两处不一致(迁移时要处理)
-
现在代码里有两套独立的 Modbus 实现,各自定义了一份寄存器常量:
src/arm_application/arm_application/dh_pgea.py(PGEA,自带 CRC 表)src/arm_application/arm_application/dh_official.py(含 RGI 旋转寄存器)
两份功能重叠,P1 之后合并成一份。
-
site.yaml里gripper.backend: rdk这条「走机械臂控制器 RS485」的分支 已被run_gripper.sh明确拒绝,对应的scripts/rdk_gripper.py是孤儿脚本。 如果你其实需要走控制器 RS485(而不是工控机 USB),请明确告知 —— 这会影响驱动是挂在devices/grippers/还是devices/robots/flexiv/下。