0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器人的ROS模型建立

麦辣鸡腿堡 ? 来源:古月居 ? 作者:Shawn0102 ? 2023-11-28 14:19 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

这个系列主要介绍机器人ROS模型的建立方法,ROS系统带来的好处之一就是:

我们无需自己建立复杂的数学模型来描述自己的机器人几何尺寸、运动学和动力学等,只需要用它提供的模型描述方法即可实现快速建模。

ROS系统的模型描述方法主要有两种格式: URDF 和 XACRO。

URDF:用于描述一些简单的机器人模型,参考官网:URDF官方介绍(初学者一定要精读这些文档)。

XACRO:应用更普遍的机器人模型描述文件,参考官网:xacro,它有如下几个特点:

1.语法简练。采用编程话的脚本语言格式,可以定义变量、常量、引入数学表达式等,极易上手。

2.方便复用。它可以进行一系列的宏定义,并且可以包含其他.xacro文件。

下面,开始用xacro文件建立Rob的机器人模型。

1.第一部分是文件的头和一些宏定义

robot name我们可以自己随便定义,然后分别给出了几组颜色和常数的定义,最后给出了关节传动部分的宏定义。

< ?xml version="1.0"? >
< robot name="rob_robot" xmlns:xacro="http://ros.org/wiki/xacro" >


< !-- Include materials -- >
    < material name="Black" >
        < color rgba="0.0 0.0 0.0 1.0"/ >
    < /material >


    < material name="White" >
        < color rgba="1.0 1.0 1.0 1.0"/ >
    < /material >

常量的定义方法如下,在引用这里定义的常量的时候,用**{XX},例如在如果在下面的代码中想引用M_PI,只需要用:**{M_PI} 即可。

< !-- Constants -- >
 < property name="deg_to_rad" value="0.01745329251994329577"/ >
    < property name="M_PI" value="3.14159"/ >

关节的传动参数宏定义方法如下,xacro:macro name 定义了本宏的名称。

这个名称由用户定义,后续引用该宏的时候就是根据名字来的。

具体如何操作参考下文介绍或git上的源代码。

注意,这里宏定义内部的一些具体数值仅为说明而存在,具体的机器人关节应该是不一样的。

< !-- transmission block macro definition -- >
    < xacro:macro name="transmission_block" params="joint_name" >
      < transmission name="tran1" >
        < type >transmission_interface/SimpleTransmission< /type >
        < joint name="${joint_name}" >
          < hardwareInterface >PositionJointInterface< /hardwareInterface >
        < /joint >
        < actuator name="motor1" >
          < hardwareInterface >PositionJointInterface< /hardwareInterface >
          < mechanicalReduction >1< /mechanicalReduction >
        < /actuator >
      < /transmission >
    < /xacro:macro >
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    29979

    浏览量

    214684
  • 模型
    +关注

    关注

    1

    文章

    3555

    浏览量

    50783
  • ROS
    ROS
    +关注

    关注

    1

    文章

    288

    浏览量

    17919
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ROS机器人开发更便捷,基于RK3568J+Debian系统发布!

    本帖最后由 Tronlong创龙科技 于 2024-7-19 17:18 编辑 ROS系统是什么 ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统。它
    发表于 07-09 11:38

    名单公布!【书籍评测活动NO.58】ROS 2智能机器人开发实践

    手机为平台的移动互联网时代,下一个以机器人为核心的智能机器人时代,是否也会遵循这样的逻辑? 随着ROS 2的诞生,智能机器人开发迎来新篇章 ,它不仅为开发者提供了更为强大、灵活的工具,
    发表于 03-03 14:18

    【「# ROS 2智能机器人开发实践」阅读体验】+内容初识

    ROS 2智能机器人开发实践》内容阅读初体验 《ROS 2 智能机器人开发实践》是一本针对 ROS 2(Robot Operating S
    发表于 04-27 11:24

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    ROS的全称:Robot Operating System 机器人操作系统 ROS的 目的 :ROS支持通用库,是通信总线,协调多个传感器 为了解决
    发表于 04-30 01:05

    【「# ROS 2智能机器人开发实践」阅读体验】视觉实现的基础算法的应用

    阅读心得体会:ROS2机器人视觉与地图构建技术 通过对本书第7章(ROS2视觉应用)和第8章(ROS2地图构建)的学习,我对机器人视觉感知和
    发表于 05-03 19:41

    ROS RIKIBOT基础--使用系列 第一章节】ROS机器人硬件系统 精选资料分享

    ROS RIKIBOT基础–使用系列】ROS机器人硬件介绍1.RIKIBOT机器人硬件介绍1.1硬件框架ROS
    发表于 07-30 06:59

    STM32和ROS机器人的串口通信方案

    全网最实用的STM32和ROS机器人的串口通信方案
    发表于 08-11 07:27

    最实用的STM32和ROS机器人的串口通信方案

    全网最实用的STM32和ROS机器人的串口通信方案小白学移动机器人同名公众号:小白学移动机器人创作声明:内容包含虚构创作内容中的情节存在虚构加工,仅供参考全网最实用的STM32和
    发表于 08-20 06:33

    【抢鲜体验】--- Tran***ot ROS教育机器人

    本帖最后由 mu0543 于 2021-11-25 20:23 编辑 如果你热衷于编程探索和DIY创作,恰好又在寻找一款可以让你自由发挥,二次开发的ROS平台,那么我们今天体验的这款Tranbot ROS教育机器人将会非常
    发表于 11-25 20:13

    【抢鲜体验】- Tran***ot ROS教育机器人

    Tran***ot ROS教育机器人如果你热衷于编程探索和DIY创作,恰好又在寻找一款可以让你自由发挥,二次开发的ROS平台,那么我们今天体验的这款Tranbot ROS教育
    发表于 11-25 20:33

    如何对ROS机器人的定位导航进行仿真

    怎样去实现ROS机器人的定位导航呢?如何对ROS机器人的定位导航进行仿真?
    发表于 12-23 09:22

    如何搭建实体机器人ros底盘

    目录介绍一、底盘主控板二、嵌入式开发板1. 与上位机pc的关系2. 与STM32主控板的关系介绍自下而上的分析实体机器人(差分轮速机器人)搭建中的关键过程。一、底盘主控板本部分搭建实体机器人r
    发表于 01-20 07:36

    ROS机器人开发更便捷,基于RK3568J+Debian系统发布!

    ROS系统是什么 ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递
    发表于 11-30 16:01

    ROS教程之如何构建ROS机器人模型URDF学习资料免费下载

    URDF ( Unified Robot Description Format )直接的翻译就是“统一机器人描述格式”,是一种特殊的xm|文件格式,作为机器人的一种通用使用的描述文件。 ROS
    发表于 10-15 08:00 ?32次下载
    <b class='flag-5'>ROS</b>教程之如何构建<b class='flag-5'>ROS</b><b class='flag-5'>机器人</b><b class='flag-5'>模型</b>URDF学习资料免费下载

    基于运行ROS机器人

    这个项目旨在创建一个基于运行ROS机器人,它允许我们把任何通用的机器人硬件平台变成智能机器人
    发表于 12-02 14:59 ?2次下载