在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于89C55和GAL16V8,MC1413的步進電機驅(qū)動器的設(shè)計

            基于89C55和GAL16V8,MC1413的步進電機驅(qū)動器的設(shè)計

            作者: 時間:2012-01-09 來源:網(wǎng)絡(luò) 收藏

              引言

              步進電機廣泛應(yīng)用于對精度要求比較高的運動控制系統(tǒng)中,如機器人、打印機、軟盤驅(qū)動器、繪圖儀、機械閥門控制器等。目前,對步進電機的控制主要有由分散器件組成的環(huán)形脈沖分配器、軟件環(huán)形脈沖分配器、專用集成芯片環(huán)形脈沖分配器等。分散器件組成的環(huán)形脈沖分配器體積比較大,同時由于分散器件的延時,其可靠性大大降低;軟件環(huán)形分配器要占用主機的運行時間,降低了速度;專用集成芯片環(huán)形脈沖分配器集成度高、可靠性好,但其適應(yīng)性受到限制,同時開發(fā)周期長、需求費用較高。
              
              和GAL16V8

              是Atmel公司的低電壓,高性能CMOS 8 位單片機,片內(nèi)含20k bytes的可反復(fù)擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用Atmel公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準MCS-51指令系統(tǒng),引腳兼容工業(yè)標準 89C51和89C52芯片,采用通用編程方式,片內(nèi)置通用8位中央處理器和Flash存儲單元,內(nèi)置功能強大的微處理器的AT可提供許多高性價比的解決方案,適用于多數(shù)嵌入式應(yīng)用系統(tǒng)。

              通用陣列邏輯GAL是美國Lattice公司研制的一種電可擦除的可編程的新型PLD器件。近幾年來,GAL以其高性能、高可靠性、可擦除及輸出邏輯結(jié)構(gòu)可組態(tài)等特性和100%的成品率,博得廣大用戶的信賴。它可以用來構(gòu)成譯碼器、優(yōu)先級編碼器、多路開關(guān)、比較器、移位寄存器、計數(shù)器、總線仲裁器等。采用GAL16V8器件對兩相和四相混和式步進電機進行控制,不僅簡化了系統(tǒng)的結(jié)構(gòu),降低了成本,而且編程靈活方便,提高了系統(tǒng)的可靠性,使系統(tǒng)具有更強的適應(yīng)性。
              
              硬件設(shè)計

              本設(shè)計選用GALl6V8為環(huán)形脈沖分配器和MC1413(國產(chǎn)型號為5G1413)七路達林頓驅(qū)動器陣列。最大驅(qū)動電流可以達到500mA.通常應(yīng)用時是把負載步進電機的一端接到VDD(12V)上,另一端接到輸出引腳上,如16腳。了防止程序進入死循環(huán),增加了外部的硬件看門狗定時器MAX813L,其內(nèi)部的看門狗定時器監(jiān)控UP/UC的工作。如果在1.6s內(nèi)未檢測到其工作,內(nèi)部的定時器將使看門狗輸出WDO處于低電平狀態(tài),WDO將保持低電平直到在WDI檢測到UP/UC的工作。將WR和WDO連接可使看門狗超時產(chǎn)生復(fù)位。具體硬件電路如圖1所示。

            基于89C55和GAL16V8,MC1413的步進電機驅(qū)動器的設(shè)計

              軟件設(shè)計

              通常,步進電機的脈沖控制是由邏輯電路實現(xiàn)的。在計算機控制的系統(tǒng)中,也可以通過編制程序,由擴展I/O口輸出脈沖來決定電機的運行方式、方向及轉(zhuǎn)速。這種方式電路簡單、控制靈活,但占用CPU的時間過多,每次驅(qū)動電機時,PC機都得被占用。GAL器件有多種型號,根據(jù)設(shè)計的需要,同時從經(jīng)濟的角度考慮,選用GALl6V8來實現(xiàn)四相混和式步進電機進行控制。使用ABEL語言編程,原碼如下:

            module motor
            title
            Operation of the simulator on devices with
            motor
               DATA I/O Corp. 21 10 2002
               FB1 device 'P16V8R';
               D1,D2,D3,D4 pin 2,3,4,5;
               F1,F2,F3,F4,F5,F6,F7,F8 pin
            19,18,17,16,15,14,13,12;
              equations
               F8 = D1D2D3D4;
               F7 = D1D2D3!D4;
               F6 = D1D2!D3D4;
               F5 = D1D2!D3!D4;
               F4 = D1!D2D3D4;
               F3 = D1!D2D3!D4;
               F2 = D1!D2!D3D4;
               F1 = D1!D2!D3!D4;
            end motor。

              設(shè)置軟件陷阱

              當程序進入到非程序區(qū),只要在非程序區(qū)設(shè)置攔截措施,使程序進入陷阱,然后強迫程序回到初始狀態(tài)。如對CPU的RST指令對應(yīng)的字節(jié)碼為 0FFH,如果不用的程序存儲區(qū)預(yù)先寫入0FFH,則當程序因干擾而“飛”到該區(qū)域執(zhí)行代碼時,就相當于執(zhí)行1條RST指令,從而達到系統(tǒng)復(fù)位的目的。

              程序流程圖如圖2。

            基于89C55和GAL16V8,MC1413的步進電機驅(qū)動器的設(shè)計

              匯編原碼如下:

              MOV120: MOV R3,#51H
              MOV121: LCALL MOV124 ;12
            行前進程序1
               DJNZ R3,MOV121
               MOV P1,#0H ;電機矢電
              MOV R0,#100
              RD08: LCALLDELY
              DJNZ R0,RD08
              MOV80: MOV R3,#13H
               MOV 2CH,#7 ;8列前進程
            序1
              MOV81: LCALL MOV84
               DJNZ R3,MOV81
               MOV P1,#0H ;電機矢電
               MOVR0,#10H
              RD09: LCALLDELY ;測量單
            孔程序
               DJNZR0,RD09
               SETBET0; 開定時器0
              LCALLCOTP ; 單孔測量程序
              CLRET0;關(guān)定時器0
              LCALLQUIT
              INC2DH
              LCALLD10MS ;延時1毫秒
              LCALLD10MS ; 延時1毫秒
              MOV85: MOV R4,#0CH ;8列前
            進程序2
              MOV83: LCALL MOV86
               DJNZ R4, MOV83
               MOV P1,#0H
               MOV R0,#10H
              RD03: LCALLDELY
              DJNZR0,RD03
               SETBET0;開定時器0
              LCALLCOTP;單孔測量程序
              CLR ET0 ;關(guān)定時器0
              LCALLQUIT
              INC2DH
              LCALLD10MS;延時1毫秒
              LCALLD10MS
               DJNZ 2CH,MOV85 ;測量,循
            環(huán)7次,
               CJNE R7,#1,RD02 ;判斷測量
            是否完畢
               POP07H
              SETB P3.3 ;P3.3=1
            high voltage = 450V
              LCALL BK080 ;測量行列
            完畢,返回初始位置程序
              LCALL BK120
              LCALL LOCKOFF
              RD02: LCALLBK080 ;8列后
            退程序
               MOVR0,#250
              RD0A: LCALLDELY
               LCALL DELY
                 DJNZR0,RD0A
              RD01: MOV R5,#0BH
              MOV123: LCALL MOV125 ;12行
            前進程序2
               DJNZ R5,MOV123
               MOV P1,#0H ;電機矢電
               MOVA,R7
              MOV2DH,#0
              INC2EH
              DJNZR7,MOV80 ;循環(huán)行數(shù)次
              
              結(jié)語

              采用此設(shè)計的步進電機驅(qū)動系統(tǒng),運動平穩(wěn),速度快,控制精度高,該產(chǎn)品已應(yīng)用于哈爾濱思創(chuàng)生物的單光子分析計數(shù)儀的驅(qū)動系統(tǒng)。



            關(guān)鍵詞: 89C55 步進電機驅(qū)動器

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