sábado, 4 de diciembre de 2010

Comunicación por USB entre Arduino y un PC vía java.

La forma más fácil para comunicar el Arduino UNO con un PC es mediante el puerto USB/Serie y en este caso utilizaremos a tal efecto la librería RXTX de Java.

Arduino
En el Arduino se copia el programa de ejemplo ASCII Table que viene en la versión 0021 del software de programación Arduino.
  • Menu: File -> Examples -> 4.Communication -> ASCIITable

PC
En el PC bajo un entorno Eclipse de desarrollo y añadiendo la libreria RXTX (disponible en rxtx.org) se definen los siguientes ficheros:

TEST DE FUNCIONAMIENTO
Podemos ver en el video la pulsación en la placa Arduino y como se recoge la información en una aplicación java y se visualiza en consola el volcado de datos que envia el Arduino, en este caso la tabla ASCII.

5 comentarios:

Hernaldo Alvarez dijo...

Buenas, quise probar tu programa, y al ejecutarlo me aparece solo el error de que no se encontro: MonitorNAS v0.1 (C) Ricard Forner
Fichero de propiedades MonitorNAS.properties no encontrado
Puerto null no encontrado.

a que crees que se deba

Hernaldo Alvarez dijo...

Buenas... antes que nada muy bueno tu blog.
Trate de probar tu proyecto, y pues al momento de correrlo en java me marca:
Fichero de propiedades MonitorNAS.properties no encontrado
Puerto null no encontrado.
No marca error, quisiera saber que es lo que sucede y que hacer para que funcione.
Gracias

Ricard Forner dijo...

Hola Hernaldo, es necesario que le fichero de propiedades (MonitorNAs.properties) se encuentre en la raiz del directorio en donde se ejecute. Acabo de añadir una nueva entrada con los dos proyectos asociados al tema de montorizar FreeNAS desde el Arduino.

Hernaldo Alvarez dijo...

Perdon Nuevamente: me marca el sig. error:
java.lang.NoClassDefFoundError: arduino_java2/Main
Caused by: java.lang.ClassNotFoundException: arduino_java2.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
Java Result: 1

Gracias por contestar

Hernaldo Alvarez dijo...

Problema resuleto gracias.....