0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

天花板唤醒灯的制作教程

454398 来源:wv 2019-08-30 17:39 次阅读

第1步:选择灯具

此项目以常规吸顶灯开始修改。它必须是一个基于LED的灯,内置12伏电源模块和LED单元。此设置允许您在电源和LED单元之间连接自己的电子设备。当然,灯具也需要有足够的物理空间用于我们的电子设备 - 大约8.0 x 5.0 x 3.0厘米(或3.1 x 2.0 x 1.2英寸)。

我当地Hubo五金店的超级友好人员让我打开盒子找到合适的盒子,最后我得到了一个Eglo LED GIRON 13493.这是一款24 LED,12瓦型号。图为未修改形状的灯泡,盖子已拆下。如果你想用更大的灯来建造这个项目,这绝对是可能的 - 我们将使用的电路可以处理更大的电流

这个特殊吸顶灯的成本是40欧元(约合44美元) 。

第2步:其他零件和设备

我在这个项目中使用了以下电子元件:

LM2596 DC/DC降压稳压器模块(不仅仅是LM2596 IC)。

ESP-01模块。

LM358运算放大器

STP65NF06功率MOSFET

7电阻:5x 2k2,1x 100k,1x 220R

2电容:1x 100n,1x 47n

1二极管:1N4148

MOSFET类型并不重要。它只需要是采用TO-220封装的N沟道功率MOSFET,具有低导通电阻 - 许多其他类型都可以。

以下连接器等用于构建电路:

2个PCB螺钉端子,每个2针(2.54mm/0.1‘’)(用于电源和LED连接)

1个公头PCB接头,3个引脚(用于可选串口调试连接)

1个母头PCB接头,2行4个引脚(我们将ESP-01模块插入此端口) )

一块原型PCB,铜带连接3个孔,就像这样。

几根安装线,最好是几种不同的颜色(用于PCB)。

一根双线电缆(用于电源和我们的PCB之间)。

4个垫片/螺钉/螺栓,用于将PCB牢固地安装在灯泡内。

当然还有一些焊料。

组件的总成本与供应商的差异很大。我认为我为所有东西支付了大约15欧元(约合16.50美元),但应该可以通过DX或者AliExpress获得更好的交易。

您需要以下工具和设备来构建它:

常用工具,如螺丝刀,剪线钳和剥线钳。

烙铁。

钻头用钻头在PCB和金属上钻孔 - 我使用了3.0mm(0.12英寸)钻头。

电压/万用表

安装了Arduino IDE的PC/笔记本电脑,可以对ESP-01模块进行编程。这可以通过常规USB-to-UART模块与一些面包板电路相结合来实现,以便将ESP-01置于编程模式,或者(我认为更方便)使用ESP-01编程板(如图所示)。

虽然不是严格要求,但如果需要调试电路,使用示波器会派上用场。

步骤3:电路

微控制器核心

电路的核心是ESP8266基于ESP-01的wifi微控制器模块。基本的想法是通过向MOSFET开关发送PWM信号来对此事进行编程以保持时间,提供网页,触发警报并控制调光器。

ESP-01板价格便宜,体积小,并有一个易于使用的2.54mm/0.1‘’间距连接器。缺点是您只能获得2个通用输入/输出(GPIO)引脚:GPIO0和GPIO2。此外,为了正确启动微控制器,这些都需要先拉高,并且启动后它们会被启动加载器驱动一小段时间(如两个附加的示波器屏幕截图所示)。如果我们直接从这些引脚中的任何一个驱动灯,这些事情将导致明显的闪烁。

再次查看示波器测量结果,我们可以看到即使在启动期间,GPIO0和GPIO2也没有同时被驱动为低电平。我们将通过构造电路来解决这个问题,使得只有当GPIO0和GPIO2都被驱动为低电平时灯才会亮 - 有效地在GPIO0/2和MOSFET之间放置一个NOR门。 GPIO0将用于(反向)PWM,GPIO2将用作“使能”引脚。这种设置使我们能够完全控制以避免闪烁。

Opamp和MOSFET

