Inviare dati tra Arduino Uno + Dragino Yùn Shield e Matlab tramite WiFi

Ciao a tutti.

Sono uno studente laureando in ingegneria informatica e, per la mia tesi, sto implementando una self-balanced car. L'obiettivo del mio tirocinio è stabilire una connessione tra Arduino UNO + Dragino Yùn Shield e Matlab tramite una connessione wifi, così da poter implementare alcune delle funzioni presenti nella demo del progetto originale su matlab.

Per provare la connessione tra arduino e matlab, ho prima implementato due codici (uno in arduino e uno in matlab) per effettuare la funzione di blinking sulla scheda arduino uno tramite un comando inviato da matlab. L'invio dei dati da matlab ad arduino funzione perfettamente.

Il problema arriva quando voglio far inviare ad arduino dei dati di qualsiasi tipologia (numeri e/o caratteri) per matlab. Questa cosa proprio non mi riesce!

Potete aiutarmi?
Ecco il codice di matlab per il blink

a=tcpip('192.168.240.1', 5555);
risp=input('Iniziamo si o no? ', 's');
yes='si';
while strcmp(risp, yes)
fopen(a);%stabilire connessione tcp/ip con arduino
disp('accendi o spegni?');
answ= input('','s');
fwrite(a, answ);
%str2double(fread(a,1))
fclose(a);
risp=input('Coontinuiamo si o no? ', 's');
end

ed ecco quello di arduino

#include <Console.h>
#include <Bridge.h>
#include <BridgeServer.h>
#include <BridgeClient.h>


BridgeServer server;

void setup() {
  //start Bridge library
  Bridge.begin();
  Console.begin();
  // init LED_PIN
  pinMode(LED_BUILTIN,OUTPUT);
  digitalWrite(LED_BUILTIN,LOW);
  


  digitalWrite(LED_BUILTIN, LOW);
  delay(2000);
  digitalWrite(LED_BUILTIN, HIGH);
  
  //listen for incoming connections 
  server.begin();
  while (!Console);
  
  Console.println("Accepting commands...");

}

void loop() {
  
  //try to accept a new connection
  BridgeClient client = server.accept();
  
  if (client.available()){
    Console.println("accendi o spegni?");
    String command = client.readStringUntil("");
    
    Console.println(command);
    //perform the received action
    if (command == "accendi"){
       digitalWrite(LED_BUILTIN, HIGH);
       Console.println("ACCESO");
       //client.println(1);
       //client.println(2);
       delay(2);
    }
    if (command == "spegni"){
       digitalWrite(LED_BUILTIN, LOW);
       Console.println("spento");
       //client.println(0);
       //client.println(2);
       delay(2);
    }
    else Console.println("Unknown command");
    
    //close the connection
    client.stop();
  }

Grazie mille.

Prima di tutto, essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del regolamento di detta sezione (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ...

... dopo di che, visto anche QUESTO tuo altro thread ... mi raccomando, attenzione a NON cadere nel cross-posting che, in conformità al suddetto REGOLAMENTO, punto 13, è proibito (anche tra lingue diverse) e che mi costringerebbe a chiudere ed eliminare il thread.

Grazie,

Guglielmo