2016-08-07 17 views
1

Unityからラズベリーパイにデータを送信しようとしています。私はそれらを正常に接続しましたが、私は助けてくださいすべてのデータを渡すことはできません。ありがとうユニティからラズベリーへのデータの送信

これは私がラズベリー側

import socket 



backlog=1 
size = 1024 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.bind(("169.254.242.100",50001)) 
s.listen(backlog) 
try: 
    print ("is waiting") 
    client, address = s.accept() 

    while 1: 
     data = client.recv(size) 
     if data: 
      tabela = data 
      print ("sends data") 
      print (tabela[0]) 

      client.send(data) 
except: 
    print("closing socket") 
    client.close() 
    s.close() 

に使用したコードであり、これは私がユニティ

using UnityEngine; 
using System.Collections; 
using System.Net.Sockets; 

public class UnityToRaspberry : MonoBehaviour { 

public string IP = "169.254.242.100"; // 
public int Port = 50001; 

public byte[] dane = System.Text.Encoding.ASCII.GetBytes("Hello"); 
public Socket client; 

void Start(){ 
    //dane [0] = 1; 

    client = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 
    client.Connect (IP, Port); 
    if (client.Connected) { 
     Debug.Log ("Connected"); 
    } 
    client.Send (dane); 
} 

void OnApplicationQuit(){ 
    client.Close(); 
} 



} 

に使用するものです!

答えて

1

私はあなたがスーパーに近いと確信しました!私はあなたのコードとUnity Answers [1]の例を使用しました。これは、Mac OSX SierraのUnity 5.5.0f3とtcpソケットを介したRaspberry Pi 3モデルBの間でデータを転送してデータを転送する必要があります。ユニティで

import socket 

backlog = 1 
size = 1024 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.bind(('192.20.20.2', 50001)) 
s.listen(backlog) 
try: 
    print ("is waiting") 
    client, address = s.accept() 

    while 1: 
     data = client.recv(size) 
     if data: 
      print (data) 

except: 
    print("closing socket") 
    client.close() 
    s.close() 

源:http://answers.unity3d.com/questions/601572/unity-talking-to-arduino-via-wifiethernet.html

https://docs.python.org/2/library/socket.html

void setupSocket() 
{ 
    s.socketReady = false; 
    s.host = "192.20.20.2"; 
    s.port = 50001; 

    try {     
     s.socket = new TcpClient(s.host, s.port); 
     s.stream = s.socket.GetStream(); 
     s.writer = new StreamWriter(s.stream); 
     s.reader = new StreamReader(s.stream); 
     s.socketReady = true; 
    } 
    catch (Exception e) { 
     Debug.Log("Socket error:" + e); 
    } 
} 

void Update() 
{ 
    s.writer.Write("Hello Pi!"); 
    s.writer.Flush(); 
} 

PythonのpIに

関連する問題