Sei sulla pagina 1di 7

Universidad Técnica del Norte

EL ARDUINO
Sandoval Sara, David Vásquez
sbsandovals@utn.edu.ec;jdvasquezm@utn.edu.ec

Resumen— En este artículo se analizará el Arduino, historia, Los principales responsables de la idea y diseño de Arduino fueron
funcionamiento, especificaciones de hardware y software, tipos de Massimo Banzi, David Cuartielles, David Mellis, Tom Igoe y Gianluca
Arduino, tipo de conexiones, aplicaciones, interfases de programación, Martino.
etc.
Lo que nos facilita en el diseño de proyectos electrónicos.
B. FUNCIONAMIENTO
El Arduino es una placa basada en un microcontrolador ATMEL.
Abstract— This article will analyze the Arduino, history,
functioning, hardware and software specifications, types of
Los microcontroladores son circuitos integrados en los que se
microcontrollers, type of connections, applications, programming
pueden grabar instrucciones, las cuales las escribes con el lenguaje
interfaces, which facilitates us in the design of electronic projects.
de programación que puedes utilizar en el entorno Arduino IDE.
Estas instrucciones permiten crear programas que interactúan con
Palabras clave: los circuitos de la placa.
microcontrolador, hardware, software, interfases de
programación. El microcontrolador de Arduino posee lo que se llama una interfaz
de entrada, que es una conexión en la que podemos conectar en la
placa diferentes tipos de periféricos. La información de estos
I. INTRODUCCIÓN
periféricos que conectes se trasladará al microcontrolador, el cual
se encargará de procesar los datos que le lleguen a través de ellos.
Arduino es una herramienta la cual realiza que los ordenadores puedan
sentir y controlar el mundo físico a través de tu ordenador personal. Es
una plataforma de desarrollo basada en una placa electrónica de Las funciones de Arduino, como ocurre con la mayoría de las placas
hardware y software libre que incorpora un microcontrolador re- de microcontroladores, se pueden resumir en 3 factores:
programable y una serie de pines hembra, diseñada para facilitar el uso
de la electrónica en proyectos multidisciplinares. 1. Cuenta con una interfaz de entrada. Esta puede estar
directamente unida a los periféricos, o conectarse a ellos a
El hardware libre son los dispositivos cuyas especificaciones y través de puertos.
diagramas son de acceso público, de manera que cualquiera puede
replicarlos. Esto quiere decir que Arduino ofrece las bases para que 2. La interfaz de entrada tiene como objetivo trasladar la
cualquier otra persona o empresa pueda crear sus propias placas, información al microcontrolador. El microcontrolador es la
pudiendo ser diferentes ellas, pero igualmente funcionales al partir de pieza que se encarga de procesar esos datos. Además, varía
la misma base. dependiendo de las necesidades del proyecto en el que se
desee usar la placa, y existe una gran variedad de fabricantes
El software libre son los programas informáticos cuyo código es y versiones disponibles.
accesible por cualquiera para que quien quiera pueda utilizarlo y
modificarlo. Arduino ofrece la plataforma Arduino IDE (Entorno de 3. También cuenta con interfaz de salida. Este se encarga de
Desarrollo Integrado), que es un entorno de programación con el que llevar la información procesada a los periféricos autorizados
cualquiera puede crear aplicaciones para las placas Arduino, de manera de hacer el uso final de esos datos. En algunos casos puede
que se les puede dar todo tipo de utilidades. tratarse de otra placa en la que se centraliza y procesa la
información de forma totalmente renovada, o sencillamente,
puede ser una pantalla o un altavoz encargado de mostrar la
II. DESARROLO DE CONTENIDOS versión final de los datos.

A. HISTORIA El tipo de periféricos que puedas utilizar para enviar datos al


