0

我正在使用 LabVIEW 来操作和记录来自废水反应器的数据。我目前设置了一个程序来连续监测 pH 值,然后使用 pH 数据打开酸泵或碱泵。

我的问题是我想监测和记录 24/7 的 pH 数据,但我只希望我的酸/碱泵每三个小时激活一小时。理想情况下,我想将这些操作时间与计算机的时钟联系起来。

例如,从上午 10:05 到上午 11:05,我希望我的酸泵和碱泵使用来自 pH 传感器的数据,根据测量的 pH 值打开或保持关闭。我的目标 pH 值为 7.0 +/- 0.3。例如,如果测得的 pH 值为 6.5,则基础泵将打开,直到 pH 达到 6.7。如果测得的 pH 值为 7.5,酸泵将打开,直到达到 7.3 的 pH 值。如果 pH 值为 7,则两个泵都将保持关闭状态。到目前为止,我的代码是这样做的,但是泵会不断地打开和关闭。

在 11:05,两个泵都将“停用”并关闭,但应继续测量 pH 值。然后,在初始泵启动时间后 3 小时(上午 10:05 后 3 小时 = 下午 1:05,或上午 11:05 停止时间后 2 小时)此循环将再次开始,再次运行一小时。我希望这个循环一遍又一遍地继续(即每 3 小时响应 1 小时的 pH 测量值)。

是否可以在 LabView 中执行此操作?(我对LabVIEW也非常陌生)。谢谢!

代码片段

4

1 回答 1

1

是的,当然可以做到这一点。

实现您所描述的最简单方法是在循环内的泵控制代码中添加额外的逻辑。每次循环迭代,获取当前时间(例如,使用Get Date/Time in Seconds)并计算是否应启用泵(您可能会发现Quotient 和 Remainder有用)。然后,如果 pH 计算和启用时间计算都产生 True 输出,则可以使用And函数启用每个泵。

我建议使用编程调色板中的函数来进行大于、小于和等操作,因为在我看来,它们占用的图表空间更少,并且比 Express 函数更容易理解。

一种更复杂和可扩展的方法可能是将 pH 测量和泵控制分成两个不同的回路,并使用某种机制将最新的 pH 值传输到泵控制回路(通知器、局部变量、功能全局或通道线都将在这里是选项)。状态机将成为泵控制逻辑的良好模式。

于 2019-09-23T12:30:47.613 回答