基于P87C591的機車電子柜實時檢測系統設計
開關量采集單元可采用一片8255A來擴展PO口以對15路開關信號進行采樣,8255A的A、B、C口設定為模式O和輸人方式。8255A可擴展24個并行接口,實際上只能使用其中的15路,剩下的可作為備用接口。當單片機發出開關量信號采集命令時,開關量信號將從機車電子柜的29#和49#插槽引出,在經信號調理電路實現與采樣電路的電氣隔離后,8k8255A便可進入單片機。系統中的脈沖采集模塊與開關量采集模塊基本相似,在此不做贅述。
4存儲發送單元電路設計
存儲發送單元主要包括微處理器及其控制部分、CAN通訊接口部分、串口擴展和USB接口等。其中微處理器及其控制部分、CAN通訊接口部分跟前面介紹的模塊基本一致。串口擴展部分帶有兩個RS-232接口和一個RS-485接口,并帶有跳線可以選擇兩種狀態為一個RS-232接口和一個RS-485接口或兩個RS-232接口而沒有RS-485接口。串口擴展采用16C550芯片。USB接口系統利用CH375作為控制器。并可通過串行輸入輸出或并行輸入輸出和中斷輸出來方便地實現USB移動存儲設備與單片機系統的連接。CH375的并行接口連接圖如圖7所示。
5系統軟件設計
整個監測系統工作時,先由模擬量采集單元將采集的數據按CAN標準幀格式發給存儲發送單元,當存儲發送單元等待并接收到模擬量采集單元采集的數據后,即可向開關量采集單元發送數據采集請求,并等待接收開關量采集單元的采集結果,最后,存儲發送單元再向脈沖量采集單元發送數據采集請求,并等待接收脈沖量采集單元采集結果。存儲發送單元在判斷數據是否正常之后,即可把接收到的數據存貯在CF存貯器內,最后寫串口。最后,再把數據通過標準RS-485接口發送到診斷單元或通過USB接口取出,以便應用到地面分析處理系統。
軟件設計就是在模擬量采集單元初始化后等待上位機發來的數據采集請求指令,然后啟動定時器TO并進行A/D轉換,再將轉換結果按CAN標準幀格式打包發送給存儲發送單元。其程序流程圖如圖8所示。其中,定時器TO的中斷子程序代碼如下:

開關量和脈沖量的采集原理與模擬量的采集原理類似,這里不再詳細介紹。
6結束語
該監測系統為鐵道部引導課題,本系統經過實驗室內部聯調證明:其性能穩定,抗干擾能力強,目前已在機務段裝車運行,取得了良好的效果。本系統的不足之處是脈沖量的采集,只能檢測到電子柜是否有脈沖觸發信號的輸出,而不能采集到信號的波形。因此,該系統還有于待進一步完善。
評論