电子说
第1步:收集材料
零件
1 x Arduino Nano
1 x DS1307实时时钟
1 x双面原型主板
每个绿色,红色,黄色5毫米LED
每个270欧姆,680欧姆,1K欧姆电阻器
白色凹槽体育场杯
推光灯或3-4节AA电池座
工具
烙铁和焊料
无焊接面包板
电线和跳线
胶枪
注意:无法让中国纳米驱动程序工作:)
第2步:设置时钟
DS1307 RTC就像一块手表,使用电池操作并保持时间均匀当阿尔德uino失去动力或重置。 RTC使用I2C接口与Arduino进行通信。 SCL(时钟)连接到A5,SDA(数据)连接到A4。对于VCC,RTC最好用5V,但我发现它在3.3V时运行良好。
使用面包板,根据原理图将实时时钟连接到Arduino。
接下来,在此处或附件中的github上下载DS1307RTC库。
如果您从未下载过库,请单击“克隆或下载”并选择“下载ZIP”选项。
将库导入Arduino编辑器选择“导入”并选择ZIP。
接下来,下载附加的 Program_Clock_RTC.ino 草图,并将其导入到编辑器中。
在草图中设置当前日期/时间并运行程序以设置时钟。
确认正在返回的时间正确。
恭喜!你现在有一个工作时钟!!
第3步:添加LED和编程
LED测试
现在,根据原理图连接LED和电阻。
下载 Light_Up_Clock_for_Kids.ino 草图并上传。在循环中,您将看到注释掉“setLEDs(tm.Hour,tm.Minute);”函数并在“testLEDs(); 函数下面取消注释循环通过每个LED 8秒钟。
验证LED工作循环是否正常工作,如果需要验证RTC仍然输出正确的时间,则取消注释serial.print行。
编程时代
验证一切正常后,取消注释 setLEDs()功能并注释掉 testLEDs()功能。在函数的 setLEDs()主体中设置您希望在示例后面显示各种颜色的时间。
注意:您可能需要使用电阻值为您的LED获得正确的亮度(以及您想要的功耗)。我发现以下适用于我的5mm LED,因为Green具有最高的正向电压,并且是最亮的,然后是其他颜色的调光器:
绿色:1K欧姆
黄色:680欧姆
红色:270欧姆
步骤4:构建灯罩
选项
为了散发LED发出的光,我尝试了几种不同的介质来封闭灯光。随着效果的不同,我尝试了一个按钮(LED最终太靠近扩散),梅森罐子里面装着羊皮纸或闪光胶,还有白色的体育场杯。你需要一些东西来散射光线,降低LED的刺激度,使光线均匀发光。
最佳选择
我找到了基本的白色体育场杯(3美元1美元)用蜡纸贴在里面(如图所示)发出良好的均匀光线。没有蜡纸,LED直接照射在杯子的顶部,产生不均匀的光斑。由于我打算长期使用,我甚至拿起硅胶灯具,我将重新设计并在未来添加Arduino(在AliExpress上10美元)。
第5步:低功耗和电池
我想让它更永久,并使用电池来操作。下一部分是可选的,因为您可以将杯子顶在上面,并使用墙上插头或便携式USB充电器供电。
低功耗和移除内置LED
代码已包括将Arduino置于低功耗睡眠状态8秒钟,醒来检查时间然后又回去睡觉了。为了更省电,并且没有始终显示Power LED,您可以摆脱Arduino Nano上的内置LED(因为我使用引脚D13也决定摆脱内置LED使用烙铁加热标有POW和L的内置LED的侧面,然后拉动或切割以去除它们。还有许多其他省电选项,您可以通过谷歌搜索尝试,但这持续数月的电池,现在很好用!
原型板和电池盒
将所有部件焊接到原型板上可以减小尺寸并使其易于安装在杯子内部的电池组顶部。
使用3或4节AA电池盒并焊接正极(+)到Arduino上的Vin和负极( - )到GND。
我没有任何电池盒,但确实有一个已经拆开的1美元推光灯,完全具有4节AA电池盒准备好满足我的需求。我将白色杯子放在电池盒上并标记黑色塑料,然后用工具刀切割。
将电路板热粘到电池组底座上,然后将白色杯子热胶粘在电池组顶部。您可以在需要时轻松切割热胶,然后重新设置LED指示灯亮起时间。
这位于门旁的儿童梳妆台顶部,现在不再有清晨干扰器!!!
全部0条评论
快来发表一下你的评论吧 !