廖紅星
【摘 要】I/O接口系統(tǒng),在模擬機(jī)仿真系統(tǒng)中主要用于連接模型主機(jī)與盤(pán)裝設(shè)備,包括開(kāi)關(guān)、按鈕、指示燈及指示儀、數(shù)顯表等,使得就地操作指令通過(guò)輸入模塊傳入上位機(jī),同時(shí)上位機(jī)發(fā)出的命令也可通過(guò)輸出模塊送到就地的指示燈和指示儀表,從而完成兩者之間的正常通訊。本文主要針對(duì)核電模擬機(jī)I/O接口系統(tǒng)在多個(gè)項(xiàng)目中的應(yīng)用情況,根據(jù)模擬機(jī)不斷提出的新需求,并結(jié)合新技術(shù)的日新月異,通過(guò)APAX與ADAM新舊兩套接口系統(tǒng)在硬件架構(gòu)和軟件架構(gòu)上的對(duì)比,介紹了APAX接口系統(tǒng)在硬件安裝、軟件調(diào)試以及系統(tǒng)維護(hù)上所實(shí)現(xiàn)的重大技術(shù)革新。
【關(guān)鍵字】APAX;I/O接口;板卡;通訊
中圖分類號(hào): TL421.1文獻(xiàn)標(biāo)識(shí)碼: A文章編號(hào): 2095-2457(2019)18-0035-002
DOI:10.19694/j.cnki.issn2095-2457.2019.18.017
0 引言
I/O接口系統(tǒng)承載著主控室DCSFSS后備盤(pán)臺(tái)與DCSFSS仿真模型數(shù)據(jù)采集和數(shù)據(jù)通訊的中間樞紐作用,是模擬機(jī)仿真硬件系統(tǒng)中比較重要的組成部分,所以說(shuō)I/O接口系統(tǒng)設(shè)備的正確選擇對(duì)于核電廠模擬機(jī)盤(pán)臺(tái)控制方式的有效實(shí)現(xiàn)起著至關(guān)重要的作用。
本論文將用新老系統(tǒng)進(jìn)行對(duì)比的方式,來(lái)闡述核電模擬機(jī)I/O接口系統(tǒng)改進(jìn)的必要性、具體的改進(jìn)項(xiàng)以及帶來(lái)的價(jià)值。
1 系統(tǒng)架構(gòu)綜述
在實(shí)際使用中,引用2個(gè)實(shí)際的案例:
2009年建設(shè)的秦山二期擴(kuò)建工程全范圍模擬機(jī)(以下簡(jiǎn)稱“二期模擬機(jī)”),使用的是基于ADAM-5000TCP為主體的I/O接口系統(tǒng)。
2014年建設(shè)(2017年完善升級(jí))的秦山一期全范圍模擬機(jī)(以下簡(jiǎn)稱“一期模擬機(jī)”),使用的是基于APAX為主體的I/O接口系統(tǒng)。
這兩套模擬機(jī),在I/O數(shù)量上基本一致,都超過(guò)10000點(diǎn),具有對(duì)比性。
系統(tǒng)架構(gòu)上,從硬件架構(gòu)、軟件架構(gòu)分別做對(duì)比。
1.1 I/O接口系統(tǒng)硬件架構(gòu)
1.1.1 二期模擬機(jī)硬件架構(gòu)
主要硬件組成:
(1)數(shù)據(jù)通訊服務(wù)器UNO:負(fù)責(zé)模型主機(jī)與所管理的ADAM-5000TCP接口模塊之間的數(shù)據(jù)集成與通訊,內(nèi)置I/O接口通訊軟件。作為UNO本身,是一個(gè)嵌入式準(zhǔn)應(yīng)用平臺(tái),可以在不同的工程中縮短開(kāi)發(fā)時(shí)間以及提供富足的網(wǎng)絡(luò)接口以滿足擴(kuò)展的需要。在核電模擬機(jī)工程中,UNO主要充當(dāng)了上下層數(shù)據(jù)中轉(zhuǎn)站的角色,將采集的數(shù)據(jù)整合,起到過(guò)渡作用。
數(shù)量:6臺(tái)。
(2)I/O控制器ADAM-5000TCP:負(fù)責(zé)采集與控制所對(duì)應(yīng)的I/O擴(kuò)展卡。ADAM-5000TCP具有高速的I/O能力并且全面支持ADAM-5000 I/O模塊。該控制器支持Modbus/TCP通訊控制,易于整合,在沒(méi)有中繼器的情況下可以達(dá)到100米的通信距離。且提供RS-485接口作為Modbus協(xié)議的以太網(wǎng)關(guān)使用,這種方式對(duì)于需要D/A和A/D轉(zhuǎn)換的數(shù)字指示儀可以解決輸出顯示有誤差的問(wèn)題。
數(shù)量:近96臺(tái)。
(3)擴(kuò)展卡:AI、AO、DI、DO,完成對(duì)開(kāi)關(guān)、指示燈、儀器儀表的數(shù)據(jù)采集與控制輸出。
數(shù)量:近800片。
1.1.2 一期模擬機(jī)硬件架構(gòu)
主要硬件組成:
(1)數(shù)據(jù)通訊服務(wù)器UNO:負(fù)責(zé)模型主機(jī)與所管理的APAX接口模塊之間的數(shù)據(jù)集成與通訊,內(nèi)置I/O接口通訊軟件。
數(shù)量:2臺(tái)。
(2)I/O通訊模塊APAX-5070:負(fù)責(zé)采集和控制所在模塊上的所有擴(kuò)展卡。
數(shù)量:36片。
(3)擴(kuò)展卡:AI、AO、DI、DO,在模擬機(jī)中擔(dān)負(fù)著開(kāi)關(guān)量信號(hào)、模擬量信號(hào)以及脈沖量信號(hào)的采集和處理。
數(shù)量:近500片。
1.1.3 硬件結(jié)構(gòu)對(duì)比
ADAM系統(tǒng)在產(chǎn)品本身和功能實(shí)現(xiàn)上存在一些使用上的限制:
1)單個(gè)I/O控制器,只有固定的8個(gè)槽位供I/O擴(kuò)展卡使用,并且單個(gè)I/O擴(kuò)展卡的通道數(shù)比較少。故在實(shí)際使用中,需要大量的通訊模塊,由此結(jié)構(gòu)帶來(lái)一系列的弊端:
a)需要較多的數(shù)據(jù)通訊服務(wù)器;
b)需要較多的網(wǎng)絡(luò)布線與網(wǎng)絡(luò)交換機(jī);
c)需要較多的供電設(shè)備;
d)占用較多的安裝空間。
從而無(wú)形當(dāng)中,增加了較多的建設(shè)成本和潛在的故障節(jié)點(diǎn)。同時(shí),也增加后期的維護(hù)工作量。
2)I/O擴(kuò)展板卡的地址設(shè)置。ADAM系列的I/O擴(kuò)展卡的地址,采用的是與槽位號(hào)對(duì)應(yīng)的方式,并采用連續(xù)編碼,也就是固定的地址編碼方式。在實(shí)際使用中,經(jīng)常會(huì)碰到在某個(gè)盤(pán)臺(tái),隨著主控設(shè)備的變更,模擬機(jī)需要進(jìn)行調(diào)整。固定地址模式下,帶來(lái)的問(wèn)題是需要調(diào)整該I/O控制器下所有板卡的位置,以符合模型主機(jī)IOMAP的配置。
為解決上述硬件架構(gòu)問(wèn)題,最終選用升級(jí)后的APAX系統(tǒng)。
(1)APAX系統(tǒng)采用模塊化設(shè)計(jì):通訊模塊與I/O擴(kuò)展槽分開(kāi),可以隨意組合,并支持多層硬件安裝。
(2)APAX單個(gè)通訊模塊,最多可以連接32個(gè)I/O擴(kuò)展卡,并且各規(guī)格型號(hào)的I/O擴(kuò)展卡的通道數(shù)較之ADAM系列都有大幅度的增加,集成密度更高。
(3)APAX的通訊地址編碼:靈活的配置模式,可以通過(guò)I/O擴(kuò)展卡上的硬件ID旋鈕來(lái)選擇地址編碼, I/O擴(kuò)展卡的物理位置與地址編碼不再關(guān)聯(lián),從而在后期有需求變更的時(shí)候,只需要變更硬件ID號(hào),就可以達(dá)到系統(tǒng)變更的需求。靈活的配置方式,在幾個(gè)項(xiàng)目中的應(yīng)用得到很好的體現(xiàn),給項(xiàng)目的施工和變更帶來(lái)極大的便利。
(4)網(wǎng)絡(luò)通訊的冗余性:APAX系統(tǒng)具有以太網(wǎng)冗余功能,確保通訊網(wǎng)絡(luò)的安全性。
(5)擴(kuò)展方式靈活:擴(kuò)展卡可以分散布置在各個(gè)盤(pán)臺(tái)的不同位置上,并通過(guò)背板連接或者以太網(wǎng)接口進(jìn)行擴(kuò)展,方式靈活,真正實(shí)現(xiàn)分散控制的理念。
(6)緊湊型安裝更加節(jié)省空間:模塊化設(shè)計(jì),集成度更高,尺寸微小,更加節(jié)省盤(pán)臺(tái)內(nèi)的安裝空間,適合新機(jī)組下的BUP盤(pán)。
新I/O接口系統(tǒng)模塊化、靈活配置的技術(shù)特點(diǎn),很好的解決了老I/O接口系統(tǒng)存在的技術(shù)壁壘。在核電模擬機(jī)的應(yīng)用中,這點(diǎn)至關(guān)重要。事實(shí)也證明,在后期的工程實(shí)施和后期的變更中,基于新I/O接口系統(tǒng),安裝和調(diào)試活動(dòng)都得到了很大的改善和提高,系統(tǒng)運(yùn)行更可靠。
1.2 I/O接口系統(tǒng)軟件架構(gòu)
1.2.1 基于ADAM I/O接口系統(tǒng)軟件架構(gòu)
基于ADAM I/O接口系統(tǒng)軟件架構(gòu)圖。
主要流程:
(1)模型主機(jī)發(fā)起通訊請(qǐng)求;
(2)I/O接口程序收到請(qǐng)求后,喚起所有鏈路的ModbusTCP通訊進(jìn)程;并發(fā)16路ModbusTCP通訊進(jìn)程;
(3)依次進(jìn)行AI、AO、DI、DO的讀寫(xiě)通訊,進(jìn)行數(shù)據(jù)采集;
(4)將采集到的AI、DI數(shù)據(jù)寫(xiě)入U(xiǎn)NO-AIDI Buffer中;
(5)更新模型AIDI數(shù)據(jù);
(6)模型更新I/O接口AODO數(shù)據(jù)至UNO-AODO Buffer中;
(7)I/O接口程序控制AODO輸出。
1.2.2 基于APAX I/O接口系統(tǒng)軟件架構(gòu)
新的軟件架構(gòu)將主機(jī)與I/O接口的上層通訊,I/O接口的下層與APAX硬件的通訊獨(dú)立隔離出來(lái),各自高效運(yùn)行。
主要流程(上層通訊)
(1)模型主機(jī)發(fā)起通訊請(qǐng)求;
(2)I/O接口程序收到請(qǐng)求后,更新模型AIDI數(shù)據(jù);
(3)模型收到AIDI數(shù)據(jù)后,更新I/O接口AODO數(shù)據(jù)。
主要流程(下層通訊)
(1)并發(fā)觸發(fā)AI、AO、DI、DO讀寫(xiě)通訊;
(2)采集AIDI數(shù)據(jù),并更新UNO-AIDI Buffer;
(3)將更新后的UNO-AODO Buffer數(shù)據(jù)輸出控制APAX。
1.2.3 軟件對(duì)比
老的I/O接口軟件,是基于微軟于1996年推出的實(shí)時(shí)操作系統(tǒng)WinCE,但隨著工業(yè)PC類產(chǎn)品的硬件升級(jí)改造,市面上絕大多數(shù)廠商已經(jīng)停止生產(chǎn)支持WinCE系統(tǒng)的硬件。并且在實(shí)際使用中,也碰到了諸多的問(wèn)題:
(1)WinCE系統(tǒng)對(duì)部分功能進(jìn)行了簡(jiǎn)化,比如在I/O接口系統(tǒng)中至關(guān)重要的socket的操作。
(2)WinCE開(kāi)發(fā)資料的匱乏,因使用該系統(tǒng)的占比較小,在資料的獲取和技術(shù)支持的力度上比較薄弱,不利于持續(xù)的改進(jìn)。
同時(shí),在實(shí)際操作上也存在一些不足:
(1)采用的是控制臺(tái)方式。無(wú)可視化界面,很大程度上,無(wú)法及時(shí)獲取故障的詳細(xì)信息。
(2)沒(méi)有過(guò)多的進(jìn)行工程化的實(shí)現(xiàn)方式。
(3)軟件的通用性比較弱。不同的I/O接口需求,需要在源程序上更改相應(yīng)的配置,并保留該修改后的源程序。
(4)I/O接口的上下層通訊在同一個(gè)接口通訊子程序里,沒(méi)有獨(dú)立分開(kāi),不便于系統(tǒng)調(diào)試診斷。
綜合以上的諸多不便,結(jié)合新的I/O接口硬件系統(tǒng),I/O接口軟件的改進(jìn)也勢(shì)在必行。
改進(jìn)后的接口系統(tǒng)很好地解決了上述的問(wèn)題:
(1)基于嵌入式Win7平臺(tái),保證系統(tǒng)的實(shí)時(shí)性。
(2)通訊隔離,極大提高軟件的健壯性,有自恢復(fù)、自守護(hù)功能,方便各組件之間的故障查詢和故障判斷。
(3)采用可視化界面,各鏈路的通訊狀態(tài)一目了然。
(4)可配置界面,增加I/O接口的配置界面。包括一鍵自動(dòng)載入所有連接鏈路的擴(kuò)張板卡分布情況,極大縮短在工程實(shí)施中的繁重、易錯(cuò)的配置環(huán)節(jié)。
(5)增加故障記錄和差錯(cuò)統(tǒng)計(jì)。方便后期查詢故障原因,通過(guò)故障統(tǒng)計(jì),可提供技術(shù)人員對(duì)設(shè)備健康狀況的判斷依據(jù)。
(6)增加自我守護(hù)功能,異常情況下,可自動(dòng)恢復(fù)。
2 軟件調(diào)試及系統(tǒng)維護(hù)上的技術(shù)革新
2.1 軟件調(diào)試過(guò)程中的問(wèn)題探究
2.1.1 網(wǎng)絡(luò)通訊斷線
在調(diào)試中,通訊如果發(fā)生斷線、異常等不確定情況,嘗試加入出錯(cuò)重連機(jī)制:判斷條件修改,只要不為0都為連接錯(cuò)誤,并進(jìn)行重連次數(shù)累計(jì),超出后則退出本線程。
2.1.2 通訊超時(shí)
在實(shí)際的調(diào)試和使用過(guò)程中,強(qiáng)制退出線程,能起到一定的作用,但還是沒(méi)有從根本上解決問(wèn)題。
在隨后的不斷調(diào)試中,問(wèn)題定位于:在通訊異常,需要返回?cái)?shù)據(jù)時(shí),程序socket超時(shí)判定。在程序中,嘗試加入系統(tǒng)判定,強(qiáng)制退出連接。
嘗試總結(jié):
加入出錯(cuò)重連機(jī)制
強(qiáng)制退出連接
實(shí)際效果并不明顯,在隨后的使用中,因?yàn)榫W(wǎng)絡(luò)通訊的異常,還是會(huì)偶發(fā)性出現(xiàn)接口軟件的通訊不暢、甚至是通訊斷線。
2.1.3 系統(tǒng)配置復(fù)雜
Wince平臺(tái)下,對(duì)系統(tǒng)配置,需要做一個(gè)復(fù)雜且容易出錯(cuò)的配置,需要對(duì)每個(gè)鏈路的每個(gè)板卡進(jìn)行配置。并且,需要針對(duì)每個(gè)項(xiàng)目都要進(jìn)行重新的程序編譯,并生產(chǎn)可執(zhí)行文件。
2.2 系統(tǒng)維護(hù)上的技術(shù)革新
基于WinCE平臺(tái)下的接口通訊軟件在調(diào)試過(guò)程中存在很多功能上的不足和缺陷,制約著我們模擬機(jī)接口系統(tǒng)集成的工程進(jìn)度,為此我們結(jié)合調(diào)試過(guò)程中經(jīng)驗(yàn)反饋著力開(kāi)發(fā)了嵌入式Win7平臺(tái)下的新接口系統(tǒng)軟件,包括圖形化人機(jī)界面。
2.2.1 上下層數(shù)據(jù)交互隔離
為提高軟件調(diào)試的故障查詢和故障診斷功能,新的軟件程序?qū)⒎?wù)器數(shù)據(jù)交互與板卡數(shù)據(jù)交互線程獨(dú)立,互相隔離,這樣我們?cè)诠こ添?xiàng)目中更能容易地找出是模型端程序有問(wèn)題還是I/O板卡端存在故障。
2.2.2 鏈路信息實(shí)時(shí)展示
和APAX每條鏈路的實(shí)時(shí)通訊情況都會(huì)展現(xiàn)在新接口軟件主界面的右側(cè)表格中,鏈路顯示紅色字體表示當(dāng)前鏈路和APAX的通訊中斷,黑色字體表示通訊正常。
3 結(jié)語(yǔ)
筆者經(jīng)歷了多個(gè)核電模擬機(jī)的建設(shè),并在一線參與安裝調(diào)試,經(jīng)歷了新老I/O接口系統(tǒng)的更替和技術(shù)改進(jìn)方案的設(shè)計(jì)、實(shí)施。隨著當(dāng)下各方面技術(shù)的飛速發(fā)展,始終關(guān)注并引入、融合新的技術(shù),使得模擬機(jī)的I/O接口系統(tǒng)更加符合核電的使用要求。
3.1 維護(hù)日志
模擬機(jī)每年都有一到兩次的例行維護(hù),需要對(duì)模擬機(jī)系統(tǒng)進(jìn)行全范圍的檢測(cè)和維護(hù)。其中與I/O接口系統(tǒng)相關(guān)的,最為繁重的任務(wù)就是盤(pán)臺(tái)對(duì)點(diǎn),新的功能模塊將提供極大的便利。功能模塊將提供AODO模塊的可編程自動(dòng)對(duì)點(diǎn),并形成檢測(cè)報(bào)告,大大提高工作效率,減輕工作強(qiáng)度。
3.2 智能化改進(jìn)
推送功能:當(dāng)I/O接口系統(tǒng)出現(xiàn)異常時(shí),主動(dòng)推送相關(guān)異常至指定的維護(hù)人員,以確保維護(hù)的及時(shí)性。
系統(tǒng)狀態(tài)遠(yuǎn)程發(fā)布:將I/O接口系統(tǒng)的運(yùn)行狀態(tài)發(fā)布至指定的位置。并且模擬機(jī)維護(hù)人員可以在辦公室實(shí)時(shí)監(jiān)視系統(tǒng)狀態(tài)。
【參考文獻(xiàn)】
[1]研華科技,數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與開(kāi)發(fā).
[2]研華科技,ADAM-5000TCP快速安裝使用手冊(cè).
[3]鄭晟.現(xiàn)代可編程控制器原理與應(yīng)用,北京:科學(xué)出版社,1999.