四足机器人
文章平均质量分 74
阿狸OKay
这个作者很懒,什么都没留下…
展开
-
Mini Cheetah 代码分析(一)
代码仓库链接:GitHub - mit-biomimetics/Cheetah-Software此软件包含了真机和仿真模拟。#首先是文件夹结构:documentation文件夹包含了有关的入门指南。common文件夹包含了动态和实用程序的公共库。包含了一些test测试程序和resources文件夹包含了用于可视化的模型文件。robot文件夹包含了机器人代码。sim文件夹包含了仿真代码,只有这部分代码依赖QT。third-party包含了经过修改过的第三方库。次级目录有Gold转载 2022-04-15 14:33:41 · 3001 阅读 · 2 评论 -
elmo驱动器上位机的使用
elmo驱动器上位机的使用1.接线2.连接和配置3.调试原创 2022-08-21 20:52:56 · 3629 阅读 · 0 评论 -
Mini Cheetah 代码分析(八)站立模式调整身体姿态
介绍在BalanceStan模式下,机器狗在四脚着地的情况下,调整身体姿态,包括机体欧拉角,位置,和机身高度等。在该模式下,使用的算法同运动是一样的,也是基于力控的优化算法控制。原创 2022-07-15 10:19:14 · 1026 阅读 · 1 评论 -
常用的Linux操作指令和功能技巧
常用的Linux操作指令原创 2022-06-27 11:48:28 · 865 阅读 · 0 评论 -
Mini Cheetah 代码分析(七)控制器自动切换运动模式
正常情况下,需要在运行mit_ctrl控制器后,有两种指令下发方式:一种是通过游戏手柄遥控器发送射频信号,机器人上的接收器接收到后再处理;另一种是通过在Qt仿真界面的窗口通过lcm通讯发送指令。如果需要不通过发指令实现自动运动,则需要对控制器状态机部分进行修改。主要步骤:(1) 手动设置指令下发模式,跳过ESTOP,进入控制器。(2)去掉指令接收接口,重写控制机逻辑部分。1. 在/robot/src/RobotRunner.cpp文件中,找到void RobotRunner::run()函数,找到如下代码段原创 2022-06-25 11:22:28 · 1677 阅读 · 3 评论 -
协方差自适应调整的进化策略(CMA-ES)转载自知乎——补充——补充matlab代码
写的挺好,居然看懂了,转载一下,随后贴上相应的matlab代码。之前转载的原文好像挂了,于是在知乎上又找了一篇相关的文章,原文链接为:进化策略及其在深度学习中的应用 - 知乎本文仅作个人学习用,若有侵权请联系删除本文翻译自:https://lilianweng.github.io/lil-log/2019/09/05/evolution-strategies.html,这篇博文很早就看过,但是每次都是似懂非懂,各种数学公式,虽然我做这个方向的研究很久,但是仍然不能全懂。这个端午,闲来无事,便萌生原创 2022-05-18 14:42:27 · 2870 阅读 · 1 评论 -
一次成功流水账-qpOASES安装和使用
qpOASES是一个解qp问题的优化库,MIT cheetah系列就使用该库解MPC步骤1. qpOASES安装,cmake编译安装版本的,用的不是官方版。2. cmake组织工程,编译,运行。# 下载$ git clone https://github.com/coin-or/qpOASES.git# 或者是直接下载压缩包解压$ mkdir build$ cd build$ cmake ..$ sudo make$ sudo make install查看/usr/loc原创 2022-04-27 14:28:09 · 4021 阅读 · 2 评论 -
Mini Cheetah 代码分析(六)机身控制器MPC控制器
MIT的机器狗包括MIT Cheetah 3和MIT Mini Cheetah使用了一种叫做Convex Model-Predictive的控制器,需要结合已经发表的文章去看才更容易理解该算法的代码(标题为:Dynamic Locomotion in the MIT Cheetah 3 Through Convex Model-Predictive Control),本篇解析重要的控制器实现的文件ConvexMPCLocomotion.cpp。该文件也是实现各种功能的入口,跑仿真的时候使用的主要也是这个文件原创 2022-04-20 15:07:39 · 2437 阅读 · 0 评论 -
Mini Cheetah 代码分析(五)腿部控制器算法
腿部控制器的内容主要在LegController.h和LegController.cpp文件中。下发的指令变量主要包含了前馈关节力大小tauFeedForward, 足端力大小forceFeedForward, 期望关节位置qDes, 期望的关节速度qdDes, 期望的质心位置pDes, 期望的质心速度vDes,以及质心和关节的PD控制器的参数。template <typename T>struct LegControllerCommand { EIGEN_MAKE_ALIGNE原创 2022-04-17 00:56:41 · 2192 阅读 · 0 评论 -
Mini Cheetah 代码分析(四)学习编写自己的控制器
要添加自己的机器人控制器,在“Cheetah Software/user”下添加一个文件夹,然后在user文件夹中的“CmakeLists.txt”中,将该文件夹目录添加进去。“JPos_Controller”是一个非常简单的控制器示例,以此为模板即可完成自己的控制器编写,其功能是直接控制腿部各个关节的位置。下边主要对\user\JPos_Controller文件夹下的几个文件进行分析。CMakeLists.txtJPosUserParameters.hJPos_Controller.cppJ原创 2022-04-15 23:00:27 · 1989 阅读 · 5 评论 -
Mini Cheetah 代码分析(三)快速从仿真中获取数据
首先启动仿真cd ~/wbc_v5/build./sim/sim界面选择好后,在build目录下ctrl+shift+t开启新终端,运行MIT控制器。./user/MIT_Controller/mit_ctrl m s在中央面板中,将 use_rc 设置为 0,将 control_mode 改为 6 (recovery stand), 运行到站立姿态将 control_mode 改为 3 (balance stand), 平衡站立(力控状态)将 control_m......原创 2022-04-15 17:35:49 · 2355 阅读 · 30 评论 -
Mini Cheetah 代码分析(二)快速跑起仿真
安装完成后,该教程实现迅速让小狗在仿真里走起来。一、 代码的编译与运行(全程需要联网)1 编译首先确保已经安装了 gitcd Cheetah-Softwarecd scripts # 必须确保进入了该文件夹中./make_types.sh #可能会看到报错 `rm: cannot remove...` 这是正常的cd ..mkdir buildcd buildcmake -DMINI_CHEETAH_BUILD=TRUE ..make -j4 (此过程与电脑配置有关,数字与电脑具备原创 2022-04-15 14:44:19 · 1747 阅读 · 1 评论