版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 《微型計算機控制系統(tǒng)》</p><p><b> 課程設(shè)計報告</b></p><p> 課題:電阻加熱溫度控制系統(tǒng)-單片機控制 </p><p> 專業(yè)班級: 自動化(2)班 </p><p> 姓 名:
2、 </p><p> 學(xué) 號: </p><p> 指導(dǎo)老師: </p><p> 2013年12月 27日</p><p><b> 目錄</b></p&g
3、t;<p><b> 課題背景I</b></p><p> Project groundII</p><p> 第1章 控制任務(wù)及要求- 1 -</p><p> 1.1、設(shè)計任務(wù)及要求- 1 -</p><p> 1.2、工藝要求- 1 -</p><p>
4、 1.3、要求實現(xiàn)的基本功能:- 2 -</p><p> 1.4、對象分析- 2 -</p><p> 1.5、系統(tǒng)功能設(shè)計- 2 -</p><p> 第2章 確定控制算法- 3 -</p><p> 3.1、控制算法:- 3 -</p><p> 3.2、計算過程:- 4 -</p&
5、gt;<p> 第3章 硬件的設(shè)計- 5 -</p><p> 2.1、微機選型- 5 -</p><p> 2.2、設(shè)計支持計算機工作的外圍電路- 5 -</p><p> 2.3、設(shè)計輸入輸出通道- 7 -</p><p> 2.4、溫度傳感器- 9 -</p><p> 2.
6、5、元器件的選擇- 10 -</p><p> 第4章 軟件設(shè)計- 11 -</p><p> 4.1系統(tǒng)主程序框圖- 11 -</p><p> 4.2、A/D轉(zhuǎn)換子程序流程圖- 12 -</p><p> 4.3圖LED顯示流程- 12 -</p><p> 4.4、數(shù)字控制算法子程序流程圖
7、- 14 -</p><p> 第5章 完整的系統(tǒng)電路圖- 15 -</p><p> 第6章 抗干擾措施- 16 -</p><p> 6.1、硬件方面抗干擾措施主要包括:- 16 -</p><p> 6.2、軟件方面的抗干擾措施有:- 16 -</p><p> 第7章 系統(tǒng)調(diào)試- 17
8、 -</p><p> 第8章 課程設(shè)計體會- 18 -</p><p> 第9章 參考文獻- 19 -</p><p> 附錄:程序代碼- 20 -</p><p> 電阻加熱爐溫度控制系統(tǒng)設(shè)計</p><p><b> 課題背景</b></p><p&g
9、t; 隨著社會的發(fā)展,自動控制越來越成為人們關(guān)注的焦點,自動調(diào)節(jié)電阻爐溫度系統(tǒng)也備受關(guān)注。其中微機及其應(yīng)用已經(jīng)成為高、新科學(xué)技術(shù)的重要內(nèi)容和標(biāo)志之一,它在國民經(jīng)濟的各個領(lǐng)域正在發(fā)揮著引人注目的作用。微機控制的電阻爐溫度控制系統(tǒng)實際上就是一個智能控制系統(tǒng),是一種能耗相對來說比較低的溫度控制系統(tǒng)。一直以來,人們采用了各種方法來進行溫度控制,都沒有取得很好的控制效果。起先由于電阻爐的發(fā)熱體為電阻絲,傳統(tǒng)方法大多采用儀表測量溫度,并通過控制交
10、流接觸器的通斷時間比例來控制加熱功率。由于模擬儀表本身的測量精度差,加上交流接觸器的壽命短,通斷比例低,故溫度控制精度低,且無法實現(xiàn)按程序設(shè)定的升溫曲線升溫和故障自診斷功能,因此要對傳統(tǒng)的溫度控制方法進行改造。如今,隨著以微機為核心的溫度控制技術(shù)不斷發(fā)展,用微機取代常規(guī)控制已成必然,因為它確保了生產(chǎn)過程的正常進行,提高了產(chǎn)品的數(shù)量與質(zhì)量,減輕了工人的勞動強度以及節(jié)約了能源,并且能夠使加熱對象的溫度按照某種指定規(guī)律變化。而且微型計算機在智
11、能溫度測量和控制電器中的控制作用是一種智能行為,所以,它在能量消耗上是比較少的,和普通儀表溫度測量相比,智能溫度測量與控制電器是</p><p> 關(guān)鍵詞:微機;電阻爐;溫度;控制</p><p> Resistance Furnace Temperature Control System</p><p> Project Background Project
12、 Backgroundproject background</p><p> With the social development, control has increasingly become the focus of attention, automatically adjust temperature resistance furnace system is also of concern.One c
13、omputer and its applications have become a high and new science and technology, one of the important contents and sign it in all areas of the national economy is playing a dramatic role.Computer-controlled resistance fur
14、nace temperature control system is actually an intelligent control system, is a relatively low energy consumptio</p><p> 第1章 總體方案設(shè)計</p><p> 1.1、設(shè)計任務(wù)及要求</p><p> 電阻加熱爐用于合金鋼產(chǎn)品熱力特性實
15、驗,電加熱爐用電爐絲提供功率,使其在預(yù)定的時間內(nèi)將爐內(nèi)溫度穩(wěn)定到給定的溫度值。本控制對象電阻加熱爐功率為8KW,由220V交流電源供電,采用雙向可控硅進行控制。</p><p> 系統(tǒng)模型: </p><p><b> 1.2、工藝要求</b></p><p> 按照規(guī)定的曲線進行升溫和降溫,溫度控制范圍為50~3
16、50℃,升溫和降溫階段的溫度控制精度為±5℃,保溫階段溫度控制精度為±2℃。</p><p> 1.3、要求實現(xiàn)的基本功能:</p><p> 微機自動調(diào)節(jié):正常工況下,系統(tǒng)投入自動。</p><p> 模擬手動操作:當(dāng)系統(tǒng)發(fā)生異常,投入手動控制。</p><p> 微機監(jiān)控功能:顯示當(dāng)前被控量的設(shè)定值、實際值,控
17、制量的輸出值,參數(shù)報警時有燈光報警。</p><p><b> 1.4、對象分析</b></p><p> 本系統(tǒng)中要求從50℃開始自動控制加熱爐的溫度,使溫度線性上升,十分鐘升至350℃,到達350℃進入保溫狀態(tài),保溫二十分鐘,然后降溫,十分鐘降至50℃。在保溫階段,一旦溫度高于352或低于348則要求報警,升溫和降溫階段也要進行控制,使過程按要求的斜率變化。微
18、型計算機選單片機8031,ADC0809模數(shù)轉(zhuǎn)換芯片為模擬量輸入,DAC0832數(shù)模轉(zhuǎn)換芯片為模擬量輸出,溫度傳感器選鉑電阻,運算放大器和可控硅作為功率放大,電阻爐為被控對象,組成電阻爐爐溫控制系統(tǒng),另外,系統(tǒng)還配有數(shù)字顯示,以便顯示和記錄生產(chǎn)過程中的溫度和輸出值。</p><p> 1.5、系統(tǒng)功能設(shè)計</p><p> 計算機定時對爐溫進行測量和控制,爐溫由鉑電阻溫度器測量,信號經(jīng)
19、放大送到模數(shù)轉(zhuǎn)換芯片,變換成相應(yīng)的數(shù)字量再送到計算機中進行判斷和運算,得到應(yīng)有的電功率數(shù),經(jīng)過數(shù)模轉(zhuǎn)換芯片轉(zhuǎn)換成模擬量信號,供給可控硅功率調(diào)節(jié)器進行調(diào)節(jié),使其達到爐溫變化曲線的要求。</p><p> 第2章 確定控制算法</p><p><b> 3.1、控制算法:</b></p><p> 電阻加熱爐溫度控制系統(tǒng)框圖:</p&
20、gt;<p> 整個閉環(huán)系統(tǒng)可用一個帶純滯后的一階慣性環(huán)節(jié)來近似,所以其控制算法采用大林算法。電阻加熱爐溫度控制系統(tǒng)模型為 </p><p> 其廣義的傳遞函數(shù)為:</p><p> 大林算法的設(shè)計目標(biāo)是設(shè)計一個合適的數(shù)字控制器,使整個閉環(huán)系統(tǒng)的傳遞函數(shù)相當(dāng)于一個帶有純滯后的一階慣性環(huán)節(jié),即:</p><p> 通常認(rèn)為對象與
21、一個零階保持器相串聯(lián), 相對應(yīng)的整個閉環(huán)系統(tǒng)的脈沖傳遞函數(shù)是:</p><p><b> 3.2、計算過程:</b></p><p> 連同零階保持器在內(nèi)的系統(tǒng)廣義被控對象的傳遞函數(shù)</p><p><b> 系統(tǒng)閉環(huán)傳遞函數(shù)</b></p><p><b> 數(shù)字控制器:<
22、;/b></p><p> 消除振鈴現(xiàn)象后的數(shù)字控制器:</p><p> 將上式離散化:U(z)-U(z)=1.279E(z)-1.226E(z)</p><p> U(K)-U(K-1)=1.279E(K)-1.226E(K-1)</p><p> 最終得:U(K)=U(K-1)+1.279E(K)-1.226E(K-1)&
23、lt;/p><p> 第3章 硬件的設(shè)計</p><p><b> 2.1、微機選型</b></p><p> 計算機選型MCS-51系列中的8031,是Inter公司生產(chǎn)的,除無ROM外,其余和MCS-51相同。系統(tǒng)總線為PC總線。</p><p> 2.2、設(shè)計支持計算機工作的外圍電路</p>&
24、lt;p> ADC0809是帶有8位A/D轉(zhuǎn)換器、8路多路開關(guān)以及微處理機兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉(zhuǎn)換器,可以和單片機直接接口。</p><p> ADC0809的內(nèi)部結(jié)構(gòu)圖如圖2-1所示:</p><p> 圖2-1 ADC0809的內(nèi)部結(jié)構(gòu)圖</p><p> 由圖2-4可知,ADC0809由一個8路模擬開關(guān)、一個地址鎖
25、存與譯碼器、一個A/D轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉(zhuǎn)換器進行轉(zhuǎn)換。三態(tài)輸j出鎖器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。 ADC0809對輸入模擬量要求:信號單極性,電壓范圍是0-5V,若信號太小,必須進行放大,輸入的模擬量在轉(zhuǎn)換過程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。</p&
26、gt;<p><b> 矩陣鍵盤技術(shù):</b></p><p><b> 溫度輸出顯示技術(shù):</b></p><p> LED靜態(tài)顯示接口技術(shù),所謂靜態(tài)顯示,即CPU輸出顯示值后,由硬件保存輸出值,保持顯示結(jié)果.</p><p> 報警電路設(shè)計:正常運行時綠燈亮,在保溫階段爐內(nèi)溫度超出系統(tǒng)允差范圍,就
27、要進行報警。報警時報警燈亮,電笛響,同時發(fā)送中斷信號至CPU進行處理。</p><p> 2.3、設(shè)計輸入輸出通道</p><p> 輸入通道:因為所控的實際溫度在50 ~ 350℃左右,即(350-50)=300所以選用8位A/D轉(zhuǎn)換器,其分辨率約為1.5℃/字,再加放大器偏置措施實現(xiàn)。(通過調(diào)整放大器的零點來實現(xiàn)偏置)這里采用一般中速芯片ADC0809。ADC0809是帶有8位A/
28、D轉(zhuǎn)換器,8路多路開關(guān)以及微型計算機兼容的控制邏輯的CMOS組件,其轉(zhuǎn)換方法為逐次逼近型。8路的模擬開關(guān)由地址鎖存器和譯碼器控制,可以在8個通道中任意訪問一個通道的模擬信號。</p><p> 輸出通道:據(jù)其實際情況,D/A轉(zhuǎn)換器的位數(shù)可低于A/D轉(zhuǎn)換器的位數(shù),因為一般控制系統(tǒng)對輸出通道分辨率的要求比輸入通道的低,所以這里采用常用的DAC0832芯片</p><p> DAC0832是
29、8位D/A轉(zhuǎn)換器,與微處理器完全兼容。期間采用先進的CMOS工藝,因此功耗低,輸出漏電流誤差較小。因DAC0832電流輸出型D/A轉(zhuǎn)換芯片,為了取得電壓輸出,需在電流輸出端接運算放大器,Rf為為運算放大器的反饋電阻端。</p><p><b> 2.4、溫度傳感器</b></p><p> 溫度傳感器的作用是將溫度經(jīng)過熱敏電阻Rt轉(zhuǎn)換為電壓信號。在本課題中溫度范圍
30、的計算原理:首先把A/D轉(zhuǎn)換中電位器旋鈕順時針旋到底,即模擬信號的輸入不衰減,選取兩個溫度狀態(tài)T1、T2,分別測量出其模擬輸出電壓V1、V2;根據(jù)0809的輸入范圍在0到5伏,即可計算出溫度極限。0伏時對應(yīng)的溫度TL:T1-(V1-0)(T2-T1)/(V2-V1)。</p><p> 5伏時對應(yīng)的溫度TH: T1-(V1-5)(T2-T1)/(V2-V1)</p><p> 本實驗中
31、近似計算TH為350攝氏度,TL為50攝氏度。</p><p> 程序溫度的計算原理:首先用溫度范圍除以0到256(即每個十六進制數(shù)的溫度增長率),然后乘以模擬轉(zhuǎn)換的數(shù)字量,即得到升高的溫度,在和最低溫度相加,就可以得到實際的溫度值。其公式為:TL+AX(TH-TL)/256</p><p> TL:顯示的最低溫度</p><p> TH:顯示的最高溫度<
32、;/p><p> AX:模擬電壓所轉(zhuǎn)換的數(shù)字量</p><p> 2.5、元器件的選擇</p><p> 傳感器的選擇:鉑銠10—鉑熱電偶,S型,正極性,量程0—1300C,使用溫度小于等于600C,允差+1.5C。</p><p> 執(zhí)行元件的選擇:電阻加熱爐采用晶閘管(SCR)來做規(guī)律控制,結(jié)合電阻爐的具體要求,為了減少爐溫的紋波,對
33、輸出通道采用較高的分辨率的方案,因此采用移相觸發(fā)方式,并且由模擬觸發(fā)器實現(xiàn)移相觸發(fā)。</p><p> 變送器的選擇:因為系統(tǒng)要求有偏置,又需要對熱電偶進行冷端補償,所以采用常規(guī)的DDZ系列溫度變送器。</p><p> 控制元件:采用雙向可控硅進行控制,其功能相當(dāng)于兩個單向可控硅反向連接,具有雙向?qū)üδ?,其通斷狀態(tài)有控制極G決定。在控制極加上脈沖可使其正向或反向?qū)ā?lt;/p&
34、gt;<p><b> 第4章 軟件設(shè)計</b></p><p> 4.1系統(tǒng)主程序框圖</p><p> 4.2、A/D轉(zhuǎn)換子程序流程圖</p><p> 4.3圖LED顯示流程</p><p><b> 指向顯示緩沖區(qū)模型</b></p><p>
35、; 4.4、數(shù)字控制算法子程序流程圖</p><p> 第5章 完整的系統(tǒng)電路圖</p><p> 第6章 抗干擾措施</p><p> 6.1、硬件方面抗干擾措施主要包括:</p><p> ?。?)在系統(tǒng)弱電部分電源人口處對地跨接一個220uF左右的電解電容和一個0.1uF的瓷片電容。在系統(tǒng)內(nèi)部各芯片的電源端對地跨接一個0.0
36、1uF的瓷片電容,濾去電源中高低次諧波成份。(2)采用屏蔽和接地技術(shù)。使干擾源產(chǎn)生的電磁干擾降至最小。(3)合理設(shè)計PCB印制電路,精心選擇、安裝元器件,充分利用看門狗定時器功能,提高硬件系統(tǒng)的抗干擾能力。</p><p> 6.2、軟件方面的抗干擾措施有:</p><p> ?。?)采取“指令冗余”措施,在一些對程序流向起關(guān)鍵作用的指令(如RET\AJMP等)或某些對系統(tǒng)工作狀態(tài)起至關(guān)
37、重要的指令(如SETB EA等)前插入兩條“NOP”指令,保證程序正確流向,防止程序“跑飛”。(2)采用“軟件陷阱”技術(shù),在末使用的中斷向量區(qū)安排“軟件陷阱”,以及合理地分區(qū)存放各程序模塊,在相鄰兩個程序模塊的存儲空間中空出適當(dāng)?shù)拇鎯卧⒃谶@些單元中填充OFFH,或在各種數(shù)據(jù)表格、散轉(zhuǎn)表格的最后安排“軟件陷阱”。通過這些“軟件陷阱”實時捕捉程序,防止程序跑飛。(3)利用軟件WATCHDOG,監(jiān)控程序運行。(4)利用平均濾波法求取平均
38、值作為有效溫度值,防止脈沖干擾測試信號,提高系統(tǒng)運行的穩(wěn)定性。</p><p><b> 第7章 系統(tǒng)調(diào)試</b></p><p> 在設(shè)計完成后進行調(diào)試,根據(jù)設(shè)計邏輯圖制作好實驗樣機,就可以進入硬件調(diào)試,調(diào)試的主要任務(wù)是排除樣機的故障,其中包括設(shè)計錯誤和工藝性故障,然后在進行軟件的調(diào)試用微型機對MCS51系列單片機程序進行交叉匯編。在硬件,軟件單獨調(diào)試后,即可
39、進入硬件、軟件聯(lián)合調(diào)試階段,找出硬件、軟件之間不相匹配的地方,反復(fù)修改和調(diào)試,直到符合設(shè)計要求。</p><p> 第8章 課程設(shè)計體會</p><p> 在設(shè)計過程中,首先要熟悉系統(tǒng)的工藝,進行對象的分析,按照要求確定方案。通過這次的設(shè)計,我實現(xiàn)了溫度控制的硬件連接,了解了芯片的選用,模塊的建立,遇到這樣那樣的問題,通過上網(wǎng)查詢、翻閱課本和同學(xué)們討論逐一解決。硬件設(shè)計我分為了以下模
40、塊:顯示模塊、A/D轉(zhuǎn)換模塊、鍵盤模塊、溫度控制模塊和溫度傳感器模塊。然后設(shè)計軟件,編寫程序調(diào)試硬件電路各個模塊的功能。最后對整個系統(tǒng)聯(lián)調(diào),實現(xiàn)設(shè)計要求。</p><p><b> 第9章 參考文獻</b></p><p> ①潘新民 《微型計算機控制技術(shù)》 高等教育出版社 2001.7</p><p> ?、谛炜栖?《
41、傳感器與檢測技術(shù)》 電子工業(yè)出版社 2004.9</p><p> ③余錫存 《單片機原理及接口技術(shù)》西安電子科技大學(xué)出版社 2000.7</p><p> ?、苊缧忝?《計算機控制系統(tǒng)及應(yīng)用》 北京科學(xué)出版社 1995.4</p><p> ?、菅x 《微機控制系統(tǒng)及應(yīng)用》 西安交通大學(xué)出版社 20
42、03.2</p><p> ?、撄S勝軍 《微型計算機控制應(yīng)用實例集》 清華大學(xué)出版社 1987.4</p><p> ?、邚埛?《微機原理與接口技術(shù)》 清華大學(xué)出版社 2003.10</p><p> ?、嘀煸滦?《單片機基礎(chǔ)(修訂版) 》 北京航空航天大學(xué)出版社2001.7</p><p> ?、?/p>
43、黃勝軍 《微型計算機控制應(yīng)用實例集(二) 》 清華大學(xué)出版社 1993.10</p><p><b> 附錄:程序代碼</b></p><p><b> ORG 0000H</b></p><p><b> AJMP MAIN</b></p><p><b>
44、 ORG 0003H</b></p><p><b> AJMP KEYS</b></p><p><b> ORG 000BH</b></p><p><b> AJMP PIT0</b></p><p><b> ORG 001BH</
45、b></p><p> AJMP PIT1 ;中斷入口及優(yōu)先級</p><p> MAIN: MOV SP,#00H</p><p> CLR 5FH :清上下限越限標(biāo)志 </p><p> MOV A,#00H</p><p&
46、gt; MOV R7,#09H</p><p> MOV R0,#28H</p><p> LP1:MOV @R0,A</p><p> INC R0 </p><p> DJNZ R7,LP1</p><p> MOV R7,#06H</p><p> MO
47、V R0,#39H</p><p> LP2:MOV @R0,A</p><p><b> INC R0</b></p><p> DJNZ R7,LP2</p><p> MOV R7,#06H</p><p> MOV RO,#50H</p>
48、<p> LP3:MOV @R0,A</p><p><b> INC R0</b></p><p> DINZ R7,LP3 ;清顯示緩沖區(qū)</p><p> MOV 33H,#00H</p><p> MOV 34H,#00H ;賦
49、KP高低字節(jié)</p><p> MOV 35H,#00H</p><p> MOV 36H,#00H ; 賦KI高低字節(jié)</p><p> MOV 37H,#00H </p><p> MOV 38H,#00H ; 賦KD高低字節(jié)</p>&l
50、t;p> MOV 42H,#00H</p><p> MOV 43H,#00H ;賦K高低字節(jié)</p><p> MOV TMOD,#56H ;T0方式2,T1方式1計數(shù)</p><p> MOV TLO,#06H</p><p> MOV THO,#06H &l
51、t;/p><p> MOV 25H,#163H ;設(shè)定值默認(rèn)值350</p><p> SETB TR0 ;鍵盤高優(yōu)先級</p><p><b> SETB ET0</b></p><p><b> SETBEX0</b></
52、p><p> SETB EA ;開鍵盤T0。T1中斷</p><p> LOOP:MOV R0,#56H</p><p> MOV R1,#55H</p><p> LCALLSCACOV ;標(biāo)度轉(zhuǎn)化</p><p> MOV
53、R0,#53H</p><p><b> LCALLDIR</b></p><p><b> NOP</b></p><p> LCALLDLY10MS</p><p><b> NOP</b></p><p> LCALLDLY10MS
54、</p><p> AJMP LOOP ;等中斷</p><p><b> 鍵盤子程序</b></p><p> KEYS:CLR EX0</p><p><b> CLR EA</b></p><p> PUSH PSW&
55、lt;/p><p> PUSH ACC ;關(guān)中斷</p><p> LCALLDLY10MS ;消抖</p><p> CC: JB P3.2 AA</p><p> SETB 5DH ;置“顯示設(shè)定值溫度值標(biāo)志”
56、</p><p> MOV A,25H ;取運算位的值</p><p> MOV B,#10H ;BCD碼轉(zhuǎn)化</p><p><b> DIV A B</b></p><p> MOV 52H,A</p><p><b>
57、 MOV A, B</b></p><p> MOV 51H, A</p><p> MOV R0,#50H</p><p> LCALL DIR ;顯示設(shè)定溫度</p><p><b> NOP</b></p><p> LCAL
58、LDLY10MS</p><p><b> NOP</b></p><p> LCALL DLY10MS</p><p> JB P1.7 ,BB</p><p> MOV R1,#25H</p><p> LCALL DAAD1</p><p>&
59、lt;b> NOP</b></p><p> LCALL DLY10MS</p><p><b> AJMP CC</b></p><p> BB: JB P1.6 CC</p><p> MOV R1,#25H</p><p> LCALL D
60、EEC1</p><p><b> NOP</b></p><p> LCALL DLY10MS</p><p><b> AJMP CC</b></p><p> AA: POP ACC</p><p><b> POP PSW&l
61、t;/b></p><p><b> SETB EX0</b></p><p> SETB EA ;出棧</p><p><b> RETI</b></p><p><b> 顯示子程序</b></p><
62、;p> DIR: MOV SCON ,#00H ;置串行口移位寄存器狀態(tài)</p><p> SETB P1.4 ;開顯示</p><p> JB 5DH,DL1 ;顯示設(shè)定溫度</p><p> DL2: MOV
63、DPTR,#SEGT</p><p> DL0: MOV A,@R0</p><p> MOVC A,@A+DPTR</p><p> MOV SBUF ,A</p><p> LOOP1: JNB TI, LOOP1</p><p><b> CLR TI</b>
64、</p><p><b> INC R0</b></p><p> MOV A,@R0</p><p> MOVC A,@A+DPTR</p><p> ANL A, #7FH :使數(shù)帶小數(shù)點</p><p> MOV SBUF ,A</p&
65、gt;<p> LOOP2: JNB TI,LOOP2</p><p><b> CLR TI</b></p><p><b> INC R0</b></p><p> MOV A,@R0</p><p> MOVC A,@A+DPTR</p>&
66、lt;p> MOV SBUF,A</p><p> LOOP3: JNB TI,LOOP3</p><p><b> CLR TI</b></p><p><b> CLR P1.4</b></p><p><b> CLR 5DH</b></
67、p><p><b> RET</b></p><p> DL1: MOV 50H,#0AH ;小數(shù)位黑屏</p><p><b> AJMP DL2</b></p><p> SEGT: DB 0C0H ,0F9H,0A4H,0B0H,99H,92H,8
68、2H,0F8H,80H,90H,0FFH</p><p><b> 加一子程序</b></p><p> DAAD1: MOV A,#00H</p><p> ORL A,@R1</p><p> ADD A,#01H</p><p> CJNE A,#30H,DAAD2
69、 ;超過48度了嗎?</p><p> DAAD3: MOV @R1,A</p><p> DAA: RET</p><p> DAAD2: JC DAAD3</p><p> MOV @R1,#15EH ;超過48則轉(zhuǎn)回到355</p><p><
70、;b> AJMP DAA</b></p><p><b> 減一子程序</b></p><p> DEEC1:MOV A,@R1</p><p><b> DEC A</b></p><p> CJNE A,#15EH,DEEC2 ;低于355
71、度了嗎?</p><p> DEEC3:MOV @R1,A </p><p> DEE : RET</p><p> DEEC2: JNC DEEC3</p><p> MOV @R1,#30H ;低于355則轉(zhuǎn)回到48</p><p><b> AJMPD
72、EE </b></p><p><b> T0中斷子程序</b></p><p> PTT0: CLR EA</p><p> PUSH ACC</p><p> PUSH PSW</p><p> PUAH DPL</p><p>&
73、lt;b> PUSH DPH</b></p><p> SETB EA ;壓棧后開中斷響應(yīng)鍵盤</p><p> PPP: LCALLSMAP :采樣數(shù)據(jù)</p><p> LCALL FILTER ;數(shù)字濾波
74、</p><p> MOV A,2AH ;取采樣值</p><p> CJNE A,#07H,AAA ;下限48比較</p><p><b> AJMP BBB</b></p><p> AAA: JC CCC
75、 ;小于48度轉(zhuǎn)</p><p> CJNEA,#0FEH ,DDD ;上限355比較</p><p> AJMP BBB ;轉(zhuǎn)至48~355正常范圍處理</p><p> DDD: JC BBB</p><p> CLR P1.2
76、 ;大于355黃燈亮</p><p><b> SETB 5EH</b></p><p> CLR P1.1 ;置標(biāo)志 啟動風(fēng)扇</p><p><b> AJMP PPP</b></p><p> CC
77、C: CLR P1.3 ;小于48紅燈亮</p><p><b> SETB 5FH</b></p><p> BBB: CLR P1.0 ;置標(biāo)志啟動電爐</p><p><b> AJMPPPP</b></p
78、><p> SETB P1.0</p><p> SETB P1.1</p><p> SETB P1.2</p><p> SETB P1.3</p><p><b> CLR 5EH</b></p><p> CLR 5FH
79、 ;50~350之間正常</p><p> LCALL PID</p><p> JNB 20H,EEF ;設(shè)定溫度小于實際值轉(zhuǎn)到風(fēng)扇</p><p> MOV A,29H</p><p><b> LCALLFFF</b></p><p
80、><b> CLR P1.0</b></p><p> LOOP10: MOV R0,#56H ;存放相乘結(jié)果的首址</p><p> MOV R1,#55H ;賦顯示緩沖區(qū)最高位地址</p><p> LCALL SCACOV ;標(biāo)度轉(zhuǎn)化<
81、;/p><p> MOV R0,#53H ;賦顯示首址</p><p><b> CLR DIR</b></p><p> JB D5H,LOOP10 ;等待T1中斷</p><p><b> CLR EA</b></p>&l
82、t;p><b> POP DPH</b></p><p><b> POP DPL</b></p><p><b> POP PSW</b></p><p><b> SETB EA</b></p><p><b>
83、 POP ACC</b></p><p><b> RETI</b></p><p> EEE: MOV A,28H ;風(fēng)扇處理</p><p> LCALL FFF</p><p><b> CLR P1.1</b></p>
84、<p> AJMP LOOP10</p><p> FFF: CRL A ;根據(jù)PID結(jié)果計算T1初值 </p><p><b> INC A</b></p><p><b> MOV TL1,A</b></p><p> MOV TH1,
85、#0FFH</p><p><b> SETB PI1</b></p><p><b> SETB TR1</b></p><p><b> SETB ET1</b></p><p><b> RET</b></p><p&
86、gt;<b> 標(biāo)度轉(zhuǎn)化 </b></p><p> SCACOV :PROC NEAR</p><p><b> MOV DX,0</b></p><p> MOV DATA1,#258H</p><p> MOV DATA2,#708H</p><p&
87、gt; MOV DATA3,#960H</p><p> PROC NEAR</p><p><b> MOV DX,0</b></p><p> MOV AX,DATAP ;取采樣時間</p><p> CMP AX,DATA3 ;時間大于2400?</
88、p><p> JAE Q3DOR</p><p> CMP AX,DATA2</p><p> JAE Q3-Q2 ; 1800<時間<2400</p><p> CMP AX,DATA3</p><p> JAE Q2-Q1
89、; 600<時間<1800</p><p> Q0: MOV BX,0.8H ;<600S Q=50+t/2</p><p><b> MUL BX</b></p><p> ADC DX,0</p><p><b> JMP DONE&
90、lt;/b></p><p> Q2-Q1: MOV AX,#15EH ;Q=350</p><p> Q3-Q2: SUB AX,DATA2 ;Q=350-(t-1800)/2</p><p> MOV BX,0.8H</p><p><b>
91、; MUL BX</b></p><p> MOV AX,#15EH</p><p> SUB AX,BX</p><p> MOV @R1,A</p><p> PP: RET</p><p><b> 采樣子程序</b></p>&
92、lt;p> SWAP: MOV R0,#20H</p><p> MOV R1,#03H</p><p> SAW1: MOV DPTR,#7FF8H</p><p> MOVX @DPTR A ;A/D轉(zhuǎn)化</p><p> MOV R2,#20H</p>
93、;<p> DLY: DJNZ R2,DLY ;延時</p><p> HERE: JB P3.3 ,HERE</p><p> MOV DPTR,#7FF8H</p><p> MOVX A,@DPTR ;讀轉(zhuǎn)化結(jié)果</p><p>
94、MOV @R0,A</p><p><b> INC R0</b></p><p> DJNZ R1,SAM1</p><p><b> RET</b></p><p><b> 數(shù)字濾波</b></p><p> FILTER: M
95、OV A, 20H</p><p> CJNE A,2DH CMP1</p><p> AJMP CMP2</p><p> CMP1: JNC CMP2</p><p> XCH A,2DH</p><p> XCH A,2CH</p><p> CMP2:
96、 MOV A,2DH</p><p> CJNE A,22EH,CMP3</p><p> MOV 2AH,A</p><p><b> AJMP RR</b></p><p> CMP3: JC CMP4</p><p> MOV 2AH,A</p&g
97、t;<p><b> AJMP RR</b></p><p> CMP4: MOV A,2EH</p><p> CJNE A,2CH,CMP5</p><p> MOV 2AH ,A</p><p><b> AJMP RR</b></p>
98、<p> CMP5: JC CMP6</p><p> XCH A,2CH</p><p> CMP6: MOV 2AH,A</p><p> RR: RET</p><p><b> T1中斷</b></p><p> PIT1: CLR
99、00H</p><p> JB 20H, GGG</p><p> SETB P1.0 ;關(guān)閉電爐</p><p> GG: CLR PT1</p><p><b> RETI</b></p><p> GGG:SETB P1.1
100、 ;關(guān)閉風(fēng)扇</p><p><b> CLR 20H </b></p><p><b> AJMP GG</b></p><p><b> 延時10MS子程序</b></p><p> DLY10MS: MOV R7,#0A0
101、H</p><p> DLOO: MOV R6,#0FFH</p><p> DL11: DJNZ R6,DL11</p><p> DJNZ R7,DL00</p><p><b> RET</b></p><p> 數(shù)字PID算法子程序</p><
102、;p> PID: MOV R5,#00H</p><p> MOV R4,2DH ;取NX值</p><p> MOV R3,#00H</p><p> MOV R2,#32H ;取50</p><p> LCALL CPL1&
103、lt;/p><p> LCALL DSUM ;求(NX-32H)值</p><p> MOV R0,#5AH ;賦乘法算法運算暫存單元地址首址</p><p> MOV R5,#05H</p><p> MOV R4,#1CH ;賦參數(shù)</p>
104、;<p> LCALL MULT ;調(diào)無符號數(shù)乘法</p><p> MOV 31H ,5BH</p><p> MOV 32H ,5AH ;存放結(jié)果有效值</p><p> MOV R5,31H</p><p> MOV R4,32H
105、 ;取雙字節(jié)UR(設(shè)定)</p><p> MOV R3,2AH</p><p> MOV R2,#00H ;取雙字節(jié)實測值</p><p> ACALL CPL1 ;取U(K)補碼</p><p> ACALL DSUM ;計算E(K)</p
106、><p> MOV 39H, R7</p><p> MOV 3AH,R6 ;存E(K)</p><p> MOV R5,35H </p><p> MOV R4,36H ;取KI參數(shù)</p><p> MOV R0,#4AH</p
107、><p> ACALLMULT1 ;計算PI=KI*E(K)</p><p> MOV R2,39H</p><p> MOV R4,3AH ;取E(K)</p><p> MOV R3,3BH</p><p> MOV R2,3CH
108、 ;取E(K-1)</p><p> MOV R5,33H</p><p> MOV R4,34H ;取KP參數(shù)</p><p> MOV R0,#46H</p><p> ACALL MULT1 ;KP*[ E(K)- E(K-1)]</
109、p><p> MOV R5,49H</p><p> MOV R4,48H</p><p> MOV R3,4DH</p><p> MOV R2,4CH</p><p> LCALL DSUM ;KP*[ E(K)- E(K-1)]+ KI*E(K)</p&
110、gt;<p> MOV 4AH, R7</p><p> MOV 4BH,R6 ;保存上式之和</p><p> MOV R5,39H</p><p> MOV 3CH,3AH ;存E(K)到E(K-1)</p><p> MOV
111、A,31H ;取設(shè)定值</p><p> CJNE A,2AH,AA2 ;比較設(shè)定值與實測值</p><p> AA3: CLR 20H ;清電爐標(biāo)志</p><p> AA1: RET</p><p> AA2
112、 JNC AA3</p><p> SETB 20H ; 清風(fēng)扇標(biāo)志位</p><p> MOV R3,39H</p><p> MOV R2,3AH</p><p> LCALL CPL1</p><p><b> MOV A,R3</b>&l
113、t;/p><p><b> MOV R7,A</b></p><p><b> MOV A,R2</b></p><p><b> MOV R6,A</b></p><p> MOV R5,42H</p><p> MOV R4,43H
114、 ;取K1風(fēng)扇標(biāo)志</p><p> MOV R0,#5AH</p><p> ACALL MULT1 ;計算P=K*E(K)且結(jié)果存在51H,50H單元中</p><p> MOV 28H,5BH ;取8位有效值存在28H單元</p><p><b>
115、; AJMP AA</b></p><p> DSUM: MOV A,R4 ;雙字節(jié)加法子程序(R5R4)+(R3R2) (R7R6)</p><p><b> ADD A,R2</b></p><p><b> MOV R6,A</b></p>&l
116、t;p><b> MOV A,R5</b></p><p> ADDC A,R3</p><p><b> MOV R7,A</b></p><p><b> RET </b></p><p><b> 雙字節(jié)求補</b></p
117、><p> CPL1: MOV A,R2</p><p><b> CPL A</b></p><p> ADD A,#01H</p><p><b> MOV R2,A</b></p><p><b> MOV A,R3</b>&
118、lt;/p><p><b> CPL A</b></p><p> ADDC A,#00H</p><p><b> MOV R3,A</b></p><p><b> RET</b></p><p> 乘法 被乘數(shù)R7R6乘數(shù)R5R4<
119、;/p><p> MULT1: MOV A,R7</p><p><b> RLC A</b></p><p> MOV 5CH,C ;被乘數(shù)符號C1 5CH位</p><p> JNC POS1 ;為正數(shù)則轉(zhuǎn)</p>
120、<p> MOV A,R1 ;為負數(shù)求補</p><p><b> CPL A</b></p><p> ADD A,#01H</p><p><b> MOV R6,A</b></p><p><b> MOV A,R
121、7</b></p><p><b> CPL A</b></p><p> ADDC A,#00H</p><p><b> MOV R7,A</b></p><p> POS1: MOV A,R5 ;取乘數(shù)</p>
122、<p> RLC A ;乘數(shù)符號C2 5DH</p><p> MOV 5DH,C</p><p> JNC POS2 ;為正數(shù)則轉(zhuǎn)</p><p><b> MOV A,R4</b></p><p><
123、b> CPL A</b></p><p> ADD A,#01H</p><p><b> MOV R4,A</b></p><p><b> MOV A,R5</b></p><p><b> CPL A</b></p>
124、<p> ADDC A,#00H</p><p><b> MOV R5,A</b></p><p> POS2: ACALL MULT</p><p> MOV C,5CH</p><p> ANL C,5DH</p><p> JC TPL
125、 ;負負相乘轉(zhuǎn)</p><p> MOV C,5CH</p><p> MOV C,5DH</p><p> JNC TPL ; 正正相乘轉(zhuǎn)</p><p><b> DEC R0</b></p><p> MOV A,@RO&
126、lt;/p><p><b> CPL A</b></p><p><b> ADDA,#01</b></p><p> MOV @R0,A</p><p><b> INC R0</b></p><p> MOV A,@R0</p
127、><p><b> CPL A</b></p><p> ADDC A,#00H</p><p> MOV @R0,A</p><p> TPL: RET</p><p> MULT: MOV A,R6</p><p> MOV B,R4
128、 ;取低位相乘</p><p><b> MUL AB</b></p><p> MOV @R0,A</p><p> MOV R3,B</p><p><b> MOV A,R4</b></p><p><b> MOVB,
129、R7</b></p><p><b> MUL AB</b></p><p><b> ADD A,R3</b></p><p><b> MOV R3,A</b></p><p><b> MOV A,B</b></p
130、><p> ADDC A,#00H</p><p><b> MOV R2,A</b></p><p> MOV A,R6</p><p><b> MOV B,R5</b></p><p><b> MUL AB</b></p
131、><p><b> ADD A,R3</b></p><p><b> INC R0</b></p><p> MOV @R0,A</p><p><b> CLR 5BH</b></p><p> MOV A,R2</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機溫度控制系統(tǒng)課程設(shè)計
- 課程設(shè)計--單片機溫度控制系統(tǒng)
- 單片機課程設(shè)計(溫度控制系統(tǒng))
- 單片機課程設(shè)計--溫度控制系統(tǒng)設(shè)計
- 微機控制課程設(shè)計告--基于單片機的溫度pid控制系統(tǒng)的設(shè)計
- 計算機控制技術(shù)課程設(shè)計--電阻加熱爐溫度控制系統(tǒng)設(shè)計
- 微機控制課程設(shè)計--電阻爐溫度控制系統(tǒng)設(shè)計
- 單片機課程設(shè)計--數(shù)字溫度控制系統(tǒng)
- 電阻加熱爐溫度控制系統(tǒng)畢業(yè)設(shè)計
- 課程設(shè)計---基于單片機的電阻爐溫度控制系統(tǒng)設(shè)計
- 單片機課程設(shè)計——單片機控制步進電機控制系統(tǒng)設(shè)計
- 單片機控制溫度加熱系統(tǒng)設(shè)計
- 單片機課程設(shè)計--基于51單片機的溫度控制系統(tǒng)設(shè)計
- 單片機課程設(shè)計——基于51單片機的溫度控制系統(tǒng)設(shè)計
- 單片機溫度控制課程設(shè)計
- 課程設(shè)計---基于單片機的溫度控制系統(tǒng)
- 單片機課程設(shè)計--基于51單片機的溫度控制系統(tǒng)設(shè)計
- 微機課程設(shè)計---溫度控制系統(tǒng)
- 溫室大棚溫度調(diào)節(jié)控制系統(tǒng)(單片機課程設(shè)計)
- 基于單片機的溫度控制系統(tǒng)課程設(shè)計報告
評論
0/150
提交評論