文章目录

  • 环境
  • 步骤
  • 备注
  • 故障问题解决
  • 参考

接上几篇,生成URDF后,在MoveIT Assistant生成配置用于运动规划。

ROS MoveIT1(Noetic)安装总结
Solidworks导出为URDF用于MoveIT总结(带prismatic)

环境

  • Ubuntu20.04;
  • ROS1 Noetic;
  • VMware

步骤

roslaunch moveit_setup_assistant setup_assistant.launch

将上一篇生成的urdf导入。
创建碰见检测

创建和大地连接的基准轴。

添加控制组,如果有手爪还需要添加手爪。


添加姿势,一般是回零:

添加末端执行器:没有可以不要。

添加控制组:

覆盖URDF文件:

添加作者邮箱:

生成配置文件:这里要选择另一个文件夹(不要在solidworks生成的文件夹内建立,要和其同级)开头小写,一定要选中demo.launch

编译运行:

catkin build -DCATKIN_WHITELIST_PACKAGES="assis_1"
source ~/ws_moveit/devel/setup.bash
roslaunch ur_test demo.launch

这是UR3的运动规划:

这是自己的非标机构的运动规划:

备注

config文件夹:
1.fake_controllers.yaml:这是虚拟控制器配置文件,方便我们在没有实体机器人,甚至没有任何模拟器(如gazebo)开启的情况下也能运行MoveIt。

2.joint_limits.yaml:这里记录了机器人各个关节的位置速度加速度的极限,这些都会被用于以后的规划中。

3.kinematics.yaml:用于初始化运动学求解库。

4.ompl_planning.yaml:这里是配置OMPL各种算法的各种参数。

5.pr2.srdf:SRDF是moveit的配置文件,配合URDF使用。我们可以看到这是一个xml格式的配置文件,根是robot,并有一个属性值name=’pr2’。下面各个项目应该很明显,就是我们刚刚在Setup Assistant里面所设置的东西,包含了组群,位姿,终端控制器,虚拟关节,以及碰撞免测矩阵ACM的定义。理论上,只要有了srdf和urdf,我们就可以完全定义一个机器人moveit信息。

launch文件夹:
1.demo.launch
demo是运行的总结点,打开我们可以看到他include了其他的launch文件。其中第14行说,如果有需要,发布静态的tf。比如说,你的机器人基座不在世界坐标的原点,你可以发布一个静态tf来描述机器人在世界坐标中的位置。第17-21行,就是我们发布虚拟机器人状态的地方了,当然,如果你有实体机器人或者有gazebo之类的模拟器,你需要去掉这一部分,有其他相应的节点来发布机器人状态。26-32行运行了另一个moveit重要的节点,move group。

2.move_group.launch
顾名思义,move group的功能是让一个规划组群动起来。怎么动,那就要做运动规划了,在move_group.launch第24-26行定义了运动规划库的使用,我们可以看到,默认的是使用ompl运动规划库。同样的,如果以后有时间,我会发帖详解如何创建新的运动规划库插件并让moveit使用其他的运动规划算法。其他的都是设置一些基本参数,暂时可以略过。

3.planning_context.launch
这里我们可以看到,定义了所使用的urdf和srdf文件,以及运动学求解库。不建议手动更改这些,但是如果你需要使用不同的urdf,srdf,可以在这里更改。

4.setup_assistant.launch
如果你需要更改一些配置,那么可以直接运行

需要修改配置时运行:

roslaunch test7 setup_assistant.launch

并且找到配置文件的路径:

故障问题解决

Resource not found:
ROS path [0]=/opt/ros/noetic/share/ros

运行roslaunch ur3 demo.launch时
发现配置文件生成路径为:/home/gw2/ws_moveit/src/UR3/my_config时会出现错误:
这个问题困扰了我半天。source也没用。

这是错误代码,一大堆:

