一种Labview多通道数据采集通过TCP将数据传到UNITY 3D的实现方法

本文详细介绍了如何使用LabVIEW 2018配合Unity3D,通过数据采集卡实现实时数据的传输和在Unity中显示的过程。通过TCP连接,Unity3D能够接收来自LabVIEW的多个端口的数据,包括位置坐标和测量参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

准备:Labview2018,unity 3D,数据采集卡

实现方法:

labview后面板:

 

 

 unity 3D代码:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.IO;
using System.Threading;
using UnityEngine;
using UnityEngine.UI;



public class tcp : MonoBehaviour
{
    private string inputIp = "192.168.244.202";   //输入ip地址
    private string inputPort = "111";           //输入端口号          
    private string inputPort2 = "222";
    private string inputPort3 = "333";
    private string inputPort4 = "444";
    private string inputPort5 = "555";
    private string inputPort6 = "666";



    public string recMes = "NULL";                                          
    

    public static double ax;      
    public static double ay;              
    public static double az;
    public static double T;
    public static double P;
    public static double dB;

    private Socket socketSend1;                   //客户端套接字,用来链接远端服务器                                    
    private Socket socketSend2;
    private Socket socketSend3;
    private Socket socketSend4;
    private Socket socketSend5;
    private Socket socketSend6;

    public static string s="False";
    

    

    //建立链接
    private void ClickConnect()
    {
        try
        {    
//端口1 
            int _port = Convert.ToInt32(inputPort);             //获取端口号
            string _ip = inputIp;                               //获取ip地址

            //创建客户端Socket,获得远程ip和端口号
            socketSend1 = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            IPAddress ip = IPAddress.Parse(_ip);
            IPEndPoint point = new IPEndPoint(ip, _port);

            socketSend1.Connect(point);
            Debug.Log("连接成功 , " + " ip = " + ip + " port = " + _port);
            
            Thread r_thread1 = new Thread(Received1);             //开启新的线程,不停的接收服务器发来的消息
            r_thread1.IsBackground = true;
            r_thread1.Start();

//端口2            
            int _port2 = Convert.ToInt32(inputPort2);            
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值