在利用紫金桥软件组建分布式系统的项目中,会有这样的情况:要以位于广州的计算机A作为客户端、位于上海的计算机B作为中心服务器组建分布式系统,实时数据要从客户端上传至中心服务器,但客户端和中心服务器并不能连至同一网络,且仅中心服务器具有在公网上的固定IP地址,那么数据如何从客户端上传至中心服务器呢?根据客户端是否能够对互联网进行访问,紫金桥提出了两种解决方案来解决此问题:在客户端无法访问互联网的情况下,利用紫金桥Modbus Server和GPRS模块实现数据上传;在客户端可进行互联网访问的情况下,利用紫金桥远程数据源功能实现数据上传。
本章主要介绍第一种方案——利用紫金桥Modbus Server和GPRS数传模块实现数据上传。
首先,我们来简单介绍方案标题中提及的两个概念和它们具体的工作方式:
一、紫金桥Modbus Server
存储于紫金桥数据库位号中的数据,可以通过多种方式进行对外发布,提供数据访问。 紫金桥的Modbus Server正是紫金桥软件多个对外接口功能中的一种。紫金桥Modbus Server可以将紫金桥的数据库点映射到Modbus中的寄存器区域中,使紫金桥数据库虚拟成一个支持标准Modbus协议的仿真设备,第三方的仪表或控制系统可利用通用、可靠的Modbus协议来访问紫金桥数据库中的数据。
二、GPRS模块
GPRS是在现有GSM系统上发展出来的一种新的数据承载业务,支持TCP/IP协议,可以与分组数据网(Internet等)直接互通。GPRS模块是工业级无线数据传输设备,通过移动GPRS网络为用户提供透明TCP或者透明UDP无线远距离数据传输的功能。GPRS数传模块通过接口从客户系统取得数据,处理后的GPRS分组数据经过封装和多次处理后发送到Internet上。数据接收端通过对应GPRS数传模块软件的网络侦听,接收GPRS无线模块传来的数据和发送控制数据,实现与GPRS模块的通信。
方案的整体网络架构如下图:
将客户端A与GPRS模块通过串口网络进行连接,GPRS模块传输协议对数据进行处理,数据处理后经无线网络发送到GSM基站,经过GPRS骨干网的二次处理后发送到位于Internet上具有公网固定IP的中心服务器B。
下面,我们对数据传输过程及传输过程中使用到的功能进行说明,软件的数据通信结构如下:
通过紫金桥Modbus Server的数据映射,存储于客户端A数据库中的数据转换成虚拟Modbus设备的数据。GPRS设备对转换后的数据进行封装,经GPRS通信协议的传输后,数据被时刻侦听公网端口的紫金桥GPRS驱动程序获取。获取的数据经紫金桥Modbus Client程序的解析后转变为用户需要的数据,交由中心服务器B的数据库进行存储。(把上图中棕色虚线框中的内容想象成一段畅通的数据传输通道,可对GPRS传输数据的过程有更清晰的认识。)
接下来,我们对客户端和中心服务器的软件配置进行详细的说明:
一、客户端的软件配置
客户端软件需对紫金桥的Modbus Server进行相关配置,打开软件的安装目录,找到ModbusSerSet.exe文件并打开
在菜单中选择“通道”项下面的“添加串口通道”,弹出如下图所示的对话框:
其中,串口号要选择计算机上和GPRS进行连接的串口号,并记录波特率、数据位、校验位、停止位的参数设置,然后选择菜单“设备”项下的“增加设备”。
增加设备后,该设备自动生成了4个区域,它们和Modbus命令的对应关系如下表所示:
区域 |
对应的可以操作该区域的Modbus命令号 |
DI |
2号命令读取 |
DO |
1号命令读取,5号命令下置 |
AR |
4号命令读取 |
HR |
3号命令读取,6号命令下置一个地址,16号下置多个地址。 |
选择菜单“寄存器”项下面的“增加寄存器”。
输入需做映射的点名和对应的寄存器地址。
关闭此界面后,在安装目录下找到ModbusServer.exe文件并打开
至此,客户端的数据映射建立完毕。
二、中心服务器的软件配置
服务器端需建立对应的Modbus驱动程序,虽然中心服务器是通过侦听网络端口来获取客户端的数据,但实际和Modbus Server进行通讯的方式还是串口,所以我们要在列表中选择串口通讯的Modbus驱动程序来进行建立。
定义设备名称,数据更新周期等参数,设备地址与客户端中配置的设备地址一致,连接方式选择串口。
串口设备定义画面中,在附加设备中的第一项选择GPRS,第二项选择与客户端进行串口连接的GPRS设备的厂家
在配置界面中定义GPRS设备的对应侦听端口,设备的ID号等信息
完成GPRS设备的定义后,完成最后一步Modbus驱动程序的最后定义,此处数据格式的选择要与客户端的Modbus Server配置相同。
进入点组态,建立对应点,增加连接项,连接项的具体配置要与客户端的寄存器配置信息对应。
至此,中心服务器的详细配置已完成,运行工程后即可进行通讯。