類R―F轉(zhuǎn)換頻率測量溫度方法詳解
測量溫度一般采用開關(guān)電源模塊熱敏電阻做傳感器,測量的方法有R—V轉(zhuǎn)換電壓測量法和R—F轉(zhuǎn)換頻率測量法。這兩種方法的MTD2002電路復(fù)雜且成本高,電路中很多元器件直接影響測量精度。本文論述一種類R—F轉(zhuǎn)換頻率的測量法,用NE555定時器和熱敏電阻等器件構(gòu)成振蕩器,由開關(guān)電源模塊MSP430單片機(jī)的捕獲功能來捕獲多諧振蕩器輸出信號的高低電平并計數(shù),熱敏電阻Rt與捕獲高低電平時的計數(shù)值的差值成正比關(guān)系。該方法電路簡單、成本低,系統(tǒng)流程框圖如圖1所示。
本文引用地址:http://m.butianyuan.cn/article/201610/308768.htm1 負(fù)溫?zé)崦綦娮?/p>
PT一25E2熱敏電阻溫度阻值變化曲線如圖2所示。PSB型負(fù)溫?zé)崦綦娮栌蒀o、Mn、Ni等過渡金屬元素的MTD2002氧化物組成,經(jīng)高溫?zé)砂胩沾桑瞄_關(guān)電源模塊半導(dǎo)體毫微米的精密加工工藝,采用玻璃管封裝,耐溫性好,可靠性高,反應(yīng)速度快且靈敏度高。它采用軸向型結(jié)構(gòu),便于安裝,能承受更高溫度,且玻璃封裝耐高低溫(一50~350℃)。
2 MSP430單片機(jī)計數(shù)法測溫原理
以NE555定時器為核心組成典型的多諧振蕩器,把被測熱敏電阻Rt作為MTD2002定時元件之一接入電路中,開關(guān)電源模塊NE555定時器輸出引腳接MSP430單片機(jī)的P1.2腳(Timer_A:捕獲、CCIlA輸入引腳)。系統(tǒng)電路如圖3所示。
由NE555工作原理可知,開關(guān)電源模塊多諧振蕩器輸出信號(周期性矩形波)的高電平時間(1個周期內(nèi))為:
若控制開關(guān)電源模塊MSP430單片機(jī)的定時器A計數(shù)時鐘的頻率設(shè)置為f,則捕獲到高電平時間內(nèi)的計數(shù)值為NH,捕獲到MTD2002低電平時間內(nèi)的計數(shù)值為NL,所以有:
因為f、C1、R1均為定值,所以Rt與N成正比,且增大f還可以提高測量精度。查表可得溫度值。
由上述測量原理可知,誤差主要來源為:R1、R2精度,單片機(jī)的定時器和電容器的精度以及穩(wěn)定度。這里選用高精度(士O.001%)、溫度系數(shù)小于土O.3×10-6/℃的精密金屬箔電阻器。因此當(dāng)選用高精度、高穩(wěn)定度的電容器,且單片機(jī)的工作頻率足夠高,就可以得到較好的測溫精度。
3 MSP430單片機(jī)捕獲原理
捕獲計數(shù)法的原理如圖4所示。通過開關(guān)電源模塊MSP430單片機(jī)TACTL寄存器給定時器A設(shè)置一個固定的MTD2002時鐘頻率f和計數(shù)模式(本系統(tǒng)設(shè)為連續(xù)模式)。又知Timer A工作在連續(xù)計數(shù)模式時,TAR(16位)計數(shù)范圍是0一FFFFH值。定時器A連續(xù)模式計數(shù)啟動后,TAR的值開始從O—FFFFH一O—FFFFH……不斷重復(fù)計數(shù),直至軟件控制其停止計數(shù)為止;同時設(shè)置TACCTL寄存器的CMx、CAP、CCIE位,在多諧振蕩器輸出方波的上升沿和下降沿都觸發(fā)捕捉并中斷。這樣當(dāng)每次沿到來,進(jìn)入中斷并捕獲上升沿和下降沿時刻的值(如TACCRla、TACCRlb、TAC—CRlc、TACCRld……),然后用此次捕獲的值減去上次捕獲的值即可得高或低電平時間內(nèi)的計數(shù)值NH、NL。例如:NH=TACCRlb一TACCRla、NL=TACCRlc一TACCRlb,代入式4、式5便可得出R的值,查表即得溫度值。
MSP430F1X定時器初始化所涉及的寄存器配置如下:
TASSELx:4種時鐘源供選擇。
IDx:4種預(yù)分頻選擇。
MCx:TAR計數(shù)模式選擇,MCx=11,上升沿和下降沿都捕獲。
TAIE:Timer_A中斷使能,為“1”中斷使能。
CMx:捕獲觸發(fā)信號選擇。
SCS:捕獲同步或異步選擇,“O”同步、“1”異步。
CAP:捕獲模式選擇,“O”比較、“1”捕獲。
CCIE:捕獲/比較中斷選擇,為“1”中斷使能。
4 軟件設(shè)計
基于開關(guān)電源模塊MSP430單片機(jī)捕獲中斷測溫程序流程如圖5、圖6所示,包括MTD2002主程序流程、捕獲中斷和溢出中斷流程。
Timer_A初始化代碼如下
捕獲中斷和溢出中斷函數(shù)代碼如下:
代入常量f、C1、R2的值,即可得熱敏電阻阻值,通過查表可得MTD2002溫度值。查表溫度間隔一般為1℃,如果忽略開關(guān)電源模塊熱敏電阻1℃以內(nèi)的非線性誤差,可以將兩攝氏度之間取線性計算,這樣可以得到O.01℃的分辨率。
結(jié) 語
由測量原理知:開關(guān)電源模塊被測電阻的阻值越大,MTD2002測量誤差越小。筆者已應(yīng)用該方法設(shè)計出一款溫度計,測量范圍為一10~80℃,分辨率達(dá)到O.01℃,誤差在O.3℃以內(nèi)。該開關(guān)電源模塊設(shè)計充分利用了MSP430單片機(jī)的捕獲功能和低功耗功能,使得MTD2002電路功耗低、電路簡潔、價格低廉、精度高。
評論