hayuda 发表于 2006-10-13 10:02:41

有人用过ULN2003驱动步进电机吗?

前些天买了一个2手的步进电机,6线两相的那种 测量两相电阻都为为6欧左右,

上面的型号这么写的:P/NPJJQH4242ZA-MN

                   TYPE 17PU-HO12-G1VT

                   NO.   T9Z02-01

                   MINEBEA CO.,LTD

                   MADIE IN THAILAND

请问它的电压什么的是多少啊?不知道能不能看的出来,另外我用ULN2003驱动了一下,现象如下:

1.电机只是震动,转不起来(是否是驱动能力不足呢,ULN2003是500MA)相序应该没问题

2.很短的时间内ULN2003就会很热!

下面是我的驱动原理图

点击此处打开armok01131765.doc

AVR-MEGA128 发表于 2006-10-13 11:16:47

振动的话 说明的步进频率太高,我用过是可以的,不过就是有点热

zhouyh 发表于 2006-10-13 12:55:25

AVR-MEGA128 原来是安步你呀,PIC高手,我们认识,哈哈

cddyy 发表于 2006-10-13 13:14:19

我用过,不过是用5V电压,所以感觉没什么劲,就是转转而已

我的也是六线的,好像说是四相的,但网上又说是两相的,,

可以四步,也可以八步转动,用2003当灌电流,速度不能太快,

否则会失步,电机不住的震动,,至于温度,应该是电流通过

时间过长吧,,本人菜鸟,呵呵,探讨探讨

leeber 发表于 2006-10-13 13:56:18

我记得要接2003有上拉电阻,而且那也是个问题,忘了当时接输入还是输出来,不行,后来换成另一端上拉就可以了。

leafzq 发表于 2006-10-13 14:03:57

接2003的单片机I/O一定要上拉.我用51时记得上拉1K的.

如果不上拉,2003很短的时间内发热很大的.哈哈,不过烧不了的

至于振动,转不了:应该是相位搞错了吧!相位之间调换一下.

至于电压,不是5V就是12或24了.随便试一下应该试出来了.

hayuda 发表于 2006-10-13 15:12:50

晕了,楼上各位的建议我都试了!还是那个样子:震动!!ULN2003热的也很快,估计要不管一会就完蛋!上拉电阻我也弄了一下,没有效果!!

难道我的步进电机转距太大 带不起来????有没有可能是ULN2003驱动能力不足呢?

先面是我的程序,很简单的

#include <iom8v.h>

#include <macros.h>

//unsigned char dat[]={0x01,0x03,0x02,0x06,0x04,0x0C,0x08,0x09}; //8步

unsigned char dat[]={0x01,0x02,0x04,0x08};      //4步

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

void delay(unsigned int temp)

{

   unsigned int i,j,k;

   for(i=temp;i>0;i--)

      for(j=900;j>0;j--)

              //for(k=;k>0;k--)

                  ;

}

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

void main()

{

   unsigned char i;



   DDRD=0xff;         //PD0 A PD1 B PD2 C PD3 D

   while(1)

      {

         for(i=0;i<5;i++)

           {

            PORTD=dat;

            delay(20);

           }

    }

}
-----此内容被hayuda于2006-10-13,15:18:14编辑过

hayuda 发表于 2006-10-13 16:48:21

另外ULN20003 是不是也有反相的功能的啊?

leafzq 发表于 2006-10-13 16:54:15

1,尝试将延时改小一点.

例如:delay(1);



2,可能是A B C D四相相位搞混了.你要确定4个相位是按顺序排列的:A->B->C->D

leafzq 发表于 2006-10-13 16:56:48

ULN2003就是7个NPN三极管.

hayuda 发表于 2006-10-13 17:05:33

ULN200系列芯片从逻辑上说是个反相器,它的特点是低

电平输出时候才能输出功率,高电平的时候是虚高(不负担电流输

出),所以,实际使用中都是用它的OC下拉输出,没人用它高电平电

流输出的,



不知道上面的说法对不对,,?相序表怎么写呢

leafzq : A B C D 不都是相对的吗,AB连通,CD连通(至于哪个是A哪个是B只是转的方向相反 类推CD)

         是不是这样呢
-----此内容被hayuda于2006-10-13,17:09:03编辑过

leafzq 发表于 2006-10-13 17:18:03

不,A B C D相位是固定的。

一定要按A-->B-->C-->D(或相反的方向)这样的顺序给高电平。

不断循环,电机才能转起来。

cock 发表于 2006-10-13 18:45:12

ULN2003,只能驱动些直流电阻>50欧的玩具步进电机.咸觉快而有力的,都要用恒流斩波电路驱动,电路比ULN2003复杂许多.

hayuda 发表于 2006-10-13 19:06:19

