目录

1. 引言

2. 代码生成过程

2.1 RobCoGen下载

2.2 机器人源码生成命令

2.3 模型文件获取

2.4 生成源代码的注意事项

3. 总结


1. 引言

最近读机器人相关开源项目代码时遇到了iit-rtb这样一个库,在网上寻找了半天没有什么线索,几经周折才发现这是一个与机器人运动学及动力学源代码自动生成工具RobCoGen相关的一个库。

RobCoGen官网可以参考https://robcogenteam.bitbucket.io/index.html。这是一个很厉害的库,只要输入机器人的模型文件,这个库能够帮助你生成机器人的运动学及动力学代码!最厉害的是它是基于一本神书实现的,这本书叫做:Rigid Body Dynamics Algorithm,作者是Roy Featherstone!这本书作者曾经拜读过,只是水平不够,没能理解其中的原理,以后有机会必定好好研究一下。

2. 代码生成过程

2.1 RobCoGen下载

RobCoGen官网可以下载到源码和二进制包,建议如果只是使用的话直接下载二进制包就可以了。下图所示是官网下载二进制包的位置。

需要注意的是RobCoGen主要是基于Java实现的。因此需要配置一下Java的环境,这里比较推荐jdk-8版本。更高的版本可能导致一些警告。jdk-8的配置过程可以参考前面的1. Eclipse配置ROS开发环境。

2.2 机器人源码生成命令

官网同时给出了非常详细的机器人运动学及动力学代码生成过程,其实非常容易,只需要以下简单步骤:

unzip robcogen-0.5.2.zip
cd robcogen-0.5.2/exe/
./robcogen.sh ../sample/fancy/model/fancy.kindsl    # launches the program
# you may now input 1, 4, and 28 to exit
ls -l /tmp/gen/cpp/                                 # check the generated C++

2.3 模型文件获取

需要注意的是RobCoGen直接输入的是机器人的模型文件,但是这个模型文件的类型是".kindsl"。RobCoGen提供了fancy机器人的一个例子,你可以打开模型文件看一下,总体上这个文件并不复杂可以手工编写,但这样做总是容易出错的。

其实网上已经有开源项目帮忙解决了这个问题,你可以参考:https://github.com/leggedrobotics/urdf2robcogen/tree/v1.0,如下图所示,

urdf2robcogen是一个ROS包,编译完成后这个包可以将xacro格式或者urdf格式的机器人模型描述文件转换为".kindsl"文件。

2.4 生成源代码的注意事项

得到模型文件后可以参考RobCoGen官方的fancy机器人示例,将你的模型文件放到RoboCoGen/sample/model/your_robot目录下,同时通过命令行进入到robcogen.sh脚本所在目录并执行前述源码生成指令。注意必须要进入这个目录执行指令才能成功否则会报lib/...不存在等问题。

3. 总结

最近的工作遇到了非常多的挑战,希望自己能不断突破能力边界,获取新的技能,拓宽自己的视野。

这一部分内容作者也是第一次接触,欢迎批评指正。

