微機原理課程設計(電梯)(共13頁)_第1頁
微機原理課程設計(電梯)(共13頁)_第2頁
微機原理課程設計(電梯)(共13頁)_第3頁
微機原理課程設計(電梯)(共13頁)_第4頁
微機原理課程設計(電梯)(共13頁)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上計算機原理課程設計實驗報告學院: 專業(yè): 班級:姓名: 學號:成績:目錄1.實驗題目-32.題目分析-33.原理分析-34.實驗模塊-45.電路圖設計-56.程序框圖-57.程序清單-78.實驗現(xiàn)象-13一、實驗題目垂直電梯運行曲線控制(一)模擬題:在實際中,電梯是我們的交通工具,電梯從靜止開始,慢慢加速,當?shù)竭_某個值時,轉(zhuǎn)入勻速運動,根據(jù)電梯運行的速度,電梯快要到達停止層時,開始減速,直到平層停止,打開轎廂門,客人安全走下電梯,無人上下電梯,電梯關門,向另一個目的層運動,火災時,電梯自動歸位到首層。二、題目分析從題目要求來看,需要實現(xiàn)的功能有:1.電機的正轉(zhuǎn)和反轉(zhuǎn)2

2、.電梯的加速-勻速-減速3.電梯所在樓層的顯示 三、原理分析本課程設計以步進電機為驅(qū)動電機,通過8086處理器、8259A中斷控制器、8255可編程接口為核心芯片,并輔以開關、LED,構成一個控制系統(tǒng),用以模擬電梯正常運行過程。其中的實驗器材原理分別為:步進電機:作為被控制的電機,電機每走一步轉(zhuǎn)過7.5度,轉(zhuǎn)一圈需要48步才能轉(zhuǎn)一圈。電梯的控制方法為:A-AB-B-BC-C-CD-D-DA-A,一個周期內(nèi)有八步,按照這個規(guī)律不斷循環(huán)就能實現(xiàn)電機的連續(xù)運轉(zhuǎn)。8086:作為CPU,控制步進電機、8259A可編程中斷控制器、8255可編程接口以及LED,使用匯編語言編程。8259A:作為中斷控制器,

3、數(shù)據(jù)總線、地址總線和控制總線與8086相連,使用主片上的MIR5和從片上的SIRO作為觸發(fā)脈沖PLUS1和PLUS2輸入口。當來一個PLUS1或PLUS2時,傳遞給CPU一個中斷,讓CPU處理子程序。8255:作為可編程接口,A口的PA0、PA1、PA2和PA3分別與步進電機的BJ-IN1、 BJ-IN2、 BJ-IN3和BJ-IN4相連,控制步進電機的旋轉(zhuǎn)。B口為數(shù)據(jù)輸入,PB0-PB7分別與開關K0-K7相連,作為輸入目的樓層接口。C口為LED驅(qū)動輸出口,分別與八個LED相連,可以顯示電梯所在的樓層。四、實驗模塊控制模塊電梯的速度控制:電機速度的控制是通過步與步之間的延時來控制的,延時越短

4、,速度越快。通過分析,我以FFFF個主頻脈沖為一個延時基本單位T,當電梯加速時,第一個循環(huán)的第一步與第二步之間用8T,第二步與第三步之間用7T第八步與下一個循環(huán)之間用T,這樣就實現(xiàn)了由慢到快的過渡;當電梯勻速時,所有的延時均用T;當電梯減速時,最后一個循環(huán)第一步與第二步之間用2T,第二步與第三步之間用3T第七步與第八步之間用8T,這樣就實現(xiàn)了由快到慢得過渡,這三個過程就實現(xiàn)了電梯運行時加速-勻速-減速基本過程。樓層間電機行進控制:我以電梯轉(zhuǎn)一圈作為電梯行進一層樓的標準。具體思想為,首先電梯所在樓層設為1層,輸入人所在樓層后,電梯經(jīng)過一個加速-勻速-減速過程到達人所在樓層,然后輸入目的樓層,電梯

