当前位置:首页 > EDA > 电子设计自动化
[导读]摘 要:针对传统的实验室和管理模式已经不能适应教学改革的步伐,构建了一套利用LabVIEW实现的基于B/S模式的远程控制实验系统。用户通过浏览器登录系统,不仅可以操作远程实验设备并获取实验数据,还能通过操作远程网络摄像头来观察真实的实验过程。 关键词:LabVIEW;网络通信; B/S(浏览器/服务器);远程实验室; CAN总线

 目前, 传统教育体系已经越来越不能适应当今科学技术和信息飞速发展的需要。传统的教育是以教师讲授为主,学生只是被动听讲,这种方式已经不适应培养人才的要求。另外,在实验设施不足的情况下,学生不能直接参与实验过程操作,不能很好地实现实验教学目标。传统的教学方式不利于充分发挥学生的想象力和创造力,也不利于及时追踪到最新的科技信息。随着计算机技术和网络技术的不断发展,近几年在教育领域提出了一种新的教学思路,即构建虚拟实验室的方法。而远程实验教学多数是利用虚拟技术实现,在这种虚拟实验中,实验者操纵的都不是实验设备实物,看到的只是一些利用三维技术做出来的动画,所获得的实验结果当然也不是远程设备的实际反映而是通过公式计算得到的数据[1]。针对这一问题,建立一个可以远程观测和控制实验设备的网络实验系统是一条有效的解决途径。它使实验者通过网络从异地计算机上进行实验操作和观察,所得到的实验结果与在实验室得到的结果完全一致,如同真实操作实验设备一样。

1 系统总体结构
    远程控制实验系统的框架结构和实现方法如图1所示,系统以B/S的形式提供服务,用户通过客户端的浏览器登录Web服务器,Web服务器请求数据库进行身份认证后即可进行相应的实验。

    从图1所示的体系结构可以清楚地看到,通过LabVIEW调用周立功PCI–5110 CAN 卡的DLL(动态链接库)文件来构建现场总线控制网络,并将控制信号通过CAN总线发送到CAN485MB智能协议转换器,转换后通过RS485接口进入PLC,驱动现场实验装置。
    在LabVIEW平台的网络通信技术的支持下,不需要了解任何网络协议就能编写复杂的分布式应用程序,将控制界面及实时的数据信号和现场视频发布给客户端。本系统的特点是,通过对各种网络通信方式进行实验比较,使得远程客户端观看的视频延迟最低,清晰度最佳,实时性最好,从而为客户端提供了充足的视觉反馈。

    虚拟实验系统可采用基于C/S和B/S两种网络模型来组建[2-3]。C/S模式适合数据传送量大的情况,而且具有效率高、数据可靠完整、兼容性强等特点。而对于数据传送量不大、需要远程模拟仿真的情况可以采用B/S模式,这样对于客户端的需求会很低,不需在客户端上安装相应的客户端软件,只需要浏览器便可登录服务器对远程测试进行监控。本实验室数据流量相对而言较少,采用的是B/S模式。在实现方法上主要采用LabVIEW的网络服务器Web Server进行网络发布。在客户端使用Remote Panel之前,必须先在服务端运行LabVIEW,并配置Web Server的文件路径和网络设置、客户机访问权限设置、VIs访问权限设置。这些设置不仅起到管理的作用,而且起到安全性的作用。

相应的配置如下:
    (1)文件路径和网络设置。在Web Server: Configuration中选中Enable Web Server,启用Web Server,并设置服务器所在位置,使其他用户可以通过浏览器查看并控制该VI。
    (2)客户机访问权限设置。在Web Server: Browser Access中设置允许或禁止访问的客户机,以及其访问权限,这里允许所有的客户机访问、观看并控制远程面板。
    (3)VIs访问权限设置。在Web Server: Visible VIs中设置允许客户访问的VIs,这里运行客户机访问所有的VIs。设置完成后,为了提供网页浏览器访问,必须在配置服务器时利用菜单栏中的Tools—Web Publish Tool进行网页发布。在Web Publish Tool中允许用户选择输入一个VI的名称,并自动生成一个HTML文件,将这个HTML文件保存在Web Server Configuration所指定的根目录中,这个根目录最好与Windows IIS的Internet信息服务中的默认Web站点的主目录相一致。若需要发布的VI中包含了数个SubVI,则只需要创建一个发布最上层VI的网页,其他所有的SubVI的前面板的属性设定为Open During Execution即可。

