搜索
bottom↓
回复: 38

单片机继电器输出抖动问题

[复制链接]

出0入4汤圆

发表于 2015-3-10 15:34:48 | 显示全部楼层 |阅读模式
小弟最近在初学单片机,有用到单片机通过光耦-ULN2003驱动继电器。测试中发现几个问题,请教下大家。1、我控制一个继电器动作时,有的时候另一个继电器也会动作,排查焊接应该没问题。2、有的继电器动作很轻,有的就很重,是功率问题吗?
请多指教!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入4汤圆

发表于 2015-3-10 15:44:37 | 显示全部楼层
为什么要加ULN2003,直接单片机控制不行吗

出0入84汤圆

发表于 2015-3-10 15:51:35 | 显示全部楼层
汗,去网上看看别人的图吧  你这光耦用的, 不要那么省电阻好吗。。。。

出0入0汤圆

发表于 2015-3-10 15:53:32 | 显示全部楼层
Q20 Q21 Q22 Q23 Q44都应加一下接电阻,取10K就行。光耦漏电流会使继电器动作

出0入0汤圆

发表于 2015-3-10 15:58:48 | 显示全部楼层
2003的输入端口得加限流电阻和下拉电阻

出0入4汤圆

 楼主| 发表于 2015-3-10 15:59:48 | 显示全部楼层
dyjhy 发表于 2015-3-10 15:53
Q20 Q21 Q22 Q23 Q44都应加一下接电阻,取10K就行。光耦漏电流会使继电器动作

是在光耦3脚和ULN2003之间串个电阻?我吧这个电阻加载光耦的4脚有用吗?

出0入4汤圆

 楼主| 发表于 2015-3-10 16:00:56 | 显示全部楼层
zb05022005 发表于 2015-3-10 15:58
2003的输入端口得加限流电阻和下拉电阻

加电阻时为了解决光耦的漏电流?下拉电阻时为了让他处于确定的状态吗?

出0入0汤圆

发表于 2015-3-10 16:03:40 | 显示全部楼层
450073622 发表于 2015-3-10 15:59
是在光耦3脚和ULN2003之间串个电阻?我吧这个电阻加载光耦的4脚有用吗?

是下拉电阻,不是限流电阻,

出0入0汤圆

发表于 2015-3-10 16:09:52 | 显示全部楼层
450073622 发表于 2015-3-10 16:00
加电阻时为了解决光耦的漏电流?下拉电阻时为了让他处于确定的状态吗? ...

1、下拉电阻是给个确定电位,消除光耦漏电流的影响
2、光耦和2003之间要加限流电阻,不然按你图里,这是会烧坏的节奏哦。除非你的2003里面已经集成限流电阻了

出0入0汤圆

发表于 2015-3-10 16:16:30 | 显示全部楼层
输出端加电阻,三极管不是这么用的。

出0入93汤圆

发表于 2015-3-10 16:16:44 | 显示全部楼层
LZ,我问您两个问题:

1、光耦在这里有什么作用?大家都是+5V供电,又没有隔离
2、D12~D20有什么作用?是因为ULN2003内部的不管用吗

干掉这些杂七杂八的东西,效果可能会更好一些。

出0入4汤圆

 楼主| 发表于 2015-3-10 16:24:00 | 显示全部楼层
takashiki 发表于 2015-3-10 16:16
LZ,我问您两个问题:

1、光耦在这里有什么作用?大家都是+5V供电,又没有隔离

你说的对,原先是想用隔离电源供电的,但是考虑十路输出那样隔离电源功率比较大,价格比较贵,所以就做了个假的隔离。ULN2003内部有二极管这个我知道,所以这几个二极管我是预留在这里的,看实际效果,如果有问题再加上去的

出0入0汤圆

发表于 2015-3-10 16:38:35 | 显示全部楼层
本帖最后由 dzrs0620 于 2015-3-10 16:44 编辑
zb05022005 发表于 2015-3-10 15:58
2003的输入端口得加限流电阻和下拉电阻


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-3-10 16:39:32 | 显示全部楼层
本帖最后由 dzrs0620 于 2015-3-10 16:44 编辑
shell.albert 发表于 2015-3-10 16:16
输出端加电阻,三极管不是这么用的。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-3-10 16:42:15 | 显示全部楼层
zb05022005 发表于 2015-3-10 16:09
1、下拉电阻是给个确定电位,消除光耦漏电流的影响
2、光耦和2003之间要加限流电阻,不然按你图里,这是 ...

ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。