WARNING: Package name "UR3" does not follow the naming conventions. It should start with a lower case letter and only contain lower case letters, digits, underscores, and dashes.
... logging to /home/gw2/.ros/log/a62140f2-79fb-11ed-baee-67ad559705bb/roslaunch-gw2-77742.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.Resource not found: The following package was not found in <arg name="db_path" default="$(find my_config)/default_warehouse_mongo_db"/>: my_config
ROS path [0]=/opt/ros/noetic/share/ros
ROS path [1]=/home/gw2/ws_moveit/src/UR3
ROS path [2]=/home/gw2/ws_moveit/src/geometric_shapes
ROS path [3]=/home/gw2/ws_moveit/src/moveit/moveit
ROS path [4]=/home/gw2/ws_moveit/src/moveit_msgs
ROS path [5]=/home/gw2/ws_moveit/src/moveit/moveit_planners/moveit_planners
ROS path [6]=/home/gw2/ws_moveit/src/moveit/moveit_plugins/moveit_plugins
ROS path [7]=/home/gw2/ws_moveit/src/moveit_resources/moveit_resources
ROS path [8]=/home/gw2/ws_moveit/src/moveit_resources/dual_panda_moveit_config
ROS path [9]=/home/gw2/ws_moveit/src/moveit_resources/fanuc_description
ROS path [10]=/home/gw2/ws_moveit/src/moveit_resources/fanuc_moveit_config
ROS path [11]=/home/gw2/ws_moveit/src/moveit/moveit_commander
ROS path [12]=/home/gw2/ws_moveit/src/moveit_resources/panda_description
ROS path [13]=/home/gw2/ws_moveit/src/moveit_resources/panda_moveit_config
ROS path [14]=/home/gw2/ws_moveit/src/moveit_resources/pr2_description
ROS path [15]=/home/gw2/ws_moveit/src/moveit_resources/prbt_moveit_config
ROS path [16]=/home/gw2/ws_moveit/src/moveit_resources/prbt_pg70_support
ROS path [17]=/home/gw2/ws_moveit/src/moveit_resources/prbt_support
ROS path [18]=/home/gw2/ws_moveit/src/moveit/moveit_ros/moveit_ros
ROS path [19]=/home/gw2/ws_moveit/src/moveit/moveit_runtime
ROS path [20]=/home/gw2/ws_moveit/src/panda_moveit_config
ROS path [21]=/home/gw2/ws_moveit/src/rviz_visual_tools
ROS path [22]=/home/gw2/ws_moveit/src/srdfdom
ROS path [23]=/home/gw2/ws_moveit/src/moveit/moveit_core
ROS path [24]=/home/gw2/ws_moveit/src/moveit/moveit_planners/chomp/chomp_motion_planner
ROS path [25]=/home/gw2/ws_moveit/src/moveit/moveit_planners/chomp/chomp_optimizer_adapter
ROS path [26]=/home/gw2/ws_moveit/src/moveit_resources/prbt_ikfast_manipulator_plugin
ROS path [27]=/home/gw2/ws_moveit/src/moveit/moveit_ros/occupancy_map_monitor
ROS path [28]=/home/gw2/ws_moveit/src/moveit/moveit_ros/planning
ROS path [29]=/home/gw2/ws_moveit/src/moveit/moveit_plugins/moveit_fake_controller_manager
ROS path [30]=/home/gw2/ws_moveit/src/moveit/moveit_kinematics
ROS path [31]=/home/gw2/ws_moveit/src/moveit/moveit_planners/ompl
ROS path [32]=/home/gw2/ws_moveit/src/moveit/moveit_ros/move_group
ROS path [33]=/home/gw2/ws_moveit/src/moveit/moveit_ros/manipulation
ROS path [34]=/home/gw2/ws_moveit/src/moveit/moveit_ros/perception
ROS path [35]=/home/gw2/ws_moveit/src/moveit/moveit_ros/robot_interaction
ROS path [36]=/home/gw2/ws_moveit/src/moveit/moveit_ros/warehouse
ROS path [37]=/home/gw2/ws_moveit/src/moveit/moveit_ros/benchmarks
ROS path [38]=/home/gw2/ws_moveit/src/moveit/moveit_ros/planning_interface
ROS path [39]=/home/gw2/ws_moveit/src/moveit/moveit_planners/chomp/chomp_interface
ROS path [40]=/home/gw2/ws_moveit/src/moveit/moveit_ros/visualization
ROS path [41]=/home/gw2/ws_moveit/src/moveit/moveit_ros/moveit_servo
ROS path [42]=/home/gw2/ws_moveit/src/moveit/moveit_setup_assistant
ROS path [43]=/home/gw2/ws_moveit/src/moveit/moveit_plugins/moveit_simple_controller_manager
ROS path [44]=/home/gw2/ws_moveit/src/moveit/moveit_plugins/moveit_ros_control_interface
ROS path [45]=/home/gw2/ws_moveit/src/moveit_visual_tools
ROS path [46]=/home/gw2/ws_moveit/src/moveit_tutorials
ROS path [47]=/home/gw2/ws_moveit/src/moveit/moveit_planners/pilz_industrial_motion_planner_testutils
ROS path [48]=/home/gw2/ws_moveit/src/moveit/moveit_planners/pilz_industrial_motion_planner
ROS path [49]=/home/gw2/ws_moveit/src/test7
ROS path [50]=/opt/ros/noetic/share
The traceback for the exception was written to the log file

后来发现要生成到另一个单独的文件夹(例如/home/gw2/test/src/robot)或者和solidworks生成的文件夹同级(不要放下其下一级),并且开头字母要小写。

因为生成的配置文件相当于一个ROS package。

Choose a location and name for the ROS package that will be generated containing your new set of configuration files. Click browse, select a good location (for example, your home directory), click Create New Folder, call it “panda_moveit_config”, and click Choose. “panda_moveit_config” is the location used in the rest of the documentation on this wiki. This package does not have to be within your ROS package path. All generated files will go directly into the directory you have chosen.

