2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  控制技術(shù)課程設(shè)計</b></p><p>  關(guān)于鍋爐溫度控制的系統(tǒng)設(shè)計</p><p>  該設(shè)計以單片機為控制器,對顯示電路,溫度檢測電路,人機接口電路,鍵盤電路,報警電路,執(zhí)行電路等主要電路進行具體設(shè)計,以實現(xiàn)鍋爐水溫的控制。</p><p>  所選硬件:51單片機、熱電阻Pt100、78M系列三端集成穩(wěn)壓

2、器、</p><p><b>  控制系統(tǒng)原理框圖</b></p><p>  圖 1 控制系統(tǒng)原理框圖</p><p>  系統(tǒng)電源選擇:主控電路所需的+5V電源;外圍電路(如繼電器、運算放大器)所需的+12V和-12V電源,這里考慮實際性價比、體積等因素后,選用了78M12、79M12、78M05三端穩(wěn)壓器提供相應(yīng)的穩(wěn)定電壓。</p

3、><p>  采用單片機最小系統(tǒng)原理</p><p>  51單片機的最小系統(tǒng)由單片機芯片、電源、時鐘電路、和復(fù)位電路組成。</p><p>  晶振時鐘電路用來產(chǎn)生時鐘信號,以提供單片機片內(nèi)各種數(shù)字邏輯電路工作的時間基準(zhǔn)。按鍵S6_1能實現(xiàn)手動復(fù)位,電容C6_1能實現(xiàn)上電復(fù)位,復(fù)位電路用來使片內(nèi)電路完成初始化的操作,具體功能是使程序計數(shù)器PC=0000H,引導(dǎo)程序從0

4、000H地址單元開始執(zhí)行; SFR中的21個特殊功能寄存器復(fù)位后的狀態(tài)是確定。</p><p>  圖2 單片機最小系統(tǒng)原理圖</p><p><b>  溫度信號測量電路</b></p><p>  如下圖,溫度信號測量處理電路,利用熱電阻Pt100作為溫度傳感器件,然后通過運算放大器OP-07構(gòu)建差分放大電路將溫度信號轉(zhuǎn)換成ADC0809

5、模擬通道的輸入標(biāo)準(zhǔn)電壓信號。將Pt100接入到電橋中,如圖6 溫度測量信號處理電路所示,由Pt100的阻值來反映鍋爐的溫度的變化,電橋輸出電壓為:Uba=Vcc[R1_4/( R1_2+R1_4)- R1_3/( R1_1+R1_3)] (其中下橋臂R1_3=100Ω,R1_4=1K,上橋臂R1_2=1K,Vcc=5V),所以Uba=5*[1K/( 1K+1K)- R1_3/( R1_1+100)]=2.5-5* 100/( R1_1+

6、100)</p><p>  其中AR1作用是將電橋電位Vb、Va作差分比例放大作用,由差分比例運算放大電路的計算方式:Auf = Uo1/(U1_ - U1+)=- R1_8/R1_6(其中R1_8=100K,R1_6=10K,U1_ - U1+=-Uba)從而得到:Uo1=10Uba=25-50* 100/( R1_1+100)。</p><p>  圖 3 溫度測量信號處理電路&

7、lt;/p><p>  查資料可得PT100鉑電阻的電阻-溫度關(guān)系線性度非常好,電阻-溫度的關(guān)系可以近似確實測量上限溫度,Uo1=25-50* 100/( R1_1+100),當(dāng)Uo1=5V時,可以計算出測量上限溫度時對應(yīng)的電阻為:150歐姆,查Pt100的分度表,可得:測量上限溫度為131℃,即當(dāng)t=0℃時,可得Uo1=0V;當(dāng)t=131℃時,可得Uo1=5V。</p><p><b&

8、gt;  A/D轉(zhuǎn)換單元</b></p><p>  經(jīng)過溫度信號測量處理電路后所得到的0—5V電壓模擬信號要經(jīng)過A/D轉(zhuǎn)換后才能送給單片機,如下溫度信號AD轉(zhuǎn)換電路圖所示,電壓模擬信號輸入給IN-0通道,轉(zhuǎn)換完成后,輸送給單片機的P0口。</p><p>  圖 4 溫度信號AD轉(zhuǎn)換電路圖</p><p>  其中ADC0809的A、B、C三個端