2 网络通信方式比较
    远程实验系统可采用基于C/S和B/S两种网络模型来组建,针对不同的应用场所,LabVIEW提供了多种网络通信方式供用户灵活选择。主要包括共享变量,DSTP协议的DataSocket编程、DSTP协议的DataSocket编程、Web Server、SMTP Email Vis、TCP编程和UDP编程[4]等。
    本文就DSTP协议的DataSocket编程、Web Server和TCP编程这3个网络编程方法在构建远程控制实验室时的应用做了具体的研究及比较。

2.1 DSTP协议的DataSocket编程
    DataSocket技术是一种面向测控领域的通过网络实时交换数据的编程技术。DataSocket由DataSocket Server与DataSocket APL两部分组成。DataSocket Server负责提供DSTP协议(数据传输协议)和管理底层网络通信,实现与用户程序之间的数据交换,不需要用户编写有关网络通信的底层程序。DataSocket API是用户访问网络数据的接口。DataSocket API访问DSTP对象时就是通过访问DataSocket Server来实现现场数据的高速传输。图2中,首先在DataSocket Server Manager中新建一个类型为image的字符串项,驱动DataSocket Server后,发布者(Publisher)通过DataSocket API向URL位置指定的地址写入数据。客户端编程如图3所示。DataSocket技术能应用于任何编程环境,而且支持多种协议(DSTP、OPC、LOOKOUT、 HTTP、FTP和文件访问),本文就DSTP协议做了详尽的研究。

2.2 Web Server
    在前面提到的DataSocket编程虽然可以很方便地用来传输现场数据到远程浏览,但是在远程计算机上也必须编写程序来接收数据。在很多情况下,用户希望能够直接将服务端的VI程序面板“原封不动”地复现在远程客户端上,在远程计算机上进行浏览和操作,而LabVIEW 的Web Server恰好能够实现这一功能。
    在远程客户端连接服务端面板之前,需要先配置并启动本地LabVIEW的Web服务器,而后在远程客户端必须安装LabVIEW  Run-Time引擎才能通过网页连接服务端VI面板。
    配置并启动本地LabVIEW的Web服务器时,首先选择主菜单的“工具|选项|Web服务器:配置”,选择“启用Web服务器”,其他可保持默认。而后在“工具|Web发布工具”选项里即可进行网络发布。在远程客户端网页浏览器里输入如“http://202.200.186.160”形式的网址即可访问服务端,如图4所示。利用Web Server的好处是用户无需任何的编程就能在远程计算机上通过网页连接服务端的VI前面板进行浏览和操作,但相对DataSocket来说传输速率较低,在传输大量数据时有可能造成数据的丢失,故其较适合在数据传送量不大、需要远程模拟仿真的情况。


    需要注意的是,要想在客户端连接服务端的摄像头视频,必须先在客户机上安装NI公司的visionrte.exe[4]应用程序,才能接收到完整的视频信息。

