基於CAN總線的溫度檢測設計
發布時間:2010-07-08
中心議題:
在(zai)對(dui)電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)的(de)測(ce)試(shi)中(zhong),為(wei)了(le)模(mo)擬(ni)電(dian)子(zi)點(dian)火(huo)係(xi)統(tong)的(de)真(zhen)實(shi)工(gong)況(kuang),電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)往(wang)往(wang)被(bei)置(zhi)於(yu)高(gao)於(yu)常(chang)溫(wen)的(de)環(huan)境(jing)下(xia)進(jin)行(xing)電(dian)子(zi)點(dian)火(huo)實(shi)驗(yan),以(yi)獲(huo)得(de)最(zui)接(jie)近(jin)真(zhen)實(shi)汽(qi)車(che)運(yun)行(xing)工(gong)況(kuang)的(de)點(dian)火(huo)參(can)數(shu)數(shu)據(ju)。由(you)於(yu)電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)自(zi)身(shen)的(de)發(fa)熱(re),其(qi)核(he)心(xin)元(yuan)件(jian)的(de)溫(wen)度(du)成(cheng)為(wei)影(ying)響(xiang)電(dian)子(zi)模(mo)塊(kuai)性(xing)能(neng)的(de)重(zhong)要(yao)因(yin)素(su);另外,還要考慮環境溫度是否達到模擬真實工況的要求等。
本文介紹了一種應用LM35溫度傳感器和PICMicro的溫度檢測節點的設計方案,用於檢測在模擬汽車電子點火的過程中,電子點火模塊的核心模塊溫度和環境溫度,將闡明模塊結構、工作原理及采樣值量化的方法。
節點原理與結構
該溫度檢測節點由傳感器電路、信號調理電路、單片機應用係統、CAN總線接口等構成。電路基本工作原理是:傳感器電路將感應到的溫度信號以電壓的形式輸出到信號調理電路,信號經過調理後輸入到A/D采樣電路,由ADC將jiang數shu字zi量liang值zhi送song給gei單dan片pian機ji係xi統tong。單dan片pian機ji係xi統tong將jiang監jian控kong實shi時shi溫wen度du,當dang溫wen度du超chao過guo警jing戒jie值zhi和he危wei險xian值zhi時shi,單dan片pian機ji將jiang主zhu動dong發fa送song警jing告gao信xin息xi到dao上shang位wei機ji,提ti醒xing操cao作zuo人ren員yuan檢jian查zha。模mo塊kuai邏luo輯ji結jie構gou如ru圖tu1所示。

圖1溫度檢測節點邏輯結構
傳感器電路采用溫度傳感器LM35,供電電壓為15V直流,工作電流為120mA,功耗極低,在全溫度範圍工作時,電流變化很小,電壓輸出采用差動信號方式,由2、3引腳直接輸出。LM35輸出信號經過一個由RC組成的LP濾波器,濾除高頻的噪聲幹擾。
本節點的核心MCU是PIC16F87x,是Microchip公司推出的低功耗8位單片機。PIC16F87x擁有精簡指令集,執行速度為200ns。CAN控製器采用Microchip公司的MCP2510,總線驅動器采用PCA82C250,總線隔離電路采用光耦6N317,信號調理電路采用LF412。溫度監測模塊的硬件結構如圖2所示。

圖2溫度監測模塊硬件結構
信號調理電路主要完成對傳感器信號放大和限幅的功能,將傳感器電路輸出的變化範圍為2V左右的直流電壓,調理為符合PICMicro的AD接口的電壓範圍,既不能超過AD采樣的量程,又要有相當的信號精度。單片機通過A/D采樣通道采集傳感器的溫度數據,並計算溫度範圍。
外圍設備電路為PIC16F87x最小係統運行所需要的必要外設。PIC16F87x通過SPI總線與MCP2510進行數據交換,完成CAN總線數據包的發送和接收,其接口電路如圖3所示。

