王妍 王曉曼 莊仲
摘 要:本設(shè)計(jì)結(jié)合汽車電子實(shí)訓(xùn)系統(tǒng),實(shí)現(xiàn)CAN(Controller Area Network)總線監(jiān)聽?wèi)?yīng)用。構(gòu)建了一個(gè)以CAN總線為平臺(tái)的數(shù)據(jù)采集及監(jiān)聽系統(tǒng)。以車內(nèi)各個(gè)子系統(tǒng)作為網(wǎng)絡(luò)節(jié)點(diǎn),以CAN總線為紐帶,將信息傳輸給嵌入式處理系統(tǒng),同時(shí)將各子系統(tǒng)的運(yùn)行情況通過多種方式傳輸給上位機(jī),以做進(jìn)一步分析研究。
關(guān)鍵詞:CAN總線 STM32 監(jiān)聽
中圖分類號(hào):TN919 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2014)06(b)-0001-02
場總線是最近二十幾年發(fā)展起來的新技術(shù),CAN總線是應(yīng)用最廣泛的現(xiàn)場總線之一。由于CAN具有獨(dú)特的多主工作方式、非破壞仲裁機(jī)制以及高通信速率等特點(diǎn),使其與一般的通信總線相比,具有突出的可靠性、實(shí)時(shí)性和靈活性。上述優(yōu)點(diǎn)使CAN總線逐漸代替了汽車內(nèi)部各個(gè)電子控制單元(ECU)數(shù)據(jù)通信使用的其他總線。
作為汽車電子實(shí)訓(xùn)設(shè)備,學(xué)習(xí)人員不僅要了解關(guān)鍵部件的狀態(tài)數(shù)據(jù),還需要對(duì)各部件工作狀況進(jìn)行實(shí)時(shí)監(jiān)控,必要時(shí)需將各子系統(tǒng)數(shù)據(jù)傳輸至PC機(jī)中進(jìn)行進(jìn)一步存儲(chǔ)及分析。本設(shè)計(jì)采用CAN總線來實(shí)現(xiàn)模擬車內(nèi)各個(gè)子系統(tǒng)的數(shù)據(jù)采集,嵌入式微處理器單元通過無線、WIFI,多種方式實(shí)現(xiàn)與PC機(jī)的數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)各子系統(tǒng)的監(jiān)聽功能。方案以內(nèi)嵌CAN控制器STM32F103VET6作為微處理器,完成上述功能。
1 系統(tǒng)設(shè)計(jì)
1.1 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
一個(gè)完整的采集系統(tǒng)由傳感器,CAN收發(fā)器,CAN總線,接口,微處理器等幾大部分組成,如圖1所示。
圖1中的被檢測量是由汽車某一控制單元發(fā)出的,這些控制單元包括燈光控制單元、電動(dòng)座椅單元、門鎖防盜單元等。傳感器按一定規(guī)律將被檢測量轉(zhuǎn)換為數(shù)據(jù)采集系統(tǒng)能夠測量的電信號(hào)。通過傳感器得到的信號(hào)經(jīng)調(diào)理電路對(duì)其進(jìn)行緩沖、放大、隔離、濾波,以及線性化等處理,以獲得模數(shù)轉(zhuǎn)換所需的歸一化信號(hào)。將經(jīng)過調(diào)理的信號(hào)通過微控制器(如單片機(jī))進(jìn)行取樣保持和模數(shù)轉(zhuǎn)換,然后通過CAN收發(fā)器發(fā)送到數(shù)據(jù)總線上。數(shù)據(jù)采集系統(tǒng)還包括驅(qū)動(dòng)軟件,驅(qū)動(dòng)軟件直接對(duì)硬件的寄存器進(jìn)行操作,并管理中斷、存儲(chǔ)器等微機(jī)資源。
1.2 檢測系統(tǒng)設(shè)計(jì)
檢測系統(tǒng)的形式采用集散型數(shù)據(jù)處理模式,指一路或幾路信號(hào)對(duì)應(yīng)一個(gè)數(shù)據(jù)采集模塊,每個(gè)數(shù)據(jù)采集模塊都包括AD轉(zhuǎn)換和單片機(jī)系統(tǒng),完成對(duì)一路或幾路信號(hào)的采集和處理。模塊間通過總線相連。
從圖2中可以看出,每一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),數(shù)據(jù)模塊之間通過總線進(jìn)行通訊。由于一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),所以數(shù)據(jù)采集的速度可以很高。由于現(xiàn)在主流的AD芯片的轉(zhuǎn)換時(shí)間大多為幾,所以采用這種方式進(jìn)行數(shù)據(jù)采集,速度可以達(dá)到實(shí)時(shí)數(shù)據(jù)采集要求。同時(shí)這種方式體現(xiàn)了模塊化的設(shè)計(jì)思想,可以將幾個(gè)相同類型的信號(hào)共用一個(gè)數(shù)據(jù)采集模塊,對(duì)于不同類型的信號(hào)只需要更改前置電路就可以了。這樣設(shè)計(jì)便于系統(tǒng)擴(kuò)展,當(dāng)有新的信號(hào)需要采集時(shí)只需要添加一個(gè)數(shù)據(jù)采集模塊并連接到總線上就可以了??紤]到汽車上信號(hào)接線和汽車部件關(guān)系比較密切,所以本方案采用集散型數(shù)據(jù)采集處理模塊來完成對(duì)汽車上的信號(hào)的采樣。
1.3 總體系統(tǒng)設(shè)計(jì)
系統(tǒng)核心器件為嵌入式微處理器,它控制CAN收發(fā)器,將各子系統(tǒng)傳輸至CAN總線的信息數(shù)據(jù)按一定優(yōu)先級(jí)通過無線模塊,WIFI模塊或串口模塊與上位機(jī)進(jìn)行數(shù)據(jù)交換。
設(shè)計(jì)中采用ARM Cortex-M3內(nèi)核的STM32F103VET6為核心控制器,其中內(nèi)嵌了CAN控制器,節(jié)約了空間資源。CAN收發(fā)器采用PHILIPS公司生產(chǎn)的高速CAN收發(fā)器TJA1050,可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能??傮w框圖如圖2所示。
STM32是意法半導(dǎo)體推出的基于Cortex-M3內(nèi)核的32位ARM,目前有5個(gè)系列,其中STM32 F103VET6屬于STM32F103系列的高容量芯片,QFP100封裝,64K片內(nèi)SRAM,512K片內(nèi)FLASH,具有SDIO 4位接口(SD卡的專用接口,速度更高,該接口也可用于和SDIO接口類型的wifi模塊連接)。選用此芯片作為核心MCU,主要由于其容量大,性價(jià)比高且具有SPI方式的NRF24L01無線收發(fā)器2.4G無線模塊接口。
2 硬件接口
2.1 CAN驅(qū)動(dòng)模塊
ISO 11898是一個(gè)使用CAN總線協(xié)議的汽車內(nèi)高速通訊國際標(biāo)準(zhǔn)。TJA1050符合ISO 11989標(biāo)準(zhǔn),它可以和其他遵從ISO 11898標(biāo)準(zhǔn)的收發(fā)器產(chǎn)品協(xié)同操作,此外TJA1050還具有良好的電磁兼容性,連接節(jié)點(diǎn)數(shù)可達(dá)110個(gè)。如圖3所示,微處理器內(nèi)部協(xié)議控制器通過一條串行數(shù)據(jù)輸出線(CAN-TX)和一條串行數(shù)據(jù)輸入線(CAN-RX)連接到TJA1050收發(fā)器。而收發(fā)器則通過它的兩個(gè)有差動(dòng)接收和發(fā)送能力的總線終端CANH和CANL連接到CAN總線線路。典型的CAN總線采用一對(duì)雙絞線??紤]到ISO 11898中定義的線性拓?fù)浣Y(jié)構(gòu),總線兩端都端接一個(gè)120Ω的額定電阻。這就要求總線額定負(fù)載是60Ω。終端電阻和電纜阻抗的緊密匹配確保了數(shù)據(jù)信號(hào)不會(huì)在總線的兩端反射。
2.2 WIFI模塊
88W8686是一款最新高整合WLAN Soc。它面向移動(dòng)電話、數(shù)字?jǐn)z像機(jī)、移動(dòng)媒體播放器、PDA、游戲機(jī)等移動(dòng)設(shè)備。它具有封裝尺寸小,低功耗的特點(diǎn),且提供SDIO和SPI主機(jī)接口適用于各種不同的處理器。
88W8686SoC具有非常高的集成水平,芯片集成了一個(gè)可在2.4 GHz和5 GHz運(yùn)行的雙頻射頻無線收發(fā)器、一個(gè)物理層、一個(gè)媒介接入控制器和一個(gè)ARM處理器。
STM32可通過SDIO接口與88W8686連接。88W8686支持SDIO設(shè)備接口,允許使用SDIO總線協(xié)議訪問WLAN設(shè)備。SDIO接口包含于外部SDIO總線和內(nèi)部共享總線間的接口電路。88W8686充當(dāng)SDIO總線上的設(shè)備。Host單元可以直接訪問SDIO接口的寄存器,也可以通過使用BAR和DMA引擎訪問設(shè)備的共享存儲(chǔ)空間。
2.3 基于NRF24L01的無線通信模塊
NRF24L01是NORDIC公司生產(chǎn)的一款新型單片射頻收發(fā)器件,采用FSK調(diào)制,內(nèi)部集成NORDIC自己的Enhanced Short Burst協(xié)議。可以實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或一點(diǎn)對(duì)六點(diǎn)的無線通信。無線通信速度可以達(dá)到2M(bps)。器件工作于全球開放的2.4~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,其中輸出功率和通信頻道可通過程序進(jìn)行配置。NRF24L01的SPI接口可以利用STM32的硬件SPI接口直接連接。
綜上所述,本文完成了基于CAN總線監(jiān)聽系統(tǒng)的總體設(shè)計(jì),敘述了集散型數(shù)據(jù)采集系統(tǒng)的各部分組成,以及芯片的選擇及其優(yōu)勢分析,給出了wifi模塊以及無線模塊與核心芯片STM32 F103VET6的連接設(shè)計(jì),以及各模塊的詳細(xì)介紹和功能實(shí)現(xiàn)。
參考文獻(xiàn)
[1] 烏寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,1996:127-156.
[2] 楊軍,馮振聲,黃考利.裝備智能故障診斷技術(shù)[M].北京:國防工業(yè)出版社,2004.
[3] 饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2003.
[4] 藺金元,秦亞超.基于CAN總線的數(shù)據(jù)采集系統(tǒng)[J].寧夏工程技術(shù),2002,1(2):176-178.
[5] 許海燕.基于CAN總線的作戰(zhàn)車輛綜合電子信息系統(tǒng)的研究[D].南京:河海大學(xué),2004.
[6] 魏雅.基于CAN總線的機(jī)車數(shù)據(jù)采集系統(tǒng)的研究[D].西安:西安工程大學(xué),2007.endprint
摘 要:本設(shè)計(jì)結(jié)合汽車電子實(shí)訓(xùn)系統(tǒng),實(shí)現(xiàn)CAN(Controller Area Network)總線監(jiān)聽?wèi)?yīng)用。構(gòu)建了一個(gè)以CAN總線為平臺(tái)的數(shù)據(jù)采集及監(jiān)聽系統(tǒng)。以車內(nèi)各個(gè)子系統(tǒng)作為網(wǎng)絡(luò)節(jié)點(diǎn),以CAN總線為紐帶,將信息傳輸給嵌入式處理系統(tǒng),同時(shí)將各子系統(tǒng)的運(yùn)行情況通過多種方式傳輸給上位機(jī),以做進(jìn)一步分析研究。
關(guān)鍵詞:CAN總線 STM32 監(jiān)聽
中圖分類號(hào):TN919 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2014)06(b)-0001-02
場總線是最近二十幾年發(fā)展起來的新技術(shù),CAN總線是應(yīng)用最廣泛的現(xiàn)場總線之一。由于CAN具有獨(dú)特的多主工作方式、非破壞仲裁機(jī)制以及高通信速率等特點(diǎn),使其與一般的通信總線相比,具有突出的可靠性、實(shí)時(shí)性和靈活性。上述優(yōu)點(diǎn)使CAN總線逐漸代替了汽車內(nèi)部各個(gè)電子控制單元(ECU)數(shù)據(jù)通信使用的其他總線。
作為汽車電子實(shí)訓(xùn)設(shè)備,學(xué)習(xí)人員不僅要了解關(guān)鍵部件的狀態(tài)數(shù)據(jù),還需要對(duì)各部件工作狀況進(jìn)行實(shí)時(shí)監(jiān)控,必要時(shí)需將各子系統(tǒng)數(shù)據(jù)傳輸至PC機(jī)中進(jìn)行進(jìn)一步存儲(chǔ)及分析。本設(shè)計(jì)采用CAN總線來實(shí)現(xiàn)模擬車內(nèi)各個(gè)子系統(tǒng)的數(shù)據(jù)采集,嵌入式微處理器單元通過無線、WIFI,多種方式實(shí)現(xiàn)與PC機(jī)的數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)各子系統(tǒng)的監(jiān)聽功能。方案以內(nèi)嵌CAN控制器STM32F103VET6作為微處理器,完成上述功能。
1 系統(tǒng)設(shè)計(jì)
1.1 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
一個(gè)完整的采集系統(tǒng)由傳感器,CAN收發(fā)器,CAN總線,接口,微處理器等幾大部分組成,如圖1所示。
圖1中的被檢測量是由汽車某一控制單元發(fā)出的,這些控制單元包括燈光控制單元、電動(dòng)座椅單元、門鎖防盜單元等。傳感器按一定規(guī)律將被檢測量轉(zhuǎn)換為數(shù)據(jù)采集系統(tǒng)能夠測量的電信號(hào)。通過傳感器得到的信號(hào)經(jīng)調(diào)理電路對(duì)其進(jìn)行緩沖、放大、隔離、濾波,以及線性化等處理,以獲得模數(shù)轉(zhuǎn)換所需的歸一化信號(hào)。將經(jīng)過調(diào)理的信號(hào)通過微控制器(如單片機(jī))進(jìn)行取樣保持和模數(shù)轉(zhuǎn)換,然后通過CAN收發(fā)器發(fā)送到數(shù)據(jù)總線上。數(shù)據(jù)采集系統(tǒng)還包括驅(qū)動(dòng)軟件,驅(qū)動(dòng)軟件直接對(duì)硬件的寄存器進(jìn)行操作,并管理中斷、存儲(chǔ)器等微機(jī)資源。
1.2 檢測系統(tǒng)設(shè)計(jì)
檢測系統(tǒng)的形式采用集散型數(shù)據(jù)處理模式,指一路或幾路信號(hào)對(duì)應(yīng)一個(gè)數(shù)據(jù)采集模塊,每個(gè)數(shù)據(jù)采集模塊都包括AD轉(zhuǎn)換和單片機(jī)系統(tǒng),完成對(duì)一路或幾路信號(hào)的采集和處理。模塊間通過總線相連。
從圖2中可以看出,每一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),數(shù)據(jù)模塊之間通過總線進(jìn)行通訊。由于一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),所以數(shù)據(jù)采集的速度可以很高。由于現(xiàn)在主流的AD芯片的轉(zhuǎn)換時(shí)間大多為幾,所以采用這種方式進(jìn)行數(shù)據(jù)采集,速度可以達(dá)到實(shí)時(shí)數(shù)據(jù)采集要求。同時(shí)這種方式體現(xiàn)了模塊化的設(shè)計(jì)思想,可以將幾個(gè)相同類型的信號(hào)共用一個(gè)數(shù)據(jù)采集模塊,對(duì)于不同類型的信號(hào)只需要更改前置電路就可以了。這樣設(shè)計(jì)便于系統(tǒng)擴(kuò)展,當(dāng)有新的信號(hào)需要采集時(shí)只需要添加一個(gè)數(shù)據(jù)采集模塊并連接到總線上就可以了。考慮到汽車上信號(hào)接線和汽車部件關(guān)系比較密切,所以本方案采用集散型數(shù)據(jù)采集處理模塊來完成對(duì)汽車上的信號(hào)的采樣。
1.3 總體系統(tǒng)設(shè)計(jì)
系統(tǒng)核心器件為嵌入式微處理器,它控制CAN收發(fā)器,將各子系統(tǒng)傳輸至CAN總線的信息數(shù)據(jù)按一定優(yōu)先級(jí)通過無線模塊,WIFI模塊或串口模塊與上位機(jī)進(jìn)行數(shù)據(jù)交換。
設(shè)計(jì)中采用ARM Cortex-M3內(nèi)核的STM32F103VET6為核心控制器,其中內(nèi)嵌了CAN控制器,節(jié)約了空間資源。CAN收發(fā)器采用PHILIPS公司生產(chǎn)的高速CAN收發(fā)器TJA1050,可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能。總體框圖如圖2所示。
STM32是意法半導(dǎo)體推出的基于Cortex-M3內(nèi)核的32位ARM,目前有5個(gè)系列,其中STM32 F103VET6屬于STM32F103系列的高容量芯片,QFP100封裝,64K片內(nèi)SRAM,512K片內(nèi)FLASH,具有SDIO 4位接口(SD卡的專用接口,速度更高,該接口也可用于和SDIO接口類型的wifi模塊連接)。選用此芯片作為核心MCU,主要由于其容量大,性價(jià)比高且具有SPI方式的NRF24L01無線收發(fā)器2.4G無線模塊接口。
2 硬件接口
2.1 CAN驅(qū)動(dòng)模塊
ISO 11898是一個(gè)使用CAN總線協(xié)議的汽車內(nèi)高速通訊國際標(biāo)準(zhǔn)。TJA1050符合ISO 11989標(biāo)準(zhǔn),它可以和其他遵從ISO 11898標(biāo)準(zhǔn)的收發(fā)器產(chǎn)品協(xié)同操作,此外TJA1050還具有良好的電磁兼容性,連接節(jié)點(diǎn)數(shù)可達(dá)110個(gè)。如圖3所示,微處理器內(nèi)部協(xié)議控制器通過一條串行數(shù)據(jù)輸出線(CAN-TX)和一條串行數(shù)據(jù)輸入線(CAN-RX)連接到TJA1050收發(fā)器。而收發(fā)器則通過它的兩個(gè)有差動(dòng)接收和發(fā)送能力的總線終端CANH和CANL連接到CAN總線線路。典型的CAN總線采用一對(duì)雙絞線??紤]到ISO 11898中定義的線性拓?fù)浣Y(jié)構(gòu),總線兩端都端接一個(gè)120Ω的額定電阻。這就要求總線額定負(fù)載是60Ω。終端電阻和電纜阻抗的緊密匹配確保了數(shù)據(jù)信號(hào)不會(huì)在總線的兩端反射。
2.2 WIFI模塊
88W8686是一款最新高整合WLAN Soc。它面向移動(dòng)電話、數(shù)字?jǐn)z像機(jī)、移動(dòng)媒體播放器、PDA、游戲機(jī)等移動(dòng)設(shè)備。它具有封裝尺寸小,低功耗的特點(diǎn),且提供SDIO和SPI主機(jī)接口適用于各種不同的處理器。
88W8686SoC具有非常高的集成水平,芯片集成了一個(gè)可在2.4 GHz和5 GHz運(yùn)行的雙頻射頻無線收發(fā)器、一個(gè)物理層、一個(gè)媒介接入控制器和一個(gè)ARM處理器。
STM32可通過SDIO接口與88W8686連接。88W8686支持SDIO設(shè)備接口,允許使用SDIO總線協(xié)議訪問WLAN設(shè)備。SDIO接口包含于外部SDIO總線和內(nèi)部共享總線間的接口電路。88W8686充當(dāng)SDIO總線上的設(shè)備。Host單元可以直接訪問SDIO接口的寄存器,也可以通過使用BAR和DMA引擎訪問設(shè)備的共享存儲(chǔ)空間。
2.3 基于NRF24L01的無線通信模塊
NRF24L01是NORDIC公司生產(chǎn)的一款新型單片射頻收發(fā)器件,采用FSK調(diào)制,內(nèi)部集成NORDIC自己的Enhanced Short Burst協(xié)議??梢詫?shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或一點(diǎn)對(duì)六點(diǎn)的無線通信。無線通信速度可以達(dá)到2M(bps)。器件工作于全球開放的2.4~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,其中輸出功率和通信頻道可通過程序進(jìn)行配置。NRF24L01的SPI接口可以利用STM32的硬件SPI接口直接連接。
綜上所述,本文完成了基于CAN總線監(jiān)聽系統(tǒng)的總體設(shè)計(jì),敘述了集散型數(shù)據(jù)采集系統(tǒng)的各部分組成,以及芯片的選擇及其優(yōu)勢分析,給出了wifi模塊以及無線模塊與核心芯片STM32 F103VET6的連接設(shè)計(jì),以及各模塊的詳細(xì)介紹和功能實(shí)現(xiàn)。
參考文獻(xiàn)
[1] 烏寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,1996:127-156.
[2] 楊軍,馮振聲,黃考利.裝備智能故障診斷技術(shù)[M].北京:國防工業(yè)出版社,2004.
[3] 饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2003.
[4] 藺金元,秦亞超.基于CAN總線的數(shù)據(jù)采集系統(tǒng)[J].寧夏工程技術(shù),2002,1(2):176-178.
[5] 許海燕.基于CAN總線的作戰(zhàn)車輛綜合電子信息系統(tǒng)的研究[D].南京:河海大學(xué),2004.
[6] 魏雅.基于CAN總線的機(jī)車數(shù)據(jù)采集系統(tǒng)的研究[D].西安:西安工程大學(xué),2007.endprint
摘 要:本設(shè)計(jì)結(jié)合汽車電子實(shí)訓(xùn)系統(tǒng),實(shí)現(xiàn)CAN(Controller Area Network)總線監(jiān)聽?wèi)?yīng)用。構(gòu)建了一個(gè)以CAN總線為平臺(tái)的數(shù)據(jù)采集及監(jiān)聽系統(tǒng)。以車內(nèi)各個(gè)子系統(tǒng)作為網(wǎng)絡(luò)節(jié)點(diǎn),以CAN總線為紐帶,將信息傳輸給嵌入式處理系統(tǒng),同時(shí)將各子系統(tǒng)的運(yùn)行情況通過多種方式傳輸給上位機(jī),以做進(jìn)一步分析研究。
關(guān)鍵詞:CAN總線 STM32 監(jiān)聽
中圖分類號(hào):TN919 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2014)06(b)-0001-02
場總線是最近二十幾年發(fā)展起來的新技術(shù),CAN總線是應(yīng)用最廣泛的現(xiàn)場總線之一。由于CAN具有獨(dú)特的多主工作方式、非破壞仲裁機(jī)制以及高通信速率等特點(diǎn),使其與一般的通信總線相比,具有突出的可靠性、實(shí)時(shí)性和靈活性。上述優(yōu)點(diǎn)使CAN總線逐漸代替了汽車內(nèi)部各個(gè)電子控制單元(ECU)數(shù)據(jù)通信使用的其他總線。
作為汽車電子實(shí)訓(xùn)設(shè)備,學(xué)習(xí)人員不僅要了解關(guān)鍵部件的狀態(tài)數(shù)據(jù),還需要對(duì)各部件工作狀況進(jìn)行實(shí)時(shí)監(jiān)控,必要時(shí)需將各子系統(tǒng)數(shù)據(jù)傳輸至PC機(jī)中進(jìn)行進(jìn)一步存儲(chǔ)及分析。本設(shè)計(jì)采用CAN總線來實(shí)現(xiàn)模擬車內(nèi)各個(gè)子系統(tǒng)的數(shù)據(jù)采集,嵌入式微處理器單元通過無線、WIFI,多種方式實(shí)現(xiàn)與PC機(jī)的數(shù)據(jù)交換,從而實(shí)現(xiàn)對(duì)各子系統(tǒng)的監(jiān)聽功能。方案以內(nèi)嵌CAN控制器STM32F103VET6作為微處理器,完成上述功能。
1 系統(tǒng)設(shè)計(jì)
1.1 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
一個(gè)完整的采集系統(tǒng)由傳感器,CAN收發(fā)器,CAN總線,接口,微處理器等幾大部分組成,如圖1所示。
圖1中的被檢測量是由汽車某一控制單元發(fā)出的,這些控制單元包括燈光控制單元、電動(dòng)座椅單元、門鎖防盜單元等。傳感器按一定規(guī)律將被檢測量轉(zhuǎn)換為數(shù)據(jù)采集系統(tǒng)能夠測量的電信號(hào)。通過傳感器得到的信號(hào)經(jīng)調(diào)理電路對(duì)其進(jìn)行緩沖、放大、隔離、濾波,以及線性化等處理,以獲得模數(shù)轉(zhuǎn)換所需的歸一化信號(hào)。將經(jīng)過調(diào)理的信號(hào)通過微控制器(如單片機(jī))進(jìn)行取樣保持和模數(shù)轉(zhuǎn)換,然后通過CAN收發(fā)器發(fā)送到數(shù)據(jù)總線上。數(shù)據(jù)采集系統(tǒng)還包括驅(qū)動(dòng)軟件,驅(qū)動(dòng)軟件直接對(duì)硬件的寄存器進(jìn)行操作,并管理中斷、存儲(chǔ)器等微機(jī)資源。
1.2 檢測系統(tǒng)設(shè)計(jì)
檢測系統(tǒng)的形式采用集散型數(shù)據(jù)處理模式,指一路或幾路信號(hào)對(duì)應(yīng)一個(gè)數(shù)據(jù)采集模塊,每個(gè)數(shù)據(jù)采集模塊都包括AD轉(zhuǎn)換和單片機(jī)系統(tǒng),完成對(duì)一路或幾路信號(hào)的采集和處理。模塊間通過總線相連。
從圖2中可以看出,每一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),數(shù)據(jù)模塊之間通過總線進(jìn)行通訊。由于一個(gè)數(shù)據(jù)采集模塊只負(fù)責(zé)一路信號(hào),所以數(shù)據(jù)采集的速度可以很高。由于現(xiàn)在主流的AD芯片的轉(zhuǎn)換時(shí)間大多為幾,所以采用這種方式進(jìn)行數(shù)據(jù)采集,速度可以達(dá)到實(shí)時(shí)數(shù)據(jù)采集要求。同時(shí)這種方式體現(xiàn)了模塊化的設(shè)計(jì)思想,可以將幾個(gè)相同類型的信號(hào)共用一個(gè)數(shù)據(jù)采集模塊,對(duì)于不同類型的信號(hào)只需要更改前置電路就可以了。這樣設(shè)計(jì)便于系統(tǒng)擴(kuò)展,當(dāng)有新的信號(hào)需要采集時(shí)只需要添加一個(gè)數(shù)據(jù)采集模塊并連接到總線上就可以了??紤]到汽車上信號(hào)接線和汽車部件關(guān)系比較密切,所以本方案采用集散型數(shù)據(jù)采集處理模塊來完成對(duì)汽車上的信號(hào)的采樣。
1.3 總體系統(tǒng)設(shè)計(jì)
系統(tǒng)核心器件為嵌入式微處理器,它控制CAN收發(fā)器,將各子系統(tǒng)傳輸至CAN總線的信息數(shù)據(jù)按一定優(yōu)先級(jí)通過無線模塊,WIFI模塊或串口模塊與上位機(jī)進(jìn)行數(shù)據(jù)交換。
設(shè)計(jì)中采用ARM Cortex-M3內(nèi)核的STM32F103VET6為核心控制器,其中內(nèi)嵌了CAN控制器,節(jié)約了空間資源。CAN收發(fā)器采用PHILIPS公司生產(chǎn)的高速CAN收發(fā)器TJA1050,可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能。總體框圖如圖2所示。
STM32是意法半導(dǎo)體推出的基于Cortex-M3內(nèi)核的32位ARM,目前有5個(gè)系列,其中STM32 F103VET6屬于STM32F103系列的高容量芯片,QFP100封裝,64K片內(nèi)SRAM,512K片內(nèi)FLASH,具有SDIO 4位接口(SD卡的專用接口,速度更高,該接口也可用于和SDIO接口類型的wifi模塊連接)。選用此芯片作為核心MCU,主要由于其容量大,性價(jià)比高且具有SPI方式的NRF24L01無線收發(fā)器2.4G無線模塊接口。
2 硬件接口
2.1 CAN驅(qū)動(dòng)模塊
ISO 11898是一個(gè)使用CAN總線協(xié)議的汽車內(nèi)高速通訊國際標(biāo)準(zhǔn)。TJA1050符合ISO 11989標(biāo)準(zhǔn),它可以和其他遵從ISO 11898標(biāo)準(zhǔn)的收發(fā)器產(chǎn)品協(xié)同操作,此外TJA1050還具有良好的電磁兼容性,連接節(jié)點(diǎn)數(shù)可達(dá)110個(gè)。如圖3所示,微處理器內(nèi)部協(xié)議控制器通過一條串行數(shù)據(jù)輸出線(CAN-TX)和一條串行數(shù)據(jù)輸入線(CAN-RX)連接到TJA1050收發(fā)器。而收發(fā)器則通過它的兩個(gè)有差動(dòng)接收和發(fā)送能力的總線終端CANH和CANL連接到CAN總線線路。典型的CAN總線采用一對(duì)雙絞線??紤]到ISO 11898中定義的線性拓?fù)浣Y(jié)構(gòu),總線兩端都端接一個(gè)120Ω的額定電阻。這就要求總線額定負(fù)載是60Ω。終端電阻和電纜阻抗的緊密匹配確保了數(shù)據(jù)信號(hào)不會(huì)在總線的兩端反射。
2.2 WIFI模塊
88W8686是一款最新高整合WLAN Soc。它面向移動(dòng)電話、數(shù)字?jǐn)z像機(jī)、移動(dòng)媒體播放器、PDA、游戲機(jī)等移動(dòng)設(shè)備。它具有封裝尺寸小,低功耗的特點(diǎn),且提供SDIO和SPI主機(jī)接口適用于各種不同的處理器。
88W8686SoC具有非常高的集成水平,芯片集成了一個(gè)可在2.4 GHz和5 GHz運(yùn)行的雙頻射頻無線收發(fā)器、一個(gè)物理層、一個(gè)媒介接入控制器和一個(gè)ARM處理器。
STM32可通過SDIO接口與88W8686連接。88W8686支持SDIO設(shè)備接口,允許使用SDIO總線協(xié)議訪問WLAN設(shè)備。SDIO接口包含于外部SDIO總線和內(nèi)部共享總線間的接口電路。88W8686充當(dāng)SDIO總線上的設(shè)備。Host單元可以直接訪問SDIO接口的寄存器,也可以通過使用BAR和DMA引擎訪問設(shè)備的共享存儲(chǔ)空間。
2.3 基于NRF24L01的無線通信模塊
NRF24L01是NORDIC公司生產(chǎn)的一款新型單片射頻收發(fā)器件,采用FSK調(diào)制,內(nèi)部集成NORDIC自己的Enhanced Short Burst協(xié)議??梢詫?shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或一點(diǎn)對(duì)六點(diǎn)的無線通信。無線通信速度可以達(dá)到2M(bps)。器件工作于全球開放的2.4~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,其中輸出功率和通信頻道可通過程序進(jìn)行配置。NRF24L01的SPI接口可以利用STM32的硬件SPI接口直接連接。
綜上所述,本文完成了基于CAN總線監(jiān)聽系統(tǒng)的總體設(shè)計(jì),敘述了集散型數(shù)據(jù)采集系統(tǒng)的各部分組成,以及芯片的選擇及其優(yōu)勢分析,給出了wifi模塊以及無線模塊與核心芯片STM32 F103VET6的連接設(shè)計(jì),以及各模塊的詳細(xì)介紹和功能實(shí)現(xiàn)。
參考文獻(xiàn)
[1] 烏寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,1996:127-156.
[2] 楊軍,馮振聲,黃考利.裝備智能故障診斷技術(shù)[M].北京:國防工業(yè)出版社,2004.
[3] 饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2003.
[4] 藺金元,秦亞超.基于CAN總線的數(shù)據(jù)采集系統(tǒng)[J].寧夏工程技術(shù),2002,1(2):176-178.
[5] 許海燕.基于CAN總線的作戰(zhàn)車輛綜合電子信息系統(tǒng)的研究[D].南京:河海大學(xué),2004.
[6] 魏雅.基于CAN總線的機(jī)車數(shù)據(jù)采集系統(tǒng)的研究[D].西安:西安工程大學(xué),2007.endprint