网络篇(一)如何发布数据到互联网
前面介绍了采集终端的硬件组成
其实原意耐心把这个帖子看完的筒子
应该对于硬件篇介绍的底层硬件可以信手拈来
所谓物联网,就是把万物接入互联网(局域网?)
各种传感器也不例外
传感器硬件拼接好了
接下来就是如何将传感器的数据发布到互联网上去
撸主最早的想法很傻很天真
是这样的:
用Uno建立一个本地轻型web服务器,不就能发不了么?
事实上没那么简单
大家应该都知道web访问端口一般是80或者8080
目前,国内互联网是不允许个人用户通过80端口发布web信息的
除非向xx组织申请端口开发,并备案
当然,你可以通过路由器的端口映射或者UNO的编程,改变服务器的端口
但是考虑到UNO这个玩具的处理能力,经受得住互联网浪潮的冲击么?
最终放弃这个方案
后来方案发生了微小的变化:
不错,借用网络服务提供商3322,来将自己的web数据发布到互联网
本来想着这个办法应该不错了吧
却发生了更奇葩的事件
外网能够访问UNO了
但是Sina SAE和3322之间似乎又不太和谐
在Sina SAE上运行PHP脚本
跳出来网页直接提示 502 Bad Gateway
个人理解,应该是3322和Sina SAE之间互联互通有问题(有没有更坑的?)
但是要通过微信访问硬件,必须使用Sina SAE呀
冥思苦想了一个小时,方案再次发生变更:
这个是最终定型的数据流拓扑(大神们就不要吐槽了,DIY屁民一个,没那么多资源)
数据采集终端将数据通过Yeelink进行发布
Yeelink以网页形式发布
Sina SAE的PHP脚本获取网页内容
并与疼讯微信公众平台交互
其实Sina SAE可以通过POST和GET与Yeelink交互数据
这里撸主还是采用获取网页信息的形式
不要问为什么,哥只是为了好玩
再来聊聊这几个货:
这部分基本上和底层硬件没啥联系了
完完全全的高级语言,高级的无处安放(为毛这么吐槽?后面的编程篇会有解释)
疼讯微信公众平台会有一个开发者模式
可以发布或者接受关注用户的信息
微信公众平台开发者模式本身无法运行定制的代码,只是提供了一些API接口供开发者们使用
而Sina SAE则是一个云开发环境,支持Python、PHP、.NET等等一些常见的高级语言或架构
甚至可以在上面建立数据库,是为数不多、功能比较齐全的免费云开发平台
但是提供的代码空间、数据库空间必然是小小
虽然使用要消耗云豆,但是注册实名就送,也够用了
看上去我还能用56年啊,O(∩_∩)O~。
不知道大家伙对Sina SAE和疼讯公众平台开发者模式有没有过了解
如果需要的话,再发帖写写这两个服务器的使用方法
上一个Sina SAE抓取的网页:
左下角就是从这个网页获取的传感器数据
并打印在网页上了
今天就先到这儿吧……