新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP的數(shù)字溫度傳感器控制系統(tǒng)

基于DSP的數(shù)字溫度傳感器控制系統(tǒng)

作者: 時間:2011-12-28 來源:網(wǎng)絡(luò) 收藏


0 引言

本文引用地址:http://butianyuan.cn/article/257773.htm

20世紀(jì)60年代以來,數(shù)字信號處理器(Digital Signal Processing,)伴隨著計算機(jī)和通信技術(shù)得到飛速發(fā)展,應(yīng)用領(lǐng)域也越來越廣泛。在溫度控制方面,尤其是固體激光器的溫度控制,受其工作環(huán)境和條件的影響,溫度的精度要求比較嚴(yán)格,之前國內(nèi)外關(guān)于溫度控制基本上都采用溫度敏感電阻來測量溫度,然后用風(fēng)冷或者水冷方式來達(dá)到溫度控制效果,精度不夠且體積大。本文基于芯片TMS320F2812與數(shù)字DSl8B20設(shè)計出一個溫度測量系統(tǒng),根據(jù)測量所得的溫度與設(shè)定的參量,并利用模糊PID算法計算出控制量,利用該控制量調(diào)節(jié)由事件管理器產(chǎn)生PWM波的占空比,并作用于半導(dǎo)體制冷器,以達(dá)到溫度控制效果,實(shí)現(xiàn)控制精度高,體積小的溫度控制系統(tǒng)。

1 系統(tǒng)硬件組成

1.1 DSl8820功能結(jié)構(gòu)與使用

DSl8820是DALLAS公司生產(chǎn)的一線式數(shù)字,具有3引腳T0-92小體積封裝形式;溫度測量范圍為-55~+125℃;可編程為9~12位A/D轉(zhuǎn)換精度,測溫分辨率可達(dá)0.0625℃;CPU只需一根埠線就能與諸多DSl8B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。以上特點(diǎn)使DSl8B20非常適合用于遠(yuǎn)距離多點(diǎn)溫度檢測系統(tǒng)中。


DSl8B20的管腳排列如圖1所示。DQ為數(shù)字信號輸入/輸出端;GND為接地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。DS-l8B20中的可完成對溫度的測量,用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以O(shè).0625℃/LSB形式表達(dá),其中S為符號位。例如+125℃的數(shù)字輸出為07DOH,+25.0625℃的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為FF6FH,-55℃的數(shù)字輸出為FC90H。

1.2 DSP介紹

這里所用DSP為TMS320,它是美國TI公司新推出的低價位、高性能的16位定點(diǎn)DSP,是專為控制應(yīng)用系統(tǒng)而設(shè)計的,其主頻可達(dá)150 MHz,本系統(tǒng)中所用晶振為45 MHz,片內(nèi)集成了外圍設(shè)備接口,主要起控制和計算作用。

1.3 半導(dǎo)體制冷器簡介

半導(dǎo)體制冷器是根據(jù)帕爾貼效應(yīng)制成的,由兩種不同金屬組成一對熱電偶,當(dāng)熱電偶邁入直流電流后因直流電通入的方向不同,將在熱電偶結(jié)點(diǎn)處產(chǎn)生吸熱和放熱現(xiàn)象。制冷器結(jié)構(gòu)如圖2所示。


把一個N型和P型半導(dǎo)體的粒子用金屬連接片焊接成一個電偶對。當(dāng)直流電流從N極流向P極時,上端產(chǎn)生吸熱現(xiàn)象,此端稱冷端,下端產(chǎn)生放熱現(xiàn)象,此端稱熱端,如果電流方向反過來,則冷熱端相互轉(zhuǎn)換。

1.4 硬件連接

DSl8B20與DSP連接主要有兩種方式:寄生電源方式和外部供電方式。本文采用外部供電方式,其中18B20的DQ口與F2812的GPIOA0口連接,具體連接如圖3所示。

2 溫度測量

要進(jìn)行溫度控制,首先要測量所控制目標(biāo)的溫度值,在本系統(tǒng)中,具體使用數(shù)字溫度傳感器DSl8B20與DSP結(jié)合,并利用CCS編寫程序,本系統(tǒng)開發(fā)平臺為CCS 2.2,前期安裝及芯片設(shè)置在此省略,程序流程如圖4所示。

DSl8B20的控制包括三種時序:復(fù)位、寫時序、讀時序。

復(fù)位:主機(jī)總線在t0時刻發(fā)送一個復(fù)位脈沖(最短為480μs的低電平信號),接著在t1時刻釋放總線并進(jìn)入接收狀態(tài);DS1820在檢測到總線的上升沿之后等待15~60μs,接著在t2時刻發(fā)出存在脈沖(低電平持續(xù)60~240μs)。

