ROS机械臂中Movelt!

Movelt!简介

一个易于集成使用的集成化开发平台

由一系列移动操作的功能包组成

1、运动规划

2、操作控制

3、3D感知

4、运动学

5、控制与导航算法

.......

提供友好的GUI

可应用于工业、商业、研发和其他领域

ROS社区中使用度排名前三的功能包

 Movelt!三大核心功能

1、运动学:KDL、Trac-IK、IKFast.....

2、路径规划:OMPL 、CHOMP 、 SBPL ....

3、碰撞检测:FCL 、PCD....\

通过命令行、rviz上位机可视化界面、通讯来调用该三大功能,通过以上任意一种方式发送指令给Movelt!后,Movelt!里的核心节点为Move Group,它会接收用户给他发布的指令及外部摄像头获取的点云数据,实现如何从A到B,这样会调用各种算法来实现该功能,并输出trajactory(运动轨迹)给机器人。

一、用户接口(User Interface)

1、C++:使用move_group_intereface包提供的API

2、Python:使用moveit_commander包提供夫人API

3、GUI:使用Movelt!的rviz插件

二、ROS参数服务器

1、URDF:robot_description参数,获取机器人URDF模型的描述信息

2、SRDF:robot_description_semantic参数。获取机器人模型的配置消息

3、config:机器人的其他配置信息,例如关节限位、运动学插件、运动规划插件等

三、机器人

1、Topic和Action通信

如何使用Movelt!

1、组装:创建机器人URDF模型

2、配置:使用Movelt! Setup Assistant工具生成配置文件

3、驱动:添加机器人控制器插件(controller)

4、控制:Movelt!控制机器人运动(算法仿真、物理仿真)

Movelt!可视化配置

报错:[rospack] Error: package 'moveit_setup_assistant' not found

执行:rosrun moveit_setup_assistant moveit_setup_assistant
显示报错:[rospack] Error: package ‘moveit_setup_assistant’ not found
这是由于没有安装moveit的包,所以找不到。

解决方法:

sudo apt-get install ros-xxxx-moveit

xxxx为自己系统中ROS的版本

安装完成后设置一下环境:

source /opt/ros/noetic/setup.bash

再打开终端输入:

rosrun moveit_setup_assistant moveit_setup_assistant

显示如下可视化界面

以创建新功能包为例

若在此处报错,加载不了机械臂模型文件

ROS was unable to find the package name 'probot_description' within the ROS workspace. This may cause issues later.

则用VSCode 打开该工作空间,在该终端里运行指令即可解决。

随后点击self-collision ,用于各个关节之间的自碰撞检测

点击generate collision matrix即可。自动产生碰撞矩阵

第三步、虚拟关节virtual joints  一般用于机械臂一般会配一个底盘,底盘会跟外部环境发生移动(世界坐标的world 坐标系与机器人底盘的base_link坐标系的位置的相对变换),所使用机械臂固定在地面上,跟world坐标系不存在相对变换,即可不需要设置。

第四步、规划组(planning groups)  跟实际机械臂的情况有关,所使用机械臂为6关节,则6关节为一规划组,联合考虑它们的位置。

设置名字 主要用于在编写代码时方便调用该规划组

其次是运动规划组的求解器(六关节正逆解、如何实现算法),通过运动学的求解器做配置,使用默认的kdl求解器。同时路径规划算法选择RRT。

还需配置组里面包含了哪些关节,点击Add Kin.Chain,链条里包含六关节

需要配置机器人六关节分别包含哪些link

所示例的机器人只有六个关节,没有包含爪夹,若包含爪夹,还需点击Add Group来添加一个规划组,通过两个组来控制机械臂运动。

第五步 robot poses 预定一些机器人的点位,方便于编成的时候去使用

第六步 end effectors 配置机器人终端的夹具(点击add end effector),该示例不需要配置

第七步 passine joints 用于机器人在做配置时,哪些关节是不需要考虑其运动的,若有则需配置,添加至右边框

第八九步 control、simulation目前在该窗口添加会出现一些问题,所以一般不再这里面配置,直接在文件里配置

第十步 3D perception 若外部有摄像头,可以选择摄像头发布的数据类型

选择话题发布的名字,选择完话题后,会自动订阅外部话题,加入外部的场景信息。目前没有视觉的集成不需配置

第十一步 作者信息填写

第十二步 自动产生配置文件  把文件保存在自己的工作空间里

这是显示有些没有配置,直接点ok即可

启动文件,看是否成功

显示如下界面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/7898.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL Server 存储过程中的字符串本身包含单引号的用法

文章目录 引言I 存储过程中的字符串本身包含单引号的用法1.1 问题1.2解决方法引言 使用场景: 字符串类型字段的值比较 I 存储过程中的字符串本身包含单引号的用法 在SQL Server中,单引号用于表示字符串常量。如果你的存储过程中的字符串本身包含单引号,你需要用两个连续的…

【PX4-AutoPilot教程-TIPS】MAVROS2运行px4.launch文件报错ValueError无法启动的解决方法

MAVROS2运行px4.launch文件报错ValueError无法启动的解决方法 问题描述解决方法 环境: Ubuntu :20.04 LTS ROS :ROS2 Foxy PX4 :1.13.0 问题描述 在使用命令ros2 launch mavros px4.launch命令启动MAVROS2与PX4之间的连接时报…

FL Studio20.9水果安装及切换修改中文语言教程

前言 喜欢音乐制作的小伙伴千万不要错过这个功能强大,安装便捷的音乐软件哦!如果你们已经下载好了这款软件的话,小编今天在这里就为大家详细讲解下如何安装FL Studio软件,一起来学习吧! 注意: &#xff0…

