Está en la página 1de 3

II.

MATERIALES Y MTODOS

Programacin en Arduino UNO


Wilches. Javier, & Hermida, F. Lizeth, D.
(je.wilches2199niandes.edu.co, ld.hermida10niandes.edu.co)
Ingeniera Biomdica en la Universidad de los Andes
Resumen En este artculo se hablar del funcionamiento del
Arduino UNO, como se puede usar para acciones sencillas. Adems
se llevarn a cabo diferentes procesos para poder entender cmo se
puede programar usando el programa Arduino 1.6.7.
Palabras Clave Arduino UNO, Arduino 1.6.7

I.

INTRODUCCIN

En la ingeniera el desarrollo de nueva tecnologa es algo que


se encuentra en constante movimiento e innovacin. Para esto
se necesitan herramientas que faciliten el avance en mquinas,
programas y otras tecnologas que ayuden en cualquier rea,
como la medicina. Un ejemplo de esto es el Arduino, el cual
fue diseado como una plataforma de prototipado abierta;
basado en un uso sencillo de hardware y software. La tarjeta
del Arduino puede leer entradas como mensajes de twitter, o
luz de algn sensor, convirtiendo este mensaje en una
reaccin. Tambin posee un micro-controlador en cual realiza
las instrucciones que se le introduzcan con facilidad. [1]
Dado que es simple, accesible, con hardware y software
extensible y funciona en cualquier sistema operativo su utiliza
en mltiples proyectos por todo el mundo. El lenguaje de
programacin del Arduino resulta sencillo y muy fcil de usar.
Con la creacin de Sketches, los cuales se pueden guardar,
tomar direccin de diferentes libreras y crear muchas
funciones diferentes por medio de todos los puertos que posee
un Arduino. [2]
Existen diferentes tarjetas de Arduino, como Arduino Due,
Arduino Gemma, Arduino Mini, Arduino Pro y muchos otros.
Para esta ocasin se usar el Arduino UNO, el cual es un
micro controlador basado en el ATmega328P, es perfecto para
comenzar en el mundo de la electrnica y la programacin.
Este dispositivo es uno de los ms robustos y uno de los
primeros en un grupo de tarjetas de Arduinos USB [3].
Igualmente el Arduino posee otras herramientas que permiten
maximizar sus habilidades, como lo es un Shield. Estos se
pueden conectar con la tarjeta para extender sus capacidades,
por ejemplo el Xbee le permite al Arduino comunicarse de
manera inalmbrica, a distancias de hasta 300 pies en zonas
abiertas [4].

El Arduino puede manejar algunos elementos de alta potencia,


claramente con la ayuda de un Shield. Tambin se pueden usar
servomotores, un motor de corriente continua con un
potencimetro que le permite conocer la posicin en que se
encuentra, hasta 12 de ellos en un arduino normal, muchos
ms si se usa el Arduino Mega o ayuda de un Shield. [5]

Los materiales que se usarn para este trabajo se encuentran


en la Tabla 1.
Tabla 1. Materiales
Material
Resistencias
LEDs
Type B Cable
USB
Arduino UNO

Cantidad
4
4
1

Valor
220 1k

El procedimiento que se llev a cabo en esta prctica se


dividi en dos partes, La primera es evaluar el funcionamiento
del Arduino, la segunda es programar un Arduino UNO que
encienda y apague 4 LEDs.
Para comenzar, se realiza el montaje que se presenta en la
imagen 1. Conectando el cable entre Arduino y el computador
con el Type B Cable USB. Luego se descarga el archivo de
Prueba. ino (Anexo I) , para abrirlo. Se debe verificar que la
tarjeta que este seleccionada sea el Arduino que se va utilizar.
Despus de compilar, y subir el archivo correctamente, el LED
debe empezar a parpadear cada segundo. (Sino funciona
verifica que el puerto que estn usando sea el correcto).

La segunda parte, comienza por generar un cdigo que


permita prender y apagar cada LED en cada uno de los pines.
El cdigo se realiza por medio de un condicional y se
establecen los parmetros a usar (los pines) en el void
setup().
III. RESULTADOS
Los resultados encontrados fueron que despus de la primera
prctica, el archivo se carg de manera efectiva creando un
parpadeo del LED rojo cada segundo. Como se puede ver en
la Imagen 2. El LED se encuentra prendido y conectado a la

pin 13 del Arduino. Esto sucede puesto que el programa es un


loop infinito donde se establece al Pin 13 como un puerto de
salida, donde se cambia el voltaje para poder prender o apagar
el LED. La duracin de un segundo se da por el delay
establecido y la resistencia que se usa con el LED no permite
que se queme.

