基于CAN總線的溫度檢測節(jié)點設(shè)計
發(fā)布時間:2008/8/16 0:00:00 訪問次數(shù):562
在對電子點火模塊的測試中,為了模擬電子點火系統(tǒng)的真實工況,電子點火模塊往往被置于高于常溫的環(huán)境下進行電子點火實驗,以獲得最接近真實汽車運行工況的點火參數(shù)數(shù)據(jù)。由于電子點火模塊自身的發(fā)熱,其核心元件的溫度成為影響電子模塊性能的重要因素;另外,還要考慮環(huán)境溫度是否達到模擬真實工況的要求等。
本文介紹了一種應(yīng)用lm35溫度傳感器和picmicro的溫度檢測節(jié)點的設(shè)計方案,用于檢測在模擬汽車電子點火的過程中,電子點火模塊的核心模塊溫度和環(huán)境溫度,將闡明模塊結(jié)構(gòu)、工作原理及采樣值量化的方法。
節(jié)點原理與結(jié)構(gòu)
該溫度檢測節(jié)點由傳感器電路、信號調(diào)理電路、單片機應(yīng)用系統(tǒng)、can總線接口等構(gòu)成。電路基本工作原理是:傳感器電路將感應(yīng)到的溫度信號以電壓的形式輸出到信號調(diào)理電路,信號經(jīng)過調(diào)理后輸入到a/d采樣電路,由adc將數(shù)字量值送給單片機系統(tǒng)。單片機系統(tǒng)將監(jiān)控實時溫度,當(dāng)溫度超過警戒值和危險值時,單片機將主動發(fā)送警告信息到上位機,提醒操作人員檢查。
傳感器電路采用溫度傳感器lm35,供電電壓為15v直流,工作電流為120ma ,功耗極低,在全溫度范圍工作時,電流變化很小,電壓輸出采用差動信號方式,由2、3引腳直接輸出。lm35輸出信號經(jīng)過一個由rc組成的lp濾波器,濾除高頻的噪聲干擾。
本節(jié)點的核心mcu是pic16f87x,是microchip公司推出的低功耗8位單片機。pic16f87x擁有精簡指令集,執(zhí)行速度為200ns。can 控制器采用microchip公司的mcp2510,總線驅(qū)動器采用pca82c250,總線隔離電路采用光耦6n317,信號調(diào)理電路采用lf412。
信號調(diào)理電路主要完成對傳感器信號放大和限幅的功能,將傳感器電路輸出的變化范圍為2v左右的直流電壓,調(diào)理為符合picmicro的ad接口的電壓范圍,既不能超過ad采樣的量程,又要有相當(dāng)?shù)男盘柧。單片機通過a/d采樣通道采集傳感器的溫度數(shù)據(jù),并計算溫度范圍。
外圍設(shè)備電路為pic16f87x最小系統(tǒng)運行所需要的必要外設(shè)。pic16f87x通過spi總線與mcp2510進行數(shù)據(jù)交換,完成can總線數(shù)據(jù)包的發(fā)送和接收。
其中,sck為spi總線時鐘,pic16f87x模塊的spi接口接mcp2510的si、so、sck,ra4與ra1分別控制mcp2510的芯片復(fù)位和片選。int接受mcp2510的中斷請求。
系統(tǒng)軟件設(shè)計
1系統(tǒng)軟件流程
為了避免因干擾而產(chǎn)生誤動作,軟件采取了一些冗余和容錯處理,在a/d模塊處理采樣數(shù)據(jù)時,采用了軟件濾波措施,以濾除電路中可能會出現(xiàn)的尖峰干擾。
方法為連續(xù)采樣五次,通過比較判斷,去掉其中的最大值和最小值, 其余三次的值求和后取平均值,把平均值作為cpu用來劃分溫度范圍的有效數(shù)據(jù)。數(shù)據(jù)包的解析和封裝都遵循can的應(yīng)用層協(xié)議,主程序流程如圖4所示。
當(dāng)cpu檢測到溫度出現(xiàn)異常,會根據(jù)溫度異常范圍向上位機發(fā)出溫度異常警報,這是該節(jié)點cpu唯一主動向上位機發(fā)出的數(shù)據(jù)幀。該節(jié)點的溫度相關(guān)數(shù)據(jù)存放在緩沖區(qū),在沒有收到上位機數(shù)據(jù)請求的時候,該緩沖區(qū)的數(shù)據(jù)會不斷的被新的數(shù)據(jù)刷新,以保證該節(jié)點數(shù)據(jù)的實時性。
2 采樣值的量化方法
采樣值的準(zhǔn)確量化是溫控電路正常工作的關(guān)鍵,這里采用以下?lián)Q算辦法來進行量化。設(shè)經(jīng)過信號調(diào)理后的電壓為ui,則-10v<ui<10v,已知-10v對應(yīng)的溫度是-55℃,10v對應(yīng)的溫度為125℃,易求得比例因數(shù)kt = 0.111v/℃。溫度為0℃時,δt= 55℃(相當(dāng)于-55℃時的變化量)。
ui=-10v+δt·kt=-10v+55℃×0.111v/℃=-3.895v。
ui轉(zhuǎn)換為數(shù)字量后,每個數(shù)字量對應(yīng)電壓值為19.531mv,用ks表示?梢郧蟮脭(shù)字量變化和溫度變化之間的對應(yīng)關(guān)系:kt/ks =(0.111v/℃)/(19.531mv/數(shù)字量)=5.683數(shù)字量/℃。
其他溫度對應(yīng)的數(shù)字量也可以通過以上方法算出。
3 spi接口通信
pic16f87x通過spi接口和mcp2510進行數(shù)據(jù)交換。
mcp2510 設(shè)計可與許多微控制器的串行外設(shè)接口(spi)直接相連。外部數(shù)據(jù)和命令通過si引腳傳送到器件中,而數(shù)據(jù)在sck時鐘信號的上升沿傳送進去。
mcp2510在sck下降沿通過so 引腳發(fā)送表1列出了所有操作的指令字節(jié)。
以pic16f87x向mcp2510發(fā)送讀指令為例,來說明spi接口通信過程。
在讀操作開始時,cs 引腳將被置為低電平。隨后讀指令和8位地址碼(a7~a0)將被依次送入mcp2510。在接收到讀指令和地址碼之后,mcp2510指定地址寄存器中的數(shù)據(jù)將被移出通過so引腳進行發(fā)送。每一數(shù)據(jù)字節(jié)移出后,器件內(nèi)部的地址指針將自動加一以指向下一地址。因此可以對下一個連續(xù)地址寄存器進行讀操作。通過該方法可以順序讀取任意一個連續(xù)地址寄存器中的數(shù)據(jù)。通過拉高 cs 引腳電平可以結(jié)束讀操作。
結(jié)束語
基于lm35開發(fā)的溫控節(jié)點工作穩(wěn)定性強、可靠性高、且具有體積小、靈敏度高、響應(yīng)時間短、抗干擾能力強等特點。該節(jié)點成本低廉,器
在對電子點火模塊的測試中,為了模擬電子點火系統(tǒng)的真實工況,電子點火模塊往往被置于高于常溫的環(huán)境下進行電子點火實驗,以獲得最接近真實汽車運行工況的點火參數(shù)數(shù)據(jù)。由于電子點火模塊自身的發(fā)熱,其核心元件的溫度成為影響電子模塊性能的重要因素;另外,還要考慮環(huán)境溫度是否達到模擬真實工況的要求等。
本文介紹了一種應(yīng)用lm35溫度傳感器和picmicro的溫度檢測節(jié)點的設(shè)計方案,用于檢測在模擬汽車電子點火的過程中,電子點火模塊的核心模塊溫度和環(huán)境溫度,將闡明模塊結(jié)構(gòu)、工作原理及采樣值量化的方法。
節(jié)點原理與結(jié)構(gòu)
該溫度檢測節(jié)點由傳感器電路、信號調(diào)理電路、單片機應(yīng)用系統(tǒng)、can總線接口等構(gòu)成。電路基本工作原理是:傳感器電路將感應(yīng)到的溫度信號以電壓的形式輸出到信號調(diào)理電路,信號經(jīng)過調(diào)理后輸入到a/d采樣電路,由adc將數(shù)字量值送給單片機系統(tǒng)。單片機系統(tǒng)將監(jiān)控實時溫度,當(dāng)溫度超過警戒值和危險值時,單片機將主動發(fā)送警告信息到上位機,提醒操作人員檢查。
傳感器電路采用溫度傳感器lm35,供電電壓為15v直流,工作電流為120ma ,功耗極低,在全溫度范圍工作時,電流變化很小,電壓輸出采用差動信號方式,由2、3引腳直接輸出。lm35輸出信號經(jīng)過一個由rc組成的lp濾波器,濾除高頻的噪聲干擾。
本節(jié)點的核心mcu是pic16f87x,是microchip公司推出的低功耗8位單片機。pic16f87x擁有精簡指令集,執(zhí)行速度為200ns。can 控制器采用microchip公司的mcp2510,總線驅(qū)動器采用pca82c250,總線隔離電路采用光耦6n317,信號調(diào)理電路采用lf412。
信號調(diào)理電路主要完成對傳感器信號放大和限幅的功能,將傳感器電路輸出的變化范圍為2v左右的直流電壓,調(diào)理為符合picmicro的ad接口的電壓范圍,既不能超過ad采樣的量程,又要有相當(dāng)?shù)男盘柧。單片機通過a/d采樣通道采集傳感器的溫度數(shù)據(jù),并計算溫度范圍。
外圍設(shè)備電路為pic16f87x最小系統(tǒng)運行所需要的必要外設(shè)。pic16f87x通過spi總線與mcp2510進行數(shù)據(jù)交換,完成can總線數(shù)據(jù)包的發(fā)送和接收。
其中,sck為spi總線時鐘,pic16f87x模塊的spi接口接mcp2510的si、so、sck,ra4與ra1分別控制mcp2510的芯片復(fù)位和片選。int接受mcp2510的中斷請求。
系統(tǒng)軟件設(shè)計
1系統(tǒng)軟件流程
為了避免因干擾而產(chǎn)生誤動作,軟件采取了一些冗余和容錯處理,在a/d模塊處理采樣數(shù)據(jù)時,采用了軟件濾波措施,以濾除電路中可能會出現(xiàn)的尖峰干擾。
方法為連續(xù)采樣五次,通過比較判斷,去掉其中的最大值和最小值, 其余三次的值求和后取平均值,把平均值作為cpu用來劃分溫度范圍的有效數(shù)據(jù)。數(shù)據(jù)包的解析和封裝都遵循can的應(yīng)用層協(xié)議,主程序流程如圖4所示。
當(dāng)cpu檢測到溫度出現(xiàn)異常,會根據(jù)溫度異常范圍向上位機發(fā)出溫度異常警報,這是該節(jié)點cpu唯一主動向上位機發(fā)出的數(shù)據(jù)幀。該節(jié)點的溫度相關(guān)數(shù)據(jù)存放在緩沖區(qū),在沒有收到上位機數(shù)據(jù)請求的時候,該緩沖區(qū)的數(shù)據(jù)會不斷的被新的數(shù)據(jù)刷新,以保證該節(jié)點數(shù)據(jù)的實時性。
2 采樣值的量化方法
采樣值的準(zhǔn)確量化是溫控電路正常工作的關(guān)鍵,這里采用以下?lián)Q算辦法來進行量化。設(shè)經(jīng)過信號調(diào)理后的電壓為ui,則-10v<ui<10v,已知-10v對應(yīng)的溫度是-55℃,10v對應(yīng)的溫度為125℃,易求得比例因數(shù)kt = 0.111v/℃。溫度為0℃時,δt= 55℃(相當(dāng)于-55℃時的變化量)。
ui=-10v+δt·kt=-10v+55℃×0.111v/℃=-3.895v。
ui轉(zhuǎn)換為數(shù)字量后,每個數(shù)字量對應(yīng)電壓值為19.531mv,用ks表示?梢郧蟮脭(shù)字量變化和溫度變化之間的對應(yīng)關(guān)系:kt/ks =(0.111v/℃)/(19.531mv/數(shù)字量)=5.683數(shù)字量/℃。
其他溫度對應(yīng)的數(shù)字量也可以通過以上方法算出。
3 spi接口通信
pic16f87x通過spi接口和mcp2510進行數(shù)據(jù)交換。
mcp2510 設(shè)計可與許多微控制器的串行外設(shè)接口(spi)直接相連。外部數(shù)據(jù)和命令通過si引腳傳送到器件中,而數(shù)據(jù)在sck時鐘信號的上升沿傳送進去。
mcp2510在sck下降沿通過so 引腳發(fā)送表1列出了所有操作的指令字節(jié)。
以pic16f87x向mcp2510發(fā)送讀指令為例,來說明spi接口通信過程。
在讀操作開始時,cs 引腳將被置為低電平。隨后讀指令和8位地址碼(a7~a0)將被依次送入mcp2510。在接收到讀指令和地址碼之后,mcp2510指定地址寄存器中的數(shù)據(jù)將被移出通過so引腳進行發(fā)送。每一數(shù)據(jù)字節(jié)移出后,器件內(nèi)部的地址指針將自動加一以指向下一地址。因此可以對下一個連續(xù)地址寄存器進行讀操作。通過該方法可以順序讀取任意一個連續(xù)地址寄存器中的數(shù)據(jù)。通過拉高 cs 引腳電平可以結(jié)束讀操作。
結(jié)束語
基于lm35開發(fā)的溫控節(jié)點工作穩(wěn)定性強、可靠性高、且具有體積小、靈敏度高、響應(yīng)時間短、抗干擾能力強等特點。該節(jié)點成本低廉,器
熱門點擊
- 教你做2SD315AI的驅(qū)動電路設(shè)計
- 1-Wire總線與DS18B20應(yīng)用仿真
- 在嵌入式系統(tǒng)中應(yīng)用NAND Flash閃存作
- Molex推出新系列2.00mm間距SMT線
- 韋爾推出用于超高速接口的靜電保護芯片ESDA
- 基于μPD780822型單片機的客車CAN總
- 基于USB的ARINC429總線接口模塊設(shè)計
- 賽普拉斯2Mb/8Mb nvSRAM無需電池
- ST7267單片機與SIM卡的接口設(shè)計
- 基于鐵電存儲器FM25640在電表數(shù)據(jù)存儲中
推薦技術(shù)資料
- MOSFET 電感單片降壓開關(guān)模式變換器優(yōu)勢
- SiC MOSFET 和 IG
- 新型 電隔離無芯線性霍爾效應(yīng)電
- 業(yè)界超小絕對位置編碼器技術(shù)參數(shù)設(shè)計
- 高帶寬、更高分辨率磁角度傳感技術(shù)應(yīng)用探究
- MagAlpha 角度位置傳感
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究