机械臂的动力学模型包含正向动力学与逆向动力学,其主要的动力学体现如下所示:
M(q){\ddot q}++ C(q, \dot q)+g(q)+h(q,\dot q, \ddot q) = {\tau}_c+{\tau}_e
其中h(q,\dot q, \ddot q)=F_v\dot q +F_c sign(\dot q)
F_v和F_c分别为动摩擦和库伦摩擦。
对于 每个刚体,其主要的动力学参数为质量 m_k,质心位置(COM)
R_k=[r_{xk}, r_{yk}, r_{zk}]^T
相对于质心的惯量矩阵的参数如下所示:
I_k=[I_{xxk},I_{xyk}, I_{xzk}; I_{xyk}, I_{yyk}, I_{yzk}; I_{xzk}, I_{yzk}, I_{zzk} ];
为了辨识参数,采用“barycentric parameters”, 因此每个连杆的动力学参数分别为质量,m_k, The first moment of inertia, l_k=[l_{xk}, l_{lyk}, l_{zk}];
相对于连杆坐标系的惯量张量为:
L_k=[L_{xxk},L_{xyk}, L_{xzk}; L_{xyk}, L_{yyk}, L_{yzk};L_{xzk}, L_{yzk}, L_{zzk} ](R{^{3*3}});
The first moment of inertia相当于质量与质心位置的乘积
l_k=m_k r_k=[m_k r_{xk}, m_k r_{yk}, m_k r_{zk} ];
由此,基于Huygens-Steiner理论
L_k=I_k+m_k S(r_k)^T S(r_k)
其中S(r_k)为向量的反对称矩阵。
由此,机器人的动力学参数可以表示如下所示:
\delta_{LK}=[L_{xxk}, L_{xyk}, L_{xzk}, L_{yyk}, L_{yzk}, L_{zzk}, l_{xk}, l_{yk}, l_{zk}, m_k]^T
除了多刚体动力学,机器人还受到关节层其他因素的影响,额外的动力学可以归纳为:
\delta_{AK}=[F_{vk}, F_{ck}, F_{ok},I_{aK}]^T
由此,机器人的完整的动力学参数向量可以表示如下 \delta=[\delta_{LK},\delta_{AK}]^T\\=[\delta_{L1},\delta_{A1},……,\delta_{Lk},\delta_{Ak},……,\delta_{LN},\delta_{AN}]
因此,机械臂的动力学方程可以表示如下所示:
InvDyn(q,\dot q,, \ddot q, \delta)=\tau_c
进一步进行分离:
H(q,\dot q, \ddot q) \delta =\tau_c
上式中,H(q,\dot q, \ddot q)是回归矩阵。
机器人动力学参数可以通过以下三种模式获得:
常规的回归矩阵辨识方法涉及到采集大量的实验数据,在每个采集周期中,机械臂沿着特定的激励轨迹运动,且需要采集到关节位置以及力。经过S次测量(S>N),可以得到:
H_s= [ H(q_1,\dot q_1, \ddot q_1) ; H(q_2,\dot q_2, \ddot q_2);……;H(q_S,\dot q_S, \ddot q_S)]
回归向量:w=[\tau_{c1}, \tau_{c2},……,\tau_{cS}]
由此机械臂的动力学可以表示为:H_S \hat\delta =w
采用最小二乘(ordinary least squares,OLS)得到局部最优解:\hat\delta_{OLS}=arg_{\delta}min \quad e^2, e=w-H_S\delta
然而,除了一些非常特殊的例外,所有机器人都具有回归功能一些空列和一些线性地依赖于它们之间的列。这些列对应于标准动态参数,没对动力学的影响以及对具有比例贡献的参数的影响.
[H_b,H_d][\delta_b,\delta_d]^T=\tau_c
H_b are linearly independent columns of H,H_d are the remain null and dependent columns
因而系统辨识任务转化为:H_b(q,\dot q, \ddot q) \beta=\tau_c
采用最小二乘得到局部最优解:
\hat\beta_{OLS}=arg_{\beta}min \quad e^2, e=w-W\beta
新的回归矩阵有:
W= [ W_b(q_1,\dot q_1, \ddot q_1) ; W_b(q_2,\dot q_2, \ddot q_2);……;W_b(q_S,\dot q_S, \ddot q_S)]
因而
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。