新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于CAN總線接口的紅外檢測系統(tǒng)的設(shè)計思路

基于CAN總線接口的紅外檢測系統(tǒng)的設(shè)計思路

作者: 時間:2013-05-21 來源:網(wǎng)絡(luò) 收藏



  3 系統(tǒng)軟件設(shè)計

  系統(tǒng)上電復(fù)位后首先初始化,主要包括系統(tǒng)硬件初始化及從 Flash中讀取CAN相關(guān)參數(shù),并進(jìn)行設(shè)置;然后系統(tǒng)進(jìn)行按鍵掃描:如有鍵按下則進(jìn)行相應(yīng)的操作,如設(shè)置時間和CO報警濃度值、修改CAN參數(shù)、查閱報警記錄等;若無鍵按下,則采集CO濃度并進(jìn)行軟件處理,軟件處理包括數(shù)字濾波和溫度補(bǔ)償,用以校準(zhǔn)濃度數(shù)據(jù)。若CO濃度超限,則聲光報警通知井下工作人員并記錄報警時刻和報警值到存儲器中,若濃度正常則循環(huán)檢測并顯示。系統(tǒng)軟件流程如圖3所示。氣體濃度數(shù)據(jù)的遠(yuǎn)程傳輸由完成。當(dāng)上位機(jī)給該站發(fā)送報文時,即要求本站傳送數(shù)據(jù)時,系統(tǒng)才向上位機(jī)傳送數(shù)據(jù),這樣可減輕單片機(jī)的負(fù)擔(dān),降低功耗。因此,CAN通信程序流程大致為:當(dāng)檢測儀接收到有效的報文時產(chǎn)生接收中斷,在中斷服務(wù)子程序中,以CAN報文形式發(fā)送C0濃度數(shù)據(jù),采用非中斷方式發(fā)送報文,具體工作流程如圖4所示。



  上位機(jī)采用Delphi編寫的Windows下的可視化操作界面。Delphi是一種采用事件驅(qū)動方式、面向?qū)ο蟮目梢暬呒壘幊陶Z言,該系統(tǒng)的通訊軟件設(shè)計采用Delphi7.0。在Del-phi可利用的眾多串行通信控件中,SPComm控件是最簡單、功能比較強(qiáng)大的一種。該控件具有豐富的與串口通信密切相關(guān)的屬性及事件,提供對串口的各種操作。通過Delphi的設(shè)計可在上位機(jī)中直觀顯示當(dāng)前時間、氣體濃度。通過串口通訊還可執(zhí)行遠(yuǎn)程操作。采用采樣定時器可每隔一段時間刷新顯示的數(shù)據(jù),從而及時檢測數(shù)據(jù)變化。

  4 結(jié)束語

  采用紅外光學(xué)傳感器件取代傳統(tǒng)的傳感器.安全性大大提高;結(jié)合CAN總線技術(shù),取代傳統(tǒng)的RS232、RS485,大大降低系統(tǒng)開發(fā)難度,縮短開發(fā)周期。與其他現(xiàn)場總線比較而言,CAN總線具有通信速率高、易實現(xiàn)、性價比高等特點。采用TI的單片機(jī),有較多的集成外設(shè),降低了開發(fā)難度,且具有超低功耗。有利于節(jié)約能源。

  所設(shè)計的紅外CO檢測系統(tǒng),檢測氣體濃度范圍寬、設(shè)備維護(hù)性好。利用F449的低功耗特性及其內(nèi)部集成的A/D轉(zhuǎn)換器、乘法器、溫度傳感器等硬件資源,測量精密度大大提高。通過,系統(tǒng)既可在現(xiàn)場顯示實時數(shù)據(jù),又可實現(xiàn)儀器的遠(yuǎn)距離、高可靠性地通信功能和遠(yuǎn)程監(jiān)控。因此,該系統(tǒng)具有很好的應(yīng)用前景。

參考文獻(xiàn):

[1].MSP430datasheethttp://www.dzsc.com/datasheet/MSP430_490166.html.
[2].MSP430F449datasheethttp://www.dzsc.com/datasheet/MSP430F449_html.
[3].SJA1000datasheethttp://www.dzsc.com/datasheet/SJA1000_609075.html.
[4].TJA1050datasheethttp://www.dzsc.com/datasheet/TJA1050_649182.html.
[5].RS232datasheethttp://www.dzsc.com/datasheet/RS232_585128.html.
[6].RS485datasheethttp://www.dzsc.com/datasheet/RS485_585289.html.


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