版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 工業(yè)生產(chǎn)中溫度控制具有單向性、時(shí)滯性、大慣性和時(shí)變性的特征,要實(shí)現(xiàn)溫度控制的快速性和準(zhǔn)確性,對于提高產(chǎn)品質(zhì)量具有很重要的現(xiàn)實(shí)意義。</p><p> 本課題針對溫度控制的特點(diǎn)及實(shí)現(xiàn)準(zhǔn)確溫度控制的意義,設(shè)計(jì)了一種基于PID的恒溫控制系統(tǒng)。設(shè)計(jì)內(nèi)容包括硬件和軟件兩個(gè)部分。硬件電路以AT89S52單片機(jī)為
2、微處理器,詳細(xì)設(shè)計(jì)了為單片機(jī)提供電的電源電路,溫度信號采樣電路,鍵盤及顯示電路,加溫控制電路等四大電路模塊。軟件部分主要對PID算法進(jìn)行了數(shù)學(xué)建模和編程。PID參數(shù)整定采用的是歸一參數(shù)整定法。本設(shè)計(jì)由鍵盤電路輸入設(shè)定溫度信號給單片機(jī),溫度信號采集電路采集現(xiàn)場溫度信號給單片機(jī),單片機(jī)根據(jù)輸入與反饋信號的偏差進(jìn)行PID計(jì)算,輸出控制信號給加溫控制電路,實(shí)現(xiàn)加溫和停止。顯示電路實(shí)現(xiàn)現(xiàn)場溫度的實(shí)時(shí)監(jiān)控。</p><p>
3、 本系統(tǒng)PID參數(shù)整定在MATLAB軟件下SIMULINK環(huán)境中進(jìn)行了仿真,通過穩(wěn)定邊界法整定得到、、參數(shù),最終系統(tǒng)無穩(wěn)態(tài)誤差,調(diào)節(jié)時(shí)間為30s,無超調(diào)量,各項(xiàng)指標(biāo)均滿足設(shè)計(jì)要求。本系統(tǒng)實(shí)現(xiàn)簡單,硬件要求不高,且能對溫度進(jìn)行時(shí)實(shí)顯示,具有控制過程的特殊性,本設(shè)計(jì)提出了一種基于PID算法來實(shí)現(xiàn)恒溫控制的溫度控制系統(tǒng),主要是為了達(dá)到生產(chǎn)過程中對溫度控制速度快,準(zhǔn)確性高等特點(diǎn)。</p><p> 關(guān)鍵詞:恒溫控制,
4、單片機(jī),PID算法,MATLAB仿真</p><p><b> ABSTRACT</b></p><p> Industrial production is a one-way temperature control, delay, the inertia and time-varying characteristics, To achieve the rapid
5、 temperature control and accuracy, improving the quality of products is a very important practical significance. </p><p> The temperature control issues against the characteristics and achieve precise contr
6、ol of temperature, Based on the design of a PID temperature control system. Design elements include hardware and software in two parts. Hardware circuit to AT89S52 MCU for microprocessors, for the detailed design of the
7、microcontroller to provide electricity supply circuit, Temperature signal sampling circuit, keyboard and display circuits, such as heating control circuit four circuit module. Software major pa</p><p> T
8、he system PID tuning parameters in MATLAB software under SIMULINK environment for the conduct of the simulation, By stabilizing the border will be the entire law, and parameters, the end system without steady-state
9、error and adjust to the 30's, no overshoot, all targets were met design requirements. </p><p> The system is simple, and hardware, but also the real-time temperature, with the particularity of the contr
10、ol process, The design of a PID algorithm based on the temperature control to achieve the temperature control system, the main aim is to achieve the production process for the temperature control speed, high accuracy. &l
11、t;/p><p> Keywords: Temperature control, microcontroller, PID algorithm, MATLAB </p><p><b> 目 錄</b></p><p><b> 第1章 緒論1</b></p><p><b>
12、1.1 引言1</b></p><p> 1.2 方案論證3</p><p> 1.2.1 方案一利用單片機(jī)實(shí)現(xiàn)恒溫控制系統(tǒng)3</p><p> 1.2.2 方案二利用PLC實(shí)現(xiàn)恒溫控制系統(tǒng)4</p><p> 1.2.3 方案三利用模擬PID調(diào)節(jié)實(shí)現(xiàn)恒溫控制系統(tǒng)4</p><p&g
13、t; 1.3 設(shè)計(jì)方案5</p><p> 第2章 恒溫控制系統(tǒng)硬件設(shè)計(jì)6</p><p> 2.1 AT89S52單片機(jī)簡介6</p><p> 2.1.1 AT89S52單片機(jī)資源簡介6</p><p> 2.1.2 AT89S52單片機(jī)信號引腳介紹7</p><p> 2.1.3
14、 AT89S52單片機(jī)的時(shí)鐘電路和復(fù)位電路8</p><p> 2.2 溫度傳感器9</p><p> 2.3 電源電路10</p><p> 2.3.1 電源變壓器10</p><p> 2.3.2 整流濾波電路10</p><p> 2.3.3 穩(wěn)壓電路10</p>
15、<p> 2.4 鍵盤和顯示電路12</p><p> 2.5 加溫控制電路13</p><p> 2.6 與上位機(jī)通訊14</p><p> 第3章 恒溫控制系統(tǒng)軟件設(shè)計(jì)14</p><p> 3.1 PID調(diào)節(jié)器控制原理14</p><p> 3.2 位置式PI
16、D算法15</p><p> 3.3 數(shù)字PID參數(shù)整定15</p><p> 3.3.1 采樣周期的選擇16</p><p> 3.3.2 PID參數(shù)對系統(tǒng)性能的影響17</p><p> 3.4 PID計(jì)算程序18</p><p> 第4章 MATLAB仿真29</p>
17、<p> 4.1 SIMULINK簡介29</p><p> 4.2 系統(tǒng)仿真方框圖30</p><p> 4.3 穩(wěn)定邊界法整定PID參數(shù)30</p><p><b> 結(jié)論35</b></p><p><b> 參考文獻(xiàn)36</b></p>&
18、lt;p><b> 致謝37</b></p><p><b> 附錄38</b></p><p><b> 第1章 緒論</b></p><p><b> 1.1 引言</b></p><p> 電加熱溫度控制具有升溫單向性、大慣性、
19、大滯后性和時(shí)變性的特點(diǎn)。例如:其升溫單向性是由于電加熱的升溫、保溫主要是通過電阻加熱;降溫則通常是依靠自然冷卻,當(dāng)溫度一旦超調(diào),就無法用控制手段使其降溫,因而很難用數(shù)字方法建立精確的模型,并確定參數(shù)。應(yīng)用傳統(tǒng)的模擬電路控制方法,由于電路復(fù)雜,器件太多,往往很難達(dá)到理想的控制效果。由于無法用精確的數(shù)學(xué)方法來建立模型并確定參數(shù),本設(shè)計(jì)采用PID控制。</p><p> 目前工業(yè)自動化水平已成為衡量各行業(yè)現(xiàn)代化水平的
20、一個(gè)重要標(biāo)準(zhǔn),同時(shí)控制理論的發(fā)展也經(jīng)歷了經(jīng)典控制理論、現(xiàn)代控制理論和智能控制理論三個(gè)階段。智能控制的典型實(shí)例是模糊全自動洗衣機(jī)等;而自動控制系統(tǒng)可分為開環(huán)控制系統(tǒng)和閉環(huán)控制系統(tǒng)。一個(gè)控制系統(tǒng)包括控制器、傳感器、變送器、執(zhí)行機(jī)構(gòu)、輸入輸出接口??刂破鞯妮敵鼋?jīng)過輸出接口、執(zhí)行機(jī)構(gòu)加在被控系統(tǒng)上,控制系統(tǒng)的被控量經(jīng)過傳感器、變送器通過輸入接口送到控制器。不同的控制系統(tǒng),其傳感器、變送器和執(zhí)行機(jī)構(gòu)都不一樣。比如壓力控制系統(tǒng)要采用壓力傳感器,而溫
21、度控制系統(tǒng)要采用溫度傳感器。目前PID控制及其控制器或智能PID控制器已經(jīng)很多,產(chǎn)品已在工程實(shí)際中得到廣泛的應(yīng)用,各大公司均開發(fā)了具有PID參數(shù)自整定功能的智能調(diào)節(jié)器,其中PID調(diào)節(jié)器參數(shù)是自動調(diào)節(jié)是通過智能化調(diào)整或自校正、自適應(yīng)算法來實(shí)現(xiàn),有利用PID調(diào)節(jié)控制實(shí)現(xiàn)壓力、溫度、流量、液位的控制。能實(shí)現(xiàn)PID控制功能的有PLC和一些PC機(jī)。</p><p> 傳統(tǒng)的PID控制電路結(jié)構(gòu)復(fù)雜,需配合相應(yīng)的可控硅控制電
22、路來完成功率的調(diào)控。針對它具有器件多、生產(chǎn)成本高、電路調(diào)試復(fù)雜的缺點(diǎn),本恒溫自動控制系統(tǒng)的設(shè)計(jì)中應(yīng)用AT89S52的單片機(jī)進(jìn)行數(shù)字PID運(yùn)算,能充分發(fā)揮軟件系統(tǒng)的靈活性,在必要時(shí)針對PID算法進(jìn)行修正,使其更加完善,固態(tài)繼電器的功率調(diào)節(jié)電路,極大地簡化了執(zhí)行電路,與單片機(jī)的接口也變得十分的方便,同時(shí)只需要更換不同輸出功率的固態(tài)繼電器,就可滿足不同功率加熱系統(tǒng)的需要由于設(shè)計(jì)的系統(tǒng)對溫度動、靜態(tài)指標(biāo)要求要求不高,且允許有一定的溫度偏差和允許
23、調(diào)節(jié)的時(shí)間較長時(shí),最流行控制方法還是繼電接觸器控制系統(tǒng)。因此本設(shè)計(jì)采用若繼電接觸器控制系統(tǒng)。整個(gè)設(shè)計(jì)系統(tǒng)電路簡單、調(diào)試方便、實(shí)際應(yīng)用可達(dá)到理想的精度。</p><p> 隨著集成電路技術(shù)的發(fā)展,單片微型計(jì)算機(jī)的功能也不斷地增強(qiáng),許多高性能的新型機(jī)種不斷的涌現(xiàn)出來,單片機(jī)以其集成度高、功能強(qiáng)、體積小可靠性高、價(jià)格低和開發(fā)周期短等特點(diǎn),成為自動化和各個(gè)測控領(lǐng)域中應(yīng)用廣泛的器件,在工業(yè)生產(chǎn)中,稱為必不可少的器件,尤其
24、是在當(dāng)要求控制精度高,而成本低的社會里,往往都是采用單片機(jī)作為數(shù)字控制器取代模擬控制器。在溫度控制系統(tǒng)中,單片機(jī)最是起到了不可替代的核心作用。</p><p> 而PID控制技術(shù)在現(xiàn)在最為成熟,控制結(jié)構(gòu)簡單,參數(shù)容易調(diào)整,不必求出被控對象的數(shù)學(xué)模型就可以調(diào)節(jié),所以在恒溫控制系統(tǒng)中通常采用PID算法。PID是比例(proportional)、積分(intergal)和微分(derivative)三者的縮寫。PID
25、調(diào)節(jié)器的三個(gè)基本參數(shù)kp(比例系數(shù))、ki(積分系數(shù))、kd(微分系數(shù))是選擇非常重要,它將直接影響一個(gè)控制系統(tǒng)的準(zhǔn)確性。而三個(gè)環(huán)節(jié)在實(shí)際控制中的作用:1、比例調(diào)節(jié)作用:比例反映系統(tǒng)的偏差,系統(tǒng)一旦出現(xiàn)偏差,比例調(diào)節(jié)立即產(chǎn)生調(diào)節(jié)作用,用于減少偏差。比例作用大,可以加快調(diào)節(jié),減少誤差,但過大的比例使系統(tǒng)的穩(wěn)定性下降,甚至造成系統(tǒng)不穩(wěn)定;2、積分調(diào)節(jié)作用:是使系統(tǒng)消除靜態(tài)誤差,提高無差度。因?yàn)橛姓`差,積分調(diào)節(jié)就進(jìn)行,直至無差,積分調(diào)節(jié)就停止
26、。積分調(diào)節(jié)輸出為一常值,積分作用的強(qiáng)弱取決于積分時(shí)間常數(shù) Ti. Ti越小,積分時(shí)間就越強(qiáng);反之Ti越大,積分時(shí)間就越弱。加入積分調(diào)節(jié)可使系統(tǒng)穩(wěn)定性下降,動態(tài)響應(yīng)變慢,積分作用常與另兩種調(diào)節(jié)規(guī)律結(jié)合,組成PI調(diào)節(jié)或PID調(diào)節(jié);3、微分調(diào)節(jié)作用:微分作用反映系統(tǒng)偏差信號的變化率,具有預(yù)見性,能預(yù)見偏差變化的趨</p><p> 大多數(shù)溫度控制系統(tǒng)均建立在模型上,難以滿足加工工藝要求,故引入模糊控制,采用模糊PID
27、算法,運(yùn)用AT89S52單片機(jī)對電阻爐溫度實(shí)現(xiàn)智能控制,可以解決上述種種不足,從而實(shí)現(xiàn)高精度的控制。PID控制器問世至今已有近70年歷史,它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時(shí),控制理論的其它技術(shù)難以采用時(shí),系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場調(diào)試來確定,因此本次設(shè)計(jì)應(yīng)用PID控制技術(shù)最為有效。</p><p>&
28、lt;b> 1.2 方案的論證</b></p><p> 無論是工農(nóng)業(yè)生產(chǎn)中,還是日常生活中,對溫度的檢測和控制都是必不可少的,對于溫度的檢測通常是采用熱敏電阻在通過A/D(模/數(shù))轉(zhuǎn)換得到數(shù)字信號,但由于信號的采集對整個(gè)系統(tǒng)的影響很大,如果采樣精度不高,會使這個(gè)系統(tǒng)準(zhǔn)確性下降。因此本次設(shè)計(jì)采用高精度的溫度傳感器:數(shù)字溫度傳感器DS18B20。這種數(shù)字溫度傳感器是DALLAS公司生產(chǎn)的單總線
29、,。而對于溫度控制的方法也有很多:如單片機(jī)控制、PLC控制、模擬PID調(diào)節(jié)器和數(shù)字PID調(diào)節(jié)器等等。綜合各方面的意見,本設(shè)計(jì)采用單片機(jī)來實(shí)現(xiàn)溫度的控制。</p><p> 1.2.1 方案一利用單片機(jī)實(shí)現(xiàn)恒溫控制系統(tǒng)</p><p> 利用單片機(jī)系統(tǒng)實(shí)現(xiàn)溫度恒定的控制,其總體結(jié)構(gòu)圖如圖1.1所示。系統(tǒng)主要包括現(xiàn)場溫度采集、實(shí)時(shí)溫度顯示、加熱控制參數(shù)設(shè)置、加熱電路控制輸出、與報(bào)警裝置和系
30、統(tǒng)核心AT89S52單片機(jī)作為微處理器。</p><p> 圖1.1 方案一的系統(tǒng)總體結(jié)構(gòu)框圖</p><p> 溫度采集電路以數(shù)字量形式將現(xiàn)場溫度傳至單片機(jī)。單片機(jī)結(jié)合現(xiàn)場溫度與用戶設(shè)定的目標(biāo)溫度,按照已經(jīng)編程固化的模糊控制算法計(jì)算出實(shí)時(shí)控制量。以此控制量控制固態(tài)繼電器開通和關(guān)斷,決定加熱電路的工作狀態(tài),使溫度逐步穩(wěn)定于用戶設(shè)定的目標(biāo)值。在溫度到達(dá)設(shè)定的目標(biāo)溫度后,由于自然冷卻而使
31、其溫度下降時(shí),單片機(jī)通過采樣回的溫度與設(shè)置的目標(biāo)溫度比較,作出相應(yīng)的控制,開啟加熱器。當(dāng)用戶需要比實(shí)時(shí)溫度低的溫度時(shí),此電路可以利用風(fēng)扇降溫。系統(tǒng)運(yùn)行過程中的各種狀態(tài)參量均可由數(shù)碼管實(shí)時(shí)顯示。</p><p> 1.2.2 方案二利用PLC實(shí)現(xiàn)恒溫控制系統(tǒng)</p><p> 利用PLC實(shí)現(xiàn)對溫度恒定的控制,其控制系統(tǒng)的結(jié)構(gòu)框圖如圖1.2所示:采用PLC控制實(shí)現(xiàn)電熱絲加熱全通、間斷導(dǎo)通和
32、全斷加熱的自動控制方式,來達(dá)到溫度的恒定。智能型電偶溫度表將置于被測對象中,熱電偶的傳感器信號與恒定溫度的給定電壓進(jìn)行比較,構(gòu)成閉環(huán)系統(tǒng),生成溫差電壓Vt,PLC自適應(yīng)恒溫控制電路,根據(jù)Vt的大小計(jì)算出全通、間接導(dǎo)通和全斷的自適應(yīng)恒溫控制電路,并將占空比可調(diào)的控制電平經(jīng)輸出隔離電路去控制可控硅門極的通斷,實(shí)現(xiàn)自適應(yīng)的恒溫控制。若溫度升的過快,PLC也將輸出關(guān)斷電平信號轉(zhuǎn)換為可控硅電路相匹配的輸入信號。</p><p&
33、gt; 圖1.2 方案二的系統(tǒng)結(jié)構(gòu)框圖</p><p> 1.2.3 方案三利用模擬PID調(diào)節(jié)的恒溫控制系統(tǒng)</p><p> 基于模擬PID調(diào)節(jié)的恒溫控制系統(tǒng)由數(shù)字電路部分和模擬電路兩部分組成,其控制系統(tǒng)的機(jī)構(gòu)框圖如圖1.3所示。由按鍵設(shè)定某一溫度,單片機(jī)對設(shè)定溫度值進(jìn)行查表計(jì)算后轉(zhuǎn)換為對應(yīng)的電壓數(shù)字值,通過16位的數(shù)模轉(zhuǎn)換器得到與之精確對應(yīng)的電壓信號,此電壓值于熱敏電阻實(shí)際測量
34、的電壓值進(jìn)行比較產(chǎn)生一個(gè)誤差信號,經(jīng)過PID電路后,獲得一個(gè)控制量給制冷元件構(gòu)成實(shí)時(shí)閉環(huán)系統(tǒng),同時(shí)實(shí)際測量的電壓值并顯示在液晶屏上。</p><p> 圖1.3 方案三的系統(tǒng)結(jié)構(gòu)框圖</p><p><b> 1.3 設(shè)計(jì)方案</b></p><p> 控制模塊的選擇,數(shù)字比較器與模擬控制器相比較,數(shù)字比較器具有以下幾個(gè)優(yōu)點(diǎn):</p
35、><p> 1、模擬調(diào)節(jié)器調(diào)節(jié)能力有限,當(dāng)控制規(guī)律較為復(fù)雜時(shí),就難以甚至無法實(shí)現(xiàn)。而數(shù)字控制器能實(shí)現(xiàn)復(fù)雜控制規(guī)律的控制。</p><p> 2、計(jì)算機(jī)具有分時(shí)控制能力,可實(shí)現(xiàn)多回路控制。</p><p> 3、數(shù)字控制器具有靈活性。起控制規(guī)律可靈活多樣,可用一臺計(jì)算機(jī)對不同的回路實(shí)現(xiàn)不同的控制方式,并且修改控制參數(shù)或控制方式一般只可改變控制程序即可,使用起來簡單方
36、便,可改善調(diào)節(jié)品質(zhì),提高產(chǎn)品的產(chǎn)量和質(zhì)量。</p><p> 4、采用計(jì)算機(jī)除實(shí)現(xiàn)PID數(shù)字控制外,還能實(shí)現(xiàn)監(jiān)控、數(shù)據(jù)采集、數(shù)字顯示等其他功能。綜合考慮,本設(shè)計(jì)控制模塊采用數(shù)字PID調(diào)節(jié)器。</p><p> 對于方案一,采用單片機(jī)實(shí)現(xiàn)恒溫控制,雖然該方案成本低,可靠性高,抗干擾性強(qiáng),但對于系統(tǒng)的動態(tài)性能與穩(wěn)態(tài)性能要求較高的場合是不合適的;而對于方案二,采用PLC實(shí)現(xiàn)恒溫控制,由于PL
37、C成本高,且PLC是外圍系統(tǒng)配置復(fù)雜,不利于我們的設(shè)計(jì),由于數(shù)字PID調(diào)節(jié),運(yùn)算量大,只要選擇合適的參數(shù)對于溫度的控制精度往往能達(dá)到較好的效果。為了使設(shè)計(jì)的成本低、抗干擾強(qiáng),系統(tǒng)動態(tài)性能與穩(wěn)態(tài)性能好的前提下,設(shè)計(jì)方案的總體結(jié)構(gòu)框圖如圖1.4所示:通過單片機(jī)對偏差進(jìn)行PID運(yùn)算,輸出控制D/A轉(zhuǎn)換電路轉(zhuǎn)換成0—8V電壓信號來控制可控硅觸發(fā)電路,從而控制可控硅通斷率,通過調(diào)節(jié)加熱功率即可達(dá)到控制溫度恒定的目的。</p><
38、;p> 圖1.4 設(shè)計(jì)總體結(jié)構(gòu)框圖</p><p> 第2章 恒溫控制系統(tǒng)硬件設(shè)計(jì)</p><p> 考慮到盡量降低成本和避免與復(fù)雜的電路,此系統(tǒng)所用到的元器件均為常用的電子器件。而主控器采用低功耗、高性能、片內(nèi)含8k byte可反復(fù)檫寫的Flash 、只讀程序器CMOS8位單片機(jī)AT89S52;溫度傳感器采用DALLAS公司生產(chǎn)的單總線數(shù)字溫度傳感器DS18B20;采用控
39、制端TTL電平,即可實(shí)現(xiàn)對繼電器的開關(guān),使用時(shí)完全可以用 NPN型三極管接成電壓跟隨器的形式驅(qū)動;單片機(jī)所需要的+5V工作電源是通過220V交流電壓通過變壓、整流、穩(wěn)壓、濾波得到。實(shí)時(shí)控制的顯示器、鍵盤通過單片機(jī)來完成鍵盤掃描與輸出動態(tài)顯示??紤]到系統(tǒng)對傳輸速度的要求不高,在PCA機(jī)上設(shè)定和實(shí)時(shí)顯示溫度,系統(tǒng)配有RS232串行通訊端口,下面對硬件電路作具體的設(shè)計(jì)。</p><p> 2.1 AT89S52單片
40、機(jī)簡介</p><p> 2.1.1 AT89S52單片機(jī)資源簡介</p><p> AT89S52的結(jié)構(gòu)如圖2.1所示。由于它的廣泛使用使得市面價(jià)格較8155、8255、8279要低,所以說用它是很經(jīng)濟(jì)的。該芯片具有如下功能:①有1個(gè)專用的鍵盤/顯示接口;②有1個(gè)全雙工異步串行通信接口;③有2個(gè)16位定時(shí)/計(jì)數(shù)器。這樣,1個(gè)89S52,承擔(dān)了3個(gè)專用接口芯片的工作;不僅使成本大大下降
41、,而且優(yōu)化了硬件結(jié)構(gòu)和軟件設(shè)計(jì),給用戶帶來許多方便。</p><p> 89S52有40個(gè)引腳,有32個(gè)輸入端口(I/O),有2個(gè)讀寫口線,可以反復(fù)插除。所以可以降低成本。</p><p><b> 主要功能特性: </b></p><p> ?。?)兼容MCS51指令系統(tǒng)</p><p> ?。?)32個(gè)雙向I/O
42、口線</p><p> (3)3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷</p><p> ?。?)2個(gè)串行中斷口 </p><p> (5)2個(gè)外部中斷源</p><p> ?。?)2個(gè)讀寫中斷口線</p><p> (7)低功耗空閑和掉電模式</p&g
43、t;<p> ?。?)8k可反復(fù)擦寫(>1000次)Flash ROM</p><p> ?。?)256x8 bit內(nèi)部RAM</p><p> ?。?0)時(shí)鐘頻率0-24MHz</p><p> (11)可編程UART串行通道</p><p> ?。?2)共6個(gè)中斷源</p><p><b
44、> (13)3級加密位</b></p><p> ?。?4)軟件設(shè)置睡眠和喚醒功能。</p><p> 2.1.2 AT89S52單片機(jī)信號引腳介紹[9]</p><p><b> 輸入輸出口線</b></p><p> ~ 口8位雙向口線</p><p> ~
45、 口8位雙向口線</p><p> ~ 口8位雙向口線</p><p> ~ 口8位雙向口線</p><p> ALE 地址鎖存控制信號</p><p> 在系統(tǒng)擴(kuò)展時(shí),ALE用于控制把口輸出的低8位地址送入鎖存器鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)的分時(shí)傳送。此外由于ALE是以六分之一晶振頻率的固定頻率輸出正脈沖,因此可
46、作為外部定時(shí)脈沖使用。</p><p> 外部程序存儲器讀選通信號</p><p> 在讀外部ROM時(shí), 有效(低電平),以實(shí)現(xiàn)外部ROM單元的讀操作。</p><p> 訪問程序存儲趨控制信號</p><p> 但信號為低電平時(shí),對ROM的讀操作限定在外部程序存儲器;而當(dāng)信號為高電平時(shí),則對ROM的讀操作是從內(nèi)部程序存儲器開始,并可
47、延續(xù)至外部程序存儲器。</p><p> RST 復(fù)位信號</p><p> 當(dāng)輸入的復(fù)位信號延續(xù)2個(gè)機(jī)器周期以上高電平時(shí)即為有效,用以完成單片機(jī)的復(fù)位操作。</p><p> 和 外接晶體引線端</p><p> 當(dāng)使用芯片內(nèi)部時(shí)鐘時(shí),此二引線端用語外接石英晶體和微調(diào)電容;當(dāng)使用外部時(shí)鐘時(shí),用于接外部時(shí)鐘脈沖信號。<
48、/p><p><b> 地線</b></p><p><b> +5V電源</b></p><p> 2.1.3 AT89S52單片機(jī)時(shí)鐘和復(fù)位電路</p><p><b> 時(shí)鐘電路</b></p><p> 單片機(jī)內(nèi)部有一個(gè)高增益反向放大器,輸
49、入端為芯片引腳,輸出端為引腳。而在芯片外部和 之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。晶體震蕩頻率高,則系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)運(yùn)行速度也就快,但反過來運(yùn)行速度快對存儲器的速度要求就高,對印制電路板的工藝要求也高,所以,這里使用震蕩頻率為6MHz的石英晶體。震蕩電路產(chǎn)生的震蕩脈沖并不直接是使用,而是經(jīng)分頻后再為系統(tǒng)所用,震蕩脈沖經(jīng)過二分頻后才作為系統(tǒng)的時(shí)鐘信號。在設(shè)計(jì)電路板時(shí),振蕩器和電容應(yīng)盡量靠近單片機(jī),以避免干
50、擾。需要注意的是:電路板時(shí),振蕩器和電容應(yīng)盡量安裝得與單片機(jī)靠近,以減小寄生電容的存在更好的保障振蕩器穩(wěn)定、可靠的工作電路圖如圖2.2所示</p><p><b> 復(fù)位電路</b></p><p> 單片機(jī)的復(fù)位電路分上電復(fù)位和按鍵復(fù)位兩種方式。</p><p><b> (a)上電復(fù)位:</b></p>
51、;<p> 在加電之后通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。當(dāng)?shù)纳仙龝r(shí)間不超過1ms,就可以實(shí)現(xiàn)自動上電復(fù)位,即接通電源就完成了系統(tǒng)的初始化電路原理圖。RST上的電壓必須保證在斯密特觸發(fā)器的閥值電壓以上足夠長時(shí)間,滿足復(fù)位操作的要求。</p><p><b> (b) 按鍵復(fù)位:</b></p><p> 程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),
52、為了擺脫困境,也需按復(fù)位鍵以重新啟動。RST引腳是復(fù)位信號的輸入端,復(fù)位信號是高電平有效。按鍵復(fù)位又分按鍵脈沖復(fù)位(圖2.3)和按鍵電平復(fù)位。電平復(fù)位將復(fù)位端通過電阻與相連,按鍵脈沖復(fù)位是利用RC分電路產(chǎn)生正脈沖來達(dá)到復(fù)位的。</p><p><b> (c) 注意:</b></p><p> 因?yàn)榘存I脈沖復(fù)位是利用RC微分電路產(chǎn)生正脈沖來達(dá)到復(fù)位的。所以電平復(fù)位
53、要將復(fù)位端通過電阻與相連.如復(fù)位電路中R、C的值選擇不當(dāng),使復(fù)位時(shí)間過長,單片機(jī)將處于循環(huán)復(fù)位狀態(tài)。故本設(shè)計(jì)采用按鍵復(fù)位。</p><p><b> 溫度傳感器</b></p><p> 溫度測量轉(zhuǎn)換部分是整個(gè)系統(tǒng)的數(shù)據(jù)來源,直接影響系統(tǒng)的可靠性。傳統(tǒng)的溫度測量方法是:溫度傳感器例如AD590,將測量的溫度轉(zhuǎn)換成模擬電信號,再經(jīng)過A/D轉(zhuǎn)換器把模擬信號轉(zhuǎn)換成數(shù)字信
54、號,單片機(jī)再對采集的數(shù)字信號進(jìn)行處理[3]。這種模擬數(shù)字混合電路實(shí)現(xiàn)起來比較復(fù)雜,濾波消噪難度大系統(tǒng)穩(wěn)定性不高,鑒于這些考慮,本設(shè)計(jì)采用數(shù)字式溫度傳感器DS18B20。</p><p> DS18B20支持“一線總線”接口,測量溫度的范圍為-55°C~+125°C,現(xiàn)場溫度直接以“一線總線”的數(shù)字式傳輸,大大的提高了系統(tǒng)的抗干擾性。DS18B20為3引腳, DQ為數(shù)字信號輸入/輸出端;GND
55、為電源地;VDD為外接供電電源輸入端。</p><p> 溫度采集電路模塊如圖2.4所示。DSB8B20的3腳接系統(tǒng)中單片機(jī)的P1.4口線,用于將采集到的溫度送入單片機(jī)中處理,2腳和3腳之間接一個(gè)4.7K上拉電阻,即可完成溫度采集部分硬件電路。DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。</p><p> 圖2.4
56、 溫度采樣電路</p><p> DS18B20中的溫度傳感器可完成對溫度的測量,以12位轉(zhuǎn)化為例:用16位符號擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625℃/LSB形式表達(dá),其中S為符號位。數(shù)據(jù)轉(zhuǎn)換如下表2.1。</p><p> 表2.1 DS18B20溫度數(shù)據(jù)轉(zhuǎn)換表</p><p> 這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲在18B20的兩個(gè)8比特的R
57、AM中,二進(jìn)制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數(shù)值乘于0.0625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測到的數(shù)值需要取反加1再乘于0.0625即可得到實(shí)際溫度。</p><p><b> 2.3電源電路</b></p><p> 電源電路可分為三大塊:變壓部分、整流濾波部分、穩(wěn)壓部分[1]。電源電路如圖2.5所示。&l
58、t;/p><p><b> 圖2.5 電源電路</b></p><p> 2.3.1 電源變壓器</p><p> 變壓部分其實(shí)就是一個(gè)變壓器,變壓器作用是將220V的交流電壓變換成我們所需的電壓9V。然后再送去整流和濾波。</p><p> 2.3.2 整流濾波電路</p><p> 整流
59、電路將交流電壓變成單向脈動的直流電壓;濾波電路用來濾除整流后單向脈動電壓中的交流成份,合之成為平滑的直流電壓。濾波電路常見的有電容濾波電路、電感濾波電路。一般的整流有全波整流、單相半流整流、橋式整流、及變壓整流。</p><p> 2.3.3 穩(wěn)壓電路</p><p> 在這的穩(wěn)壓電路中我使用的是“三端固定輸出集成穩(wěn)壓器”,穩(wěn)壓電路的作用是當(dāng)輸入交流電源電壓波動、負(fù)載和溫度變化時(shí),維持
60、輸出直流電壓的穩(wěn)定。集成穩(wěn)壓器、使用方便、性能穩(wěn)定、更重要的是考慮到它的價(jià)格低廉,因而我在此使用。 </p><p> 2.4 鍵盤和顯示電路</p><p> 模塊電路如下圖2.6。鍵盤采用行列式和外部中斷相結(jié)合的方法,各按鍵的功能定義如下表2.2。其中設(shè)置鍵與單片機(jī)的腳相連,、YES、NO用四行三列接單片機(jī)P0口,REST鍵為硬件復(fù)位鍵,與R、C構(gòu)成復(fù)位電路。</p>
61、<p> 表2.2 按鍵功能</p><p> 圖2.6 鍵盤接口電路</p><p> 顯示采用3位共陽LED動態(tài)顯示方式,顯示內(nèi)容有溫度值的十位、個(gè)位及小數(shù)點(diǎn)后一位。用P2口作為段控碼輸出,并用74HC244作驅(qū)動。P1.0—P1.2作為位控碼輸出,用PNP型三極管做驅(qū)動[4]。模塊電路如下圖2.7所示:</p><p> 圖2.7 顯
62、示接口電路</p><p> 2.5 加熱控制電路</p><p> 控制電路圖如下圖2.8。用于在閉環(huán)控制系統(tǒng)中對被控對象實(shí)施控制,被控對象為電熱杯,采用對加在電熱杯兩端的電壓進(jìn)行通斷的方法進(jìn)行控制,以實(shí)現(xiàn)對水加熱功率的調(diào)整,從而達(dá)到對水溫控制的目的。對電爐絲通斷的控制采用SSR-40DA固態(tài)繼電器。它的使用非常簡單,只要在控制端TTL電平,即可實(shí)現(xiàn)對繼電器的開關(guān),使用時(shí)完全可以用
63、NPN型三極管接成電壓跟隨器的形式驅(qū)動。當(dāng)單片機(jī)的P1.3為高點(diǎn)平時(shí),三極管驅(qū)動固態(tài)繼電器工作接通加熱器工作,當(dāng)單片機(jī)的P1.3為低電平時(shí)固態(tài)繼電器關(guān)斷,加熱器不工作。</p><p> 圖2.8 加熱控制電路</p><p><b> 2.6與上位機(jī)通訊</b></p><p> 由于系統(tǒng)采用計(jì)算機(jī)對系統(tǒng)進(jìn)行數(shù)據(jù)監(jiān)控和顯示。所以要進(jìn)行
64、通信電路的設(shè)計(jì)。PC機(jī)內(nèi)裝有異步通信適配器板,其主要的器件為8250UART芯片,它使PC機(jī)有能力與其他具有標(biāo)準(zhǔn)RS-232串行口通信接口的計(jì)算機(jī)或儀器設(shè)備通信,而MCS-51單片機(jī)本身具有全雙工的串行口。因此只需要配一些驅(qū)動、隔離電路就可以構(gòu)成了洋分布式系統(tǒng),其連接圖如圖2.9所示,由于MCS-51單片機(jī)串行口是標(biāo)準(zhǔn)的TTL電平,為使其與RS-232電平接口,在MCS-51單片機(jī)串行口聯(lián)有1488和1489,以實(shí)現(xiàn)電平匹配。由于144
65、8的輸出端不能相互并聯(lián),故加上一個(gè)二極管進(jìn)行隔離 [2]。</p><p> 圖2.9 PC機(jī)與單片機(jī)的接口電路</p><p> 在主機(jī)通信軟件中,首先根據(jù)擁護(hù)的要求和通信協(xié)議規(guī)定,對8250進(jìn)行初始化。設(shè)置的8250的初始化數(shù)據(jù)是:波特率為9000b/s;8位數(shù)據(jù)位;1位奇偶校正位;1位停止位。由于從機(jī)MCS-51的格式固定為四種方式,本設(shè)計(jì)采用方式3。因此這里的奇偶校正位用做發(fā)
66、送地址/數(shù)據(jù)特征位(1表示地址),而數(shù)據(jù)通訊的校正采用累加和校驗(yàn)法。數(shù)據(jù)的發(fā)送和接收采用查詢方式,其程序框圖如圖2.10所示,在發(fā)送時(shí),先用輸入指令檢查發(fā)送器的保持寄存器是否為空。若為空,則輸出指令將一個(gè)數(shù)據(jù)輸出給8250,8250會自動將數(shù)據(jù)一位一位地發(fā)送到串行口通信線上。在接收時(shí),8250把串行口數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù),并送入到接收數(shù)據(jù)寄存器中,同時(shí)把“接收數(shù)據(jù)就緒”信號置于狀態(tài)寄存器中,CPU讀到這個(gè)信號后,就用輸入指令從接收器中讀入
67、一個(gè)數(shù)據(jù)。</p><p> 圖2.10 PC機(jī)通信軟件框圖</p><p> 第3章 恒溫控制系統(tǒng)軟件設(shè)計(jì)</p><p> 3.1 PID調(diào)節(jié)器控制原理</p><p> 在控制系統(tǒng)中,控制器最常用的控制規(guī)律是PID控制。PID控制系統(tǒng)原理框圖如圖3.1所示。系統(tǒng)由PID控制器和被控對象組成。</p><p
68、> 圖3.1 PID控制系統(tǒng)原理框圖</p><p> PID控制器是一種線性控制器,一種它根據(jù)給定值rin(t)與實(shí)際輸出值yout(t)構(gòu)成控制偏差:</p><p> Error(t)=rin(t)-yout(t)</p><p> PID控制就是對偏差信號進(jìn)行比例、積分、微分運(yùn)算后,形成一種控制規(guī)律。即,控制器的輸出為:</p>
69、<p><b> ?。?.1)</b></p><p> 或?qū)懗蓚鬟f函數(shù)的形式:</p><p><b> ?。?.2)</b></p><p> 左中, kp——比例系數(shù);Ti——積分時(shí)間常數(shù);T d——微分時(shí)間常數(shù)。</p><p> 簡單說來,PID控制器各校正環(huán)節(jié)的作用如
70、下[5]:</p><p> 比例環(huán)節(jié):成比例地反映控制系統(tǒng)的偏差信號error(t),偏差一旦產(chǎn)生,控制器立即產(chǎn)生控制作用,以減小偏差。</p><p> 比例控制: Gc(s)= Kp </p><p> 積分環(huán)節(jié):主要用于消除靜差,提高系統(tǒng)的無差度。積分作用的強(qiáng)盡弱取決于積分時(shí)間常數(shù)Ti,Ti越大,積分作用越弱,反之則越強(qiáng)。</p><
71、;p> 積分控制: Gc(s) = Kp/T is</p><p> 微分環(huán)節(jié):反偏差信號的變化趨勢(變化速率),并能在偏差信號變得太大之前,在系統(tǒng)中引入一個(gè)有效的早期修正信號,從而加快系統(tǒng)的動作速度,減少調(diào)節(jié)時(shí)間。</p><p> 微分控制: Gc(s) =KpT ds</p><p> 3.2 位置式PID算法 </p><p
72、> 基本PID控制器的理想算式為</p><p><b> (3.3)</b></p><p><b> 式中</b></p><p> u(t)——控制器(也稱調(diào)節(jié)器)的輸出;</p><p> e(t)——控制器的輸入(常常是設(shè)定值與被控量之差,即e(t)=r(t)-c(t));
73、</p><p> Kp——控制器的比例放大系數(shù);</p><p> Ti ——控制器的積分時(shí)間;</p><p> Td——控制器的微分時(shí)間。</p><p> 設(shè)u(k)為第k次采樣時(shí)刻控制器的輸出值,可得離散的PID算式</p><p><b> (3.4)</b></p&g
74、t;<p><b> 式中 , 。</b></p><p> 由于計(jì)算機(jī)的輸出u(k)直接控制執(zhí)行機(jī)構(gòu)(如閥門),u(k)的值與執(zhí)行機(jī)構(gòu)的位置(如閥門開度)一一對應(yīng),所以通常稱式(2)為位置式PID控制算法。</p><p> 位置式PID控制算法的缺點(diǎn):當(dāng)前采樣時(shí)刻的輸出與過去的各個(gè)狀態(tài)有關(guān),計(jì)算時(shí)要對e(k)進(jìn)行累加,運(yùn)算量大;而且控制器的輸
75、出u(k)對應(yīng)的是執(zhí)行機(jī)構(gòu)的實(shí)際位置,如果計(jì)算機(jī)出現(xiàn)故障,u(k)的大幅度變化會引起執(zhí)行機(jī)構(gòu)位置的大幅度變化。</p><p> 3.3 數(shù)字PID參數(shù)的整定 </p><p> PID控制器的參數(shù)整定是控制系統(tǒng)設(shè)計(jì)的核心內(nèi)容。它是根據(jù)被控過程的特性確定PID控制器的比例系數(shù)、積分時(shí)間和微分時(shí)間的大小。PID控制器參數(shù)整定的方法很多,概括起來有兩大類:一是理論計(jì)算整定法。它主要是依據(jù)系
76、統(tǒng)的數(shù)學(xué)模型,經(jīng)過理論計(jì)算確定控制器參數(shù)。這種方法所得到的計(jì)算數(shù)據(jù)未必可以直接用,還必須通過工程實(shí)際進(jìn)行調(diào)整和修改。二是工程整定方法,它主要依賴工程經(jīng)驗(yàn),直接在控制系統(tǒng)的試驗(yàn)中進(jìn)行,且方法簡單、易于掌握,在工程實(shí)際中被廣泛采用。本設(shè)計(jì)采用PID歸一整定法把對控制臺三個(gè)參數(shù)(Kc、Ti、Td,)轉(zhuǎn)換為一個(gè)參數(shù), 從而使問題明顯簡化。以達(dá)到控制器的特性與被控過程的特性相匹配,滿足某種反映控制系統(tǒng)質(zhì)量的性能指標(biāo)。</p><
77、;p> 3.3.1 采樣周期選擇的原則</p><p> (1)根據(jù)香農(nóng)采樣定理,系統(tǒng)采樣頻率的下限為fs=2fmax,此時(shí)系統(tǒng)可真實(shí)地恢復(fù)到原來的連續(xù)信號。 </p><p> (2)從執(zhí)行機(jī)構(gòu)的特性要求來看,有時(shí)需要輸出信號保持一定的寬度。采樣周期必須大于這一時(shí)間。</p><p> ?。?)從控制系統(tǒng)的隨動和抗干擾的性能來看,要求采樣周期短些。 &
78、lt;/p><p> (4)從微機(jī)的工作量和每個(gè)調(diào)節(jié)回路的計(jì)算來看,一般要求采樣周期大些。 </p><p> ?。?)從計(jì)算機(jī)的精度看,過短的采樣周期是不合適的。 </p><p> ?。?)當(dāng)系統(tǒng)滯后占主導(dǎo)地位時(shí),應(yīng)使滯后時(shí)間為采樣周期的整數(shù)倍</p><p> 下表3.1列出了幾種常見的被測參數(shù)的采樣周期T的經(jīng)驗(yàn)選擇數(shù)據(jù)??晒┰O(shè)計(jì)時(shí)參考
79、。實(shí)際上生產(chǎn)過程千差萬別,經(jīng)驗(yàn)數(shù)據(jù)不一定就合適,可用試探法逐步調(diào)試確定。</p><p> 表3.1 采樣周期的經(jīng)驗(yàn)數(shù)據(jù)表[10]</p><p> 3.3.2 PID參數(shù)對系統(tǒng)性能的影響</p><p> 表3.2 PID參數(shù)對系統(tǒng)性能的影響</p><p> 綜上所述,(Kp、Ti、Td,)對系統(tǒng)的性能影響如表3.3所示:&l
80、t;/p><p> 表3.3 Kp、Ti和Td對系統(tǒng)的影響</p><p> 3.4 PID計(jì)算程序 </p><p> PID調(diào)節(jié)規(guī)律的基本輸入輸出關(guān)系可用微分方程表示為:</p><p><b> ?。?.5)</b></p><p> 式中為調(diào)節(jié)器的輸入誤差信號,且</p>
81、;<p><b> ?。?.6)</b></p><p> 其中:為給定值,為被控變量;</p><p> 為調(diào)節(jié)器的輸出控制信號;</p><p><b> 為比例系數(shù);</b></p><p><b> 為積分時(shí)間常數(shù);</b></p>
82、<p><b> 微分時(shí)間常數(shù)。</b></p><p> 計(jì)算機(jī)只能處理數(shù)字信號,若采樣周期為T第n次采樣的輸入誤差為,且,輸出為,PID算法用的微分由差分代替,積分由代替,于是得到</p><p><b> ?。?.7)</b></p><p><b> 寫成遞推形式為</b>&l
83、t;/p><p><b> △</b></p><p><b> =</b></p><p><b> =</b></p><p><b> =</b></p><p><b> =</b></p&
84、gt;<p> = (3.8)</p><p> 其中: (3.9)</p><p><b> ?。?.10)</b></p><p><b> (3.11)&
85、lt;/b></p><p> 顯然,PID計(jì)算△只需要保留現(xiàn)時(shí)刻以及以前的兩個(gè)偏差量和。初始化程序初值通過采樣并根據(jù)參數(shù)、、以及、和計(jì)算△。</p><p> 根據(jù)輸出控制增量△,可求出本次控制輸出為</p><p> +△= (3.12)</p><p> 由于電阻爐一
86、般是屬于一階對象和滯后的一階對象,所以式中、、的選擇取決于電阻爐的階躍響應(yīng)曲線和實(shí)際經(jīng)驗(yàn),工程上已經(jīng)積累了不少行之的參數(shù)整定方法。本設(shè)計(jì)采用Ziegler-Nichols提出的 PID歸一調(diào)整法,調(diào)整參數(shù),主要是為了減少在線整定參數(shù)的數(shù)目,常常人為假定約束條件,以減少獨(dú)立變量的個(gè)數(shù),令:</p><p><b> ?。?.13)</b></p><p><b&g
87、t; ?。?.14)</b></p><p><b> ?。?.15)</b></p><p> 式中稱為臨界周期。在單純比例作用下(比例增益由小到大),是系統(tǒng)產(chǎn)生等幅振蕩的比例增益,這時(shí)的工作周期為臨界周期,則可以得到</p><p><b> △ =</b></p><p>&l
88、t;b> =</b></p><p> = (3.16)</p><p> 式中=0.2,=1.25[8] (3.17)</p><p> 從而可以調(diào)節(jié)的參數(shù)只有一個(gè)。可設(shè)計(jì)一個(gè)調(diào)整子程序,通過鍵盤輸入改變值,改變運(yùn)行參數(shù),使系統(tǒng)滿足要求。<
89、/p><p> 下面對PID運(yùn)算加以說明:</p><p> 所有的數(shù)都變成定點(diǎn)純小數(shù)進(jìn)行處理。</p><p> 算式中的各項(xiàng)有正有負(fù),以最高位作為符號位,最高位為0表示為正數(shù),為1表示</p><p> 負(fù)數(shù)。正負(fù)數(shù)都是補(bǔ)碼表示,最后的計(jì)算以原碼輸出。</p><p> 雙精度運(yùn)算,為了保證運(yùn)算精度,把單字節(jié)
90、8位輸入采樣值和給定值都變成雙字節(jié)16位進(jìn)行計(jì)算,最后將運(yùn)算結(jié)果取成高8位有效值輸出。</p><p> 輸出控制量的限幅處理。為了便于實(shí)現(xiàn)對晶閘管的通斷處理,PID的輸出現(xiàn)在在0~250之間。大于250或小于0的控制量都是沒有意義的,因在算法上對進(jìn)行限幅,即</p><p> = (3.18)</p><p> PID的計(jì)算公式采用位置式算法
91、,計(jì)算公式為</p><p><b> +</b></p><p> = (3.19)</p><p> PID計(jì)算的程序流程圖圖3.2所指示;而參數(shù)內(nèi)存分配表如表3.4所列。</p><p> 表3.4 參數(shù)內(nèi)存分配表<
92、/p><p> 圖3.2 PID計(jì)算程序的流程圖</p><p> 參照流程圖3.2編寫程序,程序如下:</p><p> MOVR5,31H </p><p> MOVR4, 32H</p><p> MOVR3, 2AH </p>
93、;<p> MOVR2, #00H</p><p> LACALLCPL1 </p><p> LCALLDSUM </p><p> MOV39H, R7 </p><p> MOV3AH
94、, R6</p><p> MOVR5, 35H </p><p> MOVR4, 36H</p><p> MOVR0, #4AH</p><p> LCALLMULT1 </p><p> MOV
95、R5,39H </p><p> MOVR4,3AH</p><p> MOVR3,3BH</p><p> MOVR2,3CH</p><p> LCALLDSUM</p><p> MOVR5,33H</p><p>
96、 MOVR4,34H</p><p> MOVR0, #46H</p><p> LCALLMULT1</p><p> MOVR5,49H</p><p> MOVR4,48H</p><p> MOVR3,4DH</p>&l
97、t;p> MOVR2,4CH</p><p> LCALLDSUM</p><p> MOV4AH,R7</p><p> MOV4BHR6</p><p> MOVR5,39H</p><p> MOVR4,3AH</p><
98、;p> MOVR3,3DH</p><p> MOVR2,3EH</p><p> LCALLDSUM</p><p> MOVA,R7</p><p> MOVR5,A</p><p> MOVA,R6</p><p>
99、; MOVR4,A</p><p> MOVR3,3BH</p><p> MOVR2,3CH</p><p> LCALLDSUM</p><p> MOVA,R7</p><p> MOVR5,A</p><p> MOV
100、A,R6</p><p> MOVR4,A</p><p> MOVR3,3BH</p><p> MOVR2,3CH</p><p> LCALLDSUM</p><p> MOVR5,37H</p><p> MOVR
101、4,38H</p><p> MOVR0, #46H</p><p> LCALLMULT1</p><p> MOVR5,49H</p><p> MOVR4,48H</p><p> MOVR3,4AH</p><p> M
102、OVR2,4BH</p><p> LCALLDSUM</p><p> MOVA,R7</p><p> MOVR3,A</p><p> MOVA,R6</p><p> MOVR2,A</p><p> MOVR5
103、,2FH</p><p> MOVR4,30H</p><p> LCALLDSUM</p><p> MOV2FH,R7</p><p> MOV30H,R6</p><p> MOV3DH,3BH</p><p> MOV3E
104、H,3CH</p><p> MOV3BH,39H</p><p> MOV3CH,3AH</p><p> MOVA,2FH</p><p> JNBACC.7CONt1</p><p> MOV45H,#00H</p><p>
105、;<b> RET</b></p><p> CONt1:MOVA,30H</p><p><b> RLCA</b></p><p> MOVA,2FH</p><p><b> RLCA</b></p><
106、;p> MOVR2,A</p><p> SUBBA,#OFAH</p><p> JNCCONt2</p><p> MOV45H,R2</p><p><b> RET</b></p><p> CONt2:MOV45H,#0
107、FAH</p><p><b> RET</b></p><p> 負(fù)數(shù)雙字節(jié)-(R3R2)求補(bǔ),結(jié)果仍存放于R3R2中,其子程序如下:</p><p> CPL1: MOVA,R2</p><p><b> CPLA</b></p><p>
108、 ADDA,#01H</p><p> MOVR2,A</p><p> MOVA,R3</p><p><b> CPLA</b></p><p> ADDCA,#00H</p><p> MOVR3,A</p><
109、p><b> RET</b></p><p> 雙字節(jié)加法(R5R4)+(R3R2)(R7R6)。其子程序如下:</p><p> DSUM:MOVA,R4</p><p> ADDA,R2</p><p> MOVR6,A</p><p> MO
110、VA,R5</p><p> ADDCA,R3</p><p> MOVR7, A</p><p><b> RET</b></p><p> 雙字節(jié)無符號乘法子程序:</p><p> 入口(R7R6)=被乘數(shù);</p><p> ?。?/p>
111、R5R4)=乘數(shù)。</p><p> 出口(R0)=乘積的4字節(jié)地址指針。</p><p> 工作寄存器 R3,R2。</p><p> 豎式乘法過程表示為:</p><p><b> R7 R6</b></p><p> ?。?R5 R4</p>&l
112、t;p> H64 L64R6R4</p><p> H74 L74R7R4</p><p> H74 L74R5R6 </p><p> +) H75 L75</p><p> ?。≧0+3) (R0+2) (R0+1) RO乘積存儲單元</p><p>
113、; MULT:MOVA,R6</p><p> MOVB,R4</p><p><b> MULAB</b></p><p> MOV@RO,A</p><p> MOVR3,B</p><p> MOVA,R4</p&g
114、t;<p> MOVB,R7</p><p><b> MULAB</b></p><p> ADDA,R3</p><p> MOVR3,A</p><p> MOVA,B</p><p> ADDCA,#00H&l
115、t;/p><p> MOVR2,A</p><p> MOVA,R6</p><p> MOVB,R5</p><p><b> MULAB</b></p><p> ADD A,R3</p><p><b&
116、gt; INCR0</b></p><p> MOV@RO,A</p><p><b> CLRF0</b></p><p> MOV A,R2</p><p> ADDC A,B</p><p> MOV R2
117、,A</p><p> JNC LAST</p><p> SETB F0</p><p> LAST: MOV A,R7</p><p> MOV B, R5</p><p> MUL AB</p><p>
118、 ADD A,R2</p><p> INC RO </p><p> MOV @RO, A</p><p> MOV A, B</p><p> ADDC A, #00H</p><p> INC R0</
119、p><p> MOV @R0, A</p><p><b> RET</b></p><p> 雙字節(jié)帶符號數(shù)乘法子程序:</p><p> 帶符號數(shù)用補(bǔ)碼表示,最高位1表示負(fù)數(shù),為0表示正數(shù).</p><p> 入口(R7R6)=被乘數(shù);</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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)的恒溫控制系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)
- 基于51單片機(jī)的高精度恒溫控制系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的恒溫控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)論文--基于單片機(jī)的自動恒溫控制系統(tǒng)的設(shè)計(jì)
- 畢業(yè)論文(或設(shè)計(jì))基于單片機(jī)恒溫控制系統(tǒng)的設(shè)計(jì)
- 單片機(jī)外文翻譯----at89c51單片機(jī)控制的恒溫水域溫控系統(tǒng)
- 基于單片機(jī)的恒溫控制系統(tǒng)的研究與開發(fā).pdf
- 基于單片機(jī)的水浴電鍋爐恒溫控制系統(tǒng)設(shè)計(jì).pdf
- 畢業(yè)設(shè)計(jì)---單片機(jī)恒溫控制
- 單片機(jī)畢業(yè)設(shè)計(jì)---基于單片機(jī)的恒溫控制器的設(shè)計(jì)
- 基于單片機(jī)的水溫控制系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)水溫控制系統(tǒng)
- 基于51單片機(jī)路燈控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的水溫控制系統(tǒng)設(shè)計(jì)論文
- 基于單片機(jī)控制的水溫控制系統(tǒng)的設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
- 基于51單片機(jī)的水溫控制器設(shè)計(jì)
評論
0/150
提交評論