溫度控制系統(tǒng)資料
溫度控制系統(tǒng)資料,溫度,控制系統(tǒng),資料
微型計(jì)算機(jī)控制技術(shù)課程設(shè)計(jì) 電阻爐溫度控制系統(tǒng)
摘要:本設(shè)計(jì)采用直接數(shù)字控制(DDC)對加熱爐進(jìn)行控制,使其溫度穩(wěn)定在在某一個(gè)值上。并且具有鍵盤輸入溫度給定值,LED數(shù)碼管顯示溫度值和溫度達(dá)到極限時(shí)提醒操作人員注意的功能。
一. 概述
溫度是工業(yè)生產(chǎn)中常見的工藝參數(shù)之一,任何物理變化和化學(xué)反應(yīng)過程都與溫度密切相關(guān),因此溫度控制是生產(chǎn)自動(dòng)化的重要任務(wù)。對于不同生產(chǎn)情況和工藝要求下的溫度控制,所采用的加熱方式,燃料,控制方案也有所不同。例如冶金、機(jī)械、食品、化工等各類工業(yè)生產(chǎn)中廣泛使用的各種加熱爐、熱處理爐、反應(yīng)爐等;燃料有煤氣、天然氣、油、電等;控制方案有直接數(shù)字控制(DDC),推斷控制,預(yù)測控制,模糊控制(Fuzzy),專家控制(Expert Control),魯棒控制(Robust Control),推理控制等。
本設(shè)計(jì)的控制對象為一電加熱爐,輸入為加在電阻絲兩斷的電壓,輸出為電加熱爐內(nèi)的溫度。輸入和輸出的傳遞函數(shù)為:G(s)=2/(s(s+1))??販胤秶鸀?00~500℃,所采用的控制方案為直接數(shù)字控制(DDC)中的最少拍控制。
二.溫度控制系統(tǒng)的組成框圖
采用典型的反饋式溫度控制系統(tǒng),組成部分見下圖。其中數(shù)字控制器的功能由微型機(jī)算機(jī)實(shí)現(xiàn)。
三. 溫度控制系統(tǒng)結(jié)構(gòu)圖及總述
A/D
數(shù)字濾波
I/V
4~20mA變送器
定時(shí)計(jì)數(shù)器
SCR觸發(fā)回路
電
加
熱
爐
SCR主回路
8086
CPU
圖中由4~20mA變送器,I/V,A/D轉(zhuǎn)換器構(gòu)成輸入通道,用于采集爐內(nèi)的溫度信號(hào)。其中,變送器選用XTR101,它將熱電偶信號(hào)(溫度信號(hào))變?yōu)?~20mA電流輸出,再由高精密電流/電壓變換器RCV420將4~20mA電流信號(hào)變?yōu)?~5V標(biāo)準(zhǔn)電壓信號(hào),以供A/D轉(zhuǎn)換用。轉(zhuǎn)換后的數(shù)字量與與爐溫的給定值數(shù)字化后進(jìn)行比較,即可得到實(shí)際爐溫和給定爐溫的偏差。爐溫的設(shè)定值由鍵盤輸入。由微型計(jì)算機(jī)構(gòu)成的數(shù)字控制器按最小拍進(jìn)行運(yùn)算,計(jì)算出所需要的控制量。數(shù)字控制器的輸出經(jīng)標(biāo)度變換后送給8253,由8253定時(shí)計(jì)數(shù)器轉(zhuǎn)變?yōu)楦叩碗娖降牟煌掷m(xù)時(shí)間,送至SCR觸發(fā)電路,觸發(fā)晶閘管并改變其導(dǎo)通角大小,從而控制電加熱爐的加熱電壓,起到調(diào)溫的作用。
四. 溫度控制系統(tǒng)硬件與其詳細(xì)功能介紹
1. 微型計(jì)算機(jī)的選擇
選擇8086微處理器構(gòu)成爐溫控制系統(tǒng),使其工作于最小方式下。并配備以8284A——時(shí)鐘發(fā)生器,8282——帶三態(tài)緩沖器的通用8位地址鎖存器,8286——具有三態(tài)輸出的8位雙極型總線收發(fā)器。其中,時(shí)鐘發(fā)生器8284A為CPU提供時(shí)鐘信號(hào),經(jīng)時(shí)鐘同步的系統(tǒng)復(fù)位信號(hào)RESET和準(zhǔn)備就緒信號(hào)READY;地址鎖存器8282是針對于8086CPU地址/數(shù)據(jù)線分時(shí)復(fù)用而設(shè)計(jì)配備的,它可以在8086CPU總線周期的T1狀態(tài),利用ALE信號(hào)的下降沿將地址信息鎖存于其中;總線收發(fā)器8286是為了提高8086CPU數(shù)據(jù)總線的驅(qū)動(dòng)能力
2. SCR觸發(fā)回路和主回路
如圖所示為一晶閘管觸發(fā)電路。包括脈沖觸發(fā)器(單穩(wěn)態(tài)電路,由IC1和IC2組成),控制門,光電耦合器4N25,放大器和雙向晶閘管。由全波整流電路得到的同步電壓使晶體管BG1每半波導(dǎo)通一次。當(dāng)控制端為“1”高電平的時(shí)候,BG1的每次導(dǎo)通都會(huì)經(jīng)由單穩(wěn)電路由IC2輸出一個(gè)負(fù)脈沖,該脈沖經(jīng)IC3反向后由光電耦合器和放大電路發(fā)大后觸發(fā)晶閘管,在這一半周內(nèi)晶閘管基本上處于全導(dǎo)通狀態(tài)。若控制端為“0”低電平的時(shí)候,則單穩(wěn)態(tài)電路不輸出脈沖,在這一半周內(nèi)晶閘管也不導(dǎo)通。因此,可以改變控制端的電平,控制單穩(wěn)態(tài)電路每秒輸出的脈沖數(shù),從而改變晶閘管每秒鐘內(nèi)導(dǎo)通的時(shí)間,達(dá)到調(diào)壓的目的。與以下的電路相比較
第一個(gè)電路的優(yōu)點(diǎn)在于晶閘管導(dǎo)通時(shí)基本處于全導(dǎo)通狀態(tài),因此波形較好,包含的諧波成分較少,因此對系統(tǒng)的干擾也較小。而第二個(gè)電路的缺點(diǎn)是加熱電阻兩端電壓波形很差,包含了較多的諧波成分,當(dāng)晶閘關(guān)導(dǎo)通角較小時(shí)由為如此,這些些波電壓可能會(huì)對周圍系統(tǒng)產(chǎn)生影響。
3. 熱電偶的選擇
熱電偶是常用的測溫元件,它利用不同材料的導(dǎo)體一端緊密連接在一起產(chǎn)生的熱電勢效應(yīng)將溫度信號(hào)轉(zhuǎn)換為電勢信號(hào)。本設(shè)計(jì)采用K型熱電偶——鎳絡(luò)-鎳硅(線性度較好,熱電勢較大,靈敏度較高,穩(wěn)定性和復(fù)現(xiàn)性較好,抗氧化性強(qiáng),價(jià)格便宜)對溫度進(jìn)行檢測,參比端溫度為20℃。由以下公式可以計(jì)算出K型熱電偶分別在100℃,200℃,300℃,400℃,500℃時(shí)候的輸出電勢:
E(100,20)=E(100,0)-E(20,0)=4.096mV-0.798 mV=3.298 mV
E(200,20)=E(200,0)-E(20,0)=8.138mV-0.798 mV=7.34 mV
E(300,20)=E(300,0)-E(20,0)=12.209mV-0.798 mV=11.411 mV
E(400,20)=E(400,0)-E(20,0)=16.397mV-0.798 mV=15.599 mV
E(500,20)=E(500,0)-E(20,0)=20.644mV-0.798 mV=19.846 mV
4. 4~20mA變送器XTR101
XTR101為4~20mA線性化變送器,它可與鎳絡(luò)-鎳硅測溫傳感器構(gòu)成精密的T/I變換。器件中的放大器適合很寬的測溫范圍,在-40℃~+85℃的工作溫度內(nèi),傳送電流的總誤差不超過1%,供電電源可以從11.6V到40V,輸入失調(diào)電壓<±2.5mV,輸入失調(diào)電流<20nA。XTR101外形采用標(biāo)準(zhǔn)的14腳DIP封裝。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
XTR101有如下兩種應(yīng)用于轉(zhuǎn)換溫度信號(hào)的典型電路:
5. I/V轉(zhuǎn)換器RCV420
RCV420是一種精密電流/電壓變換器,它能將4~20mA的環(huán)路電流變?yōu)?~5V的電壓輸出,并且具有可靠的性能和很低的成本。除具有精密運(yùn)放和電阻網(wǎng)絡(luò)外,還集成有10V基準(zhǔn)電源。對環(huán)路電流由很好的變換能力。具有-25℃~+85℃和0℃~70℃的工作溫度范圍,輸入失調(diào)電壓<1mA,總的變換誤差<0.1%,電源電壓范圍±5~±18V。RCV420的外形采用標(biāo)準(zhǔn)的16腳DIP封裝。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
它的典型應(yīng)用如下:
6 .A/D轉(zhuǎn)換器ADC0809
ADC0809是美國國家半導(dǎo)體公司的CMOS型8位28條引腳A/D轉(zhuǎn)換器。采用逐次逼近技術(shù),輸出的數(shù)字信號(hào)由TTL三態(tài)緩沖器順序控制,可以直接與數(shù)據(jù)總線相連。分辨率為8位,精度為7位,時(shí)鐘頻率范圍在10~1280kHz之間,單一+5V電源供電,數(shù)據(jù)具有三態(tài)輸出能力,易于和微處理器相連。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
ADC0809的典型應(yīng)用如下:
7.定時(shí)計(jì)數(shù)器8253
8253是Intel公司的使用單一+5V電源供電,NMOS工藝制成的24條引腳的雙列直插式芯片。具有3個(gè)獨(dú)立的計(jì)數(shù)器,每一個(gè)都可以單獨(dú)作為定時(shí)器或者計(jì)數(shù)器使用,且都可以按照二進(jìn)制或者十進(jìn)制計(jì)數(shù),每個(gè)計(jì)數(shù)器計(jì)數(shù)速率高達(dá)2MHz,最高的技術(shù)速率可達(dá)2.6MHz。所有的輸入輸出引腳都與TTL電平兼容。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
8253典型應(yīng)用如下圖所示:
8.LED數(shù)碼管驅(qū)動(dòng)芯片ICM7218A
ICM7218是一種多功能LED數(shù)碼管驅(qū)動(dòng)芯片,能驅(qū)動(dòng)8位共陽或者共陰數(shù)碼管,且輸出可以直接驅(qū)動(dòng)LED顯示器。其內(nèi)部主要由控制器,8*8靜態(tài)RAM,BCS譯碼,B碼和顯示字段譯碼器,掃描振蕩控制電路和顯示驅(qū)動(dòng)器等組成。
ICM7218的外引線有寫入控制線2條:WR和MODE;數(shù)據(jù)線8條:ID0~ID7;LED顯示驅(qū)動(dòng)線16條;電源線2條。WR為寫選通信號(hào),低電平有效。MODE為寫入控制字的寫入顯示數(shù)據(jù)控制線,當(dāng)MODE=1時(shí),寫控制字;當(dāng)MODE=0是,寫數(shù)據(jù)。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
典型應(yīng)用如下圖所示:
9.可編程并行I/O接口芯片82C55A
82C55A是Intel公司的并行I/O接口芯片,40條引腳,雙列直插式封裝。D0~D7位三態(tài),雙向數(shù)據(jù)線,可與CPU總線直接相連。內(nèi)部由3個(gè)端口A,B,C。三個(gè)端口都具有8位數(shù)據(jù)輸出鎖存器,只有A端口具有輸入所鎖存器。(芯片內(nèi)部結(jié)構(gòu)與封裝見附錄)
典型應(yīng)用如下圖所示:
10.硬件地址分配列表
A7
A6
A5
A4
A3
A2
A1
A0
82C55A
A口
0
0
0
1
0
0
0
0
10H
B口
0
0
0
1
0
0
1
0
12H
C口
0
0
0
1
0
1
0
0
14H
控制口
0
0
0
1
0
1
1
0
16H
8253
計(jì)數(shù)器0
0
0
0
0
1
0
0
0
04H
控制口
0
0
0
0
1
1
1
0
0EH
ADC0809
START
0
0
0
0
0
1
1
0
06H
OE
0
0
0
1
1
1
1
0
1EH
ICM7218
控制口
0
0
1
0
0
0
0
0
20H
寫數(shù)據(jù)
0
0
0
0
0
0
0
0
00H
五. 溫度控制系統(tǒng)軟件設(shè)計(jì)
1. 溫度控制系統(tǒng)軟件結(jié)構(gòu)圖
上圖所示的是單回路閉環(huán)溫度控制系統(tǒng),虛線框內(nèi)的某些功能有計(jì)算機(jī)來完成。
2. 總體流程圖
NX-FF=0?
A/D轉(zhuǎn)換結(jié)果經(jīng)數(shù)字濾波后送入NX單元
數(shù)字濾波算法
啟動(dòng)A/D轉(zhuǎn)換
從鍵盤讀入要設(shè)定的溫度值送到SET單元
初始化82C55A,8253,ICM7218,數(shù)據(jù)段
開 始
紅燈響,警笛鳴,提醒操作人員
Y
變換結(jié)果送入8253作為計(jì)數(shù)初值
標(biāo)度變換
最小拍控制算法
N
工程量變換
變換結(jié)果送入WN
溫度的非線性轉(zhuǎn)換
轉(zhuǎn)換后溫度值送入TEM單元
顯 示
3. 模塊程序流程圖
i. 數(shù)字濾波(采用程序判斷濾波的限速濾波)
計(jì)算△C=(∣C1-C2∣+∣C2-C3∣)/2
計(jì)算∣C2-C3∣
計(jì)算∣C1-C2∣
限速濾波程序
∣C2-C1∣≤△C?
N
Y
∣C3-C2∣≤△C?
Y
C3送入NX單元
C2送入NX單元
(C2+C3)/2送入NX單元
N
注:C1,C2,C3分別為第一次采樣,第二次采樣,
第三次采樣值
ii. 工程量變換程序模塊
變送器XTR101輸出4~20mADC,溫度起點(diǎn)為100℃,滿量程為500℃。8位A/DADC0809輸出數(shù)字量00H~FFH(0~5V),應(yīng)用以下變換公式進(jìn)行變換:
AX=A0+(AM-A0)(NX-N0)/(NM-N0)
式中,A0為一次測量儀表的下限
AM為一次測量儀表的上限
AX實(shí)際測量值
N0儀表下限對應(yīng)的數(shù)字量
NM儀表上限對應(yīng)的數(shù)字量
NX測量值對應(yīng)的數(shù)字量
工程量變換
流程圖如下:
AM送入AL,A0送入BL
計(jì)算AM-A0
NX采樣值送入BL
計(jì)算(AM-A0)*NX/NM
計(jì)算A0+(AM-A0)*NX/NM
AX內(nèi)容送入WN單元
iii. 溫度非線性轉(zhuǎn)換程序模塊
采用折線擬合法進(jìn)行線性化處理
如下圖所示,分為以下幾段:
當(dāng)3.298mV≤WN<7.34mV時(shí),T℃=24.47*WN+18.41
當(dāng)7.34mV≤WN<11.411mV時(shí),T℃=24.56*WN+19.70
當(dāng)11.411mV≤WN<15.599mV時(shí),T℃=23.88*WN+27.53
當(dāng)15.599mV≤WN<19.846mV時(shí),T℃=23.55*WN+32.71
當(dāng)19.846mV≤WN時(shí),T℃=500℃
分段如下圖所示:
流程圖如下所示:
溫度非線性轉(zhuǎn)換
WN送入AL
AL≥19.846?
Y
500℃送入TEMP
N
AL≥15.599?
Y
WN=T℃=23.55*WN+32.71
N
AL≥11.411?
Y
WN=T℃=23.88*WN+27.53
N
AL≥7.34?
Y
WN=T℃=24.56*WN+19.70
N
WN=T℃=24.47*WN+18.41
4.源程序
STACK SEGMENT STACK
DW 256 DUP(?)
STACK ENDS
DATA SEGMENT
SAVEBUFF DB 256 DUP(00H)
TK DB 64H
K0 DB 00H,54H,35H
K1 DB 01H,20H,00H
K2 DB 00H,00H,00H
K3 DB 00H,00H,00H
P1 DB 00H,71H,70H
P2 DB 00H,00H,00H
P3 DB 00H,00H,00H
SAVEMARK DB 00H
SAVEADDR DB 0FFH
CONTROLMARK DB 00H
EKB DB 00H
K0_16 DB 00H,00H,00H
K1_16 DB 00H,00H,00H
K2_16 DB 00H,00H,00H
K3_16 DB 00H,00H,00H
P1_16 DB 00H,00H,00H
P2_16 DB 00H,00H,00H
P3_16 DB 00H,00H,00H
EK DW 0000H
EKK DW 0000H
EK_1 DW 0000H
EK_2 DW 0000H
UK DW 0000H
UKK DW 0000H
UK_1 DW 0000H
UK_2 DW 0000H
OUTPUT DW 0000H
ALLK_ALLP DW 0000H
SET DB ? ;溫度設(shè)定值
NX DB ? ;濾波后A/D轉(zhuǎn)換值
WN DB ? ;工程量變換結(jié)果
SUM DB C1,C2,C3 ;A/D三次采樣值
TEM DB ? ;顯示溫度
8255PORT DW 0010H,0012H,0014H,0016H ;8255地址
8253PORT DW 0004H,000EH ;8253地址
0809PORT DW 0006H,001EH ;0809地址
7218PORT DW 0020H,0000H ;7218地址
DISPLAY DW ? ;顯示溫度二進(jìn)制值
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA ;初始化數(shù)據(jù)段各芯片
MOV DS,AX
MOV BX,OFFSET 8255PORT
MOV DX,[BX+3]
MOV AL,81H ;方式0,C口底四出,其余入
OUT DX,AL
MOV BX,OFFSET 8253PORT
MOV DX,[BX+1]
MOV AL,00H
OUT DX,AL ;計(jì)數(shù)器0工作于方式0,二進(jìn)制計(jì)數(shù)
MOV BX,OFFSET 7218PORT
MOV DX,[BX]
MOV AL,A0H
OUT DX,AL ;十進(jìn)制軟件譯碼
KEYS: CALL KEYCHECK ;鍵盤掃描程序
JZ KEYS
CALL D10MS
CALL KEYCHECK
JZ KEYS
MOV AL,0FEH
MOV AH,0
MOV DX,[BX+2]
OUT DX,AL
MOV DX,[BX]
IN AL,DX
CMP AL,1EH
JZ KEY1
CMP AL,1DH
JZ KEY2
CMP AL,1BH
JZ KEY3
CMP AL,17H
JZ KEY4
CMP AL,0FH
JZ KEY5
JMP KEYS
KEY1: MOV AH,00H
JMP TRANS
KEY2: MOV AH,44H
JMP TRANS
KEY3: MOV AH,88H
JMP TRANS
KEY4: MOV AH,CCH
JMP TRANS
KEY5: MOV AH,FFH
JMP TRANS
TRANS: MOV [SET],AH ;讀設(shè)定值到SET單元
ADCH: MOV BX,OFFSET 0809PORT ;啟動(dòng)A/D轉(zhuǎn)換
MOV DX,[BX]
OUT DX,AL
MOV X,[BX+1]
CHANGE: IN AL,DX
TEST AL,80H
JZ CHANGE
MOV DX,[BX]
IN AL,DX
MOV AH,00H
MOV CX,0003H
MOV [BX+AH],AL
INC AH
LOOP ADCH
FILTER: LEA SI,SUM ;數(shù)字濾波(限速濾波)
MOV AL,[SI+2]
SUB AL,[SI]
JNC DONE1
NEG AL
DONE1: MOV DL,AL
MOV BL,[SI+3]
SUB BL,[SI+2]
JNC DONE2
NEG BL
DONE2: ADD AL,BL
SHR AL,1
CMP DL,AL
MOV CL,[SI+2]
JBE DONE
CMP BL,AL
MOV CL,[SI+3]
JBE DONE
MOV AL,[SI+2]
ADD AL,[SI+3]
SHR AL,1
MOV [SI+3],AL
MOV CL,AL
DONE: MOV DL,[SI+2]
MOV [SI],DL
MOV DL,[SI+3]
MOV [SI+2],DL
MOV [NX],CL
CMP [NX],0FFH
JE CAUTION ;判斷是否該提醒操作人員?
MOV BX,OFFSET 8255PORT ;無提醒,則點(diǎn)亮綠燈
MOV DX,[BX+1]
MOV AL,01H
OUT DX,AL
CALL CONFIG ;調(diào)數(shù)字控制器子程序
CALL BIAODU ;調(diào)標(biāo)度變換子程序
CALL GCBH ;調(diào)工程量變換子程序
CALL TEMBC ;調(diào)溫度非線性補(bǔ)償子程序
MOV BX,OFFSET PORT7218 ;溫度顯示程序
MOV R1,[DISPLAY] ;R1指向顯示緩沖區(qū)
MOV R2 08H ;R2作8位顯示計(jì)數(shù)器
C-LOOP: MOV AL,00H ;將8位顯示緩沖區(qū)中的數(shù)據(jù)送ICM7218A
MOV DX,[BX+1]
OUT DX,AL
INC R1
DJNZ R2,C-LOOP
BIAODU PROC NEAR ;標(biāo)度變換子程序
……
RET
BIAODU ENDP
GCBH PROC NEAR ;工程量變換子程序
……
RET
GCBH ENDP
TEMBC PROC NEAR ;溫度非線性補(bǔ)償子程序
……
RET
TEMBC ENDP
CONFIG PROC NEAR ;數(shù)字控制器子程序
PUSH DS
XOR AX,AX
MOV DS,AX
MOV AX,2000H+OFFSET IRQ7
MOV SI,003CH
MOV [SI],AX
MOV AX,2000H+OFFSET IRQ6
MOV SI,0038H
MOV [SI],AX
MOV AX,0000H
MOV SI,003EH
MOV [SI],AX
MOV SI,003AH
MOV [SI],AX
CLI
POP DS
MOV AL,90H
OUT 63H,AL
MOV AL,0A4H
OUT 43H,AL
MOV AL,2EH
OUT 42H,AL
IN AL,21H
AND AL,3FH
OUT 21H,AL
MOV SI,OFFSET P3+2
MOV BH,07H
MOV DI,OFFSET P3_16+2
CALL CHANGE
CALL CLEAR_E
MOV AL,80H
OUT 00H,AL
MOV BL,01H
MOV SAVEMARK,00H
MOV SAVEADDR,0FFH
AGAIN: STI
HLT
JMP AGAIN
IRQ6: MOV AL,80H
OUT 00H,AL
MOV AL,10H
OUT 61H,AL
MOV CONTROLMARK,AL
MOV SAVEMARK,AL
CALL CLEAR_E
MOV BL,01H
MOV AL,20H
OUT 20H,AL
IRET
IRQ7: MOV AL,01H
MOV CONTROLMARK,AL
DEC BL
JNZ FINISH
CALL CY
MOV EK,DX
MOV AX,DX
MOV DI,OFFSET K0_16
INC DI
MOV DX,[DI]
CALL ML
MOV AX,ALLK_ALLP
ADD DX,AX
CALL OUT_PUT
MOV DX,OUTPUT
MOV UK,DX
MOV SI,OFFSET UK_1
MOV DI,OFFSET UK_2
MOV BL,07H
L1: MOV AX,[SI]
MOV [DI],AX
DEC SI
DEC SI
DEC DI
DEC DI
DEC BL
JNZ L1
MOV AX,0000H
MOV ALLK_ALLP,AX
MOV SI,OFFSET K1_16
MOV DI,OFFSET EKK
MOV CX,0003H
CALL L2
MOV SI,OFFSET P1_16
MOV DI,OFFSET UKK
MOV CX,0103H
CALL L2
MOV BL,TK
FINISH: MOV AL,20H
OUT 20H,AL
IRET
L2: INC SI
MOV DX,[SI]
MOV AX,[DI]
CALL ML
DEC SI
TEST BYTE PTR[SI],01H
JNZ QB
LL: INC SI
INC SI
INC SI
INC DI
INC DI
MOV AX,ALLK_ALLP
CMP CH,00H
JNZ L3
ADD DX,AX
L4: MOV ALLK_ALLP,DX
DEC CL
JNZ L2
RET
L3: XCHG DX,AX
SUB DX,AX
JMP L4
QB: NEG DX
JMP LL
ML: CMP DX,7FFFH
JA ML1
IMUL DX
RET
ML1: PUSH BX
PUSH CX
PUSH AX
SUB DX,7FFFH
IMUL DX
MOV BX,DX
MOV CX,AX
POP AX
MOV DX,7FFFH
IMUL DX
ADD AX,CX
ADC DX,BX
POP CX
POP BX
RET
CY: IN AL,60H
SUB AL,80H
MOV EKB,AL
CALL SAVEEK
MOV DX,0000H
MOV DH,AL
MOV CL,03H
SAR DX,CL
RET
SAVEEK: MOV AH,AL
MOV DX,OFFSET SAVEBUFF
MOV AL,CONTROLMARK
CMP AL,00H
JZ L5
MOV AL,SAVEMARK
CMP AL,01H
JZ L5
MOV AL,SAVEADDR
CMP AL,0FEH
JZ L6
INC AL
MOV DL,AL
MOV SAVEADDR,AL
PUSH DI
MOV DI,DX
MOV [DI],AH
POP DI
L5: MOV AL,AH
RET
L6: INC SAVEMARK
JMP L5
OUT_PUT: MOV OUTPUT,DX
TEST DH,80H
JZ L7
MOV BX,0F000H
SUB DX,BX
JG L8
MOV DX,0F000H
MOV AL,80H
OUT 61H,AL
JMP L9
L7: MOV BX,0FFFH
SUB DX,BX
JG L10
L8: MOV DX,OUTPUT
JMP L11
L10: MOV DX,0FFFH
MOV AL,80H
OUT 61H,AL
L9: MOV OUTPUT,DX
L11: MOV CL,03H
MOV AL,CONTROLMARK
CMP AL,00H
JZ L12
SHL DX,CL
MOV AL,DH
ADD AL,80H
OUT 00H,AL
L12: RET
CHANGE: DEC SI
MOV CX,[SI]
INC SI
AND AL,AL
MOV DX,0000H
MOV BL,10H
GO: MOV AL,[SI]
ADD AL,AL
DAA
MOV [SI],AL
DEC SI
MOV AL,[SI]
ADC AL,AL
DAA
RCL DX,0001H
MOV [SI],AL
INC SI
DEC BL
JNZ GO
DEC SI
MOV [SI],CX
DEC SI
MOV AL,[SI]
DEC DI
MOV [DI],DX
DEC SI
DEC DI
MOV [DI],AL
DEC DI
DEC BH
JNZ CHANGE
RET
CLEAR_E: MOV AX,0000H
MOV ALLK_ALLP,AX
MOV SI,OFFSET EK
MOV BL,08H
GOON: MOV [SI],AX
INC SI
INC SI
DEC BL
JNZ GOON
RET
DELAY: PUSH CX
MOV CX,1000H
DEL1: PUSH AX
POP AX
LOOP DEL1
POP CX
RET
CONFIG ENDP
KEYCHECK PROC NEAR ;檢查是否有鍵按下子程序
MOV AL,00H
MOV DX,[BX+2]
OUT DX,AL
MOV DX,[BX]
IN AL,DX
CMP AL,1FH
RET
KEYCHECK EDNP
D10MS PROC NEAR ;延時(shí)子程序
PUSH CX
WAIT1: MOV CX,2801
WAIT2: LOOP WAIT2
DEC BX
JNZ WAIT1
RET
D10MS ENDP
CAUTION:MOV BX,OFFSET 8255PORT ;提醒操作人員
MOV DX,[BX+1]
MOV AL,02H
OUT DX,AL ;提醒燈亮,鳴警報(bào)
CODE ENDS
END START
六. 驗(yàn)室模擬結(jié)果
1.數(shù)字控制器計(jì)算
G(Z)=Z[(1-e-Ts)/s*2/(s(s+1))] (串入零階保持器)
=(1-z-1)Z [2/(s2(s+1))]
=(1-z-1)*2z/(z-e-T)-2z(z-T-1)/(z-1)2
=(0.244-0.012z-1)/(1+0.39 z-1) (采樣周期2秒)
2.模擬臺(tái)硬件連接圖
3.實(shí)驗(yàn)室模擬結(jié)果
七. 芯片資料
1. 8086CPU
① 內(nèi)部結(jié)構(gòu)
②封裝及引腳
③總線周期
2. 定時(shí)計(jì)數(shù)器8253
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
3. 可編程并行I/O接口芯片82C55A
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
4. LED數(shù)碼管驅(qū)動(dòng)芯片ICM7218A
封裝及引腳圖
5. 4~20mA變送器XTR101
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
5. I/V轉(zhuǎn)換器RCV420
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
6.A/D轉(zhuǎn)換器ADC0809
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
7. OC門74LS06
① 內(nèi)部結(jié)構(gòu)
② 封裝及引腳圖
七. 計(jì)總結(jié)與擴(kuò)展
1. 總結(jié)
這次課程設(shè)計(jì),遇到了很多方面的問題,在老師的輔導(dǎo),同學(xué)的幫助下,很好的解決了這些問題。第一次把《微機(jī)原理及接口》與《微型計(jì)算機(jī)控制技術(shù)》兩門課程綜合起來,學(xué)會(huì)了很多新的東西。這些東西不僅僅只是知識(shí)方面的,也有能力方面的——提高了自己查閱各種資料,分析和解決問題的能力以及一種實(shí)事求是的精神。
這份設(shè)計(jì)的優(yōu)點(diǎn)在于:SCR觸發(fā)回路的設(shè)計(jì),很大程度上減少了諧波對系統(tǒng)的干擾;變送器XTR101和I/V轉(zhuǎn)換器RCV420的配合,可以使得最后的信號(hào)可遠(yuǎn)傳;K型熱電偶——鎳絡(luò)-鎳硅的選擇,線性度好,使得測量結(jié)果精確。
這份設(shè)計(jì)的缺點(diǎn)在于:雖然K型熱電偶的線性度好,但由于測量點(diǎn),數(shù)據(jù)處理方法的單一化,以及疏失誤差的產(chǎn)生,會(huì)對結(jié)果產(chǎn)生不確定的影響;顯示方面過于單一化;沒有對SCR進(jìn)行有效的保護(hù);最小拍有波紋控制——控制方案的粗糙性;系統(tǒng)正常工作保證性不強(qiáng),在某些重要的生產(chǎn)場合可能造成停產(chǎn)的概率大。
針對以上缺點(diǎn),提出以下解決方案:
2. 擴(kuò)展
① 針對測量點(diǎn)的單一化
采用基于多傳感器算術(shù)平均值與分批估計(jì)相結(jié)合的爐溫測量方法——對有限個(gè)溫度傳感器測量結(jié)果中剔除了疏失誤差的一致性測量數(shù)據(jù)進(jìn)行融合計(jì)算,就可以獲得比有限個(gè)測量數(shù)據(jù)的算術(shù)平均值更可靠的測量結(jié)果,可以提高測量的準(zhǔn)確性。詳見參考資料[9]
② 針對顯示的單一化
采用無紙記錄儀對參數(shù)進(jìn)行動(dòng)態(tài)顯示,畫面直觀,生動(dòng),形象。適合于某些比較重要的工控場合。
③ 針對SCR的保護(hù)
可以在SCR回路加快融,以保護(hù)SCR。詳見參考資料[8],[10]。
④ 針對控制方案的粗糙性
可以采用Fuzzy+PID控制器結(jié)構(gòu),模糊控制響應(yīng)速度快,過度時(shí)間短,魯棒性好。當(dāng)被控溫區(qū)出現(xiàn)較大溫差時(shí),采用模糊控制以提高控制速度。當(dāng)被控溫區(qū)溫度與實(shí)際溫度相差較小時(shí),切換PID控制。詳見參考資料[9]
⑤ 針對系統(tǒng)正常工作的可靠性
可以采用冗余系統(tǒng),配備兩個(gè)8086CPU,并以相應(yīng)的軟件支持,當(dāng)一個(gè)因以外停止時(shí),另一個(gè)自動(dòng)切換工作;也可以采用自動(dòng)——手動(dòng)無擾動(dòng)切換裝置和看門狗電路,當(dāng)系統(tǒng)出現(xiàn)以外故障時(shí),看門狗重新啟動(dòng)系統(tǒng)。此時(shí)由自動(dòng)到手動(dòng)切換,正常時(shí)候,再切換到自動(dòng);還可以冗余指令,每當(dāng)CPU受到干擾后,往往把操作數(shù)當(dāng)作指令代碼來執(zhí)行,程序出現(xiàn)彈飛。為擬制彈飛,可以在程序中加入不可能把操作數(shù)當(dāng)作指令代碼來執(zhí)行的兩個(gè)字節(jié)的空操作指令。此種方法詳見參考資料[9]
九.參考資料
1. 潘新民,王燕芳編著.微型計(jì)算機(jī)控制技術(shù).北京:高等教育出版社,2001
2. 譚浩強(qiáng)編著.C語言程序設(shè)計(jì).北京:清華大學(xué)出版社,1999
3. 段承先編著.微型計(jì)算機(jī)原理及接口技術(shù).北京:兵器工業(yè)出版社,2000
4. 黃國建,虞平良,曾芬芳編著.微型機(jī)算機(jī)應(yīng)用技術(shù).上海:上海交通大學(xué)出版社,1995
5. 楊振江,孫占彪,王曙梅,步線濤編著.智能儀器與數(shù)據(jù)采集系統(tǒng)中的新器件及應(yīng)用.西安:西安電子科技大學(xué)出版社,2001
6. 王俊杰編著.檢測技術(shù)與儀表.武漢:武漢理工大學(xué)出版社,2002
7. 孟華編著.工業(yè)過程檢測與控制.北京:北京航空航天大學(xué)出版社,2002
8. 丁書文,黃訓(xùn)誠,胡啟宙編著.變電站綜合自動(dòng)化原理及應(yīng)用.北京:中國電力出版社,2003
9. 滕召勝,羅隆福,童調(diào)生編著.智能檢測系統(tǒng)與數(shù)據(jù)融合.北京:機(jī)械工業(yè)出版社,2000
10. 王兆安,黃俊.電力電子技術(shù).北京:機(jī)械工業(yè)出版社,2001
十. 詳細(xì)電路原理圖
用Protel2000繪制
28
收藏