陳岳劍 邢宗義 黃 超
(1.南京理工大學(xué)機械工程學(xué)院,210094,南京;2.同方人工環(huán)境有限公司,100080,北京∥第一作者,碩士研究生)
運營安全是城市軌道交通的基礎(chǔ)。城市軌道交通運營安全模擬沙盤可以模擬不同類型的事故或危險環(huán)境,并可進行不允許實際發(fā)生的重大事故的仿真實驗,從而為城市軌道交通安全運營積累經(jīng)驗和提供技術(shù)支持,在實際運營中減少或避免安全事故。城市軌道交通運營安全模擬沙盤的核心是列車模型控制系統(tǒng),通過該系統(tǒng)實現(xiàn)運營圖模擬、列車救援等功能。對列車模型控制系統(tǒng)功能的基本要求是能夠控制列車模型、道岔和信號燈,準(zhǔn)確判斷列車位置。
列車模型控制系統(tǒng)的功能通過工控機、可編程邏輯控制器(PIC)和單片機等實現(xiàn)[1-5]。文獻[1]開發(fā)的城市軌道交通綜合實訓(xùn)系統(tǒng)采用工控機控制沙盤站場設(shè)備,采用AT 96 總線連接各工控機,并設(shè)計了列車、信號燈和道岔控制電路。文獻[2]開發(fā)的軌道交通實驗控制系統(tǒng)采用工控機作為主站進行控制:由工控機通過功率輸出板實現(xiàn)信號機和道岔轉(zhuǎn)轍機的輸出控制,并同時用于驅(qū)動軌道供電電路的繼電器,實現(xiàn)列車的正反向行駛;通過開關(guān)量輸入板實現(xiàn)列車位置等信息的采集。采用工控機實施控制存在成本高、通用性差的缺點,不利于推廣應(yīng)用。文獻[3]開發(fā)的城市軌道交通ATC(列車自動控制)模擬系統(tǒng)采用調(diào)制解調(diào)器產(chǎn)生的軌道電流信號控制列車,采用MSP 430 單片機控制道岔、信號燈和列車定位,在PC(電腦)端運行調(diào)度軟件實現(xiàn)各個被控對象的模擬控制。但該系統(tǒng)未考慮分布式控制,現(xiàn)場道岔信號燈均集成在一塊控制板上,導(dǎo)致場景內(nèi)走線雜,系統(tǒng)可維護性較差。文獻[4]開發(fā)的鐵路運輸綜合演練沙盤采用C8051F330 單片機控制道岔、信號燈和進行區(qū)間定位,通過單片機控制接觸網(wǎng)供電從而對機車進行控制。但該系統(tǒng)未應(yīng)用數(shù)字電流控制技術(shù),且機車采用接觸網(wǎng)與干電池聯(lián)合供電,使得系統(tǒng)兼容性較差。
本文提出一種基于485 總線的PIC 單片機分布式列車模型控制系統(tǒng)設(shè)計方案。根據(jù)城市軌道交通運營安全模擬沙盤仿真需要,該系統(tǒng)實現(xiàn)了列車模型方向及速度控制、道岔與信號燈控制、列車位置探測,并可通過串口與PC 端的上位軟件互聯(lián),實現(xiàn)基于PC 端軟件的列車模型控制。
列車模型控制系統(tǒng)的設(shè)備主要包括列車模型、道岔、信號燈、道岔轉(zhuǎn)轍機、列車定位設(shè)備等。由于主流的列車模型已經(jīng)配置了解碼模塊,因此,本文只介紹列車模型數(shù)字命令控制的原理,不再進行列車解碼器的開發(fā)工作,本節(jié)也不再贅述列車模型的基礎(chǔ)知識。信號燈一般采用簡單的發(fā)光二極管,采用開關(guān)量輸出驅(qū)動顯示,道岔根據(jù)實際需要采購現(xiàn)成的產(chǎn)品,因此本文對此也不再進行詳述。道岔轉(zhuǎn)轍機和列車定位有多種實現(xiàn)方式,實現(xiàn)方式是列車模型控制系統(tǒng)的核心,下文分步進行原理介紹及優(yōu)缺點分析。
在列車模型控制系統(tǒng)中,模型列車通過金屬車輪獲取加載在軌道上的驅(qū)動電流,實現(xiàn)列車的速度及方向控制。
根據(jù)電流信號的不同,列車模型控制可分為直接直流控制(Direct Current,簡為DC)和數(shù)字命令控制(Digital Command Control,簡為 DCC)[6]。早期的DC 控制屬于模擬控制,通過加載電流的大小和極性實現(xiàn)列車的速度和方向控制,但在同一區(qū)間內(nèi)DC無法實現(xiàn)不同列車的獨立控制,且存在低速時列車運行不平穩(wěn)等缺點,因此DC 控制只能用于簡單的展示沙盤等場景。在DC 基礎(chǔ)上發(fā)展完善的DCC控制,采用在軌道上加載數(shù)字電流信號的方式實現(xiàn)了對列車模型的控制。列車模型對軌道的數(shù)字電流進行整流后作為驅(qū)動電源,同時通過解碼器獲取列車地址、運行方向及調(diào)速信號,實現(xiàn)了模型列車的獨立控制。
DCC 的電流信號由方波信號調(diào)制而成,如圖1所示。方波幅值根據(jù)不同比例的列車模型確定,如HO 比例的列車模型對應(yīng)的方波幅值為14.5 V。在方波電流信號中,短波代表1,其周期為116 μs;長波代表0,其周期為232 μs;延伸0 代表數(shù)據(jù)包結(jié)束,周期在 95 μs 至 9.9 ms 之間。
圖1 DCC 信號時序示意圖
數(shù)字命令控制DCC 數(shù)據(jù)包由引導(dǎo)位、地址字節(jié)、數(shù)據(jù)字節(jié)、校驗字節(jié)組成,其中引導(dǎo)位由大于14 位的1 組成,數(shù)據(jù)字節(jié)不大于4 且每個字節(jié)由0 間隔。DCC 信號除了實現(xiàn)傳統(tǒng)的列車速度與方向控制、列車燈光與音效控制、信號燈道岔解碼操作外,還可以針對地址字節(jié)實現(xiàn)車頭解碼變量配置等功能。
在列車模型控制系統(tǒng)中,道岔轉(zhuǎn)轍機可分為舵機轉(zhuǎn)撤和電磁轉(zhuǎn)撤2 種。舵機轉(zhuǎn)撤是在軌道上安裝小舵機,通過連桿機構(gòu)實現(xiàn)道岔的轉(zhuǎn)撤控制,但存在舵機機械安裝復(fù)雜、故障率高、扳道時間較長等缺陷。電磁轉(zhuǎn)撤是在道岔附件上安裝2 個電磁線圈,通過線圈內(nèi)部的卡簧實現(xiàn)鎖閉功能,當(dāng)需要進行轉(zhuǎn)轍時,控制系統(tǒng)對應(yīng)的驅(qū)動電路輸出電流至電磁線圈,并克服卡簧的鎖閉,從而帶動叉芯位移實現(xiàn)道岔轉(zhuǎn)轍。道岔轉(zhuǎn)轍機可采用DCC 傳輸控制信息,然后通過專門的解調(diào)單元實現(xiàn)控制,也可以直接由專門控制板卡實現(xiàn)。
列車模型定位是指對列車位置的反饋探測,是實現(xiàn)區(qū)間閉塞控制的基礎(chǔ),主要有機械微動開關(guān)、電流判斷、光電傳感器、霍爾傳感器以及干簧管等定位方法。機械微動開關(guān)方式是在軌道上鋪設(shè)機械觸點,列車經(jīng)過時接觸式檢測出列車位置,該方法存在機械開關(guān)壽命短且接觸式檢測影響列車運行等缺點。電流判斷方式是將軌道劃分為若干個區(qū)間,并實現(xiàn)不同區(qū)間的物理電隔離,當(dāng)列車處于某區(qū)間時,由于軌道供電會造成該區(qū)間軌道電流變化,從而可通過電流檢測實現(xiàn)列車定位。光電傳感器方式是在軌道區(qū)間內(nèi)鋪設(shè)光電對管,當(dāng)列車經(jīng)過時,光電對管的信號經(jīng)列車底部反射,經(jīng)信號調(diào)理電路生成0 或1 信號,從而進行列車有無判斷,實現(xiàn)列車定位?;魻杺鞲衅鞣绞脚c光電對管類似,在列車底端安裝一小塊磁鐵,當(dāng)列車經(jīng)過時霍爾傳感器由于磁場變化產(chǎn)生霍爾電勢差,經(jīng)信號調(diào)理后產(chǎn)生0 或1 信號。干簧管方式同樣是在列車底端安裝一小塊磁鐵,當(dāng)列車經(jīng)過時,磁鐵使得干簧管的簧片磁化,簧片觸點被磁力吸引,常開觸點狀態(tài)轉(zhuǎn)換為吸合,從而進一步經(jīng)由數(shù)字量輸入模塊實現(xiàn)列車定位。干簧管結(jié)構(gòu)簡單、體積小、壽命長、工作可靠,已經(jīng)成為非接觸式列車定位的主要方式。
根據(jù)列車模型控制系統(tǒng)的需要,本文選用美國微芯公司的PIC16F628A 單片機作為調(diào)制解調(diào)板和道岔解碼板等的核心控制器。該單片機具有精簡指令集和哈佛總線,自帶2048 字節(jié)的閃存程序存儲器、224字節(jié)的SRAM 和128 字節(jié)的EEPROM,除此之外還有16 路I/O、RB 口電平變化中斷、3 路定時器和可尋址的通用同步/異步收發(fā)器等資源,可完全滿足列車模型控制系統(tǒng)中解碼編碼板的主控制器要求。
列車模型控制系統(tǒng)主要由電腦接口板、調(diào)制解調(diào)板、區(qū)間編碼板、信號燈解碼板和道岔解碼板,以及傳統(tǒng)的列車模型、道岔、轉(zhuǎn)轍機、信號燈和軌道組成,如圖2所示。電腦接口板實現(xiàn)上位機與單片機之間的通信,并直接讀取區(qū)間編碼信息。調(diào)制解調(diào)板作為控制中心,接收上位機控制指令或擴展接口連接的其它控制站的指令,將電流信號調(diào)制為標(biāo)準(zhǔn)的DCC 信號加載到軌道。區(qū)間編碼板實現(xiàn)對干簧管開關(guān)信號采樣編碼。信號燈和道岔解碼板實現(xiàn)對軌道DCC 對應(yīng)信號的解碼,以實現(xiàn)信號燈和道岔轉(zhuǎn)轍機控制。上位機運行列車模型控制軟件,通過電腦串口發(fā)送指令,實現(xiàn)列車自動控制、救援調(diào)度等功能。
圖2 列車模型控制系統(tǒng)架構(gòu)
控制系統(tǒng)的結(jié)構(gòu)遵循了分布式設(shè)計,邏輯上可以分為3 個系統(tǒng):以調(diào)制解調(diào)板為主控站的串行總線多機通信系統(tǒng)、分布式級聯(lián)的區(qū)間編碼系統(tǒng)以及信號燈道岔DCC 信號解碼系統(tǒng)。
本文設(shè)計的串行總線多機通信系統(tǒng)的總線連接方式??偩€標(biāo)準(zhǔn)遵循RS 485 半雙工異步通信協(xié)議,采用平衡驅(qū)動器和差分接收器組合傳輸,抗共模干擾能力強,在1 Mbit/s 傳輸速率下最遠有效距離可達100 m,并可允許最大掛載32 臺設(shè)備,完全滿足城市軌道交通運營安全模擬沙盤的需要。PIC 單片機通過美信公司MAX 485 芯片掛載到總線??蓪⒄{(diào)制解調(diào)板視為主機,而電腦接口板與手持遙控器、功放板和場景音效設(shè)備等可作為從機。PIC 單片機的可尋址通用同步/異步收發(fā)功能可對數(shù)據(jù)進行第9 位地址區(qū)分,使接收器自動尋址產(chǎn)生接收中斷,提高了總線傳輸效率。本文設(shè)計的串行總線多機通信系統(tǒng)支持分布式擴展,可以遵循總線標(biāo)準(zhǔn)掛載多塊調(diào)制解調(diào)板和電腦接口板等主從設(shè)備。
電腦接口板由USB(通用串行總線)轉(zhuǎn)換接口、485 總線接口、PIC 單片機和區(qū)間編碼讀取接口組成。由于PIC16F628A 單片機未集成USB 接口功能,因此本文采用FTDI 公司的FT232BL 接口轉(zhuǎn)換芯片實現(xiàn)USB 轉(zhuǎn)換。區(qū)間編碼讀取接口采用德州儀器生產(chǎn)的8 路雙向非門集成芯片SN74LS245N。該芯片的傳輸方向控制引腳T/R 接高電平,從而定義芯片的A 引腳為輸入,定義B 引腳為輸出;該芯片的 B7、B6 和 B5 與單片機的 RST(復(fù)位)、LOAD(裝載)和CLOCK(時鐘)連接,實現(xiàn)單片機輸出控制,A4 與單片機的DATA(數(shù)據(jù))連接,實現(xiàn)數(shù)據(jù)輸入讀取控制。
調(diào)制解調(diào)板由 DCC 調(diào)制電路、PIC 單片機和485 總線接口組成。列車及信號燈、道岔等控制信號,經(jīng)由單片機兩個I/O 口,結(jié)合58μs 定時器進行DCC 信號的時序調(diào)制,然后經(jīng)功率放大后加載到軌道。功率放大選用了意法半導(dǎo)體公司的全電機驅(qū)動芯片L 6203。L 6203 的最高工作電壓為48 V,最高工作電流為5 A,切換頻率為100 kHz,放大后的DCC 信號能驅(qū)動10 臺HO 比例的列車模型,滿足了本文沙盤系統(tǒng)的需求。
信號燈解碼板與道岔解碼板均包含解調(diào)電路、單片機和輸出控制接口。采用光耦6N137 作為解調(diào)電路的輸入隔離,其最高切換速度為10 Mbit/s,完全滿足DCC 解碼要求。軌道中的DCC 信號作為元耦6N137 的輸入,其輸出連接到單片機的RB 口。單片機通過電平中斷和58 μs 定時器一起完成DCC信號解碼。單片機輸出口的控制信號,經(jīng)ULN 2803達林頓管芯片功率放大后,實現(xiàn)信號燈點亮或道岔轉(zhuǎn)轍機線圈上電。
區(qū)間編碼板由前端觸發(fā)電路和后端串/并入串出電路組成,實現(xiàn)對列車有無的1/0 信號編碼。8路干簧管并行信號接入由兩片RS 觸發(fā)器CD4044B的S1-S4 口,并在每個端口處接10 kΩ 限流電阻、100 kΩ 上拉電阻和10 nF 消抖電容;觸發(fā)器的R 口實現(xiàn)復(fù)位功能,在系統(tǒng)初始化時所有觸發(fā)器的輸出均復(fù)位為0;觸發(fā)器的輸出Q1-Q4 接串/并入串出編碼芯片CD4014B 的P0-P7。CD4014B 芯片的低級串入口支持低級編碼板的數(shù)據(jù)輸入口,低級的串出口接高級編碼板的串入口,從而實現(xiàn)了多塊編碼板的級聯(lián)功能。本文設(shè)計的區(qū)間編碼板共有4 塊CD4044B 觸發(fā)器和2 塊 CD4014B 編碼芯片,支持16 路干簧管信號,在滿足功耗及讀取時間要求的前提下,最大可級聯(lián)8 塊區(qū)間編碼板,可實現(xiàn)128 路干簧管信號的編碼。
在485 總線通信協(xié)議中,調(diào)制解調(diào)板作為主機工作,電腦接口板等作為從機工作。主機的程序定期輪詢系統(tǒng),查看是否有新從機設(shè)備掛載到總線。主機實現(xiàn)列車速度與方向、信號燈、道岔等狀態(tài)信息的存儲,以及DCC 信號調(diào)制功能。當(dāng)從機向主機發(fā)送狀態(tài)信息查詢時,主機負責(zé)將對應(yīng)的列車、信號燈等狀態(tài)信息回饋給從機,當(dāng)從機向主機發(fā)送控制命令時,主機負責(zé)將該命令調(diào)制為DCC 信號加載到軌道。
城市軌道交通運營安全模擬沙盤的上位機軟件基于VS 2008 開發(fā)環(huán)境的MFC 編寫,上位機軟件通過串口向調(diào)制解調(diào)板發(fā)送查詢或控制命令。本文采用通信控件MSComm 實現(xiàn)串口通訊,其串口初始化及數(shù)據(jù)收發(fā)過程如下。
3.6.1 串口初始化
(1)選擇串口號:put__CommPort();
(2)設(shè)置通信方式為:9 600 kbit/s,無校驗,8位數(shù)據(jù)位,1 個停止位,put_Settings();
(3)以二進制方式檢取數(shù)據(jù):put_InputMode();
(4)設(shè)置串口接收緩沖區(qū)中有多于或等于1 個字符時將引發(fā)一個接收數(shù)據(jù)的OnComm 事件:put_RThreshold(1);
(5)設(shè)置接收全部數(shù)據(jù):put_InputLen(0);(6)打開串口:put_PortOpen(1)。
3.6.2 數(shù)據(jù)收發(fā)
串口每接收到一個字節(jié)數(shù)據(jù)后便觸發(fā)OnComm事件,在該事件的消息響應(yīng)函數(shù)中編寫相關(guān)接收子程序。發(fā)送數(shù)據(jù)通過put_Output()子程序,將數(shù)據(jù)轉(zhuǎn)換為Variant 類,并進行 COleVariant 封裝。發(fā)送完成后等待電腦接口卡應(yīng)答確認(rèn)接收指令或狀態(tài)數(shù)據(jù)包,若在規(guī)定的時間內(nèi)未收到應(yīng)答數(shù)據(jù)則假設(shè)數(shù)據(jù)發(fā)送失敗,重新進行數(shù)據(jù)發(fā)送。
為驗證列車模型控制系統(tǒng)各板卡的功能,在實驗室搭建了功能測試環(huán)境?;A(chǔ)環(huán)境包括2 輛由德國Fleischmann 公司生產(chǎn)的ICE 4460 火車模型,3 個道岔和對應(yīng)的電磁轉(zhuǎn)轍機,5 個LED(發(fā)光二極管)自制信號燈,環(huán)形軌道;控制系統(tǒng)包括電腦接口板、調(diào)制解調(diào)板、區(qū)間編碼板、信號燈解碼板和道岔解碼板等5 塊本文開發(fā)的控制板卡。在上位機基于MFC 編寫的單文檔軟件界面如圖3所示。試驗結(jié)果表明,采用本文所介紹的控制系統(tǒng),可以實現(xiàn)列車模型的獨立正反向控制和128 級調(diào)速控制、信號燈點亮和道岔轉(zhuǎn)轍控制、列車區(qū)間位置反饋等功能,從而驗證了本文開發(fā)的板卡的有效性。
圖3 上位機界面
在城市軌道交通運營安全模擬沙盤中,采用本文所介紹的列車模型控制系統(tǒng)進行列車控制,除實現(xiàn)測試環(huán)境的功能以外,也成功實現(xiàn)了列車定點停車、故障列車拖掛救援、列車應(yīng)急聲光報警等功能,滿足了安全模擬沙盤的需求。
本文提出了一種利用PIC 單片機進行列車模型分布式控制系統(tǒng)設(shè)計的方案,該系統(tǒng)實現(xiàn)了列車模型的定位與控制、信號燈與道岔控制、應(yīng)急救援控制等功能。在測試環(huán)境及模擬沙盤中進行了列車模型控制試驗,結(jié)果驗證了該系統(tǒng)的可用性,能夠滿足城市軌道交通運營安全模擬沙盤的列車模型控制的需求。
[1]秦武.城市軌道交通綜合實訓(xùn)系統(tǒng)的設(shè)計與實現(xiàn)[J].城市軌道交通研究,2013(1):77.
[2]翟國銳.軌道交通實驗控制系統(tǒng)的研究[D].北京:北京交通大學(xué),2008.
[3]邸鵬.城市軌道交通的ATC 模擬系統(tǒng)設(shè)計[D].南京:南京理工大學(xué),2010.
[4]張博,王思明,肖健華.基于C8051F330 的鐵路模擬沙盤的設(shè)計與開發(fā)[J].科學(xué)技術(shù)與工程,2008(3):700.
[5]張占軍.鐵道信號沙盤模擬顯示系統(tǒng)研究[D].成都:西南交通大學(xué).2009.
[6]NMRA.DCC Signal Standard S-91.S-92[S].
[7]吳玲英.葉華平.李立明,等.基于 DCC 及 C-S 模型的城軌運營仿真系統(tǒng)設(shè)計[J].沿海企業(yè)與科技,2012(7):38.
[8]李紹斌.蔣大明.鐵路運輸沙盤綜合演練聯(lián)鎖系統(tǒng)的設(shè)計和實現(xiàn)[J].中國鐵路,2005(6):39.
[9]閆保中,楊欣穎.基于VC 的地鐵智能沙盤控制系統(tǒng)設(shè)計[J].應(yīng)用科技,2009(10):34.
[10]Yulong J,Jiaqiang Y.Design an intelligent environment control system for greenhouse based on RS485 Bus[C]//Digital Manufacturing and Automation (ICDMA)Second International Conference on.Guilin:IEEE,2011.
[11]馮子陵,俞建新.RS485 總線通信協(xié)議的設(shè)計與實現(xiàn)[J].計算機工程,2012.
[12]Kai SQC.Design of the multi- computer communication system based on RS485 [C]//Electric Information and Control Engineering (ICEICE)International Conference on.Wuhan:IEEE,2011.
[13]龔建偉.Visual C+ + /Turbo C 串口通信編程實踐[M].北京:電子工業(yè)出版社,2007.
[14]張波,武國斌,朱永忠.USBUART 芯片 FT232BM 及其應(yīng)用[J].電子質(zhì)量,2004(2):1.
[15]余孝安,夏彬.基于RS_485 總線實現(xiàn)PC 機與多單片機間通信的一種方法[J].現(xiàn)代經(jīng)濟信息,2009(1):85.