feiante116 发表于 2016-10-1 16:52:45

ULN2003驱动继电器,不能同时驱动多路的问题

本帖最后由 feiante116 于 2016-10-1 17:47 编辑

今天用stm32输出管脚通过ULN2003来驱动5个继电器,继电器的触点接220AC电压驱动220V的感应电机(通过电容启动)。
接线方式如下:
由于继电器的线包是12VDC的,所以ULN2003的COM端接12V,ULN2003的输入端(1B、2B。。。。。)接STM32的gpio,同时接一个下拉电阻到地。ULN2003的输出端(1C、2C。。。。)接继电器的线包负端。线包正端接12VDC。
工作时,发现如果只让ULN2003的一路动作,即STM32该路输出高电平,继电器可以动作,但是如果同时让ULN2003两路动作,即STM32使两路输出高电平,此时继电器就不动作了。

开始考虑可能是ULN2003是TTL,stm32输出的电压是3V,可能不能驱动,所以将ULN2003的2个输入端都接入5V,还是不能同时工作。(一路可以工作)
然后考虑是不是12VDC供电不稳定造成的,由于我使用的12VDC是有一个变压器通过整流滤波得到的,当一路工作时,测试ULN2003的COM端电压是12V左右,当2路工作时,测试ULN2003的COM端电压就高于12V,大概14V左右,后来用一个稳压芯片来提供12V电压,(实测大概13V),可以同时让2路正常工作,就是2个继电器可以同时吸和。
不知道问题点是不是这里?就是ULN2003的COM端电压一定要稳定?

如下图所示,VCC为12V,1B,2B...为STM32的GPIO


alias 发表于 2016-10-1 17:16:11

>>继电器的线包是12VDC的

大多数固态继电器并不是用线包驱动来输出的,所以对ULN2003来说并不是电感负载,ULN2003的COM端可以不连接。

bblythe2007 发表于 2016-10-1 17:21:08

接线错误,上图给你看下。

q457344370 发表于 2016-10-1 17:25:04

2003的输入电流已经不小了,你还加了下拉,有没有考虑到是因为32的引脚驱动电流不够?用飞思卡尔测试可以同时驱动

JQ_Lin 发表于 2016-10-1 17:43:22

固态继电器哪儿来的线包啊?!

feiante116 发表于 2016-10-1 17:49:58

说错了,就是一般的继电器,5V,12V,24V的线圈

YAOZHE 发表于 2016-10-1 18:54:45

我也遇到过这种情况,最后换成了二极管驱动的

master5888 发表于 2016-10-1 19:29:37

1检查电源负载能力够不够。2继电器顺序动作,加入延时间隔

liuchengliaaa 发表于 2016-10-1 19:41:32

数字电路的地,还有12

liuchengliaaa 发表于 2016-10-1 19:43:19

数字电路的地线,还有12V的地线都要接到2003的地端子。

duxingkei 发表于 2016-10-1 21:28:50

原理图没毛病好像, uln2003好像自带下拉的,你还外挂下拉,MCU输出3.3V 可能驱动能力不够
MCU直连ULN2003试试,muc端口设置成Push Pull 模式,不行的话可以加上拉加强输出

lsy5110 发表于 2016-10-1 21:32:41

我用2803八路没问题

huarana 发表于 2016-10-1 23:16:13

电阻全部去掉 没必要。

然后就是要共地 单片机和12v要共地

不能共地的情况的话 就不能用 2003了 ,可以用光耦

wangjiati 发表于 2016-10-1 23:58:41

驱动7路的信号继电器

wangjiati 发表于 2016-10-2 00:00:00

驱动7路信号继电器,单片机IO直连.

lqzhw 发表于 2016-10-2 06:58:04

工业控制器输出不用光藕隔离 直接2003或2803驱动可以吗 我看有些用单电源的   光藕在这里用处不大吧

leiyitan 发表于 2016-10-2 08:06:19

不用隔离的话,stm32 直连达林顿管,com端接地,达林顿管的每个端口电流输入,通过继电器上拉至12V。com端直接VCC的做法感觉不对。

maqian 发表于 2016-10-2 09:22:55

COM端怎么接vcc了,这个是集电极开路门输出,没有地了

654705188 发表于 2016-10-3 09:36:36

我是这么搞的

mii 发表于 2016-10-3 10:26:57

接线接错了吧

alias 发表于 2016-10-3 13:14:26

提议把 ULN2003 COM端 接地的,为什么不先看看元件文档,了解 COM 端的作用?

babysnail 发表于 2016-10-3 22:24:49

实际做电路时,PNP最好。 顺便请问有没有 PNP版本的 ULN2003 ??

zheng_pf 发表于 2016-10-4 00:44:57

12v电源要滤波电容大些,试试,看com端电压就不正常,正常应该变低才对啊,好好查查吧。

fengye2009 发表于 2024-6-11 14:54:55

maqian 发表于 2016-10-2 09:22
COM端怎么接vcc了,这个是集电极开路门输出,没有地了
(引用自18楼)

这个芯片的8脚-E,是用来接GND的吧?

yuyu87 发表于 2024-6-11 16:14:56

下拉电阻4.7K有点偏大,改到10K或者47K就行,其它的问题不大。
页: [1]
查看完整版本: ULN2003驱动继电器,不能同时驱动多路的问题