9、口作為它IN0-IN8八個輸入通道的選擇信號,由于此處只用到了IN0通道,所以將此A、B、C三個端口全部接地,電路中ADC0809的轉(zhuǎn)換結(jié)束信號引腳EOC接在單片機P3.5上,單片機啟動ADC0809的轉(zhuǎn)換后,延時一段時間,然后程序采取掃描方式檢測ADC0809是否轉(zhuǎn)換結(jié)束,單片機然后去檢測P3.5電平,當(dāng)接收到一個高電平時,發(fā)出一個READ信號,使得ADC0809輸出鎖存緩沖器開放,將數(shù)據(jù)輸送到數(shù)據(jù)線上,從而完成溫度數(shù)字信號的采集過程

10、。</p><p>  該控制系統(tǒng)的輸出模塊</p><p>  該控制系統(tǒng)的輸出單元主要有三個:(1) 繼電器輸出控制加熱執(zhí)行機構(gòu)的開與關(guān)。(2)當(dāng)水溫高于上限溫度和低于下限溫度時,系統(tǒng)進行聲光報警。(3)數(shù)碼管用于顯示用戶設(shè)定的溫度、上限溫度、下限溫度和當(dāng)前溫度值。</p><p><b>  繼電器輸出</b></p>&l

11、t;p>  加熱執(zhí)行機構(gòu)的開與關(guān)狀態(tài)由固態(tài)繼電器來控制,如下圖所示。</p><p>  圖 5 固態(tài)繼電器輸出電路</p><p>  當(dāng)系統(tǒng)采集到溫度信號后與設(shè)定溫度進行比較得到一個偏差,然后通過PID運算,從單片機P1.0口輸出一個PWM波,PWM波形的高電平期間,固態(tài)繼電器SSR輸入端IN1為高電平,從而OUT1和OUT2兩觸點閉合,將加熱執(zhí)行機構(gòu)加熱絲連入到交流2

12、20V回路中,控制加熱機構(gòu)對鍋爐進行加熱動作,與此同時工作指示燈LED點亮。PWM波形低電平期間,SSR輸入端IN1為低電平,從而OUT1和OUT2兩觸點斷開,將加熱執(zhí)行機構(gòu)加熱絲從220V回路中切斷,控制加熱機構(gòu)對鍋爐停止加熱,與此同時工作指示燈LED點熄滅。</p><p>  關(guān)于選用固態(tài)繼電器SSR</p><p>  由于本系統(tǒng)加熱執(zhí)行機構(gòu)的開與關(guān)狀態(tài)交替比較頻繁,一般的機械式繼

13、電器在這種工作模式下使用壽命大大降低,所以難以滿足這一要求,考慮各種因素選用固態(tài)繼電器SSR。與一般機械式繼電器相比,固態(tài)繼電器有如下優(yōu)點:</p><p>  高壽命,高可靠、 靈敏度高,控制功率小,電磁兼容性好: 快速轉(zhuǎn)換 、電磁干擾小</p><p><b>  聲光報警電路</b></p><p>  如聲光報警電路圖所示, 聲光報警電

14、路所示:當(dāng)水溫高于上限溫度、低于下限溫度或者在誤輸入時,單片機P1.1口給warn一個低電平信號來導(dǎo)通三極管8550以驅(qū)動蜂鳴器和LED燈,進行系統(tǒng)聲光報警。當(dāng)溫度恢復(fù)到設(shè)置范圍內(nèi)后,聲光報警自動撤銷。</p><p>  圖 6 聲光報警電路</p><p><b>  顯示電路</b></p><p>  用于顯示用戶設(shè)定的溫度

