Files
2026-10-16 17:27:30 +08:00

73 lines
3.1 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 手眼自动标定配置。
#
# 工作空间:~/ros2
#
# 先示教位姿,再求解(推荐用封装脚本):
# bash ~/ros2/scripts/run_handeye.sh teach
# bash ~/ros2/scripts/run_handeye.sh merge
# bash ~/ros2/scripts/run_handeye.sh calibrate
handeye_calibrate:
ros__parameters:
mode: "eye_in_hand"
# ⚠️ 站点相关值**故意不写在这里**(joint_prefix / output_dir / num_poses /
# waypoint_positions),它们由 run_handeye.sh 在运行时提供:
# joint_prefix ← 由 arms.yaml 按臂号解析,-p 传入
# output_dir ← 按"臂号 + 模式"算出的临时目录,-p 传入
# num_poses / waypoint_positions ← 来自 handeye/poses/<臂号>_<模式>.yaml
# (作为后一个 --params-file,会覆盖本文件)
# 它们此前在这里各留了一份副本,与 poses/ 里的实际数据并不一致
# (本文件是 2026-08-28 的 13 点,poses/89 是 2026-09-02 的 12 点),
# 只是恰好被覆盖顺序压住。留着就是给"改了脚本顺序 / 直连节点"埋雷:
# 会静默用上旧数据,而症状只是标定结果变差,很难联想到这份副本。
# 注:waypoint_positions 的节点默认值是全 0,所以**直连节点是跑不了的**,
# 必须经 run_handeye.sh(或自己传 --params-file)—— 这是有意为之。
#
# 设备ID 相关的东西同理,不写死在这里,见 config/site.yaml 与 arms.yaml。
joint_names: [joint1, joint2, joint3, joint4, joint5, joint6, joint7]
velocity_scale: 0.10
action_name: "follow_joint_trajectory"
move_time_sec: 4.0
start_index: 0
min_poses: 5
# 相机装在法兰上(eye-in-hand):D405
camera_source: "d405" # d405 | d435 | manual
camera_serial: ""
camera_namespace: ""
realsense_width: 1280
realsense_height: 720
image_topic: ""
camera_info_topic: ""
camera_fx: 0.0
camera_fy: 0.0
camera_cx: 0.0
camera_cy: 0.0
camera_dist: [0.0, 0.0, 0.0, 0.0, 0.0]
# 板尺寸的权威在 site.yaml → handeye.boards.<模式>。
# 这里只写眼在手上那块板的兜底(A5 / 11×8 / 15mm);run_handeye.sh 会按
# --mode 用 -p 覆盖成对应模式的值。没配过的模式会被脚本当场拦下,
# 不会静默用这份兜底去标另一块板。
board_cols: 11
board_rows: 8
square_size_m: 0.015
settle_sec: 0.4
stable_window: 8
stable_pixel_std: 0.45
stable_timeout_sec: 25.0
# 临时产物(采点图、taught_poses.txt、captures.json)落在 handeye/tmp/ 下。
# 注意 handeye/tmp/ 不进 git。
# output_dir 不写在这里:由 run_handeye.sh 按"臂号 + 模式"算出击(handeye/tmp/89 等)。
# 留一个共享的 output_dir 会让多条臂互相覆盖采点,症状是"标定结果突然变差"。
#
# 留空 = 由 run_handeye.sh 按"设备ID + 模式"给出路径,
# 即 handeye/results/<臂号>_<模式>.yaml(如 89_eye_in_hand.yaml)。
result_file: ""
cleanup_images: true