[足式机器人]Part1 运动对称性Ch05——【Legged Robots that Balance 读书笔记】
本文仅供学习使用
本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)
提供,感谢他们为本文英文版翻译所做的贡献(但有些部分阅读起来仍有困难),若有改进之处欢迎共同讨论!
运动对称性Ch05
- 1. 对称结构
- 1.1 单腿机器人的对称运动
- 1.2 非对称步态
- 1.3 多足的对称
- 2. 动物运动的对称性
- 2.1 对称运动的生成
- 2.2 几何剪切对称
- 2.3 运动的反对称性
- 3. 对称性的意义
- 4. 总结
- 5. 附录:平面系统的运动方程
- 5.1 平面单足系统的运动方程
- 5.2 平面双足系统的运动方程
- 6. 附录:证明腿步运动的对称性
机器人的运动过程由是一系列的弹跳(bouncing)
运动和腾空(ballistic)
运动组成的,每一个运动周期,都对机体施加力载荷以实现控制。弹跳运动: 通过腿部挤压地面后在垂直地面的方向进行的往返运动。腾空运动: 机器人腿部末端离地,形成抛物线轨迹。
机架在运动过程中(中性点上)需要保持稳定的直立姿势,由此,身体的净加速度必须为零。这就要求腿施加在身体上的扭矩和水平力在每一步都必须整合为零,垂直力整合为机体自重与步幅持续时间。
当每个变量在支撑相中以奇偶函数对称性变化时,会出现一个特别简单的规划方案:
- 机体运动对称性:{x(t)=−x(−t)z(t)=−z(−t)ϕ(t)=−ϕ(−t)\left\{ \begin{matrix} x(t)=-x(-t) \\ z(t)=-z(-t) \\ \phi (t)=-\phi (-t) \\ \end{matrix} \right.⎩⎨⎧x(t)=−x(−t)z(t)=−z(−t)ϕ(t)=−ϕ(−t)
- 腿部运动对称性:{θ(t)=−θ(−t)r(t)=−r(−t)\left\{ \begin{matrix} \theta (t)=-\theta (-t) \\ r(t)=-r(-t) \\ \end{matrix} \right.{θ(t)=−θ(−t)r(t)=−r(−t)
xxx , zzz和ϕ\phiϕ是身体的向前位置、垂直位置和俯仰角度,θθθ和rrr是腿的角度和长度,均在矢状面内测量,在摆动相的中间时刻,令t=0t=0t=0,x(0)=0x(0)=0x(0)=0。
对称性还要求执行器以奇偶函数对称驱动:
- 执行器驱动对称性:{f(t)=f(−t)τ(t)=−τ(−t)\left\{ \begin{matrix} f(t)=f(-t) \\ \tau (t)=-\tau (-t) \\ \end{matrix} \right.{f(t)=f(−t)τ(t)=−τ(−t),其中τττ是施加在髋关节上的扭矩,fff是沿腿部轴线施加的力。正向力矩τ作用于髋关节,在∅的正方向使机架加速。f正方向的力作用于腿的轴线上,将机架推离地面。
1. 对称结构
假设运动仅限于平面,忽略腿的质量,系统在运动过程中没有损失。机架的位姿为:[x,z,ϕ][x,z,\phi ][x,z,ϕ],腿长及其相对于垂直面的角度为:[r,θ][r,\theta ][r,θ],每个腿执行机构沿着身体和地面之间落脚点施加力fff,通常认为腿是具有弹性的。
1.1 单腿机器人的对称运动
时间t=0t=0t=0时,单腿系统的足端位于质心的正下方,身体是直立的,身体的速度方向是水平的:θ=0θ=0θ=0,x=0x=0x=0,z˙=0\dot{z}=0z˙=0:x(t)x(t)x(t)和ϕ(t)\phi(t)ϕ(t)是时间的奇函数,z(t)z(t)z(t)是偶函数。因为机体沿着相对于原点的对称轨迹运动,足端位于支撑相原点——腿的运动相对于机体是对称的。
髋关节力矩唯一影响机体的俯仰角,因此奇函数ϕ(t)\phi(t)ϕ(t)意味τ(t)τ(t)τ(t)也是奇函数
用状态向量S表示机体的前进速度、垂直位置、垂直速度、俯仰角和俯仰率:S=[x˙,z,z˙,ϕ,ϕ˙]S=[\dot{x},z,\dot{z},\phi ,\dot{\phi }]S=[x˙,z,z˙,ϕ,ϕ˙]
稳态(steady state)
:每步周期中状态变量不随周期的延续而发生变化(可能解释的不是很好),S(t)=S(t+T)S(t)=S(t+T)S(t)=S(t+T),其中TTT是步态周期
为了使每一步的前进速度保持不变,作用在身体上的水平力fxf_xfx每一步上积分为零:∫stridefxdt=0\int\limits_{stride}{{{f}_{x}}dt}=0stride∫fxdt=0
假设在腾空期间fx=0{{f}_{x}}=0fx=0,前行速度不变,则根据扭矩平衡有:fx=fsinθ−τrcosθ{{f}_{x}}=f\sin \theta -\frac{\tau }{r}\cos \thetafx=fsinθ−rτcosθ,根据函数的奇偶性(fff、rrr为偶函数,τττ、θ\thetaθ 为奇函数),可得:x˙(tl0)−x˙(ttd)=∫ttdtl0fxdt=0\dot{x}({{t}_{l0}})-\dot{x}({{t}_{td}})=\int\limits_{{{t}_{td}}}^{{{t}_{l0}}}{{{f}_{x}}dt}=0x˙(tl0)−x˙(ttd)=ttd∫tl0fxdt=0
对称运动不会对身体产生净水平力,每步之间以稳态速度前行:z(tl0,i)=z(ttd,i),z˙(tl0,i)=−z˙(ttd,i)z({{t}_{l0,i}})=z({{t}_{td,i}}),\dot{z}({{t}_{l0,i}})=-\dot{z}({{t}_{td,i}})z(tl0,i)=z(ttd,i),z˙(tl0,i)=−z˙(ttd,i),且对于下一步存在:z(ttd,i+1)=z(tl0,i),z˙(ttd,i+1)=−z˙(tl0,i)z({{t}_{td,i+1}})=z({{t}_{l0,i}}),\dot{z}({{t}_{td,i+1}})=-\dot{z}({{t}_{l0,i}})z(ttd,i+1)=z(tl0,i),z˙(ttd,i+1)=−z˙(tl0,i),因此:
- z(ttd,i),=z(ttd,i+1)z({{t}_{td,i}}),=z({{t}_{td,i+1}})z(ttd,i),=z(ttd,i+1)或者z(ttd),=z(ttd+T)z({{t}_{td}}),=z({{t}_{td+T}})z(ttd),=z(ttd+T)——Z轴的稳态条件
- z˙(ttd),=z˙(ttd+T)\dot{z}({{t}_{td}}),=\dot{z}({{t}_{td+T}})z˙(ttd),=z˙(ttd+T)——Z轴速度分量的稳态条件
腾空过程中作用在机体上的力矩为零,而在弹跳过程中机体上的力矩为奇函数,则机体俯仰率在支撑相的净加速度为零:ϕ˙(tl0)=ϕ˙(ttd)\dot{\phi }({{t}_{l0}})=\dot{\phi }({{t}_{td}})ϕ˙(tl0)=ϕ˙(ttd),假设支撑相保持对称性,使ϕ(tl0)=−ϕ(ttd)\phi ({{t}_{l0}})=-\phi ({{t}_{td}})ϕ(tl0)=−ϕ(ttd),存在:z˙(t)−g=ϕ(t)ϕ˙(t)\frac{\dot{z}(t)}{-g}=\frac{\phi (t)}{\dot{\phi }(t)}−gz˙(t)=ϕ˙(t)ϕ(t),该约束规定了稳态运行所需的俯仰角、俯仰速率和垂直速度之间的关系
1.2 非对称步态
若每一步机体的轨迹不对称,系统会进行加速,因为落足点偏离了中性点。单个支撑相偏离对称,但两个连续支撑相以互补的方式各自偏离对称
在每偶数跳的期望位置上添加偏移∆x,并在每一个跳跃上减去∆x。对于较小的∆x值,系统从一侧跳到另一侧,没有净向前加速度。系统保持了平衡,这说明脚的偏移量足够小以至于在下一步之前不会完全翻倒。
1.3 多足的对称
对于双足机器人而言,上述步态在机身俯仰、前行速度的变化以及两条腿提供的支撑相重叠程度方面存在差异。
{θj(t)=−θk(−t)rj(t)=rk(−t)τj(t)=−τk(−t)fj(t)=fk(−t)\left\{ \begin{matrix} {{\theta }_{j}}(t)=-{{\theta }_{k}}(-t) \\ {{r}_{j}}(t)={{r}_{k}}(-t) \\ {{\tau }_{j}}(t)=-{{\tau }_{k}}(-t) \\ {{f}_{j}}(t)={{f}_{k}}(-t) \\ \end{matrix} \right.⎩⎨⎧θj(t)=−θk(−t)rj(t)=rk(−t)τj(t)=−τk(−t)fj(t)=fk(−t)
对于双足系统,j=1,k=2。对于四足系统,配对是可能的:j=[1,4]和k=[2,3]或j=[1,4]和k=[3,2],这取决于步态方式,其中1是左前腿,2是左后腿,3是右后腿,4是右前腿。
这种运动对称性适用于多腿协同运动,多腿交替运动(交替运动又分重叠支撑和单独支撑)
两条腿的系统(假设两条腿的间隔很长,否则上图还有其他情况),对称运动的条件和一条腿的基本一样,但不再需要腿的落足点位于质心正下方;两条腿的反对称运动作为一对操作,对称的身体产生对称运动。当它使用成对使用时,与单腿系统的状态相似。
支撑中心(the center of support)
位于质量中心下方,双腿作往复运动时,不需要将单个足端放在中性点上,就可以达到稳态行为。因为身体很长而且质量不均匀时,单条腿很可能会因为腿长不够而触及不到质心正下方。这种情况出现在四足动物跳跃和疾驰步态上。
2. 动物运动的对称性
对称性在奔跑动物的行为中可能起到什么作用?足式机器人的对称性能帮助我们描述和理解有腿动物的跑步行为吗?
(Hildebrand,1965-1977)为各种四足动物设计了一个简单而优雅的对称步行和跑步步态的特征,只使用了两个参数:前后腿之间的相位角和腿的占空比。通过将对称行为观测映射到初相/占空比空间中的坐标点,
而在实验过程中,考虑了腿部相对于身体的轨迹,以及机体身体在空间中的轨迹:
每只脚提供的支撑点都是通过视觉来估计的。用绘制足端到髋部的直线量出腿长r和腿的旋转角度θ。猫的重心被取为肩部与髋部的中点。身体的俯仰角度是连接肩部和臀部的直线与水平线之间的角度。这些测量提供了身体运动的三个参数[x,z,ϕ][x,z,\phi ][x,z,ϕ],即身体的前向位置、垂直位置和俯仰角度;以及每条腿运动的两个参数,即腿的长度和相对于垂直方向的角度[r,θ][r,\theta ][r,θ]。除了有关落脚时间的信息外,这些测量还提供了有关足端相对于身体在地面上的位置以及身体本身如何移动的信息。
- 猫:只在脚接触到支撑面时才显示数据。
- 人:
部分数据显示落脚点的位置偏向动物的后方,对于每条腿来说:∣θ(tl0)∣>∣θ(ttd)∣|\theta ({{t}_{l0}})|>|\theta ({{t}_{td}})|∣θ(tl0)∣>∣θ(ttd)∣——后一条腿与地面接触的时间长于前一条腿接触地面的时间
还有一种解释可能是足端的接触力方向与腿的轴向并不重合(个人认为这是十分正确的),如果不知道每只脚在地面上施加的实际力,就很难对观察到的脚位不对称的含义得出明确的结论。
这些运行的对称性可以图形化地显示出来
特别有趣的是正向和反向运行序列的足迹精确重叠,这种重叠是由对称方程预测的。
2.1 对称运动的生成
控制系统必须采取什么行动才能产生对称行为?这个问题还没有一般的解决办法。困难在于落脚点的位置会影响机体的运动轨迹。如果我们有一个表示身体在支撑期间的轨迹的表达式(x˙(ttd),z˙(ttd),θ˙(ttd))(\dot{x}({{t}_{td}}),\dot{z}({{t}_{td}}),\dot{\theta }({{t}_{td}}))(x˙(ttd),z˙(ttd),θ˙(ttd)),就可进行求解——但是十分困难。
尽管缺乏一个通用的解决方案,但是只是用一条腿支撑的单腿步态近似解释存在的——在中速、低速下具有良好的对称性。另一种预测方法是使用运动方程的列表解。
2.2 几何剪切对称
几何剪切对称的一个推导结论是腿刚要支撑地面和刚要抬起的角度是相等的。而这种对称性能否用来制定一个正确的运动算法,不去计算前向速度和支撑相的时长——可以有如下条件:θ(ttd,i+1)=−θ(tlo,i)\theta ({{t}_{td,i+1}})=-\theta ({{t}_{lo,i}})θ(ttd,i+1)=−θ(tlo,i),其中:θ(tlo,i)\theta ({{t}_{lo,i}})θ(tlo,i)-腿第i步抬起的角度,θ(ttd,i+1)\theta ({{t}_{td,i+1}})θ(ttd,i+1)-腿第i+1步支撑的角度——前提是每次只有一条腿支撑
当向前的速度x˙{\dot{x}}x˙和支持相时长Ts{{T}_{s}}Ts恒定时,那么在一个支撑相内,腿朝向髋部移动的距离为x˙Ts\dot{x}{{T}_{s}}x˙Ts,对于给定腿的落地角(landing angle)
θ(ttd,i)\theta ({{t}_{td,i}})θ(ttd,i),存在离地角(lift-off angle)
:θ(tlo,i)=arcsin(x˙Ts+rsinθ(ttd,i)r)\theta ({{t}_{lo,i}})=\arcsin (\frac{\dot{x}{{T}_{s}}+r\sin \theta ({{t}_{td,i}})}{r})θ(tlo,i)=arcsin(rx˙Ts+rsinθ(ttd,i)),最终得到:
θ(ttd,i+2)=arcsin(x˙Ts+rsin(−arcsin(x˙Ts+rsinθ(ttd,i)r))r)=θ(ttd,i)\theta ({{t}_{td,i+2}})=\arcsin (\frac{\dot{x}{{T}_{s}}+r\sin (-\arcsin (\frac{\dot{x}{{T}_{s}}+r\sin \theta ({{t}_{td,i}})}{r}))}{r})=\theta ({{t}_{td,i}})θ(ttd,i+2)=arcsin(rx˙Ts+rsin(−arcsin(rx˙Ts+rsinθ(ttd,i))))=θ(ttd,i)
研究剪切算法的一种方法提供了一种估计CG-轨迹的替代方法。腿的离地角度用于指示向前速度和支撑相时长。身体相对于地面向前移动的速度越快,支撑相过程中脚向后移动的距离越远。系统在支撑相上花费更多时间,脚也会进一步向后移动。因此,起跳时腿的角度由平均前向速度和支撑相时长的乘积决定——避免了准确估计CG-轨迹的工作和明确测量身体前向速度和支撑相时长的需要。
剪切算法有几个难点:
- 触地时的腿部角度也受起跳时腿部角度的影响,平均速度和地面时间的乘积只与腿的角度变化有关,因此在着陆时腿的起始角度决定了它在腾空时的角度——计算下一只脚的位置时同时考虑着触地和离地角度:θ(ttd,i+1)=θ(ttd,i)−θ(tlo,i)2\theta ({{t}_{td,i+1}})=\frac{\theta ({{t}_{td,i}})-\theta ({{t}_{lo,i}})}{2}θ(ttd,i+1)=2θ(ttd,i)−θ(tlo,i)
- 可能对前向速度的突然变化没有及时的反应。决定下一个腿的角度的前进速度是从整个前一个支撑相间隔得出的一个平均值。这种间接测量所固有的延迟可能导致对干扰的反应有迟缓的现象。
2.3 运动的反对称性
不对称的原因:
- 腿不是完美的
- 由于腿部的质量造成的能量损失——腿在支撑相变长,在摆动相变短,以保持稳定的跳跃高度。这只能通过执行器传递不对称的力和扭矩来实现。
- 机械系统的不对称
控制系统故意倾斜的运动以改变运行速度。在这种情况下,运动的不对称性提供了对机体的加速——无法看到对称运动——一个更好的观点是用对称部分和非对称部分之和来考虑运动。在每一步中,运动的对称部分保持稳定状态。偏离对称的部分可补偿损失并提供相应的加速度。
对称性假设每个身体变量、每个腿部变量和每个执行器变量都具有奇偶对称性。它们相互作用的最终结果是限制整个步的力,从而保持身体的前进速度、高度和俯仰角。有人可能会想象一种不太完全的对称,它不要求基本变量单独对称,而只要求作用在物体上的净力和力矩对称:
{fx(t)=−fx(−t)fy(t)=fy(−t)τϕ(t)=−τϕ(−t)\left\{ \begin{matrix} {{f}_{x}}(t)=-{{f}_{x}}(-t) \\ {{f}_{y}}(t)={{f}_{y}}(-t) \\ {{\tau }_{\phi }}(t)=-{{\tau }_{\phi }}(-t) \\ \end{matrix} \right.⎩⎨⎧fx(t)=−fx(−t)fy(t)=fy(−t)τϕ(t)=−τϕ(−t)
另一种说法是,身体对称运动时,而腿却不对称运动的。而如果一次只使用一条腿来支撑的情况就不可能是这样了(作者已经证明)
3. 对称性的意义
- 辅助控制腿部运动
- 有助于描述和理解动物的行为
- 对称性提供了零净正向加速度的充分条件,而不是必要条件。
- 将控制系统和被控制的机械系统分割开。
4. 总结
机体的对称运动和腿相对于身体的对称运动为稳态运动提供了运动方式——允许控制系统操纵运动的对称性和非对称性,而不是具体的运动。
物体对称运动的条件可以简单地表述为:在支撑期间的一个时间点上,支撑中心必须位于质心之下,物体的俯仰角度必须为零,物体的垂直速度必须为零,即θj(0)+θk(0)=0θ_j (0)+θ_k (0)=0θj(0)+θk(0)=0,ϕ(0)=0\phi(0)=0ϕ(0)=0,z˙=0\dot z=0z˙=0。当这些条件满足时,支撑相遵循对称轨迹。
对称运行运动具有很大的普遍性。
5. 附录:平面系统的运动方程
5.1 平面单足系统的运动方程
无质量腿和髋部位于重心的平面单腿模型的运动方程为:
{mx¨=fsinθ−τrcosθmz¨=fcosθ+τrsinθ−mgJϕ¨=τ\left\{ \begin{matrix} m\ddot{x}=f\sin \theta -\frac{\tau }{r}\cos \theta \\ m\ddot{z}=f\cos \theta +\frac{\tau }{r}\sin \theta -mg \\ J\ddot{\phi }=\tau \\ \end{matrix} \right.⎩⎨⎧mx¨=fsinθ−rτcosθmz¨=fcosθ+rτsinθ−mgJϕ¨=τ
其中:
x,z,ϕx,z,\phix,z,ϕ:身体的水平、垂直和角度位置;
r,θr,\thetar,θ:腿的长度和方向;
τ\tauτ:髋关节力矩,正向τ\tauτ在ϕ\phiϕ正向上对身体加速;
fff:腿的轴向力,正向fff使身体远离地面加速
mmm:身体的质量
JJJ:身体的转动惯量
ggg:重力加速度
5.2 平面双足系统的运动方程
具有两条无质量腿和髋部距离质心的长度为ddd的平面模型的运动方程为:
{mx¨=f1sinθ1+f2sinθ2−τ1r1cosθ1−τ2r2cosθ2mz¨=f1cosθ1+f2cosθ2+τ1r1sinθ1+τ2r2sinθ2−mgJϕ¨=f1dcos(θ1−ϕ)−τ1dr1sin(θ1−ϕ)+τ1−f2dcos(θ2−ϕ)+τ2dr2sin(ϕ−θ2)+τ2\left\{ \begin{matrix} m\ddot{x}={{f}_{1}}\sin {{\theta }_{1}}+{{f}_{2}}\sin {{\theta }_{2}}-\frac{{{\tau }_{1}}}{{{r}_{1}}}\cos {{\theta }_{1}}-\frac{{{\tau }_{2}}}{{{r}_{2}}}\cos {{\theta }_{2}} \\ m\ddot{z}={{f}_{1}}\cos {{\theta }_{1}}+{{f}_{2}}\cos {{\theta }_{2}}+\frac{{{\tau }_{1}}}{{{r}_{1}}}\sin {{\theta }_{1}}+\frac{{{\tau }_{2}}}{{{r}_{2}}}\sin {{\theta }_{2}}-mg \\ J\ddot{\phi }={{f}_{1}}d\cos ({{\theta }_{1}}-\phi )-\frac{{{\tau }_{1}}d}{{{r}_{1}}}\sin ({{\theta }_{1}}-\phi )+{{\tau }_{1}}-{{f}_{2}}d\cos ({{\theta }_{2}}-\phi )+\frac{{{\tau }_{2}}d}{{{r}_{2}}}\sin (\phi -{{\theta }_{2}})+{{\tau }_{2}} \\ \end{matrix} \right.⎩⎨⎧mx¨=f1sinθ1+f2sinθ2−r1τ1cosθ1−r2τ2cosθ2mz¨=f1cosθ1+f2cosθ2+r1τ1sinθ1+r2τ2sinθ2−mgJϕ¨=f1dcos(θ1−ϕ)−r1τ1dsin(θ1−ϕ)+τ1−f2dcos(θ2−ϕ)+r2τ2dsin(ϕ−θ2)+τ2
6. 附录:证明腿步运动的对称性
对称的身体运动需要对称的腿运动。当[x,z,ϕ][x,z,\phi ][x,z,ϕ]为奇函数,[τ,f][\tau ,f][τ,f]为偶数时,身体和腿的运动是对称的。
腿相对于垂直面的角度为:θ=eθ+oθ\theta {{=}^{e}}\theta {{+}^{o}}\thetaθ=eθ+oθ,其中,eθ^{e}\thetaeθ表示偶部,oθ^{o}\thetaoθ表示奇部,用rrr来表示1ez+oz\frac{1}{^{e}z{{+}^{o}}z}ez+oz1,重写上述运动方程:
{mx¨=(ef+of)sin(eθ+oθ)−τ(ez+oz)cos(eθ+oθ)mz¨=(ef+of)cos(eθ+oθ)+τ(ez+oz)sin(eθ+oθ)Jϕ¨=eτ+oτ\left\{ \begin{matrix} m\ddot{x}={{(}^{e}}f{{+}^{o}}f)\sin {{(}^{e}}\theta {{+}^{o}}\theta )-\tau {{(}^{e}}z{{+}^{o}}z)\cos {{(}^{e}}\theta {{+}^{o}}\theta ) \\ m\ddot{z}={{(}^{e}}f{{+}^{o}}f)\cos {{(}^{e}}\theta {{+}^{o}}\theta )+\tau {{(}^{e}}z{{+}^{o}}z)\sin {{(}^{e}}\theta {{+}^{o}}\theta ) \\ J\ddot{\phi }{{=}^{e}}\tau {{+}^{o}}\tau \\ \end{matrix} \right.⎩⎨⎧mx¨=(ef+of)sin(eθ+oθ)−τ(ez+oz)cos(eθ+oθ)mz¨=(ef+of)cos(eθ+oθ)+τ(ez+oz)sin(eθ+oθ)Jϕ¨=eτ+oτ
根据对称性条件,令x向方程的偶部为0,y向方程的奇部为0:
{0=efsineθcosoθ+ofcoseθsinoθ+τezsineθsinoθ−τozcoseθcosoθ0=−efsineθsinoθ+ofcoseθcosoθ+τezsineθcosoθ+τozcoseθsinoθ\left\{ \begin{matrix} 0{{=}^{e}}f{{\sin }^{e}}\theta {{\cos }^{o}}\theta {{+}^{o}}f{{\cos }^{e}}\theta {{\sin }^{o}}\theta +{{\tau }^{e}}z{{\sin }^{e}}\theta {{\sin }^{o}}\theta -{{\tau }^{o}}z{{\cos }^{e}}\theta {{\cos }^{o}}\theta \\ 0={{-}^{e}}f{{\sin }^{e}}\theta {{\sin }^{o}}\theta {{+}^{o}}f{{\cos }^{e}}\theta {{\cos }^{o}}\theta +{{\tau }^{e}}z{{\sin }^{e}}\theta {{\cos }^{o}}\theta +{{\tau }^{o}}z{{\cos }^{e}}\theta {{\sin }^{o}}\theta \\ \end{matrix} \right.{0=efsineθcosoθ+ofcoseθsinoθ+τezsineθsinoθ−τozcoseθcosoθ0=−efsineθsinoθ+ofcoseθcosoθ+τezsineθcosoθ+τozcoseθsinoθ
且知:taneθ=τozef,taneθ=ofτez{{\tan }^{e}}\theta =\frac{{{\tau }^{o}}z}{^{e}f},{{\tan }^{e}}\theta =\frac{^{o}f}{{{\tau }^{e}}z}taneθ=efτoz,taneθ=τezof
足端相对于身体的轨迹要求:xf(t)−xf(0)=−xf(−t)+xf(0),zf(t)=zf(−t){{x}_{f}}(t)-{{x}_{f}}(0)=-{{x}_{f}}(-t)+{{x}_{f}}(0),{{z}_{f}}(t)={{z}_{f}}(-t)xf(t)−xf(0)=−xf(−t)+xf(0),zf(t)=zf(−t),若xf(0)=0{{x}_{f}}(0)=0xf(0)=0,则腿的运动具有对称性。当t=0t=0t=0时,奇函数的值为0,得出eθ(t=0)=0^{e}\theta (t=0)=0eθ(t=0)=0,则xf(0)=0{{x}_{f}}(0)=0xf(0)=0,因此:eθ=or=of=0^{e}\theta {{=}^{o}}r{{=}^{o}}f=0eθ=or=of=0,则可知θ\thetaθ为奇函数,r,fr,fr,f为偶函数。简化证明如下:
已知腿部相对于机架的轨迹为:{xf(t)−xf(0)=−xf(−t)+xf(0)zf(t)=zf(−t)\left\{ \begin{matrix} {{x}_{f}}(t)-{{x}_{f}}(0)=-{{x}_{f}}(-t)+{{x}_{f}}(0) \\ {{z}_{f}}(t)={{z}_{f}}(-t) \\ \end{matrix} \right.{xf(t)−xf(0)=−xf(−t)+xf(0)zf(t)=zf(−t),若xf(0)=0{{x}_{f}}(0)=0xf(0)=0,则腿的运动具有对称性。
令fx{{f}_{x}}fx、fz{{f}_{z}}fz为地面与足端的水平力与竖直力,则髋部的扭矩为:τ=−fxzf+fzxf\tau =-{{f}_{x}}{{z}_{f}}+{{f}_{z}}{{x}_{f}}τ=−fxzf+fzxf
从运动方程可知:τ,fx\tau ,{{f}_{x}}τ,fx为奇函数,fz{{f}_{z}}fz为偶函数,因此腿部转角:θ=arctan(xf/zf)\theta =\arctan ({{x}_{f}}/{{z}_{f}})θ=arctan(xf/zf)为奇函数,并且腿部长度:r=xf2+zf2r=\sqrt{{{x}_{f}}^{2}+{{z}_{f}}^{2}}r=xf2+zf2为偶函数,轴向力为:f=(fxxf+fzzf)/rf=({{f}_{x}}{{x}_{f}}+{{f}_{z}}{{z}_{f}})/rf=(fxxf+fzzf)/r
[足式机器人]Part1 运动对称性Ch05——【Legged Robots that Balance 读书笔记】相关推荐
- [足式机器人]Part1 双足和四足的运动Ch04——【Legged Robots that Balance 读书笔记】
本文仅供学习使用 本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)提供,感谢他们为本文英文版翻译所做的贡献(但有些 ...
- [足式机器人]Part1 序言+简介Ch01——【Legged Robots that Balance 读书笔记】
本文仅供学习使用 本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)提供,感谢他们为本文英文版翻译所做的贡献(但有些 ...
- [足式机器人]Part1 关于动物和运动体的研究Ch08——【Legged Robots that Balance 读书笔记】
本文仅供学习使用 本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)提供,感谢他们为本文英文版翻译所做的贡献(但有些 ...
- [足式机器人]Part1 三维空间中的跳行Ch03——【Legged Robots that Balance 读书笔记】
本文仅供学习使用 本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)提供,感谢他们为本文英文版翻译所做的贡献(但有些 ...
- [足式机器人]Part1 运动控制的替代方法Ch06——【Legged Robots that Balance 读书笔记】
本文仅供学习使用 本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)提供,感谢他们为本文英文版翻译所做的贡献(但有些 ...
- 干货 | 足式机器人运动控制发展方向——轨迹优化
" 运动控制技术的进步使得足式机器人的运动能力更强,而近来轨迹优化作为主流学术研究方向,能够为足式机器人运动控制的发展提供可能的指引.本期技术干货,我们邀请到了小米工程师徐喆,向我们介绍足式 ...
- 一些关于国内腿足式机器人公司研究所的信息分享
8月PhD假期, 我利用将近3周的时间跑了北京.常州.深圳.广州和杭州,参观拜访了如下腿足式机器人企业&研究所: 北京钢铁侠(ARTROBOT) 北京灵铱机器人事业部 北京航天五院502所 浙 ...
- 干货丨浅谈足式机器人的运动控制
" 本期技术干货,我们邀请到了小米机器人实验室工程师--游洋威,来和大家从经典的三分控制法.零力矩点控制到目前主流的模型预观控制等方面,介绍足式机器人的运动控制. " 一.前言 不 ...
- 【嵌入式--伺服电机】足式机器人 外转子无刷电机研究
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录 前言 一.足式机器人电机背景预研 1.工业传统的电机预研 2.力控电机预研 ...
最新文章
- C/C++利用三元组实现稀疏矩阵运算
- QQ交流群,欢迎有兴趣的同学加入。
- squid之反向代理服务器
- Hibernate中使用未映射为主键的“id”字段进行查询的场景分析
- c语言打开外部doc文件,C语言-内部函和外部函数.doc
- Docker最全教程之Python爬网实战(二十二)
- 【WebRTC---入门篇】(一)WebRTC整体架构
- php基础知识填空题,比较基础的php面试题及答案填空题
- linux shell学习(一)第一个hello world
- layui 图片展示添加一个x_Layx 演示示例
- 苹果傲慢,售后服务中外有别
- 【裂缝识别】基于matlab GUI无人机裂缝图像处理系统(带面板)【含Matlab源码 1727期】
- 使用组策略配置QoS
- 高等数学,线性代数 课后题解答
- 发力“创新宇宙”,酒店集团如何破局商业革新?
- 又拍云存储:CDN架构探索
- mmdetection--自定义数据集
- C++中的peek()函数及其用法
- 如何UNI-APP中使用iconfont彩色图标
- ⑪(面试篇 2/3)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)
热门文章
- Android 基于Socket的聊天室
- 个人支付宝h5支付源码,即时到个人账户
- linux安装ati工具,Ubuntu 12.10 安装ATI显卡驱动安装
- Chrome浏览器 v71.0.3578.99
- 入职5G网络优化工程师,税后9k,周末双休,你也可以!—分享优橙小故事
- Containerd客户端工具(CLI)介绍ctr,nerdctl,crictl,podman以及docker
- 用jQuery添加dragstart,dragover和drop事件,实现拖拽效果
- 最炫丽的网页平面UI课程就在广州传智播客
- 2020年中国第七次人口普查各省总人口数据可视图(1)
- 常用docker镜像启动了解