S7-300400PLC秒脉冲实现方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S7-300/400PLC秒脉冲实现方法【工控老鬼】
方法一:CPU 用时钟存储器
硬件组态中CPU属性"Cycle/Clock Memory"中"Clock Memory"设定的Memory Byte,可以看下帮助,每一位都有固定频率在"Propreties"窗口中点击"Cycle/Clock Memory"(循环/时钟存储器)选项卡,可以设置"Scan cycle monitoring time"(以ms为单位的扫描循环监视时间),默认值为150ms.如果实际的循环扫描时间超过设定值.CPU将进入STOP模式."Scan cycle Load from Communication "用来限制通信处理占扫描周期的百分比,默认值为20%
时钟脉冲是一些可供用户程序使用的占空比为1:1的方波信号,一个字节的时钟存储器的每一位对应的一个脉冲如下:
字节位 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
频率(Hz) 0.5 0.62 1 1.25 2 2.5 5 10
周期(秒) 2 1.6 1 0.8 0.5 0.4 0.2 0.1
如果要使用时钟脉冲,首先要选中"Clock Memory'(时钟存储器)选项,然后设置时钟存储器(M)的字节地址.假设设置的地址为100(即MB100),有上表可知,M100.7周期为2s,如果用M100.7的常开的触点来控制Q0.0的线圈,Q0.0将以2s的周期闪烁(亮1s,熄灭1s).
"OB85-Call up at I/O access error"用来预设置CPU对系统修改过程映像时发生的I/O访问错误的响应.如果希望在出现错误时调用OB85,建议选择"Only for incoming and out going error"(仅在错误产生和消失),相对于"On each individual access"(每次单独的访问),不会增加扫描循环时间.
方法二:自己编写延时程序,并设定好延时时间,当时间到后便执行存储程序块调用,该方法受程序循环时间的影响,不是特别精确,如果是要求不太严格的情况下可以使用本方法。
方法三:利用等时中断组织块来实现等时中断,如在OB35中调用存储程序块,实现等时存储,该方法较精确。
方法四:可以利用SFC1读取CPU时钟,通过时钟值的差额计算可以实现等时间隔存储。(此方法与我介绍的S7-200 的第三种方法相似在此就不具体写编程方法了)
方法五:如果用外部等时间间隔触发信号的话,利用硬件中断实现也是可以的。