24-01-2014, 09:29 PM
Estoy evaluando qué posibilidades tengo. La última vez que toqué algo de comunicación entre arduinos lo hice a través de la librería RF24 para intercambiar información (estructuras de datos) entre dos arduinos mediante unos nfr24l01+.
Ahora tengo una Aplicación Java (Cliente) y un Arduino (En realidad es una OpenCM de Robotis). Necesito una comunicación bidireccional y había pensado en la librería RXTX (estoy abierto a otras recomendaciones).
Los datos que voy a intercambiar entre ellos son básicamente órdenes de cambio de estado de unos actuadores, obtener el estado actual de los actuadores y un pulso de vida para monitorizar él estado del sistema.
Desconozco si sería posible intercambiar objetos o estructuras de datos, en último caso creo que podría organizarlo para basar la comunicación en XML o simplemente una cadena con delimitadores.
Un ejemplo de los datos que tendría que intercambiar a modo de cadena delimitada si no encuentro una forma mejor:
JAVA DataPacket (Send)
Arduino DataPacket (Receive)
Ahora tengo una Aplicación Java (Cliente) y un Arduino (En realidad es una OpenCM de Robotis). Necesito una comunicación bidireccional y había pensado en la librería RXTX (estoy abierto a otras recomendaciones).
Los datos que voy a intercambiar entre ellos son básicamente órdenes de cambio de estado de unos actuadores, obtener el estado actual de los actuadores y un pulso de vida para monitorizar él estado del sistema.
Desconozco si sería posible intercambiar objetos o estructuras de datos, en último caso creo que podría organizarlo para basar la comunicación en XML o simplemente una cadena con delimitadores.
Un ejemplo de los datos que tendría que intercambiar a modo de cadena delimitada si no encuentro una forma mejor:
JAVA DataPacket (Send)
Código:
ID*/POSITION/SPEED/TEMP/VOLT
*ID=0 -> Hearbeat
0/0=OK
0/-1=KO
Código:
OPCODE/?ID/?GOALPOSITION/?GOALSPEED
OPCODE:
0-> getAll() //Obtener todos
1-> getData(idDxl) //Establecer estado
2-> setData(idDxl) //Obtener estado
? = Opcional