如何在python中为labview应用程序实现看门狗

时间:2015-08-26 00:01:09

标签: python labview watchdog

我有一个labview应用程序(2013 32bit),它将运行很长一段时间,有时整个labview应用程序崩溃的原因不明。我想做的是编写一个外部python脚本,作为此labview应用程序的监视器。

所以labview应用程序会定期向python脚本发送一些内容,如果python脚本没有收到,那么它会向我发送警报。

问题是我最容易实现这种单向沟通。看起来我可以使用dynamic data exchange,但这似乎有点矫枉过正。一种愚蠢的方法就是阅读和写入文本文件。任何一方实际上都没有直接的沟通方式。但这似乎并不完全可靠。

有没有更好更简单的替代方案?

2 个答案:

答案 0 :(得分:2)

如果我在你的位置,我会在5秒内发送一次本地UDP数据包。

如果您的架构是模块化的,您可以从每个模块向看门狗模块发送信号(以确保每个模块都在运行)。

我认为最好的方法是评估问题并使LabVIEW应用程序运行稳定。当然,代码中有一些东西会导致LabVIEW崩溃(例如,某些队列已满,而您的编写器端点无限等待)。

答案 1 :(得分:0)

为什么要烦扰IPC?根据您运行的系统,应该有监控正在运行的进程的方法(例如here)。您的python脚本可以检查您的labview应用程序是否正在运行。如果检测到所需的过程已经死亡,您甚至可以重新启动。