15、、上限溫度、下限溫度和當(dāng)前溫度值等,精確到小數(shù)點后一位。如下圖所示,單片機的P2口輸出段選編碼,P3.0、P3.1、P3.2、P3.3分別為四位數(shù)碼管的位選編碼。</p><p>  當(dāng)其中位選編碼輸出低電平時,三極管8550導(dǎo)通,使得共陽極數(shù)碼管公共端得到一個高電平,同時P2口輸出相應(yīng)的要顯示的數(shù)字共陽極字型碼并通過74HC573將段碼信號鎖存輸出。</p><p>  圖 7 溫度

16、數(shù)碼管顯示</p><p><b>  3.6 鍵盤電路</b></p><p>  鍵盤是用來給用戶提供設(shè)置設(shè)定溫度上限值、下限值、顯示溫度等功能。如下圖,</p><p>  圖 8 鍵盤電路及功能說明</p><p>  當(dāng)按鍵沒有被按下時,P1.3-P1.7通過下拉電阻接地,單片機此時檢測的電平是低電平,當(dāng)

17、有鍵按下時,對應(yīng)P1.3-P1.7中的引腳與VCC接通,單片機此時檢測的電平是高電平。</p><p>  鍋爐溫度控制系統(tǒng)軟件設(shè)計</p><p><b>  主程序流程圖及分析</b></p><p>  在鍋爐溫度控制系統(tǒng)中,主程序的功能主要是實現(xiàn)初始化,溫度采集A/D轉(zhuǎn)換,溫度值</p><p><b>

18、;  開始</b></p><p><b>  是否滿足報警條件?</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  是否有按鍵?</b></p><p>

19、;<b>  Y</b></p><p>  圖 9 主程序流程圖</p><p>  溫度值顯示,將實際溫度與設(shè)定值進行比較進行PID運算,輸出PWM波形控制SSR并判斷是否要啟動報警,反復(fù)對鍵盤進行掃描從而更新溫度參數(shù)設(shè)置、顯示。圖18是系統(tǒng)分配裝置的主程序流程圖。</p><p><b>  子程序流程圖及分析<

20、/b></p><p>  本系統(tǒng)子程序主要有:數(shù)碼管顯示程序、AD轉(zhuǎn)換程序、鍵盤掃描程序、PID控制算法子程序。</p><p><b>  開始</b></p><p><b>  四位是否全部顯示?</b></p><p>  圖 10 數(shù)碼管顯示程序操作流程圖</p>

21、<p><b>  開始</b></p><p>  N 轉(zhuǎn)換是</p><p><b>  否完成?</b></p><p><b>  Y</b></p><p>  圖 11 A/D轉(zhuǎn)換程序操作流程圖</p><p>

22、;<b>  是否有按鍵?</b></p><p><b>  Y</b></p><p><b>  是否有按鍵?</b></p><p><b>  按鍵已釋放?</b></p><p>  圖 12 按鍵檢測與處理流程圖</p><

23、;p><b>  開始</b></p><p><b>  返回</b></p><p>  圖 13 PID控制算法程序流程圖</p><p><b>  單片機溫度控制程序</b></p><p>  程序:LCD2402.ASM 01 ; ――――――――――――

24、―――――――――――――――――――</p><p>  02 ; 溫度值存放單元 </p><p>  03 TEMP_ZH EQU 24H ;實時溫度值存放單元</p><p>  04 TEMPL EQU 25H ;低溫度值存放單元</p><p>  05 TEMPH EQU 26H ;高溫度值存放單元</p><

25、;p>  06 TEMP_TH EQU 27H ;高溫報警值存放單元</p><p>  07 TEMP_TL EQU 28H ;低溫報警值存放單元</p><p>  08 TEMPHC EQU 29H ;存十位數(shù) BCD 碼 </p><p>  09 TEMPLC EQU 2AH ;存?zhèn)€位數(shù) BCD 碼</p><p>  10

26、;―――――――――――――</p><p>  11 按鍵輸入引腳定義 </p><p>  12 K1 EQU P2.1 </p><p>  13 K2 EQU P2.2 </p><p>  14 K3 EQU P2.3 </p><p>  15 K4 EQU P2.4</p><p>

27、;  16 ;――――――――――――― </p><p>  17 SPK EQU P3.4 ;蜂鳴器引腳 </p><p>  18 RELAY EQU P2.0 ;繼電器引腳 </p><p>  19 X EQU 2FH ;LCD 地址變量 </p><p>  20 ;――――――――――――― </p><p&

