如何利用西门子S7-200产生时钟脉冲

时间:2023-03-21来源:佚名
在实际应用中经常遇到这样的情况,在一个固定的时间周期内控制某继电器位打开(ON)一段时间,关闭(OFF)一段时间。比如,用开关量输出驱动指示灯闪烁或驱动蜂鸣器发出时断时续的响声。
总结了在西门子S7-200程序中4种实现此功能的方法。下面分别介绍一下:
第一种方法,使用特殊存储器位SM。
特殊存储器位SM0.4提供1分钟时钟脉冲,该脉冲在1分钟的周期内关闭(OFF)30秒,打开(ON)30秒。
特殊存储器位SM0.5提供1秒钟时钟脉冲,该脉冲在1秒钟的周期内关闭(OFF)0.5秒,打开(ON)0.5秒。
特殊存储器位SM0.6提供扫描周期时钟脉冲,该脉冲为一次扫描打开,然后下一次扫描关闭。
这种方法使用简单,但时钟周期和开关时间固定,很多情况下不能满足要求。
第二种方法利用时基中断程序
时基中断包括定时中断和定时器中断。
定时中断可用来支持一个周期性的活动,周期时间以1ms为计量单位,周期时间可从5ms~255ms。对于定时中断0,把周期时间写入SMB34,对于定时中断1,把周期时间写入SMB35。每当达到定时时间值,相关定时器溢出,执行中断处理程序。
定时器中断可以利用定时器来对一个指定的时间段产生中断。这类中断只能使用1ms通电和断电延时定时器T32和T96。当所用定时器的当前值等于预设值时,在主机正常的定时刷新中,执行中断。下面分别给出程序例子:
ORGANIZATION_BLOCK 主程序:OB1
TITLE=主程序:利用定时中断产生时钟脉冲-Author:Smartsys-
BEGIN
Network 1
LD SM0.1
MOVB 100, SMB34
ATCH INT0, 10;将中断事件(EVNT)与中断例行程序号码(INT)相联系,并启用中断事件。
ENI;允许中断
END_ORGANIZATION_BLOCK
INTERRUPT_BLOCK INT_0:INT0
TITLE=中断程序:利用定时中断产生时钟脉冲-Author:Smartsys-
BEGIN;开始
Network 1
LD SM0.0
INCB VB0
Network 2
LDB>= VB0, 10
XORB 2#1, QB0
XORB VB0, VB0
END_INTERRUPT_BLOCK

ORGANIZATION_BLOCK 主程序:OB1
TITLE=主程序:利用定时器中断产生时钟脉冲-Author:Smartsys-
BEGIN
Network 1
LD SM0.1
ATCH INT0, 21
ENI
Network 2
LD SM0.0
LPS
AN M0.0
TON T32, 1000
LPP
A T32
= M0.0
END_ORGANIZATION_BLOCK
INTERRUPT_BLOCK INT_0:INT0
TITLE=中断程序:利用定时器中断产生时钟脉冲-Author:Smartsys-
BEGIN
Network 1
LD SM0.0
XORB 2#1, QB0
END_INTERRUPT_BLOCK

这种方法时钟周期可以调整,但打开和关闭时间相同。把程序代码拷贝下来,粘贴到一个文本文件中,然后就可以在Step7-MicroWIN中导入。
前面我们已经介绍了两种方法,下面介绍另外两种方法
第三种方法,利用通电和断电延时定时器来实现,此方法不但可以调整时钟周期,还可以产生打开和关闭时间不同的时钟脉冲。下面给出两段例子程序。
第一段例子程序,我们用两个定时器产生时钟脉冲,实现原理是定时器1计时到位置位输出继电器位,同时启动定时器2开始计时,定时器2计时到位复位输出继电器位,同时启动定时器1开始计时,循环往复。两个计时器预设值的和为时钟周期,分别调整定时器1的预设值或定时器2的预设值,即可实现产生打开和关闭时间不同的时钟脉冲。
ORGANIZATION_BLOCK 主程序:OB1
TITLE=主程序:用两个定时器产生时钟脉冲-Author:Smartsys-
BEGIN
Network 1
LD SM0.0
LPS
AN Q0.0
TON T37, 10
LPP
A T37
S Q0.0, 1
Network 2
LD SM0.0
LPS
A Q0.0
TON T38, 20
LPP
A T38
R Q0.0, 1
END_ORGANIZATION_BLOCK

