LabVIEW在两台计算机之间传输数据

简介: LabVIEW在两台计算机之间传输数据

LabVIEW在两台计算机之间传输数据


有几种网络协议可用于完成此任务。使用正确的网络协议白皮书将完成为应用选择正确协议的任务。它涵盖了控制和监视应用中最常用的通信模型,并根据配置、性能、易用性等推荐最适合每种情况的网络协议。


参考的白皮书重点介绍了三种通信模型:


基于命令或消息的通信:由特定事件触发的不频繁信息传输。


过程数据通信:定期传输过程变量的最新值。


流/缓冲通信:流数据,大量信息连续发送,但不一定是实时的。


在下面您可以访问有关将任何这些协议与LabVIEW配合使用的详细信息:


TCP和UDP:LabVIEW中的基本TCP/IP通信。


网络发布的共享变量:使用网络发布的共享变量在系统之间进行通信


网络流:与网络流的无损通信:组件、体系结构和性能


Web服务:创建和访问LabVIEWWeb服务。


VI服务器:


网际协议(IP)、用户数据报协议(UDP)和传输控制协议(TCP)是网络通信的基本工具。TCP/IP这一名称来自于两个最著名的互联网协议集——传输控制协议和网际协议。通过TCP/IP可实现单个网络内部或互联网(因特网)间的通信。


TCP/IP通信提供简单的用户界面,在降低复杂度的同时确保了网络通信的可靠性。关于TCP/IP通信工作原理的更多信息,请参考下文链接的“LabVIEW在TCP/IP和UDP中的应用”。


使用函数»数据通信»协议»TCP选板上的TCP/IP函数,在LabVIEW中实现TCP通信。与DAQ、仪器和文件I/O通信一样,该过程涉及打开连接、读取和写入信息,最后关闭连接。


对于大多数I/O通信,处理器总是发起与磁盘驱动服务器、外部仪器服务器或DAQ板卡服务器的连接的客户端。通过TCP/IP连接,计算机可作为客户端或服务器。以下程序框图中的客户端应用程序通过“TCP打开连接”发起与远程服务器的连接。服务器(又称伺服机)侦听远程连接并进行适当响应。


LabVIEW用户可开发用于TCP/IP通信的自定义应用程序。程序员同时负责开发客户端和服务器。关于通过LabVIEW创建TCP客户端的更多信息,请参考下文链接的“LabVIEW在TCP/IP和UDP中的应用”。


因为任何人都可发起与服务器的连接,所以您可能需要服务器访问控制。以下程序框图显示服务器如何使用“TCP侦听”VI的远程地址输出值来确定远程客户端是否具有访问服务器的权限。


开发通信应用


多数应用程序不只是写入和读取单个值。通信是一个涉及协议的持续过程。例如,假设客户端将以下4条命令以8位整数的形式发送至服务器:


1 =获取数据并确认


2 =发送数据


3 =获得状态


4 =关闭连接


在以下程序框图中,While循环包裹住了VI的其余部分。如此一来,VI就可处理多个顺序连接,而不必在每个连接关闭后重新启动。VI无法处理多个同步连接。外部的条件结构判断是否发生了有效连接。若无,则不作反应。若发生有效连接,VI将进入While循环,从TCP/IP端口读取一个字节。该字节包含来自客户端的命令1~4。若在读取超时时间内未收到命令,则内部条件结构的默认分支会向内部While循环的继续接线端发送TRUE值,以保持连接处于活动状态。


以下程序框图显示了内部条件语句的其他4个分支。每个分支处理一种服务器发送的特定命令。每个分支都向继续接线端发送信息,决定是否继续循环。需要注意的是,“退出”分支总是返回FALSE值。离开循环后,服务器关闭与客户端的连接。

这种类型的服务器架构可助您开发灵活的服务器,用于更加复杂的网络通信过程。您开发的协议可能比前文中的范例更加复杂。


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。


相关文章
|
SQL 分布式计算 DataWorks
通过DataWorks使用PyODPS
PyODPS为MaxCompute的Python版SDK,支持在DataWorks中开发运行PyODPS任务。本文为您介绍在DataWorks上使用PyODPS的使用限制、主要流程和部分简单应用示例
460 2
‘you-get‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
‘you-get‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件
481 0
|
SQL 关系型数据库 MySQL
IDEA自带的数据库插件,真香
最近阿粉的一个读者问阿粉,说进了一个公司,但是是外包身份进入的,而且甲方公司要求不能在电脑上装一些破解的,盗版的软件,只要发现就能扫描到并且被删除。而且还没有提供正版的软件的激活码,就问阿粉,说有没有什么类似Navicat 一样的工具,又强大,又好用的。
3454 0
IDEA自带的数据库插件,真香
|
4月前
|
机器学习/深度学习 负载均衡 数据可视化
性能比肩最强开源,QwQ-32B一键部署,百万Token免费送!
本文介绍如何通过百炼平台调用QwQ-32B开源模型。百炼平台提供的标准化 API 接口,免去了自行构建模型服务基础设施的麻烦,并支持负载均衡及自动扩缩容,确保了 API 调用的高稳定性。此外,结合使用 Chatbox 可视化界面客户端,用户无需进行命令行操作,即可通过直观的图形界面轻松完成 QwQ 模型的配置与使用。
|
5月前
|
网络协议 Linux 网络安全
docker centos镜像 npm安装包时报错“npm ERR! code ECONNRESET”
通过上述步骤,您可以有效解决在 Docker 中使用 CentOS 镜像安装 npm 包时遇到的 "npm ERR! code ECONNRESET" 错误。希望这些方法能帮助您顺利进行 npm 包的安装。
356 26
|
6月前
|
监控 前端开发 关系型数据库
搭建直播网站技术层面准备全流程
搭建直播网站涉及技术选型、开发与部署。技术选型包括服务器端(Java/Go、MySQL/PostgreSQL、Redis、阿里云OSS等)、前端(React/Vue.js、React Native/Flutter)、流媒体技术(RTMP、HLS、WebRTC、H.264/AAC)和CDN加速。系统架构设计涵盖前端、后端、流媒体服务器及数据库,使用负载均衡器分发流量,包含用户认证、推拉流管理、实时通信等功能模块。开发流程包括环境搭建、API实现、WebSocket通信、页面开发及流媒体配置。部署阶段涉及服务器搭建、Docker容器化、CDN配置、日志监控及CI/CD自动化部署。
460 13
|
监控
用LabVIEW进行CAN通信开发流程
用LabVIEW进行CAN通信开发流程
649 0
|
存储 Unix Linux
LabVIEW与实时目标之间的FTP文件
LabVIEW与实时目标之间的FTP文件
309 0
|
程序员 iOS开发 MacOS
LabVIEW什么是实时操作系统(RTOS)
LabVIEW什么是实时操作系统(RTOS)
297 1
|
JSON 数据格式 Windows
LabVIEW创建Web服务
LabVIEW创建Web服务
191 0