5、又經(jīng)過一個加速-勻速-減速到達目的樓層,然后把目的樓層賦值給電梯當前所在樓層,一個基本過程就完成了?;具^程的步數(shù)控制:假設電梯從M層運行到N層(N>M),以電機轉(zhuǎn)一圈為行進一層,那么電機需要運行的圈數(shù)為N-M,對應于6(N-M)個循環(huán)。首先,電梯加速需要用一個循環(huán),然后電梯勻速運行需要6(N-M)-2個循環(huán),最后是減速用一個循環(huán)。按照這個規(guī)則設計,就能實現(xiàn)轉(zhuǎn)多少圈就代表行進多少層,且速度的變換很平滑。延時模塊本實驗中,延時模塊以FFFF個主頻周期為基本單位時間T,包含延時分別為T-8T的八個Delay。當電機執(zhí)行加速過程時,電機一個循環(huán)之間的延時分別為8T-2T,當電機勻速運行時,電機

6、的步與步之間的延時為T,當電機減速時,電機最后一個循環(huán)的步與步之間的延時分別為2T-8T,這樣通過延時就能控制電機運行的速度。中斷模塊中斷模塊為8259A,分為使用主片的MIR5和從片的SIRO,當給一個PLUS的時,送給CPU一個中斷,讓其執(zhí)行子程序,接受開關的到達樓層數(shù)據(jù)然后驅(qū)動電機行進。顯示模塊顯示模塊為3個LED,通過CPU控制,使其在到達每一層樓后顯示相對應的樓層數(shù)。五、電路圖設計8259AMIR5SIR0 PA0-PA3 8255 PC0-PC7PB0-PB7/CSPLUS1PLUS2步進電機IN1-IN4開關K0-K7LEDL0-L7200H-2FFH六、程序框圖子程序RISE

7、子程序DOWN調(diào)用SPEED1調(diào)用SPEED2調(diào)用SPEED3RET開始調(diào)用SPEED4調(diào)用SPEED5調(diào)用SPEED6RET開始開始輸入8255控制字開放MIR5和SIR0中斷寫中斷程序入口輸入目的樓層NN>M?給電梯當前樓層賦初值M調(diào)用RISE調(diào)用DOWN電梯所在樓層賦給MYN中斷程序開始保護寄存器調(diào)用子程序中斷結(jié)束命令恢復寄存器開中斷中斷返回開中斷延時程序開始PUSH:AX,BX.CXDHßSPEEDCXß0FFFFLOOP X2DHßDH-1POP:AX,BX,CXDH=0?YN 七、程序清單專心-專注-專業(yè) data segment i8255_a

8、 equ 200h i8255_b equ 201h i8255_c equ 202h i8255_k equ 203h speed db 2 count db 01h x db 01h fire db 00h data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov es,ax mov dx,i8255_k mov al,89h out dx,al in al,21h and al,b out 21h,al in al, 0a1h and al,0feh out 0a1h,al sti pus

9、h ds mov ax,0 mov ds,ax lea ax,cs:mint_proc mov bx,5 mov si,30H add si,bx add si,si add si,si mov ds:si,ax push cs pop ax mov ds:si+2,ax lea ax,cs:sint_proc mov bx,0 mov si,70H add si,bx add si,si add si,si mov ds:si,ax push cs pop ax mov ds:si+2,ax pop ds lll: mov dx,i8255_b mov al,x out dx,al jmp

10、lll mint_proc proc far sti push ax callmint mov al,20h out 20h,al pop ax iret mint_proc endpmint proc mov dx,i8255_c in al,dx mov count,al cmp al,x ja rise jb down jmp rrrise: call speed1 call speed2 call speed3 jmp rrdown: call speed4 call speed5 call speed6 jmp rr rr: mov al,count movx,al ret mint

11、 endp sint_proc proc far push ax push dx call sint mov al,20h out 0a0h,al nop out 20h,al pop ax pop dx iret sint_proc endp sint proc mov dx,i8255_c in al,dx and al,0fh mov count,al cmp al,x ja rise1 jb down1 jmp rr1 rise1: call speed1 call speed2 call speed3 jmp rr1 down1: call speed4 call speed5 ca

12、ll speed6 jmprr1 rr1: retsint endp speed1 proc mov dx,i8255_a mov al,01h out dx,al call delay8 mov dx,i8255_a mov al,03h out dx,al call delay7 mov dx,i8255_a mov al,02h out dx,al call delay6 mov dx,i8255_a mov al,06h out dx,al call delay5 mov dx,i8255_a mov al,04h out dx,al call delay4 mov dx,i8255_

