Notifications 大赛通知

大赛通知

Vrep专题系列1-仿真环境搭建-v1.0.19

发布时间 :2020-06-02

1. 仿真软件vrep介绍

vrep全称是virtual robot experimentation platform,也即虚拟机器人实验平台。V-REP是具有集成开发环境的机器人模拟器,基于分布式控制架构:每个对象/模型可以通过嵌入式脚本、插件、ROS或BlueZero节点、远程API客户端或定制解决方案进行单独控制。这使得V-REP非常通用,非常适合多机器人应用。控制器可以用C/ c++、Python、Java、Lua、Matlab或Octave编写。V-REP用于快速算法开发、工厂自动化仿真、快速原型与验证、机器人相关教育、远程监控、安全复核等。

01.jpg

包含众多机器人公司提供的机器人模型:
• ABB. There is however no link between ABB and V-REP
• KUKA Laboratories GmbH
• SICK AG
• Hibot
• K-Team
• Cubictek
• Neuronics
• Aldebaran
• IniLabs
• Robotiq
• Kinova Robotics
• Universal Robots
• Rethink Robotics
• Trossen Robotics
• Adept Technology
• Force Dimension
• On Robot ApS
• EVOL
• Blue Workforce
02.jpg


也可以导入由其他设计软件设计的模型:

CAD 格式: OBJ, STL, DXF, 3DS (Windows only), and Collada. 

03.jpg

 

2. Ubuntu系统安装

下面方法适用于在win7系统基础上增加ubuntu,使用双系统,具体操作请参考

在windows7电脑上安装Ubuntu16.04

https://mp.weixin.qq.com/s/1BAFjfzm5qNH9H1Ou4qr7g

注意:需要先下载ubuntu-16.04.6-desktop-amd64.iso版本

可在网上自行下载,或者从下面网盘下载ubuntu-16.04.6-desktop-amd64.iso

链接:https://pan.baidu.com/s/1vqukxie95PrZcfkmctZU0w

提取码:p5pw

 

参赛人员也可以单独准备电脑安装ubuntu系统或使用虚拟机方式

虚拟机安装可以参考

https://www.onlinedown.net/soft/82464.htm

3. ROS安装

仿真环境是在ubuntu16.04系统下安装ROS Kinetic版本,请参考以下步骤安装

 

    sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

 

    sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

 

    sudo apt-get update

    sudo apt-get install ros-kinetic-desktop-full

 

    echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

    source ~/.bashrc

 

    sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential

 

    sudo rosdep init

    rosdep update

 

以上步骤执行完成后,可在终端输入一下命令检查rosmaster是否能运行

 

roscore

 

`ctrl+c`快捷键可关闭rosmaster

可以参考https://www.ncnynl.com/archives/201801/2273.html安装

4. CoppeliaSim/V-REP安装

软件下载地址:

https://www.coppeliarobotics.com/previousVersions

虚拟赛统一安装V-REP PRO EDU V3_6_2 Ubuntu16_04版本,需要下载如下箭头所指向版本

 

04.png

下载完的文件名为V-REP_PRO_EDU_V3_6_2_Ubuntu16_04.tar.xz

保存用户的根目录后解压缩:

       xz –d V-REP_PRO_EDU_V3_6_2_Ubuntu16_04.tar.xz

 

然后展开tar文件:

tar –xvf V-REP_PRO_EDU_V3_6_2_Ubuntu16_04.tar

 

把目录名改为vrep

mv V-REP_PRO_EDU_V3_6_2_Ubuntu16_04 vrep

 

修改环境变量并保存到LINUX启动文件里:

echo 'export VREP_ROOT="~/vrep"' >> ~/.bashrc

       source ~/.bashrc

 

到此为止ubuntu下配置ros和安装vrep完成

5.验证启动vrep软件

首先打开一个新终端,执行命令

roscore          #注释:是你在运行所有ROS程序前首先要运行的命令

执行正常如图

05.png

可以隐藏此终端

然后再打开一个新终端,运行vrep

       ~/vrep/vrep.sh

或:

cd ~/vrep

./vrep.sh

       注意:vrep.sh不支持多层相对路径方式调用,例如:

              cd ~

              ./vrep/vrep.sh

      

       如果出现下面的情况,表示ros没有正常启动,需要检查ros的配置及运行情况。

06.png

 

正常情况应该如下,说明vrep软件可以正常工作,退出vrep软件。