GPIO0和GPIO2的输出通过R4和R5馈入运算放大器的反相输入。运算放大器的非反相输入获得由R6/D1产生的约0.5V的参考电压。这设置了所需的NOR功能。通过为运算放大器提供12V电压,它还可以提供从ESP-01的3.3V逻辑到完全驱动MOSFET所需的10V +所需的升压。我们通过R7从运算放大器输出驱动MOSFET。虽然这肯定不能成为理想的MOSFET驱动器,但它对于这种应用来说绝对是好的(快速)。当在面包板上构建电路时,我注意到一些电压尖峰和振铃,可能与MOSFET和LED单元之间的导线的自感有关。我(粗略但有效地)通过将C2放在源极和漏极上来抑制这种情况。

电源

我们的部分电路需要大约12V,另一个部分需要大约3.3V,我们有一个现有的12V电源来实现这一目标。我们从现有设计中有效地“窃取”了电力,希望我们吸取的电量不超过现有灯泡的安全裕度 - 这意味着我们必须保持较低的用电量。

根据这项研究,我们需要假设ESP-01的电流为215mA。使用线性稳压器(如LD1117)不是一个好选择。这意味着我们还将从额定电流为1A的原始电源中吸取215mA电流 - 因此215mA将非常重要。此外,稳压器将耗散约1.9W,因此需要散热器。因此,我使用了开关电源模块。通过调节微调电位器,可以将这个特定的基于LM2596的模块调节到所需的3.3V。假设转换效率为85%,它将从原始电源消耗70mA,耗散125mW - 这更容易接受。

步骤4:PCB

我在一块原型PCB板上构建了所有东西。我根据个人喜好使用了连接3个孔的铜条类型。我开始在角落钻4个孔以便以后安装板,然后焊接ESP-01的主要有源元件和插座,然后是其他所有。

包括这两个图插入和不插入ESP-01模块的PCB和照片。这些应该提供所有需要的信息

为了连接PCB,我使用螺丝端子连接电源和LED单元,并使用公头打印头暴露ESP-01的串口。后者不是必需的,但强烈建议在必要时进行调试。

步骤5:软件

如果你想要按原样使用软件而不做任何修改并且不关心它是如何制作的,程序很简单:下载并解压附带的‘wakeuplight_esp01.zip’,在Arduino IDE中打开。修改‘configuration.h’中的设置。它需要您的Wifi SSID和密码,IP地址信息,NTP服务器的名称(您可以保持不变)和时区信息 - 您的UTC标准偏差(以分钟为单位)以及任何夏令时规则。

进行适当的更改后,只需将草图上传到ESP-01。

如果您想对软件进行一些更改,或者只是对它的工作方式感兴趣,可以参考一些更详细的信息如下所示。

整体架构

我的这个软件的初始版本是在简单的C中,并通过实验有机地发展。在某些时候,它工作(有点),但它是一个混乱。然后我决定重构并切换到C ++,为每个单独的函数创建一个单独的类(由定义类的.h文件和包含实现的.cpp文件组成)。这些类在主模块中实例化。当然,大多数课程都依赖于其他课程。主模块通过依赖类的构造函数注入这些依赖项。

存在以下类:

配置:提供所有配置数据的接口,两者都是硬编码的(如上所述)以及存储在EEPROM中的数据(如报警设置)。所有其他模块(调光器除外)取决于配置。

调光器:使用PWM调节光强度。

Wificlient:建立与Wifi接入点的连接。

NTPClient:从时间服务器获取通用时间。

LocalClock:将通用时间转换为本地时间,并考虑DST规则(如果有)。

闹钟:使用Dimmer,LocalClock和Configuration执行在设定的时间段内逐渐打开灯光的基本功能。

网络服务器:提供适合移动设备的网页,以启用警报配置和手动控制。

Serialhost:允许串行通信以进行调试。

源文件中提供了更多详细信息。 Dimmer和Webserver模块在某种意义上是特殊的,它们部分地使用生成的代码。 ‘wakeuplight_java_helpers.zip’文件包含一个用于生成的Eclipse Java项目。我们将在下面放大。

调光器