28、gt;  21 ;LCD 控制引腳 </p><p>  22 RS EQU P3.5 </p><p>  23 RW EQU P3.6 </p><p>  24 E EQU P3.7 </p><p>  25 ;――――――――――――― </p><p>  26 FLAG EQU 20H.0 ;DS18B2

29、0 是否存在標(biāo)記 </p><p>  27 KEY_UD EQU 20H.1 ;設(shè)定 KEY 的 UP 與 DOWN 標(biāo)記 </p><p>  28 DQ EQU P2.5 </p><p><b>  29 </b></p><p>  30 ;============= 主程序 ============== &l

30、t;/p><p><b>  31 </b></p><p><b>  32 MAIN:</b></p><p>  33 ACALL SET_LCD ;LCD 初始化設(shè)置子程序 </p><p>  34 ACALL WR_THL ;將報警上下線寫入暫存寄存器子程序 </p><

31、p>  35 TOOP: ACALL RESET_1820 ;調(diào)用 18B20 復(fù)位子程序</p><p>  36 JNB FLAG,TOOP1 ;DS1820 不存在轉(zhuǎn)移 TOOP1 處</p><p>  37 ACALL MEU_OK ;調(diào)用顯示"OK"信息子程序</p><p>  38 ACALL RE_THL ;把 EEROM

32、 里溫度報警值拷貝回暫存器 </p><p>  39 ACALL TEMP_BJ ;顯示溫度標(biāo)記"℃" </p><p>  40 JMP TOOP2 41 TOOP1: ACALL MEU_ERROR ;顯示"ERROR"信息</p><p>  42 ACALL TEMP_BJ ;顯示溫度標(biāo)記 43 JMP $ ;等待

33、</p><p>  44 ;―――――――――――――― </p><p><b>  45 TOOP2:</b></p><p>  46 ACALL RE_TEMP ;調(diào)用讀取溫度數(shù)據(jù)子程序 </p><p>  47 ACALL SET_DATA ;調(diào)用處理顯示溫度數(shù)據(jù)子程序</p><p&g

34、t;  48 ACALL TEMP_COMP ;實際溫度值與標(biāo)記溫度值比較子程序</p><p>  49 ACALL P_KEY ;調(diào)用按鍵掃描子程序 </p><p>  50 SJMP TOOP2 ;循環(huán)</p><p><b>  51</b></p><p>  52 ;--------―― 讀取溫度數(shù)據(jù)子程序

35、 --------―― </p><p>  53 RE_TEMP: 54 ACALL RESET_1820 ;18B20 復(fù)位子程序</p><p>  55 JNB FLAG,TOOP1 ;DS1820 不存在</p><p>  56 MOV A,#0CCH ;跳過 ROM 匹配 </p><p>  57 ACALL WRITE_18

36、20 ;寫入子程序</p><p>  58 MOV A,#44H ;發(fā)出溫度轉(zhuǎn)換命令 </p><p>  59 ACALL WRITE_1820 ;調(diào)寫入子程序</p><p>  60 ACALL RESET_1820 ;調(diào)復(fù)位子程序</p><p>  61 MOV A,#0CCH ;跳過 ROM 匹配 </p><

37、;p>  62 ACALL WRITE_1820 ;寫入子程序</p><p>  63 MOV A,#0BEH ;發(fā)出讀溫度命令 </p><p>  64 ACALL WRITE_1820 ;寫入子程序 </p><p>  65 ACALL READ_1820 ;調(diào)用讀取子程序 </p><p><b>  66 RET

38、</b></p><p><b>  67 </b></p><p>  68 ;-------- 溫度數(shù)據(jù)處理顯示子程序---------- </p><p>  69 SET_DATA: </p><p>  70 ACALL CONV_TEMP ;處理溫度 BCD 碼子程序</p><

39、;p>  71 ACALL DISP_BCD ;顯示區(qū) BCD 碼溫度值刷新子程序 </p><p>  72 ACALL CONV ;LCD 顯示子程序 </p><p><b>  73 RET </b></p><p><b>  74 </b></p><p>  75;-------

