ROS控制器插件及机器人模型

news2024/11/29 6:33:36

ROS中的控制器插件

ros_control

1、ROS为开发者提供的机器人控制中间件

2、包含一系列控制器接口、传动装置接口、硬件接口、控制器工具箱等

3、可以帮助机器人应用功能包更快速落地,提高开发效率

 一、控制器管理

提供一种通用的接口来管理怒同的控制器

二、控制器

读取硬件状态,发布控制命令,完成每个joint的控制

三、硬件资源

为上下两层提供硬件资源的接口

四、机器人硬件抽象

机器人硬件的抽象和硬件资源直接打交道,通过write和read方法完成硬件操作

五、真实机器人

执行接收到的命令

最常用的控制方法为PID, 通过interface(网线...)传输给仿真软件或者是真实的机器人

控制器(controllers)

1、joint_state_controller(与控制无关,监控机器人的状态)

2、joint_effect_controller

3、joint_position_controller

4、joint_velocity_controller

ros_controller在整个框架中的主要目的是完成应用到机器人仿真或者是真实机器人衔接的中间线。

完善机器人模型

第一步:为link惯性参数和碰撞属性

提示: 在参数部分,质量mass特别小,接近0。其中惯性旋转矩阵设计的比较大,之所以这样设置是因为在gazebo作仿真时,物理参数的影响会十分大,若建模时,所有的参数都是正确的,也可正常导出URDF,但放入gazebo中时,不一定是正常的,机械臂可能会东倒西歪。如果对碰撞、摩擦这些没有很大的要求,就可以依照上面的规则来进行设计,虽然与真实机器之间有差距但可以稳定的进行仿真。

第二步:为joint添加传动装置(描述两个link之间是怎样的运动形式)

第三步:添加gazebo控制器插件

 调用ros_controller插件的功能

第一个参数:定义了robotNamespace机器人命名空间(若有多个机器人,机器人在命名上会有区别)

第二个参数:定义了机器人仿真的类型(使用默认的硬件抽象层接口DefaultRobotHWSim,完成上面下发的指令到机器人模型的数据的转化,控制模型运动)

第三个参数主要是为了兼容ROS多个编本之间不断迭代后参数的变化。

在gazebo中加载机器人模型

include部分用于启动gazebo仿真环境

其中robot-description保存模型的路径

通过urdf_spawner节点来产生模型(gazebo提供的功能),主要是将上面的模型添加进gazebo,因此会有如下参数:模型从哪来,模型的类型是什么,模型叫什么。

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

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

相关文章

GIAT: 蛋白质结构预测的新利器

瑞典Karolinska研究院在瑞典政府赞助下由Ben Murrell等研究团队在AlphaFold 3最新报告后提出这篇论文提出了一种非常有趣和创新的方法来生成蛋白质骨架结构,称为生成式不变角度转换器(GIAT)。与现有的主要基于扩散模型和流匹配的方法不同,GIAT采用了类似于大型语言模型(如GPT)中…

DDOS攻击实战演示,一次DDOS的成本有多低?

DDoS攻击成本概览 分布式拒绝服务(DDoS)攻击以其低廉的启动成本和惊人的破坏力著称。攻击者通过黑市轻松获取服务,成本从几十元人民币的小额支出到针对大型目标的数千乃至数万元不等。为了具体理解这一成本结构,我们将通过一个简…

东芝移动硬盘数据恢复方法有哪些

谁能懂我此刻的心情啊!移动硬盘用起来真的超级方便,如今我的工作几乎都离不开它,用来存放各种重要文件。可是,让人头疼的事情发生了,昨天我发现移动硬盘里的部分数据竟然莫名其妙地消失了!这可咋整啊&#…

乡村振兴与乡村旅游深度融合:依托乡村自然和文化资源,发展乡村旅游产业,促进农民增收致富,打造特色美丽乡村

目录 一、引言 二、乡村振兴与乡村旅游的内在联系 三、依托乡村自然和文化资源发展乡村旅游产业 (一)挖掘乡村自然资源优势,打造特色旅游品牌 (二)挖掘乡村文化资源内涵,丰富旅游活动内容 四、促进农…

一年IF涨幅10.527,一跃4区变1区,这本IEEE低调,但实力不容小觑!

本周投稿推荐 SSCI • 2区社科类,3.0-4.0(社科均可) EI • 计算机工程类(接收广,录用极快) SCI&EI • 4区生物医学类,1.5-2.0(录用率99%) • 1区工程类&#…

四川易点慧电商抖音小店稳扎稳打,揭秘其成功背后的秘密武器

在数字经济风起云涌的今天,四川易点慧电子商务有限公司以其独特的商业洞察力和创新经营策略,在抖音小店平台上稳扎稳打,赢得了广大消费者的青睐。那么,这家公司究竟是如何在竞争激烈的电商市场中脱颖而出的呢?让我们一…

目标检测——YOLOv9算法解读

论文:YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information (2024.2.21) 作者:Chien-Yao Wang, I-Hau Yeh, Hong-Yuan Mark Liao 链接:https://arxiv.org/abs/2402.13616 代码:https://github.com/W…

项目总结(5月13号)

