工作空间是反映机器人性能的重要参数,是末端执行器可以运动到的所有位置的集合。
蒙特卡罗法是求解机器人工作空间的一种比较简单直观的方法,其核心是给各个关节变量赋予一个随机的数值,利用机器人的正运动学求解出末端执行器能够到达位置点的坐标,这些位置点构成的点云图就是机器人的运动空间。(只考虑位置,不考虑姿态)
如下为matlab程序,先建立机器人正运动学求解公式,再求工作空间。
clc;
clear;
syms a2 a3 d1 d4 d5 d6 theta1 theta2 theta3 theta4 theta5 theta6
T01=[cos(theta1) 0 sin(theta1) 0;
sin(theta1) 0 -cos(theta1) 0;
0 1 0 d1;
0 0 0 1];
T12=[cos(theta2) -sin(theta2) 0 a2*cos(theta2);
sin(theta2) cos(theta2) 0 a2*sin(theta2);
0 0 1 0;
0 0 0 1];
T23=[cos(theta3) -sin(theta3) 0 a3*cos(theta3);
sin(theta3) cos(theta3) 0 a3*sin(theta3);
0 0 1 0;
0 0 0 1];
T34=[cos(theta4) 0 sin(theta4) 0;
sin(theta4) 0 -cos(theta4) 0;
0 1 0 d4;
0 0 0 1];
T45=[cos(theta5) 0 -sin(theta5) 0;<