40、---- 按鍵鍵掃描子程序 ----------</p><p>  76 P_KEY: ;按鍵 K1 處理 </p><p>  77 JB K1, PK1 ;K1 鍵未按,轉(zhuǎn)到 PK1 處 </p><p>  78 ACALL SPK_BZ ;K1 鍵按下,一聲鳴響</p><p>  79 JNB K1,$ ;等按鍵放開</p&

41、gt;<p>  80 MOV DPTR,#M_ALAX1 ;存 M_ALAX1 表 </p><p>  81 MOV A,#1 82 ACALL LCD_PRINT ;顯示字符</p><p>  83 ACALL LOOK_ALARM ;顯示信息區(qū)子程序 </p><p>  84 JB K3, $ ;等待 K3 按下</p>&l

42、t;p>  85 ACALL SPK_BZ ;一聲鳴響 </p><p>  86 JMP PK2 ;轉(zhuǎn)到標(biāo)號 PK2 處 </p><p>  87 PK1: ; 按鍵 K2 處理 </p><p>  88 JB K2, PK3 ;K2 鍵未按,轉(zhuǎn)到 PK3 處 </p><p>  89 ACALL SPK_BZ ;K2 鍵按下,

43、一聲鳴響 </p><p>  90 JNB K2,$ ;等按鍵放開</p><p>  91 MOV DPTR, #TA1 ;存#TA1 表 </p><p>  92 MOV A,#1</p><p>  93 ACALL LCD_PRINT ;顯示字符 </p><p>  94 ACALL SET_ALARM

44、;設(shè)定報警值 TH、TL</p><p>  95 ACALL WR_THL ;將設(shè)定的 TH,TL 值寫入 DS18B20 內(nèi) </p><p>  96 ACALL WRITE_E2 ;調(diào)用報警值拷貝 EEROM 子程序 </p><p><b>  97 PK2: </b></p><p>  98 ACALL M

45、EU_OK ;顯示"OK"信息子程序</p><p>  99 ACALL TEMP_BJ ;顯示溫度標(biāo)記子程序 </p><p><b>  100 PK3:</b></p><p><b>  101 RET</b></p><p>  102 ;―――――――――――――

46、</p><p>  103 TA1: ;菜單表 </p><p>  104 DB "RESET ALERT CODE" </p><p>  105 ;―――――――――――――</p><p><b>  106</b></p><p>  107 ;---------

47、設(shè)定報警值 TH、TL 子程序 -------- </p><p>  108 SET_ALARM:</p><p>  109 ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序 </p><p>  110 A0: JB K1,A2 ;按下 K1(查看鍵),</p><p>  程序向下運行 111 ACALL SPK_BZ ;蜂鳴

48、器響一聲 </p><p>  112 JNB K1,$ ;等放開</p><p>  113 CPL 20H.1 ;UP/DOWN 標(biāo)記反向 </p><p>  114 A2: JB 20H.1,A3 ;20H.1=1,UP,轉(zhuǎn)移到 A3。</p><p>  115 JMP A8 ;20H.1=0,DOWN,轉(zhuǎn)移到 A8</p&g

49、t;<p>  116 ;――――――――――――― </p><p>  117 ; TH 值調(diào)整(增加)</p><p>  118 A3: JB K2, A5 ;按下 K2(設(shè)定鍵),程序向下運行</p><p>  119 ACALL SPK_BZ ;蜂鳴器響一聲</p><p>  120 INC TEMP_TH ;T

50、H 值調(diào)整(增加)</p><p>  121 MOV A,TEMP_TH ;TH 值送入 A </p><p>  122 CJNE A,#120,A4 ;TH 值增到 120,程序向下運行 </p><p>  123 MOV TEMP_TH,#0 ;TH 值清 0 </p><p>  124 A4: ACALL LOOK_ALARM