Imagen 4. Mitad de los LEDs prendidos


Para finalizar, el Arduino es una herramienta sencilla que
permite controlar y desarrollar diferentes acciones. En esta
ocasin solo se trataron procedimientos muy fciles, pero que
nos ayudaron a entender cmo se utiliza el arduino y su
programacin ms bsica. En otra ocasin se podrn usar
muchas ms de las capacidades que contiene este dispositivo.
Imagen 2. LED titilando cada segundo debido al archivo
Prueba.ino
Luego al conectar los diferentes LEDs a cada uno de los pines
(13,12, 11 y 10) Se crea un programa condicional el cual
responder a un parmetro, el cual es una tecla establecida,
para prender o apagar los LEDs, es decir para bajar o
aumentar la salida del pin. Las diferentes resistencia que se
usan con cada LED dan un brillo mayor o menor dependiendo
de su valor, entre mayor sea menor ser el brillo del LED. El
resultado a esto se puede ver en la imagen 3. Donde se
encuentran todos los LEDs encendidos por el programa
(Anexo II.)

IV. REFERENCIAS
[1] Arduino Corporation. (2016). Arduino. Retrieved from
Arduino UNO: https://www.arduino.cc/en/Guide/Introduction
[2] Arduino Corporation. (2016). Arduino. Retrieved from
Arduino UNO/ Arduino Software (IDE):
https://www.arduino.cc/en/Guide/Environment
[3] Arduino Corporation. (2016). Arduino. Retrieved from
Arduino UNO:
https://www.arduino.cc/en/Main/ArduinoBoardUno
[4] Arduino Corporation. (2016). Arduino. Retrieved from
Arduino UNO/ Shield:
https://www.arduino.cc/en/Main/ArduinoShields
[5] Electro Ensaimada. (n.d.). Retrieved from Tutorial
Arduino: Servomotor:
http://www.electroensaimada.com/servomotor.
V. ANEXOS
Anexo I. Cdigo de la prueba (Prueba.ino)

Imagen 3. LEDs encendidos por medio del programa


condicional

void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the
voltage level)
delay(1000);
// wait for a second
digitalWrite(13, LOW); // turn the LED off by making the
voltage LOW

delay(1000);

// wait for a second

}
}

Anexo II. Cdigo usado para el prendido y apagado de los


LEDs
}
void setup() {
// put your setup code here, to run once:
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
pinMode(12,OUTPUT);
pinMode(13,OUTPUT);
Serial.begin(9600);

Anexo III. Cdigo en Matlab para el uso del arduino para


prender y apagar los LEDs
clear all
close all
clc
a=arduino('COM3','Uno');%Ac se lee el
arduino en el puerto COM3
while strcmp('COM3',a.Port)==1%MIentras el
puerto sea COM3 el ciclo sigue iterando

void loop() {
// put your main code here, to run repeatedly:
if(Serial.available())
{
char key=Serial.read();

x= input('Introduzca letra a-d para


encendido \n e-h para apagado\n','s');
%Input para interactuar con el usuario

switch (key){
case 'a':
digitalWrite(10,HIGH);
break;
case 'b':
digitalWrite(11,HIGH);

case 'a'%Cuando x sea a


writeDigitalPin(a,13,1)%Ubico
canal 13 y lo enciendo

break;
case 'c':
digitalWrite(12,HIGH);
break;
case 'd':
digitalWrite(13,HIGH);
break;
case 'e':
digitalWrite(10,LOW);
break;
case 'f':
digitalWrite(11,LOW);
break;
case 'g':
digitalWrite(12,LOW);
break;
case 'h':
digitalWrite(13,LOW);
break;

switch x%Secuencia de casos

case 'b'%Cuando x sea b


writeDigitalPin(a,12,1)%Ubico
canal 12 y lo enciendo
case 'c'%Cuando x sea c
writeDigitalPin(a,11,1)%Ubico
canal 11 y lo enciendo
case 'd'%Cuando x sea d
writeDigitalPin(a,10,1)%Ubico
canal 10 y lo enciendo
case 'e'%Cuando x sea e
writeDigitalPin(a,13,0)%Ubico
canal 13 y lo apago
case 'f'%Cuando x sea f
writeDigitalPin(a,12,0)%Ubico
canal 12 y lo apago
case 'g'%Cuando x sea g
writeDigitalPin(a,11,0)%Ubico
canal 11 y lo apago
case 'h'%Cuando x sea h
writeDigitalPin(a,10,0)%Ubico
canal 10 y lo apago
end
clc
end