基于P87C591的機(jī)車(chē)電子柜實(shí)時(shí)檢測(cè)系統(tǒng)設(shè)計(jì)
開(kāi)關(guān)量采集單元可采用一片8255A來(lái)擴(kuò)展PO口以對(duì)15路開(kāi)關(guān)信號(hào)進(jìn)行采樣,8255A的A、B、C口設(shè)定為模式O和輸人方式。8255A可擴(kuò)展24個(gè)并行接口,實(shí)際上只能使用其中的15路,剩下的可作為備用接口。當(dāng)單片機(jī)發(fā)出開(kāi)關(guān)量信號(hào)采集命令時(shí),開(kāi)關(guān)量信號(hào)將從機(jī)車(chē)電子柜的29#和49#插槽引出,在經(jīng)信號(hào)調(diào)理電路實(shí)現(xiàn)與采樣電路的電氣隔離后,8k8255A便可進(jìn)入單片機(jī)。系統(tǒng)中的脈沖采集模塊與開(kāi)關(guān)量采集模塊基本相似,在此不做贅述。
4存儲(chǔ)發(fā)送單元電路設(shè)計(jì)
存儲(chǔ)發(fā)送單元主要包括微處理器及其控制部分、CAN通訊接口部分、串口擴(kuò)展和USB接口等。其中微處理器及其控制部分、CAN通訊接口部分跟前面介紹的模塊基本一致。串口擴(kuò)展部分帶有兩個(gè)RS-232接口和一個(gè)RS-485接口,并帶有跳線可以選擇兩種狀態(tài)為一個(gè)RS-232接口和一個(gè)RS-485接口或兩個(gè)RS-232接口而沒(méi)有RS-485接口。串口擴(kuò)展采用16C550芯片。USB接口系統(tǒng)利用CH375作為控制器。并可通過(guò)串行輸入輸出或并行輸入輸出和中斷輸出來(lái)方便地實(shí)現(xiàn)USB移動(dòng)存儲(chǔ)設(shè)備與單片機(jī)系統(tǒng)的連接。CH375的并行接口連接圖如圖7所示。
5系統(tǒng)軟件設(shè)計(jì)
整個(gè)監(jiān)測(cè)系統(tǒng)工作時(shí),先由模擬量采集單元將采集的數(shù)據(jù)按CAN標(biāo)準(zhǔn)幀格式發(fā)給存儲(chǔ)發(fā)送單元,當(dāng)存儲(chǔ)發(fā)送單元等待并接收到模擬量采集單元采集的數(shù)據(jù)后,即可向開(kāi)關(guān)量采集單元發(fā)送數(shù)據(jù)采集請(qǐng)求,并等待接收開(kāi)關(guān)量采集單元的采集結(jié)果,最后,存儲(chǔ)發(fā)送單元再向脈沖量采集單元發(fā)送數(shù)據(jù)采集請(qǐng)求,并等待接收脈沖量采集單元采集結(jié)果。存儲(chǔ)發(fā)送單元在判斷數(shù)據(jù)是否正常之后,即可把接收到的數(shù)據(jù)存貯在CF存貯器內(nèi),最后寫(xiě)串口。最后,再把數(shù)據(jù)通過(guò)標(biāo)準(zhǔn)RS-485接口發(fā)送到診斷單元或通過(guò)USB接口取出,以便應(yīng)用到地面分析處理系統(tǒng)。
軟件設(shè)計(jì)就是在模擬量采集單元初始化后等待上位機(jī)發(fā)來(lái)的數(shù)據(jù)采集請(qǐng)求指令,然后啟動(dòng)定時(shí)器TO并進(jìn)行A/D轉(zhuǎn)換,再將轉(zhuǎn)換結(jié)果按CAN標(biāo)準(zhǔn)幀格式打包發(fā)送給存儲(chǔ)發(fā)送單元。其程序流程圖如圖8所示。其中,定時(shí)器TO的中斷子程序代碼如下:
開(kāi)關(guān)量和脈沖量的采集原理與模擬量的采集原理類(lèi)似,這里不再詳細(xì)介紹。
6結(jié)束語(yǔ)
該監(jiān)測(cè)系統(tǒng)為鐵道部引導(dǎo)課題,本系統(tǒng)經(jīng)過(guò)實(shí)驗(yàn)室內(nèi)部聯(lián)調(diào)證明:其性能穩(wěn)定,抗干擾能力強(qiáng),目前已在機(jī)務(wù)段裝車(chē)運(yùn)行,取得了良好的效果。本系統(tǒng)的不足之處是脈沖量的采集,只能檢測(cè)到電子柜是否有脈沖觸發(fā)信號(hào)的輸出,而不能采集到信號(hào)的波形。因此,該系統(tǒng)還有于待進(jìn)一步完善。
評(píng)論