51、;調(diào)用顯示信息區(qū)子程序 </p><p>  125 MOV R5, #10</p><p>  126 ACALL DELAY ;調(diào)用延時程序 </p><p>  127 JMP A3 ;循環(huán) </p><p>  128 ;――――――――――――― </p><p>  129 ;TL 值調(diào)整(增加) <

52、/p><p>  130 A5: JB K3,A7 ;按下 K3(TL 值設(shè)定鍵)程序向下運行</p><p>  131 ACALL SPK_BZ ;蜂鳴器響一聲</p><p>  132 INC TEMP_TL ;TL 值增加 1 </p><p>  133 MOV A, TEMP_TL ;TL 值送入 A </p><

53、;p>  134 CJNE A,#99,A6 ;比較,若 A=99,程序向下運行 </p><p>  135 MOV TEMP_TL,#00H ;TL 值清 0 </p><p>  136 A6: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序 </p><p>  137 MOV R5, #10 </p><p>  1

54、38 ACALL DELAY ;調(diào)用延時程序 </p><p>  139 JMP A5 ;程序轉(zhuǎn)移到 A5,循環(huán)</p><p>  140 ;――――――――――――― </p><p>  141 ;確定調(diào)整 OK</p><p>  142 A7: JB K4, A0 ;按下 K4(調(diào)整確定鍵),程序向下運行</p>&

55、lt;p>  143 ACALL SPK_BZ ;蜂鳴器響一聲 </p><p>  144 JNB K4, $ ;等放開 </p><p>  145 RET ;程序返回 </p><p>  146 ;――――――――――――― </p><p>  147 ;TH 值調(diào)整 (減少) </p><p>  1

56、48 A8: JB K2, A10 ;按下 K2(設(shè)定鍵),程序向下運行 </p><p>  149 ACALL SPK_BZ ;蜂鳴器響一聲 </p><p>  150 DEC TEMP_TH ;TH 值減 1</p><p>  151 MOV A,TEMP_TH ;TH 值送入 A </p><p>  152 CJNE A,#0F

57、FH,A9 ;比較,若 A=0FF,程序向下運行 </p><p>  153 JMP A12 ;轉(zhuǎn)移到 A12 </p><p>  154 A9: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序</p><p>  155 MOV R5, #10 </p><p>  156 ACALL DELAY ;調(diào)用延時子程序 </

58、p><p>  157 JMP A0 ;轉(zhuǎn)移到 A12</p><p>  158 ;―――――――――――――― </p><p>  159 ;TL 值調(diào)整(減少) </p><p>  160 A10: JB K3, A13 ;按 K3(TL 值設(shè)定鍵),程序向下運行 </p><p>  161 ACALL SPK

59、_BZ ;蜂鳴器響一聲</p><p>  162 DEC TEMP_TL ;TL 值減 1</p><p>  163 MOV A,TEMP_TL ;TH 值送入 A </p><p>  164 CJNE A,#0FFH,A11 ;比較,若 A=0FF,程序向下運行</p><p>  165 JMP A12 ;轉(zhuǎn)移到 A12 </

60、p><p>  166 A11: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序</p><p>  167 MOV R5, #10 </p><p>  168 ACALL DELAY ;調(diào)用延時子程序 </p><p>  169 JMP A0 ;轉(zhuǎn)移到 A0 </p><p>  170 A12: CPL

61、20H.1 ;UP/DOWN 標(biāo)記反向 </p><p>  171 JMP A3 ;轉(zhuǎn)移到 A3 ,TH 值調(diào)整(增加)</p><p>  172 A13: JMP A7 ;轉(zhuǎn)移到 A7 ,確定調(diào)整 OK </p><p>  173 RET ;子程序返回 </p><p><b>  174 </b></p&

62、gt;<p>  175 ;---------- 顯示信息區(qū)子程序 ----------- </p><p>  176 LOOK_ALARM: </p><p>  177 MOV DPTR,#M_ALAX2 ;存表</p><p>  178 MOV A,#2 ;顯示在第二行 </p><p>  179 ACALL LCD

