挑战:
使用适当的时间和成本,将一个研究反应堆的控制系统替换为现代的、用户友好、易于维护的控制系统。 解决方案:
使用九台运行Windows 2000以及LabVIEW的PC构成的以太网以及FieldPoint硬件,我们将运动控制硬件配置到两台PC上,将PCI-6602定时板卡配置到另一台PC上,并且编写了高效的LabVIEW代码将任务分配到九台PC上。
用五分之一的时间进行开发
在Sandia国家实验室(SNL),环形铁心研究反应堆(ACRR)过去的控制系统由于设备过时、老化等原因,对维护和升级造成了困难。由于它是Sandia国家实验室的核试验与研究反应堆,我们必须升级系统CONTROL ENGINEERING China版权所有,并达到严格的反应堆控制以及设备升级的灵活性要求。原系统的设计与安装用了10年时间。该系统使用基于386的电脑,在DOS下运行C程序,使用已经过时的数据采集、运动控制硬件以及基于PLC的通信设备。主要基于NI的软件和硬件,我们在不到两年的时间中,完成了替换系统的设计和安装。
综合系统设计
新型控制系统使用九台在Windows 2000下运行LabVIEW的Pentium-III
我们选择以太网作为通信,是因为它的耐用性以及其在工业网络与商业网络已经被广泛使用。一台交换式集线器连接所有控制系统内所有的PC以及所有六台FieldPoint FP-2000网络模块。该网络与其它网络隔离,从而提高了系统的稳定性与安全性。在其中一台PC上运行DataSocket服务器控制工程网版权所有,为九台联网PC之间提供通信平台。每一台PC都有对一个DataSocket数据集的写权限,而所有九台PC都可以读取任何一个数据集的数据。
环形铁心研究反应堆控制系统的软件使用LabVIEW 6.1编写,便于修改、维护、部署到联网的多台PC中。
信号映射与比例变换
我们建立了一个信号数据表,将标签名称与FieldPoint I/O通道或DataSocket变量进行映射。在完成编辑后CONTROL ENGINEERING China版权所有,我们将数据表保存为用TAB作为分界符的文本文件,供LabVIEW在每次启动时读取。其后,LabVIEW将标签名称映射为适当的硬件或DataSocket通道。电子表还包括高达5阶多项式的单位转换能力,可以将FieldPoint原始数据转换为工程单位。我们发现使用信号数据表十分灵活,因为使用数据表,我们可以方便地编辑信号名称、位置以及单位换算,而不用修改LabVIEW代码。在工作台测试中,FieldPoint设置与我们计划使用的现场有所不同。我们可以方便地修改信号列表,将I/O通道与可用的FieldPoint硬件进行映射,从而使得对个别组件的软件测试成为可能。
I/O仿真器
我们编写了一个LabVIEW I/O仿真器,可以不使用硬件完成软件测试。如果在settings.ini文本文件中关闭了硬件控制工程网版权所有,我们可以设置LabVIEW FieldPoint和DataSocket I/O VI读取和写入仿真I/O信号。仿真器VI导入输入信号,并返回输出信号。我们没有连接硬件CONTROL ENGINEERING China版权所有,就可以完成软件测试。这个方法对FieldPoint和DataSocket信号都适用,对数字信号和数值信号也都适用。仿真器VI使用由TAB作为分界符的文本文件进行保存和载入,方便调用不同的仿真设置。由于这些文件兼容电子表格格式,我们还可以使用Excel编辑这些设置。
所有九台PC使用一个应用程序
为九台独立的PC维护代码、创建LabVIEW可执行文件是一件困难的事情。各台PC上大部分代码是相同的。其中的困难在于我们需要九台PC同时提供多个用户接口——而不是因为代码量过大。我们将软件设计为单个程序进行运行,根各台计算机的要求,分别显示不同的程序。在启动时,程序检查本地的settings.ini文件进行自身身份获取。其后,软件载入适当的用户界面,并且运行该计算机所需要的I/O程序。通过这种方法,九台PC机上只需发布和维护一个LabVIEW程序。两台运动控制计算机被放置在离控制室约100英尺的地方,一般不使用它们进行显示。由于这些计算机包含相同的LabVIEW代码,我们可以方便地从其他七台计算机上,以只读方式运行其用户图形界面。这样,我们不回到控制室也可以方便地查看不同的参数了。
软件健壮性与看门狗
系统使用离散逻辑硬件或NI PCI-6602定时板卡处理对时间要求严格的操作。程序的扫描时间更新以及相关的循环图形显示在每一台屏幕上,就表明LabVIEW代码工作正常。环形铁心研究反应堆的主计算机控制系统以50 ms的循