圖3PIC16F877與MCP2510的接口電路
其中,SCK為SPI總線時鍾,PIC16F87x模塊的SPI接口接MCP2510的SI、SO、SCK,RA4與RA1分別控製MCP2510的芯片複位和片選。INT接受MCP2510的中斷請求。
係統軟件設計
係統軟件流程
為了避免因幹擾而產生誤動作,軟件采取了一些冗餘和容錯處理,在A/D模塊處理采樣數據時,采用了軟件濾波措施,以濾除電路中可能會出現的尖峰幹擾。
方法為連續采樣五次,通過比較判斷,去掉其中的最大值和最小值,其餘三次的值求和後取平均值,把平均值作為CPU用來劃分溫度範圍的有效數據。數據包的解析和封裝都遵循CAN的應用層協議,主程序流程如圖4所示。

圖4主程序流程[page]
當CPU檢測到溫度出現異常,會根據溫度異常範圍向上位機發出溫度異常警報,這是該節點CPUweiyizhudongxiangshangweijifachudeshujuzhen。gaijiediandewenduxiangguanshujucunfangzaihuanchongqu,zaimeiyoushoudaoshangweijishujuqingqiudeshihou,gaihuanchongqudeshujuhuibuduandebeixindeshujushuaxin,yibaozhenggaijiedianshujudeshishixing,zhongduanliuchengrutu5所示。

圖5CAN接收中斷流程
采樣值的量化方法
采樣值的準確量化是溫控電路正常工作的關鍵,這裏采用以下換算辦法來進行量化。設經過信號調理後的電壓為Ui,則-10V<Ui<10V,已知-10V對應的溫度是-55℃,10V對應的溫度為125℃,易求得比例因數Kt=0.111V/℃。溫度為0℃時,ΔT=55℃(相當於-55℃時的變化量)。
Ui=-10V+ΔT•Kt=-10V+55℃×0.111V/℃=-3.895V。
Ui轉換為數字量後,每個數字量對應電壓值為19.531mV,用Ks表示。可以求得數字量變化和溫度變化之間的對應關係:Kt/Ks=(0.111V/℃)/(19.531mV/數字量)=5.683數字量/℃。
其他溫度對應的數字量也可以通過以上方法算出。
SPI接口通信
PIC16F87x通過SPI接口和MCP2510進行數據交換。
MCP2510設計可與許多微控製器的串行外設接口(SPI)直接相連。外部數據和命令通過SI引腳傳送到器件中,而數據在SCK時鍾信號的上升沿傳送進去。
MCP2510在SCK下降沿通過SO引腳發送表1列出了所有操作的指令字節。

以PIC16F87x向MCP2510發送讀指令為例,來說明SPI接口通信過程。
在讀操作開始時,CS引腳將被置為低電平。隨後讀指令和8位地址碼(A7~A0)將被依次送入MCP2510。在接收到讀指令和地址碼之後,MCP2510指定地址寄存器中的數據將被移出通過SO引yin腳jiao進jin行xing發fa送song。每mei一yi數shu據ju字zi節jie移yi出chu後hou,器qi件jian內nei部bu的de地di址zhi指zhi針zhen將jiang自zi動dong加jia一yi以yi指zhi向xiang下xia一yi地di址zhi。因yin此ci可ke以yi對dui下xia一yi個ge連lian續xu地di址zhi寄ji存cun器qi進jin行xing讀du操cao作zuo。通tong過guo該gai方fang法fa可ke以yi順shun序xu讀du取qu任ren意yi一yi個ge連lian續xu地di址zhi寄ji存cun器qi中zhong的de數shu據ju。通tong過guo拉la高gaoCS引腳電平可以結束讀操作,如圖6所示。

