第九章 MCS-51單片機與步進電機接口.ppt_第1頁
第九章 MCS-51單片機與步進電機接口.ppt_第2頁
第九章 MCS-51單片機與步進電機接口.ppt_第3頁
第九章 MCS-51單片機與步進電機接口.ppt_第4頁
第九章 MCS-51單片機與步進電機接口.ppt_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、9,1,第九章 MCS-51單片機與步進電機接口,特點:步進電機能接受步進脈沖的控 制一步一步地旋轉(zhuǎn)。 用途:步進電機成了計算機應(yīng)用項目中的主要執(zhí)行元件之一,尤其在精確定位場合中得到了廣泛的應(yīng)用; 內(nèi)容:簡述步進電機的工作原理,討論它與單片機接口的電路以及應(yīng)用的方法。 。,9,2,91 步進電機簡述 一、步進電機原理 步進電機的轉(zhuǎn)子上均勻地分布著40個齒,齒間(齒距)夾角為9(360/40),定子上有6個大齒,相差180的兩個大齒組成一相,共有A、三相。每個大齒上有若干個與轉(zhuǎn)子上一樣的小齒。定子的每一相都有勵磁繞組。,9,3,二、步進電機的運行方式 1三相三拍運行方式 (1)當(dāng)A相通電時,B相

2、、相不通電: A相定子上的齒與轉(zhuǎn)子上的齒對齊(通電后磁場力作用的結(jié)果),迫使電機旋轉(zhuǎn)3 B相定子上的齒順時針超前轉(zhuǎn)子上相應(yīng)的齒3 C相定子上的齒順時針超前轉(zhuǎn)子上相應(yīng)的齒6,9,4,(2)當(dāng)B相接通電時,A相、C相不通電: B相齒對齊,電機旋轉(zhuǎn)3;C相超前3相超前 (3)當(dāng)C相通電時,B相、A相不通電。 C相齒對齊,電機旋轉(zhuǎn)3;A相超前3;相超前6,9,5,因此,如果定子A、B、C三相按 ABCA 的順序依次通電,則步進電機將不斷地按順時針方向轉(zhuǎn)動。每一次通電轉(zhuǎn),每三次通電才走完一個齒距,因此叫三相三拍。 每一次通電轉(zhuǎn)動的固定角叫步距角。 顯然,三相三拍運行時,步距角。,9,6,假如某次通電后,

3、控制脈沖不再來,則電機轉(zhuǎn)子齒和某相對齊后就停止轉(zhuǎn)動,叫做位狀態(tài)。 如果把順時針叫正轉(zhuǎn),那么當(dāng)通電順序按 ACBA 進行時,則電機反時針旋轉(zhuǎn),叫反轉(zhuǎn)。 可見控制步進電機正轉(zhuǎn)反轉(zhuǎn)只是三相繞組通電順序不同而已。,9,7,2三相六拍運行方式 當(dāng)A相通電時,A相定子齒與轉(zhuǎn)子齒對齊,此后,如果讓A、B兩相同時通電,可以發(fā)現(xiàn)轉(zhuǎn)子轉(zhuǎn)動15。再讓A相斷電、B相通電,又可發(fā)現(xiàn)轉(zhuǎn)子再轉(zhuǎn)1.5。 所以按照 AABBBCCCAA 的順序控制,電機將按順時針方向旋轉(zhuǎn),每步轉(zhuǎn)動15,即步距角=15, 由于要經(jīng)過6步才走完一個齒距(615=9),所以叫三相六拍。,9,8,如果要使步進電機反轉(zhuǎn),只要按 AACCCBBBA 順序

4、通電就行了。 結(jié)論:從上面兩種運行方式可看出,錯齒是促使步進電機旋轉(zhuǎn)的根本原因,當(dāng)某相通電,相應(yīng)的齒對齊,迫使電機旋轉(zhuǎn)一個步距角,未通電的各相的齒出現(xiàn)了新的錯位。改變通電的順序和通電的相數(shù),可組合出其它的運行方式。 討論:三項三拍和三項六拍運行方式,哪種定位更精確?,9,9,三、步進電機有如下特點: 給步進脈沖電機就轉(zhuǎn),不給步進脈沖電機就不轉(zhuǎn); 步進脈沖頻率高,步進電機轉(zhuǎn)得快;步進脈沖頻率低,步進電機轉(zhuǎn)得就慢; 改變各相的通電方式(叫脈沖分配)可以改變步進電機的運行方式; 改變通電順序,可以控制步進電機的正、反轉(zhuǎn)。,9,10,92 步進電機與MCS-51單片機的接口 步進電機與單片機的連接一般

