第七章建模与仿真分为上、中、下三节。

  • 上节讲解机器人相关建模语言URDF和xacro,并用丰富的案例做实践

  • 中节讲解控制器,重点是ros_control

  • 下节主要介绍gazebo,讲解机器人如何在仿真环境中的运动

    第七章:机器人的建模与仿真(中)

    • 一、ROS_Control
      • 1. 概念
      • 2. 控制器
      • 3. 硬件接口
      • 4. 传动装置
      • 5. 关节限制
      • 6. controller manager
    • 二、ArbotiX差分控制器
      • 1. 安装
      • 2. 关键功能包
      • 3. 实例

一、ROS_Control

针对不同机器人,ros_control提供多种类型控制器。控制器接口不相同,所以ros_control提供一个硬件抽象层,专门管理机器人硬件资源。control从抽象层请求资源,并不直接与硬件打交道。

1. 概念

Controller Manager

提供通用接口来管理不同的控制器。

Controller

使用控制器(比如PID)完成对每个关节的控制。他读取硬件资源接口中的真实状态,再发布控制命令。形成闭环控制。

RobotHW
机器人硬件抽象,通过读写方法直接与机器人硬件打交道。

Real robot

真实机器人上的嵌入式控制器,将接受到的命令传递到执行器。同时机器人身体上的传感器(编码器)将机器人当前状态传递回RobotHW

2. 控制器

目前功能包提供的控制器包括:

  • effort_controllers: 控制关节的力或者力矩

    • joint_effort_controller:输入为力,输出为力
    • joint_position_controller:输入为位置,输出为力(PID)
    • joint_velocity_controller:输入为速度,输出为力(PID)
  • joint_state_controller: 发布所有注册在RobotHW上的硬件关节状态. 数据格式如下图

  • position_controllers: 一次性设置一到多个关节位置

    • joint_position_controller
    • joint_group_position_controller
  • velocity_controllers: 一次性设置一到多个关节的速度

    • joint_velocity_controller
    • joint_group_velocity_controller
  • joint_trajectory_controllers:控制整条轨迹

    • position_controller
    • velocity_controller
    • effort_controller
    • position_velocity_controller
    • position_velocity_acceleration_controller

上述官方提供的控制器不合你意的话,可以自己通过Control manager实现自己的控制器。

3. 硬件接口

以上说的控制器,在收发命令的时候,需要用到与之对应的硬件接口。通过硬件接口来与RobotHW打交道。官方提供的接口有如下几种,具体就不再细说,

ROS基础系列(七):机器人的建模与仿真(中)相关推荐

  1. ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse

    ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或ja ...

  2. ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse...

    ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方.直接替换为indigo或ja ...

  3. ROS 学习系列-- 四轮机器人线性速率、角速度和电机PWM线性关系的定量分析

    ROS中的机器人导航需要底层轮子驱动十分精确的对行进的速率和角速度进行控制.本文根据大量的实验数据进行图形化分析,找出线性速率.角速度和电机PWM线性关系,并得出计算公式. 1. ROS导航机器人驱动 ...

  4. 机器人参数化建模与仿真,软体机器人

    专题一:机器人参数化建模与仿真分析.优化设计专题课程大纲 机器人建模基础 机器人运动学基础 几何运动学闭环解解析法建模 运动学MATLAB脚本文件编写(封闭解.构型绘制).工具箱 机器人工作空间(离散 ...

  5. ROS开发系列(7)- 在回调函数中发布topic

    文章目录 1 实现方法 2 实现代码 3 运行结果 参考 1 实现方法 在ROS开发系列(6)- zed深度信息与datknet的boundingbox信息融合基础上进行的修改. 创建一个自定义消息类 ...

  6. matlab mdh模型,6轴机器人DH建模、仿真、正逆解代码

    一.模型 二.MDH模型 使用修改DH模型.改进DH模型与标准DH模型主要区别在于末端,改进DH并没有建到工具坐标系,这里将4.5.6轴的坐标系都建在同一点,因此机器人连杆的参数只需要4个值a1.a2 ...

  7. Delat机器人MATLAB建模与仿真(2)

    目录 前言 一.运动学正解算法流程图 二.反解程序分析 1.运动学反解算法流程图 2.数据分析 总结 源码链接 前言 一.运动学正解算法流程图 判别式程序截图 二.反解程序分析 1.运动学

  8. ROS机器人建模与仿真(一)--URDF机器人建模

    前言 经过ROS的保姆级教程之后,相信大家对ROS应该有一个基本的认识了!关于各种工具的使用其实等到真正有所需求之后再去查找即可,roswiki始终是最好的最一手的信息来源.本系列的博客主要用来记录如 ...

  9. 刚柔软机器人参数化建模仿真分析--多种案例操作步骤--案例代码分享

    专题一:机器人参数化建模与仿真优化设计  2022年10月15日--10月16日  直播 2022年10月22日--10月23日  直播 专题二:软体机器人结构设计与仿真分析    2022年10月2 ...

最新文章

  1. R语言par函数设置图像个数、边界、颜色等实战
  2. shell中read用法
  3. 华为手机如何升级鸿蒙系统_能运行EMUI 11才能升级到鸿蒙2.0,只有这些手机能升级,有你的吗...
  4. 大江论坛服务器维护,Kangle“多节点服务器扩展”功能的详细介绍
  5. format函数使用matlab,Matlab基本函数-format函数
  6. 平均薪资29036的Python,零基础初学者如何入门?
  7. JAVA(1)-----JAVA基础知识
  8. linux select 服务器,Linux下用select()实现异步的Echo服务器
  9. 计算机名称 steam,Steam电脑配置排名:前19名都是N卡
  10. [Hive]-架构篇
  11. 20191121每日一句
  12. 织梦dedecms包装设计生产公司网站模板(中英文版)
  13. 基本的核方法和径向基函数简介
  14. 怎样用计算机10,win10计算器如何使用?win10自带计算器的使用方法
  15. 802.11 - 灵活组播服务(Flexible multicast service)
  16. 梁文道:盗版电影网站死去,我们仍然不见光明
  17. 002_SSSS_ Denoising Diffusion Implicit Models
  18. 李沐动手学深度学习V2-注意力评分函数
  19. mysql slave 1062_mysql主从同步slave错误1062
  20. python爬虫爬取高清图片——爬虫入门

热门文章

  1. C语言---char *与const char *
  2. 【dp - 多重背包】575: Coin Changing
  3. 【产品】智能管道设计运维一体化平台 - AIPIPE 2022R2版本新功能详解
  4. Android Studio导入ZXING
  5. java盒图_盒须图简介 - Java报表工具技术讨论,Style Report 报表专题 - OSCHINA - 中文开源技术交流社区...
  6. 在家做什么兼职最靠谱?不去上班做什么好?
  7. 如何自己烧制全文RSS(打造自己RSS源)
  8. 关于pip下载很慢很慢
  9. Java中LinkedList详解
  10. 40篇最受网友欢迎的web前端HTML精选文章合集