7609| 2
|
[项目] 怕错过手机通知吗?用Arduino做个通知提醒灯吧 |
本帖最后由 gckulo 于 2019-2-15 10:56 编辑 转自雷锋网 原创作者:老吕IO 编者注:本项目来自Instructables,原作者funelab打造了一个非常亮眼的通知提示灯,感兴趣的创客朋友也可以将其移植到微博平台上吧。 我是个IT从业人员,不过平时总是太忙,所以也不经常上Facebook或者刷Twitter。不过干这一行的人都懂得,效率就是生命,所以我要快速地在各种信息流中摸爬滚打,智能手机的推送服务可以满足我的要求,但我喜欢与众不同,所以就直接动手给自己做了一个通知灯,这可不是手机上那个小亮点,是真的灯哦! 我找了玻璃罐来做灯罩,将Gmail、Twitter和Facebook等图标的卡通灯放进去充当光源。 第一步:通知灯简介 上图就是我的通知灯,当你收到新的消息,它们就会亮起来,是不是酷毙了! 忘了那些容易漏掉的提示音吧,我的通知灯可以亮起不同的颜色来引起你的注意,当你看过信息后,它还会自动熄灭,用起来绝对超赞! 此外,我的通知灯还装配了Seeedstudio公司的grove传感器,还能充当家里的火警警报器。 第二步:原材料清单 以下就是制作通知灯所需的原材料 电子元件:
工具: 第三步:电源模块 降压电源模块我选择了LM2596,它可以给LED提供稳定的5V电压并能控制整个电路。此外,英特尔的Edison开发板还集成了稳压器电路。 下面我列举了一些LM2596模块的详细参数: 输入:3V到40V的直流电(输入电压需要比输出电压高出至少1.5V)。 输出:1.5V到35V的直流电,电压连续可调,最大输出电流可达3A。 功能:电感Q值高,可带动高功率LED提示灯。 三维:长宽高分别为45、20和14毫米。 我利用模块上预载的小型电位计调整了输出电压,一般5V或者稍低就足够了;如果你将电压调到5.5V,就可能会损坏集成电路和LED;所以,调整电压时要慎之又慎。 LM2596模块是我的最爱,它功能丰富,价格实惠。 第四步:HC-SR505 Mini红外动作传感器 这个红外动作传感器可以侦测到靠近通知灯的人,有人移动时,灯就会变色。 该传感器使用方便,只需一个引脚就能完成输出。 第五步:RGB LED灯移位PWM测试 实话说我对移位寄存器很感兴趣,特别是74HC595这个型号。通过这个移位寄存器,你可以在Arduino平台上控制RGB LED灯。此外,你还可以通过SPI,在Arduino平台上实现PWM调制。 在上图中,我就利用英特尔Edison平台通过UART(通用异步收发器)与Arduino pro mini 进行了通信,而且我还改变了一系列显示效果。 详解: 每个RGB LED都可显示三原色,从而与3 pin控制器相对应。每个8位的74HC595移位寄存器有8个控制输出,在这个项目中,我需要控制16个RGB LED,所以我需要16x3的48 pin控制,也就意味着我要准备6个移位寄存器。 怎样将代码上传至Aeduino Mini: 近来我一直在搞Arduino编程,希望能在这上面做出点成绩来。不过如果你想将代码上传,需要尝试下下面的方法。 首先,你需要一个USB串行光适配器或Arduino Uno,或Duemillanove,反正只要能充当HOST的可拆卸芯片就行。 大体上来说,只要将Arduino和5V的接地线、发射器、接收器连起来并重置Arduino Mini就好。搞定之后重头戏就来了,将ATMega芯片从HOST板上取下,然后按正常程序将代码上传至Arduino。好啦,这一步也完成啦。 关于编程: 在这里我使用了ShiftPWM的库,它对我帮助很大。如果需要,你可以去Elcojacops Githup下载,其中的示例文件很值得参考。 参阅了相关文档后,我将脉宽调变的频率设定为60,最高亮度设定为200。 第六步:电路图和Arduino专用的程序 我为Arduino pro mini开发的脉宽调变RGB LED程序,请各位自行下载使用。 第七步:制作电路板 对于热爱各类电子设备的人来说,制作PCB电路板是个再简单不过的工作了。只要去网上找一个电路图,你就可以制作出任何你喜欢的电路板了。 这就是我搜集的一些印制电路板,因为我要做九个灯,所以我需要九块电路板,九也是我最喜欢的数字。 第八步:焊接LED灯 整个焊接过程我非常小心,所以过程也变的比较艰难。所以,这步最好心情好的时候去做,要不你肯定会抓狂的。 第九步:设计图标灯和框架 然后用5毫米厚的亚克力板为其制作框架,接着用2毫米厚的亚克力板为整个框架封口。 下面的文件就是我当时画的图标,如果需要,你可以下载后在Corel Draw X7或更新版本的软件中打开它。 第十步:激光切割亚克力材料 我手头上并没有激光切割机,原因很简单:穷!所以我只好找了当地一家工厂帮我加工。如果你跟我的情况类似,我劝你也去找家工厂代工一下吧。 为了节省材料,我将图标都集中到了一块亚克力板上。此外,你可以为这些图标定制不同的颜色,比如红色的Gmail、蓝色的Facebook和Twitter。 第十一步:为玻璃罐留好位子 玻璃罐的直径为3英寸,所以我只做了一个直接约14.5英寸的灯架,这样就可以一次挂住九个通知灯了。 如图所示,我让通知灯围成一圈,这样看起来无比地和谐,你们说是不是? 第十二步:测试3毫米LED的亮度 这一步就要让你的图标灯亮起来了,我选了3毫米的LED灯,它们亮度很强,色彩丰富。通过不同的色彩,我就能获得不同的信息。 搞定之后记得用测试板测一下亮度,因为有些透明的LED亮度比其他的要高的多。 第十三步:组装图标灯 焊接LED灯的时候我选择了并联的方式,完成后我将它们装入图标灯中。慢工出细活,这一步需要你做到一丝不苟。 用强力胶将LED站在图标灯中,然后再用塑料绳固定好各路线材,以防它们露出灯外影响美观。 这一步一定要认真,要不然你做出的图标灯肯定很丑。 第十四步:测试图标灯的亮度 装好图标灯后,我又对它们进行了测试,以保证它们通电时能及时亮起。 第十五步:将图标灯安装在印制电路板上 这一步中,你需要将图标灯焊接在LED电路板上,一根电线连接5V电源,另一根则作为控制线来使用。 第十六步:将印制电路板安装在玻璃罐罐口 盖子下面,我用了泡沫胶带为电路板提供支撑。然后用塑料绳将盖子和印制电路板固定在一起,以防玻璃罐掉落。 第十七步:最后的检查 最后再检查一次,保证通电时灯能正常亮起。 第十八步:用绝缘套管为电线做绝缘处理 第十九步:将玻璃罐挂在亚克力框架上 记得用塑料绳来固定。 第二十步:开始对英特尔Edison平台进行配置并检查grove传感器 在这个项目中,我使用了英特尔Edison开发板,所以开始前我好好阅读了该平台的说明书。 英特尔Edison运行时需要一个USB驱动,安装好该驱动后,你的电脑上会出现3个虚拟串口。 如果你是个新手,推荐你看下Edison的入门指南。 接下来,你需要安装Flash Tool Lite,它是更新开发版固件时的首选方式。固件就是你开发板的操作系统,通过它你可以使用Wi-Fi、蓝牙、模拟和数字控制等功能。为了提高开发板的稳定性和性能表现,我推荐你及时对其进行固件升级。 连上Wi-Fi后,你就拥有了一台真正的物联网设备。 连接网络: 想要联网,恐怕你还得对代码做些许修改,请按以下两行代码执行。
在制作过程中,我使用了grove传感器系统,该系统很容易连接,它包括MQ2瓦斯传感器、火焰传感器、空气质量传感器、红外温度传感器和扬声器。想要了解更多信息你可以参考Grove的维基百科介绍 下载本文件并在英特尔的Arduino IDE中将其打开以进行测试。 第二十一步:为你的英特尔Edison平台编程 在这次的项目中,我主要通过三种方式来获取信息,不过它们有一个共同点,那就是运行python文件并通过API从互联网上获取信息,随后这些信息会被保存为一个文本文档,我只需要阅读文档就能获取所有想要的信息。 更新天气情况 通知灯的天气信息源来自openweathermap.org。这个程序很方便,只要有一个能用Arduino IDE编程并能连接Wi-Fi的微控制器就行。该程序会对openweather的服务器发出一个HTTP请求,随后还会利用TextFinder Arduino库来寻找详细的相关信息,如当前的温度等,随后它会将这些信息存储下来。 不过想要拿到免费的开发密匙(API Key),你得先去申请个免费账户,这样你就能在openweather的网站上随时获取信息了。请访问本链接来完成这一步。 敲击回车键后,屏幕上会出现以下参数:
我会取其中几个参数用在天气的通知灯中。你只需要将其保存成文本文档并使用Arduino IDE对其进行读取就行。 更新未读邮件 想要知道到底有多少未读邮件?你只需连接到一个IMAP4服务器,然后输入用户名和密码进行验证就行。帮你完成这一切的是存储在英特尔Edison中的python文件。 当Edison发现你有一两封未读邮件,就会亮起Gmail的灯来提示你。 更多信息请参阅Sparkfun的教程。 关于Facebook和Twitter的新通知 在这里,我们需要使用Facebook Graph。 你需要生成一个访问令牌(Acess Token)。这一步中,只需要依次在屏幕上点击“Get Access Token”和“Extended Permissions”,然后选择“manage_notification”就好。想要使用这个访问令牌,请访问https://graph.facebook.com/me/notifications?acces... 搞定后你会收到一些JSON格式的信息反馈,不过我们能用到的只有后面的“summary”信息。下面是一些你可能会用到的代码:
请下载下列文件并运行。 注意:请将Python文件保存到/home/root/Chandelier/。 第二十二步:固定好英特尔Edison平台和各类传感器第二十三步:挂起通知灯 第二十四步:享受各类信息通知的狂轰滥炸吧 通知灯制作完成。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed