找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7676|回復(fù): 6
收起左側(cè)

[原創(chuàng)diy]試驗基于51單片機(jī)驅(qū)動57步進(jìn)電機(jī)

[復(fù)制鏈接]
ID:74784 發(fā)表于 2016-9-14 19:31 | 顯示全部樓層 |閱讀模式
找到一對拆機(jī)的57步進(jìn)電機(jī)
是為以后的遙控小車做準(zhǔn)備
于是先做了一個驅(qū)動試驗
試驗結(jié)果尚可







我的57步進(jìn)電機(jī)2.jpg 我的57步進(jìn)電機(jī)1.jpg

相關(guān)帖子

回復(fù)

使用道具 舉報

ID:74784 發(fā)表于 2016-9-14 19:33 | 顯示全部樓層
驅(qū)動板與驅(qū)動電路圖


步進(jìn)電機(jī)接線圖1.jpg 步進(jìn)電機(jī)接線圖2.jpg sanyo步進(jìn)電機(jī)參數(shù).jpg

步進(jìn)電機(jī)14問.pdf (112.43 KB, 下載次數(shù): 19) 步進(jìn)電機(jī)57參數(shù).pdf (234.83 KB, 下載次數(shù): 16) 步進(jìn)電機(jī)原理.pdf (617.28 KB, 下載次數(shù): 13)
回復(fù)

使用道具 舉報

ID:74784 發(fā)表于 2016-9-14 19:34 | 顯示全部樓層
我寫的驅(qū)動代碼
僅僅供壇友做參考


;試驗57步進(jìn)電機(jī)驅(qū)動匯編代碼
;11.0592MHz晶振+AT89C2051/4051
;Lxa0最后修改于2016-9-17--V2.0
;t0備用,t1產(chǎn)生9600波特率
;p10p11p12p13分別對應(yīng)步進(jìn)電機(jī)ABCD,低電平有效
;步進(jìn)角為1.8度,一圈360度,需要200個脈沖完成
;A組線圈   P1.0
;B組線圈   P1.1
;C組線圈   P1.2
;D組線圈   P1.3

org 0000h
ajmp mm               ;轉(zhuǎn)主程序
org 0023h
ajmp qz               ;轉(zhuǎn)串口讀取指令


;主程序*******************************************************
org 0100h
mm:nop
mov p1,#0ffh           ;關(guān)閉全部
mov r0,#00h            ;讀dptr首址用
mov r1,#00h            ;存放正反轉(zhuǎn)脈沖數(shù)據(jù)(1圈200個脈沖,16制為c8h)
mov r2,#00h            ;存放改變轉(zhuǎn)速的數(shù)據(jù)
mov r3,#00h            ;備用
mov r4,#00h            ;r4和r5短延時用
mov r5,#00h
mov r6,#00h            ;r6和r7長延時用
mov r7,#00h
mov 20h,#00h           ;20h設(shè)置wifi標(biāo)志
mov 21h,#00h           ;21h設(shè)置動作標(biāo)志
mov 22h,#00h           ;動作代碼存放單元
mov sp,#4fh            ;設(shè)堆棧入口50h
mov scon,#50h          ;設(shè)置串口方式1,允許串口接收
mov pcon,#00h          ;設(shè)置波特率9600
mov tmod,#21h          ;T0設(shè)方式1,T1方式2(自動重裝)
mov th1,#0fdh          ;T1設(shè)初始值
mov tl1,#0fdh          ;TH1=TL1=#0fdh(波特率9600)
clr et1                ;禁止T1中斷
clr ri
clr ti
setb tr1               ;開T1定時器
setb es                ;開串口中斷
setb ea                ;開總中斷
mm1:nop
acall ssd              ;雙閃溝?
acall ssd
acall ssd
acall zz               ;調(diào)用正轉(zhuǎn)
acall ssd              ;雙光燈
acall ssd
acall ssd
acall fz               ;調(diào)用反轉(zhuǎn)
sjmp mm1