microcontrolador depende en gran medida de qué uso le estés pensando
Arduino Nació en el año 2005 el Instituto de Diseño Interativo de Ivrea dar. Pueden ser cámaras para obtener imágenes, teclados para
(Italia). Arduino apareció por la necesidad de contar con un dispositivo introducir datos, o diferentes tipos de sensores.
para utilizar en aulas que fuera de bajo costo. La idea original fue, También cuenta con una interfaz de salida, que es la que se encarga de
fabricar una placa para uso interno de la escuela. llevar la información que se ha procesado en el Arduino a otros
periféricos. Estos periféricos pueden ser pantallas o altavoces en los
que reproducir los datos procesados, pero también pueden ser otras
Sin embargo, el instituto se vio obligado a cerrar sus puertas placas o controladores.
precisamente en 2005. Ante la perspectiva de perder todo el proyecto
Arduino en el proceso, se decidió liberarlo y abrirlo al público para que Arduino es un proyecto y no un modelo concreto de placa, lo que quiere
todo el mundo pudiese participar en la evolución del proyecto, decir que compartiendo su diseño básico te puedes encontrar
proponer mejoras y sugerencias. con diferentes tipos de placas. Las hay de varias formas, tamaños y
colores para a las necesidades del proyecto en el que estés trabajando,
Universidad Técnica del Norte
las hay sencillas o con características mejoradas, Arduino orientado al Shields
Internet de las Cosas o la impresión 3D y, por supuesto, dependiendo Se llama así a las placas que se insertan sobre Arduino a modo de
de estas características te encontrarás con todo tipo de precios. escudo ampliando sus posibilidades de uso. En el mercado existen
infinidad de shields para cada tipo de Arduino. Algunas de las más
Además, las placas Arduino también cuentan con otro tipo de comunes son las de Ethernet, Wi-Fi, Ultrasonidos, Pantallas LCD,
componentes llamados Escudos (Shields) o mochilas. Se trata de una relés, matrices LED’s, GPS.
especie de placas que se conectan a la placa principal para añadirle una
infinidad de funciones, como GPS, relojes en tiempo real, conectividad Arduino está constituido en el hardware por un micro controlador
por radio, pantallas táctiles LCD, placas de desarrollo, y un larguísimo principal llamado Atmel AVR de 8 bits (que es programable con un
etcétera de elementos. lenguaje de alto nivel), presente en la mayoría de los modelos de
Arduino
C. ESPECIFICACIONES DE HARDWARE Y
SOFTWARE El HW de Arduino es básicamente una placa con un microcontrolador.
Un microcontrolador (abreviado µC, UC o MCU) es un circuito
integrado programable, capaz de ejecutar las órdenes grabadas en su
Hardware memoria. Está compuesto de varios bloques funcionales, los cuales
cumplen una tarea específica. Un microcontrolador incluye en su
interior las tres principales unidades funcionales de una computadora:
unidad central de procesamiento, memoria y periféricos de
entrada/salida.

Características de un Microcontrolador:

 Velocidad del reloj u oscilador


 Tamaño de palabra
 Memoria: SRAM, Flash, EEPROM, ROM, etc..
 I/O Digitales
 Entradas Analógicas
Fig. 1. Partes de un Arduino.  Salidas analógicas (PWM)
 DAC (Digital to Analog Converter)
Entradas  ADC (Analog to Digital Converter)
Son los pines de nuestra placa que podemos utilizar para hacer lecturas.  Buses
En la placa Uno son los pines digitales (del 0 al 13) y los analógicos  UART
(del A0 al A5).
 Otras comunicaciones.
Salidas
Los pines de salidas se utilizan para el envío de señales. En este caso
los pines de salida son sólo los digitales (0 a 13).

Otros pines
También tenemos otros pines como los GND (tierra), 5V que
proporciona 5 Voltios, 3.3V que proporciona 3.3 Voltios, los pines
REF de referencia de voltaje, TX (transmisión) y RX (lectura) también
usados para comunicación serial, RESET para resetear, Vin para
alimentar la placa y los pines ICSP para comunicación SPI.

