Webots安装

Webots包含三种不同的软件包类型:.deb(Debian软件包),.tar.bz2(tarball软件包)和.snap(快照软件包)。我们在资料中提供了.deb安装包。如果需要其他版本的可以在网盘上下载,在Github下载大文件会很不稳定。

sudo dpkg -i webots_2020a-rev1_amd64.deb
sudo apt-get -f install

我们需要配置环境变量webots_home,指向到我们安装的应用目录。

sudo gedit ~/.bashrc
export WEBOTS_HOME=/usr/local/webots
export webots_home=/usr/local/webots

测试安装(执行命令)

webots

帮助文档

官方教程:https://cyberbotics.com/doc/guide/tutorials

本地帮助文档在应用的安装目录下,docs的文件夹中。目前的帮助文档无法直接打开,我们需要进行额外的配置。

  • 帮助文档资源

打开帮助文件文件夹。

  • 服务启动

    python -m http.server 8000

python2启动服务器

python -m SimpleHTTPServer 8000

python3启动服务器

python -m http.server 8000

文档访问路径

用户手册地址: http://localhost:8000/?url=&book=guide
API手册地址: http://localhost:8000/?url=&book=reference
汽车手册地址: http://localhost:8000/?url=&book=automobile

UR3机械臂Proto制作

当完成一个模型的建立工作后,为了方便后面的管理,我们可以将模型制作成Proto文件。在官方给出的案例中我们可以查看UR系列机械臂的Proto文件。projects\robots\universal_robots

问题:

机械臂头尾的处理方式?

  1. toolSlot属性,用于添加工具节点,新的工具节点将连接在机械臂的末端。

  2. staticBase属性,用于处理基座。

3d模型文件为:.dae.stl.step 生成Proto_IndexedFaceSet信息

dae和stl文件处理

使用Blender将模型(dae和stl)导出为.obj文件,然后使用view3dscene工具完成转化。模型文件可以在GitHub上获取。

工具安装

sudo apt-get update
sudo apt-get install view3dscene

转换

view3dscene --write your_model.obj > your_model.wrl

注意:

在导出为.obj文件时,需要观察Webots中坐标系的方向。

step文件处理

我们可以在C4D、3ds Max、SolidWorks等应用加载,然后转化为VRML文件。

这种直接导出的方式在C4D、3ds Max、SolidWorks中均可以实现。

提示:

如果使用的是Ubuntu18的话,C4D有可以的版本安装。

通过urdf生成的是*.proto文件

对于已有或只有urdf文件的情况下,我们可以通过urdf2webots功能包实现。在资料中提供给大urdf2webots工具,在urdf2webots目录下终端执行如下命令:

pip install -r requirements.txt

requirements.txt

pycollada==0.6
Pillow

工具使用

python urdf2webots.py --input=your_robot_path.urdf

生成的是*.proto文件,文件在urdf2webots文件夹中,我们可以导入到自己项目中。

注意

生成的proto文件中robot配置没有设置boundingObject信息,我们需要单独配置。

MoveIt!机械臂路径规划

前的机械臂控制是我们自己已经写好的位置信息,如果想要进行路径规划,我们需要与其他的工具联合在一起。可以通过将Webots中的world改造为ROS中的一个节点(通过ros控制器,它是被预编译过的控制器,通常情况下能满足我们大多数需求,只有在特殊需求下我们才会去使用自定义的ros控制器),这样就可以通过ROS完成与多工具的联动。

webots_ros

Webots提供了 webots_ros 包,官方的文档中仅说明了在Linux下的ROS melodickinetic 两个版本测试。当前使用的是kinetic版本的Ros。

webots_ros包下载

sudo apt-get install ros-melodic-webots-ros

kinetic或melodic

案例运行

roslaunch webots_ros e_puck_line.launch

案例说明:

webots.launch

<?xml version="1.0"?>
<launch><arg name="world" default="" doc="Path to the world to load"/><arg name="mode" default="realtime," doc="Startup mode"/><arg name="no-gui" default="false," doc="Start Webots with minimal GUI"/><node name="webots" pkg="webots_ros" type="webots_launcher.py" args="--world=$(arg world) --mode=$(arg mode) --no-gui=$(arg no-gui)" required="true"/>
</launch>

webots_launcher.py

optParser = optparse.OptionParser()
optParser.add_option("--world", dest="world", default="", help="Path to the world to load.")
optParser.add_option("--mode", dest="mode", default="realtime", help="Startup mode.")
optParser.add_option("--no-gui", dest="noGui", default="false", help="Start Webots with minimal GUI.")
options, args = optParser.parse_args()if 'WEBOTS_HOME' not in os.environ:sys.exit('WEBOTS_HOME environment variable not defined.')
command = [os.path.join(os.environ['WEBOTS_HOME'], 'webots'), '--mode=' + options.mode, options.world]
if options.noGui == 'true':command.append('--stdout')command.append('--stderr')command.append('--batch')command.append('--no-sandbox')command.append('--minimize')subprocess.call(command)

MoveIt!使用

在官方文档中我们可以看到UR机械臂与MoveIt!的联动案例。

除了官方文档中提到的需要复制的ur_e_webots外,还需要在https://github.com/ros-industrial/universal_robot下载ur5_e_moveit_configur_e_description

  • 启动Webots的ure.wbtworld,修改UR5e的控制器为universal_robots_ros。也可配置launch进行启动。

  • sudo apt-get isntall ros-kinetic-moveit

    加载ur机械臂的URDF文件

