基于DataSocket的电台网络化远程测控系统
2008-07-15
作者:李 冰, 王宝良, 王 翀
摘 要:针对无线电台构建了基于DataSocket的网络化测控系统,实现设备的远程控制" title="远程控制">远程控制、测试以及测试数据的网络传输,使操作人员可以在远端进行故障诊断" title="故障诊断">故障诊断。
关键词:DataSocket 网络化 LabVIEW 远程测控
现代战争对电子通信设备的依赖程度越来越高,通信设备的可靠性和维修保障是提高部队战斗力的重要方面。然而现代通信电台的技术含量越来越高,结构越来越复杂,使得电台的测试和维修难度不断加大。因此,很有必要构建一个网络化远程测控" title="远程测控">远程测控系统,以提高装备的可靠性和保障水平。DataSocket是一项基于工业标准TCP/IP的网络传输技术,实现了简单、高效的现场数据实时共享与发布,它面向测量和自动化,把测控领域常用的数据通信技术集成在一起,极大提高了网络化测控系统开发的高效性与灵活性。本文基于DataSocket和虚拟仪器技术构建了电台的远程测控系统,极大地提高了电台的测试和维修保障效率。
1 DataSocket技术组成
DataSocket实质上是一种用于动态数据传输的网络编程与通信工具,它为底层通信协议提供统一的编程接口,极大地简化了网络编程。DataSocket技术主要由两部分组成:DataSocket应用编程接口(DataSocket API)和DataSocket服务器(DataSocket Server)。
DataSocket API提供统一的编程接口,与协议、语言和平台无关,可以通过LabVIEW 的子VI、LabWindows/CVI的C函数库或者Active控件实现,能够在多种开发环境中使用。DataSocket API主要包括4个基本操作:打开、读、写和关闭,使用非常简单。
DataSocket Server通过管理TCP/IP通信为用户提供并简化网络通信。它是一种轻量级的、独立的服务器组件,它通过DataSocket应用编程接口将测量的现场数据在网络上进行广播,为远程客户提供高速并发的访问服务。
DataSocket使用类似于Web中的统一资源定位器(URL)来定位数据源,URL用来表明数据通信使用的协议和地址。不同的URL前缀表示不同的数据类型,dstp表示数据来自DataSocket服务器,ftp表示来自文件传输协议服务器上的数据,http是超文本传输数据,file是在本机或网络中直接操作的数据。
2 基于DataSocket的电台远程测控系统模型
跟据不同的测试需求,网络化测控系统主要采用客户机/服务器(C/S)、浏览器/服务器(B/S)以及C/S和B/S混合三种网络模型。与B/S 模型相比C/S模型具有交互性强、实时性好、安全性高的特点,故本系统采用C/S模型。系统的结构框图如图1所示。
3 系统的硬件设计
系统以带有GPIB接口的无线电综合测试仪" title="无线电综合测试仪">无线电综合测试仪为中心,外加工控机、适配器、电台接口板构成现场测控设备,如图2所示。与PXI或VXI总线技术构成的测控系统相比,该系统大大降低了硬件投资和维护费用,而且无线电综合测试仪集高频信号源、低频信号源、示波器、调制分析仪、功率计、失真度仪等仪器于一体,可以满足电台所有性能指标的测试,体积小、重量轻、可靠性高。与计算机连接构成自动测试系统十分灵活,组建迅速、方便。
主控计算机带有GPIB接口板卡,负责整个现场测控系统的控制与监视,实现测试数据的采集、处理、存储和显示,并与服务器交互连接到网络进行数据传输。无线电综合测试仪选用2955B,通过GPIB电缆与计算机相连,接受计算机命令进行测试并传回数据。
适配器用于测试系统与被测电台的电气连接,并接受计算机的命令,控制测试仪和电台之间的信号转接、切换等。
电台接口板通过串口与计算机连接,另一端连接到电台的控制端口和自检数据端口。它的作用有两个,一方面把计算机送来的数字信号转换成能被电台识别的控制信号,送入电台以改变电台的频率、波道等工作参数,同时将电台的工作状态信息传回计算机实现监控;另一方面通过程序控制把电台自检得到的一些电台内部关键点的电压、电流或温度数据传给计算机,作为故障诊断的重要信息。
4 系统的软件设计
4.1 系统测控软件的实现
系统测控软件使用图形化编程语言LabVIEW开发平台编写。采用模块化、通用化的设计思想,软件主要包括主控模块、系统自检模块、性能测试模块、数据管理模块、故障诊断模块、仪器驱动模块,模块之间按层次化结构关联起来。如图3所示。
主控模块起到整个软件调度、协调作用,调用各个功能模块实现测控功能。
系统自检模块在系统上电后完成硬件资源检测、系统状态检测。及时发现系统故障,做出提示,以确保系统工作正常。自检通过后用户登录进入系统,然后选择测试类型,登录被测设备编号,开始进行测试。
测试管理模块根据数据库的参数,设置测控设备的工作状态,根据测试需要,确定测试项目,并通过仪器驱动模块控制无线电综合测试仪,完成仪器设置、触发和数据采集,然后进行数据的分析处理并显示出来。
数据管理模块实现对系统参数库、测试数据库和专家知识库的数据操作和管理。系统参数库包括综合测试仪和电台等设备在不同测试任务下所需要的参数,以及在进行被测电台的诊断时,系统进行必要的初始化所需的参数。测试数据库存储实时测得的电台性能参数和工作状态,以及历史测试数据,作为故障诊断的依据。专家知识库存储电台标准的性能指标和异常状态时的故障信息,作为故障判断的标准。
故障诊断模块的功能是对测得的数据进行融合、分析,与诊断知识库中的标准参数进行对比,判断电台的性能状态和故障类型。如果是一般的性能偏差,提示用户进行简单的调试,同时给出相应的调试内容、方法和步骤。如果性能偏差比较大,则将测试数据结合电台内部自检测送来的数据、专家知识库的信息进行综合分析,进而找到发生故障的可更换模块,最后提示用户维修的方法。
4.2 网络通信功能的实现
远程测控的主要任务是将测试所得的数据结果通过网络传送到客户端" title="客户端">客户端,而且客户端的控制信息和测试指令能够传送到远端的测试服务器,控制现场仪器进行测控,并得到信息反馈。因此网络通信非常关键,是软件设计的核心。本设计采用DataSocket技术作为客户端和测试服务器端连接的中间件,基于C/S模式构建网络化远程测控平台。
在C/S模式中, 客户机向测试服务器发出连接请求以及测试和控制信息,处于休眠状态的服务器收到连接请求后,唤醒服务程序并响应客户机的请求, 实现特定的控制和测试任务, 并将结果信息返回客户机。远程测控的通信流程如图4所示。实现这个过程的关键是请求服务和响应服务,即客户端远程控制功能和远程数据采集功能的实现。
远程控制功能的实现,就是使客户端前面板的控件与测试服务器前面板的控件同步,操作客户端软件时就像操作远端测试软件一样,进而实现对现场测控设备的远程控制。这个同步的过程通过DataSocket数据传输实现。本软件要实现无线电综合测 试仪和被测电台工作参数的控制。每一个参数使用一个控件,为了节省URL资源,可以将这些控件放在LabVIEW的一个簇中,然后分别设置客户端和服务器前面板簇的连接属性。这时只需要设置一个相同的URL地址和各自的读写属性,这些控件就可以通过网络同步起来,实现设备工作参数的远程控制。
远程数据采集就是把现场测得的电台性能数据传送到客户端,数据传输原理和远程控制的实现是一样的,只是改为服务器端的写操作和客户端的读操作,使用dstp数据传输协议。在服务器端,仪器测得的电台性能数据通过GPIB接口传送到工控机,再经过DataSocket Write操作将数据送到DataSocket Server;在客户端通过DataSocket Read从DataSocket Server上读出数据。经过处理后在前面板上显示出来。
5 远程测控示例及结果分析
以电台发射功率的远程测试为例,如图5所示,分别为测试服务器端和客户端程序。服务器端主要包括GPIB读写程序和DataSocket Write。GPIB RW1.VI子程序负责与测试仪器通信,将发射功率测试指令写入仪器,仪器响应此命令将测得的功率值送入计算机。再通过DataSocket Write写入服务器,地址为dstp://192.168.0.1,即完成功率数据的发布。客户端通过DataSocket Read从地址dstp://192.168.0.1读取功率值,经过Variant To Data模块转换成LabVIEW可以读取的数据,送到前面板控件显示出来。
测试的时候客户机和服务器端都需要安装并运行DataSocket Server,设置DataSocket 服务器的客户端允许同时连接个数、数据缓存、访问权限等。服务器正常工作后,进行初始化,等待客户端连接。把服务器程序和客户端程序放在两个通过网络连接的计算机上,运行后成功实现了连接,控制命令传输可靠,两端的功率数据显示保持同步。实现了远程测控的目的。
本系统采用DataSocket技术实现了测控仪器的网络化,使得处在异地的技术人员能够远程控制现场仪器进行测试,并进行故障诊断,给装备的维修保障提供了一种方便快捷的方法。另外利用GPIB接口的台式仪器构建现场测试系统,组建灵活方便,节省成本,使现有仪器资源得到了充分发挥,具有良好的应用前景。
参考文献
[1] 赵大海,周小刚,惠俊军,等.LabWindows/CVI的虚拟仪器远程网络控制系统设计[J]. 火力与指挥控制, 2005,30
(8):64-67.
[2] 王丙坤,孟宪国,胡建旺.基于网络的电台自动测试系统[J].微计算机信息,2004,20(8):88-90.
[3] 陈国顺,宋新民,马峻.网络化测控技术[M].北京:电子工业出版社,2006.
[4] 邓焱,王磊.LabVIEW7.1测试技术与仪器应用[M].北京:机械工业出版社,2004.
[5] 杨志平,陈德煌,蒋晓松,等.航空电台通用自动测试系统[J].计算机工程,2003,29(5):160-162.