1) 机器人关于速度变量speeddata定义如下:
V_tcp就是tcp线性速度,单位mm/s
V_ori是tcp的姿态速度,单位°/s
V_leax是直线外轴速度,单位mm/s
V_reax是旋转外轴速度,单位°/s
2) 对于线性速度很好理解,即距离(mm)/时间(s)=v_tcp(mm/s)
3) 对于重定位速度°/s,如何理解?
4) 空间点位平移用xyz表示,v_tcp速度即为在单位时间内的位移矢量;
5) 空间点位分别绕xyz轴旋转用rx,ry,rz表示。角速度通常认为不是矢量(旋转不满足交换律)
6) ABB机器人在处理重定位时的角速度时,假设角速度为伪矢量,即
ori_z表示绕z方向的旋转角度,t表示时间
7) 插入如下代码:
VARspeeddatav_rot1:=[100,10,0,0]; !v_tcp=100mm/s !v_ori=10°/s MoveL p100,v100,fine,tWeldGunWObj:=wobj0; ClkReset clock1; ClkStart clock1; MoveL reltool(p100,0,0,0Ry:=10,Rz:=10),v_rot1,fine,tWeldGunWObj:=wobj0; !绕当前点欧拉角旋转rz和ry各10度 ClkStop clock1; TPWrite "time "Num:=ClkRead(clock1);
8) 在仿真-信号分析器中设置记录定向速度,并记录实际运行时间,测试结果如下:
重定位速度为10°/s,
运行时间为1.468s.
即实际的运行角度为
运行时间为:t=ori/v_ori=14.14/10
9) 若使用如下代码
VARspeeddata v_rot1:=[100,10,0,0]; MoveL p100,v100,fine,tWeldGunWObj:=wobj0; ClkReset clock1; ClkStart clock1; MoveL reltool(p100,0,0,0Ry:=10,Rz:=20),v_rot1T:=1,fine,tWeldGunWObj:=wobj0; !该运动语句要求1s内完成,时间1s代替原有速度v_rot1参数 ClkStop clock1; TPWrite "time "Num:=ClkRead(clock1);
则机器人实际运行该语句时间为1s,实际重定位速度为22.339°/s
V_ori=ori/1
若需要得到v_ori_x,v_ori_y,
则由于旋转角度ry:rz=1:2,故v_ori_x:v_ori_y=1:2
且
可以得到v_ori_y=10, v_ori_z=20
********************************
|