EDN China > 技术文章 > 消费电子设计 > 智能白电 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

怕错过手机通知?用Arduino做个通知提醒灯

funelab?? Instructables?? 2015年11月25日 ?? 收藏4

第十三步:组装图标灯

焊接LED灯的时候我选择了并联的方式,完成后我将它们装入图标灯中。慢工出细活,这一步需要你做到一丝不苟。

图18

用强力胶将LED站在图标灯中,然后再用塑料绳固定好各路线材,以防它们露出灯外影响美观。

图19

这一步一定要认真,要不然你做出的图标灯肯定很丑。

第十四步:测试图标灯的亮度

图20

装好图标灯后,我又对它们进行了测试,以保证它们通电时能及时亮起。

第十五步:将图标灯安装在印制电路板上

图21

这一步中,你需要将图标灯焊接在LED电路板上,一根电线连接5V电源,另一根则作为控制线来使用。

第十六步:将印制电路板安装在玻璃罐罐口

图22

盖子下面,我用了泡沫胶带为电路板提供支撑。然后用塑料绳将盖子和印制电路板固定在一起,以防玻璃罐掉落。

第十七步:最后的检查

图23

最后再检查一次,保证通电时灯能正常亮起。

第十八步:用绝缘套管为电线做绝缘处理

图24

第十九步:将玻璃罐挂在亚克力框架上

图25

记得用塑料绳来固定。

第二十步:开始对英特尔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的维基百科介绍。

图26

下载本文件并在英特尔的Arduino IDE中将其打开以进行测试。

第二十一步:为你的英特尔Edison平台编程

图27

在这次的项目中,我主要通过三种方式来获取信息,不过它们有一个共同点,那就是运行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平台和各类传感器

图28

第二十三步:挂起通知灯

第二十四步:享受各类信息通知的狂轰滥炸吧

通知灯制作完成。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

Arduino?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