文章转自Mathworks官方微信账号,完整版请移步如下链接:
https://mp.weixin.qq.com/s/7H-r4_7i1e6fJvYqr8ldyQ
最近几年,足类机器人越来越火了,频频出现在各大展会上,相信从事这方面研究的同学也很多,今天我们以四足机器人为例介绍一下 MATLAB 在其中的强大作用。
机器人动力学建模实现机器人的控制,先要建立动力学模型。这是我们设计的基础。MATLAB 中提供了强大动力学仿真功能,同学们可以自己推导微分方程,通过基本模块搭建模型,也可以将机器人的 CAD 模型及装配关系通过MATLAB 相关工具箱提供的插件或自己开发的工具转为 Simscape 支持的 xml 格式,也可以直接导入 urdf 文件。MATLAB 提供三种 CAD 软件的导入,大家可以自行查阅 Simscape Multibody 相关的介绍。关于机器人的构型模型,我们可以从 github 上搜索并下载。以下两个链接是两个开源的机器狗模型,anymal B 和 laikago。链接如下:https://github.com/ANYbotics/anymal_b_simple_descriptionhttps://github.com/unitreerobotics/laikago_ros
这里面包含了机器人描述文件,对开发动力学来说,我们只需要 urdf 文件,和对应的 mesh 文件夹下的三维模型。由于下载的 mesh 文件均为 .dae 文件,我们需要做一个转换将其转成 .stl 或 .step 格式以便于 MATLAB 能够正确识别。关于转换格式,有很多开源工具及网站可以直接提供转格式服务,我们这里就不详细介绍了。格式转换完成后,需在 urdf 文件中手工查找并替换其中引用 .dae 文件的部分。
接下来,导入机器人模型到 Simulink 中,只需如下一行命令。
一个机器人模型便创建出来。
当然,同学们运行模型的时候会发现 3d 结构似乎没有完全匹配,这是因为这个 CAD 模型里采用的是 mm 单位,大家需要手动修改模型 visual 模块下的属性单位为 mm。这样,我们的机器狗 anymalB 模型就出来了。
参考案例请见如下链接:https://www.mathworks.com/help/releases/R2020a/reinforcement-learning/ug/quadruped-robot-locomotion-using-ddpg-gent.html
文章转自Mathworks官方微信账号,完整版请移步如下链接:
https://mp.weixin.qq.com/s/7H-r4_7i1e6fJvYqr8ldyQ