双足机器人的平衡控制
在最开始,双足机器人使用的平衡控制策略是「静态步行」(static walking)。这种策略的特点是:机器人步行的过程中,重心(COG,Center of Gravity)的投影始终位于多边形支撑区域(support region)内,这种控制策略的好处在于:机器人可以在行走动作中停止而不摔倒,但代价是行动速度非常迟缓(每一步需要花费10 秒甚至更长,因为需要保持重心的投影始终位于支撑区域,否则将不稳定)。
因为静态步行和人类的期望相差甚远,于是人类开发出来了另一种步行平衡策略——「动态步行」(dynamic walking)。在动态步行中,机器人的行动速度被提升至了每步不超过 1 秒。但其弊端也是显而易见的,机器人难以在运动的状态下立即停顿(惯性的作用),从而使得机器人在状态转换的过程中变得不稳定。为了解决惯性带来的影响,零力矩点(ZMP,zero moment point)被引入到了这一控制策略中。在单脚支撑相中,ZMP=COG。其好处在于,当 ZMP 严格的存在于机器人的支撑区域中,机器人则绝对不会摔倒。
双足平衡的主流——基于 ZMP 的动态步行
现在双足平衡的主流是用基于 ZMP 的动态步行。从上述的基本内容来看,双足机器人的一条腿就可以抽象成控制系统中最基本的「倒立摆」模型。
由于复杂地形的双足平衡无法由单一的控制器实现,所以多个控制器的切换策略被用于解决平衡问题。在这一个策略中,机器人的行走被设定为一个周期(cycle)每一个周期被分成了不同的行走阶段(stage),如下图所示:
直立姿态控制器(Upright Pose Controller )
这种控制器可以使机器人在倾斜地形中始终保持直立姿势,从而保持整个机体的平衡。对于双足机器人而言,倾斜地形的「全局倾斜角」的测量就显得尤为重要。一般采用的测量方法是在机器人的躯体内部安装一个 2 轴的加速度计,再加上一个低通滤波器就可以构成一个倾斜计。
对于机器人的俯仰姿态控制,在规定的踝关节轨迹上,直立姿态控制器附加了含有俯仰误差的 PI 控制器:
直立姿态控制器则可由下列等式实现:
下图更加直观的反映出了使用控制器之前与之后的俯仰控制平衡性差异:
下图显示了使用控制器之前与之后的侧倾控制平衡性差异:
相关文章
- ubuntu远程桌面控制_ubuntu 远程控制
- 新型传感器将改变大脑控制的机器人技术
- matlab axis画圆,使用MATLAB中axis实现图形坐标控制-Go语言中文社区
- ROS1云课→25机器人控制配置
- Pandas数据处理1、DataFrame删除NaN空值(dropna各种属性值控制超全)
- 【计算机网络】数据链路层 : 局域网基本概念 ( 局域网分类 | 拓扑结构 | 局域网特点 | 局域网传输介质 | 介质访问控制方法 | IEEE 802 | 链路层 LLC、MAC 控制子层 )
- 可变腿长、能下楼、走沙坑,数研院具身四足机器人控制取得突破
- 5620亿参数,最大多模态模型控制机器人,谷歌把具身智能玩出新高度
- Oracle序列设置:精准控制自增序号(oracle设置序列)
- 时间使用Redis控制Java数据过期时间(redisjava过期)
- 霍金再度警告:机器人百年内将控制人类
- Oracle控制文件:管控数据库数据安全的重要性(oracle控制文件作用)
- 语句使用Oracle中的IF语句控制流程(oracle 中的if)
- Oracle中的事务控制与锁定机制(oracle中事务和锁)
- OpenAI发布开源软件Roboschool,模拟机器人的控制训练
- CSS控制文本自动换行的问题
- JS控制CSS样式表
- asp.net中控制反转的理解(文字+代码)