roslaunch ur_e_webots ur5e.launch
  • MoveIt!启动

roslaunch ur5_e_moveit_config ur5_e_moveit_planning_execution.launch

ERROR:cannot launch node of type [moveit_ros_move_group/move_group]: moveit_ros_move_group

原因:没有安装moveit

解决方法:

首先照例更新源

sudo apt-get update

kinetic 版:

sudo apt-get install ros-kinetic-moveit

Melodic 版:


sudo apt-get install ros-melodic-moveit
  • Rviz启动

roslaunch ur5_e_moveit_config moveit_rviz.launch config:=true

如果控制其他机械臂下载对应的URDF和MoveIt!即可。

Webots安装,及urdf转webots,通过3d模型获取Proto_indexedFaceset数据,MoveIt机械臂路径规划相关推荐

  1. 小车yolo机械臂(一)ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体

    ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体 目录总览 一,项目代码下载 二,ros下实现darknet_ros(YOLO V3)检测 2.1 编译整个项目 ...

  2. SolidWorks导出机械臂的URDF模型各个关节坐标系设置

    郑重提示:为了记录自己在学习过程中遇到的问题,所以记录了这篇博客..在后面学习的过程中发现之前这篇博客记录的导出URDF模型坐标系设置方法存在一些问题,不好写DH参数表,,更更要命的是,好些朋友都收藏 ...

  3. Dofbot机械臂从零部署笔记(1)——ROS之创建URDF模型、配置Moveit和MotionPlanning

    文章目录 从零部署之创建URDF模型 0 创建新工作空间 1 创建URDF模型测试功能包 2 dofbot机械臂的urdf模型 3 meshes 4 launch文件 5 编译并运行 6 运行效果 7 ...

  4. 【机器人仿真Webots教程】-Webots安装

    Webots安装 文章目录 Webots安装 1. Webots简介 2. Webots安装 2.1 系统要求 2.2 验证显卡驱动 2.3 安装 3. Webots仿真 3.1 world文件 3. ...

  5. Webots安装教程

    1.在Linux上安装 Webots将在运行glibc2.11.1或更早版本的最新Linux发行版上运行.这包括相当近期的Ubuntu,Debian,Fedora,SuSE,RedHat等.Webot ...

  6. 在Webots中导入自己的3D模型

    之前自己踩了一些坑,现在来把这个过程纪录下来,供大家一起学习交流. 软件版本:Webots 2020b, Creo 5.0(SolidWorks等3D画图软件都可以,无限制) 详细步骤 1. 将Cre ...

  7. Webots安装和教程推荐

    安装与推荐 软件介绍 Webots是一款专业的物理仿真软件,被广泛运用在机器人.智能车仿真实践控制算法中,2018年12月该软件宣布开源. Webots最初采用C进行编程,至今已经实现提供C.C++. ...

  8. 安装 SuMa (Surfel-based Mapping using 3D Laser Range Data)遇到的问题

    安装 SuMa (Surfel-based Mapping using 3D Laser Range Data)遇到的问题 Catkin Build 提示 Cannot find package py ...

  9. Webots串级机械臂建模仿真过程-详细!

    此篇博客转自本作者在古月居的博客:https://www.guyuehome.com/24692 前言: 非常高兴能作为古月居的签约作者,以后将推出更有价值的文章,以供参考.   由于最近要参与一个等 ...

最新文章

  1. 用Docker镜像搭建ELK环境
  2. jquery和bottstrap
  3. Linux 模拟网络丢包和延迟命令
  4. 我们已经不用 AOP 做日志很久了!
  5. css文件修改后没变化 static_Go Web编程使用Go语言创建静态文件服务器
  6. WAS 报错 Font '宋体' is not available to the JVM
  7. CentOS 7 安装 JAVA环境(JDK 1.8)
  8. iOS内存分配五大区:
  9. 51NOD-1005 大数加法【大数】
  10. Axure RP安装破解汉化以及发布到至AxureShare
  11. 使用Python GDAL库对高分三号全极化SAR影像进行RPC几何校正(PolSARpro格式)
  12. 计算机黑屏的原因及解决办法,电脑突然黑屏重启的原因及解决办法
  13. 2019.1.30《C Primer Plus》拖了一天写完的第八章编程练习答案
  14. Windows图像标注软件安装与使用(Vott、labelImg、labelme)
  15. java.lang.NullPointerException: Missing required view with报错
  16. html <table> 表格 表头固定 内容滚动 代码拿去就能用
  17. String类菜鸟级教程(字符串常量池及不可变,StringBuffer 和 StringBuilder)
  18. antd DatePicker 组件 月份和星期显示英文
  19. Sap Program 自动创建供应商资料,BP
  20. 由sudo -u nobody 开始--todo

热门文章

  1. windows server 2003双网卡的问题
  2. 两台XP系统电脑用双网卡共享上网操作
  3. 什么是线程池?(带你初步入门理解线程池)
  4. js实现前端根据部对象属性对对象数组进行排序
  5. DML DDL DCL区别
  6. Oracle DBHelper
  7. DWR第五篇之文件上传
  8. Python基础-程序控制结构
  9. 51nod 1065 最小正子段和 (贪心)
  10. Stanford CoreNLP--Part of Speech