5、有兩種形式 一、由硬件完成脈沖分配的功能 在這種形式里,脈沖分配器(CH250)、驅(qū)動電路由硬件完成。單片機只提供步進脈沖和正、反轉(zhuǎn)控制信號,步進脈沖的產(chǎn)生與停止、步進脈沖的頻率和個數(shù)都可用軟件控制。,9,11,討論: 單片機輸出步進脈沖后,再由脈沖分配電路按事先確定的順序控制各相的通斷。 一般來說,硬件一旦確定下來,不易更改,這種方案,硬設(shè)備成本高,它的應(yīng)用受到了限制。 怎樣用軟件產(chǎn)生步進脈沖呢?所謂軟件產(chǎn)生就是用軟件控制P30為1 或為0的次序和長短。如果先令P30=1,延時一段時間,再令P3.00,再延時一段時間后,又令P30=1,如此循環(huán),就可構(gòu)成脈沖序列。延時時間的長短決定了脈沖序列

6、的周期,而脈沖序列的周期又與步進電機的步矩有關(guān)。下面提供了一個產(chǎn)生步進脈沖的子程序。,9,12,SUB: SETB P30 SETB P30 ;保證輸出高電平的時間5s SETB P30 CLR P30 ;變?yōu)榈碗娖?MOV R7,30H LOOP: NOP ;軟件延時程序: NOP ;基本延時(10s時間常數(shù)) NOP DJNZ R7,LOOP RET 時間常數(shù)事先可裝入30H單元,改變30H單元的內(nèi)容就可改變延時長短 P3.0輸出脈沖波形,9,13,2由軟件完成脈沖分配工作 特點:由軟件完成脈沖分配工作,不僅使線路簡化,成本下降,而且可根據(jù)應(yīng)用系統(tǒng)的需要,靈活地改變步進電機的控制方案。 硬

7、件的主要任務(wù)是完成驅(qū)動功能。如圖單片機直接帶動步進電機的一種接口方案,接口并不復(fù)雜,單片機P1的低三位被設(shè)成輸出位,P10控制A相繞組通斷,P11控制B相,P12控制C相。,9,14,以A相控制為例: 當(dāng)P10輸出為1,發(fā)光管不發(fā)光,因此光敏二極管截止,使擔(dān)負(fù)驅(qū)動任務(wù)的達(dá)林頓管導(dǎo)通。A相繞組通電。 相反,當(dāng)P100發(fā)光管發(fā)光光敏管導(dǎo)通達(dá)林頓管截止A相繞組不通電。,9,15,為什么步進電機功率驅(qū)動電路采用光電隔離? 步進電機功率驅(qū)動電路工作在較大脈沖電流狀態(tài),采用光電耦合器將單片機與步機電機隔離可以避免單片機與步進電機功率回路的共地干擾,此外,萬一驅(qū)動電路發(fā)生故障。也不致讓功放中較高的電壓串入單

8、片機而使其損壞。 怎樣用軟件完成脈沖分配呢? 所謂脈沖分配就是用軟件改變P1口低三位的輸出值,進而達(dá)到控制三相繞組的通電順序和通電方式之目的。,9,16,1、軟件選擇單三拍的工作方式 單三拍的通電方式為ABCA,要想達(dá)到這個目的,只需依次向P1口輸出如下控制字: P1.2 P11 P10 編碼 (C相)(B相) (A相) 0 0 1 (01H)A相通,B、C相斷 0 1 0 (02H) B相通,A、C相斷 1 0 0 (04H) C相通,A、B相斷,9,17,在控制字間也應(yīng)加入軟件延時來保證一定的時間間隔。 假定要求時間間隔為1ms,控制電機按三相三拍正轉(zhuǎn)的程序是: ZHEN:MOV P1,

9、01H ;A相通電 ACALL D1MS MOV P1, 02H ;B相通電 ACALL D1MS MOV P1, 40H ;C相通電 ACALL D1MS RET D1MS: MOV R7, 64H ;延時1ms子程序 D1MS1: NOP ;2s NOP ;2s NOP ;2s DJNZ R7,D1MSl ;4s RET,9,18,要想控制步進電機反轉(zhuǎn),只需把輸出的控制字的次序按: 01H(A)04H(C)02H(B)01H(A) 組合即可。 反轉(zhuǎn)程序如下: FAN:MOV P1, 01H ;A相通電 ACALL D1MS MOV P1, 04H ;C相通電 ACALL D1MS MOV

