首先是有关该机械臂的资料: http://www.eezyrobots.it/eba_mk2.html
https://github.com/meisben/easyEEZYbotARM/releases
机械臂各关节参数DH定义(角4处没有驱动所以直接为0,我们也不需要去算角4的度数),你也可以通过变换矩阵算出角3对角1的变换矩阵之后乘以一个L4的平移变换矩阵(代数法思路)
yee,xee:执行机构中心点所对应的世界坐标系坐标
首先让我们来算角1(因为角1和执行末端坐标直接对应):可以看到角1=atan2(yee,xee),atan2是一个用于求夹角的函数,在计算中很方便使用
确定joint4(角4轴中心)所在xyz坐标
确定角3(这里用到了余弦定理)β为图中浅绿色线段,角3前保留负号是因为z轴以逆时针方向为正,π-a得到的方向是反向的
确定角2(图里的θ3应为θ2)
对于角2的转动,这里有两种运动方式(case1和case2)但无论如何角2都由A和α相加得来(对于case2,Atan2函数输出的值为负,所以直接用就行)
至此我们得到了三个角的角度的计算公式
后续我会更新该机械臂的组装和控制部分,也许还有一份数值法逆运动解