S7-1200/1500在博图中的定时器为IEC定时器,包含四种定时器:
生成脉冲定时器(TP)
接通延时定时器(TON)
关断延时定时器(TOF)
时间累加器(TONR)
它们在博图中使用时,所使用的数据类型为IEC_TIMER。它们没有指定的定时器号和数量,每调用一次,都要产生一个相应的背景数据块。博图内在OB1、FC、FB块中调用时,使用定时器的方法各不同,下面举例说明:
用法1:在OB1块中,任意调用定时器块,如图所示:填写各管脚参数,可正常使用,在系统块中自动产生相应的DB数据块,调用N个定时器,则产生N个DB数据块。如下图DB2、DB4为相应定时器的数据块。名称可用默认的或重新命名。
用法2:在博图中,提前添加一个全局DB块,起名为【定时器块】,在这个块内,可建立多个定时器,如T1、T2,数据类型为【IEC_TIMER】,可在任意块中调用。这样的好处是只使用了一个共享的DB块
用法3:在FC块中定时器的应用
添加FC块,在FC块中调用定时器TON,
(方法1),调取TON定时器,如下图点"取消",在指令上方选用全局【定时器】块内的"T3"为该定时器。
(方法2),在FC中调用定时器时,如上图选用【参数实例】,在指令上方自动出现一个默认的定时器,同时在FC块接口参数表中【InOut】下,生出一个名为IEC_Timer_0_Instance,数据类型为TON_TIME的定时器。如下图
在OB1中调用该FC块,则在FC块左侧接口Instance外,需连接一个全局定时器DB块中的如T1定时器或另建一个数据类型为IEC_TIMER的定时器DB块。
也可在【InOut】下,提前定义好一个定时器,如图中的【定时器1】,数据类型为IEC_TIMER。如下图在FC块中的应用
用法4:在FB块中的应用
添加FB块,在FB块中调用定时器
方法1,点"取消",在指令上方选用全局【定时器】块内的"T4"为该定时器。
方法2,调用定时器时,选用【多重实例】,指令上方自动出现一个默认的定时器,同时在FB块接口参数表中【Static】下,生出一个名为IEC_Timer_0_Instance,数据类型为TON_TIME的定时器,而不在【InOut】下。
也可在【Static】下,提前定义好一个定时器,如图中的【定时器1】,数据类型为IEC_TIMER
在OB1下调用FB块,如图,则不像FC块,左侧管脚会出现连接定时器的管脚
总之,博图中如多次调用定时器,最好考虑用多重背景方法来使用。它在FC、FB块中调用时,注意使用方法也不同。