唤醒灯的亮点是让光强度逐渐增加被人类感知。 PWM机制为我们提供了对光强度的线性控制,但人类感知或多或少是对数的(Weber-Fechner定律)。如果我们不对此进行补偿,只需让PWM占空比在1000步中从0增加到100%,结果就是在唤醒周期的早期阶段,光强度会增加得太快而且明显跳跃,提前达到高水平,然后在周期的剩余时间内从高到高非常缓慢地上升。这显然不是我们想要的。我们需要在时间上以指数方式而不是线性方式改变光强度,以使感知在时间上线性增加。

此外,ESP8266 PWM并不完美。它有一些抖动,在非常小的占空比下会引起注意,并导致灯泡明显闪烁。因此,光可以完全关闭,或者处于某种最小稳定值,但我们应该避免介于两者之间。如果PWM频率很低,这个问题会变得不那么严重 - 这就是我选择100Hz的原因。

文件‘DutyCycle.java’从感知光强度(0到1800比例)和PWM值(0到20000比例)的所需步骤计算函数。 ‘ConvertDutyCycleToEsp.java’程序计算此函数并将其写入.h文件以包含在Arduino项目中。 Arduino中的Dimmer代码只是查看生成的表格。

Webserver

我想用智能手机控制项目。由于我在编写网络应用程序方面比使用原生移动应用程序有更多经验,因此我决定采用适合移动设备的Web应用程序方法。

web-app是一个单页HTML5/jQuery应用程序,当用户按下按钮时会发送Ajax POST请求(并定期检索状态更新)。该页面指示浏览器从jsDelivr CDN获取jQuery,所有JavaScript和CSS代码都包含在HTML中,以及使用数据URL的图像。因此,加载页面只需要向ESP-01发出一个GET请求,保持一切简单快捷。

通过包含‘mobile-web-app-capable’和‘apple-mobile-具有网络应用功能的标签和快捷图标链接,智能手机可以将此网页添加到主屏幕。之后,它可以像应用程序一样启动(它将在全屏浏览器中启动),很大程度上隐藏了它不是本机应用程序的事实。

必须上传草图每次测试网页的小变化都不是一个很好的开发周期。因此,我在Java Web项目中开发了这个,使用’LightServlet.java‘模拟ESP-01对Ajax POST请求的响应。 ’ConvertWebpageToEsp.java‘将web项目index.html转换为’webserver_homepage.h‘包含文件,其中包含作为字符串常量的网页。

步骤6:将所有内容放在一起

随着PCB的建立和软件上传到ESP-01,现在是时候了将所有东西放在一起。

要将PCB安装在夹具中,当然需要在其中钻一些孔。在此之前我移除了电源和LED单元,以避免钻孔振动损坏它们。之后,可以使用垫片安装PCB。我从电源上取下原来的连接线,然后用它们连接到PCB。我用一根双线将PCB连接到电源上。在此之后,灯可以安装在天花板上!

当用墙壁开关打开灯泡时,灯应该像往常一样完全打开,但延迟很短(远不到一秒钟,但值得注意)。您现在应该可以将移动浏览器指向灯泡的IP地址,并查看网页。通过“添加到主屏幕”选项,您可以在主屏幕上添加一个图标作为真正的应用程序启动(在Android上测试,但也可以在iOS上运行)。

您现在可以配置唤醒期并启用它。当您想要进入睡眠状态时,请不要关闭墙壁开关,因为整个装置当然会失去动力。而是按下应用程序中的“关闭”按钮。第二天早上,您将在配置的时间轻轻地醒来。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22449

    浏览量

    645853
