基于CAN總線的數(shù)據(jù)通信采集系統(tǒng)方案設(shè)計
本系統(tǒng)CAN 總線通信報文格式采用CAN2.0B 擴展模式,通信數(shù)據(jù)格式主要是對CAN 總線協(xié)議中的(仲裁場ArbitrationField)和(數(shù)據(jù)場Data Field)進行定義,要求數(shù)據(jù)傳輸速率為500 Kb/s。協(xié)議幀格式如圖3 所示。
系統(tǒng)的接收軟件設(shè)計流程圖如圖4 所示。
在使用CAN 接口卡之前首先要對卡進行波特率、傳輸報文格式等參數(shù)的初始化。
1) 初始化CAN 總線的傳輸報文格式為提供29 位地址的CAN2.0B 擴展模式;2) 初始化CAN 總線的波特率為500 Kb/s。
利用PCI/cPCI -7841CAN 接口卡的CanOpen-Driver () 函數(shù)打開CAN 端口, 用CanConfigPort () 函數(shù)進行初始化,用CanSendMsg()函數(shù)發(fā)送數(shù)據(jù)包,用Can-RcvMsg()函數(shù)接收數(shù)據(jù)包,用CanCloseDriver () 函數(shù)關(guān)閉端口[3]。創(chuàng)建接收線程,接收數(shù)據(jù)之后按要求對數(shù)據(jù)進行處理。應(yīng)用MFC 制作通信界面。注意,線程函數(shù)只能是靜態(tài)成員函數(shù),或者是在類外面聲明的一個函數(shù)?!〕跏蓟绦蛉缦拢?/span>
系統(tǒng)軟件界面如圖5 所示。
2 實驗結(jié)果:
經(jīng)過實驗驗證,該信息采集系統(tǒng)采集的數(shù)據(jù)經(jīng)過通信后不變,確保了信息采集的可靠、準(zhǔn)確。
3 結(jié)束語:
由于基于CAN 總線的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性,同時由于TMS320F2812 DSP 的eCAN 模塊使數(shù)據(jù)傳輸更加靈活方便,數(shù)據(jù)量更大,可靠性更高,功能更加完備,用該DSP 進行下位機的數(shù)據(jù)發(fā)送,PCI/cPCI CAN 接口卡進行數(shù)據(jù)接收,從而完成信息采集,并對采集的數(shù)據(jù)進行相應(yīng)處理,對陀螺組合的狀態(tài)進行監(jiān)測,這對衛(wèi)星等的導(dǎo)航有著重要意義。
評論