谢谢楼上大家的解答!!问题已经得到解决!!经过测量我发现有两路NPN管坏了!我用另外的两路,电机已经转起来了!!:)

对leafzq大虾所说的:A B C D相位是固定的///   我到觉得不是这样啊,我觉得A 和B 是相对的.只是转的方向不同罢了!

ljq0810 发表于 2006-10-13 19:07:11

试下这个步序{0x0c,0x09,0x05,0x06}

相序乱了也没问题的,只是会正反转而已。

hilltang 发表于 2009-6-23 17:25:39

我也正在搞,不过,我用了MC1413,跟ULN2003兼容的一个NPN阵列管,还没搞定,看了楼主的大家的讨论,有所启发,明天继续搞

hilltang 发表于 2009-6-23 17:33:15

楼主,我手上的这款步进电机给的资料上,步进顺序跟你的是一样的,但是让我疑惑的B相和C相的方向是反的,到底是资料错了?还是怎么会事情呢?

hilltang 发表于 2009-6-23 17:36:27

明天试试吧,楼主能留个QQ,交流一下吗?

wxlcj 发表于 2009-6-23 22:39:43

功率不够,可能

SunnyTrip 发表于 2009-6-23 22:53:20

驱动时序最好要搞清楚
0011
0110
1100
1001
这样的循环移动就可以了,
不要单线驱动
0001
0010
0100
1000
这样的驱动时序其实很差,电机一点力气也没有
还有就是混合8步的驱动
实际效果不怎么样
0011
0010
0110
0100
1100
1000
1001
0001

blueliuyun 发表于 2010-11-12 21:58:26

发热的话,要考虑通过ULN2003的电流是否过大的原因。

taishan 发表于 2010-11-12 22:33:32

原因有二:
1、时序错误
2、速率太高

luohongzhi 发表于 2010-12-15 18:27:14

电机的电压低也会出现这个问题

wayhe 发表于 2010-12-15 20:02:38

应该是转速低了ULN2003才热的快,电机就像一个电感线圈,对于直流而言就是一根导线(更准确的说就存在你测量的线阻),所以你转的频率高了才不会烫。还有你说的只是抖动,是因为失步造成的。你的程序一上电就给定一个速度让电机转,那么会出现2种情况:
1,低速转,ULN2003发热;
2,高速转,电机失步原地抖动;

要想运转顺畅,就得让电机先以低速启动,然后加速到想要的速度。这时后,你就会发现,电机声音和谐了,IC也不烫了,电流也低了---------:)

kihell 发表于 2011-1-9 16:07:37

回复【22楼】luohongzhi
-----------------------------------------------------------------------

是这样的么??我不大清楚啊

tcwb201 发表于 2011-1-18 22:02:18

MARK!

tcwb201 发表于 2011-1-19 16:41:45

回复【19楼】SunnyTrip 阳光改造联盟
驱动时序最好要搞清楚
0011
0110
1100
1001
这样的循环移动就可以了,
不要单线驱动
0001
0010
0100
1000
这样的驱动时序其实很差,电机一点力气也没有
还有就是混合8步的驱动
实际效果不怎么样
0011
0010
0110
0100
1100
1000
1001
0001

-----------------------------------------------------------------------

为什么我的步进电机单线四拍力矩很小,换成双线四拍,混合8拍力矩还是很小!
是不是我的电机本事力矩就很小啊!!!
电机型号是:35BYGH26-0304A
是什么原因呢,请问下各位!
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_612259BO4DI3.jpg
(原文件名:QQ截图未命名.jpg)

http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_612487C0U3UE.jpg
(原文件名:35BYGH26步进电机.jpg)

kerrwang1982 发表于 2011-10-19 15:06:33

for(i=0;i<**4**;i++)
   {
    PORTD=dat;
    delay(**5**);
   }

delay()函数,调整为毫秒单位。。

我用ULN2803A驱动比较顺利。


不过用双H桥驱动4线,低转速时,电机顿顿的,按照上面的频率调整后,电机便欢快的转起来。。频率再高就不行了,频率低了就顿。。

我的是二手2相6线步进电机。


更正内容

Achilics 发表于 2013-7-26 14:11:09

{:smile:}{:smile:}{:smile:}{:smile:}{:smile:}{:smile:}{:smile:}

hongkong 发表于 2013-7-26 18:03:12

hilltang 发表于 2009-6-23 17:36 static/image/common/back.gif
明天试试吧,楼主能留个QQ,交流一下吗?

你的头像是什么?

wwwlanmin 发表于 2013-7-27 11:13:58

路过路过

wangjintao 发表于 2013-7-28 19:07:10

MARK         

ohha3026 发表于 2013-7-29 23:50:09

频率太高或者电压不足 我都遇到过就是用2003
页: [1]
查看完整版本: 有人用过ULN2003驱动步进电机吗?