張亞芳
(阜陽職業技術學院,安徽 阜陽 236000)
本設計需要實現的溫度測量是一種低延遲、高精度、魯棒性好的溫度測量,要實現這樣的溫度測量,滿足負50攝氏度到正260攝氏度的全范圍溫度測量,常見的溫度傳感器不能滿足本設計的溫漂、精度、抗干擾等特性,這些溫度傳感器遠遠不能實現本設計的要求,故本設計選擇了一款能夠滿足本設計精度要求和測量溫度范圍的溫度傳感器,它就是PT100。PT100具有良好的線性關系。傳統數字溫度傳感器雖然具有一定的價格優勢,但是對于這種對精度要求比較高、測量范圍比較廣的場合具有很大的局限性,所以本設計選擇了PT100作為本設計的溫度傳感器,對測量單元進行溫度測量。在單片機的選型上,本設計選用了現在行業領先的STM32單片機,顯示器部分,本設計采用的是LCD12864顯示單元,它可以同時顯示多行的數字或者漢字,有128×64的最小顯示單元[1]。本設計的整體系統框圖如圖1所示:
對于溫度采集傳感器的選型,本設計選擇的是PT100電阻。在PT100的多種接線方式中選擇了四線制的接線方式,因為這種接線方式能夠有效地考慮線阻,精度最高。采集電路采用差分放大器電路,一方面能夠有效地濾除系統中的共模干擾、濾除環境磁場和板載干擾,提高采樣穩定性,另外一方面能夠調節PT100的采樣區間,達到最優的放大效果,提高采樣精度??刂坪诵牟捎矛F在主流的基于M4內核的STM32單片機,具有極高的性價比,性能穩定。顯示系統采用的是串行LCD12864顯示屏,它具有顯示使用壽命長,價格低廉的特點。
圖1 本設計的整體系統框圖
2.1.1 芯片資源介紹
對于單片機的認識,首先要看其設計構架,STM32采用的是ARM設計構架,現在新興的ARM設計構架從低端的ARM0到高端的ARM11形成了全系列的應用功能需求。本設計采用的是M4系列單片機,可以通過倍頻的功能最高達到72兆赫茲的工作頻率,根據不同的用戶需求,在M4內核中也有不同的引腳分配,從36引角到144引角不等,以滿足不同用戶對不同設備和不同場合的驅動需求。在存儲空間上也有不同,主要分為三個檔,分別為小容量、中容量和大容量。小容量的內存flash一般在128k左右,中容量一般在512k,大容量的一般在1000k。同時單片機具有豐富的I/O接口和ADC接口,ADC接口一般可達十多個,同時可以加載多路時鐘線以及外部觸發中斷線,并且具有良好的低功耗性能,可以應對移動終端設備對于低功耗的需求,并且帶有低頻工作時鐘晶振,以應對低功耗情況下的使用需求。
STM32單片機是一種獨特的微處理器,是用來對數字信息進行數據處理的元器件,其工作原理是接受相應的信號,對數字信息進行數據運算,并把數據模擬輸出。它具有可編程性,運行速度高達每秒數千萬條控制指令。STM32單片機受到溫度、濕度、光照等外部環境的因素非常小,具有較強的抗電磁干擾能力。
2.1.2 電源設計
本設計的LDO選用的是AMS1117,將USB輸入的5伏電壓轉換成3.3伏電壓為本設計系統提供電源。AMS1117采用的是SOT-223封裝,有一個很大的散熱引腳,可以有效的進行散熱,因為這個散熱引腳的存在,大大增加了芯片的過流能力,AMS1117瞬間最大過流能力達到一安電流。AMS1117中有很多系列,本設計選擇的是AMS1117-3.3,這種芯片的輸入電壓最高可達到12伏,輸出恒定3.3伏電壓,這種電源芯片的穩壓效果相對于DCDC的穩壓,雜波少,符合傳感器對電壓精度以及紋波的要求。AMS1117的外圍電路相對于DCDC來說較為簡單,沒有復雜的電感、二極管等,只需要濾波電容和儲能電容即可。AMS1117有四個引腳,三號引腳為電源輸入引腳;四號引腳為電源輸出引腳,穩定輸出3.3V電壓;一號引腳為參考地引腳。C17,C18電容為100nF,主要起到濾除高頻噪聲的作用,C16,C19為10uF,主要用來濾除低頻雜波和儲能作用,同時穩定電壓的跌落,為瞬時的大電流提供能量,增強電源的抗干擾能力。AMS1117電源系統原理圖如圖2所示:
2.1.3 復位電路
復位電路的作用是實現在上電初期通過電平的變化,對單片機進行復位,實現系統初始化。單片機復位電路由電容和電阻以及按鍵組成。整體的上電過程中的電平變化會被單片機的復位引腳識別到,進而復位內部芯片,在特殊情況下本設計可以通過復位按鍵對程序復位,設計中經常遇到的程序跑飛或者程序工作不正常的異?,F象,可以通過按下復位鍵讓系統回歸為初始狀態重新工作。
圖2 AMS1117電源系統原理圖
2.1.4 晶振電路
晶振電路形象地來說就像是我們生活中的時鐘一樣,任何的操作都是以時鐘作為基礎的衡量單元。晶振電路主要是由石英晶體和起振電容組成的。石英晶體可以理解成一個彈簧,只要有電壓進入其中,就會跟隨一起反復來回震蕩運動,并且這個運動的頻率是固定的,這是由石英晶體的固有特性決定的,本設計選擇的是8MHz的晶振,配合芯片內部的分頻電路,可以實現72MHz的工作頻率[2]。
在溫度的變化過程中,PT100溫感探頭的溫度變化曲線是已知的,能夠根據電阻的阻值得到相應的溫度數值,PT100的溫感探頭的溫度系數主要分為A,B,C三類,本設計采用精度最高的A類型探頭,溫度采樣精度為0.15+0.002|t|。這個測量精度前面的0.15很容易理解,就是測量的固有誤差,是電阻物理特性所決定的,后面的0.002|t|是測量溫度所引起的變化誤差,可以簡單理解在高溫和低溫情況PT100的精度相對中間測量溫度有所下降,例如在0℃時,通過計算采樣精度為0.15℃;同理在100℃時,通過計算采樣精度(0.15+0.002*100)=0.35℃。這個采樣精度是傳感器的自身誤差,不能夠通過電路設計進行優化去除,但是可以通過算法校準在特定的使用場合進行優化,以提高測量精度。PT100常見的接法電路主要分為三種,分別為二線制、三線制、四線制,二線制不考慮測量導線引入的導線電阻,所以一般適用于測量導線較短,測量精度要求不高的場合。三線制是現在工業設備中使用最為廣泛的接線方式,這種設計必須要保證R1,R2,R3三根引線是材料、長度和粗細是一致的,這樣就可以通過分別測量兩個正端的電阻阻值,然后進行減法運算得到溫感探頭真實阻值[3]。四線制的PT100能夠有效地降低導線電阻在測量過程中的誤差,但是測量電路相對較為復雜,需要制作恒流源進行測量。
假設R1,R2,R3,R4是PT100的四根導線的電阻,當R3,R4接電流源的時候,則R1,R2接監控設備。監控設備可以認為是開路狀態,當電流源電流恒定為I時,監控設備采集的電壓為U,就可以通過R=U/I計算出電阻Re的阻值,進而對應真實的溫度。
本設計巧用LM317內部基準電壓VREF,實現電流源的產生。由于其LM317內部的芯片反饋機制,在LM317的輸出引腳和電壓反饋引腳之間的電壓是恒定不變的,基本都是1.25V,因為個體差異會有少許偏差。通過測試得到LM317整體電流源精度可以達到0.1%的精度,能夠滿足采用所需的電流精度要求。
差分放大器是利用放大器的對稱電路,對于兩個輸入點的電壓進行對比,從而計算出兩個輸入端之間的差異。本設計采用的放大器為廣泛使用的LM358,能夠對小信號進行多達一百倍的放大,因為本設計采集的PT100的原始信號不經過原點,所以不需要考慮放大器的零漂問題以及最小放大電壓問題,并且本設計可以在軟件上對參數進行局域校準,所以不需要過多關注系統的采樣固有誤差,但是采樣對系統的穩定性要求較高,這直接決定了采樣的精度高低。本設計的放大倍數為4倍。差分放大器電路如圖3所示:
圖3 差分放大器電路
應用虛斷的概念,R3和R4形成一個分壓電路。V+(運放的正輸入端電壓)等于V2 * R4 / (R3 + R4)。
應用虛短的概念,V-就等于V+。對V1,R1,R2一路列方程:
(V-- V1) / R1 = (Vout - V-) / R2
(1)
將V+ 的表達式代入V-
Vout * R1 = V2 * R4 / (R3 + R4) *
(R2 + R1) - V1 * R2
(2)
因為R1=R3,R2=R4,進一步整理,則得到最后的表達式為
Vout = (V2 - V1 )* (R2 / R1)
(3)
本設計的LCD12864顯示模塊有12個引腳,1到4引腳是用來給背景燈珠供電以及參考地的引腳,第五個引腳是顯示屏的復位引腳,第六個是模式選擇引腳,第七個是SPI通訊的數據通訊引腳,用來傳輸顯示數據。第八個是SPI通訊的時鐘通訊引腳,用來提供通訊的時鐘基準。第九個是顯示屏的整體供電引腳,本設計采用3.3伏供電,第11個是顯示屏的片選引腳,旁邊的C3電容用來降低高頻奇次諧波。
本設計根據功能要求進行了軟件邏輯的設計,實現了本設計所要的功能。在系統上電后,首先要進行系統的初始化,然后對ADC進行初始化,配置本設計的溫度傳感器輸入的端口,復用單片機的ADC口,本設計選擇的是PA7,單片機ADC1轉換器的第七個通道,同時設置采樣頻率等參數。然后讀取PT100與高精度低溫漂電阻之間的電流乘以電阻之后的電壓值,送到單片機的ADC引腳進行模數轉換。為了保證轉換的精度和濾除系統轉化過程中存在的系統誤差,本設計采用轉換100次,將ADC轉換值進行累加處理,然后求平均值的方案,本設計的循環轉換函數會判斷是否達到100次轉換,如果沒有達到,記錄本次轉化的數值并進行累加,接下來進行下一次的ADC轉換,當達到100次轉換時,結束ADC采集轉換并求取100次轉換的平均值。獲得ADC轉換值后,通過計算得到電阻阻值的高低差異,然后通過PT100的公式計算得到對應的溫度數值,最后通過單片機和LCD12864之間的SPI串行線將數據發送到顯示屏顯示。
PT100溫度傳感器的軟件流程方案,首先本設計要對單片機的模數轉換資源口進行分配,設置轉換頻率,采樣周期等參數,然后溫度采樣電阻分壓過后得到的電壓數值被單片機采集,并且轉化為ADC采樣數值,這個ADC采樣數值并不能反應溫度的真實數值,所以需要先將這個ADC采樣數值轉換成電阻數值,然后再通過PT100的電阻與溫度之間的對應關系進行公式的計算,得到溫度數值。
本設計的顯示屏采用的是SPI串口通訊,共有四根線。一根是數據輸入線,這根數據輸入線是單片機發送數據到LCD12864顯示屏的顯示數據,顯示數據遵循通訊數據格式。一根是數據輸出線,SPI是雙向的數據通訊,有來有回,通訊速率可以達到10M/s,比IIC通訊速率提高了好幾倍[7]。一根是通訊時鐘線,通訊時鐘線的作用是為兩個設備之間的數字通訊提供一個時間基準。一根是片選信號線,就是單片機選擇是否和這個芯片進行通訊。因為本設計的顯示屏只有數據輸入,沒有數據輸出,所以本設計的SPI通訊線中只有三根線,少了一根數據輸出通訊線。
PT100鉑熱電阻通過它的阻值變化與溫度之間的關系,得出了一個比例系數,這個比例系數A=0.00390802;B=-0.000000580;C=0.0000000000042735,PT100在0到100度之間具有很好的線性關系,線性關系圖如圖4所示:
圖4 PT100線性關系圖
根據韋達公式求得阻值的換算公式:
t=(sqrt((A*R0)2-4*B*R0*(R0-Rt))-
A*R0)2/B/R0
(4)
但是這種線性的計算方式適用于采樣精度要求不高的場合,常見的兩線制的PT100設備多采用這種計算方式。對于本設計的四線制PT100采集系統,對于硬件的設計采用差分放大,有效減少了誤差干擾,對于軟件的算法,本設計采用查表法。查表法相對于公式計算法準確度更高,因為PT100傳感器采集的溫度與自身電阻之間的關系也不是絕對的線性關系,查表法能夠根據每個傳感器的采集差異進行有效的校準,提高采樣精度[5]。PT100單個采樣真值表如圖5所示:
圖5 PT100單個采樣真值表
通過實際的測量可以測量出恒流源輸出的電流為0.042毫安,進而可以得出溫度傳感器的電阻阻值,因為差分放大器采用的是1:4的放大倍率,整體放大倍數為4倍,假設通過STM32F401采集的adc的值為3000,通過公式計算的方式會存在系統誤差,如果采用溫度人員對其進行調整的方式,通過查表法查詢出3000所對應的區間所在范圍為33數組和34數組之間,兩個數據之間相差的溫度為1℃,因為在這個極小的溫度區間內,認為其是為線性的,可以通過計算得到溫度值為30.5度[6]。
猜你喜歡阻值溫度傳感器電阻四線制阻值檢測電路實驗研究山西電子技術(2022年2期)2022-04-22電阻大小誰做主中學生數理化·中考版(2020年10期)2020-11-27勵磁線圈對插入式電磁流量計的影響儀器儀表用戶(2020年1期)2020-01-06溫度傳感器DS18B20在溫度計設計中的應用電子制作(2019年12期)2019-07-16一種高性能CMOS溫度傳感器成都信息工程大學學報(2019年1期)2019-05-20低電阻碳膜板制作及其阻值的優化印制電路信息(2019年3期)2019-03-14巧測電阻中學生數理化·中考版(2018年11期)2019-01-31對一道電學實驗題的思考中學生數理化·教與學(2018年10期)2018-12-06XTR105電流變送器在溫度傳感器中的應用電子制作(2018年12期)2018-08-01電阻焊制造技術與機床(2017年3期)2017-06-23