2.3 TCP编程
    鉴于TCP协议在绝大多数计算机上都有安装,因此其使用也就更为普遍。但是其编程相对于其他的网络编程更加复杂,用户端需要考虑如何建立连接、分配端口号、进行地址转换等。TCP(Transmission Control Protocol)传输控制协议是一个面向连接的协议,允许从一台计算机发出的字节流无差错地发往互联网上的其他计算机。TCP是基于两个网络主机之间的点对点通信,从程序接收数据并将数据处理成字节流,再将字节组合成段,然后TCP对段编号和排序以便传递。在两个TCP主机交换数据之前,必须先相互建立会话。TCP会话通过三向握手的过程进行初始化。这个过程使序号同步,并提供在两个主机之间建立虚拟连接所需的控制信号。一旦初始的三向握手完成,在发送和接收主机之间将按顺序发送和确认段。关闭连接之前,TCP使用类似的握手过程验证两个主机都完成发送和接收全部数据[6]。
    TCP通信的两端分别为服务器端和客户端。如图5和图6所示,服务端首先对指定的端口(如9000)监听,客户端向服务端被监听的端口发出请求,服务端接收到来自客户端的请求后便建立客户端与服务端的连接,然后就可以利用该连接进行通信了。

    需要注意的是,在构建远程实验室时涉及到视频流的传输,而TCP传输的仅仅是字节流,这就必须将视频流进行解码后按照字节流传输出去,再在客户端通过程序编码将视频复现。
    LabVIEW在构建远程控制实验系统时采用的上述各种网络通信方式可以看出,各有优劣。针对远程实验室系统的视频流传输,因其对传输延迟、传输速率等方面要求很高,故建议采用C/S模式即TCP协议或DataSocket协议,而其他的控制指令的发布完全可以采用Web Server。本系统最后实现了多个远程控制实验,调试结果表明用户可以进行实验,并且可以根据用户名保存或者查询历史实验记录。实验验证系统在校园网内具有良好的实时性,能够通过网络为用户提供实时的远程实验服务。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

程控开关,即程序控制开关,是一种根据预设程序或指令进行开关动作的装置。它广泛应用于工业自动化、智能家居、通信等领域,实现设备的远程控制、定时开关等功能。本文将详细介绍程控开关的使用方法,帮助读者更好地理解和应用这一技术。

关键字: 程控开关 工业自动化 远程控制

NI提供的软件包经济省时,不仅帮助开发人员节省时间,还为创客提供了新的机遇

关键字: LabVIEW 自动化测试系统

5G移动通信技术是第五代移动通信技术的简称,是最新一代的蜂窝移动通信技术。与4G技术相比,5G技术具有更高的数据传输速度、更低的延迟、更大的网络容量和覆盖范围等优势,能够满足大规模数据传输和实时交互的需求。

关键字: 5G 远程控制

强大的图形化编程工具使整个测试和测量过程的各个方面实现可视化

关键字: LabVIEW 图形化编程工具

太阳能供电应用系统的设计需要考虑多个方面,包括太阳能电池板、储能装置、控制模块等。本文将介绍一种基于太阳能供电的应用系统设计方法,并从这几个方面进行详细阐述。

关键字: 太阳能 系统设计

北京2023年8月15日 /美通社/ -- 日前,在第五届OCP China Day 2023(开放计算中国技术峰会)上,浪潮信息正式推出融合架构3.0原型系统,以开创性的系统架构设计实现了计算资源、存储资源、...

关键字: 系统设计 内存 软件定义 数据中心

北京2023年8月7日 /美通社/ -- 随着大模型智能水平的提升,AIGC所需要的算力在不断增长。大模型的参数量超过千亿,甚至突破万亿级别,预计智算中心将迎来更快发展。IDC预测,2022-2026年,全球AI计算市场...

关键字: CHINA 数据中心 AI 系统设计

摘要:对于每一型新机试飞,或者是重大的研究性试飞和验证试飞,都必须实施遥测监控。现基于TTS(TextToSpeech)语音合成技术,结合飞行试验遥测监控系统的不足,利用TTS引擎在LabVIEW开发环境下设计并实现了遥...

关键字: 飞行试验遥测监控系统 TTS LabVIEW

无论温度怎么变化始终UCQ1=UCQ2,电路以两只管子集电极电位差作为输出,就克服了温漂 当u11=u12(共模信号)T1管和T2管所产生的电流变化相等;因此集电极电位的变化也相等。

关键字: 差分放大器 系统设计 电极电位

在科研以及应用软件领域,LabVIEW和MATLAB作为比较常用的2款工具,相信很多人都用过吧。简单的概括一下,LabVIEW侧重测试测量和数据采集,MATLAB侧重科学计算和数据分析。

关键字: LabVIEW matlab 混合编程
关闭
关闭