Alimentación
Como hemos visto el pin Vin sirve para alimentar la placa pero lo más
normal es alimentarlo por el jack de alimentación usando una tensión
de 7 a 12 Voltios. También podemos alimentarlo por el puerto USB
pero en la mayoría de aplicaciones no lo tendremos conectado a un Fig. 2. Hardware del Arduino.
ordenador.
Software
Comunicación
En nuestros tutoriales nos comunicaremos con Arduino mediante USB
para cargar los programas o enviar/recibir datos. Sin embargo no es la El software de Arduino es un IDE, entorno de desarrollo integrado
única forma que tiene Arduino de comunicarse. Cuando insertamos una (siglas en inglés de Integrated Development Environment). Es un
shield ésta se comunica con nuestra placa utilizando los pines ICSP programa informático compuesto por un conjunto de herramientas de
(comunicación ISP), los pines 10 a 13 (también usados para programación.
comunicación ISP), los pines TX/RX o cualquiera de los digitales ya
que son capaces de configurarse como pines de entrada o salida y El IDE de Arduino es un entorno de programación que ha sido
recibir o enviar pulsos digitales. empaquetado como un programa de aplicación; es decir, consiste en un
editor de código, un compilador, un depurador y un constructor de
Universidad Técnica del Norte
interfaz gráfica (GUI). Además incorpora las herramientas para cargar o Pines de entradas análogas: 6
el programa ya compilado en la memoria flash del hardware.
o Corriente DC por cada pin I/O: 40 mA
o Corriente DC en el pin de 3.3 V: 50 mA

o Memoria Flash: 32 KB (ATmega328) de los cuales 0.5 KB


son utilizados por el bootloader
o SRAM: 2 KB (ATmega328)
o EEPROM: 1 KB (ATmega328)
o Velocidad de reloj: 16 MHz

 Arduino MEGA 2560

Fig. 3. Sofware del Arduino. Fig. 5. Arduino Mega 2560.

Es destacable desde la aparición de la versión 1.6.2 la incorporación de o Microcontrolador: ATmega2560


la gestión de librerías y la gestión de placas muy mejoradas respecto a
la versión anterior y los avisos de actualización de versiones de o Voltaje de funcionamiento: 5 V
librerías y cores.
o Pines I/O digitales: 54 (de los cuales 15 proveen salida
D. TIPOS DE ARDUINO
PWM)
Siendo Arduino una de las primeras plataformas microcontroladoras
open source en el mundo, era de esperar que se desarrollaran varias o Pines de entradas análogas: 16
versiones de ésta. Muchos principiantes dan sus primeros pasos con el
Arduino UNO, pero a medida que se avanza en el dominio de la o Corriente DC por cada pin I/O: 40 mA
programación y la electrónica, los requerimientos de procesamiento y
número de pines de entrada y salida, aumentan de manera que el UNO o Corriente DC en el pin de 3.3 V: 50 mA
ya no es suficiente para nuestros proyectos.
A continuación, puedes los diferentes modelos oficiales de Arduino: o Memoria Flash: 256 KB de los cuales 8 KB son utilizados
por el bootloader
 Arduino UNO
o SRAM: 8 KB (ATmega328)

o EEPROM: 4 KB (ATmega328)

o Velocidad del reloj: 16 MHz

 Arduino MICRO

Fig. 4. Arduino Uno.

o Microcontrolador: ATmega328
o Voltaje de funcionamiento: 5 V
o Pines I/O digitales: 14 (de los cuales 6 proveen salida Fig. 5. Arduino MICRO.
PWM)
o Microcontrolador: ATmega32u4
Universidad Técnica del Norte

o Voltaje de funcionamiento: 5 V  Arduino LEONARDO

o Pines I/O digitales: 20

o Canales PWM: 7

o Pines de entradas análogas: 12

o Corriente DC por cada pin I/O: 40 mA

