(南京鐵道職業(yè)技術(shù)學(xué)院軌道交通綜合實(shí)訓(xùn)中心,210031,南京∥第一作者,碩士)
NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
曹峰束元洪冠
(南京鐵道職業(yè)技術(shù)學(xué)院軌道交通綜合實(shí)訓(xùn)中心,210031,南京∥第一作者,碩士)
由于計(jì)算機(jī)聯(lián)鎖的核心技術(shù)一直被國(guó)外供應(yīng)商壟斷,為了適應(yīng)我國(guó)高速鐵路和城市軌道交通的發(fā)展需要,本單位自行研制了一套以PLC(可編程邏輯控制器)為核心的NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)。介紹了 NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),包括系統(tǒng)組成、硬件結(jié)構(gòu)和軟件結(jié)構(gòu)三部分。在軟件結(jié)構(gòu)部分分別介紹了上位機(jī)軟件設(shè)計(jì)和聯(lián)鎖主機(jī)軟件的設(shè)計(jì)。
信號(hào)設(shè)備;計(jì)算機(jī)聯(lián)鎖系統(tǒng);可編程邏輯控制器
First-author’saddress Rail Transit Comprehensive Training Center Nanjing Institute of Railway Technology, 210031,Nanjing,China
聯(lián)鎖是保證車站內(nèi)列車和調(diào)車作業(yè)安全、提高車站通過能力的一種信號(hào)設(shè)備。隨著信息技術(shù)的飛速發(fā)展,具備運(yùn)作速度快、信息量大、安全性高、便于調(diào)試和維修等優(yōu)點(diǎn)的計(jì)算機(jī)聯(lián)鎖已經(jīng)逐步取代傳統(tǒng)的繼電器聯(lián)鎖,成為高速鐵路、客運(yùn)專線和城市軌道交通車站聯(lián)鎖設(shè)備的首選。目前計(jì)算機(jī)聯(lián)鎖的核心技術(shù)幾乎被國(guó)外研究機(jī)構(gòu)和供貨商所掌控,所以迫切需要國(guó)內(nèi)研究機(jī)構(gòu)在消化吸收國(guó)外先進(jìn)聯(lián)鎖技術(shù)的基礎(chǔ)上研制出具有中國(guó)自主知識(shí)產(chǎn)權(quán)的計(jì)算機(jī)聯(lián)鎖系統(tǒng)。本單位在上述背景下展開研究,自行設(shè)計(jì)開發(fā)了一套NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)。該系統(tǒng)采用工業(yè)控制計(jì)算機(jī)作為上位機(jī),采用西門子公司的可編程邏輯控制器(PLC)S7-300作為聯(lián)鎖主機(jī),實(shí)現(xiàn)對(duì)車站信號(hào)設(shè)備的實(shí)時(shí)控制。
NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)采用分層結(jié)構(gòu)模型:第一層為人機(jī)會(huì)話層,即上位機(jī),采用高可靠性的工業(yè)控制計(jì)算機(jī);第二層為聯(lián)鎖控制層,采用西門子公司的PLC S7-300進(jìn)行聯(lián)鎖邏輯運(yùn)算,實(shí)現(xiàn)對(duì)車站信號(hào)設(shè)備的實(shí)時(shí)控制;第三層為執(zhí)行層。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
圖1 計(jì)算機(jī)聯(lián)鎖系統(tǒng)結(jié)構(gòu)框圖
(1)人機(jī)會(huì)話層是車站調(diào)度員與計(jì)算機(jī)聯(lián)鎖系統(tǒng)的接口,實(shí)現(xiàn)調(diào)度員與聯(lián)鎖系統(tǒng)之間的人機(jī)交互功能。上位機(jī)接受操作命令,實(shí)時(shí)下發(fā)給聯(lián)鎖主機(jī),并實(shí)時(shí)接受來自聯(lián)鎖主機(jī)發(fā)出的室外信號(hào)設(shè)備狀態(tài)信息,通過顯示器顯示站場(chǎng)信息以及相關(guān)報(bào)警提示。
(2)聯(lián)鎖控制層由聯(lián)鎖主機(jī)、驅(qū)動(dòng)板和采集板組成。聯(lián)鎖主機(jī)接受上位機(jī)的操作命令,通過采集信號(hào)設(shè)備的狀態(tài)信息進(jìn)行聯(lián)鎖邏輯運(yùn)算,產(chǎn)生正確的輸出命令。驅(qū)動(dòng)板通過控制繼電器動(dòng)作執(zhí)行聯(lián)鎖主機(jī)下發(fā)的命令。采集板實(shí)時(shí)采集室外信號(hào)設(shè)備的狀態(tài)發(fā)送給聯(lián)鎖主機(jī)。
(3)執(zhí)行層由安全繼電器接口電路和室外信號(hào)設(shè)備組成,實(shí)現(xiàn)聯(lián)鎖系統(tǒng)對(duì)室外信號(hào)設(shè)備操作控制。安全繼電器接口電路根據(jù)聯(lián)鎖主機(jī)下達(dá)的命令驅(qū)動(dòng)室外信號(hào)設(shè)備,如控制信號(hào)機(jī)的顯示、道岔的轉(zhuǎn)動(dòng)等,并實(shí)時(shí)地反應(yīng)信號(hào)設(shè)備的狀態(tài)。
NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)硬件,主要包括作為上位機(jī)的工業(yè)控制計(jì)算機(jī)和作為聯(lián)鎖主機(jī)的可編程邏輯器件兩部分。
(1)本系統(tǒng)上位機(jī)采用研華IPC-610L型工控機(jī)。CPU主頻2.8 G,內(nèi)存1 G,其微處理器支持533/800 MHz系列系統(tǒng)總線,集成 LAN、IDE、I/O接口功能以及看門狗計(jì)時(shí)器等若干先進(jìn)功能。上位機(jī)通過工業(yè)以太網(wǎng)與聯(lián)鎖主機(jī)進(jìn)行數(shù)據(jù)交換。
(2)聯(lián)鎖主機(jī)為雙機(jī)熱備冗余結(jié)構(gòu),主、備系均采用西門子公司的PLCS7-300(見圖2)。每系配備了2個(gè)電源模塊,1個(gè) CPU 模塊,7個(gè)輸入模塊(32×7點(diǎn))和7個(gè)輸出模塊(32×7點(diǎn))。對(duì)于站型不是特別復(fù)雜的車站來說,這樣的配置已經(jīng)足夠。
圖2 PLC S7-300硬件結(jié)構(gòu)配置圖
聯(lián)鎖軟件主要由上位機(jī)軟件和PLC軟件兩部分構(gòu)成。上位機(jī)軟件包括人機(jī)接口模塊、通信模塊和信息提示模塊;PLC軟件包括聯(lián)鎖運(yùn)算模塊、通信模塊和聯(lián)鎖驅(qū)采模塊等軟件。整個(gè)聯(lián)鎖軟件的總體結(jié)構(gòu)如圖3所示。各個(gè)模塊之間相對(duì)獨(dú)立,只有數(shù)據(jù)交換,沒有程序上的聯(lián)系,使得系統(tǒng)結(jié)構(gòu)清晰,設(shè)計(jì)和編程符合通用性和模塊性原則。
圖3 聯(lián)鎖軟件系統(tǒng)的總體結(jié)構(gòu)圖
3.1 上位機(jī)軟件
上位機(jī)軟件設(shè)計(jì)采用面向?qū)ο缶幊痰姆椒?編程語言為 C#,開發(fā)工具是基于.NETFramework框架的 Microsoft Visual Studio 2010,底層數(shù)據(jù)庫(kù)選用微軟的Access。從結(jié)構(gòu)層次上來分,上位機(jī)軟件可以分為三層(見圖4):第一層為數(shù)據(jù)庫(kù)層,主要負(fù)責(zé)參數(shù)配置和保存歷史數(shù)據(jù),供用戶查看;第二層為應(yīng)用層,負(fù)責(zé)人機(jī)交互,響應(yīng)用戶的操作命令,并實(shí)時(shí)處理來自通信層的數(shù)據(jù);第三層為通信層,負(fù)責(zé)將應(yīng)用層的操作命令發(fā)送給聯(lián)鎖主機(jī),并接受來自聯(lián)鎖主機(jī)的數(shù)據(jù),反饋給應(yīng)用層。
圖4 上位機(jī)軟件的分層結(jié)構(gòu)圖
3.1.1 數(shù)據(jù)庫(kù)層
數(shù)據(jù)庫(kù)層具備處理信息能力強(qiáng)和存儲(chǔ)容量大的優(yōu)點(diǎn),有利于聯(lián)鎖系統(tǒng)維護(hù)和自動(dòng)化管理,用于記錄從聯(lián)鎖主機(jī)發(fā)送的實(shí)時(shí)站場(chǎng)信息和已執(zhí)行的操作命令信息。在數(shù)據(jù)庫(kù)中創(chuàng)建兩個(gè)表,分別按時(shí)間順利存儲(chǔ)。數(shù)據(jù)庫(kù)層同時(shí)支持?jǐn)?shù)據(jù)回放,還原歷史設(shè)備狀態(tài)和操作命令,便于查找故障和分析問題。
3.1.2 應(yīng)用層
應(yīng)用層主要實(shí)現(xiàn)人機(jī)交互功能,采用C#編程語言對(duì)人機(jī)界面進(jìn)行總體設(shè)計(jì),根據(jù)需求創(chuàng)建了信號(hào)機(jī)、道岔、軌道區(qū)段等用戶自定義控件。定義了操作命令由3個(gè)字節(jié)組成:第一個(gè)字節(jié)為命令類型;第二個(gè)字節(jié)為進(jìn)路/設(shè)備編號(hào);第三個(gè)字節(jié)為操作命令。軟件設(shè)計(jì)中加入了自檢模塊,對(duì)于非法操作,會(huì)在屏幕上給出錯(cuò)誤操作提示。上位機(jī)會(huì)周期性地接受來自聯(lián)鎖主機(jī)的數(shù)據(jù),以便實(shí)時(shí)顯示現(xiàn)場(chǎng)信號(hào)設(shè)備狀態(tài)。軟件設(shè)計(jì)周期為100 ms。對(duì)于設(shè)備故障,屏幕會(huì)報(bào)警提示,以便維護(hù)人員及時(shí)處理。用戶界面如圖5所示。
圖5 用戶界面圖
3.1.3 通信層
通信層實(shí)現(xiàn)了上位機(jī)和聯(lián)鎖主機(jī)的數(shù)據(jù)交換。為確保通信的實(shí)時(shí)性和高可靠性,其軟件采用基于工業(yè) 以 太 網(wǎng) 的 UDP/IP 機(jī) 制 進(jìn) 行 通 信,利 用send UdpClient.Send()函數(shù)發(fā)送 操 作 命 令,利用receiveUdp Client.Receive()函數(shù)接受信號(hào)設(shè)備狀態(tài)信息。上位機(jī)不間斷循環(huán)接受數(shù)據(jù),每次接受的數(shù)據(jù)會(huì)與前一次進(jìn)行比較。如果相同,則不處理。通信過程中設(shè)置定時(shí)器,若上位機(jī)超過5 s接受信息為空,則認(rèn)為通信故障,并在屏幕給出報(bào)警提示。
3.2 PLC軟件
聯(lián)鎖主機(jī)軟件是計(jì)算機(jī)聯(lián)鎖系統(tǒng)的核心,它的主要功能是實(shí)現(xiàn)了信號(hào)機(jī)、進(jìn)路和道岔的相互制約關(guān)系。軟件的設(shè)計(jì)需以鐵道部《計(jì)算機(jī)聯(lián)鎖技術(shù)條件》為依據(jù),并能完成6502電氣集中的所有聯(lián)鎖關(guān)系。PLC軟件設(shè)計(jì)采用西門子公司S7-300的模塊化編程語言STEP7作為開發(fā)工具,編程采用梯形圖法。由于聯(lián)鎖系統(tǒng)對(duì)安全要求極其苛刻,為了保證軟件結(jié)構(gòu)清晰、邏輯正確,PLC聯(lián)鎖軟件設(shè)計(jì)開發(fā)應(yīng)遵循功能需求分析、設(shè)計(jì)、編碼、測(cè)試的步驟(如圖6所示)。
3.2.1 模塊化設(shè)計(jì)
圖6 PLC軟件開發(fā)流程圖
為了便于開發(fā)調(diào)試和功能增減,PLC軟件采用模塊化結(jié)構(gòu)。每一個(gè)模塊對(duì)應(yīng)著一個(gè)運(yùn)算功能。PLC軟件包含以下功能模塊:命令接受處理模塊、設(shè)備狀態(tài)處理模塊,選路檢查模塊,照查模塊,選路執(zhí)行模塊,開放/關(guān)閉信號(hào)模塊,取消進(jìn)路模塊,道岔單獨(dú)操作模塊,人工解鎖模塊,故障解鎖模塊和區(qū)段解鎖模塊等。在上位機(jī)沒有下達(dá)操作命令時(shí),軟件循環(huán)執(zhí)行系統(tǒng)內(nèi)部調(diào)度程序,當(dāng)發(fā)出命令,命令接受處理模塊接受命令并分析,轉(zhuǎn)向相應(yīng)的軟件模塊進(jìn)行運(yùn)算。另外,系統(tǒng)每隔500 ms發(fā)出一次中斷請(qǐng)求,CPU 相應(yīng)中斷轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序,執(zhí)行計(jì)時(shí)和輸出脈沖,以完成轉(zhuǎn)換道岔和開放信號(hào)等功能。
3.2.2 安全性設(shè)計(jì)
為確保系統(tǒng)的安全型,PLC軟件采用冗余結(jié)構(gòu):PLC配置兩套功能相同但結(jié)構(gòu)不同的程序,同時(shí)執(zhí)行相同的命令,一旦系統(tǒng)發(fā)生故障,命令不會(huì)被執(zhí)行,確保了系統(tǒng)的安全性。
設(shè)備狀態(tài)信息是聯(lián)鎖邏輯運(yùn)算的重要參數(shù)。為確保設(shè)備狀態(tài)正確無誤,采用冗余編碼,對(duì)于每一個(gè)設(shè)備狀態(tài)均采用兩位二進(jìn)制碼表示。例如01表示軌道區(qū)段空閑,10表示有車占用,00和11均為非法碼。這樣,當(dāng)存儲(chǔ)單元發(fā)生故障時(shí),能有效地確保故障導(dǎo)向安全。
PLC軟件采用冗余結(jié)構(gòu)和信息冗余編碼的工作方式,充分體現(xiàn)了鐵路信號(hào)“故障-安全”的設(shè)計(jì)原則,系統(tǒng)的安全性得到充分保障。
NTY-I型計(jì)算機(jī)聯(lián)鎖系統(tǒng)在硬件上對(duì)安全關(guān)鍵部分和安全相關(guān)部分均采用了冗余結(jié)構(gòu),在軟件上采用容錯(cuò)機(jī)制,具有較高的安全性、可靠性、可用性和可維護(hù)性。目前,該系統(tǒng)已經(jīng)開發(fā)完成。
[1] 趙志熙.計(jì)算機(jī)聯(lián)鎖技術(shù)[M].北京:中國(guó)鐵道出版社,2008.
[2] 高繼祥.鐵路信號(hào)運(yùn)營(yíng)基礎(chǔ)[M].北京:中國(guó)鐵道出版社,2008.
[3] EN 50126 Railway Application:The Specification and Demonstration of RAMS[S].1999.
[4] SIEMENS公司.SIEMENSPLC系列參考手冊(cè)[G].
[5] TB/T 3027—2002.計(jì)算機(jī)聯(lián)鎖技術(shù)條件[S].
[6] 林瑜筠.城市軌道交通信號(hào)[M].北京:中國(guó)鐵道出版社,2011.
[7] 高繼祥,鄭俊杰.雙機(jī)熱備計(jì)算機(jī)聯(lián)鎖系統(tǒng)可靠性與安全性指標(biāo)分析[J].北方交通大學(xué)學(xué)報(bào),1998(5):71.
[8] 于拓華,趙林海,于建宇.計(jì)算機(jī)聯(lián)鎖控制系統(tǒng)軟件體系結(jié)構(gòu)的研究[J].北方交通大學(xué)學(xué)報(bào),1998(5):85.
[9] 穆中華,李麗蘭.客運(yùn)專線計(jì)算機(jī)聯(lián)鎖系統(tǒng)的開發(fā)[J].城市軌道交通研究,2012(1):75.
Design and Implementation of NTY-I Computer Interlocking System
Cao Feng,Shu Yuan,Hong Guan
The core technology of computer interlocking system has been monopolized by foreign suppliers.To meet the requirements of high-speed railway and urban rail transit development in China,a PLCbased NTY-I computer interlocking system is developed.The design and implementation of NTY-I computer interlocking system is introduced in general,including system composition,hardware structure and software structure,then the design of upper machine and interlock host software is introduced specially from the aspect of software structure.
signal facility;computer interlocking system; programmable logic controller(PLC)
2013-08-22)
U 284.3