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. 越来越多动物正在灭绝,“AI+动物”能否改变这一局面?[图]
  2. 国家自然基金标书申报体会
  3. php dns刷新,Windows DNS缓存自动刷新
  4. 软考信息安全必备考点
  5. C++中如何小数点后精确到两位输出
  6. 50.Linux/Unix 系统编程手册(下) -- 虚拟内存操作
  7. 两台服务器安装redis集群_两台服务器六节点redis集群环境搭建
  8. 主流NoSQL数据库评测之HandlerSocket
  9. work文档,Excel表格常用快捷键
  10. 设置计算机用户权限,计算机管理员权限在哪里设置_电脑系统如何设置管理员权限-win7之家...
  11. 〖Python 数据库开发实战 - Python与MySQL交互篇⑰〗- 项目实战 - 实现用户管理 - 修改用户
  12. java格式化mac地址,java格式化mac地址(加分隔符,去分隔符)
  13. Poj 1125 Stockbroker Grapevine(Floyd算法求结点对的最短路径问题)
  14. easyexcel实现导出
  15. 06.论Redis持久化的几种方式
  16. MD500E源码和代码解析文档 代码包含了同步机FOC控制算法、电阻、电感、磁链、反电动势
  17. [18考研]如何给导师发邮件?(模版)
  18. ZZULIOJ.1158: 又是排序(指针专题)
  19. [32位汇编系列]004 - 对话框资源的使用(2)
  20. 清华三宝:单车、土豆、N字班

热门文章

  1. 第38周星期四电话会议忙碌的一天
  2. Kofi's back
  3. 【翻译】Brewer's CAP Theorem CAP定理
  4. leetcode刷题之 两数之和
  5. 冒泡排序及优化(Java实现)
  6. 瀑布流 jquery。
  7. python filter
  8. 【接口自动化测试】使用Fitness实现接口自动化测试
  9. 敏捷练习 讨论 谁是你生命中的贵人
  10. CListCtrl使用指南