监控组态软件主要是以下几方面组成。
1、实时数据库
实时数据库,顾名思义就是一种处理和存储实时数据的数据库,它分为两种构成模式,第一种就是利用开发工具直接开发二进制文件模式,自己开发sql引擎,建立索引以及配置文件等机制,例如IFIX;另外一种就是依托于成熟的关系数据库,把实时数据放在二进制文件中但sql引擎,索引,以及配置文件都利用关系数据库等机制,例如WINCC。
2、内核通讯
市面上比较流行就是两种框架,一种是与实时数据库通讯为核心框架,图形界面、脚本、通讯驱动等都是围绕实时数据库来完成相应功能,另一种就是消息通讯为核心框架的,这种框架就是类似SOA构架,首先建立通信数据元素,把所有用于访问的数据格式包含在其中,然后通过消息发布出去,是那个组件接受那个组件完成相应的指令,消息通讯在今天的组态软件行业里也分为内存消息型和端口消息型,内存消息性就是利用MFC的在内存中消息来通知别的组件,其优点就是快速和稳定缺点就是所有组件不能脱离一台机器,而端口消息型,就是利用sock的端口进行消息通讯,不管是不是在本机一概采用端口通讯,这样的优点就是把可以把很多组件分布到每台机器上,其中CS和BS构架就用利用这种机制,缺点就是消息元素复杂,指令繁多,需要谨慎考虑其健壮性。
3、图形界面
图形界面其实没有什么好说,就是图形显示,图形绘制、报警、曲线,报表等,但是从市面上来说它们分为基于VC6中MFC开发的和.net开发的,从界面来说mfc开发的速度快,稳定性高,但界面简单,画质不是很绚丽,.net开发的界面绚丽,3d动感性强再结合GDI+,那就是界面中利器,而他的缺点就是运行速度慢。
4、脚本
脚本分为编译型和解释性,编译型需要在组态软件没有运行之前,就把语句编译一边,然后嵌套在框架的函数和事件中,例如WINCC的C脚本,另外一种就是解释型,它是在组态软件运行之中被语法解释器边解释边运行,例如RSVIEW的VBA。对于市面上可以看到脚本分为自定义、VB类、C类和其他类,自定义脚本例如intouch;VB类例如RSVIEW;C类例如WINCC;其他有一些组态软件利用开源的脚本引擎例如TCL, LUA等。低端脚本多数是采用自定义脚本,它的可扩展性很有限而且依赖于厂商自己的开发能力,中端脚本就是采用c脚本和开源脚本,它不方便普及和掌握,对于一些常用访问技巧,例如访问关系数据库不是很方便,而高端脚本则首推VBA系列,高效的访问工具、成熟的控件资源以及强大的API调用。
5、通讯驱动
通讯驱动的框架结构都是采用封装通讯框架和开发数据流方式结合,也就是说开发人员不需要懂得组态软件的框架结构以及如何操纵数据库,只需要把数据流拆包解包和打包放入指定的结构缓冲区内就可以了。再说说驱动,一提到驱动它应该是两部分组成第一部分就是接口另外一部分就是协议,接口其实就是RS232/485/422,USB,TCP/IP(wifi)和板卡这几个种类,而对于另一部分的协议来说,那就太多了我就简单些介绍几种modbusrtu/asci/tcp,profibus,opc,s7等太多了。
6、接口开发工具
接口开发工具其实就是组件开发工具,它是一种开发工具包,是寄宿在组态软件本身开发工具上的一个框架向导,利用这些框架或者向导可以通过开发工具开发出来基于组态软件的扩展组件,方便组态软件的功能扩展和客户订制,例如关系数据库和实时数据库的导入导出的组件等,另外也可以开发局基于图形界面的图形组件。
7、WEB发布
WEB发布算是一种近年来十分流行的一个组态软件功能,web的发布技术基本上是三种方式,第一种activeX方式,一般这种WEB方式多数组态软件是采用vc6开发的,它直接封装一个图形浏览exe在com组件中,当用户ie浏览的时候会提示安装一个插件,然后这个exe就安装在客户pc上,通过IE调用exe,用就可以看到组态界面,这种也就是被称为准WEB方式它的优点就是速度快因为它使用cs模式缺点就是必须开用户指定端口一旦遇到路由器就不能看到,另外一种就是通过java方式,就是把用户组态的工程通过java重新转换一边,这种技术的优点就是无论你使用什么网络设备管理网络只要能开发80端口就可以看到数据,缺点数据刷新较慢。最后一种就是.net的web service技术,毋庸置疑他当然是最强大的,但是你的框架开发工具就必须使用.net。