標(biāo)題: 求助步進(jìn)電機(jī)怎么用51單片機(jī)控制 [打印本頁]

作者: xiong123154    時(shí)間: 2017-8-23 22:18
標(biāo)題: 求助步進(jìn)電機(jī)怎么用51單片機(jī)控制
圖片是步進(jìn)電機(jī)和控制器下面是我寫的程序
用51單片機(jī)  怎么控制這個(gè)驅(qū)動(dòng) (DM542) 連接電機(jī)驅(qū)動(dòng)電機(jī)

#include<reg52.h>  


/*****************************************************************/

unsigned char a,i,j,k;
sbit ANJIAN=P3^5;
void delay(i)//延時(shí)函數(shù)
{
for(j=0;j<i;j++)
for(k=0;k<250;k++);
}
main()
{
a=0;
while(1)
{
if(ANJIAN==0)
{
a++;
while(!ANJIAN);
switch(a)
        {
  /**************正轉(zhuǎn)  步距腳90度****************/
//        case 1:P2=0x02;break;//         0010  45  //         1 -45  2 +45 3 0  4 +135  5 0          6 +90          7 +45          8 -135          9  -90  
//        case 2:P2=0x06;break;//         0110  90             A  0  B -45   C +180  D -135 e  +135 f 0
//        case 3:P2=0x04;break;//         0100  135
//        case 4:P2=0x0c;break;//         1100  180
//        case 5:P2=0x08;break;//         1000  225
//        case 6:P2=0x09;break;//  1001  270
//        case 7:P2=0x01;break;//        0001  315
//        case 8:P2=0x03;break;//        0011  360
//  case 9:a=0;break;


default:break;       
        }

}
}
}





作者: oo0o_11    時(shí)間: 2017-8-23 23:33
先檢查接線是否接對(duì)。PUL是給電機(jī)轉(zhuǎn)動(dòng)的脈沖信號(hào),dir是選正轉(zhuǎn)或者反轉(zhuǎn),ENA應(yīng)該是使能,這三個(gè)信號(hào)在驅(qū)動(dòng)器里面應(yīng)該是接的光耦,正接5v,負(fù)接單片機(jī)IO。編程思路應(yīng)該是  先給使能,再給方向,然后給脈沖驅(qū)動(dòng),脈沖個(gè)數(shù)取決于你要轉(zhuǎn)的角度和細(xì)分設(shè)置。時(shí)序買的模塊應(yīng)該有說明書會(huì)講。
作者: yzwzfyz    時(shí)間: 2017-8-24 00:18
認(rèn)真研讀控制驅(qū)動(dòng)器(DM542),記住永遠(yuǎn)的法則:要控制什么,就必須先了解什么。。
作者: xiong123154    時(shí)間: 2017-8-24 10:04
oo0o_11 發(fā)表于 2017-8-23 23:33
先檢查接線是否接對(duì)。PUL是給電機(jī)轉(zhuǎn)動(dòng)的脈沖信號(hào),dir是選正轉(zhuǎn)或者反轉(zhuǎn),ENA應(yīng)該是使能,這三個(gè)信號(hào)在驅(qū)動(dòng) ...

脈沖驅(qū)動(dòng),這塊理解不夠   我原來是使用ULN2003A或者ULN2803 來驅(qū)動(dòng)步進(jìn)電機(jī)的 使用的是四個(gè)IO口來控制 ,對(duì)于這里的單個(gè)IO口控制 ,請(qǐng)問能指導(dǎo)下嗎
作者: xiong123154    時(shí)間: 2017-8-24 10:05
yzwzfyz 發(fā)表于 2017-8-24 00:18
認(rèn)真研讀控制驅(qū)動(dòng)器(DM542),記住永遠(yuǎn)的法則:要控制什么,就必須先了解什么。!

驅(qū)動(dòng)器理解了大部分 ,主要是脈沖驅(qū)動(dòng),這塊理解不夠   我原來是使用ULN2003A或者ULN2803 來驅(qū)動(dòng)步進(jìn)電機(jī)的 使用的是四個(gè)IO口來控制電機(jī) ,對(duì)于這里的單個(gè)IO口控制 ,請(qǐng)問能指導(dǎo)下嗎
作者: oo0o_11    時(shí)間: 2017-8-24 11:44
xiong123154 發(fā)表于 2017-8-24 10:04
脈沖驅(qū)動(dòng),這塊理解不夠   我原來是使用ULN2003A或者ULN2803 來驅(qū)動(dòng)步進(jìn)電機(jī)的 使用的是四個(gè)IO口來控制  ...

高電平 延時(shí)  低電平  延時(shí)
作者: xiong123154    時(shí)間: 2017-8-24 14:18
oo0o_11 發(fā)表于 2017-8-24 11:44
高電平 延時(shí)  低電平  延時(shí)

單片機(jī)要和驅(qū)動(dòng)模塊共地嗎
作者: gm388    時(shí)間: 2017-8-24 14:43
脈沖,方向,使能,直接用單片機(jī)發(fā)脈沖(高低電平)信號(hào)就可以轉(zhuǎn)起來
作者: yzwzfyz    時(shí)間: 2017-8-24 16:11
你在用晶體管陣列驅(qū)動(dòng)電機(jī)時(shí),不但要向晶體管陣列送數(shù)據(jù),而且要按一定的邏輯次序送入數(shù)據(jù)。
現(xiàn)在人家把這一塊都做好了,放在這個(gè)驅(qū)動(dòng)器里面了,你只要研讀一下它的數(shù)據(jù)接口命令,按命令送入數(shù)據(jù)就OK了。
作者: oo0o_11    時(shí)間: 2017-8-24 22:33
xiong123154 發(fā)表于 2017-8-24 14:18
單片機(jī)要和驅(qū)動(dòng)模塊共地嗎

需要共地。。。。。
作者: jubaolun    時(shí)間: 2017-8-25 15:37
用單片機(jī)3個(gè)IO口分別輸出脈沖信號(hào),正反轉(zhuǎn)信號(hào),勢(shì)能信號(hào)。共地。驅(qū)動(dòng)器注意設(shè)置電流,細(xì)分等。
作者: xiong123154    時(shí)間: 2017-12-22 14:00
jubaolun 發(fā)表于 2017-8-25 15:37
用單片機(jī)3個(gè)IO口分別輸出脈沖信號(hào),正反轉(zhuǎn)信號(hào),勢(shì)能信號(hào)。共地。驅(qū)動(dòng)器注意設(shè)置電流,細(xì)分等。

謝謝 ,這個(gè)會(huì)啦




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1