找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3154|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

求大神指點(diǎn)步進(jìn)電機(jī)控制

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
要求兩個(gè)步進(jìn)電機(jī)同時(shí)運(yùn)行,啟停,可正反轉(zhuǎn),可加減速。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:111634 發(fā)表于 2017-9-18 19:32 | 只看該作者
本帖最后由 zl2168 于 2017-9-18 19:42 編輯

實(shí)例98  驅(qū)動(dòng)四相步進(jìn)電機(jī)
Proteus仿真一下,確認(rèn)有效
實(shí)例98 四相步進(jìn)電機(jī).rar (35.83 KB, 下載次數(shù): 7)

。以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil CProteus》清華大學(xué)出版社ISBN 978-7-302-41682-1,內(nèi)有常用的單片機(jī)應(yīng)用100案例,用于仿真實(shí)驗(yàn)操作,電路與程序真實(shí)可靠可信可行。書中電路和程序設(shè)計(jì)有詳細(xì)說明,程序語句條條有注解。仿真電路和Hex文件能在清華出版社網(wǎng)站免費(fèi)下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網(wǎng)上書店打折購(gòu)買。
回復(fù)

使用道具 舉報(bào)

板凳
ID:215629 發(fā)表于 2017-9-18 20:30 | 只看該作者
把兩個(gè)電機(jī)寫到同一個(gè)函數(shù)比如
回復(fù)

使用道具 舉報(bào)

地板
ID:215629 發(fā)表于 2017-9-18 20:33 | 只看該作者
把兩個(gè)電機(jī)寫到同一個(gè)函數(shù)里
比如
void dianji ()
{
moto1=1
moto2=1
moto1=0
moto2=0
....
}
把脈沖寫進(jìn)去
回復(fù)

使用道具 舉報(bào)

5#
ID:60379 發(fā)表于 2017-9-18 21:06 | 只看該作者
以下內(nèi)容來源于《51單片機(jī)輕松入門 基于STC15W4K系列》,只要把這章內(nèi)容搞懂后想怎么控制就怎么控制。
第15章  步進(jìn) 電 機(jī) 測(cè) 試
15.1 步進(jìn)電機(jī)特點(diǎn)
步進(jìn)電機(jī)也稱為步進(jìn)馬達(dá),相比其它電機(jī)有以下特點(diǎn):
① 步進(jìn)電機(jī)旋轉(zhuǎn)角度和輸入脈沖成正比,通常市面所售步進(jìn)電機(jī)說明書會(huì)說明其步進(jìn)角(也就是一個(gè)脈沖所產(chǎn)生的旋轉(zhuǎn)角度),比如常見的小體積永磁式電機(jī)的步進(jìn)角是7.5°,則送給它48個(gè)脈沖使步進(jìn)電機(jī)正好轉(zhuǎn)動(dòng)一圈。
② 步進(jìn)電機(jī)誤差很小,沒有累積誤差,因此控制步進(jìn)電機(jī)正反轉(zhuǎn)還是會(huì)回到原來的位置,不會(huì)因?yàn)檎`差累積而使初始位置越來越遠(yuǎn)。
③ 具有自保持特性,任何一相線圈加上電源后,電機(jī)本身具有自保持力矩,不送脈沖情況下會(huì)停止在一定位置,不會(huì)改變。
④ 步進(jìn)電機(jī)空載最高啟動(dòng)頻率一般能達(dá)到450Hz,使用頻率不能超過允許最高頻率,否則電機(jī)只能振動(dòng),無法運(yùn)轉(zhuǎn)。
⑤ 常見步進(jìn)電機(jī)供電電壓是5V、12V、24V,供電電壓允許誤差±10%,電機(jī)外殼上一般都會(huì)對(duì)供電電壓規(guī)格作相應(yīng)標(biāo)識(shí)。
常見步進(jìn)電機(jī)外形與內(nèi)部電路如圖15-1所示。




15.4 步進(jìn)電機(jī)驅(qū)動(dòng)實(shí)例
例15.1  步進(jìn)電機(jī)正反轉(zhuǎn)測(cè)試,使用圖15-7或圖15-8的電路,采用1-2相勵(lì)磁,要求上電后順轉(zhuǎn)200步,然后反轉(zhuǎn)200步,如此循環(huán),完整實(shí)驗(yàn)代碼如下。
// 使用P20、P21、P22、P23口驅(qū)動(dòng)電機(jī)
#include "STC15W4K.H "
unsigned char codeBiaoGe[8]={0x08,0x0C,0x04,0x06,0x02,0x03,0x01,0x09};
                    //表格,換算成二進(jìn)制 1000,1100,0100,0110 ,0010,0011, 0001 1001
                    //P2口輸出低4位驅(qū)動(dòng)電機(jī)   A  B /A  /B     
                    //1——2相勵(lì)磁,發(fā)8次脈沖(順序輸出上面表格)轉(zhuǎn)動(dòng)4步
void PROT_Init(void)
{   
    P2M1 =0x80;     // 1000 0000   P2.0、P2.1、P2.2、P2.3、接驅(qū)動(dòng)功率管,推挽輸出
    P2M0 = 0x0f;     // 0000 1111   P2.7 接接霍爾傳感器信號(hào)輸入,高阻輸入
}
void shun200()                 // 順轉(zhuǎn)200步
{
    unsigned int i;
    unsigned charn;
    n=0;
    for(i=0;i<400;i++)         // 200步,i/2為實(shí)際步數(shù)
    {   
        P2=BiaoGe[n]|0xf0;     // 不影響P2口高4位     
        delay3ms();
        n=n+1;  
        if (n>7)
        {              
            n=0;
        }           
    }
    P2&=0xf0;                    // 保證電機(jī)繞組斷電
}
void fan200()                    // 反轉(zhuǎn)200步
{
    unsigned int i;
    unsigned charn;
    n=8;            
    for(i=0;i<400;i++)            // 200步,i/2為實(shí)際步數(shù)
    {   
        n=n-1;      
        P2=BiaoGe[n]|0xF0;        //不影響P2口高4位         
        delay3ms();
        if (n==0)
        {               
            n=8;
        }           
    }
    P2&=0xf0;                     // 保證電機(jī)繞組斷電   
}
void main(void)                    
{           
    PROT_Init();                 // 初始化端口
    while(1)
    {
        shun200();
        delay1s();
        fan200();
        delay1s();
    }   
}



回復(fù)

使用道具 舉報(bào)

6#
ID:231508 發(fā)表于 2017-9-19 10:50 | 只看該作者
電路相同,時(shí)序相同。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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