圖6SPI接口通信時序
基於LM35開發的溫控節點工作穩定性強、可靠性高、且具有體積小、靈敏度高、響應時間短、抗幹擾能力強等特點。該節點成本低廉,器件均為常規元件,有較高的工程價值。本節點擁有CAN接口,既可以作為一個獨立的檢測係統,也可以作為分布式測試係統的一個關鍵部分。CAN的上層協議都可以在軟件中實現,使得本節點接口靈活,不受上層協議的限製。
- 溫度檢測節點原理與結構
- 係統控製軟件流程設計
- 數據交換SPI接口通信
- 單片機係統將監控實時溫度
- 軟件采取冗餘和容錯處理
- 信號調理電路對傳感器信號放大和限幅的功能
在(zai)對(dui)電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)的(de)測(ce)試(shi)中(zhong),為(wei)了(le)模(mo)擬(ni)電(dian)子(zi)點(dian)火(huo)係(xi)統(tong)的(de)真(zhen)實(shi)工(gong)況(kuang),電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)往(wang)往(wang)被(bei)置(zhi)於(yu)高(gao)於(yu)常(chang)溫(wen)的(de)環(huan)境(jing)下(xia)進(jin)行(xing)電(dian)子(zi)點(dian)火(huo)實(shi)驗(yan),以(yi)獲(huo)得(de)最(zui)接(jie)近(jin)真(zhen)實(shi)汽(qi)車(che)運(yun)行(xing)工(gong)況(kuang)的(de)點(dian)火(huo)參(can)數(shu)數(shu)據(ju)。由(you)於(yu)電(dian)子(zi)點(dian)火(huo)模(mo)塊(kuai)自(zi)身(shen)的(de)發(fa)熱(re),其(qi)核(he)心(xin)元(yuan)件(jian)的(de)溫(wen)度(du)成(cheng)為(wei)影(ying)響(xiang)電(dian)子(zi)模(mo)塊(kuai)性(xing)能(neng)的(de)重(zhong)要(yao)因(yin)素(su);另外,還要考慮環境溫度是否達到模擬真實工況的要求等。
本文介紹了一種應用LM35溫度傳感器和PICMicro的溫度檢測節點的設計方案,用於檢測在模擬汽車電子點火的過程中,電子點火模塊的核心模塊溫度和環境溫度,將闡明模塊結構、工作原理及采樣值量化的方法。
節點原理與結構
該溫度檢測節點由傳感器電路、信號調理電路、單片機應用係統、CAN總線接口等構成。電路基本工作原理是:傳感器電路將感應到的溫度信號以電壓的形式輸出到信號調理電路,信號經過調理後輸入到A/D采樣電路,由ADC將jiang數shu字zi量liang值zhi送song給gei單dan片pian機ji係xi統tong。單dan片pian機ji係xi統tong將jiang監jian控kong實shi時shi溫wen度du,當dang溫wen度du超chao過guo警jing戒jie值zhi和he危wei險xian值zhi時shi,單dan片pian機ji將jiang主zhu動dong發fa送song警jing告gao信xin息xi到dao上shang位wei機ji,提ti醒xing操cao作zuo人ren員yuan檢jian查zha。模mo塊kuai邏luo輯ji結jie構gou如ru圖tu1所示。

圖1溫度檢測節點邏輯結構
傳感器電路采用溫度傳感器LM35,供電電壓為15V直流,工作電流為120mA,功耗極低,在全溫度範圍工作時,電流變化很小,電壓輸出采用差動信號方式,由2、3引腳直接輸出。LM35輸出信號經過一個由RC組成的LP濾波器,濾除高頻的噪聲幹擾。
本節點的核心MCU是PIC16F87x,是Microchip公司推出的低功耗8位單片機。PIC16F87x擁有精簡指令集,執行速度為200ns。CAN控製器采用Microchip公司的MCP2510,總線驅動器采用PCA82C250,總線隔離電路采用光耦6N317,信號調理電路采用LF412。溫度監測模塊的硬件結構如圖2所示。

圖2溫度監測模塊硬件結構
信號調理電路主要完成對傳感器信號放大和限幅的功能,將傳感器電路輸出的變化範圍為2V左右的直流電壓,調理為符合PICMicro的AD接口的電壓範圍,既不能超過AD采樣的量程,又要有相當的信號精度。單片機通過A/D采樣通道采集傳感器的溫度數據,並計算溫度範圍。
外圍設備電路為PIC16F87x最小係統運行所需要的必要外設。PIC16F87x通過SPI總線與MCP2510進行數據交換,完成CAN總線數據包的發送和接收,其接口電路如圖3所示。

圖3PIC16F877與MCP2510的接口電路
其中,SCK為SPI總線時鍾,PIC16F87x模塊的SPI接口接MCP2510的SI、SO、SCK,RA4與RA1分別控製MCP2510的芯片複位和片選。INT接受MCP2510的中斷請求。
係統軟件設計
係統軟件流程
為了避免因幹擾而產生誤動作,軟件采取了一些冗餘和容錯處理,在A/D模塊處理采樣數據時,采用了軟件濾波措施,以濾除電路中可能會出現的尖峰幹擾。
方法為連續采樣五次,通過比較判斷,去掉其中的最大值和最小值,其餘三次的值求和後取平均值,把平均值作為CPU用來劃分溫度範圍的有效數據。數據包的解析和封裝都遵循CAN的應用層協議,主程序流程如圖4所示。

