<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 單片機控制的數字溫度計的設計

單片機控制的數字溫度計的設計

作者: 時(shí)間:2017-06-04 來(lái)源:網(wǎng)絡(luò ) 收藏

基于實(shí)際應用中許多場(chǎng)合對溫度高精度測量的需求,利用最小系統,采用等精度頻率測量技術(shù),設計了一款高精度數字溫度計。該方案采用作為可編程邏輯器件,以高靈敏度負溫度系數為溫度傳感器。利用配合完成待測信號頻率的精確測量,從而實(shí)現溫度的精確測量。實(shí)驗數據表明該溫度計的測溫相對誤差小于0.3%。

本文引用地址:http://dyxdggzs.com/article/201706/347813.htm

溫度是人們日常生活中常常需要測量和控制的一個(gè)物理量。傳統的溫度計有反應速度慢、讀數麻煩、測量精度不高、誤差大等缺點(diǎn),而在某些特定的場(chǎng)合,器材設備對溫度的要求極高,設計一種高精度的溫度計就顯得十分有意義。設計的高精度溫度計有著(zhù)線(xiàn)性?xún)?yōu)良、性能穩定、靈敏度高、使用方便、軟硬件結構實(shí)現了模塊化、電路簡(jiǎn)單等優(yōu)點(diǎn)。

1 設計方案

是對溫度變化非常敏感的電阻元件,它在測溫技術(shù)、無(wú)線(xiàn)電技術(shù)、自動(dòng)化和遙控等方面都得到廣泛的應用。能夠將環(huán)境溫度的變化轉化為電阻自身阻值的變化,它將溫度的變化轉換為連續的電信號的變化,再由外電路把該電信號轉化成可處理的脈沖(頻率)信號,由單片機來(lái)直接處理。熱敏電阻構成的555振蕩電路能夠實(shí)現由電阻到頻率的轉換功能,建立起由溫度到電阻值再到頻率的對應關(guān)系。處理器對頻率信號的處理精度直接影響著(zhù)溫度測量的精度,采用等精度測頻方案能夠滿(mǎn)足精度的要求,設計中采用查表法和插值法來(lái)建立頻率與溫度的轉換關(guān)系。

設計的數字溫度計主要由下面4部分組成:溫度傳感部分、等精度測頻部分、頻率溫度轉換部分、數據緩存及顯示部分,原理圖如圖1所示。設計中用到的主要模塊有:1)單片機最小系統。單片機最小系統或者稱(chēng)為最小應用系統,是指用最少的元件組成的單片機可以工作的系統。單片機最小系統一般應該包括:?jiǎn)纹瑱C、晶振電路、復位電路。2)CPLD(Complex ProgrammableLogic Device)。復雜可編程邏輯器件。其具有編程靈活、集成度高、設計開(kāi)發(fā)周期短、適用范圍寬、開(kāi)發(fā)工具先進(jìn)、設計制造成本低、對設計者的硬件經(jīng)驗要求低、標準產(chǎn)品無(wú)需測試、保密性強、價(jià)格大眾化等特點(diǎn),可實(shí)現較大規模的電路設計,因此被廣泛應用于產(chǎn)品的原型設計和產(chǎn)品生產(chǎn)之中。CPLD內部結構為“與或陣列”,該結構來(lái)自于典型的PAL、GAL器件的結構。任意一個(gè)組合邏輯都可以用“與-或”表達式來(lái)描述,所以該“與或陣列”結構能實(shí)現大量的組合邏輯功能。CPLD最基本的單元是宏單元。一個(gè)宏單元包含一個(gè)寄存器(使用多達16個(gè)乘積項作為其輸入)及其他有用特性。因為每個(gè)宏單元用了16個(gè)乘積項,因此設計人員可部署大量的組合邏輯而不用增加額外的路徑。單片機與CPLD之間的三總線(xiàn)結構,如圖2所示。

2 硬件部分設計

2.1 溫度與頻率轉換部分的設計

由熱敏電阻與555定時(shí)器構成多諧振蕩電路如圖3所示,該電路能夠實(shí)現由溫度變化到電阻變化再到頻率變化的變換。

555振蕩電路頻率:

其中Rn是熱敏電阻NTC,C為放電電容,RN是在額定溫度TN(K)時(shí)的NTC熱敏電阻阻值,T規定溫度(K),B是NTC熱敏電阻的材料常數。由以上兩個(gè)公式可將建立起由溫度到電阻值,再由電阻值到頻率的換算關(guān)系,實(shí)現頻率到溫度的轉換:

1)555電路的振蕩頻率:f=1/((R1+2RT1)C1ln2),即頻率與電阻值的關(guān)系;

2)半導體熱敏電阻NTC的特性曲線(xiàn)(溫度與電阻的關(guān)系)。在一定溫度范圍內,半導體材料的電阻RT和絕對溫度T的關(guān)系可表示為:

