用西门子PLC编写时钟脉冲发生器的几种方法介绍
一、 用定时器产生脉冲输出:
1、 用S7-200编程:
(1)、多路脉冲输出发生器
输出口QB2的各位分别输出8种频率脉冲:50、25、12.5,,,,,即以50HZ为最高频率,依次2、4、6、16、32、64、128分频的频率脉冲。供不同频率选择。
(2)、单路脉冲发生器:用二个定时器构成正负脉宽都=10ms的单路频率脉冲,由Q0.2口输出
2、 用S7-300 编程:
(1)、S7-300手册介绍的时钟脉冲发生器
(2)、该程序如将脉冲输出式定时器(SE)改为通电延时式定时器(SD),可不用转移指令,同样可实现脉冲输出的目的,见下图:
二、 用定时中断的方法产生脉冲输出:
1、 S7-200编程:
SBR0:设置10ms定时中断初始化子程序:
定时10ms时间中断的 INT0 中断程序
2、 用S7-300 编程:
A:用定时中断的方法产生时钟脉冲
(1)、硬件组态:设置周期中断 OB35 时间设置为:10ms
(2)、在OB35里编程:
B:用周期/时钟存储器的方式产生时钟脉冲:
(1)、硬件组态:见下图:在时钟存储器的小方框打对号,在填写存储器的地址“100”,则运行时,MB100就构成固定频率的方波时钟发生器,其M100.0位输出频率为10HZ的方波信号,其它位输出信号的频率为10HZ的2、4、8。。。分频值。
三、 利用扫描周期产生振动频率脉冲:
四、 用高速输出指令做时钟脉冲发生器
以上一、二、两种方式产生的时钟脉冲,由于受定时器最小定时时间=1ms的限制,产生的时钟脉冲频率最高=500HZ,要产生高于500HZ的时钟频率,就得用高速输出指令做时钟脉冲发生器,如S7-200有这个功能,不过PLC应选用晶体管输出的PLC,而且编程比上诉各种方法所用的指令多,见下图: