您的位置 首页 基础

根据LabWIEW数控机床长途测控体系的网络通信要害技术研究

基于Internet组建数控机床网络测控系统目前主要有两种基本的模式:C/S和B/S模式。两种通信模式各有自己的优缺点,本章将对两种结构进行…

  根据Internet组成数控机床网络测控体系现在首要有两种根本的方法:C/S和B/S方法。两种通讯方法各有自己的优缺陷,本章将对两种结构进行详细的比较。一起在LabVIEW环境下完结网络通讯的也有多种办法,在本章中会做逐个比较。数据的存储与拜访也是完结长途测控体系的要害,在本章最终会进行 Web数据库的规划和LabVIEW渠道下完结长途数据库的拜访技能方面的剖析与研讨。

  4.1 B/S结构与C/S结构的比较

  本文提出的根据Internet组成网络化测控体系现在首要有两种根本的方法:C/S和B/S方法,功用和功用场合上各有自己的优缺陷,现做如下剖析比照。

  (1)C/S方法:(客户/服务器方法)

  C/S方法模型是网络通讯中常用的一种模型,一般集散操控体系多选用这种结构,它一般有多个客户端来收集数据,并且一般有一个服务器来充任数据库的人物,客户端经过通讯协议把测试数据写入长途服务器数据库。这种模型的规划包括两个方面:客户端收集程序和长途发布的程序规划以及客户端数据的接纳程序的规划。在LabVIEW环境下,专门为测试数据的安全快速的传输设置了DSTP协议。

  C/S方法的长处:

  ①因为客户端完结与服务器的直接相连,没有中间环节,因而呼应速度快。

  ②操作界面美丽、方法多样,能够充沛满意客户本身的个性化要求。

  ③C/S结构的办理信息体系具有较强的事务处理才干,能完结杂乱的事务流程。

  C/S方法的缺陷:

  ①需求专门的客户端装置程序,散布功用弱,针对点多面广且不具有网络条件的用户集体,不能够完结快速布置装置和装备。

  ②兼容性差,关于不同的开发东西,具有较大的局限性。若选用不同东西,需求从头改写程序。

  ③开发本钱较高,需求具有必定专业水准的技能人员才干完结。

  (2)B/S方法:(阅读器/服务器方法)

  B/S模型是为了便运用户在Web下发布数据。一般用户端只需求装置一个阅读器,直接拜访该测控网站的地址,就能够监督长途测控点的数据改动状况。它的首要作业便是在服务器端程序的开发,不存在客户端程序的开发和保护。在B/S方法下,一般选用HTTP协议。B/S组网方法的网络化虚拟仪器如图4.1所示。

  

  B/S方法的长处:

  ①具有散布性特色,能够随时随地进行查询、阅读等事务处理。

  ②事务扩展简略便利,经过添加网页即可添加服务器功用。

  ③保护简略便利,只需求改动网页,即可完结一切用户的同步更新。

  ④开发简略,同享性强。

  B/S方法的缺陷:

  ①个性化特色显着下降,无法完结具有个性化的功用要求。

  ②操作是以鼠标为最根本的操作办法,无法满意快速操作的要求。

  ③页面动态改写,呼应速度显着下降。

  ④无法完结分页显现,给数据库拜访构成较大的压力。

  ⑤功用弱化,难以完结传统方法下的特别功用要求。

  综上所述,B/S方法树立在广域网上,面向不同的用户群,涣散地域,这是C/S方法无法作到的。与操作体系渠道联系最小。C/S方法多是树立的 Window渠道上,体现办法有限,对程序员遍及要求较高,B/S方法树立在阅读器上,有愈加丰厚和生动的体现办法与用户沟通。。并且大部分难度减低,下降开发本钱。鉴于两种结构方法优缺陷功用的比较和笔者的论文完结难以上考虑,本文的长途测控体系选用B/S方法。

  4.2 LabVIEW完结网络通讯的办法研讨

  数控机床长途测控体系有多种完结网络通讯的办法。

  其间,根据虚拟仪器LabVIEW完结网络通讯有四大类办法:

  (1)运用网络通讯协议编程完结网络通讯,能够运用的通讯协议类型包括TCP/IP协议、UDP、串口通讯协议、无线网络协议、Socket等;

  (2)运用根据TCP/IP的数据传输协议DSTP的DataSocket技能完结网络通讯;

  (3)运用同享变量完结网络通讯;

  (4)经过长途拜访来完结网络通讯。

  本节将简略地剖析了各种办法的优缺陷及运用场合。

  4.2.1 TCP与UDP通讯技能

  TCP与UDP,这些协议在绝大多数核算机上都有装置,因而他们的运用更为遍及,可是正是因为这些协议愈加根底,因而针对它们的编程要愈加杂乱,用户需求考虑怎么树立衔接、分配端口号、进行地址转化等。LabVIEW为用户供给了封装好的VI函数,大大简化了TCP与UDP编程。

  网络通讯协议是网络中传递、办理信息的一些标准,是核算机之间彼此通讯需求一起恪守的一些规矩。网络通讯协议一般被分为多个层次,每一层完结必定的功用,通讯在对应的层次之间进行。LabVIEW中支撑的通讯协议类型包括TCP/IP、UDP、串口通讯协议、无线网络协议和邮件传输协议。TCP/IP协议体系是现在最成功,运用最频频的Internet协议,有着杰出的实用性和开放性。它界说了网络层的网际互连协议IP,传输层的传输操控协议TCP、用户数据协议UDP等。

  挑选选用C/S方法网络运用构架时,网络通讯运用Socket编程。Socket是TCP/IP协议传输所供给的接口,一般关于软件开发首要运用两种类型的套接字:

  (1)流式套接字

  流式套接字为运用程序供给牢靠的通讯衔接和无边界约束的双向数据流,能够供给有序、无重复的传输,适用于处理很多数据,并适用于要求得到呼应的运用程序。流式套接字是根据直接衔接的,树立在TCP根底上。TCP三次握手——运用TCP协议的流程图如图4.2所示

  

  

  (2)数据报套接字

  支撑双向数据活动,但不能确保数据的次序和不重复性,一起也不非常牢靠。数据报是无衔接的,由UDP(用户数据报协议)支撑,几乎是直接树立在IP层上,传输速度比较快。UDP即用户数据报协议,它是一种无衔接协议,因而不需求像TCP那样经过三次握手来树立一个衔接。一起,一个UDP运用可一起作为运用的客户端或服务器端。因为UDP协议并不需求树立一个清晰的衔接,因而树立UDP运用要比树立TCP运用简略得多。它比TCP协议更为高效,也能更好地处理实时性的问题。运用UDP协议的流程图如图4.3所示。

  

  其间Socket信息数据结构程序如下:

  struct sockaddr

  {

  unsigned short sa_family; /*地址族*/

  char sa_data[14]; /*14字节的协议地址,包括该socket的IP地址和端口号。*/

  };

  struct sockaddr_in

  {

  short int sa_family; /*地址族*/

  unsigned short int sin_port; /*端口号*/

  struct in_addr sin_addr; /*IP地址*/

  unsigned char sin_zero[8]; /*填充0以坚持与struct sockaddr相同巨细*/

  };

  LabVIEW中为网络通讯供给了根据TCP/UDP的通讯函数供用户调用。这样用户可直接调用TCP模块中已发布的TCP VI及相关的子VI来完结流程的编写,而无需过多考虑网络的底层完结。在规划上选用C/S(客户端/服务器)通讯方法,VI程序分为两部分:处理主机作业在Server方法,完结数据接纳,并供给数据的相关处理;数据点核算机作业于Client方法,完结数据传送。TCP传输数据进程如下:首要由发送端发送衔接恳求,接纳端侦听到恳求后回复并树立衔接,然后开端传输,数据传输完结后封闭衔接,传输进程完毕。

  (3)运用TCP协议通讯实例

  以下经过C/S(客户端/服务器)通讯方法完结的数据传输方法。

  在服务器端,用“TCP Create Listener”节点创立侦听,“TCP Wait on Listener”节点等候客户机衔接,经过循环产生100个正弦信号数据,用两个“TCP Write”节点来发送数据,第一个节点用来发送波形数据的长度,第二个节点发送波形数据,最终,用“TCP Close Connection”节点完毕衔接。程序框图如图4.4所示:

  

  在客户端,用“TCP Open Connection”节点翻开TCP衔接,用两个“TCP Read”节点读取数据,第一个节点接纳波形长度作为第二个节点的输入,第二个节点接纳波形数据,最终,用“TCP Close Connection”节点完毕衔接。程序框图如图4.5所示:

  

  运转TCP客户端程序,显现成果如下图4.6所示。

  

  4.2.2 DataSocket技能

  在LabVIEW中完结网络通讯的最简略办法便是DataSocket.因为DataSocket能够运用于任何编程环境,并且支撑多种协议(PSP、 DSTP、OPC、LOOKOUT、HTTP、FTP和文件拜访)。DataSocket是一种编程技能,它简化了网络核算机之间尤其是现场数据的交流。 DataSocket技能是一种面向测控范畴的网上实时数据交流编程技能,DataSocket技能根据Microsoft的COM和ActiveX技能,对TCP/IP协议进行高度封装,它包括了通用资源定位符URL (UNIform Resource Locator)和文件格局等技能标准。它能大大简化Internet网上核算机之间测控数据交流的编程作业。DataSocket也可用于一台核算机内或局域网中多个运用程序之间的数据交流,DataSocket的体系结构如图所示。

  

  (1)DataSocket逻辑构成DataSocket包括DataSocket Server Manager(以下简Manager),DataSocket Server和DataSocket API一部分。

  Manager是一个独立运转的程序,首要功用有:设置DataSocket Server衔接的客户端程序的最大数目和创立数据项的最大数目:创立用户组和用户;设置用户创立和读写数据项的权限;约束身份不明的客户对服务器进行拜访和进犯。例如,将Manager中的Default Reader设置为everyhost,则网中的每台客户核算机都能够读取服务器上的数据。Manager对DataSocket Server的装备有必要在本地核算机上进行,而不能长途装备或经过运转程序来装备。

  DataSocket Server是一个有必要运转在服务器端的程序,担任监管Manager中所设定的具有各种权限的用户组和客户端程序之间的数据交流。DataSocket Server经过内部数据自描述格局对TCP/IP进行优化和办理,简化Internet.通讯办法,供给自在的数据传输,能够直接传送虚拟仪器程序所收集到的布尔型、数字型、字符串型、数组型和波形等常用类型的数据。它能够和测控运用程序装置在同一台核算机上,也能够分装在不同的核算机上,以便用防火墙进行阻隔来添加整个体系的安全性。DataSocket Server不会占用测控核算机CPU的作业时间,测控运用程序能够运转得更快。

  DataSocket API供给独立的接口,用于不同的言语渠道内部多种数据类型的通读。在LabVIEW中,DataSocket API被制作成ActiveX控件和一系列功用VI(Virtual Instrument),用户能够便利地运用。一般由服务器进行数据收集,根据需求将丈量地数据写入DataSocket数据公共区,然后客户端经过网络充数据公共区读取所需地丈量数据。DataSocket API包括有Open、Read、Write和Close等函数,其间的Read和Write函数又分为单个或数组方法的字符串型、布尔型、数值型和波形等多种类型。DataSocket技能可在C言语、VB和LabVIEW等多种开发环境中运用。

  (2)DataSocket资源定位

  DataSocket对外提高资源定位接口和功用调用接口,经过赞同资源定位符(URL)对数据的传输目的地进行定位,读数据时为源地址,写数据时为宿地址。在资源定位符中标明数据的传输协议、网络核算机标志和数据缓冲区变量。DataSocket支撑多种数据传送协议,不同的URL前缀表明不同的协议或数据类型。首要包括:

  ①DSTP(DataSocket Transfer Protocol):DataSocket的专门通讯协议,能够传输各种类型的数据,当运用这个协议时,VI与DataSocket Server衔接,用户有必要为数据供给一个附加到URL的标识Tag,DataSocket衔接运用Tag在DataSocket Server上为一个特别的数据项目指定地址,现在运用虚拟仪器技能组成的丈量网络大多选用该协议;

  ②HTTP(Hyper Text Transfer Protocol,超文本传输协议);

  ③FTP(File Transfer Protocol,文件传输协议);

  ④OPC(OLE for Process Control,操作方案和操控);特别为实时产生的数据而触及,例如工业自动化操作而产生的数据。要运用该协议,须首要运转OPC Server;

  ⑤Fieldpoint,Logos,Lookout:别离为NI FieldPoint模块,LabVIEW数据记载与监控(DSC)模块及NI Lookout模块的通讯协议;

  ⑥File(local file servers,本地文件服务器);可供给一个到包括数据的本地文件或网络文件的衔接。

  (3)DataSocket网络通讯完结途径

  在LabVIEW中运用DataSocket技能完结网络通讯有两种途径:前面板控件特点直接衔接和运用DataSocket VI编程。详细完结办法见下图4.8所示:

  用DataSocket在数据发送端首要构成具有必定规则的数据流,再用DataSocket控件的写操作把这些数据传输到DataSocket服务器,在各客户端用读操作从服务器获取数据流,然后对数据流进行解析并康复为原始信息在客户端构成的呼应。这样就完结协同作业的根本流程。整个运用分红“写”和 “读”两个模块。

  写模块的中心时DataSocket write vi.它在作业前需求用户指定数据宿的URL地址。

  VI每次从上一步程序接纳数据后构成数据包并送到方针地址。在数据传送进程中,写端核算机的DataSocket Server会实时监督网络衔接和数据传送状况。“写”模块挑选条件为“True”时的程序,详见图4.8.

  

  读模块起中心作用的时DataSocket Read vi,其数据源的URL地址须与数据宿的URL地址相同,要注意接纳的数据类型与写端输出的数据类型共同。读端核算机也会运转DataSocket Server来监督网络接纳和数据接纳状况。“读”模块程序详见图4.9.

  

  有时网络拥塞会使数据传送周期变长,能够在程序的循环中设置等候时间(ms),本运用写端和读端别离规划为1000和100.在实践现场运用时,应尽量有专用的传送线路,一面网络拥塞时产生数据丢掉。DataSocket Server读取的数据能够做进一步的处理,并存储起来以供调用。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/jichu/222171.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部