基于RIA和软PLC的现场总线监控系统的设计
2.OLE(objeetlinkingandembedding,对象链接和嵌人技术)。定义和实现了一种允许应用程序作为软件“对象”(数据集合和操作数据的函数)彼此进行“连接”的机制,也是由微软公司制定的在应用程序之间传输和共享信息的一组综合标准。
3.ActiveX。是一些以D几(动态链接库)为主要表现形式的组件或文档,使用时以引用方式插人应用程序。ActiveX组件的应用技术基础是组件对象模型(COM)。
4.TwinCAT软件。在数据交换时提供了一个基于AetiveX技术的AdsOex。Oex控件,借助于该控件,TwinCAT可方便快捷地实现与VB、C#或Delphi之间的数据交换。软PLC中对应实际FO的变量常采用变量数组进行定义,下面的代码通过Adsocx声明了变量数组ErmrRetl[20]。
2.3 远程I/O端子
远程FO端子是分布于现场总线末端用来连接控制现场各种传感器、操作终端和控制器的端子,用于收集现场监控信号。其物理链路是:现场设备的各种I/0信号-总线端子-现场总线耦合器-计算机中的现场总线通信卡-PC机-软PLC。对于不同的控制和监控对象(如开关信号、模拟信号、转速信号等),可以通过更换不同类型的I/O端子来实现。如需采用不同的总线协议,如profibus、InterbuS、CAN、ControlNET等,只需更换该物理链路中的总线通信卡和现场总线藕合器,同时对总线拓扑作相应调整即可"本系统中的TwinCAT软件PLC支持IEC61158标准中包含的主要总线协议,无需针对不同总线协议作特别调整。
3 软件系统的实现
3.1 RIA技术
与基于文本的传统Web页面相比,在基于RIA的Web应用中,由于数据能够被异步缓存在客户端,故可实现接口更健壮、反应更灵敏、响应速度更快并具有媲美桌面系统界面功能的Web应用。
RIA是基于XML、脚本语言和WebServiee的。对开发者而言,应用RIA技术有着多种途径:基于Flash的Flex、基于。NET技术的SilverUght及基于Java技术的JavaFX等。相比较而言,Flash的强大影响使得Flex技术成为广受青睐的解决方案,Flex编程模型、Flash等各个产品也构成了完整的RIA开发平台。对用户而言,使用Flex与使用Flash一样,无系统平台和浏览器兼容性问题,只需在客户端运行环境中安装有FlashPlayer就可以了。
由于RIA的应用模型是多层架构的,与此对应,本系统的结构被划分成明显的功能单元和多层逻辑结构:客户层、表示层、业务逻辑层和资源层(见图4)。这种多层架构可以降低系统各层之间的藕合度,使得客户端与数据库隔离,这样既可有效地保证系统的安全可靠,又使系统具有较好的可扩展性与可维护性。
图4系统采用的多层结构
3.2 多层逻辑结构
1.客户层。由基于RIA的Web应用来实现。使用浏览器,系统可以显示所有的动态监控数据和完成控制指令设置等操作。基于RIA的Web应用采用Flex的开发语言ActionScriPt3。0和编译器,使用时Flex会在weh服务器中生成和发布swf文件,并在客户端Web浏览器访问服务器时,由客户端的FlashPlayer下载和运行。
2.表示层。Flex本身不能直接与数据库通信,系统的表示层是用ASP。NET来完成的,当用户需要进行数据交换时,AsP。NET服务器负责与数据库的通信(由ASP。NET经由中间层提供的ServieeInterface接口进行访问)。Flex本身可以通过多种方式和Socket进行数据交换,如WebService、HTTPSerVice、RemoteObject等。本系统采用了WebService方式。下面为使用webservice进行数据交互通信的一个简单示例。
评论