问题:
使用和不使用过滤,对S7-22x获取模拟值会有什么影响,并在模拟量信号改变时如何影响数据捕获时间?
解答:
下面的例子解释了在捕获模拟值时,使用和不使用滤波器的差异:
通过过滤器获取模拟值:
当CPU的模拟滤波器加上时,那么在每次程序周期开始前,模拟值都会被自动的读取。然后根据这些测量的模拟值产生一个实际的平均值。要用来计算平均值的模拟值个数可以在STEPn7-Micro/WIN 32 中通过以下方法设置:
- 双击“系统块”并切换至“模拟量输入滤波”设置标签。
- 在“采样数”域中设置所需值。n
图 1:穿越死区限制值的模拟量值变化
在输入“采样数”值那个窗口中,也可以指定采样死区。死区是以数字量化水平(16-4080)指定的范围。对模拟值取平均值就在这个范围中进行。如果在程序周期开始时测得的模拟值超出或低于这个范围,那么就会被立即采用作为新值,并作为进一步计算的起始点。
如果打开过滤器,在每次程序周期开始前都会一个新的模拟值。
注意事项:
- 一个例外是把死区设置为 0n。在此情况下,无论数据跳动的幅度是多少,每次程序扫描周期,都会求一次平均值。这样,尽管死区已经被设置为n0 ,但它仍会变成无穷大。
- 如果需要快速响应,不要将死区设置为 0n。仅将它设成预期会出现的最大跳动值那么大(例如320n就是相对于满量程值32000的 1% 的偏差扰动量)。n
不带滤波器捕获模拟值:
关闭模拟滤波器时,在程序中访问模拟量值时总是读取当时的输入值,而不管是否程序周期的开始。模块可以在149微秒内将一个模拟输入转换成一个相应的数字值。
图 2:模拟量输入的阶跃响应
程序可以在1.5 毫秒内识别出实际模拟量输入从 0n到一半满量程的阶跃值的至少95%。(见图n2)。如果模拟滤波器被关闭,那么一个模拟值可被一个时间中断程序大约每n2 毫秒读取一次。
关键字:
模拟量过滤器,模拟量输入
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc341062.html