支持和Web服务器通信的物联网网关 |
2017-05-10 作者:上海卓岚信息科技有限公司 来源:zlmcu |
1.概述 随着物联网的发展,越来越多的设备需要连接到云端。其中的设备有各类仪表、工业设备、采集设备、传感器,这些设备都以串口(RS232、RS485)居多,所以可以通过串口转TCP、串口转Wifi等物联网网关,将数据传输到云端。但是各种设备和云端服务器通信的时候由于协议不同,开发者需要开发各类后台程序以配合数据的转化和存储。 此类物联网网关的最大优点是:节省了开发复杂度,网关可以直接以GET/POST指令和云服务器直接通信。 2.原理 下面讲一下此类网关的用法和原理。我们知道,当我们在浏览器中输入以下链接的时候将以GET指令的方式向Web服务器提交数据。 提交的数据内容为: 该数据内容将直接发到Web服务器的(这里的服务器IP是192.168.1.180)80端口。web服务器上运行的php程序就可以正确读取到data=123456这样的数据。 1. 各类仪表发送给物联网网关的数据并不是标准的GET指令,所以物联网网关需要进行一个数据转化,比如在数据的前面增加GET /1.php?data=的数据,在后面增加HTTP/1.1等数据。 2. 各类仪表发送的数据是十六机制数据,但是web服务器容易处理字符串string数据,所以需要将十六进制转化为字符串。 4. 使用方法 卓岚ZLAN5143、ZLAN8343N等产品可以实现以上功能。使用步骤如下: 注意这里的$符号就表示串口收到的数据,物联网网关收到数据后将会用串口收到的数据替换$,然后将这个配置文件的内容上传给web服务器,这样web服务器就可以按照GET指令的格式接收到串口数据。 5. web服务器下发 以上的方法只是实现了数据从串口到网络时,串口hex数据转变为GET命令的功能。但是如果Web服务需要按照GET命令下发数据,此时也需要将其中的某部分数据转发到串口。 实现的方法是在原来的配置文件第一行增加:NFL: data=# HTTP/1.1,物联网网关在收到任何网络数据的时候将会搜索前缀data=和后缀HTTP/1.1,将中间的部分提取出来,并转化为十六进制从串口输出。 Web服务器下发功能的实现,还得益于卓岚物联网在作为TCP客户端上传数据的时候,也可以作为TCP服务器接收Web服务器的下发连接和数据。 5. 总结 能够直接和Web服务器以GET命令通信的物联网网关——包括下发和上发数据——可以大大降低云端程序的开发工作量,该类物联网网关方便了物联网网设备的集成和接入。 |
楼主最近还看过