07.png

6.工程配置编译

6.1 下载工程文件

该版本工程文件为roban-V1.1.tar.gz,下载链接为

链接:https://pan.baidu.com/s/1UD_JW-jbAQ-VJ3BAPHYR0A

提取码:jp73

参赛者需检查官网下载最新版本文件

解压到用户根目录:

tar xzf roban.tar.gz

解压后根目录下生成roban工程文件夹,如下图所示,在参赛者电脑上工程路径应为

/home/用户名/roban

注:用户名为参赛者自己ubuntu系统用户名

08.png

 

6.2 安装osqp求解器

参考 https://osqp.org/docs/get_started/cc++

建议使用源码编译,步骤如下

    git clone --recursive https://github.com/oxfordcontrol/osqp


         cd osqp

         mkdir build

         cd build

         cmake -G "Unix Makefiles" ..

         cmake --build .

         sudo cmake --build . --target install

参考https://osqp.org/docs/get_started/sources.html#build-from-sources

 

6.3 安装RBDyn程序包

参考https://github.com/jrl-umi3218/RBDyn

# Make sure you have required tools
sudo apt install apt-transport-https lsb-release
# Add our key
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key 892EA6EE273707C6495A6FB6220D644C64666806
# Add our repository (stable versions)
sudo sh -c 'echo "deb https://dl.bintray.com/gergondet/multi-contact-release $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/multi-contact.list'
# Use this to setup the HEAD version
# sudo sh -c 'echo "deb https://dl.bintray.com/gergondet/multi-contact-release $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/multi-contact.list'
# Update packages list
sudo apt update                                                    
# Install eigen-qld packages
sudo apt install librbdyn-dev python-rbdyn python3-rbdyn


 

 

6.4 编译工程

编译工程前安装一些其他附加包,避免编译出错,执行命令

sudo apt-get install libeigen3-dev

sudo ln –s /usr/include/eigen3/Eigen /usr/include/Eigen

 

如果本机没有安装clang编译器,需要在编译工程前安装,执行命令

apt-get install clang

 

进入roban文件夹编译工程:

cd ~/roban

catkin_make

编译成功以后需要执行下面命令

source devel/setup.bash

工程编译通过,参赛者可以启动仿真环境,为了便于之后使用ros环境减少工作空间设置,可以执行下面命令配置好工作空间环境

echo 'source ~/roban/devel/setup.bash'>> ~/.bashrc

source ~/.bashrc

7. 仿真软件demo场景演示

    本节实现方块挑战赛演示,通过7.1启动仿真软件,7.2载入虚拟赛场景,在终端中运行相关ros命令,提供参考的demo程序为python程序,运行后可实现机器人行走。

7.1 启动仿真软件

参考步骤5中操作,启动仿真软件。在第一个终端窗口,运行roscore

roscore         

 

注意:在同一台计算机(服务器)上只能运行一个roscore进程,如果有多人共用一台计算机,也只允许运行一个用户的一个roscore进程。

 

在第二个终端窗口,运行vrep

       ~/vrep/vrep.sh

 

7.2 载入大赛场景和机器人

Vrep软件菜单栏点击File,选择载入场景,如下图:

09.png

场景在 /home/用户名/roban/src/bodyhub/vrep 下,场景名rb-c-e-x.x,其中x为版本号,应选择官网最新版本,请在官网下载最新版本并解压到这个文件夹,如下图,选择并打开:

10.png

7.3 选择仿真引擎

在装载场景后选择其他引擎,如下图,引擎选择为Newton

11.png

 

打开新终端,输入以下命令运行节点,并设置sim变量参数为true

cd ~/roban

source devel/setup.bash

roslaunch bodyhub bodyhub.launch sim:=true 

再打开一个新终端,使用包名imitation直接运行一个包内的imitation_node节点

cd ~/roban

source devel/setup.bash

rosrun imitation imitation_node

 

11.png

 

7.4 运行demo程序

注意,此demo程序为python程序,其他程序语言需要自行编译为可执行文件

打开新终端,进入工程目录roban,运行python程序,机器人将开始行走。

python ./src/actexecpackage/scripts/walking2.py  

13.png

7.5 编写自己的程序

通过步骤7.4可以看到机器人缓慢行走,环境和配置到这里就完全没问题,可以参考步骤7.4的程序改写或者自己编写机器人程序,如有其它问题请联系赛事支持。