转帖自网络,非原创。点击打开链接
TCP/IP最适合在两台电脑间进行大量的资料传输,但是如何使用labview进行tcp通信设计呢?
有一个基本的观念必需要先厘清,那就是LabVIEW中所使用的TCP/IP所能传送的资料格式只有String,所以任何型态的资料在被传输前,都要先转成String,今天我们所使用的范例程式,如下图所示。
程式分别有TCP_Server.vi及TCP_Client.vi两只,Server端会开启2055 Port等待Client端来连结,功能就是当Server端已成功和Client端建立连结,会将人机界面上Cluster中所有的Controller资料传到Client上,其中最重要的是资料转换,你必需要先将Cluster资料使用Type Cast.vi来转成String的型态,然后再计算该String的长度,因为Client如果不知道对方所传的资料长度,就无法完整的将资料接收,以下是Server端的程式码。
由上图可得知,Server端使用了I32来传送整个String的长度资讯,而下图是Client的程式,可以明显的发现程式会先收4个byte的资料来转成String的长度资讯,然后再完整的将String资料接收,而address的脚位是用来指定Server的IP位置资讯。
以上所提供的是一个标准的TCP/IP架构,你只需要稍作修改,就可以让现有的程式具有网路资料传输功能。