感谢您购买 DEKIST RN17x 产品。
RN17x 型号是一款设计用于支持 HTTP 的发射器。 因此,可以构建一个连接客户开发的网络服务器和发送器的监控环境。
本节介绍如何使用客户开发的Web服务器配置Radionode RN171 / RN172产品。 这是Radionode V2协议。
– Web 服务器开发人员应该做什么
为了从客户的 Web 服务器接收 RN17X 的测量数据,必须在客户的 Web 服务器中实现无线电节点协议 V2,这是一个处理 CHECK-IN 和 DATA-IN 功能的应用程序。
客户必须创建一个从 HTTP GET/POST 接收参数并将它们存储在数据库中的应用程序。
- CHECK-IN:当设备开机或使用时,周期性传输设备信息(mac地址、IP地址等)并进行时间同步。
- DATA-IN:它执行在使用过程中周期性传输所有通道的传感器值以及时间信息的功能。 时间信息使用 UNIX TimeStamp。
实现以上 无线节点协议V2文档请参考 RN400和RN17X使用相同的协议。
在RN17X上设置服务器信息
1.使用USB电缆连接RN17X和PC。 无需单独的电源。 当屏幕显示CONF时,USB设置已准备就绪。
2.运行Radionode终端程序。 如果变为绿色,则表示正常。
3、输入密码radionode114,进入控制台菜单。
4.进入“ 2.系统设置”菜单,然后选择“ B.设置HTTP的目的地”。 从3个目的地中选择“ 2:CUSTOMER_V2”。 您已选择数据的目标作为定制服务器V2。
5.选择“ 4.HTTP目标设置”以设置服务器地址和应用程序。 在此处输入HTTP服务器IP或域名和端口号。
6.在“ 2.HTTP目标设置”中也设置了上述服务器的两个应用程序的Checkin和Datain。 在“ D.HTTP CHECKIN File”中输入用户开发的应用程序文件的路径。 例如,输入“ radionode / checkin.php”。 类似地,对于“ F.HTTP DATAIN文件”,输入自定义URL <例如“ radionode / datain.php”>,以准备RN4X将数据发送到服务器上的特定路径。
7.完成所有设置。 重新启动设备将定期将数据发送到用户输入的URL。 RN17X提供1至60分钟的传输周期选择。 默认值为5分钟。
8.断开网络连接后,RN171将测量的数据存储在其内部存储器中。 如果存储了数据,RN171将每1分钟30秒重试一次数据传输。 当Internet连接可用时,使用datain方法将存储在内存中的数据发送回服务器。
参考资料
可在 RN17X 设备上输入的 RADIONODE 测试服务器地址
由于它是一个可以检查 HTTP 连接的 TEST SERVER,因此不适合长期测试目的。
主机:http://52.192.181.203
港口: 80
数据输入网址:/数据输入文件
签到地址:/签入.php
检查输入设备的最后一个值: http://52.192.181.203/cur.php
检查输入设备的最新值: http://52.192.181.203/history.php
警告
在 RN17X 设备的控制台上的 Datain URL 和 Checkin URL 中输入值时,默认输入 /(正斜杠)。 请注意不要输入重复的内容。
建议使用 Apache 作为 Web 服务器。 对于NGNIX服务器,默认设置的HTTP头信息中没有Content-Length:信息。 如果没有Content-Length,RN400无法正常响应。 因此,应用程序中的HTTP Header信息中必须添加Content-Length。
您需要注意代码中的编码方法。
Python
self.__connection.write((line.strip() + "\r\n").encode("ASCII"))
C#
// 写入响应信息
byte[] data = Encoding.ASCII.GetBytes(respData);
resp.ContentType = "text/xml";
resp.ContentEncoding = Encoding.ASCII;
resp.ContentLength64 = data.LongLength;