【双足轮机器人】SK8O技术详解--(3)控制系统【翻译】

本文详细介绍了双足轮机器人SK8O的控制系统设计,包括稳定与运动控制、状态观测器以及跳跃动作的计算。通过线性化的3D轮式倒立摆模型设计状态反馈控制律,采用无迹卡尔曼滤波器进行状态估计,并通过非线性优化计算跳跃轨迹。在平衡性能测试中,展示了控制器对不同腿长的稳定响应,并评估了转向性能。同时,利用无迹卡尔曼滤波器进行状态观测,实现了良好的估计和控制效果。
摘要由CSDN通过智能技术生成

3 控制系统

在本章中,我将介绍用于稳定和运动控制的控制器,状态观测器以及跳跃轨迹的计算。 基于线性化的3D轮式倒立摆模型,我设计了状态反馈控制律。为了过滤和融合所有可用的测量,我使用了无迹卡尔曼滤波器。最后,我通过求解非线性优化问题来描述跳跃状态轨迹的计算。

3.1 稳定与运动控制

最初,打算基于线性化的平面模型为机器人的左侧和右侧设计两个独立的LQ状态控制器。不幸的是,由于这种系统的非最小相位动力学,该方法在偏航运动中变得不稳定,因为未考虑两侧的耦合。通过引入一个外部比例偏航阻尼器,我设法在仿真中克服了这个问题。 当在实物机器人上应用时,该解决方案被证明是无效的,因为在仿真中起作用的阻尼器增益太大,从而导致真实机器人的抽搐和摔倒。另一方面,具有较小增益值的阻尼器无法稳定偏航动力学。因此,我必须使用包含偏航耦合器的模型来进行控制器设计。我自然选择了完整的机器人3D模型。然而,本文旨在为机器人的第一个原型设计一种控制系统。因此,我打算尽可能简化数学模型和控制系统。我决定使用机器人的倒立摆简化来实现轮子稳定和身体电机的PD控制,与[3]中类似。

3.1.1 非线性模型的平衡

在进行控制器设计之前,我需要找到机器人的配置-平衡-使机器人稳定。 由于导出的运动方程是非线性且复杂的,用解析的方法计算它的解将是一项乏味甚至不可能完成的任务。因此,我采用了数值优化。

我将平衡时的角加速度和速度设置为零,因此根据(2.27):
在这里插入图片描述
这与(2.31)中的降阶模型一起给出了平衡条件:
在这里插入图片描述
可以进一步简化为:
在这里插入图片描述
如果 g g g项是由输入 τ i n τ_{in} τin补偿的,或者如果向量 − g + τ i n -g + τ _{in} g+τin G T G^T GT的零空间的元素,则满足条件。为了找到这样的平衡点,我制定了以下优化任务:
在这里插入图片描述
在条件(3.3)和闭环运动约束(2.15)的情况下,以指定的期望值 θ 1 θ_1 θ1来最小化输入力矩:
在这里插入图片描述
这个问题有多种解决方案。其中有一些会导致相交。为了避免这些配置,我限制了剩余角度的值,以使其位于可接受的范围内。我用Matlab中的约束非线性问题求解器找到了理想的解决方案,其结果如表3.1所示。

3.1.2 3D轮式倒立摆模型

大众熟知大多数的摆式系统模型,图3.1中所示的轮式摆也不例外。因此,我不必自己推导它,而使用文献[9]推导的那个模型。为了方便读者阅读,这里写出它的方程式。 状态空间模型如下:
在这里插入图片描述

表3.1:平衡角和输入值

在这里插入图片描述
在这里插入图片描述

图3.1:简化的3D轮式倒立摆

在这里插入图片描述

其中 I 0 x y I_{0xy} I0xy在垂直方向上轮子的转动惯量, m p m_p mp I p x I_{px} Ipx I p y I_{py} Ipy I p z I_{pz} Ipz是不带轮子的整个摆的质量和转动惯量,l是连杆的长度, w w w是轮子的距离, x x x是摆的前进距离, φ \varphi φ是俯仰角, ψ \psi ψ是偏航角,并且 u 0 L u_{0L} u0L u 0 R u_{0R} u0R分别是左右轮子的力矩。参数 m 0 m_0 m0 r 0 r_0 r0 I 0 I_0 I0 b b b g g g与平面机器人模型中的参数相同。

接下来,使用上一部分的平面模型和平衡姿态来计算摆的参数。得到的摆的质量是除轮子以外的所有机器人零件质量的总和:
在这里插入图片描述
连杆长度l作为平衡位置下轮子与身体之间的距离来计算:
在这里插入图片描述
我决定忽略连杆的转动惯量,因为它们的值比身体的值小两个数量级。因此,我设置摆的惯性与Gazebo仿真器中的身体参数相匹配。距离 w w w也是根据3D Gazebo模型选择的。

3.1.3 线性化和离散化

接下来,继续进行3D轮式倒立摆模型的线性化(3.6):
在这里插入图片描述
通过计算线性连续系统 A c A_c Ac B c B_c Bc的状态空间矩阵:
在这里插入图片描述
从线性连续系统中,我使用零阶保持器获得了状态空间矩阵 A d A_d A

  • 10
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值