摘 要: 設(shè)計了一種基于DSP的多路溫度采集系統(tǒng),,用于采集和處理多路溫度數(shù)據(jù)。系統(tǒng)采用了溫度傳感器LM35和DSP芯片,,并結(jié)合相關(guān)的程序和軟件,,實(shí)現(xiàn)了多路溫度數(shù)據(jù)采集和處理。該系統(tǒng)硬件電路簡單,,同時相對于單片機(jī)的數(shù)據(jù)采集系統(tǒng)更能滿足系統(tǒng)在精確度和實(shí)時性方面的要求,。實(shí)驗(yàn)證明,系統(tǒng)具有較好的實(shí)時性、方便性和安全性,可用于大多數(shù)工農(nóng)業(yè)領(lǐng)域的實(shí)時溫度采集,。
關(guān)鍵詞: DSP,; 溫度采集; LM35,; 硬件電路
溫度是表征物體冷熱程度的物理量,,是工業(yè)生產(chǎn)中的一個重要參數(shù)[1]。傳統(tǒng)的方式是采用熱電偶或熱電阻[2],,但是由于模擬溫度傳感器輸出的是模擬信號,,必須經(jīng)過轉(zhuǎn)換環(huán)節(jié)獲得數(shù)字信號后才能與單片機(jī)等微處理器接口,使得硬件電路結(jié)構(gòu)復(fù)雜,,制作成本較高[3],。本文采用LM35溫度傳感器進(jìn)行溫度采集,LM35系列是精密集成電路溫度傳感器,,其輸出電壓與攝氏溫度成線性正比,。因此,LM35比按絕對溫標(biāo)校準(zhǔn)的線性溫度傳感器性能優(yōu)越得多,。本文利用DSP內(nèi)部的12位模/數(shù)轉(zhuǎn)換器(ADC)來實(shí)現(xiàn)LM35溫度傳感器的模擬電壓信號轉(zhuǎn)換,,不需要外擴(kuò)模/數(shù)轉(zhuǎn)換器,LM35溫度傳感器輸出的電壓范圍在DSP模/數(shù)轉(zhuǎn)換器輸入電壓范圍內(nèi)(0~3 V),不需要對LM35輸出的電壓信號進(jìn)行處理,可直接與DSP的ADC接口連接,,這樣降低了電路的復(fù)雜程度和制作成本,同時能實(shí)現(xiàn)多路溫度信號的采集,精確度和實(shí)時性都比較高,,能用于大多數(shù)的工農(nóng)業(yè)溫度測量領(lǐng)域。
1 芯片介紹
TMS320F2812是TI公司生產(chǎn)的面向數(shù)字控制,、運(yùn)動控制領(lǐng)域的DSP芯片,,它支持多項(xiàng)的高速實(shí)時算法,采用先進(jìn)的哈佛結(jié)構(gòu),,將程序和數(shù)據(jù)放在不同的存儲空間,。TMS320F2812芯片采用了高性能的CMOS技術(shù),CPU主頻高達(dá)150 MHz,,時鐘周期為6.67 ns,;采用低功耗設(shè)計,內(nèi)核電壓為1.8 V,數(shù)字I/O口引腳電壓為3.3 V[4-5],。同時TMS320F2812的片內(nèi)外設(shè)資源豐富,,模擬量轉(zhuǎn)換為數(shù)字量的ADC采樣模塊理論精度為12 bit,具有16路輸入通道,、兩個采樣保持器,,有單一或者級聯(lián)兩種轉(zhuǎn)換模式,最高的轉(zhuǎn)換速率為12.5 MS/s,。
LM35系列是精密集成電路溫度傳感器,,其輸出的電壓線性地與攝氏溫度成正比。LM35系列傳感器生產(chǎn)制作時已經(jīng)過校準(zhǔn),,輸出電壓與攝氏溫度一一對應(yīng),,使用極為方便。靈敏度為10.0 mV/℃,,精度為0.4℃~0.8℃(-55℃~+150℃溫度范圍內(nèi)),重復(fù)性好,,低輸出阻抗,線性輸出和內(nèi)部精密校準(zhǔn)使其與讀出或控制電路接口簡單和方便,,可單電源和正負(fù)電源工作。LM35電路設(shè)計簡單,,在實(shí)際應(yīng)用中安裝也相當(dāng)簡便,。
2 系統(tǒng)整體結(jié)構(gòu)及硬件設(shè)計
2.1 多路溫度采集系統(tǒng)整體結(jié)構(gòu)框圖
DSP模擬轉(zhuǎn)換器具有16通道,能實(shí)現(xiàn)16路溫度數(shù)據(jù)的順序采樣,本文只介紹3路溫度采集系統(tǒng)的硬件電路設(shè)計,,其溫度采集系統(tǒng)框圖如圖1所示,,該系統(tǒng)由4個部分組成:溫度采集電路、限幅電路,、DSP模塊,、執(zhí)行單元。
溫度傳感器把采集到的溫度數(shù)據(jù)轉(zhuǎn)換為電壓信號,,電壓信號經(jīng)過限幅電路送至DSP模塊進(jìn)行處理運(yùn)算,,處理運(yùn)算后的數(shù)據(jù)送至執(zhí)行單元實(shí)現(xiàn)一定的功能。溫度傳感器主要實(shí)現(xiàn)溫度采集,;限幅電路主要是防止溫度傳感器輸出電壓超過DSP模塊中ADC的最大輸入電壓而燒壞DSP芯片,;DSP模塊主要實(shí)現(xiàn)多路數(shù)據(jù)的采集和轉(zhuǎn)換,并將轉(zhuǎn)換的數(shù)據(jù)輸出,;執(zhí)行單元主要是接收DSP采集的多路數(shù)據(jù),,并利用數(shù)據(jù)進(jìn)行多種控制。
2.2 多路溫度采集系統(tǒng)硬件電路設(shè)計
溫度傳感器選擇LM35DZ, 工作溫度范圍0℃~+100℃,。LM35DZ的輸出電壓與攝氏溫度成線性關(guān)系,,0℃時輸出為0 V,每升高1℃輸出電壓增加10 mV[6]。由此可知,輸出電壓值為0 V~1 V,,輸出電壓與溫度滿足關(guān)系:
V=10×T
式中,,V為輸出電壓,單位為mV,; T為溫度,,單位為℃。
本文選用3個LM35DZ溫度傳感器,,該傳感器有3個引腳,,分別是輸入電壓輸入引腳、溫度信號輸出引腳和接地引腳,。采用單電源工作,,傳感器輸入電壓為5 V,電路設(shè)計相當(dāng)簡單,,其電路如圖2所示[6],。
為了保險起見,在輸入信號進(jìn)入DSP的ADC端口時,,最好加一個限幅電壓,,以防止輸入電壓過大而導(dǎo)致DSP芯片損壞。本文限幅電路采用一個雙二極管,,其電路如圖3所示,。
由圖3可知,本文選擇的是飛凌公司的BAT68-04W,,當(dāng)輸入電壓超過3.3 V時,,雙二極管上端導(dǎo)通,ADCINAx輸入引腳電壓變?yōu)?.3 V,;當(dāng)輸入電壓小于0 V時,,雙二極管下端導(dǎo)通,ADCINAx輸入引腳電壓變?yōu)? V,,因此這個電路能夠?qū)DCINAx輸入引腳的電壓保持在0~3.3 V[4],。本文選擇3.3 V電壓是從工程設(shè)計的實(shí)際情況出發(fā),DSP的I/O口工作電壓是3.3 V,,最接近3 V,。
本文DSP模塊中選擇的DSP芯片是TMS320F2812,DSP模塊包括DSP的電源電路,、JATG口下載電路和時鐘電路,,電源芯片采用TPSTD318,它將外部電壓5 V轉(zhuǎn)換為3.3 V和1.9 V,以完成對DSP外設(shè)和內(nèi)核的供電[7],。JATG下載口與DSP相連接的端口均采用上拉電阻,,以提高抗干擾能力。時鐘電路采用DSP內(nèi)部時鐘,在DSP的X1/XCLKIN和X2兩個引腳之間連接一個石英晶體,。
3 程序設(shè)計和軟件調(diào)試
3.1 程序設(shè)計
程序設(shè)計使用C語言編寫,,程序開始首先對DSP模塊進(jìn)行初始化,其中包括:初始化系統(tǒng)控制模塊,、初始化ADC模塊,、初始化事件管理器模塊。再開啟中斷,,啟動定時器計時,,當(dāng)定時器產(chǎn)生周期中斷時,ADC開始轉(zhuǎn)換數(shù)據(jù),,最后結(jié)束程序,,輸出實(shí)驗(yàn)結(jié)果。程序流程圖如圖4所示,。
文中ADC轉(zhuǎn)換的啟動信號采用定時器的周期中斷啟動,,設(shè)定定時器周期為0.1 ms,當(dāng)定時器計時0.1 ms時,,產(chǎn)生周期中斷,,DSP的ADC開始轉(zhuǎn)換。轉(zhuǎn)換結(jié)束后輸出數(shù)據(jù),,并返回主程序準(zhǔn)備下一次數(shù)據(jù)轉(zhuǎn)換,。
ADC轉(zhuǎn)換采用單序列順序采樣模式,其采樣頻率為2.5 MHz,,程序設(shè)計如下:
AdcRegs.ADCTRL1.bit.CONT_RUN=0;
//運(yùn)行于啟動/停止模式
AdcRegs.ADCTRL1.bit.SEQ_CASC=1; //單序列發(fā)生器模式
AdcRegs.ADCTRL3.bit.SMODE_
SEL=0; //采用順序采樣模式
AdcRegs.ADCTRL3.bit.ADCCLKPS=15;
//ADCLK=HSPCLK/30=2.5 MHz
ADC轉(zhuǎn)換結(jié)果為:
adc[0]=(((float)AdcRegs.RESULT0)*3.0/65520.0+adclo)
*100; //存放ADCINA0的結(jié)果
adc[1]=(((float)AdcRegs.RESULT1)*3.0/65520.0+adclo)
*100; //存放ADCINA1的結(jié)果
adc[2]=(((float)AdcRegs.RESULT2)*3.0/65520.0+adclo)
*100; //存放ADCINA2的結(jié)果
3.2 軟件調(diào)試
CCS(Code Composer Studio)是開發(fā)DSP時所需的軟件開發(fā)環(huán)境,即程序編寫,、調(diào)試DSP代碼都需要在CCS軟件中進(jìn)行,。
實(shí)驗(yàn)中將3個傳感器分別安裝在實(shí)驗(yàn)室的不同位置,實(shí)驗(yàn)調(diào)試結(jié)果如圖5所示,。由圖可知,,3個溫度傳感器均測得實(shí)驗(yàn)室的溫度為29.494 5℃。
本文采用LM35溫度傳感器與DSP結(jié)合進(jìn)行多路溫度數(shù)據(jù)采集,,電路設(shè)計簡單,,制作成本低,相對于單片機(jī)的數(shù)據(jù)采集系統(tǒng)更能滿足系統(tǒng)在精確度和實(shí)時性方面的要求,。同時,,該系統(tǒng)具有較好的實(shí)時性、方便性和安全性,可用于工農(nóng)業(yè)大多數(shù)實(shí)時溫度采集領(lǐng)域,。
參考文獻(xiàn)
[1] 谷志新,王述洋,馬雷,等.無線溫度采集系統(tǒng)的設(shè)計[J].自動化儀表,2010,4(31):73-76.
[2] 彭遠(yuǎn)芳,趙又新. 高精度溫度采集系統(tǒng)[J]. 儀表技術(shù)與傳感器,2007(5):45-46.
[3] 林婧. 基于AT89S52的多路溫度檢測設(shè)備的設(shè)計[J].中國新技術(shù)新產(chǎn)品,2011(15):153-153.
[4] 顧衛(wèi)鋼.手把手教你學(xué)DSP[M].北京:北京航空航天大學(xué)出版社,2011.
[5] 周正義,,穆帥歡,陽路. DSP和AD9244的多路數(shù)據(jù)采集系統(tǒng)[J]. 微型機(jī)與應(yīng)用,2013,32(17):67-68.
[6] 王景景. 基于LM35的溫度測量系統(tǒng)[J]. 現(xiàn)代電子技術(shù),2007,30(5):157-158.
[7] 孫元敏,尹立新,楊書濤. 基于TMS320F2812的高速數(shù)據(jù)采集處理系統(tǒng)[J].計算機(jī)工程,2009,35(2):242-243.