
目前有两种基于Internet建立CNC机床网络测控系统的基本模式: 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,串行通信协议,无线网络协议,套接字等;
(2)使用基于TCP / IP数据传输协议DSTP的DataSocket技术实现网络通信;
(3)使用共享变量实现网络通讯;
(4)通过远程访问实现网络通信.
本节将简要分析各种方法及其应用的优缺点.
4.2.1 TCP和UDP通信技术
TCP和UDP,这些协议安装在大多数计算机上,因此它们的使用更为普遍,而恰恰是因为这些协议更基础,所以针对它们的编程更加复杂,用户需要考虑如何构建Connect ,分配端口号,执行地址转换等. LabVIEW为用户提供了封装的VI功能,从而大大简化了TCP和UDP编程.
网络通信协议是用于在网络中传输和管理信息的一些规范,并且是计算机在相互通信中必须遵守的一些规则. 网络通信协议通常分为多个级别,每个级别执行某些功能,并且在相应级别之间进行通信. LabVIEW支持的通信协议类型包括TCP / IP,UDP,串行通信协议,无线网络协议和邮件传输协议. TCP / IP协议系统是目前最成功和最常用的Internet协议,具有良好的实用性和开放性. 它定义了网络层的互联网协议IP,传输层的传输控制协议TCP和用户数据协议UDP.
当选择采用C / S模式网络应用程序体系结构时,网络通信将使用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
{
无符号的简短sa_family; / *地址族* /
char sa_data [14]; / * 14字节的协议地址,包括套接字的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程序分为两个部分: 处理主机以服务器模式工作,以完成数据接收并提供与数据相关的处理. 数据点计算机以客户端模式工作以实现数据传输. TCP数据传输过程如下: 首先,发送方发送连接请求,接收方在侦听请求后做出响应并建立连接,然后开始传输. 数据传输完成后,连接将关闭,传输过程结束.
(3)使用TCP协议进行通信的示例
以下数据传输模式是通过C / S(客户端/服务器)通信模式实现的.
在服务器端,使用“ TCP创建侦听器”节点创建侦听器,“ TCP等待侦听器”节点等待客户端连接,在循环中生成100个正弦信号数据,并使用两个“ TCP “写入”节点发送数据,第一个节点用于发送波形数据的长度,第二个节点用于发送波形数据,最后,使用“ TCP关闭连接”节点结束连接. 框图如图4.4所示:

在客户端,使用“ TCP Open Connection”节点打开TCP连接,使用两个“ TCP Read”节点读取数据,第一个节点接收波形长度作为第二个节点的输入,第二节点接收波形数据. 最后,使用“ TCP关闭连接”节点结束连接. 框图如图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服务器管理器(以下简称为Manager),DataSocket服务器和DataSocket API部分.
Manager是一个独立程序. 它的主要功能是: 设置连接到DataSocket Server的客户端程序的最大数量以及创建的数据项的最大数量. 设置用户创建和读取和写入数据项的权限;限制身份不明的客户端访问和攻击服务器. 例如,如果将Manager中的“默认读取器”设置为“每台主机”,则网络中的每台客户端计算机都可以读取服务器上的数据. DataSocket Server的Manager配置必须在本地计算机上完成,并且不能远程配置或通过运行程序进行配置.
DataSocket Server是必须在服务器端运行的程序,负责监督在Manager和客户端程序中设置了各种权限的用户组之间的数据交换. DataSocket服务器通过内部数据自描述格式优化和管理TCP / IP,简化了Internet. 通信模式,提供免费的数据传输,并且可以直接传输虚拟仪器程序收集的布尔,数字,字符串和数组,例如类型和波形等常见数据类型. 它可以与测量和控制应用程序安装在同一台计算机上,也可以安装在不同的计算机上,以便可以被防火墙隔离以提高整个系统的安全性. DataSocket Server不会占用测控计算机CPU的工作时间,并且测控应用程序可以运行得更快.
DataSocket API提供了一个独立的接口,可以读取不同语言平台中的多种数据类型. 在LabVIEW中,DataSocket API被制成ActiveX控件和一系列功能VI(虚拟仪器),用户可以方便地使用它们. 通常,服务器执行数据收集,并根据需要将测量的数据写入DataSocket数据公共区域,然后客户端通过网络计费数据公共区域读取所需的测量数据. DataSocket API包括诸如Open,Read,Write和Close的功能. 读取和写入功能分为字符串,布尔值,数字和波形类型的单个或数组形式. DataSocket技术可以应用于各种开发环境,例如C语言,VB和LabVIEW.
(2)DataSocket资源位置
DataSocket从外部增强了资源定位接口和函数调用接口,并通过同意资源定位器(URL)来定位数据传输目标,URL是读取数据时的源地址,而写入数据时则是目标地址. 在资源定位器中,指示数据传输协议,网络计算机徽标和数据缓冲区变量. DataSocket支持多种数据传输协议,并且不同的URL前缀表示不同的协议或数据类型. 主要包括:
①DSTP(DataSocket传输协议): DataSocket是一种特殊的通信协议,可以传输各种类型的数据. 使用该协议时,VI将与DataSocket服务器连接,用户必须提供附加在数据URL上的标签DataSocket. 该连接使用标签为DataSocket服务器上的特殊数据项指定地址. 目前,大多数由虚拟仪器技术构建的测量网络都使用该协议;
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxingongju/article-298731-1.html
加油
央行降息不考虑物价上涨因素吗