新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于CAN總線的數(shù)字式傳感器群管理系統(tǒng)

基于CAN總線的數(shù)字式傳感器群管理系統(tǒng)

作者: 時間:2013-04-13 來源:網(wǎng)絡 收藏

  CAN控制器與物理總線之間的接口由收發(fā)器82C250完成,它最初是為汽車高速通信的應用而設計的,該器件提供對總線的差動發(fā)送和接收的功能,它可以增強總線的驅動能力,同時起到保護總線的作用。
  由于作為下位機的節(jié)點比較多,單片機的選擇主要從成本考慮,如果選擇帶CAN和I2C總線(需要用I2C總線驅動)接口功能的高級單片機,則系統(tǒng)成本太高,故選擇AT89C51單片機,它片內(nèi)含有4 K字節(jié)閃電存儲器,數(shù)據(jù)可保存10年,且編程速度快(全4 K字節(jié)編程只要3 s),還可以實現(xiàn)在線編程,也可以借助電話線進行遠距離編程。雖然AT89C51沒有I2C總線接口功能,但在系統(tǒng)中,AT89C51和是屬于單主機結構,在單主機結構中I2C總線數(shù)據(jù)傳送狀態(tài)非常簡單,沒有總線競爭與同步,只有單片機對I2C總線器件的讀寫操作,這就使通過I/O口用軟件來模擬I2C總線成為了可能。

5 系統(tǒng)軟件設計  
  上位機軟件采用基于Windows2000平臺的VC6.0編寫,具有系統(tǒng)參數(shù)設置、監(jiān)控狀態(tài)設置、數(shù)據(jù)發(fā)送和接收、本機狀態(tài)查詢、節(jié)點狀態(tài)查詢、中斷接收數(shù)據(jù)管理等功能。上位機首先對適配卡及其自身初始化,然后發(fā)送命令通知特定的節(jié)點向上發(fā)送數(shù)據(jù),通過CAN總線適配卡轉換后,再由上位機處理。上位機采用定時輪循方式向各個節(jié)點發(fā)命令,采用中斷方式接收數(shù)據(jù)。
  下位機部分采用匯編語言,主程序流程如圖3所示。程序首先初始化AT89C51和CAN控制器,然 后通過用I/O口軟件模擬I2C總線,初始化各個傳感器,設置它們的地址代碼(器件標識)、報警上下限、傳感器狀態(tài)等參數(shù),接著程序進入等待上位機命令,同時也在監(jiān)聽I2C總線,以中斷的方式響應I2C總線上的請求,對特定傳感器進行讀寫、啟動轉換、設置報警閾值等操作,接收各個傳感器發(fā)送的數(shù)據(jù)并進行處理,解決總線沖突,進行總線仲裁。

  

  在下位機軟件設計中,用普通I/O線模擬I2C總線數(shù)據(jù)傳送時,必須遵守I2C總線的時序,否則將造成混亂導致系統(tǒng)工作不正常。

6 結束語  
  系統(tǒng)采用分層管理的方法實現(xiàn)了對多的集中管理,在控制現(xiàn)場底層,由于采用了數(shù)字化傳感器并且掛接在I2C總線上,傳感器數(shù)目變化后,系統(tǒng)軟件只要稍加改動就能適應,所以添加和更換傳感器非常方便。同時在上層管理中,系統(tǒng)使用CAN總線技術,它以其獨特的設計思想、優(yōu)良的性能和極高的可靠性提高了系統(tǒng)內(nèi)部的通信速率、實時性,降低了誤碼傳送率。上位機使用PC,以圖形的方式方便直觀的對各個節(jié)點進行監(jiān)控,保證了系統(tǒng)的可靠運行。該系統(tǒng)已經(jīng)在汽車行駛發(fā)電恒速驅動檢測系統(tǒng)中投入運行,實際應用證明該系統(tǒng)具有控制效果好、可靠性高、控制靈活等優(yōu)點。

參考文獻

[1]張友德.飛利浦80C51系列單片機原理與應用技術手冊[M].北京:北京航空航天大學出版社,1991.
[2]劉 輝,姚勝興,宋樹祥.CAN總線在智能建筑溫濕度自控系統(tǒng)中的應用[J].現(xiàn)代電子技術,2001(11).
[3]陽憲惠.現(xiàn)場總線技術及其應用[M].北京:清華大學出版社,1999.
[4]林繼建,吳明光.PC機和單片機串行通信程序設計[J].計算機應用研究,2001(5).
[5]王廣志,吳 穎,黃志光.數(shù)字式溫度傳感器與分布式溫度測量系統(tǒng)[J].傳感技術學報,2001(3).
[6]王朝陽,管保安,劉滌塵,等.基于CAN總線的變電站綜合操作系統(tǒng)[J].現(xiàn)代電子技術,2001(12).

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