基于STM32芯片的溫度測量系統(tǒng)設(shè)計_第1頁
基于STM32芯片的溫度測量系統(tǒng)設(shè)計_第2頁
基于STM32芯片的溫度測量系統(tǒng)設(shè)計_第3頁
基于STM32芯片的溫度測量系統(tǒng)設(shè)計_第4頁
基于STM32芯片的溫度測量系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1溫度測量系統(tǒng)設(shè)計要求該溫度測量系統(tǒng)應(yīng)能夠?qū)囟冗M行實時測量,以數(shù)值形式在屏幕上顯示出來。并且可以通過串口與計算機做數(shù)據(jù)通信,將溫度數(shù)據(jù)實時上傳到計算機,結(jié)合計算機軟件實現(xiàn)外部功能擴展。溫度測量探頭的工作溫度為-50℃至200℃。測量系統(tǒng)的工作溫度為-20℃至60℃。系統(tǒng)使用5V的USB電源供電。主處理芯片STM32F103RCT6的管腳都引出,并且預(yù)留接口,測量系統(tǒng)硬件和軟件都可以實現(xiàn)擴展。本文從實現(xiàn)以上所述根本功能出發(fā),對整個溫度測量系統(tǒng)進行設(shè)計。2溫度測量系統(tǒng)設(shè)計方案設(shè)計思路為是通過熱敏電阻將溫度轉(zhuǎn)換為電信號,經(jīng)過放大后進行模數(shù)采集后的到數(shù)字信號,再進行數(shù)字濾波處理后,通過顯示器將溫度的數(shù)值顯示出來。溫度數(shù)值顯示數(shù)字濾波溫度數(shù)值顯示數(shù)字濾波信號放大溫度采集圖2.1溫度測量系統(tǒng)設(shè)計方案示意圖2.1溫度采集熱敏電阻的阻值隨溫度變化而變化。一般采用阻值的變化與溫度的變化有線性關(guān)系的電阻來采集溫度,最后通過阻值的變化來反映出溫度。Pt100鉑熱電阻與溫度之間存在一定關(guān)系,通過阻值的變化可以得到對應(yīng)的溫度。有些是采用熱電偶的方式,溫度檢測局部可以使用低溫?zé)崤迹瑹犭娕加蓛蓚€焊接在一起的異金屬導(dǎo)線所組成。熱電偶產(chǎn)生的熱電勢由兩種金屬的接觸電勢和單一導(dǎo)體的溫差電勢組成。通過將參考結(jié)點保持在溫度并測量該電壓,便可推斷出檢測結(jié)點的溫度。本設(shè)計中采用的是鉑熱電阻Pt100,鉑易于提純、復(fù)制性好,在氧化介質(zhì),甚至高溫條件下物理化學(xué)性質(zhì)都及其穩(wěn)定。鉑電阻的阻值隨溫度的變化而變化的計算公式:在-200℃~0℃的溫度范圍內(nèi)為:Rt=R0在0~800℃的溫度范圍內(nèi)為:Rt=R0式中:Rt為溫度在t℃時鉑電阻值,R0為0℃時鉑電阻值,A、B、C為常數(shù)。鉑熱電阻不同分度號對應(yīng)有相應(yīng)分度表,即R(t)?t關(guān)系表。實際測量中,只要測得熱電阻的阻值,即可從分度表上查出對應(yīng)的溫度值?;菟雇姌颉灿址Q單臂電橋〕是一種可以精確測量電阻的電路。他由四個電阻組成的電橋電路,這四個電阻分別叫做電橋的橋臂,惠斯通電橋利用電阻的變化來測量物理量的變化,單片機采集可變電阻兩端的電壓然后處理,就可以計算出相應(yīng)的物理量的變化,是一種精度很高的測量方式。如上圖,電橋平衡時,檢流計所在支路電流為零,那么有:〔1〕流過R1和R4的電流相同,流過R2和R3的電流相;〔2〕B,D兩點電勢相等。圖2.2惠斯通電橋示意圖由于三個阻值,便可求得第四個電阻。測量時,選擇適當?shù)碾娮枳鳛镽1和R2,用一個可變電阻作為R3,令被測電阻充當R4,調(diào)節(jié)R3使電橋平衡,而且可利用高靈敏度的檢流計來測零,故用電橋測電阻比用歐姆表精確。電橋不平衡時,G的電流IG與R1,R2,R3,R4有關(guān)。利用這一關(guān)系也可根據(jù)IG及三個臂的電阻值求得第四個臂的阻值,因此不平衡電橋原那么上也可測量電阻。在不平衡電橋中,使R4為要測量阻值的熱敏電阻,而R1、R2和R3的阻值相等。BD端電壓和R4阻值有以下對于關(guān)系:△V=(R4R1+R4-R2設(shè)R1、R2和R3的阻值為R,所以,通過采集BD間的電壓△V,經(jīng)過運算后,即可得到R4的阻值。R4和△V有一下關(guān)系:R4=(2.2信號放大處理信號放大處理使用MCP6002芯片進行,MicrochipTechnologyInc.的MCP6002運算放大器專為通用應(yīng)用而設(shè)計。具有1MHz增益帶寬乘積〔GBWP〕和90°相位容限??梢员3?5°相位帶有500pF容性負載容限。這個系列工作電壓低至1.8V,100μA〔典型值〕靜態(tài)電流。電源為范圍1.8V至5.5V。圖2.3MCP6002簡圖MCP6002芯片中包含了兩個運算放大器,本設(shè)計中只使用一個,另外一個留作擴展。VDD接電源正極,VSS接電源負極,Vina+和Vina-分別接在電橋上的BD端,Vouta輸出到模數(shù)轉(zhuǎn)換電路。2.3數(shù)據(jù)處理本設(shè)計中使用意法半導(dǎo)體公司的STM32F103RCT6,STM32F1系列根底型MCU滿足了工業(yè)、醫(yī)療和消費類市場的各種應(yīng)用需求。憑借該產(chǎn)品系列,意法半導(dǎo)體在全球ARMCortex-M微控制器領(lǐng)域處于領(lǐng)先地位,同時樹立了嵌入式應(yīng)用的里程碑。該系列利用一流的外設(shè)和低功耗、低壓操作實現(xiàn)了高性能,同時還以可接受的價格、利用簡單的架構(gòu)和簡便易用的工具實現(xiàn)了高集成度。STM32F103RCT6使用高性能的ARMCortex-M332位的RISC內(nèi)核,工作頻率為72MHz,內(nèi)置高速存儲器(高達512K字節(jié)的閃存和64K字節(jié)的SRAM),豐富的增強I/O端口和聯(lián)接到兩條APB總線的外設(shè)。包含3個12位的ADC、4個通用16位定時器和2個PWM定時器,還包含標準和先進的通信接口:多達2個I2C接口、3個SPI接口、2個I2S接口、1個SDIO接口、5個USART接口、一個USB接口和一個CAN接口。STM32F103RCT6工作于-40°C至+105°C的溫度范圍,供電電壓2.0V至3.6V。本設(shè)計中的模數(shù)轉(zhuǎn)換就使用STM32F103RCT6中的模擬/數(shù)字轉(zhuǎn)換器(ADC)完成。STM32F103RCT6內(nèi)嵌3個12位的模擬/數(shù)字轉(zhuǎn)換器(ADC),每個ADC共用多達21個外部通道,可以實現(xiàn)單次或掃描轉(zhuǎn)換。在掃描模式下,自動進行在選定的一組模擬輸入上的轉(zhuǎn)換。經(jīng)過模數(shù)轉(zhuǎn)換得到數(shù)據(jù)后,使用加權(quán)遞推平均濾波法對數(shù)據(jù)進行濾波。遞推平均濾波法是指在存儲器中,開辟一個區(qū)域作為暫存隊列使用,隊列的長度固定為N,每進行一次新的測量,把測量結(jié)果放入隊尾,而扔掉原來隊首的那個數(shù)據(jù),這樣在隊列中始終有個“最新〞的數(shù)據(jù)。遞推平均項數(shù)的選取是比擬重要的環(huán)節(jié),N選得過大,平均效果好,但是,對參數(shù)變化的反響不靈敏;N選得過小,濾波效果不顯著。圖2.4STM32F103RCT6實物圖加權(quán)遞推平均濾波法是對遞推平均濾波法的改良,即不同時刻的數(shù)據(jù)加以不同的權(quán),通常是,越接近現(xiàn)時的數(shù)據(jù),權(quán)值取得越大。給予新采樣值的權(quán)系數(shù)越大,那么靈敏度越高,但信號平滑度越低。2.4溫度數(shù)值顯示本設(shè)計使用ALIENTEKOLED模塊顯示溫度數(shù)值。該OLED模塊是ALIENTEK推出的一款小尺寸、高亮、自帶升壓電路的高性能OLED顯示模塊,分辨率為128*64,該模塊采用原裝維信諾高亮OLED屏,采用SSD1304驅(qū)動IC,該芯片內(nèi)部集成DCDC升壓,僅需3.3V供電,即可正常工作。模塊支持8位6800并口,8位8080并口,IIC以及4線SPI等4種通信接口,通過模塊反面的BS1和BS2焊盤,可以自行設(shè)置模塊的接口方式。圖2.5ALIENTEKOLED模塊實物圖3電路設(shè)計本系統(tǒng)的電路設(shè)計包括STM32F103RCT6芯片外圍電路、溫度采集電路和OLED電路,其中STM32F103RCT6芯片外圍電路包括電源電路、復(fù)位電路、晶振電路和USB通信電路。3.1電源電路電源電路中包括USB接口、AMS1117-3.3穩(wěn)壓器、開關(guān)按鈕、瞬態(tài)浪涌抑制二極管、可恢復(fù)保險絲和鉭電容等等,電路中由USB接口外部供電,AMS1117-3.3將USB的5V電源穩(wěn)壓到3.3V輸入到系統(tǒng)中。圖3.1電源電路原理圖其中AMS1117-3.3內(nèi)部集成過熱保護和限流電路,是電池供電和便攜計算機的最正確選擇。AMS1117芯片上Vin接USB口的VCC,Vout為穩(wěn)壓后的電壓輸出,GND/ADJ口可以做調(diào)壓使用,不需要調(diào)壓的情況下,直接接GND。AMS117的輸入和輸出端都加上濾波電容。瞬態(tài)二極管簡稱TVS,是一種二極管形式的高效能保護器件。當TVS二極管的兩極受到反向瞬態(tài)高能量沖擊時,它能以10的負12次方秒量級的速度,將其兩極間的高阻抗變?yōu)榈妥杩?,吸收高達數(shù)千瓦的浪涌功率,使兩極間的電壓箝位于一個預(yù)定值,有效地保護電子線路中的精密元器件,免受各種浪涌脈沖的損壞。由于它具有響應(yīng)時間快、瞬態(tài)功率大、漏電流低、擊穿電壓偏差、箝位電壓較易控制、無損壞極限、體積小等優(yōu)點。USB接口上的D+和D-為數(shù)據(jù)通信口,兩者都連接到USB通信芯片CH340上,其中D+加了1.5K歐姆的上拉。USB自動識別設(shè)備為高速還是低速靠上拉電阻在D+還是D-上區(qū)別,電阻阻值的不標準會影響USB自動識別資源分配,其中D+加1.5K歐姆的上拉為12MBPs高速率工作模式。圖3.2AMS1117簡圖3.2晶振電路電路中使用12M高速晶振和32.768K低速晶振,其中32.768K低速晶振保證RTC實時時鐘功能。內(nèi)部時鐘的精度不高,溫飄也比擬大,所以我們主要使用外部的12M高速時鐘。外部高速時鐘經(jīng)過鎖相環(huán)倍頻輸出,可以倍頻2-16倍,最大可以到72MHz。圖3.2晶振電路原理圖3.3復(fù)位電路STM32F103RCT6芯片復(fù)位引腳RESET默認上拉,當復(fù)位按鍵KEY1被按下是,RESET引腳被拉低,芯片復(fù)位。復(fù)位電路如下列圖。圖3.3復(fù)位電路原理圖3.4USB通信電路本設(shè)計中USB與計算機通信用CH340芯片完成,溫度測量系統(tǒng)通過CH340可以把溫度數(shù)據(jù)實時上傳到計算機,結(jié)合計算機軟件實現(xiàn)其他功能的拓展。CH340芯片還能實現(xiàn)通過USB接口一鍵下載程序到STM32F103RCT6上。CH340是一個USB總線的轉(zhuǎn)接芯片,實現(xiàn)USB轉(zhuǎn)串口、USB轉(zhuǎn)IrDA紅外或者USB轉(zhuǎn)打印口。在串口方式下,CH340提供常用的MODEM聯(lián)絡(luò)信號,用于為計算機擴展異步串口,或者將普通的串口設(shè)備直接升級到USB總線。具有全速USB設(shè)備接口,兼容USBV2.0,外圍元器件只需要晶體和電容。計算機端Windows操作系統(tǒng)下的串口應(yīng)用程序完全兼容,無需修改。硬件全雙工串口,內(nèi)置收發(fā)緩沖區(qū),支持通訊波特率50bps-2Mbps。支持5V電源電壓和3.3V電源電壓。當使用5V工作電壓時,CH340芯片的VCC引腳輸入外部5V電源,并且V3引腳應(yīng)該外接容量為4700pF或者0.01uF的電源退耦電容,CH340芯片正常工作時需要外部向XI引腳提供12MHz的時鐘信號。一般情況下,時鐘信號由CH340內(nèi)置的反相器通過晶體穩(wěn)頻振蕩產(chǎn)生。外圍電路只需要在XI和XO引腳之間連接一個12MHz的晶體,并且分別為XI和XO引腳對地連接振蕩電容。一鍵下載電路的具體實現(xiàn)過程:首先,MCUISP控制DTR輸出低電平,然后RTS置高,即DTR#輸出高,RTS#輸出低,這樣Q2導(dǎo)通,BOOT0被拉高,即實現(xiàn)設(shè)置BOOT0為1,同時Q1也會導(dǎo)通,STM32F103RCT6的復(fù)位腳RESET被拉低,實現(xiàn)復(fù)位。然后,延伸100ms后,MCUISP控制DTR為高電平,DTR#輸出低電平,RST維持高電平,那么RTS#繼續(xù)為低電平,此時STM32F103RCT6的復(fù)位引腳因為Q1不導(dǎo)通,變?yōu)楦唠娖剑瓿蓮?fù)位,但是BOOT0還維持在1,從而進入ISP模式,接著MCUISP就可以和STM32F103RCT6連接,下載代碼,從而實現(xiàn)一鍵下載。圖3.4USB通信電路原理圖3.5溫度采集電路本設(shè)計使用Pt100鉑熱電阻對溫度進行采集,電橋供電電壓為3.3V,電橋上的R41,、R42和R33的阻值相等,S+和GND引線接到Pt100上,電橋兩端連接到運算放大器MCP6002的VINA+和VINA-上,運算放大器MCP6002同樣使用3.3V的電源供電。MCP6002的放大輸出端VOUTA與STM32F103RCT6的PA1引腳〔即ADC1的CH1〕連接,進行模數(shù)轉(zhuǎn)換。MCP6002中的另外一個運算放大器的三個引腳VINB+、VINB-和VOUTB也引出來,作為擴展接口。圖3.5溫度采集電路原理圖3.6OLED電路OLED模塊采用8*2的2.54排針與外部連接,共有16個管腳,在16條線中,只用了15條,有一個是懸空的。15條線中,電源和地線占了2條,還剩下13條信號線。在不同模式下,需要的信號線數(shù)量不同,在8080模式下,需要全部13條信號線,在IIC模式下,僅需2條線就夠,其中有一條是共同的復(fù)位線〔RST〕,RST上的低電平,將導(dǎo)致OLED復(fù)位,在每次初始化之前,都要復(fù)位一下OLED模塊。ALIENTEKOLED模塊的控制器是SSD1306.圖3.6OLED電路原理圖本設(shè)計中使用8080并行接口,該總線被廣泛用于各類液晶顯示器。在8080接口方式中CS為OLED片選信號,WR向OLED寫入數(shù)據(jù),RD從OLED讀取數(shù)據(jù),RST為硬復(fù)位。先根據(jù)要寫入/讀取的數(shù)據(jù)類型,設(shè)置DC為高〔數(shù)據(jù)〕/低〔命令〕,然后拉低片選,選中SSD1303,接著更具讀/寫數(shù)據(jù)設(shè)置RD/WD為低,然后再RD的上升沿,使數(shù)據(jù)鎖存到數(shù)據(jù)線D[7:0]上。圖3.7溫度測量系統(tǒng)PCB設(shè)計圖4程序設(shè)計構(gòu)架程序首先要對串口、ADC、OLED進行初始化,接下來是對局部數(shù)據(jù)初始化。程序設(shè)計的核心是加權(quán)遞推平均濾波算法的設(shè)計。算法的設(shè)計架構(gòu)如下:圖4程序設(shè)計流程圖加權(quán)遞推平均濾波算法實現(xiàn)代碼如下:intmain(void){ u32a[10],c[10],n,sum,i;uart_init(9600); //串口初始化為9600LED_Init(); //初始化與LED連接的硬件接口Adc_Init(); //ADC初始化 n=0;//數(shù)據(jù)錄入位置初始化 for(i=0;i<10;i++)c[i]=10-i;//權(quán)值初始化 w

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論