??? 摘 要: 根據(jù)擺式列車的基本工作原理,設計制作了基于雙CPU的嵌入式線路信息檢測系統(tǒng)。系統(tǒng)采用AMTEL公司的AT89S51和SAMSUNG公司的S3C44B0X兩款微處理器分別作為數(shù)據(jù)采集計算機和傾擺控制主控計算機,通過雙端口存儲器進行數(shù)據(jù)通信。在硬件設計的基礎上,完成了基于μC/OS-II實時操作系統(tǒng)的檢測系統(tǒng)軟件設計。
??? 關鍵詞: 嵌入式技術;檢測系統(tǒng);擺式列車
?
??? 開行擺式列車是實現(xiàn)鐵路既有線路提速的一種有效方法[1]。擺式列車分被動擺和主動擺兩種類型。被動擺依靠車輛通過曲線時的離心力作用,使車體繞其擺心自動地向曲線內側傾斜,不需要外加動力源。具有代表性的是西班牙的Talgo列車、日本的381電動車組、德國Wegmann和瑞士的Neiko;主動擺則是在外加動力的作用下使車體向曲線內側傾斜。具有代表性的是意大利Fiat公司的ETR電動車組、瑞典ABB公司的X2000列車以及德國ADtranz公司的VT611內燃動車組。被動擺簡單,不需要作動器、控制及信號采集系統(tǒng)。由于其在曲線上的傾擺角一般不超過3.5°,提速的幅度小,同時受傾擺機構阻力的影響,車體傾擺會產(chǎn)生“遲滯”現(xiàn)象,影響乘坐的舒適性,已從擺式列車的主流中逐漸退出。主動擺在曲線上的傾擺角可達8°,提速幅度大,車體傾擺動作響應較快,乘坐舒適。目前,世界各國擺式列車大多采用主動擺形式。根據(jù)我國的線路情況以及國外的經(jīng)驗,我國研制的擺式列車傾擺控制系統(tǒng)采用的是主動擺形式[1-3]。
?? ?主動擺式列車以列車通過曲線時所承受的未平衡離心加速度作為傾擺角度的計算依據(jù),加速度信號的準確與否直接關系到車體傾擺動作、乘坐的舒適性和列車運行的安全性。特別是未平衡離心加速度信號測量和計算處理的實時性,關系到能否實現(xiàn)第一節(jié)車輛的及時傾擺控制[1-3]。因此,研制具有高的穩(wěn)定性、可靠性和實時性的傾擺控制檢測系統(tǒng)對于擺式列車的成功應用至關重要。
1 擺式列車傾擺控制系統(tǒng)基本組成
??? 目前,新一代擺式列車基本上都采用指令驅動式的控制模式[2]。即控制信號由位于頭車的指令中心產(chǎn)生,通過通信網(wǎng)絡順次傳送到后續(xù)各車輛控制器,再由各車輛控制器控制車體實時傾擺。因此,要完成列車的傾擺控制,傾擺控制系統(tǒng)必須包括線路信息檢測子系統(tǒng)、傾擺控制信號產(chǎn)生子系統(tǒng)和傾擺作動子系統(tǒng),并采用列車通信網(wǎng)絡將各個子系統(tǒng)連成一個分布式列車測控網(wǎng)絡系統(tǒng)。圖1是擺式列車傾擺控制系統(tǒng)原理框圖。
?
2 基于雙CPU的線路信息檢測子系統(tǒng)
2.1 系統(tǒng)總體方案設計
??? 圖2是擺式列車傾擺控制線路信息檢測子系統(tǒng)的原理框圖。線路信息檢測子系統(tǒng)主要包括傳感器、信號調理、A/D轉換、數(shù)據(jù)采集及信號處理等功能模塊。其主要功能是實時采集來自陀螺平臺、陀螺儀和加速度傳感器的線路信號,經(jīng)相應的信號處理,得到列車通過曲線時的未平衡離心加速度大小,據(jù)此計算出相應的傾擺角度提供給傾擺控制主控計算機。該檢測子系統(tǒng)采用了雙CPU結構,數(shù)據(jù)采集和數(shù)據(jù)處理的任務分別交由兩個計算機系統(tǒng)完成,二者通過雙端口存儲器進行數(shù)據(jù)交換。
?
系統(tǒng)選用AMTEL公司的AT89S51和SAMSUNG公司的S3C44B0X兩款微處理器分別作為數(shù)據(jù)采集計算機和傾擺控制主控計算機。
??? AT89S51是一款性價比良好的單片微處理器,具有4KB的片內Flash存儲器,最高工作頻率為33MHz。由于只負責進行數(shù)據(jù)采集,程序簡單、代碼較少,因此系統(tǒng)設計時不需要進行外部存儲器擴展。由于用于傾擺控制的有效信號的頻率范圍不超過1Hz,因此對數(shù)據(jù)采集系統(tǒng)的工作頻率沒有較高要求。
??? S3C44B0X是SAMSUNG公司推出的基于ARM7TDMI核的16/32位RISC處理器,其豐富的片內外設接口功能,使其能方便地與各種外部設備相連,例如LCD顯示器、大容量存儲卡、UART通信設備、鍵盤和觸摸屏等,并且能夠方便地移植實時操作系統(tǒng)。主控計算機采用S3C44B0X芯片,不僅具有體積小、功耗低、高性能等特點,而且能夠簡化系統(tǒng)設計,大大降低了整個系統(tǒng)的成本。
??? 系統(tǒng)設計中擴展了NOR Flash和NAND Flash兩種類型的Flash芯片,其中一片AM29LV320DB NOR Flash(4MB)作為系統(tǒng)的啟動盤,一片K9F2808U NAND Flash(16M×8bit)用于大量程序和數(shù)據(jù)的存儲。此外,系統(tǒng)中還擴展了一片HY57V561620 SDRAM芯片(4Mbit×4banks×16),主要用作程序的運行空間、數(shù)據(jù)及堆棧區(qū)。
2.2 傳感器及其安裝
??? 由于主動式擺式列車最大傾擺角度不超過8°,因此通過傾擺控制能補償?shù)淖畲髾M向離心加速度約為gsin(8°)≈1.4m/s2。而我國鐵路規(guī)定客車通過曲線的最大未平衡離心加速度為0.76m/s2,因此,列車通過曲線的最大離心加速度約為2.16m/s2。但通過對所有線路試驗數(shù)據(jù)的分析可知,受軌道不平順等振動干擾因素的影響,橫向加速度信號的最大幅度達到了12m/s2,因此,考慮線路測量的具體情況,加速度傳感器的量程確定為2g。
??? 試驗所用陀螺儀采用液浮式雙向角速率陀螺儀,安裝在密封的金屬盒里。兩個陀螺儀測量方向相互垂直,一個測量轉向架的側滾角速率;另一個測量轉向架在軌道平面內的轉彎角速率。根據(jù)我國鐵路工程技術規(guī)范的規(guī)定并考慮軌道不平順引起的振動干擾噪聲,側滾角速率和轉彎角速率兩個方向的角速率陀螺儀的量程選為10°/s。
??? 圖3是相關傳感器在機車及其轉向架上的安裝位置示意圖。
?
2.3 數(shù)據(jù)采集模塊設計
??? 加速度傳感器和陀螺儀輸出的模擬信號,經(jīng)抗混疊濾波器組濾去信號中的高頻成分,然后經(jīng)采樣保持和A/D轉換變?yōu)閿?shù)字信號,存儲在雙端口存儲器中。
??? 傳感器所測加速度信號和角速率信號中都包含了大量的高頻隨機振動干擾。而列車車輛本身幾個主要振型的固有頻率在1~10Hz的范圍內,所以消除干擾的低通濾波器的截止頻率范圍通常在0.1~1Hz??紤]到信號在計算機內部還要進行數(shù)字濾波處理,抗混疊濾波器可采用截止頻率10Hz的二階壓控電壓源低通濾波器。
??? 測試系統(tǒng)要實現(xiàn)高精度測量,必須保證A/D轉換器有足夠高的分辨率。系統(tǒng)中的A/D轉換器采用美國MAXIM公司的新產(chǎn)品MAX197芯片。MAX197是多量程(±10V,±5V,0~10V,0~5V)、8通道、內部帶有采樣保持電路的12位A/D轉換器。轉換時間6μs,采樣率為100kS/s。具有標準的微機接口,輸入輸出與TTL/CMOS電平兼容。
3 擺式列車線路信息檢測子系統(tǒng)軟件設計
3.1 數(shù)據(jù)采集模塊程序設計
?? ?基于AT89S51的數(shù)據(jù)采集模塊與基于S3C44B0X的主控模塊之間通過雙端口存儲器進行數(shù)據(jù)交換。根據(jù)擺式列車傾擺控制的實際要求,一方面數(shù)據(jù)采集模塊每采集一組數(shù)據(jù)(包括8路傳感器信號)并存入雙端口存儲器后,便以中斷方式通知主控模塊,主控模塊隨即把這組采樣數(shù)據(jù)從雙端口存儲器讀出,進行相應的數(shù)據(jù)處理運算,實現(xiàn)數(shù)據(jù)采集和處理的同步;另一方面,主控模塊能夠向數(shù)據(jù)采集模塊傳送命令數(shù)據(jù),控制數(shù)據(jù)采集的開始和停止及采樣時間間隔的選擇等。在此數(shù)據(jù)傳輸中,要協(xié)調好雙方對雙端口存儲器的訪問,以免雙方對相同存儲器單元同時訪問,保證整個系統(tǒng)正常、協(xié)調地工作。為此,在雙端口存儲器的最低地址保留6個存儲單元專門用于雙方的握手。
??? 利用AT89S51內部的16位定時/計數(shù)器,采用硬件定時的方式實現(xiàn)8路數(shù)據(jù)的采集,并將采集的數(shù)據(jù)存入雙端口存儲器中。程序流程圖如圖4所示。
?
3.2 基于μC/OS-II的主控模塊程序設計
??? 主控模塊軟件的設計主要基于μC/OS-II實時操作系統(tǒng)進行[5],其總體結構如圖5所示。
?
??? 當系統(tǒng)上電或復位后,系統(tǒng)將從程序代碼空間的首地址0x00000000開始執(zhí)行,即從Main( )函數(shù)的開始處執(zhí)行。程序首先執(zhí)行整個系統(tǒng)的軟硬件初始化,包括操作系統(tǒng)的初始化和硬件中斷、定時器、接口等的初始化。初始化結束后,Main( )函數(shù)先后創(chuàng)建如下任務:
??? (1)TaskStart:系統(tǒng)運行后創(chuàng)建的第一個任務。完成一些初始化工作以及創(chuàng)建其他任務。所有工作完成后,此任務被刪除。
?? ?(2)TaskCommand:寫命令任務。根據(jù)雙端口存儲器STATE單元的值,向雙端口存儲器COM單元寫入相應的命令。
?? ?(3)TaskDataProcess:數(shù)據(jù)處理任務。從雙端口存儲器中讀取采集數(shù)據(jù)并進行相應的實時數(shù)據(jù)處理。
?? ?(4)TaskControl:傾擺控制指令產(chǎn)生任務。根據(jù)實時數(shù)據(jù)處理結果,按照一定的控制策略產(chǎn)生傾擺控制指令信息。
?? ?(5)TaskLCD:LCD顯示任務。負責傾擺控制過程中重要數(shù)據(jù)及信息的顯示。
?? ?(6)Task232:RS232通信任務。負責通過RS232總線與上位機通信。
?? ?初始化完成后,系統(tǒng)處于就緒等待狀態(tài)。任務優(yōu)先級較低的TaskLCD任務得到運行,完成界面顯示并循環(huán)等待。當按下“開始”操作按鈕時,觸發(fā)相應的鍵盤中斷服務程序,在該中斷服務程序中調用OSSemPost(SendCOM)函數(shù),發(fā)出信號量SendCOM,并使正在等待該信號量的TaskCommand任務接收到該信號量。TaskCommand任務將在鍵盤中斷服務程序退出之后恢復運行,并向數(shù)據(jù)采集模塊發(fā)出開始采集命令。當數(shù)據(jù)采集模塊把一組采樣數(shù)據(jù)寫入雙端口存儲器之后,便向主控模塊發(fā)出讀取數(shù)據(jù)的中斷請求信號。在主控模塊中,該中斷請求信號觸發(fā)相應的數(shù)據(jù)讀取中斷服務程序,在該中斷服務程序中調用OSSemPost(ReadDATA)函數(shù),發(fā)出信號量ReadDATA,并使正在等待該信號量的TaskDataProcess任務接收到該信號量。TaskDataProcess任務將在數(shù)據(jù)讀取中斷服務程序退出之后恢復運行,讀取數(shù)據(jù)并進行相應的實時數(shù)據(jù)處理。
4 線路試驗
??? 擺式列車的研制過程中,在成渝線和成昆線上進行了多次傾擺控制系統(tǒng)線路試驗。擺式列車傾擺控制的關鍵是及時、準確地獲取列車通過曲線時的未平衡離心加速度信號,據(jù)此產(chǎn)生傾擺控制指令。圖6是加速度傳感器實際測量的未平衡離心加速度信號及其濾波結果。圖7是陀螺儀測量的列車側滾角速率信號及其濾波結果。
?
?
??? 本文根據(jù)擺式列車的基本工作原理,設計制作了基于雙CPU的嵌入式線路信息檢測子系統(tǒng),并對檢測子系統(tǒng)軟硬件結構及其主要功能進行了描述。對該檢測子系統(tǒng)進行了實際線路試驗和數(shù)據(jù)的分析處理。結果表明,本文所設計的基于雙CPU的嵌入式擺式列車傾擺控制檢測系統(tǒng)能實現(xiàn)擺式列車通過曲線時離心加速度等信號的有效檢測,工作性能穩(wěn)定、可靠,具有較好的實時性。
參考文獻
[1] 李芾.國外擺式列車發(fā)展和運用概況[J].西南交通大學學報,2000,3(6):569-575.
[2] 倪文波,耿標.擺式列車傾擺控制系統(tǒng)[J].西南交通大學學報,2000,35(6):642-646.
[3] 倪文波,劉榮,王雪梅,等.擺式客車機電式傾擺系統(tǒng)研究[J].鐵道學報,1999,21(5):20-23.
[4] 周立功.ARM微控制器基礎與實戰(zhàn)[M].北京:北京航空航天大學出版社,2003.
[5] 任哲.嵌入式實時操作系統(tǒng)?滋C/OS-II原理及應用[M].北京:北京航空航天大學出版社,2006.