gpt4 book ai didi

graphics - 逆运动学 : Calculating the Jacobian

转载 作者:行者123 更新时间:2023-12-02 21:37:47 25 4
gpt4 key购买 nike

我正在尝试对任意多个链接的串行链进行逆运动学。

如下paper ,我找到了如何计算雅可比矩阵的示例。

Entry (i, j) = v[j] * (s[i] - p[j])

地点:

v[j] is the unit vector of the axis of rotation for joint j

s[i] is the position (int world coords?) of joint i

p[j] is the position (in world coords?) of joint j

论文指出,如果 j 是具有单自由度的旋转关节,则此方法有效。但我的旋转关节的旋转没有任何限制。那我想要什么公式呢? (或者我可能误解了“自由度”一词?)

最佳答案

这个问题已经很老了,但我还是会回答,因为这是我曾经想过但从未真正付诸实现的事情。

不受约束的旋转关节称为球关节或球形关节;他们有 3 个自由度。如果您根据每个具有一个自由度的 3 个旋转(旋转)关节来参数化每个球形关节,您也可以将教程中的公式用于球形关节。

例如:设N为球形关节的数量。假设每个关节都有一个局部变换T_local[i]和一个世界变换

T_world[i] = T_local[0] * ... * T_local[i]

R_world[i][k], k = 0, 1, 2 为旋转的第 kthT_world[i] 矩阵。将 3 * N 关节轴定义为

v[3 * j + 0] = R_world[i][0]
v[3 * j + 1] = R_world[i][1]
v[3 * j + 2] = R_world[i][2]

使用教程中的公式计算某些末端执行器 s[i] 的雅可比行列式 J。所有坐标都在世界坐标系中。

例如,使用伪逆方法给出位移dq,该位移dq使末端执行器沿给定方向dx移动。

dq的长度为3 * N。定义

R_dq[j] = 
R_x[dq[3 * j + 0]] *
R_y[dq[3 * j + 1]] *
R_z[dq[3 * j + 2]]

对于 j = 0, 1, ..., N-1,其中 R_xR_yR_z code> 是绕 x-y-z 轴旋转的变换矩阵。

更新本地转换:

T_local[j] := T_local[j] * R_dq[j]

然后从顶部重复,将末端执行器向其他方向dx移动。

关于graphics - 逆运动学 : Calculating the Jacobian,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3993403/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com