已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
本設計介紹一種基于Atmega16單片機的智能多路溫度控制器。該控制器采用高精度的Cu50電阻傳感器、專門的A/D轉(zhuǎn)換電路及輸出電路來實現(xiàn)對4路溫度的同時自動檢測及線性化處理,其誤差小于0.5;設定報警及跳閘閥值。軟件使用模塊化結構,并對溫度進行分段線性化處理。 關鍵詞:單片機;液晶顯示;模數(shù)轉(zhuǎn)換;嵌入式第一章 設計前提1.1設計題目和目的1.1.1設計題目試設計智能儀表:采用ATmega16單片機實現(xiàn)智能數(shù)字顯示儀表。要求8位數(shù)碼管顯示(4位顯示測量值,4位顯示設定值),4輸入按鈕(功能選擇、數(shù)碼管選擇、數(shù)字增加、數(shù)字減少),可設定上下限報警(蜂鳴器報警)。適配Cu50熱電阻,測溫范圍為0130。采用位式(兩位、三位,具有滯環(huán))控制、并用晶閘管過零驅(qū)動1000W電加熱器(電源電壓為AC220V)。1.1.2設計目的單片機綜合練習是一項綜合性的專業(yè)實踐活動,目的是讓學生將所學的基礎理論和專業(yè)知識運用到具體的工程實踐中,以培養(yǎng)學生綜合運用知識能力、實際動手能力和工程實踐能力,為此后的畢業(yè)設計打下良好的基礎。1.2設計思路1.2.1顯示及測量原理由熱電阻傳感器送來的電信號在測量橋路進行冷端自動補償后,送入放大器,一面把信號進行放大,同時把非線性信號校正為線性信號,經(jīng)線性放大信號一路轉(zhuǎn)換電路把模擬量轉(zhuǎn)換成數(shù)字信號進行數(shù)字顯示,另一路傳輸?shù)秸{(diào)節(jié)網(wǎng)絡,進行規(guī)定的比較運算,同時輸出一個需要的控制信號和進行工作狀態(tài)指示。1.2.2設計組成及方框圖Atmega16l單片機按鍵報警指示和顯示熱電阻輸入下載通信本設計智能溫度數(shù)顯表由溫度監(jiān)測、信號處理、輸出控制三部分組成。其系統(tǒng)框圖如圖1所示,它通過Cu50電阻傳感器獲取繞組溫度值,經(jīng)信號調(diào)理電路處理后直接送入控制器的A/D轉(zhuǎn)換輸入端。微控制器根據(jù)信號數(shù)據(jù)及設定的各種控制參數(shù),按照嵌入的軟件控制規(guī)律執(zhí)行計算與處理,自動顯示智能儀表數(shù)顯表可測的溫度范圍、并根據(jù)當前狀態(tài)輸出正常、設定上下線報警等第二章Protel99se畫的詳細原理圖與原理圖說明2.1 Atmega16單片機溫控儀控制核心采用Atmega16單片機, 具有16KB 系統(tǒng)內(nèi)可編程Flash的8 位微控制器 ATmega16 有如下特點:16K字節(jié)的系統(tǒng)內(nèi)可編程Flash(具有同時讀寫的能力,即RWW), 512 字節(jié)EEPROM,1K 字節(jié)SRAM,32 個通用I/O 口線,32 個通用工作寄存器,用于邊界掃描的JTAG 接口,支持片內(nèi)調(diào)試與編程,三個具有比較模式的靈活的定時器/ 計數(shù)器 (T/C),片內(nèi)/外中斷,可編程串行USART,有起始條件檢測器的通用串行接口,8路10位具有可選差分輸入級可編程增益(TQFP 封裝) 的ADC ,具有片內(nèi)振蕩器的可編程看門狗定時器,一個SPI 串行端口,以及六個可以通過軟件進行選擇的省電模式。工作于空閑模式時CPU 停止工作,而USART、兩線接口、A/D 轉(zhuǎn)換器、SRAM、T/C、SPI 端口以及中斷系統(tǒng)繼續(xù)工作;掉電模式時晶體振蕩器停止振蕩,所有功能除了中斷和硬件復位之外都停止工作;在省電模式下,異步定時器繼續(xù)運行,允許用戶保持一個時間基準,而其余功能模塊處于休眠狀態(tài); ADC 噪聲抑制模式時終止CPU 和除了異步定時器與ADC 以外所有I/O 模塊的工作,以降低ADC 轉(zhuǎn)換時的開關噪聲; Standby 模式下只有晶體或諧振振蕩器運行,其余功能模塊處于休眠狀態(tài),使得器件只消耗極少的電流,同時具有快速啟動能力;擴展Standby 模式下則允許振蕩器和異步定時器繼續(xù)工作。2.2Cu50電阻傳感器銅電阻在測溫范圍內(nèi)電阻值和溫度呈現(xiàn)線性關系,溫度系數(shù)大適用于無腐蝕介質(zhì),超過150易被氧化,銅電阻有R0=100和R0=50兩種,本次課程設計采用的是Cu50的熱電阻,所以其分度號如下表所示T()-50-40-30-20-10-0R()39.24241.40043.55545.70647.85450.000T()010203040506070R()50.00052.14454.28556.42658.56560.70462.84264.981T()8090100110120130140150R()67.12069.25971.40073.54275.68677.83379.98281.1342.3基本模塊簡介2.3.1模擬轉(zhuǎn)換電路模擬轉(zhuǎn)換控制電路用于將溫度模擬量轉(zhuǎn)換成單片機能夠識別的電信號,轉(zhuǎn)換原理如圖2所示。當溫度變化時,熱電偶的阻值會隨著溫度的變化線性變化,其分壓值與某一固定電路分壓值進行比較,其結果送入運算放大器,轉(zhuǎn)換成A/D轉(zhuǎn)換范圍內(nèi)的模擬量。AT89C52中的A/D轉(zhuǎn)換精度為8位,由于參考電壓為5v,所以必須將模擬信號轉(zhuǎn)換成05v的電壓,因此在設計此電路時,各元件的參數(shù)都按照此要求設計。同時,還要考慮其線性化,為了使軟件設計中的計算按線性處理,在硬件設計時,一定要將溫度與轉(zhuǎn)換到單片機的數(shù)字量成線性變化。得出的A/D轉(zhuǎn)換電壓與RW不成正比,不符合線性要求。如果滿足R3RW,轉(zhuǎn)換電壓就與RW近似成正比,與溫度也近似成正比關系。這樣就可以通過線性計算來求出任意一點的溫度,不過用線性化來計算這種近似線性的圖形,也會帶來微小的誤差,這些誤差可以在軟件設計中解決。2.3.2數(shù)碼管顯示數(shù)碼管顯示通過鍵盤/顯示器接口專用智能控制芯片HD7279A來實現(xiàn)。HD7279A是一種管理鍵盤和LED顯示器的專用智能控制芯片。它無需外圍電路,只需要外接少量的電阻等,就能對8位共陰極LED顯示器或64個LED發(fā)光管進行管理和驅(qū)動,同時能對多達88的鍵盤矩陣的按鍵情況進行掃描,具有自動消除鍵抖動并識別按鍵代碼的功能,從而可以提高CPU工作的效率。HD7279A和微處理器之間采用SPI串行接口方式,其接口電路和外圍電路簡單,占用口線少,加之它具有較高的性能價格比,因此,在微型控制器和智能儀表中廣泛應用。其主要特點如下: 帶有串行接口,無需外圍元件便可直接驅(qū)動LED; 各位可獨立控制譯碼/不譯碼、消隱和閃爍等屬性; 具有(循環(huán))左移/(循環(huán))右移指令; 具有段尋址指令,可方便地用來控制獨立的LED顯示管; 64鍵鍵盤控制器內(nèi)含去抖動電路。2.3.3按鍵電路4個按鍵與單片機的接線圖及個按鍵的作用如上圖所示;當單片機的引腳輸入為低電平時,表示該引腳所對應的按鍵按下,單片機實現(xiàn)相應的功能。2.3.4輸出電路輸出電路是單片機對模數(shù)轉(zhuǎn)換的數(shù)值進行計算和控制結果的體現(xiàn)2.3.5數(shù)碼顯示和指示電路SM1顯示的是熱電偶測的電加熱器的實際溫度值,SM2顯示的是人工設計的電加熱器的期望溫度值。數(shù)碼管是有HC595芯片來驅(qū)動的,HC595接在SPI通信的3個接口上。指示電路是指示按鍵的輸入狀態(tài)的。D1、D2、D3、D4與S1、S2、S3、S4一一對應,當某個按鍵按下時,單片機相應的引腳將置低電平,使該按鍵相對應的二極管發(fā)光。2.3.6報警電路當溫度超過報警限時,單片機相應管腳輸出一定頻率的電平。蜂鳴器發(fā)出響聲第三章Protle99SE畫的基本原理圖和PCB圖3.1智能儀表總原理圖第四章 智能儀表軟件軟件程序設計4.1軟件個功能模塊簡介軟件采用模塊化結構,包括1個主模塊和5個子模塊(按鈕處理子模塊、設置上限溫度及采集邊界點數(shù)字量子模塊、通信子???、故障輸出處理子模塊和顯示子模塊),主模塊完成對各個子模塊的初始化和調(diào)用故障輸出處理子模塊、顯示子模塊。而按鈕處理子模塊、設置上限溫度及采集邊界點數(shù)字量子模塊、通信模塊采用中斷方式工作,主模塊與它們通過共用一段RAM區(qū)域進行聯(lián)系。由于在單片機應用系統(tǒng)的模擬輸入信號中含有種種噪音和干擾,故本程序采用數(shù)字濾波技術濾波。除此之外,對于前面提到的線性化問題,我們采用了將0200分成四個區(qū)域,在每個區(qū)域進行線性化計算。這樣比在0200區(qū)域內(nèi)直接進行計算要精確的多,能夠達到0.1的精度。各個子模塊的功能如下:(1)按鈕處理子模塊在有鍵按下時向ATmega16申請中斷,在中斷子程序中修改預先設好的標志位。(2)設置上限溫度及采集邊界點數(shù)字量子模塊可以在長時間按鍵時修改上限溫度的界面,通過按鈕對溫度范圍為0130所對應的數(shù)字量進行采集,并將結果存到E2PROM里。 (4)故障輸出子模塊可以通過實際溫度與上限溫度的比較,來判斷現(xiàn)場是否出現(xiàn)異常情況。同時,設置標志位來判斷是否進行A/D轉(zhuǎn)換、是否進行顯示。(5)顯示子模塊將線性計算出的結果經(jīng)二進制到BCD碼的轉(zhuǎn)換送到8位LED顯示器顯示4.2C語言程序注釋#include /Atmega16單片機頭文件#include Flash unsigned char SHUMA=0xC0,0xF9,0xA4,0XB0,0x99,0x92 0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,;/定義數(shù)碼管譯碼數(shù)組定義數(shù)碼管位選數(shù)組;SPI初始化;Void SPI_MasterInit(void)DDRB|=(15)|(17);SPCR=(16)|(14) |(15)|(11)| (10);Void SPI_595_Out(unsigned char i)SPDR=i;While(!SPDR&(17);Void main(void)unsigned char saomiao=0;Unsigned char w10;DDRA=0x00;PORTA=0X00;DDRB=0XB0;PORTB=0Xff;DDRC=0XFC;PORTC=0XFF;PORTD=0X00;DDRD=0XFF;SPI_Masterlnit();While(1)data0=1234;data1=5678;W0=data0%10;W1=data0/10%10;W2=data0/100%10;W3=data0/1000%10;W4=data0%10;W5=data0/10%10;W6=data0/100%10;W1=data0/1000%10;PORTB&=(14);SPI_595_Out(weizhisaomiao);SPI_595_Out(dispwsaomiao;PORTB=|(1=8saomiao=0;while(1)uchar j=0;uint i;DDAR=0xFF;DDRB=0XFF;PORTD=0XFF;DDRD=0X00;While(1)if(PIND|0XEE)=0XEF)For(i=0;i99)j=0;While(PIND|0XEF)=0XEF);PORTB=SHUMAj/10;PORTC=SHUMAj%10;PORTA=j;while(1)PORTC=SHUMAcounter;/數(shù)碼管顯示語句:if(display_time= =1) /如果顯示標記display_time=1,則執(zhí)行顯示任務,完成一位數(shù)碼管顯示數(shù)碼管掃描顯示語句; /采用兩片74HC595掃描數(shù)碼管display_time= =0;/ADC轉(zhuǎn)換與數(shù)字濾波語句:if(sample_time= =1) /如果數(shù)據(jù)采樣標記sample_time=1,執(zhí)行ADC轉(zhuǎn)換任務TLC1549轉(zhuǎn)換、數(shù)字濾波與非線性校正程序;sample_time= =0;/ADC輸出數(shù)值判斷、報警、位式算法運算與控制量輸出:if (control_time= =1) /如果控制周期標記control_time=1,則實現(xiàn)控制算法control_time=0;if (DAC_time= =1) /如果DAC轉(zhuǎn)換標記DAC_time=1,將數(shù)據(jù)寫入DACTLC5615數(shù)據(jù)輸出語句;DAC_time=0;/定時器0中斷服務程序,用于產(chǎn)生顯示、ADC轉(zhuǎn)換與控制周期標記void Timer0() interrupt 1 static n,m,k,h;n+; m+,k+;h+;if(n= = display_time0) /display_time0為顯示周期n=0; display_time=1;if(m= = sample_time0) /sample_time0為ADC轉(zhuǎn)換周期m=0; sample_time=1;if(k= = control_time0) /control_time0為控制周期k=0; control_time=1;if(h= = DAC_time0) /DAC_time0為DAC轉(zhuǎn)換周期h=0; DAC_time=1;第五章參考文獻與總結5.1設計中遇到的問題及解決方法 1.在畫protel圖時,我們使用網(wǎng)絡名,NET走線。但是有時候因為疏忽,沒 靠在線上,從而出現(xiàn)錯誤(要兩黑點載同一點上才算是連接上)。 2.畫原理圖時,由于將一些不必要的元器件刪去后沒有及時將net網(wǎng)絡名刪去, 或者更改,致使網(wǎng)絡名成單個出現(xiàn),導致錯誤。 3.將所有的錯誤都去掉,如果有一些沒有錯誤但被打上錯誤標志的連接 線用“No Error”標示。 4.剛開始編寫的程序中,工作模式切換后,容易出現(xiàn)溫度超過調(diào)節(jié)范圍的情況。比如:通風模式的溫度調(diào)節(jié)范圍是1432度,而制熱模式下的溫度范圍是1430度。當工作模式從通風模式轉(zhuǎn)換到制熱模式下的時候,若通風模式的溫度是31或32度,切換到制熱模式后它的溫度仍然是31或32度,這就超出了制熱模式的溫度調(diào)節(jié)范圍,出現(xiàn)bug。 后來,我們在切換模式時做了一些改進:當工作模式切換時,程序先判斷當前的溫度是否超出溫度調(diào)節(jié)范圍,若超出,將其設置為溫度調(diào)節(jié)范圍內(nèi)的溫度。 5.在工作模式的選擇上,原本只用了work_mode來表示四種工作模式,后來發(fā)現(xiàn)若只有work_mode,則有不能選擇制冷和通風模式的可能。比如:使用者選擇的模式為自動,空調(diào)會根據(jù)當前的實際溫度選擇制冷、通風或制熱模式。假設空調(diào)自動選擇的是通風模式(模式2),那么無論使用者怎么按模式選擇鍵,它都將跳過制冷模式(模式1),從而無法選擇制冷模式。 我們采取的辦法是增加變量work_mode_fact,意為在自動模式下實際執(zhí)行的工作模式。方便工作在在自
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024成都裝修合同
- 央視《中國詩詞大會》里的11首經(jīng)典古詩詞賞析
- 2025年春季學期學校德育工作計劃
- 2025年度海洋工程鉆井平臺安全協(xié)議3篇
- 2024影院裝修工程合同書
- 《煤礦電氣系統(tǒng)的安全檢查》培訓課件2025
- 2024年魚塘場地租賃及漁業(yè)資源保護合作協(xié)議3篇
- 2024年高端住宅區(qū)聯(lián)合開發(fā)合同3篇
- 《名人傳記史玉柱》課件
- 2024房地產(chǎn)開發(fā)商與承建商建設合同
- 《中外資產(chǎn)評估準則》課件第5章 美國評估準則
- 《安全基礎知識》word版
- 微視頻評分標準
- 運籌學(課件)
- 《軸系結構設計》ppt課件
- 應用化學專業(yè)英語unit.ppt
- 精益制造快速切換作業(yè)指導書模板
- 膠囊劑生產(chǎn)工藝流程圖
- 小學期末班級頒獎典禮動態(tài)PPT模板
- 制藥廠安全事故應急救援預案匯編
- 上市公司信息披露制度的跨國比較及借鑒
評論
0/150
提交評論