Ubuntu下使用ROS moveit 連接ABB機器人

環境:Ubuntu16.04+ROS-kinetic(ROSPC)  

          Windows10+RobotStudio6.07(ROBOTPC)

          我用了兩臺電腦,一臺是WIN10用VMWare裝了虛擬機ubuntu,另一臺是WIN10。

          也可以只用一臺電腦,只要內存夠大,運行效果ok就可以,在這臺電腦上Windows中用VMWare裝虛擬機Ubuntu,然後在Windows中裝Robot Studio6.07(現在是6.08了,6.0以上版本應該都ok,以下版本我沒試過),在Ubuntu裏裝ROS(Ubuntu和ROS版本要對應,比如16.04對應kinetic版的ROS)。

         如果你用的是真實機器人,那就只需要ROSPC,因爲機器人本身就是ROBOTPC。

        仿真用的是ABB irb2400,這是ROS官方支持的型號,不需要自己生成配置文件

         原理類的東西,這裏不多說了。

一:安裝ROS

參考官方維基:http://wiki.ros.org/cn/kinetic/Installation/Ubuntu

二:設置虛擬機網絡(沒用虛擬機的可以跳過這一步)

這一步的目的是固定ubuntu的IP地址,利用橋接模式,使它和主機在同一個子網下,我這裏用的是以太網的ip,用無線局域網的應該也可以。

打開VMWare->編輯虛擬機設置->網絡適配器->橋接模式:

編輯->虛擬網絡編輯器->選擇你要橋接到的網絡,我選擇的是我的以太網卡,把DHCP關掉:

進入ubuntu->編輯有線連接1->編輯

IPV4設置->方法:手動->然後添加一個地址和你的以太網(或無線局域網)在同一個網段即可,可用ipconfig在WIN10上查看

設置完成之後,斷開重連,打開終端用ifconfig查看當前Ubuntu IP:

可以嘗試一下ping你的ROBOTPC,如果成功就可以進行下一步。

注意:ROBOTPC得和ROSPC在同一個網段下。

三:在RobotStudio下仿真(用真實機器人的可以跳過這一步)

參考官方教程:http://wiki.ros.org/abb/Tutorials/RobotStudio

重要的是要加入616-1 PC-interface和623-1 MultiTasking選項

四:在機器人端配置rapid代碼,運行ABB-server

參考官方教程:http://wiki.ros.org/abb/Tutorials

比較重要的是,socket設置的ip要改成ROBOTPC的ip.

五:在Ubuntu上下載abb配置包,用ROS調用:

先創建一個文件夾,叫 catkin_ws,作爲工作區,底下要有src文件夾:

參考:http://wiki.ros.org/abb_experimental

   1 cd /path/to/catkin_ws/src
   2 
   3 # retrieve the latest development version of industrial_core. If you'd rather
   4 # use the latest released version, replace 'kinetic-devel' with 'kinetic'
   5 git clone -b kinetic-devel https://github.com/ros-industrial/industrial_core.git
   6 
   7 # retrieve the latest development version of abb and abb_experimental
   8 # NOTE: you MUST use the '-devel' version of abb
   9 git clone -b kinetic-devel https://github.com/ros-industrial/abb.git
  10 git clone -b kinetic-devel https://github.com/ros-industrial/abb_experimental.git
  11 
  12 cd /path/to/catkin_ws
  13 
  14 # checking dependencies
  15 rosdep install --from-paths src --ignore-src --rosdistro kinetic
  16 
  17 # building
  18 catkin_make
  19 
  20 # source this workspace (only if you don't have any others)
  21 source /path/to/catkin_ws/devel/setup.bash

在ROSPC能ping通ROBOTPC和ROBOTPC啓動ABB server的前提下,

進入src中放abb_irb2400_moveit_config文件的文件夾(應該是cd /path/to/catkin_ws/src/abb),執行下一指令:

roslaunch abb_irb2400_moveit_config moveit_planning_execution.launch sim:=false robot_ip:=192.168.249.100

設置的robot_ip就是ROBOTPC的IP地址。
如果成功的話在ROBOTPC端,就能看到connection提示,然後你在ROSPC彈出的rviz上進行操作,就可以控制ROBOTPC上仿真的機器人或者真實的機器人了。

祝順利。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章