精华内容
下载资源
问答
  • 本文给大家分享了一个一种家用开关电源工作原理图。
  • 光控开关在室内5~6 米范围内,可用手电光进行遥控,可以很方便地开启或关闭家用电器。 工作原理: 电路如图192 所示。由三极管VT1、光电二极管等组成光接收电路。每接收到光照一次,就使由三极管VT2、VT3组成的
  • 通常情况下,一般家庭所使用的电视机、空调、VCD/DVD等家用电器都使用了红外遥控器,而这些红外遥控器都是针对各自产品所设计的,从而导致了一般家庭中拥有数个遥控器,那么,能否将这些遥控器的功能进行复用,进而...
  •  目前市场上的家用加湿器—般采用超声波方式将水雾化,并通过风机将雾化的水汽吹出壳体,从而达到加湿空气的效果,其电气原理图如图所示。市电经过开关电源后,输出两路电压36V和12V。其 中36V供电水汽雾化模块,12...
  • 通常情况下,一般家庭所使用的电视机、空调、VCD/DVD等家用电器都使用了红外遥控器,而这些红外遥控器都是针对各自产品所设计的,从而导致了一般家庭中拥有数个遥控器,那么,能否将这些遥控器的功能进行复用,进而...
  •  目前市场上的家用加湿器—般采用超声波方式将水雾化,并通过风机将雾化的水汽吹出壳体,从而达到加湿空气的效果,其电气原理图如图所示。市电经过开关电源后,输出两路电压36V和12V。其 中36V供电水汽雾化模块,12...
  •  轻触开关由于体积小重量轻在家用电器方面得到广泛的应用如:影音产品、。数码产品、遥控器、通讯产品、家用电器、安防产品、玩具、电脑产品、健身器材、医疗器材、验钞笔、雷射笔按键等等。但轻触开关也有它不足的...
  • 船型开关工作原理分析

    千次阅读 2020-04-15 00:09:51
    船型开关工作原理分析 第一次写博客,有点紧张,格式什么的根本没在意 由于疫情,这几个月一直无聊的待在家里,就把家里翻出来的旧电热锅简单的修理了一下,关于电热锅的修理博客之后有时间再写吧,这次就总结下在修...

    船型开关工作原理分析

    由于疫情,这几个月一直无聊的待在家里,就把家里翻出来的旧电热锅简单的修理了一下,关于电热锅的修理博客之后有时间再写吧,这次就总结下在修过程中让我一直很头疼的船型开关的工作原理。

    船型开关也称翘板开关。其结构与钮子开关相同,只是把钮柄换成船型。船型开关常用作电子设备的电源开关,其触点分为单刀单掷和双刀双掷等几种,有些开关还带有指示灯。以下就是几种常见船型开关:

    在这里插入图片描述

    由于家用电器上使用较多的是图中第一行的第二个,我只分析了它的工作原理,等以后有机会遇到其他的,再进行分析:

    首先贴上网上能找到的它的工作原理电路图:

    在这里插入图片描述
    下面是我自己根据实物画出来的电路简图(图中连接线均为导线):在这里插入图片描述
    这张图里已经把船型开关的工作原理蕴含在其中了,其中黄代表的是铜制接头,白代表的是铝质接头,开状态指通电状态,关状态指断电状态。

    展开全文
  • 如图所示电路为家庭普通型电烤箱电路,开关S1.S2分别控制上下加热器的接通与断开,同时两只指示灯分别显示上、下加热器的工作状态。 恒温器在设定的温度范围内交替地接通与断开,实现恒温功能,温度控制采用金属...
  • 摘要:VIPER28是ST公司生产的一种集PWM控制器和800V高压功率MOSFET于同一芯片上的离线转换器,待机功率低于50mW,适用于机顶盒、DVD播放机、录音机开关电源和低/*率适配器以及ATX、消费类与家用设备的辅助电源和LED...
  • 家用墙体探测器功能介绍: 墙体探测器在工程中,可用于探测地下金属埋设物,例如管道、管线等;工业上,可用于在线监测,如去掉棉花、煤炭、食品中的...家用墙体探测器系统原理框图截图: 墙体检测模式截图: 检测物提示:
  • 继变频调速系统、直流电动机调速系统之后最具备优势的新一代无极调速系统是开关磁阻电机调速系统;因为它的效率高,启动电流小,启动转矩大、制动... 开关磁阻电机原理和三相异步交流电机一样,首先是“旋转的磁场”。
  • 超详细|开关电源电路图及原理讲解

    千次阅读 多人点赞 2020-12-10 21:57:21
    关注+星标公众号,不错过精彩内容编排 | strongerHuang微信公众号|嵌入式专栏成为一名合格的电源工程师要涉猎的知识包罗万象,小到家用电器,大到航天飞机,卫星等供电系统,大...

    关注+星标公众,不错过精彩内容

    编排 | strongerHuang

    微信公众号 | 嵌入式专栏

    成为一名合格的电源工程师要涉猎的知识包罗万象,小到家用电器,大到航天飞机,卫星等供电系统,大型电力行业所用的仪器设备,高精密医疗设备无不需要电源来提供稳定能源,这也更需要大量具有电源专业知识水平的工程师来完成设计和研发。但是,如何做好第一步,打好电源工程师的基本功?小编在这里对开关电源电路图及原理进行讲解,仅供参考!

    嵌入式专栏

    1

    开关电源的电路组成 

    开关电源的主要电路是由输入电磁干扰滤波器(EMI)、整流滤波电路、功率变换电路、PWM控制器电路、输出整流滤波电路组成。

    辅助电路有输入过欠压保护电路、输出过欠压保护电路、输出过流保护电路、输出短路保护电路等。

    开关电源的电路组成方框图如下:

    嵌入式专栏

    2

    输入电路的原理及常见电路

    1、AC输入整流滤波电路原理:

    ①防雷电路:当有雷击,产生高压经电网导入电源时,由MOV1、MOV2、MOV3:F1、F2、F3、FDG1组成的电路进行保护。当加在压敏电阻两端的电压超过其工作电压时,其阻值降低,使高压能量消耗在压敏电阻上,若电流过大,F1、F2、F3会烧毁保护后级电路。

    ②输入滤波电路:C1、L1、C2、C3组成的双π型滤波网络主要是对输入电源的电磁噪声及杂波信号进行抑制,防止对电源干扰,同时也防止电源本身产生的高频杂波对电网干扰。当电源开启瞬间,要对C5充电,由于瞬间电流大,加RT1(热敏电阻)就能有效的防止浪涌电流。因瞬时能量全消耗在RT1电阻上,一定时间后温度升高后RT1阻值减小(RT1是负温系数元件),这时它消耗的能量非常小,后级电路可正常工作。

    ③整流滤波电路:交流电压经BRG1整流后,经C5滤波后得到较为纯净的直流电压。若C5容量变小,输出的交流纹波将增大。

    2、DC输入滤波电路原理:

    ①输入滤波电路:C1、L1、C2组成的双π型滤波网络主要是对输入电源的电磁噪声及杂波信号进行抑制,防止对电源干扰,同时也防止电源本身产生的高频杂波对电网干扰。C3、C4为安规电容,L2、L3为差模电感。

    ②R1、R2、R3、Z1、C6、Q1、Z2、R4、R5、Q2、RT1、C7组成抗浪涌电路。在起机的瞬间,由于C6的存在Q2不导通,电流经RT1构成回路。

    当C6上的电压充至Z1的稳压值时Q2导通。如果C8漏电或后级电路短路现象,在起机的瞬间电流在RT1上产生的压降增大,Q1导通使Q2没有栅极电压不导通,RT1将会在很短的时间烧毁,以保护后级电路。

    嵌入式专栏

    3

    功率变换电路

    1、MOS管的工作原理:

    目前应用最广泛的绝缘栅场效应管是MOSFET(MOS管),是利用半导体表面的电声效应进行工作的。也称为表面场效应器件。由于它的栅极处于不导电状态,所以输入电阻可以大大提高,最高可达105欧姆,MOS管是利用栅源电压的大小,来改变半导体表面感生电荷的多少,从而控制漏极电流的大小。

    2、常见的原理图:

    3、工作原理:

    R4、C3、R5、R6、C4、D1、D2组成缓冲器,和开关MOS管并接,使开关管电压应力减少,EMI减少,不发生二次击穿。

    在开关管Q1关断时,变压器的原边线圈易产生尖峰电压和尖峰电流,这些元件组合一起,能很好地吸收尖峰电压和电流。

    从R3测得的电流峰值信号参与当前工作周波的占空比控制,因此是当前工作周波的电流限制。当R5上的电压达到1V时,UC3842停止工作,开关管Q1立即关断。

    R1和Q1中的结电容CGS、CGD一起组成RC网络,电容的充放电直接影响着开关管的开关速度。R1过小,易引起振荡,电磁干扰也会很大;R1过大,会降低开关管的开关速度。

    Z1通常将MOS管的GS电压限制在18V以下,从而保护了MOS管。Q1的栅极受控电压为锯形波,当其占空比越大时,Q1导通时间越长,变压器所储存的能量也就越多;

    当Q1截止时,变压器通过D1、D2、R5、R4、C3释放能量,同时也达到了磁场复位的目的,为变压器的下一次存储、传递能量做好了准备。

    IC根据输出电压和电流时刻调整着⑥脚锯形波占空比的大小,从而稳定了整机的输出电流和电压。C4和R6为尖峰电压吸收回路。

    4、推挽式功率变换电路:

    Q1和Q2将轮流导通。

    5、有驱动变压器的功率变换电路:

    T2为驱动变压器,T1为开关变压器,TR1为电流环。

    嵌入式专栏

    4

    输出整流滤波电路

    1、正激式整流电路:

    T1为开关变压器,其初极和次极的相位同相。D1为整流二极管,D2为续流二极管,R1、C1、R2、C2为削尖峰电路。L1为续流电感,C4、L2、C5组成π型滤波器。

    2、反激式整流电路:

    T1为开关变压器,其初极和次极的相位相反。D1为整流二极管,R1、C1为削尖峰电路。L1为续流电感,R2为假负载,C4、L2、C5组成π型滤波器。

    3、同步整流电路:

    工作原理:当变压器次级上端为正时,电流经C2、R5、R6、R7使Q2导通,电路构成回路,Q2为整流管。Q1栅极由于处于反偏而截止。当变压器次级下端为正时,电流经C3、R4、R2使Q1导通,Q1为续流管。Q2栅极由于处于反偏而截止。L2为续流电感,C6、L1、C7组成π型滤波器。R1、C1、R9、C4为削尖峰电路。

    嵌入式专栏

    5

    稳压环路原理 

    1、反馈电路原理图:

    2、工作原理:

    当输出U0升高,经取样电阻R7、R8、R10、VR1分压后,U1③脚电压升高,当其超过U1②脚基准电压后U1①脚输出高电平,使Q1导通,光耦OT1发光二极管发光,光电三极管导通,UC3842①脚电位相应变低,从而改变U1⑥脚输出占空比减小,U0降低。

    当输出U0降低时,U1③脚电压降低,当其低过U1②脚基准电压后U1①脚输出低电平,Q1不导通,光耦OT1发光二极管不发光,光电三极管不导通,UC3842①脚电位升高,从而改变U1⑥脚输出占空比增大,U0降低。周而复始,从而使输出电压保持稳定。调节VR1可改变输出电压值。

    反馈环路是影响开关电源稳定性的重要电路。如反馈电阻电容错、漏、虚焊等,会产生自激振荡,故障现象为:波形异常,空、满载振荡,输出电压不稳定等。

    嵌入式专栏

    6

    短路保护电路

    在输出端短路的情况下,PWM控制电路能够把输出电流限制在一个安全范围内,它可以用多种方法来实现限流电路,当功率限流在短路时不起作用时,只有另增设一部分电路。

    1、短路保护电路通常有两种,下图是小功率短路保护电路,其原理简述如下:

    当输出电路短路,输出电压消失,光耦OT1不导通,UC3842①脚电压上升至5V左右,R1与R2的分压超过TL431基准,使之导通,UC3842⑦脚VCC电位被拉低,IC停止工作。

    UC3842停止工作后①脚电位消失,TL431不导通UC3842⑦脚电位上升,UC3842重新启动,周而复始。当短路现象消失后,电路可以自动恢复成正常工作状态。

    2、下图是中功率短路保护电路,其原理简述如下:

    当输出短路,UC3842①脚电压上升,U1③脚电位高于②脚时,比较器翻转①脚输出高电位,给C1充电,当C1两端电压超过⑤脚基准电压时U1⑦脚输出低电位,UC3842①脚低于1V,UCC3842停止工作,输出电压为0V,周而复始,当短路消失后电路正常工作。R2、C1是充放电时间常数,阻值不对时短路保护不起作用。

    3、下图是常见的限流、短路保护电路。其工作原理简述如下:

    当输出电路短路或过流,变压器原边电流增大,R3两端电压降增大,③脚电压升高,UC3842⑥脚输出占空比逐渐增大,③脚电压超过1V时,UC3842关闭无输出。

    4、下图是用电流互感器取样电流的保护电路,有着功耗小,但成本高和电路较为复杂,其工作原理简述如下:

    输出电路短路或电流过大,TR1次级线圈感应的电压就越高,当UC3842③脚超过1伏,UC3842停止工作,周而复始,当短路或过载消失,电路自行恢复。

    嵌入式专栏

    7

    输出端限流保护

    上图是常见的输出端限流保护电路,其工作原理简述如上图:当输出电流过大时,RS(锰铜丝)两端电压上升,U1③脚电压高于②脚基准电压,U1①脚输出高电压,Q1导通,光耦发生光电效应,UC3842①脚电压降低,输出电压降低,从而达到输出过载限流的目的。

    嵌入式专栏

    8

    输出过压保护电路的原理

    输出过压保护电路的作用是:当输出电压超过设计值时,把输出电压限定在一安全值的范围内。当开关电源内部稳压环路出现故障或者由于用户操作不当引起输出过压现象时,过压保护电路进行保护以防止损坏后级用电设备。

    应用最为普遍的过压保护电路有如下几种:

    1、可控硅触发保护电路:

    如上图,当Uo1输出升高,稳压管(Z3)击穿导通,可控硅(SCR1)的控制端得到触发电压,因此可控硅导通。

    Uo2电压对地短路,过流保护电路或短路保护电路就会工作,停止整个电源电路的工作。当输出过压现象排除,可控硅的控制端触发电压通过R对地泄放,可控硅恢复断开状态。

    2、光电耦合保护电路:

    如上图,当Uo有过压现象时,稳压管击穿导通,经光耦(OT2)R6到地产生电流流过,光电耦合器的发光二极管发光,从而使光电耦合器的光敏三极管导通。

    Q1基极得电导通,3842的③脚电降低,使IC关闭,停止整个电源的工作,Uo为零,周而复始。

    3、输出限压保护电路:

    输出限压保护电路如下图,当输出电压升高,稳压管导通光耦导通,Q1基极有驱动电压而道通,UC3842③电压升高,输出降低,稳压管不导通,UC3842③电压降低,输出电压升高。周而复始,输出电压将稳定在一范围内(取决于稳压管的稳压值)。

    4、输出过压锁死电路:

    图A的工作原理是,当输出电压Uo升高,稳压管导通,光耦导通,Q2基极得电导通,由于Q2的导通Q1基极电压降低也导通,Vcc电压经R1、Q1、R2使Q2始终导通,UC3842③脚始终是高电平而停止工作。

    在图B中,UO升高U1③脚电压升高,①脚输出高电平,由于D1、R1的存在,U1①脚始终输出高电平Q1始终导通,UC3842①脚始终是低电平而停止工作。

    嵌入式专栏

    9

    功率因数校正电路(PFC)

    1、原理示意图:

    2、工作原理:

    输入电压经L1、L2、L3等组成的EMI滤波器,BRG1整流一路送PFC电感,另一路经R1、R2分压后送入PFC控制器作为输入电压的取样,用以调整控制信号的占空比,即改变Q1的导通和关断时间,稳定PFC输出电压。

    L4是PFC电感,它在Q1导通时储存能量,在Q1关断时施放能量。D1是启动二极管。D2是PFC整流二极管,C6、C7滤波。PFC电压一路送后级电路,另一路经R3、R4分压后送入PFC控制器作为PFC输出电压的取样,用以调整控制信号的占空比,稳定PFC输出电压。

    嵌入式专栏

    10

    输入过欠压保护

    1、原理图:

    2、工作原理:

    AC输入和DC输入的开关电源的输入过欠压保护原理大致相同。保护电路的取样电压均来自输入滤波后的电压。

    取样电压分为两路,一路经R1、R2、R3、R4分压后输入比较器3脚,如取样电压高于2脚基准电压,比较器1脚输出高电平去控制主控制器使其关断,电源无输出。

    另一路经R7、R8、R9、R10分压后输入比较器6脚,如取样电压低于5脚基准电压,比较器7脚输出高电平去控制主控制器使其关断,电源无输出。

    参考资料:

    https://www.wingot.com.cn

    免责声明:本文部分素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。

    ------------ END ------------

    推荐阅读:

    精选汇总 | 专栏 | 目录 | 搜索

    精选汇总 | ARM、Cortex-M

    精选汇总 | ST工具、下载编程工具

    关注微信公众号『嵌入式专栏』,底部菜单查看更多内容,回复“加群”按规则加入技术交流群。

    点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

    展开全文
  • 从卡式电源开关原理和结构可以看出,卡式电源开关与普通面板开关相比: 1.相似之处: 1,全部依靠开关电路来达到控制的目的,而控制全部是带电的。 2.接线方式基本相同,开关控制火控不为零。 注意:普通面板...
  • 本例介绍的超声波遥控开关,其遥控距离在10m以上,可广泛应用于工业自动化控制及家用电器控制。 该超声波遥控开关电路由超声波发射器电路和接收器电路组成。超声波发射器电路由控制按钮S、时基集成电路IC1、晶体管...
  • 本文详细讲述了开关电源的原理开关电源就是用通过电路控制开关管进行高速的道通与截止.将直流电转化为高频率的交流电提供给变压器进行变压,从而产生所需要的一组或多组电压!主要用于工业以及一些家用电器上,如...
  • 液位传感器采用进口开关元件,具有体积轻巧,工作原理简单,可靠性高,价格便宜的特点,有不同材质及规格的浮球可供选择,电器参数可根据客户要求改变,特殊规格亦可订制.产品可用于饮水机,热水器,太阳能,空调,加湿器,浴室...
  • 光控开关 (一)

    2020-12-05 19:16:55
    该光控开关可广泛应用于照明灯及各类家用电器设备的电源开与关。 电路工作原理 光控开关电路由电源电路和电子开关电路等组成,如图3-58所示。   电源电路由降压电容器Cl、电阻器R1、整流一极管VDl、稳压二极管...
  • 改造家里的开关成为智能开关,保留原有开关控制,零火版 亮点 成本不超20块,这可能是目前能找到的最便宜方案了吧。 体积较小,可以塞入86开关面板内。 手机app+智能音箱+物理开关控制,状态能同步。 接入点灯科技...

    改造家里的开关成为智能开关,保留原有开关控制,零火版,基础入门(一)

    亮点

    1. 成本不超20块,这可能是目前能找到的最便宜方案了吧。
    2. 体积较小,可以塞入86开关面板内。
    3. 手机app+智能音箱+物理开关控制,状态能同步。
    4. 接入点灯科技平台,支持wifi配网,包括blinker 设备密钥。
    5. 入手门槛大大降低,有电工基础,会接入线就行。

    过程1,下载固件和wifi配置网

    过程2,接线

    过程3,改造过程

    过程4,最后效果

    点动式物理开关演示

    器材

    需要的器件如下,
    在这里插入图片描述
    在这里插入图片描述

    接线

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    手机app端,Blinker设置

    1,下载客户端

    https://diandeng.tech/doc/app-download, 下载其app, 按注册blinker账号,获取密钥authkey,iOS 在app store 搜索blinker 安装

    在这里插入图片描述

    2,注册账号

    在这里插入图片描述

    3,创建设备

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    到这一步,我们拿到设备的密钥,请记录下来,后面要用!!!!

    为设备增加一个按钮, 按键设置如下图
    在这里插入图片描述

    在这里插入图片描述

    固件下载

    1,下载网盘工具包

    链接:https://pan.baidu.com/s/1LU4XkcYnH83GNsA61ywFqw 提取码:681i 复制这段内容后打开百度网盘手机App,操作更方便哦
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2,烧写固件

    把esp8266插在烧写器上,然后插入电脑的usb口,如下
    在这里插入图片描述
    运行NdoeMcu-pyFlasher-4.0-xx.exe开始下载固件到esp8266
    在这里插入图片描述

    配置wifi上网

    1, 重启esp-01
    在这里插入图片描述
    在这里插入图片描述
    用手机连接到esp8266的wifi热点,热点名不是根据型号会不一样,多半以esp-xxx开头

    在这里插入图片描述
    在这里插入图片描述
    在电脑的浏览器打开http://192.168.4.1
    在这里插入图片描述
    选择要配置的wifi,点击
    在这里插入图片描述
    2,输入密码和点灯科技创建的设备ID
    在这里插入图片描述
    3,点确定开始配网
    在这里插入图片描述
    成功后

    在这里插入图片描述
    手机端
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    接入小爱同学配置

    1、在手机上安装米家,小米音箱app.
    2、在米家APP上添加点灯科技的扩展。

    在这里插入图片描述
    3,从小爱音箱APP上查看有没有找到设备
    在这里插入图片描述

    1、如果发现在设备,就说明配置成功了,我这里设备名叫“新的设备”,现在可以对小爱说 “打开新的设备”
    2、你还可以添加小爱学习
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    接入小度配置

    代码已经支持,作者还没来得及测试,参考小爱同学配置一下

    接入天猫精灵配置

    代码已经支持,作者还没来得及测试,参考小爱同学配置一下

    接入siri配置

    1,安装“快捷指令”app,点击打开

    在这里插入图片描述
    在这里插入图片描述
    点运行按钮测试一下开关,passwd是123456

    出现下图结果,说明接口调用成功了。

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    现在对着siri说,“打开台灯”“关闭台灯”

    代码

    /*
    NodeMcu或esp-01/01s控制1路继电器,集成blinker平台,
    用手机app控制1路继电器开关,添加一路物理开关控制,继电器用常开(NO)模式
     
    v1.0
    Created 2021
    by 阳阳学编程
    www.sooncore.com
    抖音号:yyxbc2010
    微信号:yyxbc2010
    
    固件有网页配网功能,固件烧写工具:
    链接:https://pan.baidu.com/s/1WsE_2gERyjaUZFbwgJnsOw 提取码:56r8 
    
    说明:
    
    1,继电器高电平触发时,YYXBC_HIGH = 1,YYXBC_LOW  = 0
    继电器低电平触发时,YYXBC_HIGH = 0,YYXBC_LOW  = 1
    const int YYXBC_HIGH = 0 ;
    const int YYXBC_LOW  = 1 ;
    
    2,用esp-01时,物理开关接在vcc 和gpio2上,继电器接在gpio0上
    用nodeMcu时,物理开关接在vcc 和D4上,继电器接在D3上,下面的宏
    定义只能同时有一个生效
    
    //NodeMCU 继电器接D3,物理开关接D4
    #define LED_BUILTIN_LIGHT 0
    #define LED_BUILTIN_K2 2
    
    //Esp-01/01s,继电器接GPIO0,物理开关接GPIO2
    //#define LED_BUILTIN_LIGHT D3
    //#define LED_BUILTIN_K2 D4
    
    3,YYXBC_BUTTON_TYPE = 1时表示物理开关为点动模式,0时表示自锁模式
    const int YYXBC_BUTTON_TYPE = 1;
    
    获得具体连接电路图和更多资源,请参阅阳阳学编程网站 www.sooncore.com。
       
    This example code is in the public domain.
    */
    
    #define BLINKER_PRINT Serial
    #define BLINKER_WIFI
    #define BLINKER_MIOT_OUTLET              // 设置小爱灯类库
    #define BLINKER_DUEROS_OUTLET            // 设置小度灯类库
    #define BLINKER_ALIGENIE_OUTLET          // 设置天猫灯类库
    
    #define BLINKER_WITHOUT_SSL              //使用这个宏,表示不用SSL加密,可以得到更多内存
    
    //
    如果要使用apconfig配网模式,打开注释掉,加让这行代码生效
    //#define BLINKER_APCONFIG
    
    如果要使用smartconfig配网模式,打开注释掉,加让这行代码生效
    //#define BLINKER_ESP_SMARTCONFIG
    
    #include <Blinker.h>
    #include <ESP8266WebServer.h>
    
    char auth[] = "a7a437131912";
    char ssid[] = "panzujiMi10";
    char pswd[] = "moto1984";
    
    String version  = "1.0.3";
    
    //NodeMCU 继电器接D3,物理开关接D4
    #define LED_BUILTIN_LIGHT 0
    #define LED_BUILTIN_K2 2
    
    //Esp-01/01s,继电器接GPIO0,物理开关接GPIO2
    //#define LED_BUILTIN_LIGHT D3
    //#define LED_BUILTIN_K2 D4
    
    /***
     * 继电器高电平触发时,YYXBC_HIGH = 1,YYXBC_LOW  = 0
     * 继电器低电平触发时,YYXBC_HIGH = 0,YYXBC_LOW  = 1
     */
    const int YYXBC_HIGH = 0 ;
    const int YYXBC_LOW  = 1 ;
    
    /***
     * 物理开关点动模式1,自锁模式0
     */
    const int YYXBC_BUTTON_TYPE = 0;
    
    //http接口请求密码
    String httppswd = "123456";
    
    bool oDuerState = YYXBC_LOW;
    bool oMioState = YYXBC_LOW;
    bool oAligenieState = YYXBC_LOW;
    
    // 新建组件对象
    BlinkerButton Button1("btn-abc");
    
    //webserver for siri
    static ESP8266WebServer esp8266_server(80);
    
    //心跳回调
    void heartbeat()
    {
       BLINKER_LOG("heartbeat,state: ", digitalRead(LED_BUILTIN));
    
        //较正app的按钮状态
        if(YYXBC_HIGH == digitalRead(LED_BUILTIN_LIGHT) ){
            Button1.print("on");
        }else{
           Button1.print("off");
        }
    }
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //*******如果是手机app 有对设备进行操作就执行下面
    
    void button1_callback(const String & state)
    {
        BLINKER_LOG("button1_callback get button state: ", state);
    
        if (state == BLINKER_CMD_ON) {
            BLINKER_LOG("Toggle on!");
            Button1.print("on");
            digitalWrite(LED_BUILTIN_LIGHT, YYXBC_HIGH);
            oDuerState = YYXBC_HIGH;
            oMioState =YYXBC_HIGH;
            oAligenieState = YYXBC_HIGH;
        }
        else if (state == BLINKER_CMD_OFF) {
            BLINKER_LOG("Toggle off!");
            Button1.print("off");
            digitalWrite(LED_BUILTIN_LIGHT, YYXBC_LOW);
            oDuerState = YYXBC_LOW;
            oMioState = YYXBC_LOW;
            oAligenieState = YYXBC_LOW;
        }
        BlinkerDuerOS.powerState(oDuerState == YYXBC_HIGH ? "on" : "off");
        BlinkerDuerOS.report();
        BlinkerMIOT.powerState(oMioState == YYXBC_HIGH ? "on" : "off");
        BlinkerMIOT.print();
        BlinkerAliGenie.powerState(oAligenieState == YYXBC_HIGH ? "on" : "off");
        BlinkerAliGenie.print(); 
    }
    
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //*******如果小度 有对设备进行操作就执行下面
    void duerPowerState(const String & state)
    {
        BLINKER_LOG("duerPowerState need set power state: ", state);
    
        if (state == BLINKER_CMD_ON) {
           button1_callback(BLINKER_CMD_ON);
        }
        else if (state == BLINKER_CMD_OFF) {
          button1_callback(BLINKER_CMD_OFF);
        }
    }
    
    void duerQuery(int32_t queryCode)
    {
        BLINKER_LOG("DuerOS Query codes: ", queryCode);
    
        switch (queryCode)
        {
            case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :        
                BLINKER_LOG("DuerOS Query power state");
                BlinkerDuerOS.powerState(oDuerState == YYXBC_HIGH? "on" : "off");
                BlinkerDuerOS.print();
                break;
            case BLINKER_CMD_QUERY_TIME_NUMBER :
                BLINKER_LOG("DuerOS Query time");
                BlinkerDuerOS.time(millis());
                BlinkerDuerOS.print();
                break;
            default :
                BlinkerDuerOS.powerState(oDuerState == YYXBC_HIGH? "on" : "off");
                BlinkerDuerOS.print();
                break;
        }
    }
    
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //*******如果小爱有对设备进行操作就执行下面
    void miotPowerState(const String & state)
    {
        BLINKER_LOG("miotPowerState need set power state: ", state);
    
        if (state == BLINKER_CMD_ON) {
           button1_callback(BLINKER_CMD_ON);
        }
        else if (state == BLINKER_CMD_OFF) {
          button1_callback(BLINKER_CMD_OFF);
        }
    }
    
    void miotQuery(int32_t queryCode)
    {
        BLINKER_LOG("MIOT Query codes: ", queryCode);
    
        switch (queryCode)
        {
          case BLINKER_CMD_QUERY_ALL_NUMBER :
              BLINKER_LOG("MIOT Query All");
              BlinkerMIOT.powerState(oMioState == YYXBC_HIGH? "on" : "off");
              BlinkerMIOT.print();
              break;
          case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :
              BLINKER_LOG("MIOT Query Power State");
              BlinkerMIOT.powerState(oMioState ==YYXBC_HIGH ? "on" : "off");
              BlinkerMIOT.print();
              break;
          default :
              BlinkerMIOT.powerState(oMioState ==YYXBC_HIGH ? "on" : "off");
              BlinkerMIOT.print();
              break;
        }
    }
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //*******如果天猫精灵有对设备进行操作就执行下面
    void aligeniePowerState(const String & state)
    {
        BLINKER_LOG("aligeniePowerState need set power state: ", state);
    
        if (state == BLINKER_CMD_ON) {
           button1_callback(BLINKER_CMD_ON);
        }
        else if (state == BLINKER_CMD_OFF) {
          button1_callback(BLINKER_CMD_OFF);
        }
    }
    
    void aligenieQuery(int32_t queryCode)
    {
        BLINKER_LOG("AliGenie Query codes: ", queryCode);
    
        switch (queryCode)
        {
          case BLINKER_CMD_QUERY_ALL_NUMBER :
              BLINKER_LOG("AliGenie Query All");
              BlinkerAliGenie.powerState(oAligenieState == YYXBC_HIGH? "on" : "off");
              BlinkerAliGenie.print();
              break;
          case BLINKER_CMD_QUERY_POWERSTATE_NUMBER :
              BLINKER_LOG("AliGenie Query Power State");
              BlinkerAliGenie.powerState(oAligenieState == YYXBC_HIGH? "on" : "off");
              BlinkerAliGenie.print();
              break;
          default :
              BlinkerAliGenie.powerState(oAligenieState == YYXBC_HIGH ? "on" : "off");
              BlinkerAliGenie.print();
              break;
        }
    }
    
    void dataRead(const String & data){
      BLINKER_LOG("Blinker readString: ", data);
    
      Blinker.vibrate();
      
      uint32_t BlinkerTime = millis();
      
      Blinker.print("millis", BlinkerTime);
    
    }
    
    void setup() {
        // 初始化串口
        Serial.begin(115200);
    
        #if defined(BLINKER_PRINT)
            BLINKER_DEBUG.stream(BLINKER_PRINT);
        #endif
    
    //        //debug 命令
    //    BLINKER_DEBUG.stream(BLINKER_PRINT);
    //    BLINKER_DEBUG.debugAll();
    
        // 初始化有LED的IO
        pinMode(LED_BUILTIN_LIGHT, OUTPUT);
        digitalWrite(LED_BUILTIN_LIGHT, YYXBC_LOW);
        
        pinMode(LED_BUILTIN_K2, OUTPUT);
    //    digitalWrite(LED_BUILTIN_K2, LOW);
        
     #if (defined(BLINKER_APCONFIG)) || (defined(BLINKER_ESP_SMARTCONFIG))
         //启动配网模式用这行代码
        Blinker.begin(auth);
     #else 
        Blinker.begin(auth, ssid, pswd);
     #endif
     
        Blinker.attachData(dataRead);
    
        BlinkerDuerOS.attachPowerState(duerPowerState); //小度语音操作注册函数
        BlinkerDuerOS.attachQuery(duerQuery);
    
        BlinkerMIOT.attachPowerState(miotPowerState);//小爱语音操作注册函数
        BlinkerMIOT.attachQuery(miotQuery);
    
        BlinkerAliGenie.attachPowerState(aligeniePowerState);//天猫语音操作注册函数
        BlinkerAliGenie.attachQuery(aligenieQuery);     
      
        Button1.attach(button1_callback);
        //注册回调函数
        Blinker.attachHeartbeat(heartbeat);
        
        //启动webserver ,提供接口给siri用
        esp8266_server.on("/", handleRoot); 
        esp8266_server.on("/post", handleSetConfig);           
        esp8266_server.onNotFound(handleNotFound);  
        esp8266_server.begin();                  
          
        Serial.println("HTTP esp8266_server started");
    }
    
    void loop() {
    
        static int lastms = 0;
        if (millis()-lastms > 10000) {
          lastms = millis();
          Serial.printf(PSTR("Running (%s),state(%s),version %s for %d Free mem=%d\n"),
              WiFi.localIP().toString().c_str(),
              oAligenieState == YYXBC_HIGH  ? "YYXBC_HIGH" : "CLOES",
              version.c_str(), lastms/1000, ESP.getFreeHeap());
        }
        
        Blinker.run();//运行Blinker
        esp8266_server.handleClient();// 处理http服务器访问
        
        //检查物理开关状态
        if(YYXBC_BUTTON_TYPE == 1){
           btnHandler1();
        }else{
           btnHandler2();
        }
       
    }
    
    
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    //*******如果iOS的siri有对设备进行操作就执行下面
                                                                      
    void handleRoot() {   //处理网站根目录“/”的访问请求 
       String data = "<html>";
          data += "<head><title>设置</title></head>";
          data += "<body>";
          data +=" <p>ESP8266 智能开关,技术支持 微信:yyxbc2010</p><hr>";
          data +=" <p>SSID:"+ WiFi.SSID() + "</p><hr>";
          data +=" <p>PSW:"+ WiFi.psk() + "</p><hr>";
          data += "</body>";
          data += "</html>";  
          
        esp8266_server.send(200, "text/html; charset=utf-8", data);  
    } 
    
    
    void handleSetConfig() {   //处理来自siri的访问请求 
      if (esp8266_server.method() != HTTP_POST) {
        esp8266_server.send(405, "text/plain", "Method Not Allowed");
      } else {
    //    String message = "POST form was:\n";
        String btnName,btnState,btnPswd;
        for (uint8_t i = 0; i < esp8266_server.args(); i++) {
           String name = esp8266_server.argName(i);
           if(name == "btn") {
               btnName = esp8266_server.arg(i);
           }
           else if (name == "state"){
               btnState = esp8266_server.arg(i);
           } 
           else if (name == "passwd"){
               btnPswd = esp8266_server.arg(i);
           }     
        }
        if(btnPswd != httppswd){
          String message = "{\"errcode\":0,\"msg\":\"password error\"}";  
          esp8266_server.send(200, "text/html; charset=utf-8", message);  
          return;
        }
        if(btnName.length() >0 && btnState.length() >0) {
            //开关btn-abc
            if(btnName == "btn-1"){
              if(btnState == "on"){
                 button1_callback( BLINKER_CMD_ON);
              }else if (btnState == "off"){
                 button1_callback( BLINKER_CMD_OFF);
              }
            }
        
        }
        String message = "{\"errcode\":0,\"msg\":\" ok\"}";  
        esp8266_server.send(200, "text/html; charset=utf-8", message); 
      }
    }
    
    // 设置处理404情况的函数'handleNotFound'
    void handleNotFound(){   
    //  digitalWrite(led, 1);
      String message = "File Not Found\n\n";
      message += "URI: ";
      message += esp8266_server.uri();
      message += "\nMethod: ";
      message += (esp8266_server.method() == HTTP_GET) ? "GET" : "POST";
      message += "\nArguments: ";
      message += esp8266_server.args();
      message += "\n";
      for (uint8_t i = 0; i < esp8266_server.args(); i++) {
        message += " " + esp8266_server.argName(i) + ": " + esp8266_server.arg(i) + "\n";
      }
      esp8266_server.send(404, "text/plain", message);
    
    }
    
    //点动模式按钮,监听按钮状态,执行相应处理
    void btnHandler1()
    {
      static bool oButtonState = false;
      int state1 =  digitalRead(LED_BUILTIN_K2); //按钮状态
      int state2 =  digitalRead(LED_BUILTIN_LIGHT); //灯的状态
      if(state1 == HIGH )
      {
        if(oButtonState ){
          if(state2 == YYXBC_HIGH )
          { 
            button1_callback(BLINKER_CMD_OFF);
            Serial.println("按钮对灯已执行关闭");
          }else{
            button1_callback(BLINKER_CMD_ON);
            Serial.println("按钮对灯已执行打开");
          }
          oButtonState = false;
        }
      }else{
        oButtonState = true;
      }
    }
    
    
    
    //自锁模式按钮,监听按钮状态,执行相应处理
    void btnHandler2()
    {
     static bool is_btn = false;//按钮的标志位,用来逻辑处理对比,判断按钮有没有改变状态
      bool is = digitalRead(LED_BUILTIN_K2);   //按钮状态
      if ( is != is_btn)
      {
        bool is_led = digitalRead(LED_BUILTIN_LIGHT);
        digitalWrite(LED_BUILTIN_LIGHT, !is_led);
        if (is_led == YYXBC_HIGH)
        {
          button1_callback(BLINKER_CMD_OFF);
          Serial.println("按钮对灯已执行关闭");
        }
        else
        {
          button1_callback(BLINKER_CMD_ON);
          Serial.println("按钮对灯已执行打开");
        }
        is_btn = digitalRead(LED_BUILTIN_K2);  //更新按钮状态
      }
    }
    

    资源下载

    本文章相关资源链接:https://pan.baidu.com/s/1LU4XkcYnH83GNsA61ywFqw 提取码:681i 复制这段内容后打开百度网盘手机App,操作更方便哦

    QQ技术讨论群

    在这里插入图片描述

    关注阳阳学编程抖音号

    在这里插入图片描述

    展开全文
  • 超声波遥控开关

    2020-12-05 22:01:17
    本何介绍的超声波遥控开关,其遥控距离在lOm以上,可广泛应用于工业自动化控制及家用电器控制。 电路工作原理 该超声波遥控开关电路由超声波发射器电路和接收器电路组成。 超声波发射器电路由控制按钮S、时基集成...
  • 光控开关 (三)

    2020-12-05 19:20:02
    本例介绍一款采用聚光良好的普通手电筒来遥控的光控开关,它可作为照明灯或排风扇等家用电器设备的电源开关。 电路工作原理 该光控开关电路由电源电路和光控电路组成,如图3-60所示。  电源电路由降压电容器C4、...
  • 家用电器、照明灯等电源的开或关,常常需要在不同的时间延迟后进行,本电源插座即可满足这种不同的需要。
  • 微动开关轻按即可进行燃气灶点火;高压脉冲点火可以更快的点燃燃气;气体检测装置对于燃气泄漏进行有效的报警提示,提高安全性;火焰温度检测(热电偶温度反馈)可以实时获得火焰温度,避免扑溢现象造成的熄火;...
  • 无线遥控开关 (六)

    2020-12-05 23:40:26
    本例介绍的无线遥控开关,具有发射功率大、灵敏度高、制作成本低、电路简洁等特点,其最大遥控距离可达500m以上,既可作为灯具、家用电器的控制开关,也可用于电动玩具等方面的控制。 电路工作原理 该无线遥控开关...
  • 水流量的测量由开关控制。由于 LCD1602 的显示屏幕有限,所以把程序设计成可以翻页的形式。翻 页也用开关控制。由于在两个界面里面都显示水温,故在显示程序里加入测量水温程序也未尝不可。整个程序中结构较为简单,...
  • 随着我国电子电力科技技术不断的发展,不管是在家用或者是其他地方所使用的电源开关,都得到了较大的突破性的实质发展。目前,就以开关电源来说,几乎被广泛的应用于所有的电子电器设备,是如今当下电子信息产业中不...
  • 开关电源,很有用的。学习开关电源。长虹彩电开关电源………………
  • 开关稳压器工作原理与典型应用电路分析——LM2576、LM2596与LM2577

    在这里插入图片描述
    | 图源

    整理电脑上文件时发现了几年前刚上大学时,整理的一份关于稳压电源的文档,当时是为了实验室培训之用而写,但是最后没有用到。记得那个时候刚学完了模电,有一些硬件基础,然后查了好多资料,从电子发烧友,到CSDN,再到芯片的datasheet,再到线性及开关稳压器设计320例和康老师的模拟电子技术,弄了很久才整理出了这份文档,具体参考已经不可知,侵删。当时没有开始写博客,所以就让它在电脑里一直沉睡。今天发现了,就把它放在这里了,我已经很多年不涉及硬件了,可能这些东西已经过时,而且当时查资料水平不高,理解也很粗浅甚至可能错误,并且大多只是纸上谈兵,不过总有对的点吧,希望对大家有帮助。

    线性三端稳压器

    copyright © 意疏:https://blog.csdn.net/sinat_35907936/article/details/120487011


    开关稳压电路


    前述的串联反馈式稳压电路由于调整管工作在线性放大区,因此在负载电流较大时,调整管的集电极损耗( P C = V C E I O P_C=V_{CE}I_O PC=VCEIO)相当大,电源效率较低,一般为40 % ~60 %,有时还要配备庞大的散热装置。为了克服上述缺点,可采用开关式稳压电路,电路中的调整管工作在开关状态,即调整管主要工作在饱和导通和截止两种状态。由于管子饱和导通时管压降 V C E S V_{CES} VCES和截止时管子的电流 I C E O I_{CEO} ICEO都很小,管耗主要发生在状态开与关的转换过程中,电源效率可提高到75%-95%。

    由于省去了电源变压器和调整管的散热装置,所以其体积小、重量轻。它的主要缺点是输出电压中所含纹波较大,对电子设备的干扰较大,而且电路比较复杂,对元器件要求较高。但由于工艺已经成熟,而优点又突出,已成为宇航、计算机、通信、家用电器和功率较大电子设备中电源的主流,应用日趋广泛。

    开关稳压电源将来自市电整流滤波不稳定的直流电压变换成交变的电压,然后又将交变电压转换成各种数值稳定的直流电压输出,因此开关稳压电源又称为DC/DC变换器。开关电源按控制原理可分为脉冲宽度调制,脉冲频率调制,脉冲密度调制和混合式调制,比较常用的是前两者。

    • 串联(降压)型开关稳压电路

    以串联型开关稳压电路和并联型开关稳压电路为例,简要介绍降压型和升压型开关稳压电源的基本组成和原理。

    串联型开关稳压电路原理框图如图1所示。它和串联反馈式稳压电路相比,主电路增加了二极管D(一般选用开关性能好的肖特基二极管)和LC组成的高频整流滤波电路以及产生固定频率的三角波电压 v T v_T vT发生器、比较器C、基准电压 V R E F V_{REF} VREF和误差放大器EA组成的控制与驱动电路

    在这里插入图片描述

    图1 串联型开关稳压电路原理图

    图中 V I V_I VI是整流滤波电路的输出电压, v B v_B vB是比较器C的输出电压。利用 v B v_B vB控制开关调整管T,将 V I V_I VI变成断续的矩形波电压。当 v A > v T v_A>v_T vA>vT v B v_B vB为高电平,T饱和导通,输入电压 V I V_I VI经T加到二极管D的两端,电压 v E v_E vE等于 V I V_I VI减去T的饱和压降 V C E S V_{CES} VCES ,此时二极管D承受反向电压而截至,负载中有电流 i o i_o io流过,电感L储存能量,同时向电容器C充电。输出电压 v o v_o vo略有增加。当 v A < v T v_A<v_T vA<vT 时, v B v_B vB为低电平,T由导通变截至,滤波电感产生自感电势(极性如图所示),使二极管D导通,于是电感中储存的能量通过D向负载 R L R_L RL释放,使负载 R L R_L RL继续有电流通过,因而常称D为续流二极管。此时电压 v E v_E vE等于 V D V_D VD(二极管正向压降)。由此可见,虽然调整管处于开关工作状态,但由于二极管D的续流作用和LC的滤波作用,输出电压是比较平稳的。

    在这里插入图片描述

    2 开关稳压电源电压,电流波形图

    图2画出了电流 i o i_o io,电压 v T v_T vT v A v_A vA v B v_B vB v E ( v D ) v_E(v_D) vE(vD) v O v_O vO的波形。图中 t o n t_{on} ton是调整管T的导通时间, t o f f t_{off} toff是调整管T的截止时间, T = t o n + t o f f T=t_{on}+t_{off} T=ton+toff是开关转换周期。显然,在忽略滤波电感L的直流压降的情况下,输出电压的平均值为:
    V O = t o n / T ( V I − V C E S ) + ( − V D ) t o f f / T ≈ V I t o n / T = q V I V_O=t_{on}/T ( V_I-V_{CES})+( -V_D ) t_{off}/T≈V_I t_{on}/T=qV_I VO=ton/T(VIVCES)+(VD)toff/TVIton/T=qVI
    式中 q = t o n / T q= t_{on}/T q=ton/T 称为脉冲波形的占空比。由上式,对一定的值,在开关转换T(或开关频率 f k f_k fk)不变,通过调节占空比即可调节输出电压,故又称电压脉冲宽度调制(简称PWM)式降压( V O < V I V_O<V_I VO<VI)型开关稳压电源。
    在这里插入图片描述

    图3 VO、VI变化时vT、vA、vB、vE的波形


    闭环情况下,电路能自动地调整输出电压。设在某一正常工作状态时,输出电压为某一预定值 V s e t V_{set} Vset,当反馈电压 V F = F v V s e t = V R E F V_F = F_vV_{set} =V_{REF} VF=FvVset=VREF时,比较放大器输出电压 v A v_A vA为零,比较器C输出脉冲电压 v B v_B vB的占空比为q=50%, v T 、 v B 、 v E v_T、v_B、v_E vTvBvE的波形如图3a所示。当输人电压 V I V_I VI增加致使输出电压 V O V_O VO增加时, V F > V R E F V_F > V_{REF} VF>VREF,比较放大器输出电压 v A v_A vA为负值, v A v_A vA与固定频率三角波电压 v T v_T vT相比较,得到 v B v_B vB的波形,其占空比q<50%,使输出电压下降到预定的稳压值 V s e t V_{set} Vset,此时, v A 、 v T 、 v B 、 v E v_A、v_T、 v_B、 v_E vAvTvBvE的波形如图3b所示。

    上述变化过程也可简述如下:

    在这里插入图片描述

    V I V_I VI下降时, V O V_O VO也下降, V F > V R E F V_F > V_{REF} VF>VREF比较放大器输出电压 v A v_A vA为正值, v B v_B vB的占空比q>50%,使输出电压上升到预定的稳压值 V s e t V_{set} Vset。总之,当 V I V_I VI或负载 R L R_L RL变化使 V O V_O VO变化时,可自动调整脉冲波形的占空比使输出电压维持恒定

    • 并联(升压)型开关稳压电路

    并联型开关稳压电路主回路如图4所示,与负载并联的开关调整管T为MOSFET,电感接在输入端LC为储能元件,D为续流二极管。图中控制电压 v G v_G vG为矩形波,控制T的导通与截止。当控制电压 v G v_G vG为高电平时( t o n t_{on} ton期间)T饱和导通,输入电压 V I V_I VI,直接加到电感L两端, i L i_L iL线性增加,电感产生反电势 i L = − L ( d i L / d t ) i_L=-L(d_{iL}/d_t) iL=L(diL/dt),电感两端电压方向为左正(+)右负(-)L,储存能量, v L = V I v_L=V_I vL=VI,(T的 V D S ≈ 0 V_{DS}≈0 VDS0),二极管D反偏而截止,此时电容C(电容已充电)向负载提供电流, i 放 = i O i_放=i_O i=iO,并维持 V O V_O VO不变;当 v G v_G vG为低电平时( t o f f t_{off} toff期间)T截止, i L i_L iL不能突变。电感L产生反电势 v L v_L vL为左负(-)右正(+),此时 v L v_L vL V I V_I VI相加,因而输入侧的电感常称升压电感,当 v L + V I > V O v_L + V_I > V_O vL+VI>VO 时,D导通, v L + V I v_L + V_I vL+VI给负载提供电流 i O i_O iO,同时又向C充电电流 i C i_C iC,此时 i L = i C + i O i_L=i_C + i_O iL=iC+iO。显然输出电压 V O > V I V_O > V_I VO>VI,称升压型开关稳压电路

    在这里插入图片描述

    图4 并联型开关稳压电路原理图

    T导通时间越长,L储能越多,因此,当T截止时电感L向负载释放能量越多,在一定负载电流条件下,输出电压越高。在控制脉冲 v G v_G vG作用下,整个开关周期T电感电流 i L i_L iL连续时的 v D v_D vD v D S 、 i L 、 v L 和 v O v_{DS}、i_L、v_L和v_O vDSiLvLvO的波形如图5所示。
    在这里插入图片描述

    图5 波形

    为了提高开关稳压电源的效率,开关调整管应选取饱和压降 V C E ( V D S ) V_{CE} (V_{DS}) VCE(VDS)及穿透均小的功率管BJT或者MOSFET,而且为减小管耗,通常要求开关转换时间 t S ≤ 0.01 f k t_S≤0. 01f_k tS0.01fk,开关调整管一般选用 f T ≥ 10 β f k f_T≥10βf_k fT10βfk的高频大功率管,当 f k > 50 f_k> 50 fk>50 kHz时,可选用绝缘栅双极型功率管(IGBJT)和VMOS功率管。续流二极管D的选择也要考虑导通、截止和转换三部分的损耗,所以选用正向压降小。反向电流小及存储时间短的开关二极管,一般选用肖特基二极管。输出端的滤波电容使用高频电解电容。

    开关稳压电源的控制电路一般用得较多的是“电压一脉冲宽度调制器(简称脉宽调制器PWM)",产品种类很多。开关频率 f k f_k fk的选择对开关稳压器的性能影响也很大。 f k f_k fk越高,需要使用的L,C值越小。这样,系统的尺寸和重量将会减小,成本将随之降低。另一方面,开关频率的增加将使开关调整管单位时间转换的次数增加,开关调整管的功耗增加,而效率将降低。随着开关管、电容、电感材料及工艺性能的改进, f k f_k fk可提高到15 - 500 kHz以上。目前已有 f k f_k fk=2 MHz的PWM集成芯片,如MC34066/MC33066。实际的开关型稳压电源电路通常还有过流、过压等保护电路,并备辅助电源为控制电路提供低压电源等

    copyright © 意疏:https://blog.csdn.net/sinat_35907936/article/details/120487011


    DC-DC典型应用电路设计


    集成开关型稳压电路有两大类,一类是控制与驱动器,需外接开关调整管,滤波电路和续流二极管,一般用于功率较大的场合;另一类就是单片开关稳压电源,集成芯片包括图2的所有单元电路。比较典型的单片集成开关稳压电源,降压型有LM2576系列,AE2576和LM2678等;升压型有LM2733,MAX1709和LM2577等。

    • LM2576系列

    LM2576系列是一种高效率,3A大电流输出,降压式开关稳压器,它能输出3A电流,并具有优良的线性度和负载调节能力,转换效率可达75%~88%(与产品型号的输出电压有关),可取代低效率的7800系列三端线性稳压器。LM2576-XX的使用方法非常灵活。不仅能构成降压式DC/DC电源变换器,还可构成负压输出式DC/DC电源变换器、升压式DC/DC电源变换器、降压/升压式DC/DC电源变换器。
    LM2576固定输出式开关稳压器典型应用电路如图6所示。输入电压范围是+7.0~40V,输出电压则取决于所用的LM2576的具体型号。将通/断控制端 ON/OFF接地。 C I C_I CI为输入端的滤波电容, C o C_o Co为输出端的滤波电容,二者均可采用铝电解电容。L为储能电感,可选国产功率电感,电感量约100uH。 V D V_D VD为续流二极管可采用MBR360型肖特基二极管,其反向峰值电压 U R M = 60 V U_{RM}=60V URM=60V,平均整流电流 I d I_d Id=3A,反向恢复时间 t r t_r tr<10ns

    在这里插入图片描述

    图6 LM2576固定输出式开关稳压器的典型应用电路

    设计要点:

    (1)储能电感可选择铁氧体磁芯和铁粉芯,其外形有罐形,绕线形等。其中,绕线形将导线绕制在铁氧体磁棒上,价格最便宜,但因它的磁通没有完全包在磁芯里,容易产生电磁干扰。有条件的最好采用罐形磁芯。电感的工作电流必须大于最大额定电流,避免造成磁饱和,导致开关电流迅速增大而损坏开关式稳压器。

    (2)输出电容起到输出滤波和保证环路稳定的作用。为降低输出纹波和提高稳定性,应选用等效串联电阻很低的电容。推荐用100~680uF的电容作为输出电容,其耐压值应至少为输出电压的1.5倍。例如,+5V固定输出时CO的耐压值不低于8V。为留出一定的余量,推荐使用耐压为10V或15V的铝电解电容。

    (3) 续流二极管应采用肖特基二极管或超快恢复二极管。在低压输出时(低于+5V),使用低压降的肖特基二极管能提高电源效率。续流二极管的导通电流至少为最大负载电流的1.2倍,反向耐压值(UR)至少为输出电压的1.25倍。

    (4)PCB必须布局合理。应该使电感的接地回路面积为最小, C I 、 V D 以 及 C O C_I、V_D以及C_O CIVDCO的引线尽量短,并将它们单点接地(即接地端焊在地线区域的同一点上)。反馈引线也应尽量短。取样器要尽可能的靠近稳压器。

    LM2576-ADJ可调输出式开关稳压器典型应用电路如图7所示。 R 1 、 R 2 R_1、R_2 R1R2均为外部分压电阻(亦称为取样电阻),应选误差为±0.1%的精密电阻。输出电压由下式确定:
    U O = U R E F ( 1 + R 2 / R 1 ) = 1.23 ( 1 + R 2 / R 1 ) U_O=U_{REF}( 1+R_2/R_1)=1.23( 1+R_2/R_1) UO=UREF(1+R2/R1)=1.23(1+R2/R1)
    例如,将 R 1 = 2.0 k Ω 、 R 2 = 6.12 k Ω R_1=2.0kΩ、R_2=6.12kΩ R1=2.0kΩR2=6.12kΩ代入上式,得到 U O = 5.00 V U_O=5.00V UO=5.00V
    在这里插入图片描述

    图7 LM2576-ADJ可调输出式开关稳压器的典型应用电路

    由LM2576HV-12构成负电压输出式开关稳压器电路如图8所示。其输入电压的范围是+12-45V,输出为-12V、0.7A。该电路的特点是GND端不接地,而是将反馈端接地,利用自举电路把稳压器原来的地变成负电压的输出端,输出电压就被稳定在-12V上,此时最大输出电流约700mA。对于更轻的负载,最低输入电压可降到4.7V左右。为实现Buck-boost变换,推荐的电感量范围是68~ 220uH,输出电容必须大于降压式变换的要求。对于低输入电压或大输出电流,输出电容应不小于1000uF。必要时还应给LM2576-12接散热器。

    在这里插入图片描述

    图8 -12V、0.7A开关稳压器电路

    一种能降低输出纹波的可调式开关稳压器电路如图9所示。LM2576HV- ADJ是属于高压型开关稳压器,输出为+12-50V、3A。 R 2 R_2 R2为可调电阻。在输出级又增加了一级LC型后置滤波器,可进一步减小输出纹波。

    在这里插入图片描述

    图9 能降低可调式开关稳压器输出纹波的电路

    由LM2576- ADJ和数字电位器构成的可编程开关稳压器电路如图10所示。现利用10kΩ数字电位器 R D C P R_{DCP} RDCP来代替可调电阻 R 2 R_2 R2,改变 R D C P R_{DCP} RDCP的值即可设定稳压器的输出电压。例如当 R 2 = R D C P = 7.76 k Ω R_2=R_{DCP}=7.76kΩ R2=RDCP=7.76kΩ时, U O U_O UO=6.00V。该电路的 U O U_O UO可在+1.23V~6V范围内变化。

    在这里插入图片描述

    图10 LM2576-ADJ和数字电位器构成可编程开关稳压器电路

    设计要点:

    (1)由于在开关稳压器中通过数字电位器的电流很小,因此一般不需要对其工作电流进行扩展。

    (2)为提高输出电压的稳定性, R2应采用误差为0.1%的金属膜电阻。

    (3)为降低输出纹波,可在输出级增加一级LC后置滤波器。LM2576还可配线性集成稳压器构成复合式稳压电源。具体方法是将LM2576作为前级,线性集成稳压器(如7805)作为后级。这样能充分发挥开关式稳压器,线性稳压器各自的优点,设计成效率高,输出纹波电压又小的稳压电源。

    (4)当LM2576-ADJ的工作结温超过110度时,必须给LM2576加一个较大的散热器。

    (5)设计PCB时要布局合理。应使电感的接地回路面积为最小, C 1 , V D 及 C O C_1,V_D及C_O C1VDCO的引线尽量短,并将它们单点接地(即将所有的接地端焊到地线区域的同一点上)。反馈引线也应尽量短捷。取样电阻要尽可能靠近稳压器。

    • LM2596系列

    LM2596是继LM2576之后推出的第二代3A大电流输出的降压式开关稳压器,具有很好的线性和负载调节特性。其电源效率最高可达94%,比LM2576大约提高5%。固定输出版本有3.3V、5V、12V和可调版本可以输出小于37V的各种电压。该器件内部集成频率补偿和固定频率发生器,开关频率为150kHz,与低频开关调节器相比较,可以使用更小规格的滤波元件由于该器件只需4个外接元件,可以使用通用的标准电感,这更优化了LM2596的使用,极大地简化了开关电源电路的设计

    LM2596-5.0在降压式/升压式(Buck-boost)变换中,利用+4.5V~20V正电压产生-5V,3A输出电压电路如图11所示。该电路的特点是GND端不接地,而将反馈端接地,利用自举电路把稳压器原来的地变成负电压输出端,输出电压就被稳在-5V上。VD1为隔离二极管,能对输入电压中的纹波及噪声起到隔离的作用。推荐使用肖特基二极管,所选型号为1N5833。VD2为续流二极管,可选1N5825型肖特基二极管。VD3为保护 二极管,当输入端发生短路时可防止输出变为正电压。
    在这里插入图片描述

    图11 -5V、3A开关稳压器电路

    LM2596构成的可调开关稳压器电路如图12所示。其中 C I N C_{IN} CIN,470uF/50V; C O U T C_{OUT} COUT,220uF/35V; R 1 R_1 R1,1k/1%; D 1 D_1 D1,5A/40V IN5825; L 1 , 68 u H ; C F F L_1,68uH;C_{FF} L168uHCFF,参照相关的应用信息而定,也可以省略。 R 2 R_2 R2由输出电压和基准电压算得,输出由 R 1 , R 2 R_1, R_2 R1R2以及基准电压决定。
    U O = U R E F ( 1 + R 2 / R 1 ) = 1.23 ( 1 + R 2 / R 1 ) UO=U_{REF}( 1+R2/R1)=1.23( 1+R2/R1) UO=UREF(1+R2/R1)=1.23(1+R2/R1)

    R 2 = R 1 ( U O U T / U R E T − 1 ) R_2=R_1( U_{OUT}/U_{RET}-1) R2=R1(UOUT/URET1)
    在这里插入图片描述

    图12 LM2596可调开关稳压器电路

    注:反馈线要远离电感,电路中的粗线一定要短,最好用地线屏蔽,调节输出电压的电阻R1, R2要靠近LM2596的4脚。在开关调节器中,PCB版面布局图非常重要,开关电流与环线电感密切相关,由这种环线电感所产生的暂态电压往往会引起许多问题。要使这种感应最小、地线形成回路,图中所示的粗线部分在PCB板上要印制得宽一点,且要尽可能地短。为了取得最好的效果,外接元器件要尽可能地靠近开关型集成电路,最好用地线屏蔽或单点接地。最好使用磁屏蔽结构的电感器,如果所用电感是磁芯开放式的,那么,对它的位置必须格外小心。如果电感通量和敏感的反馈线相交叉,则集成电路的地线及输出端的电容 C O U T C_{OUT} COUT的连线可能会引起一些问题。在输出可调的方案中,必须特别注意反馈电阻及其相关导线的位置。在物理上,一方面电阻要靠近IC,另一方面相关的连线要远离电感,如果所用电感是磁芯开放式的,那么,这一点就显得更加重要。

    • LM2577系列

    LM2577是升压型单片开关稳压器,可广泛用于电子产品的电源电路中。其有三种不同的输出电压版本:12V,15V,和可调。具有软启动功能,启动时冲击电流小。片内有过流保护和过热保护等。

    在这里插入图片描述

    图13 LM2577-ADJ构成输出电压可调的升压式稳压器电路

    由LM2577-ADJ构成的电压可调的升压式稳压器的电路如图13所示。当LM2577-ADJ内部功率开关管闭合时,整流二极管VD截止,输入电压U1经过电感L直接返回,使电感电流线性的增大。与此同时输出端滤波电容CO向负载放电。当功率开关管断开时,L上产生反向电动势,电感电流通过 V D V_D VD C O C_O CO充电。 R C , C C R_C,C_C RCCC为相位补偿网络。 R 1 , R 2 R_1,R_2 R1R2为取样电阻,输出电压由下式决定:

    U O = U R E F ( 1 + R 2 / R 1 ) = 1.23 ( 1 + R 2 / R 1 ) U_O=U_{REF}( 1+R_2/R_1)=1.23( 1+R_2/R_1) UO=UREF(1+R2/R1)=1.23(1+R2/R1)

    例如当 R 1 = 17.4 k , R 2 = 2 k R_1=17.4k, R_2=2k R1=17.4kR2=2k时,根据上式可以求出 U O U_O UO=11.93V。改变 R 1 R_1 R1的电阻值即可调节输出电压,但最大输出电流不超过800mA。

    • 小结

    开关稳压器使用输出级,重复切换“开”和“关”状态,与能量存贮部件(电容器和感应器)一起产生输出电压。它的调整是通过根据输出电压的反馈样本来调整切换定时来实现的。在固定频率的稳压器中,通过调节开关电压的脉冲宽度来调节切换定时,这就是所谓的 PWM 控制。在门控振荡器或脉冲模式稳压器中,开关脉冲的宽度和频率保持恒定,但是,输出开关的“开”或“关”由反馈控制。根据开关和能量存贮部件的排列,产生的输出电压可以大于或小于输入电压,并且可以用一个稳压器产生多个输出电压。在大多数情况下,在同样的输入电压和输出电压要求下,脉冲(降压)开关稳压器比线性稳压器转换电源的效率更高。

    copyright © 意疏:https://blog.csdn.net/sinat_35907936/article/details/120487011


    参考


    线性及开关稳压器设计320例
    电子技术基础 模拟部分

    展开全文
  • 给家电行业的维修人员及开关人员的参考资料

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,878
精华内容 751
关键字:

家用开关原理