0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用DataSocket技术实现虚拟仪器在网络平台上的应用

电子设计 来源:现代电子技术 作者:李水芳,朱荣新, 2021-05-21 11:32 次阅读

作者:李水芳,朱荣新,姚启仓

一个大的、复杂的测试系统其数据的采集输人、输出和分析处理往往分布在不同的地理位置上,传统的集成测试方法越来越不能满足复杂测试任务的需求。因此,网络化仪器的出现成为必然。随着计算机网络技术、总线技术和数据库技术的不断发展,互联网使数据共享进入了一个新的阶段,加速了虚拟仪器在网络及远程计算技术方面的发展。虚拟仪器技术借助互联网的强大功能,将来自测量或控制设备中的数据直接发布到Web网页上,把分散在不同位置的不同设备联系起来组成一个测试系统,使资源得以共享。

1 网络化虚拟仪器

虚拟仪器技术把计算机技术和仪器技术完美的结合起来,而网络化虚拟仪器则是把虚拟仪器技术和面向Internet的Web技术结合起来所产生的一种新技术。形象一点说,虚拟仪器把传统仪器的前面板移植到了计算机上,利用计算机上的资源进行测试,而网络化虚拟仪器则把前面板移植到了Internet上,通过Web浏览器远程控制现场的测试仪器和对象,测试结果和测量数据可以通过Internet实时地发布和共享,打破了在同一地点进行采集、分析和显示的传统模式,增强了分工合作能力,大大提高了工作效率。网络化虚拟仪器的结构图如图1所示。

2 DataSocket技术

要实现虚拟仪器在网络平台上的应用,则必须实现在不同应用之间的数据共享。虽然TCP/IP,DDE等技术支持不同应用程序间的数据共享,但不能用来传输动态数据,而NI公司提供的DataSocket是专门用来传输和发布动态数据的,是一种基于TCP/IP工业标准的网上实时高速数据交换编程新技术,对底层进行了高度封装,在不同的应用之间传输数据时,不必为不同的数据格式和通信协议编写具体的程序代码,简化了网上测控数据的编程。图2是DataSocket的体系结构图。

DataSocket由DataSocket API和DataSocket Server两部分组成。DataSocket API是一个和协议、编程语言、操作系统无关的应用程序接口,能够把测量数据转化为适合在网络上传输的数据流,他包括4个基本动作:open,read,write,close,可以从以下5个地方获取数据:

(1)Data items on HTTP servers

(2)Data items on FTP servers

(3)Local files

(4)Data items on OLE for Process Control

(5)Data items on DSTP servers

DataSocket Server是一个独立部分,可以把现场数据高速传给远端客户。用DataSocket Server发布数据需要3个部分:发布者(publisher)、服务器(DataSocket Server)、接收者(subscriber),三者关系如图3所示。发布者通过DataSocket API把数据写入DataSocket Server,接收者通过DataSocket API从DataSocket Server读出数据。发布者和接收者之间具有时效性,接收者只能读到信息运行后发布者发来的数据,此数据可以被多次读到。DataSocket Server Manager定义了最大连接数,最大数据对象个数,规定了数据访问的权限,即哪些计算机可以作为发布者,哪些计算机可以作为接收者。这三部分可以存在于一台装置中,但多数是分布在不同的装置中,这样有利于改善系统性能,提高安全度。

DataSocket通过 URL(Uniform Resource Locator)来定位数据源和目标。URI。的不同前缀表示了不同的数据类型:file为本地文件,http为超文本传输协议,dstp说明来自DataSocket服务器的实时数据,ftp为文件传输协议,opc表示访问的资源是OPC。以下是几个符合规定的URL:

dstp://mytestmachine/wavel

http://WWW.natinst.com/datasocket

3 应用实例

现举例说明利用DataSocket技术实现网络化虚拟仪器检测。某公司提供维修影印机服务,在各地设有维修处,各维修处把影印机信息及型号发回给总部,总部经过分析诊断后,再把诊断结果发给维修处,以便维修人员进行修理。整个工作过程如下:首先把所有诊断程序放人系统的DataSocket Server中,LabWindows/CVI应用程序通过串口和数据采集板与影印机连接起来以获取影印机的有关信息,并通过DataSocket API把该信息发送给DataSocket Server,系统中央程序通过DataSocket API读DataSocket Server,以获取影印机的相关信息以及型号,判断调用哪个诊断程序,然后检测管理程序运行该诊断程序并把诊断结果写入DataSocket Server,LabWindows/CVI应用程序从DataSocket Server中读取该诊断结果,维修技术人员就能用此诊断结果修理影印机。以下是LabWindows/CVI部分源代码实现了对DataSocket的打开、读、关闭操作:

int CVICALLBACK connect(int panel,int control,int event,void*callbackData,int eventData!,int eventData2)

{

switch(event)

{

case EVENT_COMMIT

DS_Openconnection(〞dstp://localhost/testl〞,

DSConst_ReadAutoUpdate,datahandle,DS_callback_NULL);

break;

}

return 0;

}

Void DS_callback_read(DSHandle dshandle,int event,

void *callbackData);

{

DS_GetDataValue(datahandle,CAVT_FLOAT,data,sizeof(double),&sz,&sz);

}