RLException: [demo.launch] is neither a launch file in package [assis_config
在工作空间下:source devel/setup.bash

REQUIRED process [moveit_setup_assistant-2] has died!
sudo apt-get update
sudo apt-get upgrade

参考

https://ros-planning.github.io/moveit_tutorials/doc/setup_assistant/setup_assistant_tutorial.html

MoveIT-Noetic Assistant 总结相关推荐

  1. 一文学会MoveIt Setup Assistant搭建moveit2机械臂模型

    文章目录 前言 一.MoveIt Setup Assistant 是什么? 二.搭建步骤 拉取相关repo 创建项目文档 编辑moveit_description文件夹 编辑moveit_config ...

  2. Moveit + Gazebo:搭建双臂仿真平台(方案一)

    环境ubuntu20.04 ROS-noetic 国内少有搭建Moveit和Gazebo联合仿真的教程,对于搭建双臂等复杂的仿真平台更是鲜有资料,因此想要把自己的见解分享出来供大家参考,共同提高. 本 ...

  3. moveit perception

    介绍 moveit包含感知(perception)模块,其可以将深度相机采集的点云或深度图转换成OctoMap(八叉树地图),用rviz可以显示Octomap,并且可以采用Octomap进行避障轨迹规 ...

  4. 在Ubuntu 18.04 LTS安装ROS Melodic版机器人操作系统(2019年10月更新MoveIt! 1.0 ROS 2.0 Dashing)

    ROS Melodic版本在2018年5月23日推出正式版,这是ROS第三款长期支持版本,前2版LTS分别为:indigo(14.04):kinetic(16.04).此版本有windows版已经推出 ...

  5. ros创建工作空间_ROS入门学习之七Moveit机械臂控制

    1.MoveIt!系统架构 MoveIt是什么: 一个易于使用的集成化开发平台 由一系列移动操作的功能包组成:运动规划.操作控制.3D感知.运动学.控制与导航算法 提供友好的GUI 可应用于工业.商业 ...

  6. ROS技术点滴 —— MoveIt!中的运动学插件

    MoveIt!是ROS中一个重要的集成化开发平台,由一系列移动操作的功能包组成,提供运动规划.操作控制.3D感知.运动学等功能模块,是ROS社区中使用度排名前三的功能包,目前已经支持众多机器人硬件平台 ...

  7. ROS系统MoveIt玩转双臂机器人系列(二)--生成MoveIt配置包

    ROS系统MoveIt玩转双臂机器人系列(二)--生成MoveIt配置包 注:本篇博文全部源码下载地址为:Git Repo. 1. 下载到本地后解压到当前文件夹然后运行:catkin_make 编译. ...

  8. ROS笔记(28) Setup Assistant

    ROS笔记(28) Setup Assistant 1. Setup Assistant 2. 加载机器人URDF模型 3. 配置自碰撞矩阵 4. 配置虚拟关节 5. 创建规划组 6. 定义机器人位姿 ...

  9. MoveIt!入门教程-简介

    转载: http://www.ncnynl.com/archives/201610/1028.html MoveIt!入门教程-简介 说明 MOVEit!是目前针对移动操作最先进的软件. 它结合了运动 ...

  10. MoveIt机械臂控制——(一)基本配置步骤

    (一)MoveIt! 使用方法: (1)组装:创建机器人URDF模型 (2)配置:使用工具生成配置文件 (3)驱动:添加机器人控制器或控制器插件 (4)控制:使用软件控制机器人运动 安装moveit包 ...

最新文章

  1. C++拾取——使用stl标准库生成等差、等比数列的方法
  2. ejb 3中bean的种类
  3. Android Bluetooth hci 命令分析
  4. 【uni-app】rich-text 无法处理 video 的解决办法
  5. 1502: [NOI2005]月下柠檬树 - BZOJ
  6. 使用 VSCode 编写 .NET Core 项目之初体验
  7. css3 3D动画 200303
  8. DDD-上下文映射图
  9. 33_向路由组件传递数据
  10. 使用svnadmin对VisualSVN进行项目迁移
  11. 最简单求100以内质数算法
  12. VB操作access数据库
  13. java计算机毕业设计小小银动漫网站源代码+数据库+系统+lw文档
  14. zookeeper选举机制详解
  15. 一首能记住网线水晶头接法诗
  16. 什么是跨域问题?跨域解决问题
  17. catalina.home和catalina.base
  18. 在华清远见学习嵌入式开发的总结
  19. 如何使用js添加html标签
  20. 注册表中设置页面打印参数

热门文章

  1. chapter1 静态分析技术-03文件MD5计算 winmd5计算器
  2. 卡口与大数据融合应用新看点
  3. 漫话:为什么生僻字计算机上打不出来,或者打出来也无法显示呢?
  4. php homebrew源少,修改homebrew源解决下载速度慢的问题
  5. 美化生活杂志美化生活杂志社美化生活编辑部2023年第9期目录
  6. Vue项目使用Cookie,以Json格式存入与读取Cookie,设置过期时间以及删除操作
  7. 利用word分词通过计算词的语境来获得相关词
  8. 关于3G手机USIM卡的电话簿
  9. Invalid bound statement (not found) [....] with root cause
  10. 六自由度无人机建模与轨迹跟踪siumlink仿真