圖4主程序流程[page]
當CPU檢測到溫度出現異常,會根據溫度異常範圍向上位機發出溫度異常警報,這是該節點CPUweiyizhudongxiangshangweijifachudeshujuzhen。gaijiediandewenduxiangguanshujucunfangzaihuanchongqu,zaimeiyoushoudaoshangweijishujuqingqiudeshihou,gaihuanchongqudeshujuhuibuduandebeixindeshujushuaxin,yibaozhenggaijiedianshujudeshishixing,zhongduanliuchengrutu5所示。

圖5CAN接收中斷流程
采樣值的量化方法
采樣值的準確量化是溫控電路正常工作的關鍵,這裏采用以下換算辦法來進行量化。設經過信號調理後的電壓為Ui,則-10V<Ui<10V,已知-10V對應的溫度是-55℃,10V對應的溫度為125℃,易求得比例因數Kt=0.111V/℃。溫度為0℃時,ΔT=55℃(相當於-55℃時的變化量)。
Ui=-10V+ΔT•Kt=-10V+55℃×0.111V/℃=-3.895V。
Ui轉換為數字量後,每個數字量對應電壓值為19.531mV,用Ks表示。可以求得數字量變化和溫度變化之間的對應關係:Kt/Ks=(0.111V/℃)/(19.531mV/數字量)=5.683數字量/℃。
其他溫度對應的數字量也可以通過以上方法算出。
SPI接口通信
PIC16F87x通過SPI接口和MCP2510進行數據交換。
MCP2510設計可與許多微控製器的串行外設接口(SPI)直接相連。外部數據和命令通過SI引腳傳送到器件中,而數據在SCK時鍾信號的上升沿傳送進去。
MCP2510在SCK下降沿通過SO引腳發送表1列出了所有操作的指令字節。

以PIC16F87x向MCP2510發送讀指令為例,來說明SPI接口通信過程。
在讀操作開始時,CS引腳將被置為低電平。隨後讀指令和8位地址碼(A7~A0)將被依次送入MCP2510。在接收到讀指令和地址碼之後,MCP2510指定地址寄存器中的數據將被移出通過SO引yin腳jiao進jin行xing發fa送song。每mei一yi數shu據ju字zi節jie移yi出chu後hou,器qi件jian內nei部bu的de地di址zhi指zhi針zhen將jiang自zi動dong加jia一yi以yi指zhi向xiang下xia一yi地di址zhi。因yin此ci可ke以yi對dui下xia一yi個ge連lian續xu地di址zhi寄ji存cun器qi進jin行xing讀du操cao作zuo。通tong過guo該gai方fang法fa可ke以yi順shun序xu讀du取qu任ren意yi一yi個ge連lian續xu地di址zhi寄ji存cun器qi中zhong的de數shu據ju。通tong過guo拉la高gaoCS引腳電平可以結束讀操作,如圖6所示。

圖6SPI接口通信時序
基於LM35開發的溫控節點工作穩定性強、可靠性高、且具有體積小、靈敏度高、響應時間短、抗幹擾能力強等特點。該節點成本低廉,器件均為常規元件,有較高的工程價值。本節點擁有CAN接口,既可以作為一個獨立的檢測係統,也可以作為分布式測試係統的一個關鍵部分。CAN的上層協議都可以在軟件中實現,使得本節點接口靈活,不受上層協議的限製。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
微波功率管
微波開關
微波連接器
微波器件
微波三極管
微波振蕩器
微電機
微調電容
微動開關
微蜂窩
位置傳感器
溫度保險絲
溫度傳感器
溫控開關
溫控可控矽
聞泰
穩壓電源
穩壓二極管
穩壓管
無焊端子
無線充電
無線監控
無源濾波器
五金工具
物聯網
顯示模塊
顯微鏡結構
線圈
線繞電位器
線繞電阻


