产品详情
西门子S7-200 SMART PLC CPUST20代理商
6ES72881SR200AA0 | S7-200 SMART,CPU SR20,标准型 CPU 模块,继电器输出,220 V AC 供电,12 输入/8 输出 |
6ES72881ST200AA0 | S7-200 SMART,CPU ST20,标准型 CPU 模块,晶体管输出,24 V DC 供电,12 输入/8 输出 |
湖南西乾西门子 代理商 现货供应 控制器模块
如何在S7-200 CPU断电后保持高速计数器的当前值
1 问题描述
S7-200 的断电数据保持不支持高速计数器的范围设置,因此高速计数器的当前值在CPU每次断电后都会复位为数值0。要使S7-200高速计数器的当前值在CPU断电重启后依然保持,可以通过以下的编程来实现。
2 实现方法
在此以高速计数器0的模式1为例来说明如何在S7-200 CPU断电后保持高速计数器的当前值,具体可参考以下三个部分的编程来实现:
首先,在除了个扫描周期之外的其它周期,将高速计数器0的当前值HC0传送到寄存器VD1000中,如下图1所示,以保证寄存器VD1000始终存储的是HC0的当前值。
图1 传送当前值到寄存器
其次,在上电的周期将寄存器VD1000存储的数值传送到高速计数器的当前值,保证高速计数器以VD1000为初始值开始计数,并初始化高速计数器0,如下图2所示:
图2 初始化HSC0
后,在系统块的断电数据保持处设置寄存器VD1000为断电保持区域,如下图3所示。需要注意的是CPU224及其以上的型号多支持100个小时(理论值)的断电保持时间,如果断电时间超过100个小时的话,可以考虑增加电池卡;或者将当前值保存到MB0-MB13这14个字节的存储单元。
图3 设置断电数据保持
关键词
S7-200,高速计数器,断电数据保持
如何在S7-200 PLC中判断A/B相正交计数器的方向
1.A/B 相正交计数器原理
S7-200 PLC高速计数器模式9﹑10﹑11支持A/B相正交计数器,其原理是判断A/B相正交脉冲输入信号A相超前或落后B相90度相位角,对应A/B相正交计数器增或减计数。
2.如何在S7-200 PLC中判断A/B相正交计数器方向
根据以上原理,比较相邻两次定时中断采集的高速计数器当前值大小,我们可以在S7-200 PLC中判断A/B相正交计数器的方向。具体可参考以下三部分编程来实现:
首先,设置定时中断时间(可设为0-255ms内任意值)并连接该中断。如下图1所示:
图1启用定时中断
其次在相邻两次定时中断执行时,分别采集高速计数器当前值并将其传送到两个不同寄存器地址中,如下图2所示:
图2采集高速计数器当前值
后,在程序中比较相邻两次定时中断采集的高速计数器当前值大小,即可实现S7-200PLC中A/B相正交计数器的方向判断。
注意:判断方向的时间间隔是设置的定时中断周期的两倍。如下图3所示:
(1) 状态1的高速计数器数值大于状态0的高速计数器数值,A/B相正交计数器增计数;
(2) 状态1的高速计数器数值小于状态0的高速计数器数值,A/B相正交计数器减计数。
图3 A/B相正交计数器方向判断
关键词
S7-200,A/B相正交计数器,判断方向