完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
如题,我用的是proteus中的6线四相步进电机
这个N相和励磁方式是对应的还是可以自由选择,我写了个小程序测试 一相励磁 方式,为什么电机可以转但是转的太慢,写了个 二相励磁 方式发现电机又不转了 还有这个电机的六个接口分别是什么...我只知道中间是电源 写的小测试程序 #include typedef unsigned char uchar; typedef unsigned int uint; uchar code table[]={0x01,0x02,0x04,0x08}; uchar code table2[]={0x08,0x04,0x02,0x01}; bit flag=1; void qudong() { uchar i; if(flag) { for(i=0;i<4;i++) { P1=table; } } else { for(i=0;i<4;i++) { P1=table2; delay(1); } } } void main() { while(1) { qudong(); } } |
|
相关推荐
8个回答
|
|
本帖最后由 MOP 于 2016-11-2 19:08 编辑
嗨,接線沒錯唷,這是內部構造,六線4相是28BYJ-48吧:) 這類馬達不需要改變電流方向,為單極步進馬達(Unipolar Stepper) 跟ULN2003接線方式A線圈的A(2),A'(4)和B線圈的B(1),B'(3),AB線圈兩者之間的COM(5)端接電源,共5線 再來是您的Code了 uchar code table[]={0x01,0x02,0x04,0x08}; uchar code table2[]={0x08,0x04,0x02,0x01};這樣沒有二相激磁唷,只有一相,table1和2只是轉動方向相反而已(順時鐘<=>逆時鐘) 給您參考1,2,1-2相三種激磁方式的序列 1. 一相激磁:1000-0100-0010-0001 2. 二相激磁:1100-0110-0011-1001 3. 一/二相激磁:1000-1100-0100-0110-0010-0011-0001-1001 因此 uchar code table2[]={0x09,0x03,0x06,0x0C}; 希望對您有用:) |
|
|
|
|
|
|
|
本帖最后由 艾笠调查团 于 2016-11-3 12:26 编辑
MOP 发表于 2016-11-2 18:55 您好,看了您的回復後我又看了看書,現在知道幾相和幾拍是什麽意思了,但是把您的代碼復制後發現電機不轉了。 又到網上查教程,把電機的兩個接口換了壹下,改了壹下延遲函數,在PI=table[]下面加了delay(1),發現電機在左右抖動,把延遲改成delay(2),電機又壹邊抖動壹邊很慢地順時針轉動,把延遲改成delay(20),電機這次轉的快了而且抖動的不明顯了而且停下來的時候會有壹個緩沖,把延遲改成delay(50),電機轉的更快但是還能看到中間會有明顯停頓 把delay改成別人的delay,結果這種緩沖情況居然就沒了 我的理解是給電機壹個脈沖信號讓它轉動壹定角度,給得越快轉的越快,所以不加延遲應該轉的最快,但其實不加延遲電機幾乎就不會轉,加的少會左右抖動,用別人的延遲也是這樣,但是加延遲多別人的delay()就不會出現緩沖而是壹直轉,也許是電機跟不上單片機的速度.....? 您可以解釋壹下這種情況嗎? 我寫的delay: void delay(uchar z) { uchar a; for(z=z;z>0;z--) for(a=250;a>0;a--); //為何這個a不能太小 } 別人寫的delay uchar i,j,k; //不能放到延遲函數裏面,否則會抖動 void delay(i)//延時函數 { for(j=0;j for(k=0;k<250;k++); } 改过的图: |
|
|
|
改过的图
|
|
|
|
艾笠调查团 发表于 2016-11-3 12:27 嗨,如果我理解您的電路圖沒錯的話,左右各是AB線圈,所以接法上我有找到問題了 1C <=> 左邊線圈A端 2C <=> 右邊線圈B端 3C <=> 左邊線圈A'端 4C <=> 右邊線圈B'端 所以我沒看仔細您的後一組接法,您只要將3C和4C的接線調換即可:P |
|
|
|
仿真和实际差很多
|
|
|
|
MOP 发表于 2016-11-3 13:22 我懂了...謝謝老師!問題說到底都是圍繞還它是靠磁轉動這一特點的... |
|
|
|
suoma 发表于 2016-11-3 19:52 实验室有很多器件...但我觉得还是先试试仿真把一些基础问题解决了再实际操作一下...上次不知道为什么就把直流电机烧了- -|| |
|
|
|
只有小组成员才能发言,加入小组>>
692 浏览 0 评论
1106 浏览 1 评论
2473 浏览 5 评论
2808 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2646 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
653浏览 9评论
649浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
781浏览 6评论
628浏览 5评论
668浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 09:13 , Processed in 1.143334 second(s), Total 95, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号