其中常數a不僅與半導體材料的性質(zhì)有關(guān)而且與它的尺寸均有關(guān),而常數b僅與材料的性質(zhì)有關(guān),常數a和b可通過(guò)實(shí)驗方法測得,計算出a和b后,就可以根據公式(3)計算出溫度值。因為NTC的阻值和溫度之間是指數關(guān)系,以單片機為處理器的系統計算這一方程效率很低,因此本文使用查表法與插值法計算溫度,提高了測量的效率,簡(jiǎn)化了計算的復雜性。假設測溫范圍為-10~50,可先將-10~50分為60段,每一度的氣溫對應一段頻率值。然后分別將NE555電路在-10°,-9°,-8°……48°,49°,50°時(shí)的輸出頻率實(shí)際測試出來(lái)并存儲在單片機的ROM中,建立時(shí)鐘頻率與溫度的對應表。而在每一個(gè)度的溫度段內近似認為頻率與溫度成線(xiàn)性關(guān)系在實(shí)際轉換過(guò)程中,首先根據測量的時(shí)鐘頻率確定其所在的溫度段,再按線(xiàn)性方程求出此頻率所對應的溫度值,由此實(shí)現由頻率到溫度的轉換。

2.2 等精度測頻電路的實(shí)現

等精度測頻的主要思想:利用兩個(gè)計數器在同一時(shí)間段內同時(shí)對兩個(gè)時(shí)鐘信號進(jìn)行計數,由已知時(shí)鐘的頻率和兩個(gè)計數器的計數值可得出待測信號的頻率。具體如圖4所示,首先設置時(shí)鐘閘門(mén)信號的寬度,在這段時(shí)間內,計數器1和計數器2同時(shí)對兩個(gè)時(shí)鐘信號進(jìn)行計數,計數器1所計的時(shí)鐘信號的頻率為已知的基準時(shí)鐘,其頻率為Fb。計數器2所計的時(shí)鐘信號為待測的時(shí)鐘信號,假設在等時(shí)間內計數器1計數器2計數數值分別為Nb和Nx。由兩計數器在同時(shí)間段內計數,有以下關(guān)系式:


等精度測頻功能的實(shí)現需要單片機與CPLD的協(xié)調合作實(shí)現。計數器1用單片機的定時(shí)器1實(shí)現,計數器2用CPLD來(lái)配置。單片機部分的主要作用是:負責控制外部計數器和內部定時(shí)器計數器的開(kāi)啟與關(guān)閉;外部計數器和內部定時(shí)器計數器的數據的讀??;處理以及數據輸出緩存。測量開(kāi)始,單片機首先發(fā)出清零信號,對外部CPLD計數器清零,然后將內部定時(shí)器清零,配置成外部時(shí)鐘控制方式,然后發(fā)出計數啟動(dòng)信號,隨后進(jìn)入等精度頻率測量計數模式,單片機通過(guò)查詢(xún)計數器,判斷計數時(shí)間,該計數時(shí)間必須小于外部32 bit計數器溢出時(shí)間,時(shí)間一到,單片機發(fā)出停止計數信號,查詢(xún)引腳P3.2,確認計數停止,讀回外部計數結果和內部計數器計數結果,假設分別為N1和N2,定時(shí)器計數時(shí)間間隔為T(mén)1,那么被測信號的頻率F=(N1/N2)T1,將計算出的數據輸送到頻率溫度轉化模塊等待數據轉換。

CPLD部分主要完成對被測信號的測量計數和總線(xiàn)設計。由于所用CPLD芯片內資源較少,其內部只能設置一個(gè)32位計數器。這部分在Max+p lusII環(huán)境下完成電路的硬件設計與仿真,采用原理圖輸入。硬件設計共包括4個(gè)部分:輸入、輸出、計數器和總線(xiàn)接口部分??傮w設計結構如圖5所示,其中mcu_ctrl模塊為總線(xiàn)接口模塊,frequency模塊為測量計數模塊。

3 軟件部分設計

源程序流程圖如圖6所示。

主要程序分析(頻率溫度轉換部分):

計算單片機的計數并根據基準時(shí)鐘的脈沖數目,時(shí)鐘周期由被測信號脈沖數目計算出待測信號頻率。

4 實(shí)驗結果

通過(guò)與基準溫度對比的方法對設計的溫度計精度進(jìn)行驗證。首先使用精度較高的溫度計測得實(shí)際溫度作為基準溫度,然后利用設計好的數字溫度計測量實(shí)際溫度與基準溫度進(jìn)行對比,測量結果如表1所示。通過(guò)對比測試結果,發(fā)現設計的數字溫度計測量的溫度與基準溫度相差很小,絕對誤差小于0.1℃,相對誤差小于0.3%,達到了設計的精度要求。

總之,通過(guò)利用單片機與CPLD的配合完成頻率的精確測量,實(shí)現了等精度測頻功能。利用等精度測頻功能確保了測量溫度數據處理的精確性,使設計的溫度計的精度達到實(shí)際應用的要求。在系統中等精度頻率測量模塊采用8位51單片機定時(shí)器作為基準信號的計數器,由于該基準信號頻率較低,對精度有一定影響。如果采用更高頻率基準信號,測頻精度還可提高,從而提高測量溫度的精度。



關(guān)鍵詞: ATF1504芯片 熱敏電阻 單片機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>