ROS控制桌面机械手Dobot魔术师

    技术2022-07-11  93

    0.引言

    本文参考DOBOT官网给的资料,对Dobot做了简单的测试,为后续的移动抓取做准备。 越疆DOBOT魔术师

    1.准备工作

    这次的测试是在Ubuntu16.04+ROS kinetic环境下的,所以要先安装好ROS,这边可以参考我之前的博客 ROS学习笔记(一)#ROS系统及RoboWare的安装 ROS安装好之后,就去魔术师官网下载一个ROS DEMO,请前往下载中心板块选择“Dobot magician之ROS Demo”即可轻松下载DEMO程序。

    2.编译功能包

    将dobot_ws解压到~目录下 打开终端,进入dobot_ws目录下,输入catkin_make 编译完成: source一下setup.bash文件

    3.运行Dobot

    先开启roscore,打开另一个终端,运行命令roscore 成功后可以看到: 然后使用rosrun命令,运行dobot包中的DobotServer。 注意:此处传入Dobot实际的端口号,我这里使用虚拟机,对应的是ttyUSB0 成功运行如下所示: 如果失败,则会提示Dobot未找到或被占用 如果是权限问题,可以参考下面的博文及链接解决:《Linux下非root用户获得/dev/ttyUSB0的读写权限》

    dobot service成功运行后,再打开另外一个终端,进入dobot_ws. 同时source一下setup.bash文件 使用rosrun命令运行dobot包中的DobotClient_JOG, 然后就可以使用键盘控制Dobot:W前、 S后、 A左、 D右 、U上、 I下、 J旋转、 I旋转 其他按键:停止 以Ctrl + Ctrl停止,测试另外一个Client: rosrun dobot DobotClient_PTP, 这个例子测试了PTP及队列命令控制等相关命令的使用(Dobot会自动地在x = 200和x = 250之间来回运动)。

    4.其他说明

    1.目录结构

    dobot_ws -- src -- dobot -- include:空 -- msg:空 -- src -- DobotServer.cpp -- DobotClient_JOG.cpp -- DobotClient_PTP.cpp -- DobotDll -- srv -- CMakeLists.txt -- package.xml - CMakeLists.txt

    理论上,可以不采用service的方式,直接参考DobotServer.cpp中对于DobotDll动态库的调用也是可以做应用的。

    2.如果按WASD无任何反应,可能是键盘的键值与demo的不一致,可以到src文件里面更改相应的键值: 另外,如果出现以下错误,可能是因为连接的 USB 端口不对,请确认是否为dobot的端口:

    Processed: 0.011, SQL: 9