sabato 9 febbraio 2008

controllo remoto del NXT con Labview/NXTtoolkit

Ho chiesto a qualcuno su nxtasy.org se voleva provare a controllare il mio nxt (o viceversa) usando il datasocket (*) fornito da Labview ma nessuno mi ha mai contattato.

Lo linko qui (dove pero' non posso caricare files, solo immagini); magari c'e' interesse.

L'idea e' di controllare NXT attaccato ad un PC (il mio bluetooth ha dei problemi, ma passare a BT e' facilissimo) da un altro PC via internet.

Il primo esperimento si concentra sul semplice problema di comunicare. Il sensore e' quello di luce; nessun attuatore.

Un .vi parla col NXT via USB e passa i dati al datasocket (internet); l'altro .vi parla col data socket e mostra i dati a schermo.

Il .vi che riceve i dati deve "sottoscrivere" la connessione indicando dspt://indirizzoIPdelPCchetrasmette/wave
dove wave e' il nome che ho scelto nel primo .vi per lo stream di dati nel PC che trasmette.

L'esperimento che ho proposto consiste nello scaricare i due .vi di Labview (o almeno quello che si vuole usare) e provare a vedere che succede.

E' importante la configurazione iniziale del data socket. Inoltre sul router va abilitata la porta 3015.


Se funziona si puo' passare ad altro (vedi esperimento successivo su nxtasy.org) .

(*) Copio-incollo dalla tesi di F. Altamura:
Le VI di LabVIEW possono comunicare o lavorare in rete (networking) con altri
processi, inclusi quelli che sono eseguiti da altre applicazioni o su computer remoti.
In particolare è possibile condividere dati in tempo reale con altre VI in rete
sfruttando la tecnologia DataSocket della National Instruments.
È necessario installare sulla macchina un Datasocket Server , cioè un applicazione
che fornisce il servizio Datasocket ad altri computer effettuando operazioni di
networking e di gestione di file.
Con questo tipo di tecnologia è possibile vedere e comandare ogni controllo e
indicatore del pannello di controllo della VI.
Attraverso questo tipo di connessione vengono scambiati dei dati, non dei grafici, e
in questo modo è possibile operare delle elaborazioni sui dati da remoto.
Vediamo, nella figura 7.3, due esempi di diagrammi a blocchi per leggere e scrivere
dei dati attraverso la connessione DataSocket.

La VI di sinistra genera una temperatura e invia il dato relativo ad essa al
DataSocket server con il nome di temp , mentre la VI di destra preleva il dato
relativo a temp dal server e lo visualizza su un grafico.

Il programma sviluppato per il controllo remoto dell apparecchio usa la tecnologia
Datasocket per lo scambio dei dati attraverso il web; è composto da due parti
distinte:
1. una parte installata sulla macchina a cui è collegato fisicamente
l' apparecchio e su cui è installato il Datasocket server ;
2. una parte (client) installata su una qualsiasi altra macchina remota che,
dialogando con il server, controlla l 'apparecchio.

1 commento:

Takitaro ha detto...

domanda ma tramite datasocket è possibile anche passare file di testo?