第二段例子程序,我们用一个定时器同样可以实现上段例子的效果。实现原理是用一个定时器产生一个周期循环,即计时器到位复位重新计时,用一个比较指令,当计时器当前值大于某值时,置位输出继电器,计时器计时到位时复位输出继电器,调整计时器预设值可调整时钟周期,改变比较值,可实现产生打开和关闭时间不同的时钟脉冲。
ORGANIZATION_BLOCK 主程序:OB1
TITLE=主程序:用一个定时器产生时钟脉冲-Author:Smartsys-
BEGIN
Network 1
LD SM0.0
LPS
AN M0.0
TON T37, 30
LRD
AW>= T37, 10
S Q0.0, 1
LPP
A T37
R Q0.0, 1
= M0.0
END_ORGANIZATION_BLOCK

对于一般要求精度不高的应用,我们推荐使用这种方法。

    相关阅读

    软启动器12个故障代码

    软启动器常见故障问题的故障代码,参考如下: 1、故障代码Err01 故障类容:→断相;说明:主电路任意一相断相。 2、故障代码Err02 故障类容:→过电流;说明:超过额定电流12倍。 3、故...
    2022-11-26

    电焊机电流调到多少合适,根据焊条大小及焊接对象做调整

    2.5焊条电焊机电流大小应根据焊条的种类来定: 1、一般碳钢焊条焊接电流调到100A左右,不锈钢焊条稍低点。 2、焊方管2.5焊条电流: 60-80A电焊机利用正负两极在瞬间短路时产生的高温电...
    2023-01-09
    电焊机电流调到多少合适,根据焊条大小及焊接对象做调整

    电动车电池看参数的三种方法,轻松查看电动车电池型号

    新买的电动车电池是什么型号的,很多人并不是很清楚,而在需要换电池时搞不清楚型号就会很麻烦,那么电动车电池规格怎么,怎么来识别电动车电池的型号,与电工天下小编一起来...
    2022-11-30

    电动机的启动电流如何计算,电动机启动电流计算公式

    有关电动机启动电流的计算方法,三相电机启动电流瞬时是正常的多少倍,电动机的启动电流是额定电流 的多少,电动机 启动电流计算公式与实例,感兴趣的朋友参考下。 电动机启动...
    2022-11-22
    电动机的启动电流如何计算,电动机启动电流计算公式

    电焊机怎么调,电流与电压调整方法

    电焊机的调整方法,具体参考如下: 1、先把电流旋钮调到最小,把电压旋钮调到最大,试焊一下,不要动电压旋钮,逐步调大电流,直到能正常焊接时停上。 2、反过来,把电流旋钮先...
    2023-01-09
    电焊机怎么调,电流与电压调整方法

    【电力用户怎么分级,电力用户分类标准】

    【电力用户怎么分级,电力用户分类标准】 有网友咨询,电力用户怎么分级,针对分级的问题,电力用户分为一级用户至三级用户,那么电力用户分类标准是怎么样的,电力客户分级和...
    2022-12-10
    【电力用户怎么分级,电力用户分类标准】

    插座发出滋滋滋的声音是什么原因

    首先最有可能的原因就是电源线与插座接线端子接触不牢固,而造成的虚接,进而产生电弧也就是我们俗称的电火花,就会发出的滋滋声音。 插座内由于质量问题,电源接线柱与插头触...
    2022-11-10
    插座发出滋滋滋的声音是什么原因

    异步电动机正反转控制plc接线图及梯形图(图文)

    【 异步电动机 正反转控制plc 接线图及梯形图 】 用plc实现异步电动机的正反转控制,如何设计控制线路图,如何分配i/o,都是绘制plc接线图的关键,另外异步电动机正反转控制设计 过...
    2022-12-11
    异步电动机正反转控制plc接线图及梯形图(图文)

    网站栏目