int CVICALLBACK disconnect(int panel,int control,int event,void*callbackdata,int eventDatal,int eventData2);

{

switch(event)

{

case EVENT_COMMIT

DS_CloseConnection(datahandle);

break;

}

return 0;

}

4 结 语

自20世纪90年代以来,仪器的概念已经由传统模式仪器发展成为虚拟仪器,即“软件即仪器”,继而发展成为网络化虚拟仪器,即“网络即仪器”。随着计算机技术、互联网、数据库技术的不断发展,网络化虚拟仪器将会成为今后仪器发展方向的主流,在各行各业得到广泛应用。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    7409

    浏览量

    87690
  • 虚拟仪器
    +关注

    关注

    22

    文章

    775

    浏览量

    87286
  • 数据库
    +关注

    关注

    7

    文章

    3759

    浏览量

    64265
收藏 人收藏

    评论

    相关推荐

    基于LabVIEW的虚拟仪器的设计

    自动测试与电子测量仪器领域技术发展的一个重要方向. 所谓虚拟仪器, 就是在通用的计算机平台上定义和设计仪器的测试功能, 使用者操作这台计算机
    发表于 04-21 17:10

    虚拟仪器课件,虚拟仪器电子教案

    应用 虚拟仪器软件开发平台 虚拟仪器的测试信号分析与处理技术[hide]下载地址:虚拟仪器技术&
    发表于 06-22 12:08

    虚拟仪器能否实现网络测试?

    虚拟仪器能否实现网络测试?能,虚拟仪器充分利用了计算机技术,也包括
    发表于 09-06 22:46

    虚拟仪器技术

    本文转自湖南银河电气有限公司: 官网虚拟仪器技术一、虚拟仪器技术的定义  虚拟仪器技术就是
    发表于 05-29 15:47

    利用Labview和DataSocket技术实现仪器共享

    1 引言随着通信技术的发展,网络的普及,虚拟仪器技术的出现和发展,使得仪器的远程访问和共享成为可能。硬件
    发表于 04-19 09:40

    基于虚拟仪器的DRVI可重构实验教学平台

    和浏览器是两种不同技术实现形式的东西,让虚拟仪器支持浏览器很难,同样让浏览器支持虚拟仪器也不容易。为此,我们利用IE浏览器可以作为Activ
    发表于 04-24 09:40

    虚拟仪器技术介绍

    什么是虚拟仪器技术虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。灵活高效的软件能帮助您创
    发表于 07-24 06:56

    测控系统虚拟仪器网络设计

              本文就网络化测控系统的虚拟仪器平台模型的搭建及网络通信
    发表于 09-15 09:47 10次下载

    基于虚拟仪器技术的远程测控系统的设计

    为了充分利用虚拟仪器开发效率高,灵活性兼容性强的特点及网络技术的优势,实现虚拟仪器“软件就是机器”的功能,
    发表于 01-11 15:47 39次下载

    采用DataSocket技术实现远程数据传输设计

    采用DataSocket技术实现远程数据传输设计DataSocket技术虚拟仪器设计过程中面向
    发表于 02-26 09:41 129次下载

    DataSocket在远程测控中的应用

    讨论基于Web 的虚拟仪器DataSocket 技术,以及利用NI DataSocket ActiveX控件和DS 服务器
    发表于 07-04 11:02 89次下载
    <b class='flag-5'>DataSocket</b>在远程测控中的应用

    虚拟仪器+网络实现温室测控系统

    利用虚拟仪器技术设计了网络化温室测控系统,使远程客户端通过局域网或Internet也能对温室进行监测和控制,从而实现了真正意义上的
    发表于 09-21 11:35 1356次阅读
    <b class='flag-5'>虚拟仪器</b>+<b class='flag-5'>网络</b><b class='flag-5'>实现</b>温室测控系统

    基于虚拟仪器网络测控技术的研究

    本文在分析虚拟仪器发展趋势的基础上,介绍了网络远程测控技术实现,并结合实际案例探讨了基于虚拟仪器的远程
    发表于 12-24 17:57 9次下载

    基于虚拟仪器技术实现网络虚拟示波器系统的设计

    随着计算机软硬件技术不断发展与提高,虚拟仪器技术已成为当前测控领域内的关键性技术。在远程测控与仿真方面,虚拟仪器网络化,已成为急待解决的问题
    的头像 发表于 08-19 09:18 3240次阅读
    基于<b class='flag-5'>虚拟仪器</b><b class='flag-5'>技术</b><b class='flag-5'>实现</b><b class='flag-5'>网络</b><b class='flag-5'>虚拟</b>示波器系统的设计

    使用检测技术虚拟仪器技术实现电梯检测系统的设计

    虚拟仪器是在以PC为核心的硬件平台上,由用户通过软件进行编程设计,设计出的虚拟仪器面板可以用来模拟仪器实现其测量功能的一种计算机
    发表于 08-24 15:35 1036次阅读
    使用检测<b class='flag-5'>技术</b>和<b class='flag-5'>虚拟仪器</b><b class='flag-5'>技术</b><b class='flag-5'>实现</b>电梯检测系统的设计