出0入0汤圆

发表于 2015-3-10 16:45:18 | 显示全部楼层
dyjhy 发表于 2015-3-10 16:03
是下拉电阻,不是限流电阻,

ULN2003内部已经集成了下拉电阻

出0入0汤圆

发表于 2015-3-10 16:50:31 | 显示全部楼层
楼主的问题解决没有?按楼上各位大侠的指导加了外部的下拉电阻或限流电阻是否解决问题?其实看你的电路图除了光耦多余之外,其实没有什么大问题,如果继电器输出端有接大功率感性负载,要考虑是否干扰导致单片机的误动作,如果继电器输出端没有接负载,那还要考虑一下你的程序是否有问题,比如IO的配置是否正确……期待你的回复。

出0入0汤圆

发表于 2015-3-10 16:58:57 | 显示全部楼层
程序有问题

出0入0汤圆

发表于 2015-3-10 17:02:34 | 显示全部楼层
dzrs0620 发表于 2015-3-10 16:42
ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连, ...

刚又去看了下2003的文档,果然是温故而知新啊,哈哈哈哈

出0入0汤圆

发表于 2015-3-10 19:02:54 | 显示全部楼层
用毛光耦啊

出0入0汤圆

发表于 2015-3-10 20:37:41 | 显示全部楼层

按照这个原理图改进

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入4汤圆

 楼主| 发表于 2015-3-11 08:34:38 | 显示全部楼层
jiaxianglhh 发表于 2015-3-10 20:37
按照这个原理图改进

我原有的LED灯也去掉吗?加这个RC时消除干扰抖动?

出0入0汤圆

发表于 2015-3-11 09:00:42 | 显示全部楼层
你这图哦,首先单片机输出要加上拉电阻,其次2003能不能拖动继电器,你要确定一下,几个继电器同时工作时继电器电源电压有没有降。你说控制一个继电器时另的个继电器动作,如果线路没焊错那就肯定是程序出错了
检查线路,先取下单片机,你 这图,直接把单片机输出那几个脚分别用导线对地短接,看看相应的继电器工作正常不。你这图单片机输出上拉电阻不可少。

出0入0汤圆

发表于 2015-3-11 09:01:53 | 显示全部楼层
原理图没发现问题 除了没了彻底隔离 是其他问题的原因居多 比如程序问题 因为没彻底隔离干扰导致的问题。。。。。。。。。。。。。

出0入14汤圆

发表于 2015-3-11 09:16:36 | 显示全部楼层
dzrs0620 发表于 2015-3-10 16:50
楼主的问题解决没有?按楼上各位大侠的指导加了外部的下拉电阻或限流电阻是否解决问题?其实看你的电路图除 ...

同意您的看法,除了光耦多余,没什么大毛病。
会不会可能是他的继电器线圈电流太大,ULN2003没有那么大同时输出能力呢?

出0入4汤圆

 楼主| 发表于 2015-3-11 10:45:16 | 显示全部楼层
dzrs0620 发表于 2015-3-10 16:50
楼主的问题解决没有?按楼上各位大侠的指导加了外部的下拉电阻或限流电阻是否解决问题?其实看你的电路图除 ...

下拉和限流电阻其他板子上都有预留。今天早上把IO输出引脚电压量了下,发现有的是4.95V,有的是2.5V左右,单片机配置的是准双向口,写程序的时候想只要拉高就行,没过多考虑。后来所有的IO输出配置为推挽输出,目前暂时没有。用的事STC15W4K系列的,文档中写过准双向口是弱上拉,但是,有这么弱嘛。

出0入4汤圆

 楼主| 发表于 2015-3-11 10:47:10 | 显示全部楼层
chuxue 发表于 2015-3-11 09:00
你这图哦,首先单片机输出要加上拉电阻,其次2003能不能拖动继电器,你要确定一下,几个继电器同时工作时继 ...


