Matlab+ Arduino
Matlab+ Arduino
Facultad de Ingeniería en
Electrónica y Comunicaciones
Experiencia Educativa:
Señales y Sistemas
Presenta:
Azuara Vargas Julio Cesar
Maestro:
Luis Javier Morales Mendoza
Poza Rica de Hgo, ver. 10/03/2023
Introducción
Una DAQ actúa como la interfaz entre una PC y variables físicas [1]. Su propósito principal es digitalizar
las señales proporcionadas por sensores que registran los cambios de variables como temperatura,
humedad, sonido, entre otras. Lo anterior es con la finalidad de que puedan ser interpretadas por una PC;
para su visualización, generar bases de datos o controlar procesos. Los tres subsistemas que, en general,
componen a un dispositivo DAQ son; 1) circuito acondicionador de señales, 2) convertidor analógico-
digital (ADC) y 3) bus de comunicación con una PC.
El recurso de hardware embebido Arduino, es una plataforma electrónica de hardware y software abierto
[2], que incorpora un microcontrolador reprogramable con entradas y salidas definidas como analógicas
o digitales. Por ser un recurso libre, se han diseñado una gran cantidad de aplicaciones en diferentes áreas,
por mencionar algunas a saber: medicina, robótica, entretenimiento, automotriz. La popularidad de
Arduino ha sido tal que, empresas como MathWorks, desarrolladora de Matlab, ha incluido herramientas
para la comunicación y programación de Arduino en su software. En la Figura 1, se muestra, mediante un
diagrama a bloques, la conexión que se realiza para lograr la comunicación entre Arduino y Matlab-
Simulink.
Instalación de complemento en Matlab para Arduino
Para realizar la comunicación con el hardware embebido Arduino se debe instalar en Matlab el Add-on
necesario. A continuación, se describen dos formas para realizar dicha instalación.
Es recomendable crear una carpeta de instalación para el Add-on de arduino. Posterior a seleccionar la
carpeta de instalación y ejecutar el archivo, solo basta con aceptar los términos de licencia e instalar, ver
Figura 3.
Tras realizar los pasos anteriores y continuar, aceptar los términos de licencia para concluir la instalación.
En la Figura 4 se muestran los pasos anteriormente descritos.
Una vez que se ha instalado con éxito el Add-on, se configuran los parámetros necesarios para lograr la
comunicación entre el hardware y software. A continuación, se describen los pasos a seguir para lleva a
cabo dicha configuración.
2. En el menú Tools.
4. Seleccionar Options.
Tras llevar acabo el paso número 4, se desplegará la ventana que se muestra en la Figura 6.
1. La tarjeta Arduino con la que se trabajará, para este caso, se esta utilizando un Arduino
Mega 2560. Debido a que permite realizar las lecturas en tiempo real.
En un archivo nuevo de Simulink, en el menú de librerías seleccionar Simulink Support Package for
Arduino Hardware, posteriormente elegir Common así se podrán seleccionar los diferentes bloques
disponibles para la comunicación con Arduino ( Figura 7).
Antes de presentar el circuito, se llevará a cabo una explicación de los bloques necesarios para lograr la
una correcta adquisición de datos.
entrada por la que se recibirá la señal analógica. Entrando a las propiedades del bloque,
2. En los bloques propios de Simulink seleccionar Data Type Conversion, este bloque
3. Seleccionar Discrete Filter, este bloque permitirá capturar una señal con mejor
4. Mediante los bloques de multiplicar y dividir se realiza la conversión para obtener las
4. Ejecutar el programa.
El circuito eléctrico de la Figura 11 fue realizado en Multisim [4] con los parámetros que se muestran en
dicha figura.
Con los valores de Resistencia (R) y Capacitor (C) propuestos se obtiene la siguiente constante de tiempo:
para que un capacitor se cargue o descargue por completo se tiene que:
Tras llevar a cabo la simulación en Multisim se puede comprobar que el tiempo de carga y descarga se
lleva a cabo en el tiempo calculado, cabe mencionar que el interruptor se cambió a la posición de descarga
a los 135 s, ver Grafica 1.
Para llevar a cabo la adquisición de datos se llevó a la práctica el circuito mostrado en la Figura 11. El
programa utilizado en Matlab-Simulink es el mostrado en la Figura 9, es necesario conectar en común las
tierras de ambos circuitos y la lectura de voltaje se toma del nodo entre la resistencia y el capacitor. En la
Grafica 2, se muestra el comportamiento en tiempo real de carga y descarga.
Haciendo una comparativa de las gráficas 1 y 2, se puede comprobar que, aunque existen pequeñas
diferencias entre ellas, se logra una buena aproximación con los resultados numéricos de la ecuación (2).
En https://goo.gl/NFuEYd se han compartido los archivos de simulación y de la adquisición de datos.
Referencias
2. S. F. Barrett (2013) Arduino Microcontroller Processing for Everyone! U.S: Morgan &
Mlaypool Publishers.
de https://www.boletin.upiita.ipn.mx