互联网数据传输
互联网数据传输使用手册
目录
互联网数据传输使用手册 . .............................................................................................................. 1 系统介绍........................................................................................................................................... 3
系统目的 . .................................................................................................................................. 3 系统构成 . .................................................................................................................................. 3 系统的结构及流程 . .................................................................................................................. 3 GPRS 通信模块工作流程 . ....................................................................................................... 4 服务器工作流程 . ...................................................................................................................... 4 客户端工作流程 . ...................................................................................................................... 5 系统配置方法介绍 . .......................................................................................................................... 5
传感器端的要求和配置方法 . .................................................................................................. 5 服务器端的使用与配置方法 . .................................................................................................. 7 客户端软件使用说明 . .................................................................................................................... 11 注意事项......................................................................................................................................... 12
硬件部分 . ................................................................................................................................ 12 软件部分 . ................................................................................................................................ 12 附录 ................................................................................................................................................ 12
TCP/IP协议简介 . ................................................................................................................... 12 MODBUS-CRC 协议校验码的算法 ..................................................................................... 13 设备ID 的计算方法 .............................................................................................................. 13
系统介绍
系统目的
光纤传感器在野外工作测量数据时,所测的数据需要实时连续地发送到终端。往常采用的手段多为串口通信,该传输方式由于有距离的限制,为了能够在远处也能监控数据,涉及了一套基于互联网的数据返回系统。基于互联网建设的一套系统避免了单独开发一套系统进行数据传输,可以实现低成本、稳定的数据传输。
系统构成
该系统主要由四个部分及两种通信协议构成。
其中四个部分分为:传感器表头、GPRS 通信模块、服务器、客户端。 两种通信协议为:TCP/IP通信协议(简介见附录)、Modbus 通信协议(简介见附录)。 其中传感器表头与GPRS 通信模块之间通过RS232串口相连,基于Modbus 通信协议通信,GPRS 通信模块、服务器、客户端三者之间基于互联网的TCP/IP通信协议通信。
系统的结构及流程
GPRS 通信模块工作流程
服务器上的程序实现两个主要功能:对查询指令添加MODBUS-CRC 校验码并发送该查询指令、接收返回的数据并且对该数据进行字符串截取和数制转换。
流程图见于下方:
服务器工作流程
服务器可以理解为系统当中另一个透明的数据中转站,负责客户端和GPRS 通信模块之间的数据转发,结构框图如下:
客户端工作流程
客户端是非常重要的一个环节,它的工作内容实现了对传感器的命令以及对传感器返回数据的处理和存储,结构框图如下:
系统配置方法介绍
传感器端的要求和配置方法
为适用于本系统的软件与硬件,对传感器的数据输出端所适用的表头有一定的要求: 1. 传感器所使用的表头需要支持RS232串口与GPRS 通信模块进行数据交换; 2. 传感器所适用的表头需要支持Modbus 通信协议。
与传感器数据输出端的表头直接相连的GPRS 通信模块需要根据实际使用需求进行一些工作参数的配置,配置方法如下:
1配置参数时电脑串口参数,模块第一次使用时按照图示所示参数即可,之后需要根据用户上一次设置的实际参数来配置;
2 GPRS通信模块参数设置区,包含需要设置的GRPS 通信模块的参数; 3 信息提示区,发送指令后GPRS 通信模块返回的信息会在这一区域显示; 4 APN账号配置,设置建立网络连接时运营商的网络信息,可选择移动/联通/其他,APN 专用网及国外客户需要选择“其他”,并填入需要设置的APN 信息;
5网络连接选择 TAB ,选择其中一个网络连接,会在 6、7 号区域显示所选择的连接信息,勾选复 选框来启用连接;
6网络连接是否启用,勾选表示此连接启用;
7此区域填写连接信息,包括目的IP/域名,连接协议TCP/UDP,目的端口
8此区域用于设置GPRS 通信模块正常工作时的串口参数,包括波特率、校验位、数据位、停止位;
9 此处用于设置注册包信息,注册包为模块建立连接时所发送的第一个数据包,用于进行模块ID 识别(ID 计算方法见附录,ID 需勾选HEX ,即序号10内所介绍内容)。
10 此处勾选则可以在注册包内输入 16 进制数,可以填写不可打印字符等特殊字符的十六进制字符码;
11 DTU 工作模式选择,分别为透传模式/串口命令模式/AT 指令模式/HTTPD CLIENT 模式/短信透传模式(模式说明请参附录);
12
心跳包参数设置,当设定的时间(心跳包发送间隔)内,无网络数据及串口数据发
送,则发送心跳包以维持连接,可以任意设置,不超过40Bit ,勾选HEX 即可以设置16进制数,当设置的心跳包发送 间隔小于 30 秒时,心跳功能禁用;
13 心跳包发送间隔、串口打包时间、长度、自动重启等参数设置,心跳包发送间隔表示模块在无数 据传输时多长时间发送已设置的心跳包数据到服务器; 串口打包时间表示在设置的时间内没有新的串口数据到来,则将已经接收的串口数据通过网络发 往服务器; 自动重启时间,在设定的时间内模块没有接收到网络数据,则重启,当设置时间小于 600 秒时, 自动重启功能禁用。
14 恢复默认配置按钮,用于将模块恢复到软件默认配置;
15 读取 DTU 配置的按钮,用于读取模块内部已经设置的参数;
16 配置全部参数按钮,用于将软件内填写的配置信息配置到模块中。 上述所有参数设置好以后,通过电脑串口与 DTU 串口连接,给 DTU 通电,等出现如下图所示提示后, 点配置全部参数按钮,稍等几秒,出现如下图所示及所有指令均返回“OK ”时,参数配置成功。
服务器端的使用与配置方法
远程桌面
Windows 自带有一个远程桌面控制软件,点击开始-》运行-》输入mstsc-》确定-》跳出输入框-》输入IP 地址61.160.211.202-》确定。
之后可见远程桌面登陆界面(下图),默认用户名administrator ,密码为qwer7410,区分大小写。
D2D 软件的使用简介
服务器上有一个用于中转GPRS 通信模块与客户端之间的数据的软件,该软件搭建起了GPRS 通信模块与客户端之间的通信桥梁,下面简要介绍该软件的使用方法、界面参数意义。
1 标题栏:显示名称和服务当前状态; 2 管理:点击出现下拉菜单:
安装并启动服务:以服务方式启动D2DSvr ,TCP 监听25565 端口,处理所有TCP
链接及发送的数据;
停止并卸载服务:关闭D2DSvr 服务;
登录管理:控制D2DSvr 登录数据库,数据库只要登录一次,下次启动自动登录; 查看全部设备:查看数据库中记录的全部设备的状态和参数; 添加设备:向数据库和D2DSvr 中添加一个转发设备; 删除设备:删除一个数据库和D2DSvr 中的设备; 编辑设备:对数据库和D2DSvr 中编辑一个转发设备;
退出:退出D2DCtrl 控制软件,但D2DSvr 服务依然工作,除非点击“停止”; 3 选项:点击出现下拉菜单: 开机启动:D2DCtrl 开机启动
托盘运行:D2DCtrl 隐藏为右下角托盘图标继续运行; 4 English:中英文语言切换; 5 帮助:点击出现下拉菜单:
激活:用于激活D2DSvr ,激活操作方法见第2 章;
关于:弹出窗口显示软件名称、版本、我公司相关信息; 查看最新版本:快速访问官网D2D 最新版本下载页面; 使用手册:打开使用手册;
6 开启:功能同“2)管理”中“安装并启动服务”; 7 停止:功能同“2)管理”中“停止并卸载服务”; 8 登录:功能同“2)管理”中“登录管理”; 9 全部:功能同“2)管理”中“查看全部设备”; 10 添加:功能同“2)管理”中“添加设备”; 11 删除:功能同“2)管理”中“删除设备”; 12 编辑:功能同“2)管理”中“编辑设备”; 13 退出:功能同“2)管理”中“退出”;
14 状态:显示设备当前“在线”或“离线”状态; 15 设备ID :显示“设备ID ”; 16 目标ID:显示“目标ID ”,目标ID 只在D2D-Direct 模式下有效;设备IP :显示设备上次上线的IP ;
17 设备端口:暂无用;
18 工作模式:显示此设备的工作模式为“D2D-Direct ”; 19 缓存方式:暂未开启;
20 上线时间:显示设备上线的时间; 21 注册时间:显示设备添加的时间;
22 工作日志:记录D2DCtrl 的操作过程; 23 清空日志:清除D2DCtrl 的操作记录;
D2D 软件的配置方法
为了实现搭建起GPRS 通信模块与客户端之间的通信桥梁,在服务器上需要提前为其建立起一个通道,等待二者前来向这个通道发起连接,使通道能够运行起来,下面就介绍其配置方法。
举例设置ID101与ID100之间的通信
1 介绍:D2D-Direct 方式是面向服务器中的注册ID ,是一种设备ID 到目标ID 的传输方式。服务器将根据目标ID 的设备,自动将数据传递给目标ID 。
2 举例:设备1(ID :100)与设备2(ID :101)相互通讯,操作方法;
a 在服务已开启和数据库已登录的前提下,运行服务器D2D 软件,点击“添加” , 添加两项,分别为如下图所示; b 设置GPRS 通信模块网络:将GPRS 通信模块设置为TCP Client 方式,设置目标IP 为服务器IP ,目标端口:25565;
c 设置设备注册ID :将GPRS 通信模块的设备ID 设置为100,本地程序ID 设置为101即可。
在这样的设置方法基础之下,便可在服务器上建立起一个透明的通道,该通道连通的是客户端与GPRS 通信模块。
客户端程序配置
是客户端程序在使用的时候如果用户有需求,可以根据实际需要更改客户端对应于服务器的设备ID ,现介绍ID 的配置方法:
在客户端程序里有多个如上图的程序(一个如上的程序框图代表一个数据通道),在红色笔圈出的部分即为在服务器上作为识别ID 的信息,需要时修改此处即可更改客户端该通道程序在服务器上的ID 身份(ID 计算方法见附录)。
客户端软件使用说明
客户端软件打开后会出现如下图显示界面:
左上角红色圈出部分:点击该按钮,程序开始运行;
左上角蓝色圈出部分:点击该按钮,程序停止运行;
黄色圈出部分:按下开始对数据存盘,输入存盘间隔(秒);
青色圈出部分:选择数据存储的TXT 文档存储文件夹路径,文档会存在该文件夹下以设备ID 及月份命名;
通道XXXX 代表的是对应于传感器的设备编号;
面板中时间一栏显示的是返回数据的当前日期与时间(精确到毫秒),数据一栏显示当前返回的数据(精确到小数点后三位)。
注:数据存储会将时间与数据一同存储。
注意事项
硬件部分
1. 保持设备通电;
2. GPRS 信号良好(查询方式见附录);
3. 排除串口部分干扰(在需要使用互联网返回数据时,请不要在仪器的现场采集的串
口部分插上串口线);
4. 模块需插入sim 卡,并连接天线。
软件部分
当客户端出现返回0.000时,有以下几种情况:
1. 当地设备出现断电情况(供电恢复后会自动重连);
2. GPRS 通信模块处信号较差(查询信号强度,查询方式见附录);
3. 传感器串口受到干扰;
4. 若持续5分钟以上出现0.000并且排除上述三个问题,可登陆服务器,在服务器软
件上点击“全部”按钮,看出现问题的通道对应的设备编号是否处于在线状态,若不在线,则可使用短信方式使其重启后与服务器重连(方法见附录)。
附录
TCP/IP协议简介
TCP/IP协议是一个点对点的互联网数据传输协议,两点之间的TCP 连接的建立需要其中一点的IP 地址,以及一个端口(0--65535),端口号需要两边都设置为同一个端口号。建立连接后,通过TCP 发送的数据均为字符串,需要知道数据长度来读取数据(否则会出现数据读取错位,例如本应读取4位数据,但是设置读取5位数据长度,那么第一次读取的数据则是第一次发送的数据加上第二次发送的数据的第一位,其他情况以此类推)。
通俗地讲,TCP 负责了建立连接、数据收发等作用,IP 则作为了地址。
MODBUS-CRC 协议校验码的算法
在野外的传感器与用于将数据上传至服务器的GPRS 通讯模块之间还存在着一个基于RS232串口的通讯协议。基于串口的数据通讯方式可以大致分为两类,查询方式与自动发送方式,前者需要发送一个根据协议计算的查询指令,才会返回串口数据,后者则是一旦有了数据会自动发送。
Modbus 协议下有的查询指令如下:
[1**********]2 读第1通道
[1**********]2 读第2通道
[1**********]2 读第3通道
本次使用的是RS232串口,基于MODBUS 串口通讯协议,该串口通讯下所发送的数据均为十六进制该通讯协议是工作在查询方式,需要向对方发送一个查询指令(附带有MODBUS-CRC 校验码)才会将数据返回。在查询指令基础之上的Modbus-crc 校验码的计算方法如下:
1. 预置16位寄存器为十六进制FFFF(即全为1) 。称此寄存器为CRC 寄存器。
2. 把第一个8位数据与16位CRC 寄存器的低位相异或运算,把结果放于CRC 寄存器。
3. 把寄存器的内容右移一位,用0填补最高位,检查最低位。
4. 如果最低位为0:重复第3步,再次右移一位;如果最低位为1:CRC 寄存器与多项式A001(1010 0000 0000 0001)进行异或运算。
5. 重复步骤3和4,直到右移8次,这样整个8位数据全部进行了处理。
6. 重复步骤2到5,进行下个8位数据的处理。
7. 最后得到的CRC 寄存器的值即为CRC 码。
8. 将CRC 码分成高8位和低8位,按低位在先,高位在后,将它们加到传送数据之后。
设备ID 的计算方法
服务器软件上,用于识别不同设备的ID 的计算方法: ID 的两字节正码加两字节反码, 即ID ×65536+65535-ID ,得出的值转为十六进制即可,不足8 位前面补0(十进制与十六进制转换可利用windows 计算器)。
举例:
计算ID 为100的方法:100×65536+65535-100,所得数字用计算器转为16进制,得出结果“64FF9B ”,前面差两位到8位,用0补足,得到“0064FF9B ”以HEX 方式配置到GPRS 通信模块上即可。