关于PLC的脉冲输出(S7-300)

2023-03-15,,

1.   关于脉冲输出

脉冲输出的方法有很多:

如果要产生占空比为50%的脉冲信号:

①     用S7-300PLC的时钟存储器

右键点击PLC,选中时钟存储器,默认存储字节为0。

各时钟存储器的周期和频率如下表所示:

②     采用循环中断

使用循环中断OB35,设置中断执行时间为1000ms

在OB35块中编写程序

程序在第一次执行时,因为M10.0为0,所以给M10.0置位

第二次执行时,M10.0为1,所以M10.0复位。

我们设定OB35执行的时间为1000ms,这样,M10.0就会相隔1s循环置位、复位,就产生的周期为2s的脉冲。

当然如果我们要修改脉冲的周期,只要修改OB执行的时间就可以了,比用PLC的时钟存储器要更灵活。

③    采用定时器定时自动复位的方式产生脉冲

当然我们还可以采用我们的老朋友定时器来产生脉冲

网络1是相隔1s自动复位,网络2为单按钮启停。

这样,第一次M10.0为1时,Q0.0置位

第二次M10.1为1时,Q0.0复位

Q0.0上就可以产生周期为2s占空比为50%的脉冲信号了。

关于网络2的单按钮启停其实也有很多种实现方式,当然这又是另外的故事了。

产生占空比可调的脉冲信号

①    采用两个定时器,如下图,这也是教科书上都会介绍的一种方式。

下图可以产生一个周期为3s的脉冲信号

②   采用IEC定时器实现

S7-300里面我不太喜欢用IEC定时器的原因是因为每用一个定时器都会产生一个DB背景数据块。用S5定时器会更方便一点。

③    用定时器和比较指令

第一个程序段的目的是定时器循环计时,它的当前值是在0-3s之间变化的。

第二个程序段在进行比较的时候要注意,定时器的ET参数为:Elapse time即时间流逝值。是一个32位的time型变量。只要它大于1s时就让它接通。这样Q0.0上也就产生了如上的脉冲信号。

用S5定时器会有些不太一样:

S5定时器里BI的值为剩余时间的ms数除以10,所以在用比较指令的时候,把MW30和200做比较,也就是剩余时间为2s时让Q0.0接通。这样Q0.0上输出的脉冲也是1s低2s高这个样子。

关于定时器的例子我先写这么多了,灵感来自于学生在实验的过程中出现了很多问题,所以就想记录一下。肯定脉冲输出的实现方式还有很多很多,脑子里现在还有几种想法没有放上来,比如可以用自复位的通电延时结合脉冲定时器来实现。

我想如果上面的都掌握了,那么定时器的使用就不是问题了。需要的时候用一个最简单的办法就可以了。

关于PLC的脉冲输出(S7-300)的相关教程结束。

《关于PLC的脉冲输出(S7-300).doc》

下载本文的Word格式文档,以方便收藏与打印。