Unidad 1 Arduino
Unidad 1 Arduino
Unidad 1 Arduino
Presentación
En esta unidad comenzaremos a conocer la plataforma Arduino, por-
que usamos dicha plataforma, como es su hardware (en muestro caso
Leonardo), las características de sus entradas y salidas, como descargar
su software IDE, Desarrollaremos un primer programa llamado blink,
explicación de la estructura de programación, instalación del programa
en el Arduino y la observación de su funcionamiento, cambios en el
programa y su respuesta carga de un segundo programa con dos dio-
dos.
Objetivos:
• DAR LOS PRIMEROS PASOS EN EL CONOCIMIENTO DE LA PLACA ARDUI-
NO LEONARDO Y SU PUESTA EN MARCHA CON LA INSTALACIÓN DE UN
PRIMER PROGRAMA.
¿QUÉ ES ARDUINO?
Hay que destacar que el Arduino conserva el programa cargado aún luego de apagar el
sistema.
El Arduino Leonardo presenta las siguientes características técnicas que iremos comen-
tando a medida que avancen los ejemplos:
Microcontroller ATmega32u4
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 20
PWM Channels 7
Analog Input Channels 12
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega32u4) of which 4 KB used by
bootloader
SRAM 2.5 KB (ATmega32u4)
EEPROM 1 KB (ATmega32u4)
Clock Speed 16 MHz
Length 68.6 mm
Width 53.3 mm
Weight 20g
Microcontroller ATmega32u4
Por ahora prestemos atención para no destruir nuestro Arduino que la corriente de tra-
bajo es 40mA entra cada Pin y tierra.
Menú principal
Nueva
Submenú Pestaña
Pestaña
con
nombre Panel
principal
Submenú
de
ejecución
NOTA: La plataforma es muy fácil de utilizar y la iremos conociendo a medida que avance-
mos con los ejercicios.
Una vez instalado el IDE, vamos a comprobar que reconoce nuestro Arduino correcta-
mente y que podemos programarlo. Para ello, Conecta tu Arduino a tu ordenador me-
diante el USB, al hacerlo nuestro PC debe detectar el nuevo dispositivo USB y monta el
driver adecuado ubicándolo en el puerto USB detectado.
Vamos a: Herramientas > Puerto, y chequeamos que la plataforma este detectando nues-
tro Arduino Leonardo para su correcto funcionamiento.
En el caso de la imagen el puerto detectado aparece como COM3, esto dependerá del
computador, el sistema y la compuerta que el sistema le asigne. Pasemos a continuación
a ver un ejemplo.
ción y utilización
del Sketch
02
SECCIÓN EJERCICIO - DESCRIPCIÓN Y UTILIZA-
CIÓN DEL SKETCH.
Para comenzar con el primer ejemplo, veamos uno de los que ya vienen como ejemplo
en la plataforma, para ello vamos a la flecha que apunta hacia arriba en el submenú y
seleccionamos el ejemplo básico Blink (Ver imagen adjunta).
CATODO
ANODO
En nuestro caso Tenemos que el voltaje V=5V (en el PIN 13) menos la caída de tensión
en el Led 1,6 V (dependiendo del color) nos da 3,4V (V= 5V-1,6V = 3,4V), con una resis-
tencia en serie de 220Ω, la corriente resultante será según la ley de Ohm de 0,015A, que
es menor que los 40 miliampers que soporta la placa en sus salidas (Ver hoja de datos)
La corriente eléctrica se define como el flujo de cargas eléctricas que, por unidad de
tiempo, atraviesan un área transversal, en la siguiente figura podemos ver un segmento
de un alambre conductor de corriente en el cual los portadores de cargas se mueven con
velocidad media pequeña.
I=∆Q/∆t
LEY DE OHM
I=(1/R)V
La ecuación anterior es una definición general de la resistencia entre dos puntos en fun-
ción de la caída de potencial V entre los mismos. La unidad SI de resistencia se denomi-
na ohmio (Ω)
Cuando las resistencias se conectan una a continuación de la otra se dice que están co-
nectadas en serie.
Un LED es un diodo, que emite luz y suelen ser utilizados de forma de testear si un cir-
cuito se encuentra cerrado o no.
Veamos, entre el pin 13(V = 5V) y tierra (GND) (V = 0V) se conectan en serie una resis-
tencia de 220Ω y un LED que posee una caída de tensión (dato que se puede obtener de
la ficha técnica del led), de 1,6V entre sus extremos. Según la ley de Ohm, tenemos que:
V = 5 – 1,6 = I * R = I * 220Ω
Valor que como decíamos es menos que los 40mA especificados en la ficha técnica.
Este es el programa que está confeccionado en Blink en donde se ha puesto en verde los
comentarios, veamos su estructura.
void setup() {
/* La función void setup () se llama cuando se inicia un pro-
grama. Úselo para inicializar variables, modos de pasador, comien-
ce a usar las bibliotecas, etc. La función de configuración sólo se
ejecutará una vez, después de cada arranque o reinicio de la placa
Arduino.
*/
pinMode(13, OUTPUT); //se define el pin 13 como salida
}
/* …………………………………………………………………………………………………….
………………..se utiliza cuando son varias líneas de texto
……………………………………
*/
// cuando es una sola línea
NOTA: Como podemos observar el efecto de la ejecución del programa es que el led prende
y apaga.
Pasaremos ahora a la creación de un segundo programa que se dejara como tarea para
poder identificar fuentes de dudas, este ejercicio se desarrollara en al siguiente unidad.
1.- Juegue con los delay(); cambiando su valor, para que queden más tiempo apagados o
prendidos.
2.- Cambie el pin de salida y modifique el programa para que este funcione.
3.- Para prácticar confeccione un ejemplo con dos diodos a partir del siguiente código.
void setup() {
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
delay(1000);
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
delay(1000); }
COMENTARIOS
Los bloques de comentarios, o comentarios multi-línea son áreas de texto ignorados por
el programa que se utilizan para las descripciones del código o comentarios que ayudan a
comprender el programa. Comienzan con / * y terminan con * / y pueden abarcar varias
líneas.
Nota: Los comentarios son ignorados por el compilador y no ocupan espacio en la memoria
de Arduino.
Cuando solo queremos comentar una línea, podemos utilizar dos barras al inicio de tal
forma de que sea interpretado como comentario. Al igual que los comentarios de bloque,
los de línea son ignoradas por el programa y no ocupan espacio en la memoria.
// esto es un comentario
mentarios a utilizar
03
SECCIÓN PROGRAMAS COMPLEMENTARIOS A UTI-
LIZAR.
FRITZING
Fritzing es una excelente herramienta de uso libre que nos va a dar una gran mano en el
transcurso del curso para asimilar el conocimiento y familiarizarnos con los esquemas
de circuitos. Este curso asume que estamos partiendo desde cero en el conocimiento por
lo que es muy posible que un esquema como el siguiente, no sea algo a lo que el alumno
esté acostumbrado a ver, y es hasta posible que le de un poco de temor.
Fritzing no solo nos va a permitir familiarizarnos con este tipo de esquemas, sino que
además posee una vista de componentes y lo que es más interesante, trae incorporados
los ejemplos que vienen con el arduino. Veamos con un ejemplo de que estamos hablan-
do. En la sección anterior ejecutamos el scketch Blink para modificar el estado de un led,
en este caso aunque el montaje es sencillo puede ser que nos presente inconvenientes al
inicio ya que no estamos familiarizados con los terminos utilizados, ni con el lenguaje
de programación, ni con los componentes, sigamos algunos pasos para hacer que esto
comience a cambiar.
http://fritzing.org/download/
Para cargar el programa Blink de arduino vamos al margen superior izquierdo y entra-
mos en:
Archivo > Abrir ejemplo > Arduino > Light > LED > Blink
NOTA: Como ayuda va el comentario de que primero nos conviene llevar al área de trabajo
un protoboard que no está pesente en este ejemplo ya que el led se muestra directamente
unido al Arduino.
NOTA: Una limitación importante es que no podemos utilizar la plataforma para simular
el funcionamiento de nuestro ejemplo, solo lo utilizamos para simular el montaje.
Existen varias plataformas muy buenas para realizar el montaje y simular el comporta-
miento de nuestros ejercicios de Arduino, sin embargo la gran mayoria no son de uso
libre, entre ellos podemos citar a:
En nuestro caso podemos utilizar 123D Circuits, la cual es una plataforma de uso libre
con la desventaja que debe ser utilizada de forma online. Para utilizarla debemos regis-
tranos en Autodesk y luego ya podemos utilizar el simulador que se usa de forma análo-
ga a fritzing.
NOTA: El uso de la plataforma es muy intuitivo pero dado que algún alumno puede tener
problemas puede complementar está seccion con el video explicativo que se encuentra en
esta unidad en el foro.
Primer seccion: Se ubica en el márgen superior derecho y nos permite seleccionar si va-
mos a trabajar con el código, agregar elementos al área de trabajo o simular el proyecto.
Tercera sección: nos permite manipular los elementos agregados al área de trabajo
Serial: 0 (RX) y 1 (TX). Usada para recibir (RX) o transmitir (TX) TTL data serie AT-
mega32U4 .
PWM: 3, 5, 6, 9, 10, 11, Y 13. Proveen 8-bit PWM de salida análoga con la funcion ana-
logWrite().
SPI y ICSP . Estos pines soportan la comunicación SPI, usando protocolo SPI Library
LED DE TESTEO
ENTRADAS ANALÓGICAS
LIBROS
Beginning C for Arduino, Second Edition - Jack Purdum, Ph.D. – 2015 – USA. – Edito-
rial: Apress.
Arduino Development Cookbook – Cornel Amariei. – 2015 – USA. Editorial: Pack Pu-
blishing.
Getting Started with Arduino – 3rd Edition – Massimo Banzi co-founder of Arduino &
Michael Shiloh – 2009 – USA. – Editorial: Make
Manual online
https://www.arduino.cc/en/Guide/HomePage
EMAIL: [email protected]
WEB: http://adistancia.frh.utn.edu.ar
E-MAIL: [email protected]