63、_PRINT ;調(diào)用顯示字符子程序 </p><p>  180 MOV A,#0C6H ;顯示起始地址為第二行第 7 位</p><p>  181 ACALL TEMP_BJ1 ;調(diào)用顯示溫度標(biāo)記子程序 </p><p>  182 MOV A,TEMP_TH ;加載 TH 數(shù)據(jù) </p><p>  183 MOV X,#3 ;設(shè)置位置

64、</p><p>  184 ACALL SHOW_LINE2H ;顯示數(shù)據(jù) </p><p>  185 ;――――――――――――― </p><p>  186 MOV A,#0CEH ;設(shè)定顯示起始地址為第二行第 15 位</p><p>  187 ACALL TEMP_BJ1 ;調(diào)用顯示溫度標(biāo)記子程序 </p>&l

65、t;p>  188 MOV A,TEMP_TL ;加載 TL 數(shù)據(jù) 189 MOV X,#12 ;設(shè)置位置 </p><p>  190 ACALL SHOW_LINE2L ;顯示數(shù)據(jù) </p><p><b>  191 RET </b></p><p>  192 ;―――――――――――――― </p><p&g

66、t;  193 M_ALAX1:</p><p>  194 DB " LOOK ALERT CODE",0 </p><p>  195 M_ALAX2: </p><p>  196 DB "TH: TL: ",0 </p><p>  197 ;―――――――――――――― </p>

67、<p>  198 ;――――――顯示溫度標(biāo)記子程序―――――― </p><p>  199 TEMP_BJ1: </p><p>  200 ACALL WR_COMM ;調(diào)用寫指令子程序 </p><p>  201 MOV DPTR,#BJ2 ;存代碼表</p><p>  202 MOV R1,#0 ;使指針指到表中第一

68、個碼</p><p>  203 MOV R0,#2 ;取碼次數(shù) </p><p>  205 B0: MOV A,R1 ;A 為 0 </p><p>  206 MOVC A,@A+DPTR ;讀取碼 </p><p>  207 ACALL WR_DATA ;調(diào)用寫數(shù)據(jù)子程序</p><p>  208 INC

69、R1 ;R1 值加 1 </p><p>  209 DJNZ R0,B0 ;判斷是否將代碼讀取完? </p><p><b>  210 RET</b></p><p>  211 ;――――――――――――― </p><p>  212 BJ2: ;代碼表 </p><p>  213 DB

70、 00H,"C" </p><p>  214 ;――――――――――――― </p><p><b>  215 </b></p><p>  216 ;―――――在 LCD 的第二行顯示高溫數(shù)字―――― </p><p>  217 SHOW_LINE2H: </p><p&g

71、t;  218 MOV B,#100 ;設(shè)置被除數(shù),B 為百位數(shù) </p><p>  219 DIV AB ;除法運算,結(jié)果 A 存商數(shù),B 存余數(shù)</p><p>  220 ADD A,#30H ;低半字節(jié)加 30 得到 ASCII 碼(轉(zhuǎn)換為字符)</p><p>  221 PUSH B ;B 放入堆棧暫存起來</p><p>  

72、222 MOV B,X ;設(shè)置 LCD 顯示的位置 </p><p>  223 ACALL LCDP2 ;由 LCD 顯示出來 </p><p>  224 ;―――――――――――――</p><p>  225 POP B ;B 由堆棧取出來 </p><p>  226 MOV A,#0AH ;A 賦值 10 </p>

73、<p>  227 XCH A,B ;A、B 數(shù)據(jù)互換,B 為十位數(shù)</p><p>  228 DIV AB ;除法運算,結(jié)果 A 存商數(shù),B 存余數(shù)</p><p>  229 ADD A,#30H ;轉(zhuǎn)換為字符</p><p>  230 INC X ;LCD 顯示位位置加 1</p><p>  231 PUSH B ;B

74、放入堆棧暫存起來 </p><p>  232 MOV B,X ;設(shè)置 LCD 顯示的位置 </p><p>  233 ACALL LCDP2 ;由 LCD 顯示出來 </p><p>  234 ;――――――――――――― </p><p>  235 POP B ;B 由堆棧取出來 </p><p>  236

