如何使用ROS 控制桌面机械手Dobot魔术师?

Linux系统下, 如何使用Robot OS机器人操作系统(ROS)控制桌面级机械手Dobot Magician呢?

小女子班门弄斧了,将在此Demo中展示给大家,欢迎各位大神交流。本Demo不依赖Serial,自动适配x86和x64;使用的是Ubuntu16.04 X64 系统,ROS版本为ROS Kinetic Kame,在开始先要下载一个ROS DEMO, 请点击这里选择“Dobot magician之ROS Demo”。

对于ROS的安装,网上有详细的安装说明, 如果你英语不怎么好,看安装说明如看天书一般的话,不用担心有中文版,参考博文地址如下:http://www.cnblogs.com/liu-fa/p/5779206.html ,此博文详细介绍了ROS的安装流程:从版本的选择到安装完成、测试,每个步骤都非常详尽。


安装完了ROS之后,就到了如何使用这个系统控制前文提到的桌面机械手DOBOT魔术师了,如果大家不知道这是一款怎么样的手臂,可以去百度下,或者前文有链接地址可以参考,下面我们进入正题。


ROS安装完成后,Linux系统下将dobot_ws解压到~目录下  (注:必须在Linux下解压,否则会编译出错)。

如何使用ROS 控制桌面机械手Dobot魔术师?_第1张图片

打开终端,进入dobot_ws目录下,输入catkin_make

如何使用ROS 控制桌面机械手Dobot魔术师?_第2张图片


编译完成:

如何使用ROS 控制桌面机械手Dobot魔术师?_第3张图片


source一下setup.bash文件

如何使用ROS 控制桌面机械手Dobot魔术师?_第4张图片


先开启roscore打开另一个终端,运行命令roscore

如何使用ROS 控制桌面机械手Dobot魔术师?_第5张图片


成功后可以看到:

如何使用ROS 控制桌面机械手Dobot魔术师?_第6张图片


然后使用rosrun命令运行dobot包中的DobotServer

注意此处传入Dobot实际的端口号,我这里使用虚拟机,对应的是ttyUSB0

如何使用ROS 控制桌面机械手Dobot魔术师?_第7张图片


成功运行如下所示:

如何使用ROS 控制桌面机械手Dobot魔术师?_第8张图片


如果失败,则会提示Dobot未找到或被占用

如何使用ROS 控制桌面机械手Dobot魔术师?_第9张图片


如果是权限问题,可以参考下面的博文及链接解决:

linux下非root用户获得/dev/ttyUSB0的读写权限

http://blog.csdn.net/maoyongfan3/article/details/44623909 


dobot service成功运行后,再打开另外一个终端,进入dobot_ws.

同时source一下setup.bash文件

如何使用ROS 控制桌面机械手Dobot魔术师?_第10张图片


使用rosrun命令运行dobot包中的DobotClient_JOG

然后就可以使用键盘控制DobotW S A D U I J旋转 I旋转 

其他按键:停止

如何使用ROS 控制桌面机械手Dobot魔术师?_第11张图片


Ctrl + Ctrl停止,测试另外一个Client:

rosrun dobot DobotClient_PTP这个例子测试了PTP及队列命令控制等相关命令的使用Dobot会自动地在x = 200x = 250之间来回运动)。


其他说明:

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文件里面更改相应的键值:

如何使用ROS 控制桌面机械手Dobot魔术师?_第12张图片


另外,如果出现以下错误,可能是因为连接的 USB 端口不对,请确认是否为dobot的端口:

如何使用ROS 控制桌面机械手Dobot魔术师?_第13张图片


以上不喜勿喷,但是欢迎各位大哥广提建议。若需转载,请注明出处。

你可能感兴趣的:(ROS机器人,智能硬件)