Easy Handeye 项目使用教程
1. 项目的目录结构及介绍
easy_handeye
项目是一个用于 ROS1 的自动化、硬件无关的手眼标定工具。项目的目录结构如下:
docs
: 存放项目文档的文件夹。easy_handeye
: 包含核心功能的 Python 脚本和库文件。easy_handeye_msgs
: 定义了用于手眼标定的 ROS 消息类型。rqt_easy_handeye
: 提供了用于自动机器人移动的 GUI。.clang-format
: 用于配置 Clang 格式化工具的文件。.gitignore
: 定义了 Git 忽略的文件和文件夹。LICENSE.md
: 项目的许可证文件。README.md
: 项目的自述文件。
2. 项目的启动文件介绍
项目提供了两个主要的启动文件,分别用于计算和发布标定结果:
calibrate.launch
: 用于启动标定流程的启动文件。publish.launch
: 用于发布标定结果的启动文件。
以下是一个基本的 calibrate.launch
启动文件示例:
<launch>
<!-- 启动你的机器人 MoveIt! 栈,例如包含它的 moveit_planning_execution.launch -->
<!-- 启动你的跟踪系统的 ROS 驱动 -->
<include file="$(find easy_handeye)/launch/calibrate.launch">
<arg name="eye_on_hand" value="true"/> <!-- 根据需要设置为 true 或 false -->
<arg name="namespace_prefix" value="my_eih_calib"/> <!-- 使用相同的标识符 -->
<arg name="robot_base_frame" value="/base_link"/> <!-- 根据你的机器人 TF 帧填写 -->
<arg name="robot_effector_frame" value="/ee_link"/> <!-- 根据你的机器人 TF 帧填写 -->
<arg name="tracking_base_frame" value="/optical_origin"/> <!-- 根据你的跟踪系统 TF 帧填写 -->
<arg name="tracking_marker_frame" value="/optical_target"/> <!-- 根据你的跟踪系统 TF 帧填写 -->
</include>
</launch>
3. 项目的配置文件介绍
项目的配置文件主要用于设置标定过程中的参数,以下是一些常见的配置选项:
eye_on_hand
: 布尔值,用于指定是进行眼在手(eye-on-hand)还是眼在基(eye-on-base)的标定。namespace_prefix
: 字符串,用于为标定结果设置命名空间前缀,以避免在运行多个标定时的冲突。robot_base_frame
: 字符串,指定机器人的基准帧。robot_effector_frame
: 字符串,指定机器人的末端执行器帧。tracking_base_frame
: 字符串,指定跟踪系统的基准帧。tracking_marker_frame
: 字符串,指定跟踪系统的标记帧。
配置文件通常在 calibrate.launch
文件中通过 <arg>
标签进行设置,如上述示例所示。这些参数可以根据实际使用场景进行调整,以确保标定流程的正确执行。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考