1C31150G01西屋
1C31150G01西屋
1C31150G01西屋
1C31150G01西屋
一、简介
WorldZones的作用是在机器人位于用户专门定义的区域内时,停止该机器人或设置一个输出信号。
有如下特性:
1、当TCP或者关节值进入某个区间或离开某个区间的时候,Set一个输入输出信号;
2、当机器人到达某个区间的边界时,停止机器人;
3、可以定义长方体、圆柱体、球体以及关节值区域;
4、可以通过启动自动激活,也可以使用程序进行激活与禁用;
5、手动、自动都有效;
6、如果是多机器人系统,每个机器人都有自己独立的WorldZone。
二、典型应用
1、当两台机器人的工作区域部分重叠时。可通过WorldZones监控来安全地消除这两台机器人相撞的可能性;
2、当该机器人的工作区域内有某种性障碍或某些临时外部设备时。可创建一个禁区来防止机器人与此类设备相撞;
3、指明相关机器人正处在一个“允许用可编程逻辑控制器(PLC)来开始执行程序”的位置;
4、出于安全考虑,不可使用此功能进行人员安全的保护。
三、数据类型
数据类型
描述
wztemporary
wztemporary的作用是识别临时全局区域,并可用在RAPID程序中的任何位置。
可通过RAPID指令来禁用、重新启用或擦除临时全局区域。当载入一段新程序时,或当从MAIN例程的起点处开始执行程序时,系统便会自动擦除临时全局区域。
wzstationary
wzstationary的作用是识别固定全局区域,并仅能用在与事件“通电”相关联的一则事件例程中。定义事件例程方面的信息请参见操作员手册-带FlexPendant的IRC5。
固定全局区域会始终处于激活状态,而重启(先关闭电源然后再打开电源,或更改系统参数)则会再次激活此类区域。无法通过RAPID指令来禁用、启用或擦除固定全局区域。
如果涉及到安全问题,则应使用固定全局区域。
shapedata
shapedata的作用是描述一个全局区域的几何形状。
可将全局区域定义为4种不同的几何形状:
•一个方盒,所有侧面都与全局坐标系平行
•一个圆柱体,与全局坐标系的z轴平行
•一个球体
•针对机器人轴和/或外轴的一个关节角区
VARshapedatavolume;
四、指令
1、WZBoxDef-定义一个箱形全局区域
WZBoxDef(WorldZoneBoxDefinition)用于定义拥有直线箱形状,且各侧均与世
界坐标系各轴平行的全局区域。
如:
VARshapedatavolume;
CONSTposcorner1:=[200,100,100];
CONSTposcorner2:=[600,400,400];
...
WZBoxDef\Inside,volume,corner1,corner2;
定义坐标与世界坐标系各轴平行,且由对角corner1和corner2所定义的直线箱。
用机器人定义,需要使用WobJ0.
变元WZBoxDef[\Inside]|[\Outside]ShapeLowPointHighPoint
2、WZCylDef(全局区域圆柱体定义)为,用于定义外形为圆柱形,且圆柱轴与世界坐标
系z轴平行的全局区域。
VARshapedatavolume;
CONSTposC2:=[300,200,200];
CONSTnumR2:=100;
CONSTnumH2:=200;
...
WZCylDef\Inside,volume,C2,R2,H2;
定义底圆ZXC2、半径R2且高度H2的圆柱体。
变元WZCylDef[\Inside]|[\Outside]ShapeCentrePointRadiusHeight
3、WZSphDef-定义球形全局区域
VARshapedatavolume;
CONSTposC1:=[300,300,200];
CONSTnumR1:=200;
...
WZSphDef\Inside,volume,C1,R1;
根据其ZXC1及其半径R1,定义命名为volume的球体。
变元WZSphDef[\Inside]|[\Outside]ShapeCentrePointRadius
4、WZHomeJointDef-定义内部接头的全局区域
WZHomeJointDef(WorldZoneHomeJointDefinition)用于定义接头坐标系中的
全局区域,以便将机械臂和外轴作为HOME或SERVICE位置。
VARwzstationaryhome;
...
PROCpower_on()
VARshapedatajoint_space;
CONSTjointtargethome_pos:=[[0,0,0,0,0,-45],[0,9E9,9E9,9E9,9E9,9E9]];
CONSTjointtargetdelta_pos:=[[2,2,2,2,2,2],[5,9E9,9E9,9E9,9E9,9E9]];
...
WZHomeJointDef\Inside,joint_space,home_pos,delta_pos;
WZDOSet\Stat,home\Inside,joint_space,do_home,1;
ENDPROC
变元WZHomeJointDef[\Inside]|[\Outside]ShapeMiddleJointValDeltaJointVal
有关某些轴的值9E9意味着不应该监控该轴。编程期间,
无效外轴亦得出9E9。
5、WZLimJointDef-定义有关接头内限制的全局区域
WZLimJointDef(WorldZoneLimitJointDefinition)用于定义接头坐标系中的全
局区域,以便将机械臂和外轴用于工作区域的限制。
VARwzstationarywork_limit;
...
PROCpower_on()
VARshapedatajoint_space;
CONSTjointtargetlow_pos:=[[-90,9E9,9E9,9E9,9E9,9E9],[-1000,9E9,9E9,9E9,9E9,9E9]];
CONSTjointtargethigh_pos:=[[90,9E9,9E9,9E9,9E9,9E9],[9E9,9E9,9E9,9E9,9E9,9E9]];
...
WZLimJointDef\Outside,joint_space,low_pos,high_pos;
WZLimSup\Stat,work_limit,joint_space;
ENDPROC
程序执行和点动期间,固定式全局区域work_limit的定义和启用,将机械臂轴1的工