10、P1, 02H ;B相通電 ACALL D1MS ,9,19,2、軟件選擇三相六拍的工作方式 不難推出與三相六拍相對應(yīng)的控制字為 P12 P11 P10 (C相) (B相) (A相)控制編碼 導(dǎo)通情況 0 0 1 (01H) A相通電 0 1 1 (03H) AB相通電 0 1 0 (02H) B相通電 1 1 0 (06H) BC相通電 1 0 0 (04H) C相通電 1 0 1 (05H) CA相通電,9,20,如果按: 001101100110010011001 A CA C CB B BA A 的次序輸出,就可達(dá)到反轉(zhuǎn)的目的。 練習(xí)1仿照三相三拍的辦法編出反轉(zhuǎn)控制子程序。,9,21,

11、FAN: MOV P1, 01H ;A相通電 ACALL D1MS MOV P1,05H ;CA相通電 ACALL D1MS MOV P1,04H ;C相通電 ACALL D1MS MOV P1,06H ;CB相通電 ACALL D1MS MOV P1,02H ;B相通電 ACALL D1MS MOV P1,03H ;BA相通電 ACALL D1MS RET,9,22,9.3 應(yīng)用舉例機械手的微機控制 隨著科學(xué)技術(shù)的進步、工業(yè)自動化的進程,機械手將進一步取代簡單而笨重的人工操作,逐步把在惡劣環(huán)境下工作的人們解放出來,這對于改善人們的工作條件、提高工作效率,具有一定的現(xiàn)實意義。 本例系存取郵件機

