User Tools

Site Tools


neurali:yarp

Table of Contents

Yarp

https://github.com/robotology/yarp/releases

http://www.yarp.it/index.html

Questa pagina introduce solo gli elementi di Yarp server usati dal software client iSpike

iSpike utilizza un protocollo testuale per comunicare con Yarp

http://wiki.icub.org/yarpdoc/yarp_without_yarp.html

This is a YARP port.  Here are the commands it responds to:
*       Gives a description of this port
d       Signals the beginning of input for the port's owner
do      The same as "d" except replies should be suppressed ("data-only")
q       Disconnects
i       Interrupt parent process (unix only)
r       Reverse connection type to be a reader
/port   Requests to send output to /port
!/port  Requests to stop sending output to /port
~/port  Requests to stop receiving input from /port
a       Signals the beginning of an administrative message
?       Gives this help

Nota: il nome del canale /port non è un numero di una porta di rete (end-point) ma ad ogni canale /port corrisponde una certa porta di rete.

Yarp utilizza il modello client/server. Il server è un server dei nomi di canali. (name server)

Yarp name server utilizza la porta 10000 da cui si possono ricevere e inviare i comandi per i diversi assi dei controller dei diversi motori. Oppure si può usare una diversa porta per comunicare con il proprietario del canale di comunicazione del singolo motore.

Lato server

creare un canale di comunicazione (port) /root

$ yarp server

Creare un canale dove attende comandi

yarp read /read

Lato client

(telnet)

$ CONNECT foo
$ yarp name list
registration name /motor/command:i ip 127.0.0.1 port 10032 type tcp
$ yarp name query /write
registration name /write ip 127.0.0.1 port 10012 type tcp
*** end of message
d 
r
q
neurali/yarp.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1