4 静力学
静力学分析通俗来说就是对一个受到很多力的静止物体进行受力分析,然后画受力图。当物体受力很复杂时,分析比较麻烦,并且过多的约束力也将使得方程求解变复杂。
虚功原理就解决了静力学分析中约束力过多导致的分析复杂。当我们不关心约束力时,要是存在情况能把约束力给甩掉将大大简化我们的受力分析。
虚功原理从功能角度出发,假象一个静止的物体要动的话会发生什么,于是定义了一个虚拟的位移(假设静止物体发生微小移动),如果这个虚拟的位移在一定条件下总是与约束力垂直,那么约束力就不会做功,而由于物体静止因此总功为0,主动力做虚功也为零,这样对于主动力的分析将变得简单,这样的分析方法与传统的静力学分析方法走的不是一条路子,这样对于复杂情况处理起来也更加简便,下面先从虚位移开始讨论。
5 虚位移与虚功原理
虚位移的定义:质点满足约束的所有可能位移。
如下图,一个内壁光滑的圆柱管内静置着一个半径与圆柱管相同的表面光滑的小球。由于管壁的约束,小球只可能沿着管子向左或者向右运动。我们假象小球移动了一段距离
δ
r
\delta r
δr,是一个无穷小量,也称虚位移。
那么虚位移
δ
r
\delta r
δr和微分
d
r
dr
dr有什么区别呢?他们都是位移的无穷小量,但物理意义不同。虚位移
δ
r
\delta r
δr是质点满足约束的所有可能位移,而
d
r
dr
dr是质点实际运动时位移无穷小量(包含牵连运动)。
但并不是 δ r \delta r δr就一定包含 d r dr dr,只有在定常约束时, δ r \delta r δr包含 d r dr dr,非定常约束时不一定。为了深刻理解他们的区别我们继续分析。如上图所示满足定常约束时, δ r \delta r δr选择右边,则 d r dr dr朝右边。
而如果让圆柱管以恒定速度上升,小球依旧在管内保持静止,此时约束为非定常约束,那么此时由于牵连运动实位移 d r dr dr朝上,而虚位移由于约束,小球无法产生向上的虚位移,此时的虚位移依旧只能是向左或者向右。
上面的分析和我们预想的一样,无论定常还是非定常约束,约束力还是与虚位移垂直,不做虚功,这样的例子还有很多如杆球单摆,小球虚位移不可能产生沿着杆的方向,只能是垂直杆的方向。
5.1 理想约束
并不是所有的约束力都不做虚功,只不过我们大多数研究的问题约束力都不做虚功,我们把约束力总做功为零的约束称为理想约束,在理想约束下我们就可以忽略掉约束力,对主动力进行分析,否则非理想约束只能乖乖去分析所有约束力。
对于多质点的系统,约束质点的约束力,大小相同,方向相反,即使虚拟位移不与约束力垂直,总和做的虚功依旧为零,见6.4节的例题图中的连杆,对两小球的约束力。
对于机械臂而言试着分析我们可以知道在内力与外力使得机械臂处于平衡状态时,各关节的约束力不做虚功,进而才能利用雅可比矩阵导出机器人静力学公式。
下面举一个非理想约束的例子,一般来说含有摩擦力或者滚阻力偶都有可能是非理想约束,静摩擦力算约束力,因为他能对质点的位置进行约束。见北航理力PPT:
6 广义坐标系下虚功原理
6.1 广义坐标
在进行推导前,我们需要引入广义坐标。广义坐标:确定系统位置的独立参数。比如机械臂末端位置,我们可以在基座笛卡尔坐标系下表示,也可以通过各个关节角度或者长度(Prismatic关节)组成的坐标系来表示,通过正向运动学又能转换为笛卡尔坐标,其中各关节位置相互独立。
如下图所示可以选择直角坐标系
{
x
−
y
}
\{x-y\}
{x−y}来描述小球位置,但实际小球自由度只有1,一个坐标
x
x
x或
y
y
y就已经能够描述,因为此时坐标
x
x
x与坐标
y
y
y满足约束
x
2
+
y
2
=
r
2
x^2+y^2=r^2
x2+y2=r2,因此称
x
x
x方向坐标与
y
y
y方向坐标不独立。也可以选取极坐标
{
θ
}
\{\theta\}
{θ}坐标系,来描述小球位置。
6.2 虚功原理
现在只考虑非定常约束,假设我们选定了一个广义坐标系
{
q
1
,
q
2
⋅
⋅
⋅
q
s
}
\{q_1,q_2 \cdot \cdot \cdot q_s\}
{q1,q2⋅⋅⋅qs},力的作用点为
r
=
f
(
q
1
,
q
2
⋅
⋅
⋅
q
s
)
r=f(q_1,q_2 \cdot \cdot \cdot q_s)
r=f(q1,q2⋅⋅⋅qs),
r
r
r为力的作用点在广义坐标系下的坐标表示,取虚位移如下式。
δ
r
=
∑
i
=
1
s
δ
r
δ
q
i
δ
q
i
\delta r=\sum_{i=1}^{s}\frac{\delta r}{\delta q_i} \delta q_i
δr=i=1∑sδqiδrδqi
设
F
j
F_j
Fj(
j
=
1
,
2
,
⋅
⋅
⋅
m
j=1,2,\cdot \cdot \cdot m
j=1,2,⋅⋅⋅m)为该质点受主动力,他们的虚功有:
δ
W
=
∑
j
=
1
m
∑
i
=
1
s
F
j
δ
r
δ
q
i
δ
q
i
=
0
\delta W=\sum_{j=1}^{m}\sum_{i=1}^{s}F_j\frac{\delta r}{\delta q_i} \delta q_i=0
δW=j=1∑mi=1∑sFjδqiδrδqi=0
如果广义坐标相互独立,根据线性代数的知识可知:
F
δ
r
δ
q
i
=
0
F\frac{\delta r}{\delta q_i}=0
Fδqiδr=0
对于
n
n
n质点的平衡系,在同一广义坐标系下,将有下式:
δ
W
=
∑
k
=
1
n
∑
j
=
1
m
∑
i
=
1
s
F
j
k
δ
r
j
δ
q
i
δ
q
i
=
0
\delta W=\sum_{k=1}^{n}\sum_{j=1}^{m}\sum_{i=1}^{s}F_{jk}\frac{\delta r_j}{\delta q_i} \delta q_i=0
δW=k=1∑nj=1∑mi=1∑sFjkδqiδrjδqi=0
6.3 虚功原理推导机器人静力学
我们选取广义坐标系为各关节角
{
θ
1
,
θ
2
⋅
⋅
⋅
θ
s
}
\{\theta_1,\theta_2 \cdot \cdot \cdot \theta_s\}
{θ1,θ2⋅⋅⋅θs},机械臂受外力
f
f
f处于平衡状态时,机械臂位形只与关节角度有关,与时间无关,即为定常约束。此时虚位移
δ
r
\delta r
δr包含实位移
d
r
dr
dr,推导时可以视为相同直接替换。
主动力包括:关节主动施加的力矩
τ
\tau
τ以及末端受到的外力
f
e
f_e
fe,其中关节力矩的元功:
d
W
τ
=
τ
T
d
θ
dW_{\tau}=\tau^{T} d \theta
dWτ=τTdθ
外力
f
e
f_e
fe的元功:
d
W
f
e
=
f
e
T
d
r
=
f
e
T
J
d
θ
dW_{fe}=f_{e}^{T} dr=f_{e}^{T} Jd\theta
dWfe=feTdr=feTJdθ
又根据虚功原理可知,主动力做虚功为零:
δ
W
τ
+
δ
W
f
e
=
d
W
τ
+
d
W
f
e
=
0
\delta W_{\tau}+\delta W_{fe}=dW_{\tau}+dW_{fe}=0
δWτ+δWfe=dWτ+dWfe=0
可以得到我们在机器人学中常见的静力学公式,注意这是在忽略关节摩擦力得到的:
τ
=
−
J
T
f
e
\tau=-J^Tf_e
τ=−JTfe
这个公式比机械臂书中的公式多了个负号,实际经常用于计算足式机器人支撑力。因为这是考虑的机械臂末端受力时推导出来的,如果我们希望机器人末端能产生
f
f
f大小的力,则所施加力矩应使用下式计算:
τ
=
J
T
f
\tau=J^Tf
τ=JTf
6.4 虚功原理解静力学例题
如下图所示,一个半径为
R
R
R的光滑半圆环上套了两个质点所受重力分别为Q和P,两个质点还由一根长为
2
l
2l
2l的刚性杆连接,现系统保持平衡,求刚性杆与地面的夹角
θ
\theta
θ,地面与水平直径重合。
此时几何关系比较复杂,采用虚功原理分析更简单。由于连杆对两质点的约束力与虚位移不垂直,但大小相同,方向相反两个约束力所作虚功总和依旧为0,因此可以应用虚功原理进行分析。可以知道质点只能在圆环上运动,自由度为1,因此为了分析方便我们取如图所示
θ
\theta
θ为广义坐标系,因为系统平衡左边小球位置确定,就可以确定右边小球位置。
因为两个质点受到主动力只有重力,只考虑虚位移在竖直方向的分量:
{
y
l
e
f
t
=
R
s
i
n
(
α
)
y
r
i
g
h
t
=
R
s
i
n
(
α
)
+
2
l
s
i
n
(
θ
)
α
=
β
−
θ
=
a
c
c
o
s
(
l
R
)
−
θ
\left\{ \begin{aligned} y_{left}&=Rsin(\alpha)\\ y_{right}&=Rsin(\alpha)+2lsin(\theta)\\ \alpha=&\beta-\theta=accos(\frac{l}{R})-\theta \end{aligned} \right.
⎩⎪⎪⎪⎨⎪⎪⎪⎧yleftyrightα==Rsin(α)=Rsin(α)+2lsin(θ)β−θ=accos(Rl)−θ
根据6.2节求取虚位移:
{
δ
y
l
e
f
t
=
−
R
c
o
s
(
β
−
θ
)
δ
θ
δ
y
r
i
g
h
t
=
−
R
c
o
s
(
β
−
θ
)
δ
θ
+
2
l
c
o
s
(
θ
)
δ
θ
\left\{ \begin{aligned} \delta y_{left}&=-Rcos(\beta-\theta)\delta \theta\\ \delta y_{right}&=-Rcos(\beta-\theta)\delta \theta+2lcos(\theta)\delta \theta \end{aligned} \right.
{δyleftδyright=−Rcos(β−θ)δθ=−Rcos(β−θ)δθ+2lcos(θ)δθ
根据虚功原理,进而可以推出
θ
\theta
θ:
Q
δ
y
l
e
f
t
+
P
δ
y
r
i
g
h
t
=
0
Q\delta y_{left}+P\delta y_{right}=0
Qδyleft+Pδyright=0
实际上对于主动力只含保守力的体系,合外力为势能相对位置的变化率,因此只要求解体系势能变化率等于零的位置,即为平衡状态位置。但不是所有平衡状态都稳定,可能有的状态收到微小扰动就失去平衡,这样的平衡状态称为不稳定平衡,可以见下图。
定理:
质点系在势力场中的平衡位置是稳定的充分必要条件是系统在平衡位置的势能为极小值。转换为数学语言就是,势能在平衡点关于位置的二阶导数大于零即可。