75、 INC X ;LCD 顯示位位置加 1 </p><p>  237 MOV A,B ;B 為個位數(shù) </p><p>  238 MOV B,X ;設(shè)置 LCD 顯示的位置 </p><p>  239 ADD A,#30H ;轉(zhuǎn)換為字符</p><p>  240 ACALL LCDP2 ;由 LCD 顯示出來</p>&

76、lt;p><b>  241 RET</b></p><p><b>  242 </b></p><p><b>  調(diào)試</b></p><p>  在硬件設(shè)計和軟件設(shè)計完成以后,就是系統(tǒng)調(diào)試環(huán)節(jié),本次設(shè)計的調(diào)試是在多功能單片機實驗板上完成。借助于多功能單片機實驗板,利用實驗板上的5個獨立按

77、鍵、四位數(shù)碼管顯示,蜂鳴器和發(fā)光二極管、再連接上Pt100組建成電橋,用小水箱裝適量水模擬成一個電鍋爐,用電熱絲通過固態(tài)繼電器SSR串接在220V交流電源上準(zhǔn)備對水箱里的水進行加熱。</p><p>  整個實驗調(diào)試過程和現(xiàn)象如下:</p><p>  當(dāng)實驗板通電后,數(shù)碼顯示當(dāng)前溫度(當(dāng)時未處理的水溫為24.6℃),按下“功能鍵”一次后進入溫度設(shè)定值的修改中,此時LED顯示初始化程序中一

78、開始保存的溫度設(shè)定初始值25℃,通過“位選鍵”、“加一鍵”和“減一鍵”將溫度設(shè)定值為80℃;再按下“功能鍵”一次后進入溫度上限值修改中,此時顯示初始化程序中一開始保存的溫度設(shè)定上限值50℃,用同樣的方法將溫度上限值設(shè)為90℃;再按下“功能鍵”一次后進入溫度下限值修改中,因為當(dāng)前模擬鍋爐中的水未經(jīng)處理,未避免不必要的聲光報警,先暫時將下限溫度設(shè)置為低當(dāng)前水溫的值。設(shè)置完畢后,按下“確定鍵”單片機把所有設(shè)置參數(shù)保存在相應(yīng)的存儲單元中并且LE

79、D返回到顯示當(dāng)前水溫度的狀態(tài),然后固態(tài)繼電器SSR受PWM波的控制進入長時間開啟狀態(tài),加熱絲對水箱里的水加熱。當(dāng)溫度靠近80℃時,加熱絲在每個周期中的加熱時間逐漸減短。直到達(dá)到一個80℃水溫的平衡狀態(tài)。然后進入下限溫度設(shè)置中,將下限值設(shè)為70℃。</p><p>  接下來,調(diào)試超過上限溫度聲光報警,在水箱中再加入另外一個加熱絲將水箱中的溫度進行加熱,使水箱的溫度顯示往上加,當(dāng)溫度值一旦高于90℃,實驗板上的蜂鳴

80、器和LED進行聲光報警,撤掉后面添加的加熱絲,往水箱中緩慢地均勻加入冷水,觀察到的現(xiàn)象是,當(dāng)溫度低于90℃后,聲光報警立即自動撤消,系統(tǒng)進入正常恒溫狀態(tài)。</p><p>  最后,調(diào)試低于下限溫度聲光報警,將固態(tài)繼電器SSR連接的加熱絲斷開,往水箱中緩慢地均勻加入冷水,觀察到的現(xiàn)象是,當(dāng)溫度低于70℃后,聲光報警立即停止,然后在水箱中加入另外一個加熱絲將水箱中的溫度進行加熱,使水箱的溫度顯示往上加,當(dāng)溫度值一旦

81、達(dá)到80℃,聲光報警立即自動撤消。</p><p>  通過以上整個調(diào)試過程,可知此系統(tǒng)硬件和軟件能夠達(dá)到預(yù)期的自動控制要求。</p><p>  該溫度控制系統(tǒng)指標(biāo)如下:</p><p>  用單片機作為控制器,采用模塊設(shè)計方法,對系統(tǒng)硬件、軟件進行詳細(xì)的設(shè)計</p><p>  鍋爐溫度控制在0-100℃左右。</p>&l

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論