QT程序简单国际化实验

文章目录 第一步:新建一个QT工程第二步:添加控件第三步:在pro文件中添加内容第四步:更新文件第五步:打开QT的Linguist第六步:添加翻译内容第七步:回到QT Creator中添加文件第八步:给…

20230507,LIST容器

学了又忘学了又忘,明知道会忘又不想复习又还得学 LIST容器 1.1 基本概念 链表是一种物理存储单元上非连续的存储结构,数据元素的逻辑顺序是通过链表中的指针链接实现的;链表由一系列结点组成 结点:一个是存储数据元素的数据域&a…

Offline:IQL

ICLR 2022 Poster Intro 部分离线强化学习的对价值函数采用的是最小化均方bellman误差。而其中误差源自单步的TD误差。TD误差中对target Q的计算需要选取一个max的动作,这就容易导致采取了OOD的数据。因此,IQL取消max,,通过一个期望回归算子…

Mybatis进阶4-权限管理

权限管理 1.权限 //相当于 职责 2.用户 //相当于 职员(职员就职于一个职位) 3.角色 //相当于 职位(有多个职责) 权限管理基础表:权限表,用户表,角色表 问题1:…

无法添加以供审核,提交以供审核时遇到意外错误。如果问题仍然存在,请联系我们

遇到问题: 无法添加以供审核 要开始审核流程,必须提供以下项目: 提交以供审核时遇到意外错误。如果问题仍然存在,请联系我们。 解决办法: 修改备案号为小写, 例如:京ICP备2023013223号-2A 改…

NumPy及Matplotlib基本用法

NumPy及Matplotlib基本用法 导语NumPy导入与生成算术运算N维数组广播元素访问 Matplotlib简单图案绘制多函数绘制图像显示参考文献 导语 深度学习中经常需要对图像和矩阵进行操作,好在python提供了Numpy和Matplotlib库,前者类似一个已经定义的数组类&am…

Error Code: 1449. The user specified as a definer (‘admin‘@‘%‘) does not exist

前言 在进行MySQL数据库迁移或存储过程部署时,您可能会遇到错误 [Err] 1449 - The user specified as a definer (admin%) does not exist。这篇文章将为您提供一个详细的解决方案,帮助您顺利解决这一问题。 错误背景 此错误通常发生在尝试执行一个存…

扫描反代Cloudflare的IP 给网站CDN加速 免费制作自己的CDN加速

Cloudflare的CDN系统基本上每个站长都家喻户晓,大家都知道大陆对于搭建网站的审核力度,以至于Cloudflare并没有大陆的泛播节点,有也是只有香港节点。但是这些节点对于海外是加速效果,对于大陆就是一个字慢,晚高峰的情况…

JavaScript异步编程——02-Ajax入门和发送http请求

同步和异步回顾 同步和异步的简单理解 同步:必须等待前面的任务完成,才能继续后面的任务。 异步:不受当前任务的影响。 拿排队举例: 同步:在银行排队时,只有等到你了,才能够去处理业务。 异…

【C/C++】设计模式——单例模式

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

如何去官网下载windows10操作系统iso镜像

文章目录 一、先从微软中国官网https://www.microsoft.com/zh-cn/进去二、然后按图示一步步点进去三、点击下载工具这个工具会帮你生成windows操作系统iso文件四、下载好后一步步按图示要求成功操作一、先从微软中国官网https://www.microsoft.com/zh-cn/进去 二、然后按图示一…

分享三维地理模型制作实践

前言 地理信息系统&#xff08;GIS&#xff09;是一种用于捕获、存储、检查和显示与地球表面位置相关的数据的计算机系统。GIS可以在一张地图上显示许多不同类型的数据&#xff0c;如街道、建筑物和植被。这使人们能够更容易地看到、分析和理解模式和关系。 GIS可以使用包括位…

Nginx从入门到精通速成

文章目录 一. **Nginx** **的简介**1.1 什么是 **nginx**1.2 正向代理1.3 反向代理1.4 **负载均衡**1.5 动静分离 二. **Nginx** **的安装**三. **Nginx** **的常用的命令**四. **Nginx** **的配置文件**五. **Nginx** **配置实例**反向代理实例**1**5.1 实现效果5.2 准备工作5…

织梦云端:网络信号原理的艺术解码

hello &#xff01;大家好呀&#xff01; 欢迎大家来到我的Linux高性能服务器编程系列之《织梦云端&#xff1a;网络信号原理的艺术解码》&#xff0c;在这篇文章中&#xff0c;你将会学习到网络信号原理以及应用&#xff0c;并且我会给出源码进行剖析&#xff0c;以及手绘UML图…

Elasticsearch:使用 MongoDB connector 同步数据到 Elasticsearch

MongoDB 是一个基于分布式文件存储的数据库。由 C 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品&#xff0c;是非关系数据库当中功能最丰富&#xff0c;最像关系数据库的。Elasticsearch 是一个高效强…

Windows Server 2019虚拟机安装

目录 第一步、准备工作 第二步、部署虚拟机 第三步、 Windows Server 2019系统启动配置 第一步、准备工作 下载Windows Server 2019系统镜像 官网下载地址&#xff1a;Windows Server 2019 | Microsoft Evaluation Center VMware Workstation 17下载地址&#xff1a; 链…

excel如何将多列数据转换为一列?

这个数据整理借用数据透视表也可以做到&#xff1a; 1.先将数据源的表头补齐&#xff0c;“姓名” 2.点击插入选项卡&#xff0c;数据透视表&#xff0c;在弹出对话框中&#xff0c;数据透视位置选择 现有工作表&#xff0c;&#xff08;实际使用时新建也没有问题&#xff09;…