图1 PUMA 560机器人坐标系 如上图建立坐标系,各连杆的变换矩阵如下: 以上各连杆变换矩阵相乘得到机械手变换矩阵: 参数如下: 表1 PUMA560机器人的连杆参数
关节i | | | | | 变化范围/(o) | 1 | 90 | 0 | 0 | 0 | -160~160 | 2 | 0 | -90 | 0 | 149.09 | -225~45 | 3 | -90 | 0 | 431.8 | 0 | -45~225 | 4 | 0 | -90 | 20.32 | 443.07 | -110~170 | 5 | 0 | 90 | 0 | 0 | -100~100 | 6 | 0 | -90 | 0 | 56.25 | -266~266 |
机械手的旋转角不影响工作空间的计算,不考虑其变化范围,取。 用Matlab编程计算得到工作空间,程序如下: clc; clear; for cta1=-70:20:250 T01=[cosd(cta1),-sind(cta1),0,0; sind(cta1), cosd(cta1),0,0; 0, 0, 1,0; 0, 0, 0,1]; for cta2=-225:45:45 T02=T01*[cosd(cta2),-sind(cta2),0, 0; 0, 0, 1, 149.09; -sind(cta2),-cosd(cta2),0, 0; 0, 0, 0, 1] ; for cta3=-135:30:135 T03=T02*[cosd(cta3),-sind(cta3),0,431.8; sind(cta3), cosd(cta3), 0, 0; 0, 0, 1, 0; 0, 0, 0, 1]; for cta4=-110:20:170 T04=T03*[cosd(cta4),-sind(cta4),0,20.32; 0, 0, 1,433.07; -sind(cta4),-cosd(cta4),0,0; 0, 0, 0, 1]; for cta5=-100:20:100 T05=T04*[cosd(cta5),-sind(cta5),0,0; 0, 0, -1,0; sind(cta5), cosd(cta5), 0,0; 0, 0, 0,1]; T06=T05*[1 0 0 0; 0 0 1 56.25; 0 -1 0 0; 0 0 0 1]; O=T06*[0;0;0;1]; plot3(O(1)/O(4),O(2)/O(4),O(3)/O(4)); hold on; end end end end end hold off; | | | | | |