Академический Документы
Профессиональный Документы
Культура Документы
MECÁNICA
INSTRUMENTACIÓN MECATRÓNICA
LABORATORIO
INTEGRANTE:
JERINTHON SANTILLÁN
NRC: 5587
TEMA:
ARDUINO: ENTRADAS Y SALIDAS DIGITALES
ING. DAVID CESAR LOZA MATOVELLE
2
ÍNDICE DE ILUSTRACIONES
Ilustración 1-Tipos de entradas y salidas ......................................................................................................5
Ilustración 2-Montaje físico de un isntrumento virutal .................................................................................8
Ilustración 3-LabVIEW como utilizado como instrumento virtual ...............................................................8
Ilustración 4-Esquema para la entrada virutal en PROTEUS .......................................................................9
Ilustración 5-Seleccionar ubicación del binario compilado de arduino ......................................................10
Ilustración 6-Seleccionar ubicación del binario compilado de Arduino .....................................................10
Ilustración 7-Diagrama de bloques para la entrada digital ..........................................................................11
Ilustración 8-Panel frontal de la entrada digital ..........................................................................................11
Ilustración 9-Programa utilizado para entrada digital .................................................................................12
Ilustración 10-Consideraciones para la exportación del archivo de binarios compilados ...........................12
Ilustración 11-Consideraciones para subir el programa Arduino de entradas digitales ...............................13
Ilustración 12-Esquema para la salida virtual en PROTEUS ......................................................................13
Ilustración 13-Diagrama de bloques para la salida digital ..........................................................................14
Ilustración 14-Panel frontal de la salida digital ..........................................................................................14
Ilustración 15-Programa utilizado para salida digital .................................................................................15
Ilustración 16-Consideraciones para subir el programa Arduino de salida digital ......................................15
Ilustración 17-Simulación de entrada digital, con botón presionado. .........................................................16
Ilustración 18-Simulación con entrada digital, con botón sin presionar. ....................................................17
Ilustración 19-Simulación de salida digital, con LED indicador encendido. ..............................................18
Ilustración 20-Simulación de salida digital, con LED indicador apagado. .................................................18
Ilustración 21-Implementación de entrada digital, con botón presionado. ..................................................19
Ilustración 22-Implementación con entrada digital, con botón sin presionar. .............................................20
Ilustración 23-Simulación de salida digital, con LED indicador encendido. ..............................................21
Ilustración 24--Simulación de salida digital, con LED indicador apagado. ................................................22
3
TEMA
Entradas y Salidas digitales con Arduino
OBJETIVOS
Principal
• Implementar el uso de entradas y salidas digitales mediante el uso de Arduino
como receptor y emisor de señal, y LabVIEW como instrumento virtual.
Específicos
• Simular y comprobar el funcionamiento de una entrada digital real mediante un
pulsador, hacia una salida virtual en un LED de LabVIEW.
• Simular y comprobar el funcionamiento de una entrada virtual con un pulsador
generado por LabVIEW, hacia una salida digital real mediante un diodo LED.
MARCO TEÓRICO
Introducción
La sección de entradas mediante el interfaz, adapta y codifica de forma comprensible para
la CPU las señales procedentes de los dispositivos de entrada o captadores.
Hay dos tipos de entradas:
• Entradas digitales.
• Entradas analógicas.
La sección de salida también mediante interfaz trabaja de forma inversa a las entradas, es
decir, decodifica las señales procedentes de la CPU, y las amplifica y manda con ellas los
dispositivos de salida o actuadores como lámparas, relés... aquí también existen unos interfaces
de adaptación a las salidas de protección de circuitos internos. (Autómatas programables, 2012)
Hay dos tipos de salidas:
• Salidas digitales.
• Salidas analógicas.
4
Ilustración 1-Tipos de entradas y salidas
Entradas digitales
Los módulos de entrada digitales permiten conectar al autómata captadores de tipo todo o
nada como finales de carrera pulsadores...
Los módulos de entrada digitales trabajan con señales de tensión, por ejemplo, cuando por
una vía llegan 24 voltios se interpreta como un "1" y cuando llegan cero voltios se interpreta
como un "0". (Autómatas programables, 2012)
El proceso de adquisición de la señal digital consta de varias etapas.
Salidas digitales
Un módulo de salida digital permite al autómata programable actuar sobre los preactuadores
y actuadores que admitan ordenes de tipo todo o nada.
El valor binario de las salidas digitales se convierte en la apertura o cierre de un relé interno
del autómata en el caso de módulos de salidas a relé.
En los módulos estáticos (bornero), los elementos que conmutan son los componentes
electrónicos como transistores o triacs, y en los módulos electromecánicos son contactos de relés
internos al módulo.
Los módulos de salidas estáticos al suministrar tensión, solo pueden actuar sobre elementos
que trabajan todos a la misma tensión, en cambio los módulos de salida electromecánicos, al ser
libres de tensión, pueden actuar sobre elementos que trabajen a tensiones distintas. (Autómatas
programables, 2012)
El proceso de envío de la señal digital consta de varias etapas:
• Puesta en forma.
• Aislamiento.
• Circuito de mando (relé interno).
5
• Tratamiento cortocircuitos.
6
Función analogRead(pin)
• Lee el valor desde el pin analógico especificado con una resolución de 10 bits. Esta
función solo funciona en los pines analógicos (0-5). El valor resultante es un entero de 0 a
1023. Los pines analógicos, a diferencia de los digitales no necesitan declararse
previamente como INPUT o OUTPUT.
Función analogWrite(pin, value)
• Escribe un valor pseudo-analógico usando modulación por ancho de pulso (PWM) en un
pin de salida marcado como PWM. Esta función está activa para los pines 3, 5, 6, 9, 10,
11. Ej analogWrite(pin, v); // escribe 'v' en el 'pin' analógico. Puede especificarse un valor
de 0 - 255. Un valor 0 genera 0 V en el pin especificado y 255 genera 5 V. Para valores de
0 a 255, el pin alterna rápidamente entre 0 V y 5 V, cuanto mayor sea el valor, más a
menudo el pin se encuentra en HIGH (5 V). Por ejemplo, un valor de 64 será 0 V tres
cuartas partes del tiempo y 5 V una cuarta parte. Un valor de 128 será 0 V la mitad del
tiempo y 5 V la otra mitad. Un valor de 192 será 0 V una cuarta parte del tiempo y 5 V
tres cuartas partes. (Manual de programación de Arduino, 2015)
Instrumentación virtual
El concepto de instrumento virtual, es definido como, "un instrumento que no es real, se
ejecuta en una computadora y tiene sus funciones definidas por software." (National Instruments,
2001).
Arduino + LabVIEW
Tanto National Instruments (desarolladores de LabVIEW) como MathWorks
(desarrolladores de MATLAB) han presentado recientemente toolkits que permiten controlar un
microprocesador Arduino directamente desde el programa, sin necesidad de programar nada en el
Arduino excepto un código estándar que ellos te proporcionan y permite la comunicación. Una
vez hecho, el Arduino pasa a ser controlado directamente desde el PC.
7
Ilustración 2-Montaje físico de un isntrumento virutal
National Instruments, viendo que mucha gente tiene acceso a LabVIEW pero no a sus
carísimas tarjetas de captura (DAQ), ha decidido crear una interfaz para Arduino, que permita
usar las funciones de Arduino directamente desde LabVIEW para crear así instrumentos virtuales
(VI). Por ejemplo, el que presentamos a continuación, que permite tanto leer de una entrada
analógica como escribir una señal analógica PWM. La interfaz gráfica, puede ser: (García, 2011)
DESARROLLO DE LA PRÁCTICA
Materiales y recursos utilizados
Software
o LabVIEW con módulo VISA (para transmisión de datos serial)
o IDE Arduino
o Proteus con librería simulino o Arduino
o Virtual serial port driver (para manejo de puertos virtuales)
8
Hardware
• Entrada digital
o Arduino Micro Pro con su cable serial
o Fuente de voltaje de 3.6V
o Pulsador tipo botón biestable
o Resistor de 10K Ω
• Salida digital
o Arduino UNO con su cable serial
o Diodo LED
o Resistor de 220 Ω
Entrada digital
Simulación en Proteus
Tomar en cuenta tener las librerías Simulino o Arduino instaladas correctamente.
• Componentes utilizados
o ARDUINO NANO: microcontrolador usado para simularlo como entrada digital.
o COMPIM: Interface de puerto serial virtual con todas las terminales necesarias para
transmisión de datos.
o BUTTON: pulsador para enviar la señal digital a través de un circuito simple.
o RES: resistencia para controlar la corriente del circuito.
o TERMINAL VCC y GND, para alimentación del circuito.
o VIRTUAL TERMINAL: para la visualización de datos del puerto virtual.
Se arma el esquema de la siguiente manera:
• Configuración adicional.
9
o Una vez realizado el programa Arduino como binario compilado, seleccionar la ubicación del
archivo .hex, como se muestra en la ilustración 5
o Después de crear los puertos virtuales [COM1 →COM2], utilizando el software “Virtual
serial port driver”, seleccionarlo como se indica en la ilustración 5, además de inicializar el
puerto en 9600.
Programación en LabVIEW
Tomar en cuenta tener el módulo VISA correctamente instalado.
10
• Diagrama de bloques
• Panel frontal
Programación en Arduino
En la ilustración 9 se muestra el programa utilizado para la entrada digital, el cual está
debidamente comenta además de utilizar una salida de voltaje para alimentación del circuito del botón, el
cual no se utilizó en la implementación ya que se usó una fuente externa.
11
Ilustración 9-Programa utilizado para entrada digital
12
Ilustración 11-Consideraciones para subir el programa Arduino de entradas digitales
Salida digital
Simulación en Proteus
• Componentes utilizados
o ARDUINO NANO: microcontrolador usado para simularlo como entrada digital.
o COMPIM: Interface de puerto serial virtual con todas las terminales necesarias para
transmisión de datos.
o LED-BIGY: Indicador LED para percibir la salida digital.
o RES: resistencia para controlar la corriente del circuito.
Se arma el esquema de la siguiente manera:
• Configuración adicional.
o Usar la misma configuración adicional utilizada para la entrada digital.
13
Programación en LabVIEW
Tomar en cuenta tener el módulo VISA correctamente instalado.
• Diagrama de bloques
• Panel frontal
14
Programación en Arduino
En la ilustración 15 se muestra el programa utilizado para la entrada digital, el cual está
debidamente comentado.
15
SIMULACIÓN
Para una prueba más detallada de la implementación VER video anexado.
Entrada digital
Simulación usando los puertos seriales virtuales, donde el terminal virtual de Proteus usa
el puerto COM1, mientras que LabVIEW usa el puerto COM2.
Cuando se presiona el botón simulado, el cual funciona como entrada digital, este envía
una señal de “1” lógico por la comunicación de puertos seriales virtuales lo que permite que
LabVIEW detecte el botón pulsado y encienda el LED virtual, según la programación
preestablecida.
Cuando el botón simulado no está presionado se envía una señal de “0” lógico por la
comunicación de puertos seriales virtuales lo que permite que LabVIEW detecte el botón sin
pulsar y NO encienda el LED virtual, según la programación preestablecida.
16
Ilustración 18-Simulación con entrada digital, con botón sin presionar.
Salida digital
Simulación usando los puertos seriales virtuales, donde el terminal virtual de Proteus usa
el puerto COM1, mientras que LabVIEW usa el puerto COM2.
Cuando se presiona el botón generado en LabVIEW, este envía una señal por el puerto
serial, el cual detecta un cambio de estado, según la programación preestablecida, lo cual
produce una salida digital en el pin 6 del Arduino, la cual puede ser percibida con la utilización
de un LED indicador, que se enciende mientras el botón siga presionado.
17
Ilustración 19-Simulación de salida digital, con LED indicador encendido.
Cuando se deja de presionar el botón generado en LabVIEW, este envía una señal por el
puerto serial, el cual detecta un cambio de estado, según la programación preestablecida, lo cual
deja de enviar una salida digital en el pin 6 del Arduino, la cual puede ser percibida con la
utilización de un LED indicador, que se apaga hasta que el botón se vuelva a presionar.
18
IMPLEMENTACIÓN CON ARDUINO
Para una prueba más detallada de la implementación VER video anexado.
Entrada digital
Implementación usando puerto serial, donde el terminal de Arduino Micro Pro hacia
LabVIEW usa el puerto COM12.
Cuando se presiona el botón real, el cual funciona como entrada digital, este envía una
señal de “1” lógico por la comunicación de puerto lo que permite que LabVIEW detecte el botón
pulsado y encienda el LED virtual, según la programación preestablecida.
19
Cuando el botón real no está presionado se envía una señal de “0” lógico por la
comunicación de puerto serial lo que permite que LabVIEW detecte el botón sin pulsar y NO
encienda el LED virtual, según la programación preestablecida.
20
Salida digital
Cuando se presiona el botón generado en LabVIEW, este envía una señal por el puerto
serial, el cual detecta un cambio de estado, según la programación preestablecida, lo cual
produce una salida digital en el pin 6 del Arduino, la cual puede ser percibida con la utilización
de un LED indicador, que se enciende mientras el botón siga presionado.
21
Cuando se deja de presionar el botón generado en LabVIEW, este envía una señal por el
puerto serial, el cual detecta un cambio de estado, según la programación preestablecida, lo cual
deja de enviar una salida digital en el pin 6 del Arduino, que puede ser percibida con la utilización
de un LED indicador, que se apaga hasta que el botón se vuelva a presionar.
22
CONCLUSIONES
• Se simuló la comunicación mediante puerto serial entre una entrada digital, con un circuito
simple formado por un botón y una resistencia, además del microcontrolador Arduino Mini
simulado en Proteus, hacia una salida virtual usando una luz indicadora en LabVIEW,
además se implementó la entrada digital físicamente usando el esquema de circuito
simulado con un microcontrolador Arduino Micro Pro, obteniendo una correcta transmisión
de datos de entrada mediante el puerto serial en ambas aplicaciones.
• Se simuló la comunicación mediante puerto serial entre una salida virtual usando un botón
generado en LabVIEW, hacia una salida digital, con un circuito simple formado por un
LED indicador, una resistencia y un microcontrolador Arduino Mini simulado en Proteus,
además se implementó la salida digital físicamente usando el esquema de circuito simulado
con un microcontrolador Arduino UNO, obteniendo una correcta transmisión de datos de
salida mediante el puerto serial en ambas aplicaciones.
RECOMENDACIONES
• Para la implementación física del circuito de entrada digital, se recomienda usar al propio
microcontrolador como fuente para la alimentación del circuito que envía la señal del
pulsador, definiendo un pin como salida digital constante, para que en la entrada digital
exista una entrada constante de 5V, y así evitar posibles sobre picos que pueden dañar el
microcontrolador.
• Para la implementación física del circuito de salida digital, NO se recomienda el uso del
microcontrolador Arduino Micro Pro, debido a problemas al momento del uso del bloque
“VISA write”, el cual genera un error en la salida de datos por el puerto serial.
BIBLIOGRAFÍA
Autómatas programables. (2012). Scehu. Obtenido de
http://www.sc.ehu.es/sbweb/webcentro/automatica/WebCQMH1/PAGINA%20PRINCIPAL/PLC/
ESTRUCTURAS/ESTRUCTURA%20INTERNA/SECCION%20DE%20ES/seccion_de_es.htm
García, J. (27 de julio de 2011). We choose the moon. Obtenido de
https://wechoosethemoon.es/2011/07/27/arduino-labview-instrumentos-virtuales/
López, A. (27 de junio de 2020). IO Digitales. Quito, Pichincha, Ecuador.
Manual de programación de Arduino. (2015). DFISTS. Obtenido de
http://dfists.ua.es/~jpomares/arduino/page_10.htm
Pinkback. (22 de octubre de 2017). Aprendiendo arduino. Obtenido de
https://aprendiendoarduino.wordpress.com/2017/10/22/entradas-y-salidas-digitales-arduino/
23