微小的反向运动学解算器
tinyik的Python项目详细描述
tinyik是一个简单朴素的逆运动学求解器。
它将执行器定义为从原点开始的一组链接和旋转关节。这里有一个机器人手臂的例子,它由两个围绕Z轴旋转的关节和1个沿着X轴的长度的链接组成:
>>>importtinyik>>>arm=tinyik.Actuator(['z',[1.,0.,0.],'z',[1.,0.,0.]])
由于默认情况下关节角度为零,末端效应器位置为(2.0,0,0):
>>>arm.anglesarray([0.,0.])>>>arm.eearray([2.,0.,0.])
将关节角度设置为30度和60度,以计算末端效应器的新位置:
>>>importnumpyasnp>>>arm.angles=[np.pi/6,np.pi/3]# or np.deg2rad([30, 60])>>>arm.eearray([0.8660254,1.5,0.])
设置末端效应器的位置以计算关节角度:
>>>arm.ee=[2/np.sqrt(2),2/np.sqrt(2),0.]>>>arm.anglesarray([7.85398147e-01,3.23715739e-08])>>>np.round(np.rad2deg(arm.angles))array([45.,0.])
安装
$ pip install tinyik