智能创客,中国最大的极客空间,智能平台,免费教学,视频教程,手把手教你创造儿时梦想!

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 12606|回复: 28
打印 上一主题 下一主题

《TCP转发方案》01:智能家居工业方案介绍、前景

  [复制链接]

110

主题

396

帖子

2329

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2329
QQ
跳转到指定楼层
楼主
发表于 2015-10-16 14:48:11 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
《智能家居DIY》一书提供了家居网关+云端的http方案,这对初学者来说,http方案最容易理解和使用,资料也多。但是http是一个短连接,每次发送数据量大(那些http协议字符),并需要不断的刷云端来获取数据,这样人一多,服务器可能就完蛋了。

而家居网关如果能一直TCP长连接云端,客户端发送的数据能直接转发给网关,那么普通的服务器就可以同时在线上千上万个设备。
这个方案一般谁在用呢?QQ、微信airkiss、360芯片、esp8266商业方案等。
这中间也许也会使用UDP转发,相信QQ会这么做,UDP需要更精细的底层构架,而TCP基本满足商业方案的需求,并服务端已经有很开源方案,完全可以上千上万人同时并发。


这篇我们先讲理论知识,看看构架。
必须建立服务器(PHP环境)、客户端(网关或wifi模块等)、手机端,如下图。


左边是网关,中间是服务器,右边是手机

他们之间的通讯是用一个规定的数据格式进行的。
具体格式如下:
tcp协议:
绑定:mode=bind&apikey=你的key&data={ck001000bind}
心跳:mode=live&apikey=你的key&data={ck001000live}
执行:mode=exe&apikey=你的key&data={cksidnid数据}
上传:mode=up&apikey=你的key&data={cksidnid数据}

ip121.199.40.177 端口8080
1、网关绑定(可以用网络调试助手模拟),不能断开,每分种心跳一次,发现断开要重连和绑定。
2、在任何地方执行,就可以秒控制(可以用网络调试助手模拟)。
网络调试助手.exe (1001 KB, 下载次数: 4061)
3、apikey请去m.znck007.com注册生成,{cksidnid数据}格式代码的意义,请看智能创客网wifi系列去理解。

网关和服务器相连,心跳和上传数据,手机发送执行就可以转发到网关。
服务器我们采用php+mysql环境,请加QQ群109601470一起来交流探论。
网关代码我们使用易懂的python脚本编写TCP客户端。手机端使用html5和android端,并全部开源。
目前都是基于《智能家居diy》书中项目增加的一种方案。
《智能家居diy》硬件:https://item.taobao.com/item.htm?id=576067599077


大家看到这里,有些编程基础的应该都能明白其中的原理,对于一般的diy者来说,这套方案比较专业了,但可参修改为商业化。

接下的几篇会详细的教程介绍给大家如果搭建服务端、客户端、手机端,学到东西记得关注我们,加加QQ群109601470调戏我们。








分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

110

主题

396

帖子

2329

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2329
QQ
沙发
 楼主| 发表于 2015-10-18 13:47:22 | 显示全部楼层

不算是啦,算是图书的扩展,工业级方案啦。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|手机版|智能创客 ( 桂ICP备14000828号

GMT+8, 2024-5-2 13:00 , Processed in 0.092187 second(s), 32 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表