收藏 人收藏

    评论

    相关推荐

    谷东科技崔海涛:AR+AI大模型将成为工业智能化新常态

    “如果给工业AR设一个天花板,我觉得我们当前仍紧贴地表。”
    的头像 发表于 04-12 15:08 236次阅读

    2024画质天花板亮相AWE!TCL核心技术勇闯Mini LED技术无人区

    这里能看到最前沿的科技和产品。 此次展览,TCL以TCL实业与TCL科技两大主体共同参展,包括TCL电视、TCL冰洗等诸多细分领域产品悉数登场,同时也包括TCL领曜QD-Mini LED电视X11H,被行业誉为2024画质天花板。其不仅在背光分区上突破了万级分区,拥有14112级背光分
    的头像 发表于 03-15 10:48 213次阅读

    座舱SoC天花板是SA8295P?

    座舱SoC天花板是SA8295P?当然不是,AMD的一系列嵌入式处理器都可以碾压SA8295P
    的头像 发表于 12-12 14:55 1833次阅读
    座舱SoC<b class='flag-5'>天花板</b>是SA8295P?

    海光 HG3250 这款行业主板可以做行业天花板

    集特国产五大平台性能最高的海光平台,今天给大家介绍一下海光平台里面的天花板主板。 GM9-5601主板是采用海光处理器HG-3250设计的M-ATX工业主板,主频可达2.8Ghz,支持四条DDR4
    的头像 发表于 11-08 09:40 499次阅读
    海光 HG3250 这款行业主板可以做行业<b class='flag-5'>天花板</b>了

    旗舰新高!天玑9300安兔兔狂飙205万分,天花板性能要来了!

    的头把交椅。这让人忍不住赞叹全大核CPU的强大与出色,简直就是实力爆表,顶破天花板了! 据安兔兔官方微博爆料:“日前,安兔兔在后台发现了疑似联发科天玑9300的跑分成绩。 从安兔兔识别到的信息来看,天玑9300在CPU部分采用了4个超大核
    的头像 发表于 10-25 15:29 344次阅读
    旗舰新高!天玑9300安兔兔狂飙205万分,<b class='flag-5'>天花板</b>性能要来了!

    天花板嵌入式led灯电路图

    、工作原理及其制作过程。 一、天花板嵌入式LED灯的电路图 天花板嵌入式LED灯的电路图如下图所示: 二、天花板嵌入式LED灯的工作原理 天花板
    的头像 发表于 10-16 16:29 1995次阅读
    <b class='flag-5'>天花板</b>嵌入式led灯电路图

    制作硬盘中的天花板!差点把我带走

    led网络DIY电子技术
    学习电子知识
    发布于 :2023年09月06日 21:33:56

    天花板级别的液态Wi-Fi信号增强器,终章3

    led网络DIY电子技术
    学习电子知识
    发布于 :2023年09月06日 21:22:04

    能使天花板都颤抖的骨传导音响,和楼上邻居友好交流,震动音响制作

    led网络DIY电子技术
    学习电子知识
    发布于 :2023年09月06日 21:17:45

    高配开关电源的内部结构,电源中的天花板,0.5个W

    led电路开关电源电子技术
    学习电子知识
    发布于 :2023年08月23日 20:39:46

    哪家中国芯片公司能「吃下」大模型?

    中国AI芯片公司的天花板,可能是AMD。
    的头像 发表于 07-31 18:22 1214次阅读

    理一理AUTOSAR架构下的唤醒源事件

    最近的项目负责网络管理部分,网路唤醒和ECU系统的休眠关系紧密,对系统的唤醒源事件感觉理解的不是很透彻,今天就来理一理AUTOSAR架构下的唤醒源事件。
    的头像 发表于 07-14 09:11 1608次阅读
    理一理AUTOSAR架构下的<b class='flag-5'>唤醒</b>源事件

    专家:RISC-V没有性能天花板,2025年前后将超过x86和ARM

    Asanovic在自己的演讲中提到了一个听起来颇为大胆的言论,他指出:“RISC-V没有性能天花板和应用限制,将拥有更好的处理器和生态系统,未来两到三年有望超越传统架构。” 站在今天的视角来看,要实现对x86和ARM两大主流架构的超越,RISC-V需要实现巨大的跨越。不过,这也并非完全只是思想上的
    的头像 发表于 07-06 03:30 1262次阅读

    MP6951|重新定义的同步整流天花板

    点击标题下「MPS芯源系统」可快速关注 适配器圈内人士都知道, MP6908 系列就像同步整流控制器中天花板一样的存在。其超快的关断速度、独创的斜率检测功能、以及无需辅组绕组的高端自供电功能曾经满足
    的头像 发表于 06-28 12:05 1227次阅读
    MP6951|重新定义的同步整流<b class='flag-5'>天花板</b>

    基于STC单片机的5个唤醒唤醒MCU编程实例

    STC单片机5个唤醒唤醒MCU源代码
    发表于 05-12 16:03 1次下载