编写一个 PLC 程序来实现流量计的累加器。 流量计具有 4-20mA 输出,代表管道中 0 至 100 升/小时的燃油流量。
流量积算仪 PLC 程序
通过使用这个逻辑,我们可以计算从管道通过的总燃料量。
当累加器值达到 5000 升时,应自动重置,或者我们可以使用 RESET 按钮重置该值。
问题方案
我们可以通过简单的逻辑来解决这个问题。 这里我们考虑使用流量计来测量最大流量为 100 升/小时的燃料。
这里我们使用 DIV 指令将这个流量从 L/H 转换为 L/Sec 进行计算。
之后,通过使用 1 秒时钟脉冲,我们将把这个值存储在另一个存储位置,并且每隔一秒就会添加和更新新值。
例如,我们认为累加器的最大值为 5000 升,因此在此值之后累加器应重置。
因此,我们会将此值与实际值进行比较并自动重置它,或者我们将提供一个 RESET 按钮来重置累加器值。
输入/输出列表
输入列表
- 复位:- I0.0
M 内存
- M0.5:- 1秒(1s)时钟脉冲
- M1.2:- 时钟脉冲的上升沿
- MD10:- 流量计最终输出(L/H)的存储字
- MD18:- 流量计最终输出(L/Sec)的存储字
- MD22:-总升添加量
- MD26: - 总燃油量(升)
累加器梯形图
程序解释
本题中,我们将考虑 S7-300 PLC 和 TIA Portal 软件进行编程。
网络 1:
这里我们采用了流量计的最终输出值,单位为 L/H (MD10)。 通过使用 DIV 指令,我们将 L/H 流量转换为 L/sec,并将最终值存储在 MD18 中。
网络 2:
这里 1s 的时钟脉冲(M0.5)每秒都会加值,并将结果存储在存储器字 MD22 中。
网络 3:
此处,出于显示目的,我们将 MD22 的值移至 MD26(以升为单位的总燃油量)中。
网络 4:
在这个网络中,我们需要重置累加器。 如果总燃油量大于 5000(5000 值是为了示例目的,它取决于流量计配置及其范围),则累加器计数应自动为零,或者我们可以通过按 RESET 按钮 (I0.0) 进行重置。
注:以上逻辑仅用于解释目的。 这里我们只考虑了缩放的最终输出,因此我们在逻辑中没有提到 4-20mA 缩放。
结果