单片机直接驱动2003的时候要用上拉吧,加了个光耦只要在光耦后面、2003前面下拉就可以了,2003能输出500mA,么的问题~~

出0入4汤圆

 楼主| 发表于 2015-3-11 10:48:58 | 显示全部楼层
kickdown 发表于 2015-3-11 09:16
同意您的看法,除了光耦多余,没什么大毛病。
会不会可能是他的继电器线圈电流太大,ULN2003没有那么大同 ...

用光耦其实是想倒个逻辑,不然平常的灌电流方式上电会误动作。

出0入0汤圆

发表于 2015-3-11 11:25:35 | 显示全部楼层
没必要加uln2003吧

出0入0汤圆

发表于 2015-3-11 11:34:19 | 显示全部楼层
我用2003带继电器时没有碰到楼主说的问题

出0入0汤圆

发表于 2015-3-11 11:36:40 | 显示全部楼层
zb05022005 发表于 2015-3-10 16:09
1、下拉电阻是给个确定电位,消除光耦漏电流的影响
2、光耦和2003之间要加限流电阻,不然按你图里,这是 ...

2003的里面是有这两个电阻的啊,难道不是吗?

出0入0汤圆

发表于 2015-3-11 11:40:47 | 显示全部楼层
没有必要用光耦,直接驱动就行了,逻辑反一下。
那些二极管也没有必要,2003里面有了。
这个应该还是在光耦初级的前边的部分的问题,2003很多人在用,我用的时候就是啥也不加,没有光耦,没有电阻,没有二极管。CPU的IO直接接输入脚,输出脚直接接继电器线圈。当然是高电平驱动了,即使51的IO在复位时的拉电流,也不会有问题。

出0入0汤圆

发表于 2015-3-11 11:59:29 | 显示全部楼层
我一次用1盘的2003,淘宝买,非原厂很便宜,2500个里面,第一次上电就是坏的故障率有1%,其余的出货使用半年内会坏的也大约有1%,各种坏的情况都有,你这种也有,1年约使用4盘,对我来说还是划的来,原厂的真是贵啊.

出0入14汤圆

发表于 2015-3-11 12:25:21 | 显示全部楼层
450073622 发表于 2015-3-11 10:45
下拉和限流电阻其他板子上都有预留。今天早上把IO输出引脚电压量了下,发现有的是4.95V,有的是2.5V左右, ...

STC15W4的弱上拉电阻大概多少欧,还有就是输出高电平时电流最大多少?
可否考虑IO口加1.5k电阻强制下拉,与内置弱上拉抗衡,将上电时IO端口控制在ULN2003A输入低电平范围内?

出0入0汤圆

发表于 2015-3-11 13:39:15 | 显示全部楼层
电源和地都没隔离,为啥要用光耦?

出0入4汤圆

 楼主| 发表于 2015-3-12 08:39:50 | 显示全部楼层
lxa0 发表于 2015-3-11 11:34
我用2003带继电器时没有碰到楼主说的问题

我用的事STC的单片机,你用的时候IO口输出有配置吗?我一开始就是默认的准双向口,后来换成推挽就好了

出0入0汤圆

发表于 2015-3-12 10:55:41 | 显示全部楼层
我用的是at产品
另 继电器与单片机要分开供电

出0入20汤圆

发表于 2015-3-13 17:36:58 来自手机 | 显示全部楼层
容差处理

出0入0汤圆

发表于 2015-3-18 20:03:35 | 显示全部楼层
xiaobendan 发表于 2015-3-11 11:40
没有必要用光耦,直接驱动就行了,逻辑反一下。
那些二极管也没有必要,2003里面有了。
这个应该还是在光耦 ...

抱歉,要纠正一下。
2003的内部下拉电阻阻值比较大,当CPU的拉电流较大时,无法避免开机复位时的动作。之前用的直插的,就可以,CPU是STC15W408AS-DIP28

刚才实验了CPU是12C5A60S2-QFP44的,同时2003是贴片的,结果不行,开机复位过程中,相关继电器全部吸合一次。

幸好只打样了5块板子,看来要改一下了,测量了一下拉电流居然有0.16MA这么大。之前的板子的STC15W408AS没有测量拉电流有多大。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 10:22

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表