怕错过手机通知?用Arduino做个通知提醒灯
第十三步:组装图标灯
焊接LED灯的时候我选择了并联的方式,完成后我将它们装入图标灯中。慢工出细活,这一步需要你做到一丝不苟。
用强力胶将LED站在图标灯中,然后再用塑料绳固定好各路线材,以防它们露出灯外影响美观。
这一步一定要认真,要不然你做出的图标灯肯定很丑。
第十四步:测试图标灯的亮度
装好图标灯后,我又对它们进行了测试,以保证它们通电时能及时亮起。
第十五步:将图标灯安装在印制电路板上
这一步中,你需要将图标灯焊接在LED电路板上,一根电线连接5V电源,另一根则作为控制线来使用。
第十六步:将印制电路板安装在玻璃罐罐口
盖子下面,我用了泡沫胶带为电路板提供支撑。然后用塑料绳将盖子和印制电路板固定在一起,以防玻璃罐掉落。
第十七步:最后的检查
最后再检查一次,保证通电时灯能正常亮起。
第十八步:用绝缘套管为电线做绝缘处理
第十九步:将玻璃罐挂在亚克力框架上
记得用塑料绳来固定。
第二十步:开始对英特尔Edison平台进行配置并检查grove传感器
在这个项目中,我使用了英特尔Edison开发板,所以开始前我好好阅读了该平台的说明书。
英特尔Edison运行时需要一个USB驱动,安装好该驱动后,你的电脑上会出现3个虚拟串口。
如果你是个新手,推荐你看下Edison的入门指南。
接下来,你需要安装Flash Tool Lite,它是更新开发版固件时的首选方式。固件就是你开发板的操作系统,通过它你可以使用Wi-Fi、蓝牙、模拟和数字控制等功能。为了提高开发板的稳定性和性能表现,我推荐你及时对其进行固件升级。
连上Wi-Fi后,你就拥有了一台真正的物联网设备。
连接网络:
想要联网,恐怕你还得对代码做些许修改,请按以下两行代码执行。
char ssid[] = "YOUR NETWORK"; // 你的网络的SSID
char pass[] = "NETWORK PASSWORD"; // 你的网络密码
在制作过程中,我使用了grove传感器系统,该系统很容易连接,它包括MQ2瓦斯传感器、火焰传感器、空气质量传感器、红外温度传感器和扬声器。想要了解更多信息你可以参考Grove的维基百科介绍。
下载本文件并在英特尔的Arduino IDE中将其打开以进行测试。
第二十一步:为你的英特尔Edison平台编程
在这次的项目中,我主要通过三种方式来获取信息,不过它们有一个共同点,那就是运行python文件并通过API从互联网上获取信息,随后这些信息会被保存为一个文本文档,我只需要阅读文档就能获取所有想要的信息。
更新天气情况
通知灯的天气信息源来自openweathermap.org。这个程序很方便,只要有一个能用Arduino IDE编程并能连接Wi-Fi的微控制器就行。该程序会对openweather的服务器发出一个HTTP请求,随后还会利用TextFinder Arduino库来寻找详细的相关信息,如当前的温度等,随后它会将这些信息存储下来。
不过想要拿到免费的开发密匙(API Key),你得先去申请个免费账户,这样你就能在openweather的网站上随时获取信息了。请访问本链接来完成这一步。
敲击回车键后,屏幕上会出现以下参数:
{"id":88319,"dt":1345284000,"name":"Benghazi",
"coord":{"lat":32.12,"lon":20.07},
"main":{"temp":306.15,"pressure":1013,"humidity":44,"temp_min":306,"temp_max":306},
"wind":{"speed":1,"deg":-7},
"weather":[
{"id":520,"main":"rain","description":"light intensity shower rain","icon":"09d"},
{"id":500,"main":"rain","description":"light rain","icon":"10d"},
{"id":701,"main":"mist","description":"mist","icon":"50d"}
],
"clouds":{"all":90},
"rain":{"3h":3}}
我会取其中几个参数用在天气的通知灯中。你只需要将其保存成文本文档并使用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”信息。下面是一些你可能会用到的代码:
while True:
r = urllib2.urlopen('https://graph.facebook.com/me/notifications?access_token=your_access_token')
html = r.read()
data = json.loads(html);
if len(data['summary']) == 0:
write_led(0)
else:
write_led(1)
time.sleep(3)
请下载下列文件并运行。
IoT_Chandelier.ino
fb.py fb.py
mail.py mail.py
注意:请将Python文件保存到/home/root/Chandelier/。
第二十二步:固定好英特尔Edison平台和各类传感器
第二十三步:挂起通知灯
第二十四步:享受各类信息通知的狂轰滥炸吧
通知灯制作完成。