本文仅供学习使用
本文结合个人理解体会作者的思路,也从个人科研角度出发,部分翻译参考由:QQ群(2群legged robot that balance)
提供,感谢他们为本文英文版翻译所做的贡献(但有些部分阅读起来仍有困难),若有改进之处欢迎共同讨论!
运动对称性Ch05
机器人的运动过程由是一系列的弹跳(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)
x x x , z z z和 ϕ \phi ϕ是身体的向前位置、垂直位置和俯仰角度, θ θ θ和 r r r是腿的角度和长度,均在矢状面内测量,在摆动相的中间时刻,令 t = 0 t=0 t=0, x ( 0 ) = 0 x(0)=0 x(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),其中
τ
τ
τ是施加在髋关节上的扭矩,
f
f
f是沿腿部轴线施加的力。正向力矩τ作用于髋关节,在∅的正方向使机架加速。f正方向的力作用于腿的轴线上,将机架推离地面。
1. 对称结构
假设运动仅限于平面,忽略腿的质量,系统在运动过程中没有损失。机架的位姿为: [ x , z , ϕ ] [x,z,\phi ] [x,z,ϕ],腿长及其相对于垂直面的角度为: [ r , θ ] [r,\theta ] [r,θ],每个腿执行机构沿着身体和地面之间落脚点施加力 f f f,通常认为腿是具有弹性的。
1.1 单腿机器人的对称运动
时间
t
=
0
t=0
t=0时,单腿系统的足端位于质心的正下方,身体是直立的,身体的速度方向是水平的:
θ
=
0
θ=0
θ=0,
x
=
0
x=0
x=0,
z
˙
=
0
\dot{z}=0
z˙=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),其中
T
T
T是步态周期
为了使每一步的前进速度保持不变,作用在身体上的水平力 f x f_x fx每一步上积分为零: ∫ s t r i d e f x d t = 0 \int\limits_{stride}{{{f}_{x}}dt}=0 stride∫fxdt=0
假设在腾空期间 f x = 0 {{f}_{x}}=0 fx=0,前行速度不变,则根据扭矩平衡有: f x = f sin θ − τ r cos θ {{f}_{x}}=f\sin \theta -\frac{\tau }{r}\cos \theta fx=fsinθ−rτcosθ,根据函数的奇偶性( f f f、 r r r为偶函数, τ τ τ、 θ \theta θ 为奇函数),可得: x ˙ ( t l 0 ) − x ˙ ( t t d ) = ∫ t t d t l 0 f x d t = 0 \dot{x}({{t}_{l0}})-\dot{x}({{t}_{td}})=\int\limits_{{{t}_{td}}}^{{{t}_{l0}}}{{{f}_{x}}dt}=0 x˙(tl0)−x˙(ttd)=ttd∫tl0fxdt=0
对称运动不会对身体产生净水平力,每步之间以稳态速度前行: z ( t l 0 , i ) = z ( t t d , i ) , z ˙ ( t l 0 , i ) = − z ˙ ( t t d , 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 ( t t d , i + 1 ) = z ( t l 0 , i ) , z ˙ ( t t d , i + 1 ) = − z ˙ ( t l 0 , 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 ( t t d , i ) , = z ( t t d , i + 1 ) z({{t}_{td,i}}),=z({{t}_{td,i+1}}) z(ttd,i),=z(ttd,i+1)或者 z ( t t d ) , = z ( t t d + T ) z({{t}_{td}}),=z({{t}_{td+T}}) z(ttd),=z(ttd+T)——Z轴的稳态条件
- z ˙ ( t t d ) , = z ˙ ( t t d + T ) \dot{z}({{t}_{td}}),=\dot{z}({{t}_{td+T}}) z˙(ttd),=z˙(ttd+T)——Z轴速度分量的稳态条件
腾空过程中作用在机体上的力矩为零,而在弹跳过程中机体上的力矩为奇函数,则机体俯仰率在支撑相的净加速度为零: ϕ ˙ ( t l 0 ) = ϕ ˙ ( t t d ) \dot{\phi }({{t}_{l0}})=\dot{\phi }({{t}_{td}}) ϕ˙(tl0)=ϕ˙(ttd),假设支撑相保持对称性,使 ϕ ( t l 0 ) = − ϕ ( t t d ) \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
)
r
j
(
t
)
=
r
k
(
−
t
)
τ
j
(
t
)
=
−
τ
k
(
−
t
)
f
j
(
t
)
=
f
k
(
−
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,θ]。除了有关落脚时间的信息外,这些测量还提供了有关足端相对于身体在地面上的位置以及身体本身如何移动的信息。
- 猫:只在脚接触到支撑面时才显示数据。
- 人:
部分数据显示落脚点的位置偏向动物的后方,对于每条腿来说: ∣ θ ( t l 0 ) ∣ > ∣ θ ( t t d ) ∣ |\theta ({{t}_{l0}})|>|\theta ({{t}_{td}})| ∣θ(tl0)∣>∣θ(ttd)∣——后一条腿与地面接触的时间长于前一条腿接触地面的时间
还有一种解释可能是足端的接触力方向与腿的轴向并不重合(个人认为这是十分正确的),如果不知道每只脚在地面上施加的实际力,就很难对观察到的脚位不对称的含义得出明确的结论。
这些运行的对称性可以图形化地显示出来
特别有趣的是正向和反向运行序列的足迹精确重叠,这种重叠是由对称方程预测的。
2.1 对称运动的生成
控制系统必须采取什么行动才能产生对称行为?这个问题还没有一般的解决办法。困难在于落脚点的位置会影响机体的运动轨迹。如果我们有一个表示身体在支撑期间的轨迹的表达式 ( x ˙ ( t t d ) , z ˙ ( t t d ) , θ ˙ ( t t d ) ) (\dot{x}({{t}_{td}}),\dot{z}({{t}_{td}}),\dot{\theta }({{t}_{td}})) (x˙(ttd),z˙(ttd),θ˙(ttd)),就可进行求解——但是十分困难。
尽管缺乏一个通用的解决方案,但是只是用一条腿支撑的单腿步态近似解释存在的——在中速、低速下具有良好的对称性。另一种预测方法是使用运动方程的列表解。
2.2 几何剪切对称
几何剪切对称的一个推导结论是腿刚要支撑地面和刚要抬起的角度是相等的。而这种对称性能否用来制定一个正确的运动算法,不去计算前向速度和支撑相的时长——可以有如下条件: θ ( t t d , i + 1 ) = − θ ( t l o , i ) \theta ({{t}_{td,i+1}})=-\theta ({{t}_{lo,i}}) θ(ttd,i+1)=−θ(tlo,i),其中: θ ( t l o , i ) \theta ({{t}_{lo,i}}) θ(tlo,i)-腿第i步抬起的角度, θ ( t t d , i + 1 ) \theta ({{t}_{td,i+1}}) θ(ttd,i+1)-腿第i+1步支撑的角度——前提是每次只有一条腿支撑
当向前的速度
x
˙
{\dot{x}}
x˙和支持相时长
T
s
{{T}_{s}}
Ts恒定时,那么在一个支撑相内,腿朝向髋部移动的距离为
x
˙
T
s
\dot{x}{{T}_{s}}
x˙Ts,对于给定腿的落地角(landing angle)
θ
(
t
t
d
,
i
)
\theta ({{t}_{td,i}})
θ(ttd,i),存在离地角(lift-off angle)
:
θ
(
t
l
o
,
i
)
=
arcsin
(
x
˙
T
s
+
r
sin
θ
(
t
t
d
,
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)),最终得到:
θ
(
t
t
d
,
i
+
2
)
=
arcsin
(
x
˙
T
s
+
r
sin
(
−
arcsin
(
x
˙
T
s
+
r
sin
θ
(
t
t
d
,
i
)
r
)
)
r
)
=
θ
(
t
t
d
,
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-轨迹的工作和明确测量身体前向速度和支撑相时长的需要。
剪切算法有几个难点:
- 触地时的腿部角度也受起跳时腿部角度的影响,平均速度和地面时间的乘积只与腿的角度变化有关,因此在着陆时腿的起始角度决定了它在腾空时的角度——计算下一只脚的位置时同时考虑着触地和离地角度: θ ( t t d , i + 1 ) = θ ( t t d , i ) − θ ( t l o , 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 运动的反对称性
不对称的原因:
- 腿不是完美的
- 由于腿部的质量造成的能量损失——腿在支撑相变长,在摆动相变短,以保持稳定的跳跃高度。这只能通过执行器传递不对称的力和扭矩来实现。
- 机械系统的不对称
控制系统故意倾斜的运动以改变运行速度。在这种情况下,运动的不对称性提供了对机体的加速——无法看到对称运动——一个更好的观点是用对称部分和非对称部分之和来考虑运动。在每一步中,运动的对称部分保持稳定状态。偏离对称的部分可补偿损失并提供相应的加速度。
对称性假设每个身体变量、每个腿部变量和每个执行器变量都具有奇偶对称性。它们相互作用的最终结果是限制整个步的力,从而保持身体的前进速度、高度和俯仰角。有人可能会想象一种不太完全的对称,它不要求基本变量单独对称,而只要求作用在物体上的净力和力矩对称:
{ f x ( t ) = − f x ( − t ) f y ( t ) = f y ( − 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=0 z˙=0。当这些条件满足时,支撑相遵循对称轨迹。
-
对称运行运动具有很大的普遍性。
5. 附录:平面系统的运动方程
5.1 平面单足系统的运动方程
无质量腿和髋部位于重心的平面单腿模型的运动方程为:
{ m x ¨ = f sin θ − τ r cos θ m z ¨ = f cos θ + τ r sin θ − m g J ϕ ¨ = τ \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,\phi
x,z,ϕ:身体的水平、垂直和角度位置;
r
,
θ
r,\theta
r,θ:腿的长度和方向;
τ
\tau
τ:髋关节力矩,正向
τ
\tau
τ在
ϕ
\phi
ϕ正向上对身体加速;
f
f
f:腿的轴向力,正向
f
f
f使身体远离地面加速
m
m
m:身体的质量
J
J
J:身体的转动惯量
g
g
g:重力加速度
5.2 平面双足系统的运动方程
具有两条无质量腿和髋部距离质心的长度为 d d d的平面模型的运动方程为:
{ m x ¨ = f 1 sin θ 1 + f 2 sin θ 2 − τ 1 r 1 cos θ 1 − τ 2 r 2 cos θ 2 m z ¨ = f 1 cos θ 1 + f 2 cos θ 2 + τ 1 r 1 sin θ 1 + τ 2 r 2 sin θ 2 − m g J ϕ ¨ = f 1 d cos ( θ 1 − ϕ ) − τ 1 d r 1 sin ( θ 1 − ϕ ) + τ 1 − f 2 d cos ( θ 2 − ϕ ) + τ 2 d r 2 sin ( ϕ − θ 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}\theta eθ表示偶部, o θ ^{o}\theta oθ表示奇部,用 r r r来表示 1 e z + o z \frac{1}{^{e}z{{+}^{o}}z} ez+oz1,重写上述运动方程:
{ m x ¨ = ( e f + o f ) sin ( e θ + o θ ) − τ ( e z + o z ) cos ( e θ + o θ ) m z ¨ = ( e f + o f ) cos ( e θ + o θ ) + τ ( e z + o z ) 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 = e f sin e θ cos o θ + o f cos e θ sin o θ + τ e z sin e θ sin o θ − τ o z cos e θ cos o θ 0 = − e f sin e θ sin o θ + o f cos e θ cos o θ + τ e z sin e θ cos o θ + τ o z cos e θ sin o θ \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θ
且知: tan e θ = τ o z e f , tan e θ = o f τ e z {{\tan }^{e}}\theta =\frac{{{\tau }^{o}}z}{^{e}f},{{\tan }^{e}}\theta =\frac{^{o}f}{{{\tau }^{e}}z} taneθ=efτoz,taneθ=τezof
足端相对于身体的轨迹要求: x f ( t ) − x f ( 0 ) = − x f ( − t ) + x f ( 0 ) , z f ( t ) = z f ( − 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),若 x f ( 0 ) = 0 {{x}_{f}}(0)=0 xf(0)=0,则腿的运动具有对称性。当 t = 0 t=0 t=0时,奇函数的值为0,得出 e θ ( t = 0 ) = 0 ^{e}\theta (t=0)=0 eθ(t=0)=0,则 x f ( 0 ) = 0 {{x}_{f}}(0)=0 xf(0)=0,因此: e θ = o r = o f = 0 ^{e}\theta {{=}^{o}}r{{=}^{o}}f=0 eθ=or=of=0,则可知 θ \theta θ为奇函数, r , f r,f r,f为偶函数。 -
简化证明如下:
已知腿部相对于机架的轨迹为: { x f ( t ) − x f ( 0 ) = − x f ( − t ) + x f ( 0 ) z f ( t ) = z f ( − 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),若 x f ( 0 ) = 0 {{x}_{f}}(0)=0 xf(0)=0,则腿的运动具有对称性。
令 f x {{f}_{x}} fx、 f z {{f}_{z}} fz为地面与足端的水平力与竖直力,则髋部的扭矩为: τ = − f x z f + f z x f \tau =-{{f}_{x}}{{z}_{f}}+{{f}_{z}}{{x}_{f}} τ=−fxzf+fzxf
从运动方程可知: τ , f x \tau ,{{f}_{x}} τ,fx为奇函数, f z {{f}_{z}} fz为偶函数,因此腿部转角: θ = arctan ( x f / z f ) \theta =\arctan ({{x}_{f}}/{{z}_{f}}) θ=arctan(xf/zf)为奇函数,并且腿部长度: r = x f 2 + z f 2 r=\sqrt{{{x}_{f}}^{2}+{{z}_{f}}^{2}} r=xf2+zf2为偶函数,轴向力为: f = ( f x x f + f z z f ) / r f=({{f}_{x}}{{x}_{f}}+{{f}_{z}}{{z}_{f}})/r f=(fxxf+fzzf)/r