基于汽車SENT接口且?guī)Ю浣Y補償的熱電偶溫度傳感器
圖2為數據包示例。
圖2. 在P0.4引腳處測得的示例SENT數據包
該電路必須構建在具有較大面積接地層的多層印刷電路板(PCB)上。為實現最佳性能,必須采用適當的布局、接地和去耦技術。
代碼說明
定時器1用于控制SENT輸出引腳P0.4。根據熱電偶的ADC結果和冷結溫度計算出溫度結果后,SENT數據包結構SENT_PACKET將更新,并且定時器1會啟動。該結構的域會在P0.4引腳上逐個輸出,如圖2所示。數據包的第一級是同步序列。主機根據此脈沖確定時鐘周期,并據此確定后續(xù)半字節(jié)值。
要獲得溫度讀數,應測量熱電偶和RTD的溫度。RTD溫度通過一個查找表轉換為其等效熱電偶電壓。將這兩個電壓相加,便可得到熱電偶電壓的絕對值。
首先,測量熱電偶兩條線之間的電壓(V1)。然后,測量RTD電壓并通過查找表將其轉換為溫度。接著,將此溫度轉換為其等效熱電偶電壓(V2)。然后,將V1和V2相加,以得出整體熱電偶電壓,接著將此值轉換為最終的溫度測量結果。
最后,采用分段線性方案來計算最終的溫度值。固定數量的電壓各自對應的溫度存儲在一個數組中,其間的值則利用相鄰點的線性插值法計算。圖3給出了使用理想熱電偶電壓時的算法誤差。圖4顯示了使用ADuC7060/ADuC7061上的ADC0引腳測量整個熱電偶工作范圍內的52個熱電偶電壓時獲得的誤差。最差情況的總誤差小于1°C。
圖3. 通過分段線性逼近法利用52個校準點和理想測量值計算時的誤差
圖4. 通過分段線性逼近法利用在ADuC7060/ADuC7061的ADC0引腳處測量的52個校準點計算時的誤差
RTD溫度是運用查找表計算出來的,并且對RTD的運用方式與對熱電偶一樣。注意,描述RTD溫度與電阻關系的多項式與描述熱電偶的多項式不同。
設計支持包中的源代碼是利用KEILμVision V3.90生成的。
常見變化
可不使用外部RTD而改用 ADT7311 溫度傳感器來測量冷結溫度。
需要一個額外的外部穩(wěn)壓器來為ADT7311供電。該電路中
模數轉換器相關文章:模數轉換器工作原理
電流變送器相關文章:電流變送器原理 溫濕度控制器相關文章:溫濕度控制器原理 熱電偶相關文章:熱電偶原理
評論