NetX片上系统数据采集与远程监控的设计与实现
扫描二维码
随时随地手机看文章
随着网络信息技术、工业控制的不断发展,远程监控应用领域不断拓宽,特别是实现现场控制嵌入式智能设备的通信和配置诊断,通过这些智能设备所提供的通信接口直接利用Internet将其接入集中监控管理系统,采用Web Sever访问技术,在远程实时获取设备运行的各种参数和实时数据,发送遥控命令,配置参数,获取设备的报警信息和运行状态等方面,具有深刻的现实意义和长远意义。PROFINET是一种最新的实时工业以太网协议,可以提供办公室和自动化领域的开放、一致连接,是实现工业实时以太网通信的主流技术之一。德国赫优讯NetX中包含EtherCAT,CANopen,Modbus,PROFINET等现场总线协议,是一种高度集成的网络控制器,具有全新的系统优化结构,适合工业通信及大规模数据吞吐;研究基于NetX片上系统(NetX Soc)实现PROFINET实时以太网接入、本地数据快速处理、数据存贮技术及基于Web Server的远程数据访问,以便为一些工业实时通信控制提供良好的解决策略。
1 系统结构
图1为分布式远程数据采集系统的网络结构,包括多个与主站挂接的NXIO(赫优讯实时以太网从站IO测试板),通过PROFINET实时以太网把若干个嵌入式控制器与主站监控计算机连接,然后再将主站监控计算机接入Internet,监控计算机将数据实时发送到数据库服务器,同时将采集到的从站数据和监控信息可以发布出去。另外,主站监控计算机还可以通过RS-232总线与NXIO从站实现数据采集和控制处理。采用该方式,用户无论在多远,只要能够连接到Internet,就可以通过Internet网络访问所有控制设备的实时和历史数据。
数据库服务器用来存储采集到的从站数据及相关的配置数据,供主站监控计算机运行时读取和写入并设置其自身的工作状态。管理员可通过浏览器访问和修改数据库中的参数。Web应用程序服务器实现数据在网络上的发布,接受在Internet上的任一用户查询浏览,并允许授权用户更改监控主站计算机工作参数,存储在数据库服务器上。有用户请求时,Web应用程序服务器通过Internet从数据库服务器中读取用户请求数据,再通过Internet网络把这些数据发送到请求数据用户,用户的一些参数设置信息保存到数据库服务器上,或通过NetX主站将配置信息下达到NXIO从站。
2 NetX SoC主从站间数据通信设计
2.1 系统设计思路及程序部署
利用赫优讯cifX实时以太网主站板卡、赫优讯实时以太网从站IO测试板NXIO,搭建PROFINET实时以太网通信平台,实现主从站PROFINET网络通信及相应通信程序设计。图2描述了主从站间基于PROFINET和RS232通信的主从站的控制程序、NXIO从站基于rcX嵌入式系统下的实时控制任务程序、数据存储及Web方式下的数据访问程序的部署。
2.2 系统程序主要功能描述
1)主站Web Server界面控制显示程序:由ASP.Net设计的主站Web Server界面程序,监控从站按钮、指示灯状态,同时实现主从站通信参数配置,并实现与主站通信程序的数据交互。
2)主站数据通信程序:SYCON.NET系统配置软件实现对卡驱动、网络诊断并实现主从站PROFINET通信,另外,采用C#串口通信类事件驱动完成基于RS232通信下对从站串口通信的配置和数据交互。
3)从站循环扫描控制IO程序:基于reX实时操作系统,通过调用板级支持包中的系统函数实现IO控制。
4)从站数据通信程序:基于BSP、串口通信协议和PROFINET IO协议栈实现与主站的通信。
5)从站间多任务数据交互:从站控制作业如LED控制任务与通信任务采用信号量通信的方式获得共享内存区(ARM数据POOL)的访问权限,实现任务间的数据交互。
3 NetX SoC主从站数据通信及Web访问设计
3.1 主从站通信配置
SYCON.NET是基于现场设备工具(FDT)/设备类型管理器(DTM)技术的配置工具。FDT不依赖通信协议及主机系统或现场设备的软件环境,它具有标准的接口规范,对智能仪表实现综合集成;DTlM可以实现设备的驱动、设置及通信,在FDT下运行。采用FDT/DTM可提高系统对现场设备进行诊断和维护的能力,实现快速响应,提高系统的安全性和可靠性。如图3所示,SYCON.NET配置工具可以实现PROFINET IO网络配置、连接、诊断和相关NXD配置文件的导出。方式是在SYCON.NET配置工具中,在右侧Hilscher GmbH列表中选择Master文件夹中的NetX500 PNM模块拖到左侧网络线上。同样的方法可以将NXIO从站加入到左侧主站网络线上,并利用DTM配置相应的主从站。对于其他厂家的从站设备,需要加入设备的GSD文件。
3.2 主站通信设计
主站通信利用C-Toolkit配置cifX卡,包括初始化、内存操作、字符操作、事件处理、文件处理、同步定时、PLC的配置读写等,如图4所示。Visual Studio.NET平台下,采用C#(C-sharp)结合C-Toolkit下提供的关于cifX卡固件加载的Lab文件、API函数及通信授权协议实现主站通信程序的设计,包括从站数据并入库、向从站发送相关的配置信息等。图5是串口通信类事件驱动完成对NXIO从站串口通信的配置,以及通过RS-232实现控制从站IO接口的开关及LED状态显示,同时程序包含Socket类实现接受Web下发的从站配置和控制信息。
主站通信网络程序中定义Socket类,用于监听Web页面上客户端发送的配置信息。如下是主站Socket通信部分代码:
3.3 Web控制及配置程序设计
基于VisualStudio.Net开发平台,实现Web Server服务器对Slave Device NXIO的串口配置及LED灯的监控。图6是二号从站LED灯控制的一个测试界面。Web页面封装一个含有Socket的ActiveX控件:用于与服务器端的Socket通信,当配置从站信息和接受从站采集信息,触发事件并实现数据交互。Web方式不适合实时监控数据的实时查询显示,可用Web页面刷新方式查询各个监控点的数据状态。如每两秒刷新一次监控页面,则可在HTML文件中加入代码:<meta http-equiv="refresh"content="2">。
4 NetX SoC从站系统技术研究
4.1 嵌入式NetX硬件平台的通信设计
NetX嵌入系统用户程序包括实时通信和控制程序。在rcX嵌入式下进行实时通信程序和控制程序设计,实时多任务操作系统中依据时间片和中断进行任务调度。图7为NXIO从站软件系统架构。实时通信程序和控制程序可通过双端口内存(DPM)交换数据,相对独立;实时通信程序采用消息通信机制时,利用接收发送标志位可提高通信数据的完整性。
4.2 NetX从站程序设计及实现
从站控制程序是基于rcX实时操作系统,通过调用板级支持包中的系统函数实现IO控制、串口通信程序以及基于PROFINET实时通信程序的设计。从站的实现流程如下:在Hitop IDE开发环境下完成硬件初始化,主函数实现任务的初始化及配置,LED控制任务、串口通信任务、PROFINET实时通信及各个任务间的调度,实现程序下载并驻留到在rcX嵌入式控制器中。从站通信及控制程序的软件层次如图8所示。
5 结论
通过NetX SoC配置PROFINET协议栈等通信技术研究,实现了PROFINET实时以太网接入、NetX SoC主从站间PROFINET和UART数据通信,以及Web方式下依托控制主站对从站实施远程配置管理及监控,为采用PROFINET实现远程控制、监管提供了一种可行的技术解决方案。