资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2013/1/5,#,第,8,章 利用机器人程序的逻辑功能,第8章 利用机器人程序的逻辑功能,工业机器人逻辑编程ppt课件,KRL可为时间等待函数和信号等待函数编程。,时间等待函数,在过程可以继续运行前,时间等待函数等待指定的时间(time)。,(1)时间等待函数指令格式,(2)时间等待函数编程,1)时间等待函数的单位为s。,WAIT SEC time,KRL可为时间等待函数和信号等待函数编程。时间等待函数在过,2)最长时间为2147484s,相当于24天多。,3,)时间值也可用一个合适的变量来确定。,4,)最短的有意义的时间单元是0.012s,(插,补(IPO)节拍)。,5,)时间等待函数触发预进停止,因此无法轨迹逼近。,6,)为了直接生成预进停止,可使用指令WAIT SEC 0,。,SPTP P1 Vel=100%PDAT1SPTP P2 Vel=100%PDAT2WAIT SEC 5.25SPTP P3 Vel=100%PDAT3,(3)时间等待函数编程示例,1)具有固定时间的时间等待函数。,2)最长时间为2147484s,相当于24天多。3),上述示例运行轨迹如下图所示,在点P2处中断运动5.25s。,上述示例运行轨迹如下图所示,在点P2处中断运动5.25s。,2)具有计算出时间的时间等待函数。,3)具有变量的时间等待函数。,WAIT SEC 3*0.25,DECL REAL timetime=12.75WAIT SEC time,2)具有计算出时间的时间等待函数。3)具有变量的时间等待函数,信号等待函数,信号等待函数在满足条件(condition)时才切换到继续进程,使过程得以继续。,(1)信号等待函数指令格式,(2)信号等待,函数原理,1,)信号等待函数触发预进停止,因此无法轨迹逼近。,2,)尽管已满足了条件,仍生成预进停止。,3,)用指令CONTINUE可阻止预进停止。,WAIT FOR condition,带预进的逻辑运动示例,信号等待函数信号等待函数在满足条件(condition)时,带预进的逻辑运动及说明如下图和下表所示。,带预进的逻辑运动及说明如下图和下表所示。,(3)给信号等待函数编程示例,1)带预进停止的WAIT FOR。如下图和下表所示。,SPTP P1 Vel=100%PDAT1SPTP P2 CONT Vel=100%PDAT2WAIT FOR$IN20=TRUESPTP P3 Vel=100%PDAT3,位置,备注,1,运动在,P2,点中断。精确暂停后对输入端,20,进行检查。如果输,入端状态正确,则可直接继续运行,否则会等待正确状态。,(3)给信号等待函数编程示例SPTP P1 Vel=100%,2)在预进过程中加工的WAIT FOR(使用CONTINUE)。如下图和下表所示。,SPTP P1 Vel=100%PDAT1SPTP P2 CONT Vel=100%,PDAT2 CONTINUE,WAIT FOR($IN10 OR$IN20)SPTP P3 Vel=100%PDAT3,2)在预进过程中加工的WAIT FOR(使用CONTINUE,输入输出的设置是为了机器人与外设设备的通讯(例如工具,传感器等。),逻辑编程,Outputs:,$OUT1$OUT4096,Inputs:,$OUT1$OUT4096,$IN102=TRUE,$IN103=False,机器人控制柜,外围设备,输入输出的设置是为了机器人与外设设备的通讯(例如工具,传感器,11,可用逻辑指令,下列逻辑指令可以被选择:,时间等待功能,信号相关等待功能,开关功能,注意:时间和信号等待功能以及单独开关,脉冲输出都会使前置判断停止,可用逻辑指令下列逻辑指令可以被选择:时间等待功能信号相关等待,12,等待时间逻辑指令(,WAIT,),如果选择“,WAIT,”指令,等待时间可以被指定。这条命令会打断前置判断,即使等待时间是,0,秒。,等待时间,,=0,单位,:秒(,s,),SPTP P1 Vel=100%PDAT1 Tool1 Base1SPTP P2 Vel=100%PDAT2 Tool1 Base1,WAIT Time=2 sec,SPTP P3 Vel=100%PDAT3 Tool1 Base1,运动,在,P2,点中断,2s,等待时间逻辑指令(WAIT)如果选择“WAIT”指令,等待时,13,等待信号功能指令(,WAIT FOR,),如果“,WAIT FOR,”指令被选择,那么以下参数可以被设置:,等待信号功能指令(WAIT FOR)如果“WAIT FOR,14,等待信号功能指令(,WAIT FOR,),如果“,WAIT FOR,”指令被选择,那么以下参数可以被设置:,No.,值,说明,1,“”,插入一个外部逻辑运算(例如:,WAIT FOR,(,IN1,),AND,(,IN2,),“,NOT,”,布尔表达式取反,2,“”,插入一个内部逻辑运算(例如:,WAIT FOR,(,IN1,),AND,(,IN2,),“,NOT,”,布尔表达式取反,3,IN,,,OUT,,,TIMER,,,FLAG,,,CYCFLAG,,,user,variable,输入,/,输出,标志位。计时器,用户自定义的名字。,4,1-4096,输入,/,输出,标志位,计时器的编号,5,“”,Existing long text name,当系统处于专家模式时,编辑长文本名字(类似于注释),6,“”,不采用前置判断,“,CONT,”,采用前置判断,等待信号功能指令(WAIT FOR)如果“WAIT FOR,15,等待信号功能指令,(WAIT FOR),WAIT FOR(IN1,OR,IN2,OR,IN3),AND,(NOT OUT1 OR OUT2),OR,NOT,(IN4),内部逻辑运算,:,运算表达式要写在括号里,外部逻辑运算,:,运算表达式写在两个括号之间,.,混合的逻辑运算是允许的,一条命令最多可以有,12,个操作符,等待条件可以编写,例如以下的常用形式,:,等待信号功能指令(WAIT FOR)WAIT FOR(I,16,等待信号功能指令,(WAIT FOR),如果,WAIT,FOR,命令采用打断前置判断的形式,每一个点都会精确到达,即使条件已经满足,Example:,PTP P1 VEL=100%PDAT1,PTP P2 CONT VEL=100%PDAT2,WAIT FOR IN 1,PTP P3 VEL=100%PDAT3,P1,P2,P3,运动会被中断,直到,INPUT1,被,置位,不采用前置判断,等待信号功能指令(WAIT FOR)如果WAIT FOR命令,17,等待信号功能指令,(WAIT FOR),如果,WAIT,FOR,命令选择,CONT,模式,那么条件将会被前置判断,如果条件满足,那么就会采用逼近方式,Example:,PTP P1 VEL=100%PDAT1,PTP P2 CONT VEL=100%PDAT2,WAIT FOR IN 1 CONT,PTP P3 VEL=100%PDAT3,P1,P2,P3,可能检查,INPUT1,采用前置判断,=,前置判断,随后信号的变化将不再被关注,等待信号功能指令(WAIT FOR)如果WAIT FOR命令,18,输出功能,以下功能按想键可以被选择,:,与路径相关的脉冲功能,与路径相关的开关功能,简单脉冲功能,简单开关功能,输出功能以下功能按想键可以被选择:与路径相关的脉冲功能与路径,19,简单输出指令,(OUT),如果“,OUT,”指令被选择,那么以下参数可以被设置:,OUTPUT,的开关状态,TRUE,FALSE,3,OUTPUT,编号,1-4096,1,不采用前置判断,采用前置判断,“,”,“CONT”,4,当系统处于专家模式时,编辑长文本名字(类似于注释),“,”,Existing long text name,2,Remarks,Values,Box,1,2,3,4,简单输出指令(OUT)如果“OUT”指令被选择,那么以下参,20,简单输出指令,(OUT),Example:,LIN P1 VEL=0.2 m/s PDAT1,LIN P2 CONT VEL=0.2 m/s PDAT2,LIN P3 CONT VEL=0.2 m/s PDAT3,LIN P4 VEL=0.2 m/s PDAT4,OUT 1 State=TRUE,P1,P2,P3,P4,Output 1,在,P3,点会被置位,P3,精确到达,因为没采用前置判断,简单输出指令(OUT)Example:P1P2P3P4Out,21,简单输出指令,(OUT),Example:,LIN P1 VEL=0.2 m/s PDAT1,LIN P2 CONT VEL=0.2 m/s PDAT2,LIN P3 CONT VEL=0.2 m/s PDAT3,LIN P4 VEL=0.2 m/s PDAT4,OUT 1 State=TRUE CONT,P1,P2,P3,P4,可能在这个点,OUTPUT1,就被置位了,因为采用了前置判断,P3,点是逼近运动,简单输出指令(OUT)Example:P1P2P3P4可能在,22,简单脉冲指令,(PULSE),如果“,PULSE,”指令被选择,那么以下参数可以被设置:,2,3,4,5,1,不采用前置判断,采用前置判断,“,”,“CONT”,4,OUTPUT,的开关状态,TRUE,FALSE,3,Output,编号,1-4096,1,脉宽 单位:秒,0.1 3,5,当系统处于专家模式时,编辑长文本名字(类似于注释),“,”,Existing long text name,2,Remarks,Values,Box,简单脉冲指令(PULSE)如果“PULSE”指令被选择,那,23,简单脉冲指令,(PULSE),“,高电平脉冲,”:,STATE=TRUE,0,1,Time,OUT 1,Time,0,1,Time,OUT 1,Time,“,低电平脉冲,”:,STATE=FALSE,简单脉冲指令(PULSE)“高电平脉冲”:STATE=TR,24,同步输出指令,(,基于,PTP,LIN,CIRC),可以与开始和结束点相关联而触发,这些应用包括,:,在点焊时开关焊枪,在弧焊时起弧或断弧,在涂胶时关闭或打开胶枪,.,同步输出指令“,SYN OUT”,同步输出指令(基于 PTP,LIN,CIRC)可以与开,25,在路径的开始或者结束处输出信号,如果“,OUT,”指令被选择,那么以下参数可以被设置:,(基于,START or END,),1,2,3,4,5,基于起点还是结束点,“START”,“END”,4,OUTPUT,的开关状态,TRUE,FALSE,3,Output,编号,1-4096,1,开关动作延时,(,单位,ms),-1000 +1000,5,当系统处于专家模式时,编辑长文本名字(类似于注释),“”,Existing long text name,2,Remarks,Values,Box,在路径的开始或者结束处输出信号如果“OUT”指令被选择,那么,26,在路径的开始或者结束处输出信号,Example:,LIN P1 VEL=0.3 m/s CPDAT1,LIN P2 VEL=0.3 m/s CPDAT2,SYN OUT 1,State=TRUE at START Delay=20 ms,SYN,OUT 2 State=TRUE at END Delay=-20 ms,LIN P3 VEL=0.3 m/s CPDAT3,LIN P4 VEL=0.3 m/s CPDAT4,P1,P2,P3,P4,+,-,起始点,终点,起始点和终点都是精确到达的点,:,Switching limit*),*),触发限制,:,如果信号发送的位置超出该限制位,控制器会自动调整成在该限位上发送,.,在路径的开始或者结束处输出信号Example
展开阅读全文