一、系统功能概述
整个系统应包含如下的几大功能模块:
1、数据采集
2、数据展示
3、设备反控
4、报表
5、数据上传
6、组态图
除此之外,增加两项扩展功能:
7、自触发
8、他方系统交互
1.1 数据采集
工控系统数据的来源是各种各样的测量设备。这种多样性表现在连接方式、通讯协议、回复速度等方面,而且,由于设备的不成熟,导致设备协议变动的情况也时有发生。在这样的环境下,工控系统需要做到:不修改主体框架,仅通过简单配置,或引入分离模块,即可满足需求。
数据采集过程中需要解决的一些技术问题:
(1)多设备共用串口
(2)某些设备回复时间极长
(3)某些设备不需要发送数据,主动上传数据
(4)主要的通讯协议为Modbus协议
(5)数据包出现粘包情况
(6)出现没有回复的情况
(7)链接断开在恢复时能够自动重连
(8)所有设备的数据都应该能及时地展示,不应因为某设备的问题导致其他设备数据拖延
(9)支持串口、TCP Client、TCP Server、UDP等链路
1.2 数据展示
数据展示的内容和方式根据用户的不同而不同。如下是一些展示过程中一般需要解决的问题:
(1)设备可以分组
(2)可以灵活选择需要展示的数据
(3)需要展示单位
(4)小数位数可以调节
(5)有告警信息
(6)数据分成数值和状态,设备存在一个主要状态
1.3 设备反控
除了采集设备数据,工控系统还需对设备进行反控。反控操作一般包括触发命令和写入数值等。设备反控应该是及时的,优先级高于数据采集。除了在界面上的反控,允许平台远程操控。
常见的反控操作包括:
(1)写寄存器
(2)写线圈
(3)模拟量输出
(4)自定义命令
1.4 报表
报表按照时间范围,包括日报表、周报表、月报表、年报表等。除此之外,根据特定的需求,可以制作特殊格式的报表。在展示报表时,有几点需要满足:
(1)可以选择要展示的数据
(2)某些数据不一定是统计平均值,有可能是总和、最大值等
(3)应有图表的展示形式
(4)单位可自适应
(5)支持打印、导出Excel等操作
1.5 数据上传
数据上传一般使用212协议,在某些场合,也存在使用其他协议的情况。如果是212协议,数据分为定时上报、被动上报等情况。数据上传主要采用的是数据库里的数据。
1.6 组态图
组态图是一种比较特殊的数据展示方式。组态图一般展示站点系统的结构,由于站点各异,组态图也就各不相同。根据这种情况,组态图应该是可以灵活配置的。为了满足视觉效果,组态图应有动态的效果。除了系统状态的展示,还应该能通过组态图对系统进行控制。
1.7 自触发
自触发是一种反控的机制。当数据满足某种条件时,自动触发设备进行某一动作。例如,当温度较低时,可触发空调降低风速。
1.8 他方系统交互
订单有可能是由多家公司分派的,这时候需要我方的系统与他方的系统进行交互。数据库交互是其中一种方式,但这种方式存在风险。系统应支持直接与他方系统通信的能力。