记一次ROS引导ABB机器人运动仿真测试

2022-05-22 10:57:01 浏览数 (1)

一、

“纸上得来终觉浅,绝知此事要躬行”。ROS真的有一定难度,只让它“跑”起来就得记很多的指令,看很多的文档,更别说研究它了。这个测试很早以前就想做,有难点卡住就放下,再有难点又放下了。

本来想用Windows的wsl测试的,结果虚拟机与宿主机的通讯一直搞不定,就改用VMware的“仅主机模式:与主机共享网络”模式,搞定的ROS与abb的通讯。这个测试也加深了对通讯的理解。

and

ABB Robot Studio可以非常轻松地建立ABB机械臂仿真环境,并且Rapid代码可以直接导入到ABB机械臂控制器,控制实际的机械臂 。而ROS系统则有着丰富的智能控制接口,可以让机械臂的程序设计变得非常简单。后边专门写一下abb的ROS程序,写的真的很棒。

测试环境是VMware® Workstation 15 Pro、Ubuntu18.04、ABB Robot Studio 6.08、ROS Melodic、Windows10

此处默认已安装好ROS Melodic,如果没安装的可以查看“wsl2安装ros”,摘取安装部分内容看就行。

二、

在宿主机里运行ABB Robot Studio 6.08,可参考官方文档:

http://wiki.ros.org/abb_driver/Tutorials/InstallServer

在这里下载abb的搭建程序

https://github.com/ros-industrial/abb_driver/tree/kinetic-devel/rapid

建立了2个后台多任务;7个数字输出的虚拟信号,关联相应系统输出;加载程序模块。

按照官方文档做完以上内容,再做一下更改:配置 - Communication - IP Setting - 右键“新建IP Setting”

三、

打开终端,在虚拟机连网状态,一般是NAT模式,安装好需要的软件。

安装vim

代码语言:javascript复制
sudo apt-get install vim

安装cktain tool

代码语言:javascript复制
sudo apt-get install python-catkin-tools

创建工作区

代码语言:javascript复制
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
git clone -b kinetic-devel https://github.com/ros-industrial/abb.git src/abb
git clone -b kinetic-devel https://github.com/ros-industrial/abb_experimental.git src/abb_experimental
rosdep update
rosdep install --from-paths src/ --ignore-src --rosdistro melodic
catkin build

检查工作区是否成功,如果缺失log文件夹,则执行以下。

一般第一次总是不成功,不清楚为啥!

代码语言:javascript复制
catkin init  catkin clean
catkin build
source devel/setup.bash

四、

设置虚拟机的ip地址,确认有ens33虚拟网卡

代码语言:javascript复制
ip a 
sudo vim /etc/network/interfaces

把其余指令用#备注,编辑添加以下:

代码语言:javascript复制
auto ens33
iface ens33 inet static
address 192.168.3.88 
gateway 192.168.3.1 
netmask 255.255.255.0

重启网络

代码语言:javascript复制
sudo /etc/init.d/networking restart

Workstation-编辑-虚拟网络编辑器中完成以下配置

编辑虚拟机设置

Windows10中设置 192.168.3.87 IP地址

关闭防火墙

宿主机Windows10 ping 192.168.3.88

虚拟机ubuntu18.04 ping 192.168.3.87

五、

在终端1输入:

代码语言:javascript复制
cd catkin_ws
source devel/setup.bash
roscore

在终端2输入:

代码语言:javascript复制
cd catkin_ws
source devel/setup.bash
roslaunch abb_irb120_moveit_config moveit_planning_execution.launch sim:=false robot_ip:=192.168.3.87

0 人点赞