消除esp8266上电时继电器抖动的几种方法
本帖最后由 lwq1947 于 2020-6-17 18:01 编辑
众所周知esp8266在上电时它的一些GPIO端口会有瞬间电平翻转现象,这就导制了在其输出控制的继电器就会突然瞬间吸合一下.这种状况在一些特定应用场合
是决不允许发生的.那么如何来弥补esp8266这一固有的缺陷呢?下面我们就针对不同情况加以说明.
首先要指出的是在GPIO端口增加上下拉电阻是解诀不了问题的.继电器电路有高电平触发和低电平触发两种工作方式.对于图T1来说是输入高电平时继电器才
会导通.当其工作在gpio0,gpio2,gpio3,gpio16中的任一端口下输入都会有瞬间电平翻转,但由于是200u电容的存在继电器就不会产生抖动现象,当该电路在接入
gpio0或gpio2端口时还会产生另一种故障,那就是会将它拉入低电平使esp8266无法工作,此时必须在其端口上接入一个1K的上拉电阻确保端口电平大于1V电压
(大于1V为高电平低于1V为低电平).如果没用上述的四个GPIO端口也就不需消抖了.
对于常见的低电平触发的继电器模块来说它是无法直接接入esp8266任何一个端口,这是因为其正常工作电压为5V,所以不论esp8266GPIO端口输出是高电平3.3V
还是低电平0V.继电器都会吸合.图T2中添加的电阻和LED可以解决该问题.采用低电平触发工作时则仅有gpio0一个端口会产生继电器抖动现象.添加的220u的电容
可以防止继电器模块上电时抖动现象的发生.
针对大家常见的esp8266-01和esp8266-01s继电器模块来说它们都是由gpio0进行控制,因此都有上电时继电器抖动现象产生.具体改造方法如下,电路不同,作法
也有差异,
对于esp8266-01来说只要能使用(不能用的必需在3.3V与gpio0之间加一个1K电阻,确保在工作模式)只须在三极管的基极和发射极之间并接一只容量大于220u的
电容即可.
对于esp8266-01s来说,为了确保2N7002场效应管导通时的正常栅极电压(3.3V)不变.增加的电阻阻值应为5.1K: 5/15*10=3.3V(2N7002的开启电压为1V-2.5V).
改造时首先要将光藕的输出4脚焊点挑开(由于离继电器外壳太近,焊接时最好用名片卡来隔开以免烫坏继电器外壳).顺便说一下esp8266-01s继电器的供电电压选
用3.3V我认为不太妥当,5V继电器降压使用一定会减小触点的闭合压力,这对于控制大电流设备是不利的,轻则烧毁触点重则会毁坏设备.