机器人运动学基础-------汇总
1 Introduction
回顾一下机器人运动学和动力学,从理论力学到机器人理论,并将相关的理论应用在一个称重的样例中,如果最后有时间,在尝试在adams上比较一下结果。
1.1 理论力学 运动学部分回顾
这部分的难点在于自然法(速度、角速度、曲率、曲率半径)和科氏加速度的推导
1.1.1 点运动的矢量法
基本元素的描述:位置、速度和加速度
坐标系方法M(x,y,z); 矢量法:R˙\dot {R}R˙ -------位置
坐标系方法V(x˙,y˙,z˙)V(\dot x, \dot y, \dot z)V(x˙,y˙,z˙), 矢量法:drdt\frac{dr}{dt}dtdr ----------速度
坐标系方法V(x¨,y¨,z¨)V(\ddot x, \ddot y, \ddot z)V(x¨,y¨,z¨), 矢量法:d2rd2t\frac{d^2r}{d^2t}d2td2r ----------加速度
借助矢量法可以帮助了解点的运动情况,但是轨迹的性质没有办法了解
1.在机器人中,往往需要通过给执行机构发动特定的轨迹,让机器人按照轨迹运动,机器人的末端的运动,可以用矢量法描述。对于这条轨迹,需要借助后面提的自然法
2.矢量法只能描述点在绝对坐标或者相对坐标系下的速度,对于角速度无法描述
1.1.2 点运动的自然法
- 位置: S = F(t), 这是自然法的定义,符合的有各种轨迹公式,圆、贝塞尔、样条曲线
自然轴系以切向、法向和副法向构建自然轴系。
曲率半径 根据圆的定义,我们定义轨迹的时候应该也有ρ∇θ=∇s\rho \nabla \theta=\nabla sρ∇θ=∇s
所以曲率半径ρ=∇s∇τ\rho=\frac{\nabla s}{\nabla \tau}ρ=∇τ∇s,因为∇τ\nabla \tau∇τ的方向指向圆心(因为τ\tauτ是单位速度方向向量,大小恒定,方向一直在变)
添加方向后公式为:dsdτ=ρn⃗\frac{ds}{d\tau}=\rho \vec{n}dτds=ρn {n⃗\vec{n}n是法线向量}
- 速度:速度方向
矢量法: τ=r˙∥r˙∥\tau=\frac{\dot r}{\Vert{\dot r}\Vert}τ=∥r˙∥r˙ (运算复杂,作用不大)
自然法:τ=drds\tau=\frac{dr}{ds}τ=dsdr (通过ds,可以利用轨迹的特征)
速度大小
v=dsdtv=\frac{ds}{dt}v=dtds (自然法中点的速度方向和轨迹相切,大小是轨迹方程的倒数) - 加速度:
加速度方向
加速度方向不同于速度方向有与轨迹相切的规律,加速度方向可能和轨迹相交,所以在平面上采用正交分解的方法,将加速度分解成切向和法向分量叠加。
加速度大小
切向加速度大小at=d2sdt2a_t=\frac{d^2s}{dt^2}at=dt2d2s 影响切向速度大小的加速度
法向加速度大小an=v∗dτdt=v∗dτds∗dsdt=v2ρn⃗a_n=v*\frac{d\tau}{dt}=v*\frac{d\tau}{ds}*\frac{ds}{dt}=\frac{v^2}{\rho}\vec{n}an=v∗dtdτ=v∗dsdτ∗dtds=ρv2n
疑问:目前为止还没有出现角速度?因为在点运动中,仅线速度就可以完整描述运动,所以我们接下来进入刚体运动
1.1.3 刚体运动
刚体机器人中,大部分机构只会旋转和平移中的一种,同时根据惯性坐标系下,运动可以叠加的性质,可以从平移运动和旋转运动入手分析。
- 平移运动
刚体平移运动时,刚体上所有点的运动情况相同(速度和加速度相同),所以本质上和点运动没有区别。 - 旋转运动
角速度和角加速度, 方向指向轴系方向,大小ω=dθdt\omega=\frac{d\theta}{dt}ω=dtdθ, α=d2θdt2\alpha=\frac{d^2\theta}{dt^2}α=dt2d2θ
刚体上的点的速度:采用矢量积表示:v⃗=w⃗×r⃗\vec v=\vec w \times \vec rv=w×r,
通过自然法轨迹上的速度v=dsdt=r∗w∗dtdt=w∗rv=\frac{ds}{dt}=\frac{r*w*dt}{dt}=w*rv=dtds=dtr∗w∗dt=w∗r再考虑方向就是上式
刚体上的点的加速度: 同样采用自然法,将点的加速度分解成切向加速度和法向加速度。
切向加速度大小:at=v˙=d(wr)dt=w⃗r=α⃗×r⃗a_t=\dot v=\frac {d(wr)}{dt}=\vec w r=\vec {\alpha} \times \vec{r}at=v˙=dtd(wr)=wr=α×r
法向加速度大小:an=v2rn⃗=w⃗2ra_n=\frac{v^2}{r}\vec n=\vec w^2 ran=rv2n=w2r - 复合运动
- 复合运动速度
理论分析
刚体的运动的可以分解成平移运动(刚体的线速度)和旋转运动(刚体的角速度),所以只要知道刚体上两个点的速度就可以求出该刚体的线速度和角速度,进而求出刚体上所有点的速度。
基点法
以一个点为基点,刚体上的其他点可以看成相对这个点做旋转运动。(利用点速度合成的思路)
瞬时速度法
根据基点法,既然其他点可以看成相对这个点做旋转运动,是否可以找到一个特殊的点,该点速度为0.
如果角速度非0,在该刚体上一定能找到这个点,如果角速度为0,则这个点在无穷远 - 复合运动加速度
小心选取的基点是否有旋转运动,如果有旋转运动,需要考虑科氏加速度。
- 复合运动速度
单个刚体的运动:平移运动与点运动相同,旋转运动与点做圆周运动相似,可以用自然法和角速度进行分析
1.1.4 多刚体运动
我们在单刚体运动时已经涉及了运动的叠加,在多刚体运动分析时
| 单刚体复合 | 多刚体运动 |
|---|---|
| 基点 | 动坐标系上的动点 |
| 旋转运动 | 相对运动 |
| 点运动 | 点的绝对速度 |
- 多刚体运动的速度
因为瞬时速度法在多刚体运动上没有成立的条件,所以多刚体运动类似于单刚体运动的基点法。 - 多刚体运动的加速度
多刚体运动绕不过去的是科氏加速度,接下来分析科氏加速度的来源和推导- 科氏加速度的来源
下图一个滑套在一个连杆上,滑套在连杆上滑动,连杆绕轴心旋转。
动坐标系是连杆,如果没有连杆的运动,t1t_1t1时刻M1M_1M1滑到了M2′M_2'M2′,但是V⃗M2′和V⃗M2\vec {V}_{M_2'} 和\vec {V}_{M_2}VM2′和VM2速度方向发生改变了。
我们采用自然法进行分析,at=v∗dτ⃗dta_t=v * \frac{d\vec \tau}{dt}at=v∗dtdτ根据之前我们推导得到的结果在∇t无穷小时,dτ=dθ\nabla t无穷小时,d\tau=d\theta∇t无穷小时,dτ=dθ,因而考虑上加速度方向后 at=ω⃗×v⃗ra_t=\vec \omega \times \vec v_rat=ω×vr
如果没有滑动,t1t_1t1时刻M1M_1M1滑到了M1′M_1'M1′,但是V⃗M1′和V⃗M2\vec {V}_{M_1'} 和\vec {V}_{M_2}VM1′和VM2速度大小发生改变了。
an=d(ω⃗∗vr∗t)dt=ω⃗×v⃗ra_n=\frac{d(\vec \omega * v_r*t)}{dt}=\vec \omega \times\vec v_ran=dtd(ω∗vr∗t)=ω×vr
注意an和at两者的速度方向是一致的,所以科氏加速度ac=2ω⃗×vra_n 和a_t两者的速度方向是一致的,所以科氏加速度a_c=2\vec \omega \times v_ran和at两者的速度方向是一致的,所以科氏加速度ac=2ω×vr
- 科氏加速度的推导
因为科氏加速度的推导能帮助我们加深对整个概念的理解。
在推导之前,我们一定要搞清楚,科氏加速度是系统中某个刚体M2M_2M2的加速度的组成部分。我们采用基点法计算M2M_2M2的加速度,就是说先求相对加速度,再求动坐标系加速度,两者的合成就是M2M_2M2的绝对加速度。
相对加速度的推导
点的绝对加速度采用矢量法,i′,j′,k′i', j', k'i′,j′,k′是动坐标系的基向量, v~x,v~y,v~z\tilde v_x, \tilde v_y, \tilde v_zv~x,v~y,v~z是相对速度。
v⃗’=v~xi⃗′+v~yj⃗′+v~zk⃗′\vec v’=\tilde v_x \vec i'+\tilde v_y \vec j'+\tilde v_z \vec k'v’=v~xi′+v~yj′+v~zk′
dv⃗dt=(v~x˙i⃗′+v~y˙j⃗′+v~z˙k⃗′)+(v~xi⃗′˙+v~yj⃗′˙+v~zk⃗′˙)\frac{d\vec v}{dt}=(\dot {\tilde v_x} \vec i' + \dot {\tilde v_y} \vec j' + \dot {\tilde v_z} \vec k') +(\tilde v_x \dot{\vec i'}+\tilde v_y \dot{\vec j'}+\tilde v_z \dot{\vec k'})dtdv=(v~x˙i′+v~y˙j′+v~z˙k′)+(v~xi′˙+v~yj′˙+v~zk′˙)
对上式两个部分分别进行分析,其中左边一项是相对加速度dvr~dt\frac{d\tilde{v_r}}{dt}dtdvr~,
==右边要如何计算?==使用化不熟悉为熟悉为熟悉的方法,先将i′,j′,k′i', j', k'i′,j′,k′看成空间中任意一个基向量,该向量绕固定轴旋转,求向量的速度。我们再注意分析一下,这刚好是点的速度的矢量表示法。
v⃗r=dr⃗dt=ω⃗×r⃗\vec v_r = \frac{d \vec r}{dt}=\vec \omega \times \vec rvr=dtdr=ω×r,所以i⃗′˙=ω⃗×i⃗′\dot {\vec i'}=\vec \omega \times \vec i'i′˙=ω×i′
右边等于,ω⃗×(x′i⃗′+y′j⃗′+z′k⃗′)=ω⃗×r⃗′\vec \omega \times (x' \vec i' + y' \vec j' + z'\vec k')=\vec \omega \times \vec r'ω×(x′i′+y′j′+z′k′)=ω×r′
总结:在处理相对加速度过程中产生了科氏加速度的一部分,这部分实际上就是我们在来源中分析的因动坐标系方向的改变,造成的相对速度方向发生了改变
绝对速度推导
va=vr+vev_a=v_r+v_eva=vr+ve
这里有一些概念非常容易搞混,分析物体速度
动坐标系的动点是在当前时刻物体点,即我们将动系的坐标原点建在了M2M_2M2处,ve=w∗r动点距离旋转中心的位置v_e=w*r_{动点距离旋转中心的位置}ve=w∗r动点距离旋转中心的位置
分析物体加速度
动点选择在t0t_0t0时刻,经过∇t\nabla t∇t到达M2M_2M2,速度的变化量,不考虑vrv_rvr
∇v=ω⃗×r′⃗\nabla v=\vec \omega \times \vec {r'}∇v=ω×r′
加速度为a=dvdt=dω⃗dt×r′⃗+ω⃗×dr′⃗dt=αr′⃗+ω⃗∗(v⃗r+ω⃗×r′⃗)a=\frac{dv}{dt}=\frac{d\vec \omega}{dt}\times \vec {r'}+\vec \omega \times \frac{d\vec {r'}}{dt}= \alpha \vec {r'}+\vec \omega * (\vec v_r + \vec \omega \times \vec {r'})a=dtdv=dtdω×r′+ω×dtdr′=αr′+ω∗(vr+ω×r′)
**注意这个r′⃗\vec {r'}r′**的方向也发生了变化,且大小等于∇θ=ω⃗∗r⃗\nabla \theta=\vec \omega * \vec r∇θ=ω∗r
这样科氏加速度的两项均得到了。
- 科氏加速度的来源
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)