寫時序:對于DSl8B20的寫時序分為寫O時序和寫1時序兩個過程。寫O時序和寫1時序的要求不同,當(dāng)要寫0時序時,總線要被拉低至少60 μs,保證DSl8B20能夠在15~45μs之間正確地采樣I/O總線上的“O”電平,當(dāng)要寫1時序時,單總線被拉低之后,在15μs之內(nèi)就得釋放單總線。寫數(shù)據(jù)持續(xù)時間應(yīng)大于60μs且小于120μs,兩次寫操作時間間隔要大于1μs。

讀時序:對于DSl8B20的讀時序同樣分為讀0時序和讀1時序兩個過程。對于DSl8B20的讀時序是從DSP把單總線拉低之后,在15 s之內(nèi)就得釋放單總線,以便讓DSl8B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。DSl8B20在完成一個讀時序過程,至少需要60μs才能完成。

需要注意的是,在程序編寫時不管是復(fù)位,還是讀寫,都要注意配置GPIOA0端口的狀態(tài)(輸入或輸出),同時時序非常重要,本文中的延時都是經(jīng)過多次測試后總結(jié)出來的,根據(jù)DSP芯片的晶振不同,延時程序都會改變,否則DSl8B20不會正常工作。

3 溫度控制

3.1 脈寬調(diào)制PWM輸出

TMS320的事件管理模塊總共能輸出16路PWM信號,文中僅需要輸出一路占空比可調(diào)的PWM信號,并設(shè)計從PWMl引腳輸出該方波信號。文中選用通用定時器1(T1)作為時基;全比較單元1保存調(diào)制值;計數(shù)方式采用連續(xù)增計數(shù)模式。PWM占空比值與T1的三角波數(shù)據(jù)比較,輸出PWM信號控制半導(dǎo)體制冷片工作。各寄存器設(shè)置如下(高速外設(shè)時鐘為22.5 MHz):


文中設(shè)計的PWM周期為 1.825 ms,TMS320F2812的計數(shù)器記數(shù)范圍為0~5DC。因此當(dāng)系統(tǒng)裝入CMPRl寄存器的值為0或5DCH時,輸出恒為高電平或低電平?,F(xiàn)以向CMPRl寫入1 500為例,PWMl引腳的輸出周期為1.825 ms的方波。

3.2 溫度控制軟件設(shè)計

根據(jù)前面敘述,用DSl8B20讀取溫度采樣值,再通過參數(shù)自整定的Fuzzy-PID算法對數(shù)據(jù)進(jìn)行處理:根據(jù)E和Ec的狀況,由模糊控制規(guī)律再通過模糊表推導(dǎo)出△KP,KI,KD,根據(jù)式(1)計算出KP,KI,KD的大小,再計算出U的初值和△U,由式(2)實(shí)時計算控制量U。通過參數(shù)轉(zhuǎn)換,將U轉(zhuǎn)換為PWM參數(shù),修改EvaRegs.CMPRl的數(shù)值,改變PWM的占空比,從而控制TEC的制冷/制熱功率。


程序流程圖如圖5所示


3.3 實(shí)驗(yàn)結(jié)果

完成以上程序編寫后,首先利用仿真器進(jìn)行溫度測量模擬,在標(biāo)準(zhǔn)溫度計所得室溫為31.2℃時,在CCS軟件中利用快速觀測窗口檢測到的溫度值為31.187 5℃。通過實(shí)驗(yàn)證明,在外界溫度為31℃,采用默認(rèn)設(shè)置(穩(wěn)定溫度為25℃)時,該溫度控制系統(tǒng)能使被控物體的溫度穩(wěn)定在25℃,溫度穩(wěn)定時間小于100s,精度可達(dá)到O.1℃以下,達(dá)到了工業(yè)控制要求。

4 結(jié)語

利用DSP的高速處理能力,結(jié)合DSl8B20精準(zhǔn)的溫度讀取能力,以及利用CCS開發(fā)出溫度控制系統(tǒng)。該溫度控制系統(tǒng)中應(yīng)用了Fuzzy-PID算法。設(shè)計目標(biāo)是:在同樣的控制精度條件下,使系統(tǒng)的過渡時間及超調(diào)量盡可能減小,以改善控制效果。采用復(fù)合控制,使系統(tǒng)能有效抑制純滯后的影響,當(dāng)參數(shù)變化較大以及有干擾時,仍能取得較好的控制效果。



關(guān)鍵詞: DSP DS18B20 溫度傳感器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