o Corriente DC en el pin de 3.3 V: 50 mA

o Memoria Flash: 32 KB (ATmega32u4) de los cuales 4 KB Fig. 7. Arduino LEONARDO.


son utilizados por el bootloader o Microcontrolador: ATmega32u4

o SRAM: 2.5 KB (ATmega32u4) o Voltaje de funcionamiento: 5 V

o EEPROM: 1 KB (ATmega32u4) o Pines I/O digitales: 20

o Velocidad de reloj: 16 MHz o Canales PWM: 7

 Arduino NANO o Pines de entradas análogas: 12

o Corriente DC por cada pin I/O: 40 mA

o Corriente DC en el pin de 3.3 V: 50 mA

o Memoria Flash: 32 KB (ATmega32u4) de los cuales 4 KB


son utilizados por el bootloader

o SRAM: 2 KB (ATmega32u4)

o EEPROM: 1 KB (ATmega32u4)

Fig. 6. Arduino NANO.


o Velocidad de reloj: 16 MHz

o Microcontrolador: ATmega168 o Procesador Linux: Atheros AR9331

o Voltaje de funcionamiento: 5 V o Arquitectura: MIPS @400MHz

o Pines I/O digitales: 14 (de los cuales 6 proveen salida o Ethernet: IEEE 802.3 10/100Mbit/s
PWM)
o WiFi: IEEE 802.11b/g/n
o Pines de entradas análogas: 8
o USB Tipo A: 2.0
o Corriente DC por cada pin I/O: 40 mA
o Lector de tarjeta: sólo Micro-SD
o Memoria Flash: 16 KB de los cuales 2 KB son utilizados
o RAM: 64 MB DDR2
por el bootloader
o Memoria Flash:16 MB
o SRAM: 1 KB
 Arduino YUN
o EEPROM: 512 bytes

 Velocidad de reloj: 16
Universidad Técnica del Norte
Los sensores utilizados en los proyectos que vamos a utilizar
son de salida analógica, es decir proporcionan una variación
de voltaje dentro de un rango (normalmente de 0 a +5V)
dependiendo de lo que varíe la magnitud física medida.
Muchos sensores son resistivos (luz, temperatura, humedad
), es decir que varían su resistencia eléctrica con la magnitud
física, pero mediante un sencillo montaje de divisor de
tensión conseguimos una variación de voltaje apta para
Arduino. Estos montajes los veremos en las prácticas del
manual.
Una vez realizadas las conexiones, si midiéramos la salida
del sensor con un voltímetro nos daría un valor decimal, por
ejemplo, un nivel de luz “intermedio” (rango de 0 a 5V) de
Fig.8 . Arduino YUN. un sensor de luz podría dar 3,3 voltios. Este tipo de
información el microcontrolador no la entiende tal cual, sólo
es capaz de interpretar números binarios (“0” ó “1”) por lo
o Microcontrolador AVR Arduino: ATmega32u4 que para traducir los valores analógicos dispone
internamente de un conversor analógico – digital que hará la
o Voltaje de funcionamiento: 5 V conversión entre los dos sistemas, de forma que podremos
tener valores discretos de la medida de los
o Pines I/O digitales: 20 sensores analógicos.

