You are on page 1of 4

5/2/2014

Arduino y Matlab

5th January 2013

Arduino y Matlab
ARDUINO UNO + MATLAB

INTRODUCCIN

Aunque este blog est dedicado a las aplicaciones de ingeniera mecatrnica utilizando Plataformas Libres, para empezar se ha incluido en la temtica, la interconexin de la tarjeta Arduino UNO R3, para ser manejada desde el entorno Matlab, por ser este uno de los ms utilizados en el mbito acadmico. Ms adelante, conforme vaya investigando y experimentando, expondr la forma de hacer conexin de Arduino con otros entornos o lenguajes. Actualmente, adems de Matlab, me encuentro experimentando con JAVA y Python. Aunque ya existen muchos sitios donde se orienta acerca del trabajo de interconexin entre Arduino y diferentes entornos de programacin, incluyendo los aqu mencionados, el objetivo de este blog, es servir de apoyo acadmico al contenido y desarrollo temtico de las asignaturas relacionadas con la ingeniera mecatrnica para los estudiantes de la carrera en la Universidad de Boyac. Es decir, el contenido est orientado de acuerdo con los lineamientos de las asignaturas y polticas del proyecto educativo del programa, de tal forma que pueda contener en un mismo espacio virtual, todo lo necesario para que los estudiantes, puedan llevar a cabo sus proyectos y aprendizaje con la visin que la institucin viene buscando. He encontrado en la pgina de Mathworks, dedicada al soporte para Arduino, un paquete que contiene entre otros, un "sketch" escrito por Gianpiero Campa(Siga este enlace)
[http://www.mathworks.com/matlabcentral/fileexchange/32374-matlab-support-package-for-arduino-aka-arduinoiopackage] , que es otra alternativa al estndar Firmata que tambin permite conectar la tarjeta a diferentes

entornos y lenguajes. La ventaja que he encontrado en este "Sketch" respecto a "Firmata" est en que es posible configurar velocidades superiores a los 57600Kbps. Sin embargo, aunque el contenido est dirigido principalmente a los estudiantes del programa de Ingeniera Mecatrnica de la U. de Boyac, puede resultar til para otros interesados.

INSTALANDO LA TARJETA CON INTERFAZ A MATLAB

Para conectar la tarjeta Arduino UNO, como si fuera una tarjeta de interface o de transferencia de datos, con el IDE MATLAB, siga los siguientes pasos: 1. Descarge el archivo ArduinoIO.zip. Tambin est disponible en esta carpeta de Google Docs, que comparto con ustedes. 2. Descomprimir el archivo en la carpeta deseada en el equipo. Preferiblemente en carpeta Matlab, que est en Mis Documentos. De esta forma, los M-files, quedan disponibles inmediatamente, en el
http://ingenieriamecatronicaudeboyaca.blogspot.mx/2013/01/arduino-y-matlab.html 1/4

5/2/2014

Arduino y Matlab

3.

4.

5. 6. 7. 8.

directorio corriente del entorno de Matlab. Asumiendo que ya tiene instalado el IDE ARDUINO, abra desde este entorno, el archivo adiosrv.pde que est dentro de la carpeta adiosrv , que a su vez est dentro de la carpeta pde , una de las que se descomprimi. Cargue en la tarjeta, este programa. Este sketch, contiene el cdigo necesario para que la tarjeta Arduino escuche los comandos ejecutados desde Matlab, ejecute instrucciones, interacte con dispositivos conectados a la tarjeta y transfiera datos desde sensores y dispositivos, hacia Matlab. Una vez cargado el programa en la tarjeta Arduino, es recomendable cerrar el IDE ARDUINO, para que Matlab pueda acceder al puerto serial que se abre cuando se conecta la tarjeta. Abrir el programa Matlab. En la carpeta del Current Directory, debe estar el m-file install_arduino. Ejecutar para que se realice la comunicacin. Asegrese que la tarjeta Arduino est conectada y activa. Verifique el puerto COM utilizado por la tarjeta para la configuracin de la misma. El nmero de puerto se puede consultar accediendo a: Mi PC/Propiedades/Hardware/Administrador de Dispositivos. En esta ventana, ubique los puertos COM disponibles (COM & LPT), expanda el men para ver en que puerto COM est conectado Arduino UNO R3.

CONFIGURACIN DE LOS PINES DE LA TARJETA DESDE MATLAB Para interactuar con la tarjeta, desde el entorno de Matlab; primero se debe crear un objeto para acceder a la informacin de puerto de comunicacin a la que est conectada la tarjeta. Se hace con la lnea de comando, de la siguiente forma: cIO = arduino(COM3) Entre parntesis, figura el puerto serial al que se conect la Arduino, como se indica en el paso 8. de la seccin anterior. En este ejemplo COM3, pero puede ser cualquier otro valor. Al ejecutar la lnea anterior en la ventana de comandos, se inicia una conexin y aparecer en pantalla, texto informativo sobre la configuracin de entradas, salidas y estado actual de los pines. Los pines de la tarjeta o borneras de conexin, que permiten conectar el sistema a dispositivos externos, pueden configurarse como entradas o como salidas y a su vez, en forma digital o anloga. CONFIGURACIN DE LOS PINES El procedimiento del objeto cIO para configurar los pines como entradas o como salidas es pinMode. A continuacin los ejemplos: cIO.pinMode(13, OUTPUT) Este comando, configura el pin 13 de la tarjeta Arduino, como salida digital. cIO.pinMode(10, INPUT) Configura el pin 10, como entrada digital. cIO.pinMode(11) Muestra el estado, de entrada o salida del pin 11

http://ingenieriamecatronicaudeboyaca.blogspot.mx/2013/01/arduino-y-matlab.html

2/4

5/2/2014

Arduino y Matlab

cIO.pinMode Muestra el listado del estado de cada uno de los pines. LECTURA DE ENTRADA DIGITAL Si un pin ha sido configurado como entrada, el comando para leerlo es: cIO.digitalRead(10) que permite leer el estado alto 1 o bajo 0 del pin 10. val = cIO.digitalRead(10) Asigna el valor booleano presente en la entrada pin 10, a la variable val. ESCRITURA DIGITAL DE SALIDA Si un pin ha sido configurado como salida, para colocar un estado alto 1 o bajo 0 en dicha salida, se usa el comando: cIO.digitalWrite(13, 1) Pone en alto el pin 13. cIO.digitalWrite(13, 0) Pone el pin 13 en estado bajo. LECTURA DE ENTRADA ANLOGA Las entradas anlogas, son pines de la tarjeta Arduino, que pueden recibir voltajes en un rango de 0 a 5 voltios. tiles cuando se requiere un sensor que represente el valor de una variable anloga, como por ejemplo: la temperatura. Suministran un valor entero entre 0 y 1023, proporcional al valor de voltaje de la entrada anloga. El comando para leer es: cIO.analogRead(5) Muestra el valor presente en la entrada anloga 5, como un nmero entero entre 0 y 1023. lect = cIO.analogRead(1) Asigna el valor entero presente en la entrada anloga 1, a la variable lect, como un nmero entero entre 0 y 1023 ESCRITURA EN SALIDA ANLOGA Para asignar un valor anlogo a un pin de salida, se sigue el siguiente formato: cIO.analogWrite(3, 200) El primer argumento de la funcin o mtodo, es el pin anlogo (Slo se pueden usar los pines 3, 5, 6, 9, 10, 11) y el segundo argumento, un valor de 0 a 255, proporcional al voltaje de salida presente en ese pin.

http://ingenieriamecatronicaudeboyaca.blogspot.mx/2013/01/arduino-y-matlab.html

3/4

5/2/2014

Arduino y Matlab

Publicado 5th January 2013 por OscarB Etiquetas: Arduino, Matlab


0

Add a comment

Introduce tu comentario...

Comentar como:

Cuenta de Google

Publicar

Vista previa

http://ingenieriamecatronicaudeboyaca.blogspot.mx/2013/01/arduino-y-matlab.html

4/4

You might also like