怎样在 STEP 7 (TIA Portal博途) 中编写一个脉冲发生器程序【转】

标签:
博途脉冲发生器tia脉冲发生器 |
方法1
可以使用STEP7(TIA Portal)的IEC定时器来通过简单的编程产生一个脉冲发生器。
图.01展示的是如何利用两个“TON”(接通延时定时器)来实现在输出端 Q0.1 输出周期性脉冲信号的。
注:图中E0.0即为I0.0,A0.1即为Q0.1,德语关系。
|
脉冲发生器的功能 |
1 |
输入I0.0 “Release”用于激活此脉冲发生器。 |
2 |
标志 M0.1 “Out"”初始值为“False”,因此,下面一条接通延迟定时器指令“TON”开始计时。 |
3 | 当接通延时时间到达的时候,标志 M0.0 “Trig"”将被置位并且输出 Q0.1 “Trig_Out”获得 “True”信号。 |
4 |
M0.0 的“True”信号将触发上面一条“TON”指令开始计时。 |
5 |
当第二次接通延时时间到达的时候,标志 M0.1“Out”被置位。 |
6 | M0.1 的 “True”信号将断开下面一条 “TON”指令的计时条件并中断该定时器,同时使标志 “M0.0”被复位。输出 Q0.1 “Trig_Out”获得 “False”信号。 |
7 |
M0.0 的 “False”信号将中断上面一条“TON” 指令,并将 M0.1 复位。 |
8 | 标志 M0.1 的 “False”信号将重新触发下面一条“TON"”指令,然后整个过程再次重新开始。 |
方法2
您可以通过设置时钟标志来产生一个占空比为 50% 周期性脉冲信号。
|
步骤 |
1 |
打开您的STEP7项目,在设备视图中双击S7 CPU模块。 |
2 |
选择“Properties” ,并在页签中点击“System and clock memory”。 |
3 |
勾选“Enable the use of
clock memory byte”选项并为时钟标志选定一个字节的地址;比如,“100”表示
MB100。时钟标志的每一位将被分配为不同频率的脉冲信号。![]() 图.03 |
4 |
保存并编译硬件组态。然后下载到CPU。 |
5 |
标志M100.0将被分配为10
Hz频率的脉冲,也就是说它每0.1秒改变一次状态。
图04中展现了让“IN/OUT”引脚的操作数MD110循环递增的例子。比较指令连接MOVE指令使得当操作数到达99时将被复位为
0。![]() 图.04 |
方法1的优势
1. 脉冲信号为True和False的时间可以设为变量。
2. 使用这种方式可以灵活的更改脉冲信号的占空比。
方法2的优势
1. 只需更改组态设置,简单便捷。
2. 不需要用 IEC 定时器指令。
使用时钟标志说明
时钟标志的占空比是1:1。
由于时钟标志的运行周期和CPU 是异步的,在一个长扫描周期中时钟标志能变化多次,这将导致歧义。
举例:
1. 时钟标志的保持时间是100ms 。
2. 程序的扫描周期是100ms并有正负10ms的波动。
3. 如果时钟标志在几个周期后状态都为 1 ,则可能感觉在监控时有 300ms 状态没有变化。
图.05
1. 时钟标志每 100ms 发生变化
2. 扫描周期: 110ms
3. 扫描周期: 90ms
4. 在线监控时钟标志