;正轉(zhuǎn)子程序***********************************************************************
ORG 0200H
zz:push acc
MOV R1,#0c8h           ;正轉(zhuǎn)1圈發(fā)200個脈沖,單八拍
zz1:MOV R0,#00h
zz2:mov p1,0ffh
mov p1,#0ffh
MOV A,R0
MOV DPTR,#0380h
MOVC A,@A+DPTR
JZ zz1                 ;當(dāng)A=0時轉(zhuǎn)完1圈完畢
MOV P1,A
LCALL ys               ;這個時間是調(diào)速的,時間越長速度越慢
INC R0
DJNZ R1,zz2
MOV P1,#0ffh
mov p1,#0ffh
pop acc
ret

;反轉(zhuǎn)子程序***********************************************************************
org 0280h
fz:push acc
MOV R1,#0c8h           ;反轉(zhuǎn)1圈發(fā)200個脈沖,單八拍
fz1:MOV R0,#00H
fz2:MOV P1,#0ffh
mov p1,#0ffh
MOV A,R0
MOV DPTR,#03c0h
MOVC A,@A+DPTR
JZ fz1                 ;當(dāng)A=0時反轉(zhuǎn)1圈完畢
MOV P1,A
CALL ys
INC R0
DJNZ R1,fz2
MOV P1,#0ffh
mov p1,#0ffh
pop acc
ret

;轉(zhuǎn)速控制子程序***********************************************************************
org 0300h
ys:djnz r2,ys           ;步進(jìn)電機(jī)的轉(zhuǎn)速
RET

org 0380h
TABLE1:
DB 0feh,0fcH,0fdh,0f9H,0fbh,0f3H,0f7h,0f6H     ;正轉(zhuǎn)表
DB 00h                                         ;正傳結(jié)束

org 03c0h
TABLE2:
DB 0feh,0f6h,0f7h,0f3h,0fbh,0f9h,0fdh,0fch     ;反轉(zhuǎn)表
DB 00h                                         ;反轉(zhuǎn)結(jié)束


;接收并取出串口接收到的數(shù)據(jù)指令*******************************
org 0400h
qz:nop
clr ri                 ;先清零串口接收中斷位
qz00:reti


;閃光燈代碼***************************************************
org 0500h
ssd:clr p3.7           ;Gled閃爍發(fā)光
acall dys
setb p3.7
acall dys
acall cys
clr p3.7
acall dys
setb p3.7
acall cys
acall cys
acall cys
acall cys
acall cys
ret

dys:mov r4,#0ffh       ;短延時
mov r5,#10h
dys1:djnz r4,dys1
dys2:djnz r5,dys1
ret

cys:mov r6,#0ffh       ;長延時
mov r7,#0ffh
cys1:djnz r6,cys1
cys2:djnz r7,cys1
ret

end

;四相八拍步進(jìn)電機(jī)順序
;正轉(zhuǎn):A-AB-B-BC-C-CD-D-DA----------0feh,0fcH,0fdh,0f9H,0fbh,0f3H,0f7h,0f6h
;反轉(zhuǎn):A-AD-D-DC-C-CB-B-BA----------0feh,0f6h,0f7h,0f3h,0fbh,0f9h,0fdh,0fch
回復(fù)

使用道具 舉報

ID:262 發(fā)表于 2016-9-24 13:50 | 顯示全部樓層
太詳細(xì)了,謝謝樓主分享,果斷收藏保存.我以前只驅(qū)動過5線的步進(jìn)電機(jī)
回復(fù)

使用道具 舉報

ID:74784 發(fā)表于 2016-10-21 19:40 | 顯示全部樓層

我的這個是2個中心抽頭
所以出來6根線
5線的就是把2個抽頭合并成一個了
回復(fù)

使用道具 舉報

ID:145202 發(fā)表于 2017-10-28 12:09 | 顯示全部樓層
非常好支持下 我拿來放在57上同是1.8角卻轉(zhuǎn)動一點正反轉(zhuǎn) 不知哪里問題
回復(fù)

使用道具 舉報

ID:451441 發(fā)表于 2019-7-26 08:55 | 顯示全部樓層
謝謝分享,正好在用57步進(jìn)電機(jī)
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表