利用urdf及RobCoGen生成运动学及动力学代码相关推荐

  1. 利用strut2标签自动生成form前端验证代码

    利用strut2标签自动生成form前端验证代码,使用到的技术有 1.struts2标签,如<s:form> <s:textfieled> 2.struts2读取*Valida ...

  2. ROS学习笔记(1)6轴机器臂的URDF文件的生成并用rviz和moveit显示

    时间:2018-12 地点:杭州 作者:潜龙 邮箱:chenhfxy@163.com ========================================================= ...

  3. (转载)MATLAB机器人运动学与动力学

    2019年4月3日下午,MATLAB微信公众号上的一篇文章:特此贴在此处,参考学习  :D MATLAB中的机械臂算法--运动学:https://mp.weixin.qq.com/s/BOumG8LP ...

  4. matlab案例_基于matlab和frost平台的cassie案例足式机器人运动学和动力学计算实现过程...

    1.软件平台 Maltab2019a Mathematica 12.1.0 Frost 2.实现步骤 (1).安装matlab2019a (2).安装Mathematica 12.1.0 (3).下载 ...

  5. matlab ikine 源码,RTB-9.10 matlab robotics toolbox 工具箱软件 可进行机器人运动学与动力学建模 275万源代码下载- www.pudn.com...

    文件名称: RTB-9.10下载  收藏√  [ 5  4  3  2  1 ] 开发工具: matlab 文件大小: 20442 KB 上传时间: 2016-11-27 下载次数: 16 提 供 者 ...

  6. matlab 斜抛 空气阻力,运用MATLAB对运动学、动力学问题进行过程分析

    第 29 卷第 6 期 Vol. 29 NO. 6 重庆工商大学学报( 自然科学版) J Chongqing Technol Business Univ. ( Nat Sci Ed) 2012 年 6 ...

  7. 机械系统计算机辅助运动学和动力学 引言

    文章目录 引言 一.系统动力学的DAE与ODE 二.计算运动学和动力学的现代焦点 三.本文结构 引言   本文利用微分几何的现代方法:(1)获得机械系统动力学的运动常微分方程(ODE),(2)构造求解 ...

  8. 开发日记-20190328 关键词 利用eolinker一键快速生成API接口文档

    今天感觉效率真的很低= =各个层面的,apk发布到现场发现出现了问题,所以一个下午都在忙着解决现场出现的问题,领导一直打电话询问进度,午觉也没有睡所以今天预计的很多计划都处于停滞状态,像昨天规划的今天 ...

  9. DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练测试过程全记录

    DL之RNN:基于TF利用RNN算法实现生成编程语言代码(C语言).训练&测试过程全记录 目录 输出结果 监控模型 训练&测试过程全记录 训练的数据集展示 输出结果 1.test01 ...

最新文章

  1. winform 外部组件发生异常
  2. SELECT中常用的子查询操作
  3. CNN网络架构演进:从LeNet到DenseNet
  4. 执行公式_一学就会,一吃就瘦,超简单又好执行的减肥食谱公式!
  5. 怎么知道Win10的电脑是否满足Win11的硬件要求
  6. html导出excel 内存不足,web导出excel那些坑
  7. 【万字总结,花几分钟让你进一步了解指针】(学习笔记11--指针中)
  8. 抖音何以为“抖音”?少不了A/B测试的功劳
  9. 多个pdf合并成一个pdf_多个PDF怎么合并?这些PDF合并方法很简单!
  10. 关于蜂蜜牛奶供养佛菩萨的两段经文
  11. python实现杨辉三角
  12. 大数据发展的根基是什么?
  13. Android X86上运行基于ARMARM处理器的应用程序
  14. mysql插入表情_向MySQL数据库中插入带emoji表情符的数据时报错
  15. html5 手机 消息,H5获取手机设备信息、app版本信息、ip地址
  16. 分形吧matlab,使用matlab画分形图.pdf
  17. PIM SM RP控制原理与实验
  18. 路由器实验之简单交换实现 DHCP配置
  19. 小航助学答题系统编程等级考试scratch二级真题2023年3月(含题库答题软件账号)
  20. 【已解决】Try using tf.compat.v1.experimental.output_all_intermediates(True).

热门文章

  1. 该网页无法访问未连接上服务器是什么意思,浏览器打不开该网页,因为无法连接到服务器...
  2. 使用C语言来访问ARM寄存器的语法
  3. fiddler抓包小红书app(简易版)
  4. style标签中的几个属性
  5. Python爬虫——王者荣耀全皮肤拉取
  6. mac下hadoop 2.6.0编译native library
  7. mac下hadoop环境的搭建以及碰到的坑点
  8. PAT_乙级_1004_筱筱
  9. Github连接不上问题
  10. 亚马逊将为语音助手研发AI芯片 欲追赶苹果