从做聊天室项目到现在,陆陆续续完成了部分项目的功能点。 下面是我的项目构思 这里介绍一下项目的关键功能点,私聊和群聊。 因为我用的是非阻塞io,所以聊天窗口不能多开,当只开一个窗口进行聊天时,可以实现聊天信息的…

✬✬✬宁波iso14001认证:环境保护的“绿色光环”加持✬✬✬

🍒宁波iso14001认证:💗环境保护的“绿色光环”加持🌵 🍓说到环境保护,😂我可是满满的热情啊!⌚最近,我们公司成功🚈获得了ISO14001认证,&#x1f…

研究幽灵漏洞及其变种(包括但不限于V1-V5)的攻击原理和基于Github的尝试

一、研究幽灵漏洞及其变种(包括但不限于V1-V5)的攻击原理 1.1 基本漏洞原理(V1) 幽灵漏洞的基本原理是由于glibc库中的gethostbyname()函数在处理域名解析时,调用了__nss_hostname_digits_dots()函数存在缓冲区溢出漏洞。 具体来说,__nss_hostname_digits_dots()使用一个固定…

铁路/党员干部网评该如何去投稿呢?

为了推动网宣工作的正常运行网宣文章还能够有所突破,那么写作出高质量的文章就成为了我们的坚韧利剑了,我们在写作的时候需要用到软文写作技巧的手法来进行写作。俗话说得好冰冻三尺非一日之寒,在网上能够写作出吸引人的文章作者都是有较长的…

前端动态旋转地球背景

效果图 贴下源码 <template><div class"map-bg"><div class"canvas" id"canvs"></div><canvas class"canvasxk" id"canv"></canvas></div> </template><script setup …

「网络流 24 题」星际转移【最大流、残余网络上加边、分层(分时)图】

「网络流 24 题」星际转移 1 ≤ n ≤ 13 , 1 ≤ m ≤ 20 , 1 ≤ k ≤ 50 1 \leq n \leq 13, 1\leq m \leq 20, 1 \leq k \leq 50 1≤n≤13,1≤m≤20,1≤k≤50 思路 我们用 s h i p [ i ] [ j ] ship[i][j] ship[i][j] 表示飞船 i i i 在时刻 T T T mod r i j r_i j ri​…

MATLAB R2017b安装的关键一步

作者&#xff1a;朱金灿 来源&#xff1a;clever101的专栏 MATLAB R2017b的安装文件比较庞大&#xff0c;由两个iso文件组成&#xff1a;R2017b_win64_dvd1.iso和R2017b_win64_dvd2.iso。安装时需要注意的是&#xff0c;首先使用DAEMON Tools Lite打开R2017b_win64_dvd1.iso&am…

力扣HOT100 - 118. 杨辉三角

解题思路&#xff1a; 每个数字等于上一行的左右两个数字之和。 class Solution {public List<List<Integer>> generate(int numRows) {List<List<Integer>> res new ArrayList<>();for (int i 0; i < numRows; i) {List<Integer> …

Vue3实战笔记(13)—pinia安装笔记

文章目录 前言安装和配置pinia总结 前言 Pinia 是 Vue 的专属状态管理库&#xff0c;它允许你跨组件或页面共享状态。 Pinia是一个轻量级的状态管理库&#xff0c;它专注于提供一个简单的API来管理应用程序的状态。相比之下&#xff0c;Vuex是一个更完整的状态管理库&#xf…

【优先级队列】Leetcode 最后一块石头的重量

题目讲解 1046. 最后一块石头的重量 算法讲解 根据题目的意思&#xff0c;为了寻找到本次数组中的最大的两个值&#xff0c;我们需要使用一个数据结构&#xff1a;堆&#xff0c;使用大堆&#xff0c;每一次出两个数据&#xff0c;这两个数据就是当前数组中的两个最大值&…

tauri2.0bate版本支持移动端开发了,ios和android开发有福了

Tauri 是一个开源框架&#xff0c;用于构建轻量级、高性能的桌面应用程序。它是使用 Web 技术&#xff08;如 HTML、CSS 和 JavaScript&#xff09;来创建用户界面&#xff0c;同时利用 Rust 语言提供的api功能。Tauri 的目标是提供一种更高效、更安全的方式来开发跨平台的桌面…

linux裸机编程学习过程中个人错误集合-IMX6ULL开发版】

把main写成mian,编译出错.h文件复制完后忘记更改头文件#ifndef后面的内容&#xff0c;导致头文件一直找不到vscode错误更正完毕后还是找不到库函数参数&#xff0c;把库函数删掉&#xff0c;然后重新写一遍就正常了写led切换函数&#xff0c;led灯点不亮&#xff0c;是切换函数…

亚马逊测评实操干货,跨境电商做测评,卖家店铺测评攻略!

亚马逊在全球有超过 2 亿付费 Prime 会员和数以亿计的活跃买家账户&#xff0c;卖家们可以通过亚马逊一流的国际物流扩展业务。这是一个知名度极高的老牌跨境电商平台&#xff0c;而且平台流量非常大&#xff0c;成功打造爆款Listing这是每位亚马逊卖家渴望的诉求&#xff0c;做…