基于ROS下的moveit!控制真实aubo i5机械臂及踩坑

基于ROS下的moveit!控制真实aubo i5机械臂及踩坑

系统:ubuntu 16.04
ROS: kinetic

硬件条件:auboi5一台 ,ubuntu系统电脑一台,网线

确定安装好MoveItindustrial_core

注意检查Ubuntu 16.04,gcc 版本是 5.4。

1.创建工作空间

$ mkdir -p aubo_ws/src
$ cd aubo_ws/src
$ catkin_init_package

2.aubo ROS软件包

$ git clone https://github.com/lg609/aubo_robot.git ~/aubo_ws/src
$ cd ~/aubo_ws
$ catkin_make -j2 -DCMAKE_BUILD_TYPE=RELEASE
$ source devel/setup.bash

机械臂开机,示教器启动系统后,设置->系统->网络->设置IP,将IP设置与Ubuntu在同一网段下,使用网线连接两个设备,需要上网,可以中间加交换机

可以先在Ubuntu使用ping命令确定机械臂可以正常访问

Ubuntu启动

roslaunch aubo_i5_moveit_config moveit_planning_execution.launch sim:=false robot_ip:=192..168.12.102(ip为机械臂IP)

遇到的坑

1.规划失败(坐标系设置错误)

使用python控制机械臂,在tf树或者rviz中可以看到I5机械臂下面有一个底座,所以我在控制时候把坐标信息转换到了底座的坐标系下,结果他总是规划失败,最后我在一个博客中看到一句话,一切控制以示教器显示坐标系为准,我拿起被我扔到一边的示教器,这才发现他的坐标系是基于底座上面的,修改后就可以正确规划,执行了

img

2.速度控制失败(控制运动前设置速度与加速度)

自己写的控制代码,执行时候机械臂运动很快,调整运动速度速度

方法1:在标定相机的时候,网上教程说是需要在rviz的设置速度与加速度,所以在启动自己的代码之前,先设置一下,但是启动自己的控制程序速度依旧很快

方法2:简单搜索一波发现了两个函数

arm.set_max_velocity_scaling_factor(0.9) #范围(0~1)

arm.set_max_acceleration_scaling_factor(0.9)#范围(0~1)

然后我在初始化moveit!后就设置了速度限制,但是运行控制程序并没有减速,这,这就很尴尬了啊,后来灵光乍现,在运动之前设置下速度,终于速度控制生效了

3.机械臂载重控制(不能使用笛卡尔)

1.首先在示教器下设置载重及其重心,然后重启机械臂系统,选择设置的模式启动

2.不能使用笛卡尔运动,原因小菜鸡未知,如有大佬,还请赐教

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值