分享

S7-200SMART PLC断电后如何保持高速计数器当前值及常见问题解答

 PLC发烧友 2021-05-08

S7-200 SMART PLC的断电数据保持不支持高速计数器的范围设置,因此高速计数器的当前值在CPU每次断电后都会复位为数值0,要使S7-200 SMART PLC高速计数器的当前值在CPU断电重启后依然保持,可以通过以下的方式来实现。

01
保持方法


第一步:(除了第一个扫描周期之外的其它周期,需要将高速计数器0的当前值HC0传送到寄存器VD300中)

第二步:(在上电的第一周期将寄存器VD300存储的数值传送到高速计数器的当前值SMD38,保证高速计数器以VD300为初始值开始计数,并初始化高速计数器0。)

第三步:(在系统块的断电数据保持处设置寄存器VD300为断电保持区域)

打开系统块—保持范围—选择存储器类型,设置存储区区域

偏移量:可以理解温保持范围存储区的首地址,如设置为300则为VD300,设置为500则为VD500。

元素目录:既保持范围存储区的数据长度。

另外无需增加使用电池卡来实现数据的永久保持。

02
常见问题


1.为什么S7-200 SMART 高速计数器在低频率下计数正常,而在高频率下无法计数?

答:在 S7-200 中,HSC 旁路了输入滤波。而在 S7-200 SMART 中,HSC 没有旁路输入滤波,因此系统块中设置的输入滤波会影响HSC,这样可以有助于一些用户避免高频干扰。默认的滤波时间 6.4ms 可以允许计数的最高频率是78 HZ,如果要计数更高频率的信号,必须调整相应的滤波时间。

2. S7-200 SMART CPU能否支持5V编码器?

答:ST20、ST30 CPU的I0.0~I0.3,I0.6~I0.7,ST40、ST60 CPU的I0.0~I0.3可以支持。

3. 为什么高速计数器不能正常工作?

答:在程序中要使用初次扫描存储器位SM0.1来调用HDEF指令,而且只能调用一次。如果用SM0.0调用或者第二次执行HDEF指令会引起运行错误,而且不能改变第一次执行HDEF 指令时对计数器的设定。

4.高速计数器为什么会丢失脉冲?

答:(1)要先确认丢失脉冲的结论是如何得到的,通过什么方式得知丢失脉冲,这种方式是否可靠。

(2)确认脉冲发生源是否能够正常工作且与HSC的硬件输入指标匹配,比如逻辑电平阈值、最高频率等。

(3)确认传输过程是否可靠,电缆的长度与屏蔽是否都符合规范。

(4)CPU侧硬件工作正常。

(5)确认程序的使用是否正确。

(6)确认HSC的工作机制是否能与客户工艺要求匹配,比如在初始化HSC时,是否有脉冲输入,因为此时脉冲无法被检测到。

来源:PLC发烧友,作者:技成-徐陈爽,转载请注明出处!评论处大家可以补充文章解释不对或欠缺的部分,这样下一个看到的人会学到更多,你知道的正是大家需要的。。。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多