浔之漫智控技术(上海)有限公司总部
主营西门子模块 , PLC模块 , 变频器模块 , 触摸屏模块
西门子触摸屏一级经销商 自贡西门子代理商
观看西门子触摸屏一级经销商 自贡西门子代理商视频:

西门子触摸屏一级经销商 自贡西门子代理商

西门子触摸屏一级经销商 自贡西门子代理商西门子触摸屏一级经销商 自贡西门子代理商

6ES72881SR200AA1
6ES72881ST200AA1
6ES72881SR300AA1
6ES72881ST300AA1
6ES72881SR400AA1
6ES72881ST400AA1
6ES72881SR600AA1
6ES72881ST600AA1

变频1.jpg

上海SIEMEN西门子触摸屏授权总代理商,上海西门子触摸屏授权一级代理商,金华西门子模块授权一级代理商,宁波西门子CPU模块一级代理商

西门子交换机模块,北京西门子电源模块代理商,杭州西门子逻辑控制模块。深圳西门子伺服电机模块代理商,广州西门子DP电缆代理商,

西门子变频器代理商,荆门西门子PLC模块授权一级代理商,湖北西门子电线电缆授权代理商,上海西门子S7-200CPU系列代理商,西门子

S7-1200CPU系列代理商,SIEMENS西门子模块授权一级代理商,西门子SIEMENS低压断路器一级供应商,西门子低压断路器

代理商,西门子S7-500系列代理商

S7-200系列PLC带参数子程序中如何使用定时器功能

导读

当我们在设计程序时,碰到具有相同的控制要求,如需要实现对多台电机进行控制,而这些电机的控制方式是相同的,或实现对某种重复的算法,如模拟量换算。


基于这种情况,我们在设计程序时,往往会考虑编写带参数的子程序,然后通过重复调用这子程序,给该子程序的形参赋予不同的实参,这样可提高编程的效率和程序的课移植性。


然后受到S7-200系列PLC本身性能的问题,有一些功能并不能进行参数化,如沿脉冲指令,定时器指令和计数器指令,当使用到这些指令时你会发现无法进行参数化,这样在子程序中使用这些指令后,在一个扫描周期内多次执行时就会出现问题。那么如何处理呢?


二、子程序中沿脉冲指令的处理方法

当子程序中无法使用沿脉冲指令时,我们可以根据沿脉冲指令的原则自行通过了逻辑关系的搭建方式去编写沿脉冲指令。


上升沿的含义:

本次的状态与上一次的状态进度对比,若上一次的状态为0,而本次的状态为1,则说明产生上升沿,那么可以把上一次的状态取反,然后与本次的状态进行“与”运算,运算完后把本次的状态再赋值给上一次的状态,则“与”运算的结果就是一个上升沿的输出。


下降沿的含义:

本次的状态与上一次的状态进行对比,若上一次的状态为0,本次的状态为1,则说明产生下降沿,那么可以把本次的状态取反,然后与上一次的状态进行“与”运算,运算完后把本次的状态再赋值给上一次的状态,则“与”运算的结果就是一个下降沿的输出。


基于这些含义,可以不用调用上升沿和下降沿指令就可编写出上升沿和下降沿的功能,这样当在带参数子程序中应用到上升沿和下降沿时就不会受到限制。如下为相应的变量表和对应的程序:





三、定时器在带参数程序中的处理方法

对于定时器的处理可以使用沿脉冲配合指令BGN_ITIME和CAL_ITIME指令以一起可实现计算时间间隔差。通过这个时间间隔差可替代定时器的功能,这样在子程序中可以不用使用定时器指令来做定时功能,可避免定时器指令无法参数化的情况实现。


BGN_ITIME指令:捕获开始时间间隔指令,可以读取内置1毫秒计数器的当前值,并将该值存储在 OUT 中。


CAL_ITIME指令:捕获间隔时间指令,计算间隔时间指令计算当前时间与 IN 中提供的时间的时间差,然后将差值存储在 OUT 中。


定时器的功能如下程序所示

(1)变量表的建立



(2)使用形参编写的程序



(3)调用的块程序



注:程序中的定时时间以ms为单位,如程序中的定时设定值为:10000ms。

西门子触摸屏一级经销商 自贡西门子代理商                         西门子触摸屏一级经销商 自贡西门子代理商

展开全文