DIY远程监控室内温度设备(tiny6410+ds18b20+yeelink+curl)

原文出处: richard.hmm

春节了,趁着假期的空闲时间,抽空捣鼓了下tiny6410开发板,发现这个东东尘封许久,很长时间没用过了。貌似最近物联网大热,谷歌收购Nest,其设计的恒温器能够智能调节和远程控制房间的温度,UI和设计理念都非常棒。物联网是什么东东,这个百度、google一下就能得到很多说法或概念,但到底是什么呢,这个我想还是DIY一个简单的东东来体验一下吧。

一、目的

DIY一个可以简易的远程监控室内温度设备,实现通过web/android/ios/微信进行查看家中温度的电子设备。(最终的效果相当不错,虽然简单,只要家中未断电断网,就可以用随时随地掌握家中的温度变化,做到遥知冷暖,很新鲜啊,提供个链接,欢迎大家围观:http://www.yeelink.net/devices/7376

二、软硬件环境

硬件:tiny6410+ds18b20+有线网络 or USB wifi

软件:linux+QT/curl/crontab/shell/YeeLink服务(云存储、各种接入方式web/android/ios/微信甚至微博、邮件及相关社交网络分享,这点很赞)

三、ds18b20驱动及应用

见参考资料5,这个有前人的经验总结,就不展开说,源码如下:

ds18b20.rar

四、curl移植到tiny6410

1、移植openssl到tiny6410。

下载openssl-1.0.0l.tar.gz

解压tar xzvf openssl-1.0.0l.tar.gz

配置编译(ubuntu中进行交叉编译)

 

2、移植curl到tiny6410。(依赖openssl)

下载openssl-1.0.0l.tar.gz

解压tar xzvf curl-7.35.0.tar.gz

配置编译(ubuntu中进行交叉编译)

五、yeelink环境

为了实现远程监控功能,在此使用了yeelink基于物联网应用免费的云存储服务器及相关的客户端(android/IOS/微信服务号/微博发布),作为一种物联网应用,该平台确实非常不错。

1、yeelink之注册用户、添加设备、添加传感器、上传数据、取回数据。详情见官网http://www.yeelink.net/

2、根据yeelink的api接口上传数据。在tiny6410 linux系统上采用shell脚本调用curl工具来实现。

六、busybox crontab使用

 1、在crontab服务中加入下面加红的一行, 让脚本每分钟运行一次, 保存退出。

 

*/1 * * * * /dev/shm/post_ds18b20_data_to_yeelink.sh

2、开启crond服务(tiny6410 linux+qt系统默认未开启)。

七、实现效果

1、网页浏览效果

041430353318310.x

2、android客户端显示效果

041431469714256.x
041431582216818.x

3、 下面提供了交叉编译后的可执行文件(交叉工具链为:FriendlyARM/toolschain/4.5.1/bin/arm-linux-gcc)

ds18b20_bin.rar

使用说明:

八、参考资料

1、树莓派玩家5分钟内将树莓派-USB摄像头与Yeelink连接–最好玩的网页监控器 http://blog.yeelink.net/?p=468

2、远程监控树莓派BT上传/下载状态 http://bbs.yeelink.net/forum.php?mod=viewthread&tid=112&extra=page%3D2

3、如何使用busybox的cron实现计划任务 http://bbs.csdn.net/topics/190017224

4、Linux下定时执行脚本 http://www.blogjava.net/decode360/archive/2009/09/18/287743.html

5、基于Tiny6410的ds18b20驱动 http://blog.csdn.net/tandesir/article/details/7247558



杰克祥子
Practice doesn't make perfect, passion makes perfect. 新浪微博 @ 杰克祥子

1 条评论

  1. 陈星远  /  2014 年 12 月 24 日, 上午 12:33 回复

    做的很好,请问你的联系方式是?

    Thumb up 0 Thumb down 0

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">