摘 要: 城市軌道交通乘客信息系統(tǒng)中信號(hào)處理單元的設(shè)計(jì)主要是為了解決PIS(Passenger Information System)系統(tǒng)與列車計(jì)算機(jī)網(wǎng)絡(luò)的通信問(wèn)題,以及PIS系統(tǒng)中不同模塊之間通信問(wèn)題,,在PIS系統(tǒng)中具有關(guān)鍵作用,,并具有重要的研究?jī)r(jià)值。選取AVR單片機(jī)作為主控芯片,,針對(duì)信號(hào)處理單元所要實(shí)現(xiàn)的功能,,提出了針對(duì)RS485串行接口通信及并行接口通信的解決方案,并且實(shí)現(xiàn)了數(shù)據(jù)處理功能及對(duì)其他模塊的信號(hào)控制,。
關(guān)鍵詞: 乘客信息系統(tǒng)(PIS),;AVR;USART,;RS485
0 引言
本文研究背景選自上海軌道交通9號(hào)線車輛乘客信息系統(tǒng)(Passenger Information System,,PIS)[1]國(guó)產(chǎn)化項(xiàng)目。PIS系統(tǒng)在城市軌道交通中為乘客提供語(yǔ)音和文字等列車廣播信息,,對(duì)于列車運(yùn)營(yíng)和服務(wù)起很重要作用[2],。實(shí)現(xiàn)PIS系統(tǒng)國(guó)產(chǎn)化對(duì)于地鐵線路提高運(yùn)營(yíng)服務(wù)質(zhì)量、降低設(shè)備維護(hù)成本也具有很重要的現(xiàn)實(shí)意義,。
目前,,上海地鐵9號(hào)線的車輛采用國(guó)外某公司的列車控制系統(tǒng),簡(jiǎn)稱MITRAC[3],,它由分散布置的輸入/輸出單元,、高性能的計(jì)算機(jī)、相應(yīng)的控制和診斷軟件以及統(tǒng)一的通信設(shè)施組成,。本文針對(duì)國(guó)產(chǎn)化PIS系統(tǒng)項(xiàng)目中信號(hào)處理單元進(jìn)行研究設(shè)計(jì),,首先對(duì)MITRAC發(fā)給PIS系統(tǒng)的信號(hào)進(jìn)行數(shù)據(jù)采集分析,,然后設(shè)計(jì)信號(hào)處理單元,,實(shí)現(xiàn)PIS系統(tǒng)與列車計(jì)算機(jī)網(wǎng)絡(luò)MITRAC之間的通信,并且對(duì)信號(hào)進(jìn)行處理,,實(shí)現(xiàn)對(duì)其他模塊的通信和信號(hào)控制,。
1 信號(hào)處理單元功能介紹
列車計(jì)算機(jī)網(wǎng)絡(luò)MITRAC發(fā)送給PIS系統(tǒng)的信號(hào),由司機(jī)室激活信號(hào),、自動(dòng)廣播/可視信息激活信號(hào),、站臺(tái)碼以及車輛編碼等信息組成[4],。其中站臺(tái)碼是一個(gè)16位的無(wú)符號(hào)整型數(shù),具有唯一性,,用于觸發(fā)播放相應(yīng)的語(yǔ)音廣播信息和列車客室內(nèi)LED文字信息,。信號(hào)處理單元需要實(shí)現(xiàn)MITRAC與PIS系統(tǒng)之間的有效通信,并且處理相應(yīng)的信號(hào)數(shù)據(jù),,提取出站臺(tái)碼,,并把站臺(tái)碼作為控制信號(hào)發(fā)送給其他控制單元。
MITRAC與PIS的通信接口為RS485接口,,信號(hào)處理單元需要設(shè)計(jì)與RS485接口相匹配的接口來(lái)實(shí)現(xiàn)與MITRAC的通信[5-6],。MITRAC使用列車控制專用通信協(xié)議WELNET,數(shù)據(jù)傳輸速度為19 200 b/s,,數(shù)據(jù)形式為8個(gè)數(shù)據(jù)位,、1個(gè)停止位、無(wú)奇偶校驗(yàn)[7],。MITRAC發(fā)送給PIS系統(tǒng)的實(shí)際信號(hào)數(shù)據(jù)由本文設(shè)計(jì)的專用數(shù)據(jù)采集工具采集分析獲得,。
如圖1所示,信號(hào)處理單元的功能如下:
?。?)通過(guò)RS485接口實(shí)現(xiàn)信號(hào)處理單元與MITRAC之間的通信,,信號(hào)處理單元從MITRAC接收的數(shù)據(jù)中提取出站臺(tái)碼;
?。?)信號(hào)處理單元以并口的信號(hào)形式把站臺(tái)碼發(fā)給數(shù)字語(yǔ)音報(bào)站器DIAS[8-9],,控制播放相應(yīng)音頻信息;
?。?)通過(guò)RS485接口信號(hào)處理單元把站臺(tái)碼發(fā)送至列車客室LED顯示控制器,,控制顯示相應(yīng)文字信息。
下面以上海地鐵9號(hào)線楊高中路站→佘山站這個(gè)運(yùn)營(yíng)區(qū)間為例,,對(duì)MITRAC發(fā)送給PIS系統(tǒng)的數(shù)據(jù)進(jìn)行分析,,當(dāng)播報(bào)下一站是世紀(jì)大道站時(shí),MITRAC發(fā)送的數(shù)據(jù)信息如圖2所示,,數(shù)據(jù)以16進(jìn)制編碼顯示,。
當(dāng)MITRAC發(fā)送給PIS系統(tǒng)發(fā)送列車廣播控制信息時(shí),圖2中第一行陰影部分編碼值從十六進(jìn)制數(shù)0X0000變成第二行數(shù)據(jù)0X01B3,,其中0X01B3是世紀(jì)大道站的站臺(tái)碼,,十進(jìn)制數(shù)為435,此站臺(tái)碼作為控制相應(yīng)音頻信息和LED顯示信息的信號(hào),,在播放世紀(jì)大道相應(yīng)音頻和文字信息時(shí)站臺(tái)碼值始終保持不變,,當(dāng)接收到下一站的站臺(tái)碼時(shí),相應(yīng)的音頻信息和LED顯示信息也隨之改變,。
2 信號(hào)處理單元硬件設(shè)計(jì)
首先為信號(hào)處理板設(shè)計(jì)相應(yīng)的硬件接口實(shí)現(xiàn)硬件連接,,其中包括兩個(gè)RS485接口和一個(gè)多路的并行接口,。
2.1 主控電路設(shè)計(jì)
本文采用的主控芯片ATmega128是ATMEL公司的一款高性能、低功耗的AVR 8位微處理器,,具有128 KB的系統(tǒng)內(nèi)可編程Flash,,4 KB的EEPROM,4 KB的內(nèi)部SRAM,,具有兩個(gè)可編程的同步和異步串行接收器和轉(zhuǎn)發(fā)器USART,,即USART0和USART1。其中,,USART是一個(gè)高度靈活的串行通信設(shè)備,,能夠全雙工操作,具有獨(dú)立的串行接收和發(fā)送寄存器,。
ATmega128單片機(jī)能夠滿足設(shè)計(jì)需求,,設(shè)計(jì)中采用11.059 2 MHz的晶振,并且選取一個(gè)8位32 KB芯片61C256作為SRAM擴(kuò)展以提高數(shù)據(jù)處理性能,。其中USART0用于ATmega128單片機(jī)和MITRAC的RS485接口通信,,USART1用于ATmega128單片機(jī)和LED顯示器的RS485接口通信,端口PORTC,、PORTF用于ATmega128和數(shù)字語(yǔ)音報(bào)站器DIAS的并口通信,。
2.2 USART接口設(shè)計(jì)
本文采用芯片MAX491和MAX232分別實(shí)現(xiàn)RS485接口通信和RS232接口通信。
MAX491是用于RS485/422通信[10]的低功耗全雙工收發(fā)器,,具有一個(gè)驅(qū)動(dòng)器和一個(gè)接收器,。MAX491可以實(shí)現(xiàn)最高2.5 Mb/s的傳輸速率。
當(dāng)ATmega128單片機(jī)與RS485接口通信時(shí),,采用光電隔離的方法予以實(shí)現(xiàn),,提高系統(tǒng)抗信號(hào)干擾能力,保障數(shù)據(jù)完整無(wú)誤地傳輸[11],。在RS485接口電路的設(shè)計(jì)中,,需要根據(jù)串行通信的波特率選擇不同的光電耦合器。光電耦合器的傳輸速率必須大于通信的波特率,,且光電耦合器的傳輸速率越高,,通信的波特率就越高。本文選取的光電耦合器TLP521最高能達(dá)到38 400 b/s的傳輸速度,,滿足設(shè)計(jì)要求,。
MAX232為EIA/TIA-232E通信接口設(shè)計(jì),本文采用MAX232芯片用于RS232接口電路,,實(shí)現(xiàn)USART串口與PC的通信,,方便調(diào)試和數(shù)據(jù)監(jiān)控,。
本文所設(shè)計(jì)的USART接口電路原理圖如圖3所示,。在接收數(shù)據(jù)時(shí),,RS485和RS232接口可以實(shí)現(xiàn)同步數(shù)據(jù)接收;在發(fā)送數(shù)據(jù)時(shí),,采用跳線的設(shè)計(jì)來(lái)控制RS485或RS232向單片機(jī)發(fā)送數(shù)據(jù),。
2.3 并口信號(hào)驅(qū)動(dòng)電路設(shè)計(jì)
并口信號(hào)驅(qū)動(dòng)電路主要實(shí)現(xiàn)從單片機(jī)端口的信號(hào)到并口輸出端的信號(hào)轉(zhuǎn)化,站臺(tái)碼以并口信號(hào)形式發(fā)送到數(shù)字語(yǔ)音報(bào)站器DIAS,。同時(shí)也采用光電耦合器TLP521實(shí)現(xiàn)信號(hào)隔離和電壓轉(zhuǎn)化,,把單片機(jī)側(cè)3.3 V輸出電壓信號(hào)轉(zhuǎn)化成并口輸出端的24 V電壓信號(hào)。并口信號(hào)驅(qū)動(dòng)電路其中一路的原理圖如圖4所示,。
3 信號(hào)處理單元軟件設(shè)計(jì)
ATmega128通過(guò)RS485接口接收MITRAC發(fā)送過(guò)來(lái)的數(shù)據(jù),,經(jīng)過(guò)數(shù)據(jù)處理后,提取出16 bit的無(wú)符號(hào)數(shù)站臺(tái)碼,,用于對(duì)列車客室內(nèi)LED顯示器顯示信息和數(shù)字語(yǔ)音報(bào)站器DIAS的信號(hào)控制,,顯示相應(yīng)報(bào)站文字信息以及廣播語(yǔ)音報(bào)站信息。信號(hào)處理單元軟件設(shè)計(jì)的流程圖如圖5中所示,。
3.1 USART串口程序設(shè)計(jì)
首先要對(duì)USART進(jìn)行初始化,,包括波特率和幀結(jié)構(gòu)的設(shè)定,以及根據(jù)需要使能接收器或發(fā)送器,。USART有三個(gè)獨(dú)立的中斷:發(fā)送結(jié)束中斷,、發(fā)送數(shù)據(jù)寄存器空中斷以及接收結(jié)束中斷。對(duì)于中斷驅(qū)動(dòng)的USART操作,,在初始化時(shí)首先要清零全局中斷標(biāo)志位,。
USART收發(fā)數(shù)據(jù),若是采用輪循(Polling)方式,,高速AVR單片機(jī)的效率將會(huì)很低,。為了解決低速串口與高速AVR單片機(jī)之間的矛盾,本文中ATmega128串口控制程序采用中斷的方式并且設(shè)計(jì)接收和發(fā)送數(shù)據(jù)緩沖器來(lái)提高ATmega128的效率,。
數(shù)據(jù)緩沖器的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)為循環(huán)隊(duì)列,,它由讀、寫及一個(gè)隊(duì)列計(jì)數(shù)器3個(gè)指針控制,,用于判斷當(dāng)前寫入數(shù)據(jù),、讀出數(shù)據(jù)在隊(duì)列中的位置,并判斷隊(duì)列是否為空和是否已滿,。
3.2 并口程序設(shè)計(jì)
并口控制程序主要是為了實(shí)現(xiàn)單片機(jī)發(fā)送控制命令給數(shù)字語(yǔ)音報(bào)站器DIAS,,在單片機(jī)需要發(fā)送數(shù)據(jù)時(shí),根據(jù)所要發(fā)送的數(shù)據(jù)把相應(yīng)信號(hào)端口置位即可,,控制音頻信息播放,。
4 結(jié)論
本文經(jīng)過(guò)對(duì)前期采集數(shù)據(jù)的分析工作,針對(duì)乘客信息系統(tǒng)中信號(hào)處理單元所要實(shí)現(xiàn)的功能進(jìn)行研究設(shè)計(jì),,并且完成相應(yīng)的硬件和軟件設(shè)計(jì),,實(shí)現(xiàn)了通信和數(shù)據(jù)處理功能,。經(jīng)過(guò)實(shí)際電路的測(cè)試和檢驗(yàn),實(shí)現(xiàn)了預(yù)期的功能,。信號(hào)處理單元的設(shè)計(jì)在整個(gè)乘客信息系統(tǒng)國(guó)產(chǎn)化項(xiàng)目中處于極重要環(huán)節(jié),,為整個(gè)乘客信息系統(tǒng)的實(shí)現(xiàn)解決了關(guān)鍵的問(wèn)題,具有重要的研究?jī)r(jià)值和實(shí)用價(jià)值,。本文所設(shè)計(jì)的信號(hào)處理單元不僅僅是解決了上海地鐵9號(hào)線PIS系統(tǒng)的數(shù)據(jù)通信問(wèn)題,,所設(shè)計(jì)的電路和軟件解決的技術(shù)問(wèn)題具有通用價(jià)值和普遍意義。
參考文獻(xiàn)
[1] 闞庭明.城市軌道交通乘客信息系統(tǒng)技術(shù)發(fā)展趨勢(shì)探討[J].鐵路計(jì)算機(jī)應(yīng)用,,2009,,18(1):37-39.
[2] 于孝安,孫同慶,,汪曉臣,,等.城市軌道交通乘客信息系統(tǒng)路網(wǎng)控制中心設(shè)計(jì)的研究[J].鐵路計(jì)算機(jī)應(yīng)用,2013,,22(5):55-57.
[3] IEC61375-1 Ed.2 2005,, Electric railway equipment-train bus-part1: train communication network[S].2005.
[4] 長(zhǎng)春長(zhǎng)客-龐巴迪軌道車輛有限公司.上海9號(hào)線車輛PIS系統(tǒng)的設(shè)計(jì)規(guī)格書(shū)[Z].2002:14-15.
[5] 許燕萍,楊代華.RS485串行總線可靠性的研究[J]電子科技,,2009,,22(2):8-10.
[6] 姚發(fā)閃,陳志軍.基于AT89C52單片機(jī)的RS485-CAN智能轉(zhuǎn)換器設(shè)計(jì)[J]微型機(jī)與應(yīng)用,,2012,,31(3):34-36.
[7] 耿立中,王鵬,,馬騁,,等.RS485高速數(shù)據(jù)傳輸協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)[J]清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,,48(8):1311-1314.
[8] 張恒旭,,郭秀清,霍勇.基于ATmega128數(shù)字化報(bào)站器的設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)電一體化,,2011,,17(10):66-70.
[9] 張恒旭.地鐵列車報(bào)站系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].上海:同濟(jì)大學(xué),2012.
[10] Ni Haiyan,, Hu Chao,, Ma Changwang. Research on a 485-serial network architecture in intelligent uptown management[C]. Proceedings of 2006 IEEE Conference on Mechatronics and Automation, Luoyang: IEEE Press,, 2006: 400-405.
[11] 黃俊杰,,黃云峰.AVR單片機(jī)實(shí)現(xiàn)光電隔離RS-422-485智能接口研究[J]鄭州大學(xué)學(xué)報(bào)(工學(xué)版),2004,25(1):85-88.