机器人(机械臂)动力学建模方法(Newton-Euler equation)
牛顿-欧拉公式(Newton-Euler equation)根据中间连杆上的力、力矩平衡关系上推断出来的。它的解具有递归的形式,前向递归用于连杆的速度、加速度的传递,后向递归用于力的传递。
牛顿-欧拉公式(Newton-Euler equation)根据中间连杆上的力、力矩平衡关系上推断出来的。它的解具有递归的形式,前向递归用于连杆的速度、加速度的传递,后向递归用于力的传递。
参数定义
以下参数均是相对于连杆 i<script type="math/tex" id="MathJax-Element-3149">i</script>
ae,i<script type="math/tex" id="MathJax-Element-3151">a_{e,i}</script>:连杆末端加速度
ωi<script type="math/tex" id="MathJax-Element-3152">\omega _i</script>:角速度
αi<script type="math/tex" id="MathJax-Element-3153">\alpha _i</script>:角加速度
zi<script type="math/tex" id="MathJax-Element-3154">z_i</script>:基座标系下,z<script type="math/tex" id="MathJax-Element-3155">z</script> 轴坐标
fi<script type="math/tex" id="MathJax-Element-3157">f_i</script>:受到的力
τi<script type="math/tex" id="MathJax-Element-3158">\tau_i</script>:受到的力矩
Rii+1<script type="math/tex" id="MathJax-Element-3159">R_{i+1}^i</script>:旋转矩阵
mi<script type="math/tex" id="MathJax-Element-3160">m_i</script>:质量
Ii<script type="math/tex" id="MathJax-Element-3161">I_i</script>:惯性张量
ri−1,ci<script type="math/tex" id="MathJax-Element-3162">r_{i-1,ci}</script>:坐标系 i−1<script type="math/tex" id="MathJax-Element-3163">i-1</script>原点到质心矢量
ri−1,i<script type="math/tex" id="MathJax-Element-3164">r_{i-1,i}</script>:坐标系 i−1<script type="math/tex" id="MathJax-Element-3165">i-1</script>原点到坐标系 i<script type="math/tex" id="MathJax-Element-3166">i</script>原点矢量
建模方法
1.前向迭代:
初值条件:
bi=(R0i)Tzi−1<script type="math/tex" id="MathJax-Element-3374">b_i=(R_i^0)^Tz_{i-1}</script>
ωi=(Ri−1i)Tωi−1+biq˙i<script type="math/tex" id="MathJax-Element-3375">\omega _i =(R_i^{i-1})^T \omega _{i-1} + b_i \dot q_i </script>
αi=(Ri−1i)Tαi−1+biq¨i+ωi×biq˙i<script type="math/tex" id="MathJax-Element-3376">\alpha _i =(R_i^{i-1})^T \alpha _{i-1} + b_i \ddot q_i + \omega _i \times b_i \dot q_i </script>
ae,i=(Ri−1i)Tae,i−1+ω˙i×ri−1,i+ωi×(ωi×ri−1,i)<script type="math/tex" id="MathJax-Element-3377">a_{e,i} = (R_i^{i-1})^T a _{e,i-1} + \dot \omega _i \times r_{i-1,i} + \omega _i \times ( \omega _i \times r_{i-1,i} )</script>
ac,i=(Ri−1i)Tae,i−1+ω˙i×ri−1,ci+ωi×(ωi×rc,i)<script type="math/tex" id="MathJax-Element-3378">a_{c,i} = (R_i^{i-1})^T a _{e,i-1} + \dot \omega _i \times r_{i-1,ci} + \omega _i \times ( \omega _i \times r_{c,i} )</script>
2.后向迭代:
初值条件:fn+1=τn+1=0<script type="math/tex" id="MathJax-Element-3379">f_{n+1} = \tau_{n+1} = 0</script>
fi=Rii+1fi+1+miac,i−migi<script type="math/tex" id="MathJax-Element-3380">f_i = R_{i+1}^i f_{i+1} + m_ia_{c,i} - m_i g_i</script>
τi=Rii+1τi+1−fi×ri−1,ci+(Rii+1fi+1)×ri,ci+ωi×(Iiωi)<script type="math/tex" id="MathJax-Element-3381">\tau_i = R_{i+1}^i \tau_{i+1} - f_i \times r_{i-1,ci} + ( R_{i+1}^i f_{i+1} ) \times r_{i,ci} + \omega _i \times (I_i \omega _i) </script>
模型
通过迭代,可以得到以下形式的动力学方程:
这就是牛顿-欧拉形式的动力学方程。
更多推荐
所有评论(0)