o Canales PWM: 7 Las entradas digitales son útiles cuando las señales a leer son
valores discretos. Por ejemplo, queremos poner un pulsador
o Pines de entradas análogas: 12 o un interruptor que encienda un led. Hacemos un montaje
que cuando se pulse, entren 5 voltios en el pin digital de
entrada y cuando no se pulse que “entren” 0 voltios. De esta
o Corriente DC por cada pin I/O: 40 mA
manera la lectura del pin digital de entrada será “HIGH” con
5 voltios o “LOW” con 0 voltios.
o Corriente DC en el pin de 3.3 V: 50 mA
Son salidas digitales que simulan una salida analógica. Las
o Memoria Flash: 32 KB (de los cuales 4 KB son utilizados siglas significan Modulación por Ancho de Pulso (Pulse
por el bootloader Width Modulation) o proporcionan una onda cuadrada con
un nivel alto (+5V) de “cierta”duración.
Es muy útil para activar servomotores y llevarlos a una
o SRAM: 2.5 KB
posición determinada o variar la luminosidad de un led. Lo
puedes ver más explicado en la siguiente sección.
o EEPROM: 1 KB
F. BENEFICIOS
o Velocidad de reloj: 16 MHz

E. ENTRADAS Y SALIDAS Bajo costo.


La placa Arduino estándar (Arduino UNO) tiene un valor
aproximado de $17.000(pesos chilenos). Incluso uno mismo la
Mediante los conectores de Arduino correspondientes a las
podría construir(una gran ventaja del hardware libre), con lo que
entradas y salidas podemos comunicar nuestros programas
el precio de la placa seria incluso menor.
con el “mundo exterior”. Si queremos leer el valor de la
magnitud física medida por un sensor, por ejemplo una LDR
Multiplataforma.
que detecta el nivel de luminosidad, lo tendremos que hacer
El software de Arduino se ejecuta en sistemas operativos
conectando el sensor a uno de los pines de entrada (en este
Windows, Macintosh OSX y GNU/Linux. La mayoría de los
caso analógicas) de la tarjeta.
sistemas microcontroladores están limitados a Windows.
De esta forma con una simple instrucción de lectura en el
programa, podremos obtener el valor de la magnitud física.
Entorno de programación simple y claro
Si nuestra intención es actuar o “hacer algo” una vez leído el
El entorno de programación de Arduino es fácil de usar para
valor del sensor, por ejemplo encender un led si el sensor de
principiantes, pero su cientemente flexible para que usuarios
luminosidad detecta oscuridad, tendremos que conectar el
avanzados puedan aprovecharlo también. está convenientemente
actuador (en este caso el led) a un pin de salida que
basado en el entorno de programación Processing.
proporcionará la corriente necesaria para activarlo.
En Arduino las entradas pueden ser analógicas o digitales y
las salidas sólo digitales. Cada pin digital tiene doble función Código abierto y software extensible
entrada o salida. En la zona de configuración del programa El software Arduino está publicado como herramientas de código
hay que indicar explícitamente mediante una instrucción cuál abierto, disponible para extensión por programadores
es función desempeña un determinado pin. experimentados. El lenguaje puede ser expandido mediante
librerias C++, y la gente que quiera entender los detalles técnicos
Entradas Analógicas o digitales pueden hacer el salto desde Arduino a la programación en
lenguaje AVR C en el cual está basado. De forma similar, puedes
añadir código AVR-C directamente en tus programas Arduino si
quieres.
Universidad Técnica del Norte
Código abierto y hardware extensible 2. Juego de sogatira
El Arduino está basado en microcontroladores ATMEGA8 y
ATMEGA168 de Atmel. Los planos para los módulos están Hacer un juego con 7 leds y dos botones. El led central se ilumina y en
publicados bajo licencia Creative Commons, por lo que función de quien más veces pulsa el botón el led encendido se va
diseñadores experimentados de circuitos pueden hacer su propia desplazando hacia él, hasta que gana cuando ha llegado al último led.
versión del módulo, extendiéndolo y mejorándolo. Incluso En el inicio el led central parpadea y comienza el juego cuando se
usuarios relativamente inexpertos pueden construir la versión de queda fijo, cada vez que se gana una posición el led parpadea y cuando
la placa del módulo para entender como funciona y ahorrar dinero. gana el led final se queda parpadeando en un bucle infinito hasta que
reseteo el Arduino para volver a jugar.
G. APLICACIONES

Existen multitud de entornos de aplicación de Arduino: automatización


industrial, domótica, herramienta de prototipado, plataforma de
entrenamiento para aprendizaje de electrónica, tecnología para artistas,
eficiencia energética, monitorización, adquisición de datos, DIY,
aprendizaje de habilidades tecnológicas y programación, etc…

En la educación tanto en institutos en secundaria y bachillerato como


en formación profesional y la universidad, Arduino ha entrado con
mucha fuerza para entrenar habilidades y como herramienta
pedagógica.

Ejemplos:
Fig.8 . Diseño en Arduino de un juego de sogatira.
1. Arranque y parada de motor DC controlado
H. LENGUAJE DE PROGRAMACIÓN ARDUINO
Mover un motor DC de 9V usando un integrado L293D (Quadruple
La plataforma Arduino se programa mediante el uso de un lenguaje
Half-H driver). Para controlar la velocidad del motor se usará un
propio basado en el lenguaje de programación de alto nivel Processing.
potenciómetro conectado al pin A0. Además se usarán dos botones,
Sin embargo, es posible utilizar otros lenguajes de programación y
uno conectado al pin digital 4 para controlar el sentido de giro del
aplicaciones populares en Arduino, debido a que Arduino usa la
motor y otro conectado al pin digital 5 que controlará el encendido y
transmisión serial de datos soportada por la mayoría de los lenguajes
apagado del motor. Con cada pulsación encendemos y apagamos el
mencionados. Para los que no soportan el formato serie de forma
motor o usamos una dirección de giro u otra con el otro botón.
nativa, es posible utilizar software intermediario que traduzca los
mensajes enviados por ambas partes para permitir una comunicación
Sobre este montaje, añadir una rampa de arranque y otra de parada fluida. Algunos ejemplos son:
cuando se detecte el encendido y apagado. También añadir una rampa
de parada y arranque cuando se detecte un cambio de sentido. Añadir  3DVIA Virtools: aplicaciones interactivas y de tiempo real.
un botón de parada de emergencia, que al pulsarlo, se pare el motor
inmediatamente.  Adobe Director
 BlitzMax (con acceso restringido)
 C, C++, C#
 Cocoa/Objective-C (para Mac OS X)
 Flash (mediante ActionScript)
 Gambas
 Isadora (Interactividad audiovisual en tiempo real)
 Instant Reality (X3D)
 Java
 Liberlab (software de medición y experimentación)
 Mathematica
 Matlab

Fig.8 . Diseño en Arduino de un controlador de motor.


Universidad Técnica del Norte

III. CONCLUSIONES

 Conocer el uso del Arduino es de gran utilidad, como en el


ahorro de elementos electrónicos y en sustitución de ello usar
un lenguaje de programación lo que hace que sea de muy
fácil uso.

 Aplicar conocimientos de electrónica es mucho mas sencillo


con el uso de un Arduino, así como su aprendizaje.

 Al realizar este articulo científico a creado curiosidad sobre


el uso y ejecución del Arduino,

IV. RECOMENDACIONES

 Arduino es una herramienta bastante útil, y con gran variedad


de aplicaciones, por lo cual recomendamos investigar y
realizar proyectos con el fin de fomentar el conocimiento.

 Arduino es una herramienta sencilla de programación lo que


hace ideal para el desarrollo y simulación de proyectos, se
recomienda familiarizarse con los diferentes tipos de
programación y probar cada uno de ellos.

 Tomar en cuenta los diferentes tipos de Arduino según sus


características para su correcta utilización de los proyectos
que se desee desempeñar.

V. BILIOGRAFÍA

[1] G.A López Pedro, Electrotecnia. (2017) Robótica y


domótica básica con Arduino pp.43

[2] J. Goliav Nicolas (2016) Arduino aprender a desarrollar


objetos inteligentes pp 141.

[3] E. Vicuña Johnny (2018) Arduino y el internet de las


cosas pp 15.

[4] A. López Eugenio (2016) Arduino Fundamentos guía


práctica y simulaciones pp 141.

Potrebbero piacerti anche