12、械手的控制,在郵政部門和立體倉庫中作自動存職包裹和貨物之用。,9,23,一、工作原理 通過鍵盤,將貨位(或包位)代碼輸入微機,啟動存(或?。┟铈I,機械手即可在微機的控制下,作X、Y、Z三個方向的運動,完成存(或?。┌僮鳌?刂圃砣鐖D所示。 系統(tǒng)主要包括微機控制、步進電機控制、機械傳動系統(tǒng)、光控音樂電路、工作電源、貨架和柜臺等七部分組成。微機根據(jù)鍵入的貨物代碼,產(chǎn)生相應(yīng)的脈沖信號,經(jīng)CH250脈沖分配器和驅(qū)動電路,輸出具有一定功率的脈沖,驅(qū)動有關(guān)電機正轉(zhuǎn)或反轉(zhuǎn)及其步數(shù),從而實現(xiàn)貨物的存取。機械手行進中,光控音樂電路驅(qū)動蜂嗚器發(fā)出樂曲,從而增強了工作的節(jié)奏、控制的旋律。,9,24,二、系統(tǒng)組成

13、 1、硬件設(shè)計 如圖是機械手微機控制系統(tǒng)硬件電路。本系統(tǒng)選用MCS-51系列中的8031芯片,擴展了一片2732,以存放用戶程序。由于隨機存儲的數(shù)據(jù)不多,只利用片內(nèi)RAM。采用兩位LED顯示器和28鍵盤,P35、P36和P37分別輸出X、Y、和Z方向的控制脈沖,P16和P1.7分別用來控制步進電機的正/反轉(zhuǎn)和產(chǎn)生復(fù)位信號。,9,25,2、機械傳動部分 機械傳動部分包括導(dǎo)軌、小車、升降盤和機械手等部分。 水平方向位移 步進電機MX調(diào)通過滑輪和傳送帶,使小車在導(dǎo)軌上運動,實現(xiàn)X方向上的位移。 垂直方向升降 作調(diào)方向運動的小車上裝有一豎直的六棱金屬桿,升降盤套于桿上,桿的頂部裝有一定滑輪并配有平衡錘

14、。固定于小車上的步進電機MY帶動升降盤,實現(xiàn)Y方向上的位移。,9,26,機械手動作 機械手裝升降盤上,如圖所示。圖中A點固定,步進電機MZ帶動B點,改變A、B間的較小距離,使得機械手移動較大距離。 貨架 貨架分三層,每層有4個包位,共計12個包位。 圖中數(shù)字為包位編碼,編碼的個位數(shù)表示X位置,十位數(shù)表示Y位置(層數(shù)),以供計算機查訊、判斷之用。,9,27,本例采用SB-2A型步進電機,它工作于三相六拍的工作方式。 電機按順時針方向旋轉(zhuǎn)(即正轉(zhuǎn))時,各相脈沖順序為: A=1A=1,B=1B=1B,C=1C=1C=1,A=1 電機按逆時針方向旋轉(zhuǎn)(即反轉(zhuǎn))時,各相脈沖順序為: A=1A=1,C=1

15、C=1C=1,B=1B=1B=1,A=1,9,28,三、程序設(shè)計 系統(tǒng)軟件包括:主程序、取包程序、存包程序、貨位判斷程序、X、Y方向運動和機械手動作子程序等。 (1)程序流程圖 限于篇幅,只給出主要流程圖。,9,29,2、脈沖序列的生成程序 對于步進電機的控制,實際上是控制步進脈沖的個數(shù)和步進脈沖的間隔,而步進電機的間隔又可轉(zhuǎn)化為某基準(zhǔn)延時子程序的循環(huán)次數(shù)。因此,可以很方便地用軟件來控制步進電機的運行,達(dá)到各種控制目的。,9,30,2、貨位判斷程序 如圖是貨位判斷程序流程圖。 功能:根據(jù)鍵入的貨位編碼判斷貨位,以確定X、Y方向所需要的脈沖數(shù)。,9,31,主程序功能:管理鍵盤和顯示以及有關(guān)控制。

16、 無鍵按下或執(zhí)行有關(guān)命令后,顯示提示符“-” (2)程序清單 ORG 0000H AJMP MAIN MAIN: MOV SP, #60H SUN: SETB P3.5 SETB P3.6 SETB P3.7 CLR P1.6 CLR P1.7 MOV R0, #40H MOV A, #12H;字符“-” ML0: MOV R0, A ;的編碼 INC R0 CJNE R0, #42H, ML0,9,32,SETB P1.7 ;復(fù)位信號 ;鍵輸入/顯示/鍵判斷 F6H-特殊數(shù)據(jù) R3-鍵號暫存器 ML1:ACALL DIR ACALL KEY ADD A, 0F6H ;鍵號+F6 用于數(shù)字/功

17、能鍵的判斷 JC SUN1 ;功能鍵轉(zhuǎn)移至SUN1 MOV 41H,40H ;數(shù)字鍵號送顯示緩沖區(qū) MOV R0, 40H MOV R3 , A ANL A, 0FH ;保留低四位 MOV R0,A AJMP ML1,9,33,功能鍵處理程序(A、B、C鍵) SUN1: MOV A, R3 ; CJNE A, 0AH,SUN2 AJMP QBCX SUN2: CJNE A, 0BH,SUN3 AJMP CBCX SUN3: CJNE A, 0CH,ML1 AJMP SUN,9,34,鍵盤子程序 P1口-P1.6正/反轉(zhuǎn) P1.7復(fù)位 P3口- P3.3 P3.4 鍵盤行輸入口R3-列掃描寄存器

18、 初值FEH R4-列號計數(shù)器 SBUF-發(fā)送緩沖器 發(fā)送列掃描信號 KEY:ACALL KS1 JNZ LK1 NI:ACALL DIR AJMP KEY LK1:ACALL DIR ACALL DIR ACALL KS1 JNZ LK2 AJMP NI LK2: MOV P1, 00H MOV R3, 0FEH MOV R4, 00H LK4:MOV SBUF,R3,9,35,MOV R6, 05H ;延時等待發(fā)送 DK6: DJNZ R6, DK6 JB P33 LONE MOV A, 00H AJMP LKP LONE:JB P34, NEXT MOV A, 08H LKP: ADD

19、A, R4 PUSH ACC LK3: ACALL DIR ;僅做一次處理 ACALL KS1 JNZ LK3 POP ACC ;取鍵值于ACC RET,9,36,NEXT: INC R4 MOV A, R3 JNB ACC.7,KED RL A MOV R3, A AJMP LK4 KED:AJMP KEY 判斷鍵盤有無鍵按下子程序無鍵按下A=00H KS1: MOV SBUF,00H MOV R6, 05H DS6: DJNZ R6, DS6 MOV A, P3 CPL A ANL A, 18H RET,9,37,顯示子程序P1口-LED位掃描輸出口 R2-位掃描寄存器 初值為01H SB

20、UF-LED段碼發(fā)送緩沖器 DIR: PUSH PSW SETB PSW,4 MOV R0,40H MOV R2,01H D1: MOV P1,R2 MOV A,R0 ADD A,14H MOVC A,A+PC MOV SBUF,A MOV R7,02H D2: MOV R6,0FFH D3: DJNZ R6,D3 DJNZ R7,D2,9,38,INC R0 MOV A,R2 RL A MOV R2,A JNB ACC.2,D1 POP PSW RET DB 3FH,06H,5BH,4FH DB 66H,60H,70H,07H DB 7FH,6rH,77H,7CH DB 39H,5EH,79

21、H,71H DB 31H,6EH,40H,23H DB 00H,9,39,延時子程序 YSH: PUSH PSW SETB PSW.3 MOV R0,0FFH SH: MOV R1,0FFH SH0: DJNZ R1,#H0 DJNZ R0, SH POP PSW RET,9,40,機械手控制示意圖,9,41,取包子程序 P1.6-正/反轉(zhuǎn)控制 30H、31H步進脈沖暫存器(X方向) QBCX: SETB P1.6 ;正轉(zhuǎn) MOV 30H,04H ; X0固定脈沖數(shù) MOV 31H,0D8H ACALL XYXC ;調(diào)用X方向運行子程序 ACALL CSHC ;調(diào)用測試子程序 MOV 30H,

22、33H ;X方向列脈沖數(shù) MOV 31H, 34H ;送30H、31H單元 ACALL XYXC ;調(diào)用X方向運行子程序 MOV 30H,35H ;Y方向行脈沖數(shù) MOV 31H,36H ;送30H、31H單元 ACALL YYXC ;調(diào)用Y方向運行子程序 ACALL QWZC ;調(diào)用取物子程序 CLR P1.6 ;反轉(zhuǎn),9,42,MOV 30H, 35H MOV 31H, 36H ACALL YYXC ;調(diào)用Y方向運行子程序 MOV 30H, 33H MOV 31H, 34H ACALL XYXC ;調(diào)用X方向運行子程序 MOV 30H,04H; X0固定脈沖數(shù) MOV 31H, #0D8H

23、 ACALL XYXC ;調(diào)用X方向運行子程序 ACALL FWZC ;調(diào)用放物子程序 AJMP SUN,9,43,存包子程序 P.6-正/反轉(zhuǎn)控制 30H、31H步進脈沖暫存器(X方向) 33H、34H -35H、36H CBCX: ACALL QWZC SETB P16 MOV 30H,04H ;X0固定脈沖數(shù) MOV 31H,0D8H ; ACALL XYXC ACALL CSHC MOV 30H,33H MOV 31H,34H ACALL XYXC MOV 30H,35H MOV 31H,36H ACALL YYXC ACALL FWZC CLR P16,9,44,MOV 30H, 3

24、5H MOV 31H, 36H ACALL YYXC MOV 30H, 33H MOV 31H, 34H ACALL XYXC MOV 31H,04H MOV 31H,0D8H ACALL XYXC AJMP SUN,9,45,X方向運行程序 P35脈沖信號輸出線-控制MX電機 XYXC: PU3H PSW SETB PSW.4 MOV R0,30H ABC0: MOV R1,31H ABC1: CLR P35 ACALL YSH SETB P35 ACALL YSH DJNZ R1,ABC1 DJNZ R1,ABC0 POP PSW RET,9,46,Y方向運行程序 P36脈沖信號輸出線-控

25、制MY電機 YYXC: PUSH PSW SETB PSW.4 MOV R0, 30H ADC2: MOV R1,31H ADC3: CLR P36 ACALL YSH SETB P36 ACALL YSH DJNZ R1, ADC3 DJNZ R0, ADC2 POP PSW RET,9,47,取物子程序 P1.6正/反轉(zhuǎn) P36Y方向脈沖輸出(40H) P3.7Z方向脈沖輸出 (66H) QWZC: PUSH PSW SETB PSW.4 SETB P1.6 MOV R0, 66H ABC4: CLR P3.7 ACALL YSH SETB P37 ACALL YSH DJNZ R0,AD

26、C4 MOV R0,40H ABC5: CLR P36 ACALL YSH SETB P3.6 ACALL YSH DJNZ R0, ABC5,9,48,CLR P16 MOV R0, 66H ABC6: CLR P37 ACALL YSH SETB P37 ACALL YSH DJNZ R0, ABC6 MOV R0, 40H ABC7: CLR P36 ACALL YSH SETB P36 ACALL YSH DJNZ R0,ABC7 POP PSW RET,9,49,放物子程序 P1.6正/反轉(zhuǎn) P36Y方向脈沖輸出(40H) P3.7Z方向脈沖輸出 (66H) FWZC: PUSH P

27、SW SETB PSW.4 SETB P16 MOV R0, 40H ABC8:CLR P36 ACALL YSH SETB P36 ACALL YSH DJNZ R0, ADC8,9,50,MOV R0,66H ABC9: CLR P37 ACALL YSH DJNZ R0,ABC9 CLR P16 MOV R0,40H ABC10: CLR P36 ACALL YSH SETB P36 ACALL YSH DJNZ R0,ADC10,9,51,MOV R0, 66H ABC11:CLR P37 ACALL YSH SETB P37 ACALL YSH DJNZ R0, ADC11 POP PSW RET,9,52,測試子程序 41H貨位列號暫存單元 40H貨位層號暫存單元 41H 40H 33H 04H 03H 02H 01H 35H 05H 03H 01H

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論