綜合系統(tǒng)設(shè)計
新型控制系統(tǒng)使用九臺在Windows 2000下運行LabVIEW的Pentium-III PC、FieldPoint I/O硬件、PCI-6602定時硬件、Delta Tau運動控制硬件以及以太網(wǎng)通信設(shè)備。最終的系統(tǒng)具有友好的用戶操作員界面,并且所使用的設(shè)備在維護和升級方面不僅更加方便而且成本也更低。
我們選擇以太網(wǎng)作為通信,是因為它的耐用性以及其在工業(yè)網(wǎng)絡(luò)與商業(yè)網(wǎng)絡(luò)已經(jīng)被廣泛使用。一臺交換式集線器連接所有控制系統(tǒng)內(nèi)所有的PC以及所有六臺FieldPoint FP-2000網(wǎng)絡(luò)模塊。該網(wǎng)絡(luò)與其它網(wǎng)絡(luò)隔離,從而提高了系統(tǒng)的穩(wěn)定性與安全性。在其中一臺PC上運行DataSocket服務(wù)器,為九臺聯(lián)網(wǎng)PC之間提供通信平臺。每一臺PC都有對一個DataSocket數(shù)據(jù)集的寫權(quán)限,而所有九臺PC都可以讀取任何一個數(shù)據(jù)集的數(shù)據(jù)。
環(huán)形鐵心研究反應(yīng)堆控制系統(tǒng)的軟件使用LabVIEW 6.1編寫,便于修改、維護、部署到聯(lián)網(wǎng)的多臺PC中。
信號映射與比例變換
我們建立了一個信號數(shù)據(jù)表,將標簽名稱與FieldPoint I/O通道或DataSocket變量進行映射。在完成編輯后,我們將數(shù)據(jù)表保存為用TAB作為分界符的文本文件,供LabVIEW在每次啟動時讀取。其后,LabVIEW將標簽名稱映射為適當?shù)挠布駾ataSocket通道。電子表還包括高達5階多項式的單位轉(zhuǎn)換能力,可以將FieldPoint原始數(shù)據(jù)轉(zhuǎn)換為工程單位。我們發(fā)現(xiàn)使用信號數(shù)據(jù)表十分靈活,因為使用數(shù)據(jù)表,我們可以方便地編輯信號名稱、位置以及單位換算,而不用修改LabVIEW代碼。在工作臺測試中,F(xiàn)ieldPoint設(shè)置與我們計劃使用的現(xiàn)場有所不同。我們可以方便地修改信號列表,將I/O通道與可用的FieldPoint硬件進行映射,從而使得對個別組件的軟件測試成為可能。
I/O仿真器
我們編寫了一個LabVIEW I/O仿真器,可以不使用硬件完成軟件測試。如果在settings.ini文本文件中關(guān)閉了硬件,我們可以設(shè)置LabVIEW FieldPoint和DataSocket I/O VI讀取和寫入仿真I/O信號。仿真器VI導(dǎo)入輸入信號,并返回輸出信號。我們沒有連接硬件,就可以完成軟件測試。這個方法對FieldPoint和DataSocket信號都適用,對數(shù)字信號和數(shù)值信號也都適用。仿真器VI使用由TAB作為分界符的文本文件進行保存和載入,方便調(diào)用不同的仿真設(shè)置。由于這些文件兼容電子表格格式,我們還可以使用Excel編輯這些設(shè)置。
所有九臺PC使用一個應(yīng)用程序
為九臺獨立的PC維護代碼、創(chuàng)建LabVIEW可執(zhí)行文件是一件困難的事情。各臺PC上大部分代碼是相同的。其中的困難在于我們需要九臺PC同時提供多個用戶接口——而不是因為代碼量過大。我們將軟件設(shè)計為單個程序進行運行,根各臺計算機的要求,分別顯示不同的程序。在啟動時,程序檢查本地的settings.ini文件進行自身身份獲取。其后,軟件載入適當?shù)挠脩艚缑妫⑶疫\行該計算機所需要的I/O程序。通過這種方法,九臺PC機上只需發(fā)布和維護一個LabVIEW程序。兩臺運動控制計算機被放置在離控制室約100英尺的地方,一般不使用它們進行顯示。由于這些計算機包含相同的LabVIEW代碼,我們可以方便地從其他七臺計算機上,以只讀方式運行其用戶圖形界面。這樣,我們不回到控制室也可以方便地查看不同的參數(shù)了。
軟件健壯性與看門狗
系統(tǒng)使用離散邏輯硬件或NI PCI-6602定時板卡處理對時間要求嚴格的操作。程序的掃描時間更新以及相關(guān)的循環(huán)圖形顯示在每一臺屏幕上,就表明LabVIEW代碼工作正常。環(huán)形鐵心研究反應(yīng)堆的主計算機控制系統(tǒng)以50 ms的循環(huán)周期進行工作。九臺計算機中的三臺不斷地互相監(jiān)視,并具有看門狗關(guān)閉功能。如果三臺計算機中的任何一臺沒有每隔一秒通過DataSocket更新看門狗,另外兩臺計算機就會啟動看門狗關(guān)閉功能,中止反應(yīng)堆工作。這就防止了計算機崩潰以及網(wǎng)絡(luò)故障等問題。在這個系統(tǒng)中,我們不需要FieldPoint實時功能,但我們安裝了FP-2000實時模塊,以便將來進行升級。請注意我們使用獨立的電站保護系統(tǒng)確保反應(yīng)堆的安全,而不管控制系統(tǒng)是否出現(xiàn)異常或工作故障。
堅固的、便于維護的控制系統(tǒng)
綜上所述,我們安裝了一個堅固的、易于維護的控制系統(tǒng),用于替換位于Sandia國家實驗室的環(huán)形鐵心研究反應(yīng)堆的陳舊控制系統(tǒng)。新型系統(tǒng)提供了更美觀、更直觀的用戶界面,便于修改的基于LabVIEW的軟件以及成本低廉、便于維護的先進NI硬件。與使用C對原系統(tǒng)相編程所花費的時間相比,使用LabVIEW編寫新型系統(tǒng)將軟件開發(fā)時間降低到十分之一。