13、a mov al,0ch out dx,al call delay3 mov dx,i8255_a mov al,08h out dx,al call delay2 mov dx,i8255_a mov al,09h out dx,al call delay1 ret speed1 endp speed2 proc mov al,count sub al,x mov ah,al add al,al add al,ah add al,al sub al,02h xor ah,ah dec ax mov cx,ax a2: pushcx mov dx,i8255_a mov al,01h out

14、dx,al call delay1 mov dx,i8255_a mov al,03h out dx,al call delay1 mov dx,i8255_a mov al,02h out dx,al call delay1 mov dx,i8255_a mov al,06h out dx,al call delay1 mov dx,i8255_a mov al,04h out dx,al call delay1 mov dx,i8255_a mov al,0ch out dx,al call delay1 mov dx,i8255_a mov al,08h out dx,al call d

15、elay1 mov dx,i8255_a mov al,09h out dx,al call delay1 popcx loop a2 ret speed2 endp speed3 proc mov dx,i8255_a mov al,01h out dx,al call delay1 mov dx,i8255_a mov al,03h out dx,al call delay2 mov dx,i8255_a mov al,02h out dx,al call delay3 mov dx,i8255_a mov al,06h out dx,al call delay4 mov dx,i8255

16、_a mov al,04h out dx,al call delay5 mov dx,i8255_a mov al,0ch out dx,al call delay6 mov dx,i8255_a mov al,08h out dx,al call delay7 mov dx,i8255_a mov al,09h out dx,al call delay8 ret speed3 endp speed4 proc mov dx,i8255_a mov al,09h out dx,al call delay8 mov dx,i8255_a mov al,08h out dx,al call del

17、ay7 mov dx,i8255_a mov al,0ch out dx,al call delay6 mov dx,i8255_a mov al,04h out dx,al call delay5 mov dx,i8255_a mov al,06h out dx,al call delay4 mov dx,i8255_a mov al,02h out dx,al call delay3 mov dx,i8255_a mov al,03h out dx,al call delay2 mov dx,i8255_a mov al,01h out dx,al call delay1 ret spee

18、d4 endp speed5 proc mov al,x sub al,count mov ah,al add al,al add al,ah add al,al sub al,02h xor ah,ah dec ax mov cx,ax a1: pushcx mov dx,i8255_a mov al,09h out dx,al call delay1 mov dx,i8255_a mov al,08h out dx,al call delay1 mov dx,i8255_a mov al,0ch out dx,al call delay1 mov dx,i8255_a mov al,04h

19、 out dx,al call delay1 mov dx,i8255_a mov al,06h out dx,al call delay1 mov dx,i8255_a mov al,02h out dx,al call delay1 mov dx,i8255_a mov al,03h out dx,al call delay1 mov dx,i8255_a mov al,01h out dx,al call delay1 popcx loop a1 ret speed5 endp speed6 proc mov dx,i8255_a mov al,09h out dx,al call de

20、lay1 mov dx,i8255_a mov al,08h out dx,al call delay2 mov dx,i8255_a mov al,0ch out dx,al call delay3 mov dx,i8255_a mov al,04h out dx,al call delay4 mov dx,i8255_a mov al,06h out dx,al call delay5 mov dx,i8255_a mov al,02h out dx,al call delay6 mov dx,i8255_a mov al,03h out dx,al call delay7 mov dx,

21、i8255_a mov al,01h out dx,al call delay8 ret speed6 endp delay1 proc push ax push bx push cx mov dh,01h x1: mov cx,0ffffh x2: loop x2 dec dh jnz x1 pop dx pop cx pop ax ret delay1 endp delay2 proc push ax push bx push cx mov dh,02h x3: mov cx,0ffffh x4: loop x4 dec dh jnz x3 pop dx pop cx pop ax ret delay2 endp delay3 proc push ax push bx push cx mov dh,03h x5: mov cx,0ffffh x6: loop x6 dec dh jnz x5 pop dx pop cx pop ax ret delay3 endp delay4 proc push ax push bx push cx mov dh,04h x7: mov cx,0ffffh x8: loop x8 dec dh jnz x7 pop dx pop cx po

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論