前言
激光测距传感器是工业自动化生产中的常用传感器,利用此传感器可以测出我们需要的数值,但装在机器人末端执行器时,传感器的安装角度并不一定能保证一定与机器人工具坐标系中的Z向平行,由此在一些需要精确测量的地方会产生误差。
一、知识储备
假设激光传感器带有一定角度照射到水平面上,机器人在y1点、y2点分别照射将会得到x1y1,x2y2的值,已知y1y2的值,l1值=x2y2-x1y1,根据三角函数可求出θ的角度。
θ:= ACos(y1y2/l1)
求出θ角度
二、代码说明
代码如下:
!测量点1
MoveJ pBaseMeasure1,V100,fine,tool0\WObj:=wobj0;
nMeaseure1:=GInput(di_LaserScanFront);
!测量点2
MoveL offs(pBaseMeasure1,0,0,200),V100,fine,tool0\WObj:=wobj0;
nMeaseure2:=GInput(di_LaserScanFront);
!求出l1的值
nSubResult:=nMeaseure2-nMeaseure1;
!求出θ角度
nAngle:=ACos(200/nSubResult);