<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于89C55和GAL16V8,MC1413的步進(jìn)電機驅動(dòng)器的設計

基于89C55和GAL16V8,MC1413的步進(jìn)電機驅動(dòng)器的設計

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

  引言

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

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

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

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

基于89C55和GAL16V8,MC1413的步進(jìn)電機驅動(dòng)器的設計

  軟件設計

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

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。

  設置軟件陷阱

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

  程序流程圖如圖2。

基于89C55和GAL16V8,MC1413的步進(jìn)電機驅動(dòng)器的設計

  匯編原碼如下:

  MOV120: MOV R3,#51H
  MOV121: LCALL MOV124 ;12
行前進(jìn)程序1
   DJNZ R3,MOV121
   MOV P1,#0H ;電機矢電
  MOV R0,#100
  RD08: LCALLDELY
  DJNZ R0,RD08
  MOV80: MOV R3,#13H
   MOV 2CH,#7 ;8列前進(jìn)程
序1
  MOV81: LCALL MOV84
   DJNZ R3,MOV81
   MOV P1,#0H ;電機矢電
   MOVR0,#10H
  RD09: LCALLDELY ;測量單
孔程序
   DJNZR0,RD09
   SETBET0; 開(kāi)定時(shí)器0
  LCALLCOTP ; 單孔測量程序
  CLRET0;關(guān)定時(shí)器0
  LCALLQUIT
  INC2DH
  LCALLD10MS ;延時(shí)1毫秒
  LCALLD10MS ; 延時(shí)1毫秒
  MOV85: MOV R4,#0CH ;8列前
進(jìn)程序2
  MOV83: LCALL MOV86
   DJNZ R4, MOV83
   MOV P1,#0H
   MOV R0,#10H
  RD03: LCALLDELY
  DJNZR0,RD03
   SETBET0;開(kāi)定時(shí)器0
  LCALLCOTP;單孔測量程序
  CLR ET0 ;關(guān)定時(shí)器0
  LCALLQUIT
  INC2DH
  LCALLD10MS;延時(shí)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行
前進(jìn)程序2
   DJNZ R5,MOV123
   MOV P1,#0H ;電機矢電
   MOVA,R7
  MOV2DH,#0
  INC2EH
  DJNZR7,MOV80 ;循環(huán)行數次
  
  結語(yǔ)

  采用此設計的步進(jìn)電機驅動(dòng)系統,運動(dòng)平穩,速度快,控制精度高,該產(chǎn)品已應用于哈爾濱思創(chuàng )生物的單光子分析計數儀的驅動(dòng)系統。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>