着网络的发展和各种系统的集成,各种系统之间的数据交流越来越重要。比如控制设备和监控系统之间,不同的监控系统之间,上层管理软件和监控系统之间都存在这种需求。现在存在着许多种数据交互的手段,比如OPC和DDE,但是这些数据通讯的方式,虽然对于最终的用户来说使用比较简单,但是对于通讯的实现方来说却有一定的复杂性。比如当前流行的OPC方式,编写OPC的采集程序并不是一件特别容易的事情,需要考虑许多的接口和意外的处理。而且如果不基于Windows系统,比如在PLC内部,就无法来实现OPC的数采方式。
监控软件常常需要从下面的各种硬件系统中采集数据,但是由于监控软件往往采用的是OPC、DDE等比较复杂的通讯方式,所以有时把监控软件中的数据采集到其他 的系统,并不时十分的容易,要么不够灵活,要么就需要是用API编写程序。如果能够把整个监控系统虚拟成一个通讯设备,它遵循一种特别通用而且又简单的通讯方式(比如非常通用的Modbus协议通讯方式),那么就能够非常方便的从监控软件中获取数据了。
下面举一个简单的例子来说明这种方式的方便性和必要性。
现在假设有几十台PLC分布在比较广阔的地方,比如分布在全国的若干个省,这些PLC都可以连接到以太网上,但是由于每一台PLC都没有一个固定的IP地址所以,监控系统无法直接访问PLC从而采集到数据。按照传统的方式需要给每个PLC分配固定的IP地址,这样得需要分配几十个固定IP地址,增大了系统的复杂度也增大了成本。如果能够给监控系统所在的计算机分配一个固定的IP地址,同时把它虚拟成一个Modbus的设备,那么在其他的几十台上就可以使用现成的Modbus通讯模块,直接把数据写入监控系统中。这样一来只需要分配一个固定的IP地址即可解决数据采集问题。如下图所示:
紫金桥公司的技术人员,很久以前就发现了把整个系统虚拟成Modbus通讯设备的所能带来的方便性,所以相应的紫金桥监控组态软件早就具有了这一功能,下面 我来简单的介绍一下紫金桥监控组态软件的Modbus服务器。
紫金桥Modbus服务器可以把紫金桥实时数据库中的点映射为Modbus设备的HR寄存器,当前版本为3.0,支持串口和TCP/IP访问方式,支持HR区的读和写。也就是说支持03、06、16号命令。
Modbus服务器的配置界面如下所示:
其中左侧为变量配置显示区,它分为三列,分别是序号、数据库位号和Modbus地址。后两列的意义是把某一个数据库位号和一个Modbus地址建立映射关系。
可以在这里进行系统的配置
我们可以看到共有以太网和串口两种方式供选择使用,你可以选择他们中的一个或两个。当选中以太网方式之后,必须输入相应的端口号,缺省情况下是502端口,这是Modbus以太网协议规定的缺省端口号。当选中了串口方式后您需要选择对应的串口并作和采集方相同的配置。
紫金桥的Modbus服务器支持浮点格式,32位无符号格式、32位有符号格式、16位无符号格式和16位有符号格式。其中32位浮点格式和32位整形格式一个数据占用两个寄存器。比如地址为0的32位浮点数将占据地址为0和1的两个寄存器。采集方必须把这两个寄存器拼接起来才能构成一个数据。由于采集程序处理的多样,所以此处又有4种字节顺序供选择。它们依次为“最高高次低低”、“高最高低次低”、“次低低最高高”、“低次低高最高”,一般选择第一种即可。如果采集方使用了其它的字节顺序,请更改此选项。
如果选择了16位整形格式那么界面如下所示:
这里一共有两种编址方式,第一种为“浮点兼容地址编码”这种编码方式主要是为了和浮点格式兼容,它只占用偶数地址的寄存器,奇数寄存器空着。使用此方式可以在采集端的数据类型切换时,无需重新组态采集地址,但是它的缺点是采集时常常会采集到一半无用的0值,使效率只有紧凑格式的二分之一。第二种为“紧凑地址编码”,它可以充满寄存器地址,每一个数据占用一个寄存器。这一点您可以从列表的Modbus地址栏中看出来。
缺省情况下,系统进行的是只读联结,此时不可以写。如果希望系统支持写命令,请取消系统进行只读联结的复选框。
Modbus服务器支持把点表导出为文本文件,该文本文件可以在Excel中进行编辑保存后再导入,减小了组态的工作量。如果结合数据库点组态界面的导出到Excel编辑的功能,可以大大提高组态的速度。
文本文件的格式如下图所示:
左侧为数据库点名,右侧是索引号,索引号和Modbus地址的对应关系如下:
1、 如果当前为紧凑编址方式那么 Modbus地址 = 索引号 – 1
2、 否则Modbus地址 = (索引号 – 1)*2
您可以打开Excel并将此文本文件托拽到Excel中即可进行处理。结合数据库点组态界面的导出到Excel编辑的功能,可以大大提高组态的速度。
紫金桥Modbus服务器的运行界面如下所示:
您可以通过菜单来切换显示:
显示菜单共有4种分别对应显示系统信息、串口通讯信息、以太网通讯信息和数据信息。
系统信息如上图所示,可以察看到服务器启动的时间,采集的数据库点个数,以及通讯应答的次数。同时也会显示一些错误信息。
通讯信息如下图所示:
您可以察看到收发的数据以及收发数据的时间。
数据信息如下图所示:
在这里可以看到采集的数据库中的点的数据。
另外在系统菜单中还可以把当前显示的信息以文本方式保存起来,供分析处理故障用。
通过使用紫金桥监控组态软件的Modbus服务器,可以非常方便的和紫金桥系统交互数据。同时使用紫金桥软件的各种各样的驱动,就能够实现,把各种各样的硬件设备中的数据转化为标准的Modbus数据发布出来,满足更多的需要。同时,由于紫金桥的Modbus服务器提供了方便的通讯数据的查看功能,能够方便调试系统。