【机器人学】《现代机器人学》学习笔记:(1)逆运动学的数值求解(C++版)

在过去的好几个月的时间,因为工作需要,把《现代机器人学》这本书认真地学习了一下,个人感觉这本书的阅读价值极高,可显著提高机器人学算法,数学能力。

这本教材是提供了所讲算法的官方的matlab代码(链接),另外也有人写了C++(链接)、python及其它版本。

出于学习机器人学算法C++编程的目的,我写了一个对上述提到的C++版本的函数库的测试算例,使用牛顿拉普森方法求解机械臂逆运动学解,代码链接:https://github.com/GProbot/modern-robot

算例说明:对一个两连杆机构求逆解

程序运行结果:

linux-gp@linuxgp-virtual-machine:~/modernrobotic$ ./robot_test 
Slist=
 0  0  0
 0  0  0
 1  1  1
-0 -0 -0
-0 -1 -2
-0 -0 -0
M = 
1 0 0 2
0 1 0 0
0 0 1 0
0 0 0 1
T = 
1 0 0 1
0 1 0 1
0 0 1 0
0 0 0 1

initial joint = 
     0
1.0472
     0
joint result = 
-4.33401e-08
      1.5708
     -1.5708
FKinSpace = 
           1 -4.33401e-08            0            1
 4.33401e-08            1            0            1
           0            0            1            0
           0            0            0            1
FKinSpace = T

 

posted @ 2021-02-18 18:20  gpeng832  阅读(103)  评论(0编辑  收藏  举报  来源