1. 仿真软件vrep介绍
vrep全称是virtual robot experimentation platform
,也即虚拟机器人实验平台
。V-REP是具有集成开发环境的机器人模拟器,基于分布式控制架构:每个对象/模型可以通过嵌入式脚本、插件、ROS或BlueZero节点、远程API客户端或定制解决方案进行单独控制。这使得V-REP非常通用,非常适合多机器人应用。控制器可以用C/ c++、Python、Java、Lua、Matlab或Octave编写。V-REP用于快速算法开发、工厂自动化仿真、快速原型与验证、机器人相关教育、远程监控、安全复核等。
包含众多机器人公司提供的机器人模型:
• 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
也可以导入由其他设计软件设计的模型:
CAD 格式: OBJ, STL, DXF, 3DS (Windows only), and Collada.
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版本,需要下载如下箭头所指向版本
下载完的文件名为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程序前首先要运行的命令
执行正常如图
可以隐藏此终端
然后再打开一个新终端,运行vrep
~/vrep/vrep.sh
或:
cd ~/vrep
./vrep.sh
注意:vrep.sh不支持多层相对路径方式调用,例如:
cd ~
./vrep/vrep.sh
如果出现下面的情况,表示ros没有正常启动,需要检查ros的配置及运行情况。
正常情况应该如下,说明vrep软件可以正常工作,退出vrep软件。
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系统用户名
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,选择载入场景,如下图:
场景在 /home/用户名/roban/src/bodyhub/vrep 下,场景名rb-c-e-x.x,其中x为版本号,应选择官网最新版本,请在官网下载最新版本并解压到这个文件夹,如下图,选择并打开:
7.3 选择仿真引擎
在装载场景后选择其他引擎,如下图,引擎选择为Newton
打开新终端,输入以下命令运行节点,并设置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
7.4 运行demo程序
注意,此demo程序为python程序,其他程序语言需要自行编译为可执行文件
打开新终端,进入工程目录roban,运行python程序,机器人将开始行走。
python ./src/actexecpackage/scripts/walking2.py
7.5 编写自己的程序
通过步骤7.4可以看到机器人缓慢行走,环境和配置到这里就完全没问题,可以参考步骤7.4的程序改写或者自己编写机器人程序,如有其它问题请联系赛事支持。