别人的发复现及经验
https://blog.youkuaiyun.com/qq_38620941/article/details/125321347
gazebo默认仿真环境
1、~/.gazebo/models/是系统下gazebo放置模型库的默认位置
2、保存世界:打开gazebo,点击“insert”就可以选择模型库中的模型文件,在gazebo中放置好之后就可以点击file–>save world as,保存世界,之后再配置设备的时候,只要在launch文件下声明一下该世界文件即可调用。
GPD包安装
https://answers.ros.org/question/350852/build-error-library-not-found/
源代码bug
1、yixiuge_d435i.xacro文件夹中
问题描述:
原来的代码为<property name="M_PI" value="3.141592654" />
解决方法:
应该为<xacro:property name="M_PI" value="3.141592654" />
原因分析:
xacro语法规则以xacro:起始
2、camera_calibration.launch文件中
问题描述:
<node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher" />
出现问题,提示Cannot locate node of type [state_publisher]
解决方法:改为<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" />
原因分析:
ROS Noetic中话题消息发布器名称发生变化,改名为"robot_state_publisher"
,具体可参考https://github.com/ros/robot_state_publisher/pull/87
move_group
通过SRDF
中定义的planning group的名称来创建接口对象。
注意:
.yaml
配置文件中没有定义的活动关节,不要在.srdf
文件中<state>
定义中出现
标定完成坐标系对应关系不对
查看标定文件hand_eye_calibration.launch
,参数如下
<arg name="tracking_base_frame" value="camera_rgb_optical_frame" />
<arg name="tracking_marker_frame" value="camera_marker" />
<arg name="robot_base_frame" value="base" />
<arg name="robot_effector_frame" value="yixiuge_ee_link" />
所以标定的参考坐标系为camera_rgb_optical_frame
single.launch
中reference frame
应该对应,也为camera_rgb_optical_frame
一定要学会查看源代码
aruco码size和id一定要注意修改
aruco_size
并非urdf
中尺寸,应该为去除白边之后的有效位置。
注意一定要于标定的源码对应