Franka

本文介绍了grasp_control包的启动步骤、关键参数设置,包括抓取方向、误差补偿和机械臂规划参数。详细讲解了服务接口,如夹爪和机械臂控制,以及异常清除方法。还提供了水平抓取误差校准的示例程序。
摘要由CSDN通过智能技术生成

grasp_control

Getting started

抓取控制包,包括任务管理、目标识别、机械臂规划控制等功能

1. 启动

$ roslaunch grasp_control grasp_control.launch

2. 参数

grasp_direct: 抓取方向.当前支持 forward(前向)/down(向下)

# 误差补偿参数
x_offset: 机器人 x 方向误差
y_offset: 机器人 y 方向误差
z_offset: 机器人 z 方向误差

eef_offset: 夹爪高度. 建议保持默认值不变
realtime_monitoring; 实时监测.若设置为 True,抓取过程中实时监测目标是否丢失

# arm_planner param
max_plan_retries: 机械臂规划最大尝试次数
    
# detector param
transpose_orientation: 对目标方向进行翻转. 当前主要针对 二维码 识别
substitute_orientation: 使用 EEF 方向替代目标方向.

<!-- detector param -->
convert_orientation: 是否转换目标点方向,对于二维码抓取,需开启该参数,对 z 方向进行翻转
base_frame: 相机坐标系. 如 camera_color_optical_frame
object_frame: 目标物体坐标系. 如 aruco_marker_frame

3. 接口

1) 夹爪控制

# 1. 简单控制
$ rosservice call /grasp_service "command: 'gripper_close'" # 夹爪关闭
$ rosservice call /grasp_service "command: 'gripper_open'" # 夹爪张开


# 2. 夹爪张开/合并控制. 例如: 张开 85%
$ rostopic pub /command_robotiq_action/goal robotiq_2f_gripper_msgs/CommandRobotiqGripperActionGoal "header:
  seq: 0
  stamp:
    secs: 0
    nsecs: 0
  frame_id: ''
goal_id:
  stamp:
    secs: 0
    nsecs: 0
  id: ''
goal: {emergency_release: false, emergency_release_dir: 0, stop: false, position: 0.085,
  speed: 0.0, force: 0.0}"

2) 机械臂控制

  • /grasp_server:控制抓取服务。支持:
    • pick:执行抓取操作
    • place:执行放置动作
    • follow:执行目标跟随动作(预留)
    • stop:停止动作
    • loop:循环抓放(预留)
    • reset:机械臂复位
    • gripper_open:夹爪张开
    • gripper_close:夹爪闭合

3) 异常清除

有时控制器会因为掉电、位置或速度超限、规划失败等原因汇报错误,遇到这一状态需要手动解除。

3.1). xarm 机械臂
错误代码可以在 xarm/xarm_states 主题的 err 字段查看。

$ rosservice call /xarm/moveit_clear_err

参考:xarm_ros 包说明

#水平抓取状态下 《苹果》 定位 误差分析示例程序 (基于采样)
/launch/grasp_pos_error_calibration.launch

原理:1)控制机械臂实际移动到“零点”,然后将识别物体放置到这个零点位置。
2)机械臂归位,然后按固定位移移动,统计物体坐标测量值和真实值的差值,建立误差校正模型。

结果说明:误差校正模型分为2个线性函数,一个是不同相机距离的初始位置误差,另一个是视角差和内参共同造成的横移误差。
先应用横移误差,若不够再应用初始位置误差。

使用方法:1)启动抓取主程序:$ roslaunch grasp_bringup grasp_bringup.launch
2)开启苹果识别demo,$ ssh nvidia@192.168.1.110
$ rosrun yolo5_detector yolo5rt_dector.py
3)开启标定程序:$ roslaunch grasp_control grasp_pos_error_calibration.launch
4) 得到结果后将结果写入到/grasp_node.py

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值