n
描述
在数学中,微分是一个函数变化率的处理。不过在实践中,通常没有数学值,而 (举例来说) 只有一个随时间变化的值。n
这个基于 STEP 7 Basic V5.5 的程序根据当前值和前一函数值(一阶导数)计算瞬时斜率。同理,从一阶导数的当前值和前一值计算出瞬时二阶导数 (“斜率的斜率”)。在例子中使用 OB35,并在硬件组态中设置 OB35 的时间间隔。必须设置这个时间间隔,单位是毫秒。n
图. 01n
例子:
例如一个轴,每圈一个脉冲(信号状态从"0" 到"1"),对信号累计计数。使用 OB35 (循环中断)中的时间值,按照时间计算信号数量的瞬时一阶或二阶导数。使用轴周长的米数,可以计算瞬时速度和轴的加速度。图.01是展示在 OB35 中的调用功能块。n
- "Differentiator" 函数块 FB1 由变量 "Start_Reset"启动。n
- 如果变量 "Start_Reset" 的值为 "False",一阶、二阶和计数值被清为零。n
- 如果要最后的数值继续可用,"Differentiator" FB 的"EN" 输入参数要在 OB1 中被去使能。n
- 数据被保留在数据块中,可再次使用。
在下表中列出了 "Differentiator" FB 的输入和输入/输出参数:
输入参数 | 数据类型 | 描述 |
start | 布尔型 | 开始计算 |
time_ms | 整型 | 循环时间(毫秒) |
count_new | 整型 | 新计数值 |
输入/输出参数 | 数据类型 | 描述 |
d | 实型 | 时间到达时的一阶导数值 |
dd | 实型 | 时间到达时的二阶导数值 |
下载:
下载附件"STEP7_V55_Differentiator" 中包含如上描述块的 STEP 7 项目。复制 "STEP7_V55_Differentiator.zip" 到一个独立的目录,双击这个文件,与这个 STEP 项目相关的目录自动解压。可以使用 STEP 7 V5.5 来打开处理。n
STEP7_V55_Differentiator.zip ( 1133 KB ) n
创作环境:
本 FAQ 是由 STEP 7 V5.5 + SP2 创建的。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc324994.html