1、1如何实现虚拟网络实验摘要:本文通过局域网和最后远程虚拟实验的网络,控制虚拟实验实现了基于虚拟实验和 LabWindows/CVI软件平台。介绍了基于LabWindows应用程序设计的虚拟实验网络结构、虚拟实验网络通信、客户端/编程模式的服务器、远程 PC和服务器通信实现功率控制工作站传输和服务器程序等基本技术。 关键词:虚拟实验 虚拟实验网络 通信 远程控制 1 介绍 互联网技术和远程虚拟实验是基于虚拟实验(VI)来设计的,该技术多年来被应用在许多领域。VI 的远程控制和远程获取、通过 VI和交付量的测量信息也越来越重要。通过局域网设置了基于软件平台的LabWindows / CVI,具体的
2、网络通信部分,要使用 VI实现网络连接彼此内部局域网,利用服务器/客户模式申请权力和控制,客户程序可通过指令获得远程虚拟网络实验平台的控制权。 虚拟实验网络(VIN)由一组硬件和系统构成。硬件包括计算机(可单机或局域网组成的服务器以及一些 PC) 。该软件采用的编程环境是LabWindows / CVI和 c+。LabWindows / CVI可以开发使用虚拟设备,实现 VI的功能。可以使用绑定的硬件和软件缩短开发周期和提高 VI的可用性。 根据设计的原则,系统硬件配置,采用 VXI总线实验和 GPIB实验。2选择 VXI主机控制器为主要系统硬件框架,里面放置 0槽控制计算机作为系统控制器。
3、一般的标准接口是每个测试函数模块之间的一座桥梁,他们一起构成了电路板的测试模块。接口适配器完成标准接口与电路板连接机器测试。信号源采用电路板标准接口和相应适配器,这和响应信号需要测试给定的标准接口有关。 2 虚拟实验网络通信设计 VIN 的沟通任务是:查询服务器和数据库(BD)的工作站的 IP地址,然后得到对应的结果控制工作站;让远端电脑远程控制 GPIB实验;远端PC将命令发送到 GPIB实验;决定是否通过局域网,或者回送到获取远端实验数据的电脑。 网络规划是由 web服务器程序、客户端程序和通用接口总线控制器组成。采用 TCP / IP网络协议,在面向连接的客户端与 web服务器必须得到一
4、个链接之前,要先将数据包发送到网络服务器。一旦运行客户端程序,它发送一个连接请求到 web服务器(假设 web服务器已成功开启了一个端口与客户沟通) ,为了整个系统安全,web 服务器需要验证用户的身份的有效性。实现成功的发送和接收的交流结束之前,必须遵守彼此传输格式。 网络传输的数据包格式是:头和内容的信息,由制表字符“ r n”之间的信息头和信息的内容组成。信息头放在特殊容器中。具体的内容之间的信息和内容与内部信息也分开,依然用“ r n”分隔。在转移到网络服务器时,服务器将通过查询数据包验证其身份。 3头的信息是:“Log_Serv” ,项目内容结果是:“=” 、 “= ”型。如果登录成
5、功,整个信息内容是:“Log_Serv r nRESULT =OK r nTYPE = XS r n”;如果登录失败,整个信息内容是:“Log_Serv r n r nRESULT = NG”。这时,来自客户机的通信网络服务器已经基本完成。在收到确认信息的 GPIB实验控制器客户端,将设置独立的与 GPIB实验控制器相联系的地址。 3 VI 传输程序设计 先根据网络传输的控制功能,提出 TCP LabWindows / CVI所用函数库,它是属于 Windows Socket和支持 TCP服务的一个子集。与直接使用Windows Socket编程 API函数相比,它更方便和容易使用。LabWi
6、ndows / CVI TCP函数库包含 3个子类:服务器、客户端、支持功能的函数。 第一个是通信控制功能子类的服务器端,包括 4个组件:负责接口的注册表、服务器和读取/写稿数据的端口。第二个是设置和通讯功能子类的客户端,这样的子类型包括客户机通信控制功能。最后是其他功能子类:比如获得当前主机的 IP地址、主机名等。 首先,客户端发送一个请求到 Web服务器,请求 GPIB实验的地址,控制器是为了控制之间的数据交流。Web 服务器发送的 GPIB实验地址,控制器后台处理客户端的请求。 4 PC 和服务器之间的通信和控制程序设计 4.1 菜单程序回调函数 放在设置文件之前,系统自动代码框架代码的
7、主程序和回调功能函数。 4菜单回调函数的基本框架是: void CVICALLBACK(int menuBar, int menuItem, void *callbackData, int panel) 相应代码添加会根据具体功能菜单调用回调函数。在使用回调函数“Exit _All”(退出实验台)时,它只需要添加退出用户接口(0) 。 4.2 用户远程登陆模块实现 如果在主函数设置下面的语句,程序将运行客户端程序和控制面板。if ( panelmenu = LoadPanel ( 0, “interface.uir“, PANELMENU) ) 0) return -1; DisplayPan
8、el (panelmenu) ; 此外,需要执行另一个重要的声明,这是设置的链接服务器。服务器端口和机器名称已在使用之前定义。 int iPortNum=1000; char cIP_Address 10=“VLAB“; if (ConnectToTCPServer (&iG_HCONVERSATION1 , iPortNum, cIP_Address, ClientTCPCB, NULL, 5000) MessagePopup (“TCP Client“, “Connection to server failed!“) ; else RunUserInterface ( ) ; 然后出现面板
9、和与服务器连接,用户可以单击按钮“用户登陆” ,输入帐号和密码,然后点击按钮“用户登陆”事件将出现如下情况: if (panellog=LoadPanel (0,“interface.uir“, PANELLOG) )50) return -1; InstallPopup (panellog) ; 写数据到服务器端的程序: if ( (ClientTCPWrite (iG_HCONVERSATION1 , cSend, strlen (cSend) , 1000) )0) 285 MessagePopup (“Attention“, “cSend the Log Information Err
10、or“) ; QuitUserInterface (0) ; else DiscardPanel (panellog) ; SetCtrlAttribute (panelinfo, PANELINFO_QUEST_ONLINE, ATTR_DIMMED, 0) ; SetCtrlAttribute (panelinfo, PANELINFO_QUERY_GS, ATTR_DIMMED, 0) ; break; return 0; 使用 clientTCPwrite通过网络发送信息到服务器,服务器将数据进6行比较,找到属于自己的数据包的消息并进行消息接收和发送消息。 5 结论 利用基于电子测量在
11、 VIN中的应用,使 VIN系统引入通信和远程控制技术,广泛的应用这些技术,可以体现出更为实际的价值。例如,多种先进 VI实现的资源共享,电子测量 VIN已经建成,系统的所有功能已生效。因此网络的传输质量保证和良好的情况下,用户可以远程控制VI,在许多实践 VIN系统应用中收到良好的效果。 参考文献: 1刘东.基于 Packet Tracer和 VMWare构建虚拟网络实验平台J.中小企业管理与科技(下旬刊) ,2010(10). 2魏晓辉,郭庆南等.支持虚拟机跨局域网在线迁移的混合式虚拟网络原型J.吉林大学学报(理学版) ,2011(2). 3张人清.虚拟网络实验室实现原理研究D.湘潭大学,2001. 基金项目: 项目名称:网络虚拟实训平台的开发及在高职院校的联合应用,项目编号:JG2012020803。
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。