李曉杰,錢雪軍
(同濟(jì)大學(xué) 電氣工程系,上海 200331)
LKJ2000型列車運(yùn)行監(jiān)控系統(tǒng)仿真研究
李曉杰,錢雪軍
(同濟(jì)大學(xué) 電氣工程系,上海 200331)
針對LKJ2000型列車監(jiān)控記錄裝置各功能模塊的交換信號(hào),如機(jī)車工況信號(hào)、機(jī)車壓力傳感器信號(hào),研制了基于單片機(jī)的模擬接口電路,可產(chǎn)生相應(yīng)匹配的交換信號(hào),用于LKJ2000型列車監(jiān)控記錄裝置的脫機(jī)檢測;同時(shí)以VS2010為開發(fā)工具,利用MFC開發(fā)包設(shè)計(jì)了以Windows為平臺(tái)的上位機(jī)人機(jī)控制界面,并借助串口通信協(xié)議實(shí)現(xiàn)其與單片機(jī)模擬接口電路的雙向通信,構(gòu)成了一套人機(jī)交互的仿真系統(tǒng)。該系統(tǒng)既可以應(yīng)用于列車駕駛仿真器,也可以用于LKJ2000裝置的教學(xué)培訓(xùn)。
LKJ2000;單片機(jī);列車監(jiān)控;仿真系統(tǒng)
LKJ2000型列車運(yùn)行監(jiān)控裝置是借鑒國內(nèi)外ATP及ATC技術(shù)研究開發(fā)的新一代列車超速防護(hù)設(shè)備,該裝置通過采集列車運(yùn)行中的各種狀態(tài)信息,如列車運(yùn)行速度信號(hào)、制動(dòng)系統(tǒng)壓力信號(hào)、軌道信號(hào)等,結(jié)合車載存儲(chǔ)線路參數(shù),進(jìn)行分析處理,以控制列車的運(yùn)行速度,實(shí)現(xiàn)安全控制[1]。鑒于LKJ2000型監(jiān)控記錄裝置在我國的大范圍使用及對我國鐵路現(xiàn)代化建設(shè)的推動(dòng)[4],對其進(jìn)行仿真研究也具有重要意義。本研究要構(gòu)建一個(gè)LKJ2000半實(shí)物仿真系統(tǒng),用于列車駕駛模擬器或設(shè)備的教學(xué)培訓(xùn)。
本文中主要利用51單片機(jī)作為機(jī)車信號(hào)的模擬發(fā)生器,并按照具體機(jī)車信號(hào)的類別劃分不同的信號(hào)產(chǎn)生模塊,各模塊由硬件接線直接與LKJ2000裝置相連。單片機(jī)通過串口通信協(xié)議與PC上位機(jī)相連接構(gòu)成一套簡易仿真系統(tǒng),同時(shí)可與其他列車駕駛仿真器相配合,為列車人員培訓(xùn)提供一個(gè)可參考的平臺(tái)。
本文所構(gòu)建的LKJ2000型列車監(jiān)控裝置仿真系統(tǒng)主要由PC平臺(tái)上位機(jī)系統(tǒng)以及單片機(jī)下位機(jī)系統(tǒng)構(gòu)成,如圖1所示。PC平臺(tái)與單片機(jī)通過雙串口相互通信,分別為RS232及RS422串行口通信,RS232用作單片機(jī)ISP在線燒錄接口,RS422相比RS232具有更強(qiáng)的驅(qū)動(dòng)能力,用作單片機(jī)與PC的數(shù)據(jù)收發(fā)端口,實(shí)現(xiàn)PC平臺(tái)對單片機(jī)的控制。單片機(jī)作為機(jī)車模擬接口以各類電信號(hào)的形式與LKJ2000交換信息,其主要功能即是按照PC平臺(tái)的控制命令產(chǎn)生正確且與LKJ2000相匹配的信號(hào),最終達(dá)到在PC平臺(tái)對LKJ2000裝置的仿真的目的。
圖1 仿真系統(tǒng)結(jié)構(gòu)
對LKJ2000的仿真主要通過與其交換各類不同的電信號(hào),同時(shí)為了設(shè)計(jì)單片機(jī)硬件電路,需要對LKJ2000采集的機(jī)車信號(hào)進(jìn)行分類。
LKJ2000系統(tǒng)框圖如圖2所示。
圖2 LKJ2000系統(tǒng)框圖
2.1 數(shù)字量輸出信號(hào)
6路110 V數(shù)字量輸出信號(hào),該信號(hào)為LKJ2000的機(jī)車工況采集信號(hào),分別為零位信號(hào)(LW)、前向信號(hào)(XQ)、后退信號(hào)(XH)、牽引信號(hào)(QY)、制動(dòng)信號(hào)(ZD)、備用通道(SBBAK0)。
10路50 V數(shù)字量輸出信號(hào),該信號(hào)為機(jī)車燈信號(hào),分別表示綠燈(L)、綠黃燈(LU)、黃燈(U)、黃2燈(U2)、雙黃燈(UU)、紅黃燈(HU)、紅燈(H)、白燈(B)、兩路備用通道(B0、B1)。
2.2 數(shù)字量輸入信號(hào)
6路110 V數(shù)字量輸入信號(hào),該信號(hào)為機(jī)車控制輸出信號(hào),是LKJ2000裝置通過繼電器輸出至機(jī)車的控制信號(hào)。6路分別為卸載信號(hào)(XZ)、減壓信號(hào)(JY)、關(guān)風(fēng)信號(hào)(GF)以及3路備用通道(BAK0、BAK1、BAK2)。
2.3 模擬量輸出信號(hào)
共7路模擬量信號(hào),4路為列車管壓信號(hào),變比為1 000 kPa:5 V,即信號(hào)輸出范圍為0 V ~5 V,表示范圍0 kPa ~1 000 kPa;1路原邊電流信號(hào),1路原邊電壓信號(hào),用來電力機(jī)車在運(yùn)用中所消耗電網(wǎng)電能的功率,變比分別為300 A:1 V和300 V:1 V(均為有效值),即信號(hào)輸出范圍為0 V~5 V,表示范圍為0 A(V)~1 500 A(V);1路加速度信號(hào),用于表示列車的加速度信號(hào),變比為1 V/g,檢測范圍為±1.5 g,加速度為0時(shí),輸出為2.5 V,即模擬量電壓輸出范圍為1 V~4V。
2.4 頻率輸出信號(hào)
共4路頻率信號(hào),其中3路為機(jī)車速度信號(hào),信號(hào)幅值為15 V,頻率范圍為0 Hz ~3 333 Hz,對應(yīng)車輪轉(zhuǎn)速為0 r/min~1 000 r/min,即每轉(zhuǎn)產(chǎn)生200個(gè)脈沖信號(hào),最大可表示機(jī)車速度為197 km/h;1路柴油機(jī)轉(zhuǎn)速信號(hào),信號(hào)幅值為15 V,頻率范圍為0 Hz ~25 Hz,對應(yīng)0 r/min ~1 500 r/min。
下位機(jī)采用51單片機(jī),型號(hào)為STC15F2K60S2,采用LQFP44封裝,具有42個(gè)I/O口,搭載2個(gè)串行口、1個(gè)SPI接口、以及3個(gè)定時(shí)器,不需要外圍晶振電路及復(fù)位電路。
3.1 電源模塊
為產(chǎn)生多種類不同電壓電平信號(hào),下位單片機(jī)采用110 V直流進(jìn)線,利用MornSun電源模塊降壓產(chǎn)生15 V直流電源,型號(hào)為URB1D15XD-10W,在此基礎(chǔ)上再利用7805芯片降壓產(chǎn)生5 V的電源電壓。
3.2 數(shù)字量輸入輸出模塊
由于單片機(jī)載流能力有限,如果輸出信號(hào)全部直接采用單片機(jī)I/O口驅(qū)動(dòng),會(huì)導(dǎo)致單片機(jī)過熱損壞,故均通過74HC244芯片驅(qū)動(dòng)并由光耦實(shí)現(xiàn)光電隔離。
圖3中,各驅(qū)動(dòng)電阻可通過TTL電平與光耦的正常驅(qū)動(dòng)電流(約為10 mA)的比值得到,約為500 Ω,考慮到PCB制板的尺寸以及電阻封裝的承載能力,可采用1206封裝。
數(shù)字量輸入信號(hào)電路與輸出信號(hào)電路相似,僅在其基礎(chǔ)上增加了施密特觸發(fā)反相器,對信號(hào)整型。
3.3 頻率量輸出模塊
頻率量模塊電路與數(shù)字量模塊電路相同,該模塊中光耦的開關(guān)速度要求較快,故采用高速光耦。
3.4 模擬量輸出模塊
圖3 數(shù)字量輸出信號(hào)驅(qū)動(dòng)電路
模擬量信號(hào)通過2塊10 bit數(shù)模芯片AD5314實(shí)現(xiàn),每塊芯片均有4路輸出通道。通過單片機(jī)自帶的SPI接口實(shí)現(xiàn)連續(xù)調(diào)節(jié)8路輸出通道的電壓,理論精度可到達(dá)2-10V。連接方法如圖4所示。
圖4 單片機(jī)SPI接口與AD5314接法
AD5314具有雙緩沖寄存器,拉低數(shù)模芯片的片選端,單片機(jī)SPI接口的MOSI端在16個(gè)時(shí)鐘周期內(nèi)(16個(gè)時(shí)鐘周期后數(shù)據(jù)無效)發(fā)送數(shù)據(jù)至數(shù)模芯片的數(shù)據(jù)端,數(shù)據(jù)自動(dòng)送入輸入寄存器之后轉(zhuǎn)存入DAC寄存器,并根據(jù)發(fā)送數(shù)據(jù)更新輸出端口及輸出電壓(參考電壓為5 V)。
3.5 通信模塊
通信模塊采用雙串口,RS232作為單片機(jī)程序燒錄口,RS422作為單片機(jī)與上位機(jī)通信端口。兩者同時(shí)互作備用,芯片分別采用MAX232及MAX4390。
3.6 單片機(jī)程序
單片機(jī)程序流程如圖5所示。
圖5 單片機(jī)程序流程圖
上位機(jī)控制界面以VS2010為開發(fā)平臺(tái),基于MFC庫實(shí)現(xiàn)。重點(diǎn)介紹串口通信的編寫及各信號(hào)發(fā)送的數(shù)據(jù)包。
4.1 串口通信模塊編寫
串口通信模塊采用Windows API函數(shù)編寫,并單獨(dú)將其封裝成一個(gè)Serial類,包含了配置串口,打開串口,串口讀寫及關(guān)閉串口等函數(shù)。同時(shí)為了保證數(shù)據(jù)傳輸過程中數(shù)據(jù)的完整性、正確性,增加一個(gè)數(shù)據(jù)校驗(yàn)的封裝類PIScomm對發(fā)送、接收數(shù)據(jù)進(jìn)行數(shù)據(jù)校驗(yàn)并封裝成數(shù)據(jù)包。其結(jié)構(gòu)如圖6所示。
圖6 通信模塊結(jié)構(gòu)圖
4.2 各信號(hào)數(shù)據(jù)包(封裝前)
(1)機(jī)車燈信號(hào)(10路50 V數(shù)字量信號(hào))數(shù)據(jù)包僅需1 byte數(shù)據(jù)。從0x00~0x0a分別表示10個(gè)燈信號(hào)中某一個(gè)打開,其余關(guān)閉。
(2)機(jī)車工況信號(hào)(6路110 V數(shù)字量信號(hào))數(shù)據(jù)包包含2個(gè)byte。第1個(gè)byte用于選中端口號(hào),第2個(gè)byte用于表示選中端口的開關(guān)狀態(tài)。
(3)機(jī)車管壓信號(hào)(7路模擬量信號(hào))包含14個(gè)byte數(shù)據(jù)。每2個(gè)byte表示一個(gè)管壓通道的信號(hào),可直接由單片機(jī)SPI接口送入芯片。每2個(gè)byte中最高2 bit用于數(shù)模芯片選擇4通道中的一個(gè)通道,最高次2 bit分別是低功耗位及4通道同步位,這里都取1不使用,同樣最低2 bit為無效位也不使用。數(shù)據(jù)位為第3 bit~第12 bit,10個(gè)數(shù)據(jù)位表示輸出的電壓大小,如圖7所示。計(jì)算公式如式(1)。
圖7 AD5314輸入寄存器
(4)機(jī)車速度信號(hào)(4路頻率量信號(hào))數(shù)據(jù)包包含16個(gè)byte數(shù)據(jù),每個(gè)速度信號(hào)通道有4個(gè)byte數(shù)據(jù)。前2個(gè)byte分別為定時(shí)器的定時(shí)高位和低位計(jì)數(shù),第3個(gè)byte表示是否將單片機(jī)定時(shí)器12分頻,第4個(gè)byte表示是否需要增加外循環(huán)。前文已述速度頻率量的范圍為0 Hz~3 333 Hz,為實(shí)現(xiàn)此頻率寬度在單片機(jī)程序中采用分段式的頻率產(chǎn)生方法,頻率在168.75 Hz~3 333 Hz時(shí),可通過定時(shí)器直接定時(shí)產(chǎn)生,并計(jì)算最大誤差在3 333 Hz時(shí)產(chǎn)生約為1 Hz,轉(zhuǎn)換為轉(zhuǎn)速為0.3 r/min,在可接受的范圍內(nèi)。當(dāng)頻率在14.062 5 Hz~168.75 Hz時(shí),需要將單片機(jī)的定時(shí)器進(jìn)行12分頻,也可得到精確的頻率,在這里由于頻率較低故可忽略由單片機(jī)中斷程序產(chǎn)生的額外機(jī)器指令周期。當(dāng)頻率小于14.062 5 Hz時(shí),需要利用軟件加入外循環(huán)增加計(jì)數(shù)次數(shù),這就帶來了因運(yùn)行循環(huán)指令造成的額外誤差,但鑒于此段頻率很低故認(rèn)為滿足精度。程序中對小于14.062 5 Hz的頻率增加了500次循環(huán)計(jì)數(shù),理論可產(chǎn)生最低0.028 125 Hz。
5.1 上位機(jī)界面
上位機(jī)界面如圖8所示。
圖8 上位機(jī)界面
5.2 速度信號(hào)波形
以周期3 ms為例,速度信號(hào)如圖9所示。
圖9 速度信號(hào)波形
從圖9中可看出,頻率脈沖信號(hào)符合理論值,其他信號(hào)雖未用圖展示但也符合理論值。
仿真結(jié)果證明,該仿真系統(tǒng)完全能夠?qū)崿F(xiàn)設(shè)計(jì)的初衷,相應(yīng)信號(hào)均能正確產(chǎn)生,并與LKJ2000匹配工作,同時(shí)也能與其他仿真器配合,實(shí)現(xiàn)PC平臺(tái)對LKJ2000型監(jiān)控裝置的仿真應(yīng)用。
[1]楊志剛.列車運(yùn)行監(jiān)控記錄裝置[M]. 北京:中國鐵道出版社, 1999.
[2]邵志和.LKJ2000型列車運(yùn)行監(jiān)控記錄裝置的研究[D].長沙:中南大學(xué),2005.
[3]藺 雯.簡單介紹LKJ2000型列車運(yùn)行監(jiān)控裝置[J].科學(xué)之友,2011(18):72-73.
[4]梁紅梅. LKJ2000型列車運(yùn)行監(jiān)控記錄裝置的發(fā)展及應(yīng)用[J].科技創(chuàng)業(yè)月刊,2012,(6):176-178.
[5]劉書智.Visual C++串口通信與工程應(yīng)用實(shí)踐[M].北京:中國鐵道出版社,2011.
[6]蔣大煒. 列車監(jiān)控系統(tǒng)仿真及應(yīng)用研究[D].上海:同濟(jì)大學(xué),2008.
[7]李鳳華,錢雪軍. 基于Windows XP Embedded的LKJ2000仿真系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 鐵路計(jì)算機(jī)應(yīng)用,2013,22(7):28-30.
責(zé)任編輯 徐侃春
Simulation on LKJ2000 Train Operation Monitoring Control System
LI Xiaojie, QIAN Xuejun
( Department of Electrical Engineering, Tongji University, Shanghai 200331, China )
According to the different switching signals from corresponding different functional modules of KJ2000 train monitoring and recording devices, such as the locomotive condition signal, locomotive pressure sensor signals, a microcontroller-based analog interface circuit was developed to produce the appropriate matching signal available for off l ine detection of LKJ2000 train monitoring and recording device. With VS2010 development tools and MFC software-development-kits, a platform was designed on the Windows platform for human-machine interface control. To implement the two-way communication between the microcontroller analog interface circuit and the Windows platform, serial communication protocol was applied and a set of Human-machine Interface Simulation System was formed. The research results showed that the System could not only be applied to the locomotive simulator but also for the corresponding teaching and training.
LKJ2000; single chip; train monitoring control; Simulation System
U284.55∶TP39
A
1005-8451(2015)05-0038-04
2014-10-28
李曉杰,在讀碩士研究生;錢雪軍,副教授。