Beruflich Dokumente
Kultur Dokumente
Contenido:
INTRODUCCION .................................................................................................................................. 2
DESCRIPCIN BASICA DE LA TARJETA ARDUINO UNO ...................................................................... 3
HOLA MUNDO..................................................................................................................................... 4
DISPLAY DE 7 SEGMENTOS (HIGH/LOW) ........................................................................................... 6
FUNCIONES ....................................................................................................................................... 10
ENTRADAS DIGITALES ....................................................................................................................... 13
CONTADOR ....................................................................................................................................... 15
FUNCIONES QUE UTILIZAN PARMETROS (SERVOMOTORES) ....................................................... 17
SENSOR ULTRASNICO..................................................................................................................... 21
SENSOR ANALGICO POTENCIOMETRO .......................................................................................... 23
SENSOR ANALGICO FOTORESISTENCIA ......................................................................................... 26
BREVE GLOSARIO DE FUNCIONES ARDUINO ................................................................................... 30
BIBLIOGRAFIA: .................................................................................................................................. 31
INTRODUCCION
Arduino es una plataforma para prototipos de cdigo abierto basado en un
hardware1 y software2 de uso fcil, las tarjetas Arduino son capaces de leer
entradas digitales3 desde un sensor, un botn presionado por un dedo o un
mensaje de twitter y convertirlo en una salida (digital), para accionar un motor,
encender un LED, publicar algo online, tu puedes decir a tu tarjeta que hacer
al enviar una serie de instrucciones al microcontrolador4 situado en la tarjeta,
para hacer esto debes emplear el lenguaje de programacin de Arduino
(basado en wiring), y el software de Arduino (IDE5), basado en processing.
Ilustracin 1 Existen muchas versiones de tarjetas Arduino para adecuarse a diferentes proyectos dependiendo del
tamao, cantidad y tipos de entradas y salidas, velocidad, etc.
Ilustracin 2 Por tratarse de un sistema de desarrollo abierto cualquier persona interesada puede tener acceso a
informacin sobre cmo construir una tarjeta Arduino
Con el propsito de ser una gua breve y enfocada a mostrar ejemplos ms que
detalles y caractersticas de los microntroladores, se puede reducir a que un
microcontrolador (en Arduino UNO se trata de un ATmega328p) puede recibir
o leer datos digitales (1/0), y puede emitir salidas del mismo tipo.
Ilustracin 4 Para este ejemplo de un microcontrolador de 8 puertos genricos de entrada y salida (GPIO6) el pin 0 deber
ser configurado como un pin de salida (LED) mientras que los pines 1 y 2 como entradas (botones)
Ilustracin 5 Algunos ejemplos de sensores digitales son push button, limit switch, ultrasnico, infrarojo, etc. Entre
algunos dispositivos digitales de salida se encuentran los Leds, motores de corriente directa, bocinas, motores a pasos,
LDC, entre otros.
HOLA MUNDO
El primer ejemplo consistir en hacer parpadear un LED (pgina 5 para ms
informacin), se llevar a cabo llamando las funciones principales void
setup() y void loop(), creando variables, configurando puertos y escribiendo
en puertos.
Tabla 1 Descripcin de tipos de datos ocupados por la mayora de los lenguajes de programacin
Ilustracin 6 Polarizacin de un Diodo LED, para hacerlo funcionar debemos respetar la conexin requerida es decir una
conexin positiva en el nodo y una negativa en el ctodo
Ilustracin 7 Del lado izquierdo se muestra el circuito de conexin directa de un LED de manera grfica, mientras que del
lado derecho el mismo circuito empleando smbolos
Ilustracin 8 cuando el ctodo (-) es comn es necesario enviar altos (HIGH) a cada led para encenderlo al contrario de
cuando el nodo (+) es comun donde es necesario enviar bajos (LOW)
Ilustracin 9 Conexin internar de los leds correspondientes al tipo de display de 7 segmentos a emplear.
FUNCIONES
Una funcin es un bloque de cdigo que tiene un nombre y un conjunto de
instrucciones que son ejecutadas cuando se llama a la funcin.
Las funciones de usuario pueden ser escritas para realizar tareas repetitivas y
para reducir el tamao de un programa. Las funciones se declaran asociadas a
un tipo de valor type. Este valor ser el que devolver la funcin, por ejemplo
'int' se utilizar cuando la funcin devuelve un dato numrico de tipo entero,
si la funcin no devuelve ningn valor entonces se colocar delante la palabra
void, que significa funcin vaca. Despus de declarar el tipo de dato que
devuelve la funcin se debe escribir el nombre de la funcin y entre parntesis
se escribirn, si es necesario, los parmetros que se deben pasar a la funcin
para que se ejecute.
type nombreFuncin(parmetros)
{
instruccin;
}
10
11
Notars que el tipo de dato empleado en estas funciones es de tipo void esto
es como se mencion anteriormente por que no devuelven ningn tipo de
valor, tambin es notable que tampoco requirieron ningn parmetro
(parntesis vacos) para su funcionamiento, ms adelante (pgina 16) veremos
ejemplos de funciones que emplean parmetros. Qu tendras que agregar o
modificar para que las funciones requirieran un parmetro tiempo, y puedan
ser llamadas para que muestren cada nmero por un tiempo personalizado?
12
Por ejemplo:
void loop(){
cero(500);
uno(300);
dos(1500);
ENTRADAS DIGITALES
Ya fueron mencionados ejemplos de sensores digitales, ahora veremos cmo
configurar los pines de Arduino para su uso.
Ilustracin 12 Conexin de un push button como entrada digital y un led como salida digital a una tarjeta Arduino
13
14
CONTADOR
Empleando los dos ltimos ejemplos la siguiente muestra la manera de
aumentar un digito cada vez que se presiona un botn.
15
16
Ilustracin 14 Cuando un ancho de pulso de 1ms es enviado cada 20 ms, el servomotor se posicionar a 0, cuando el
ancho de pulso es de 1.5ms a 90 y cuando es de 2ms a 180
17
18
19
20
Ilustracin 15 Ejemplo de robot mvil que emplea servomotores de rotaciones continuas como elementos de
desplazamiento
SENSOR ULTRASNICO
El sensor a emplear ser el sensor ultrasnico HC-SR04. Este sensor funciona
mediante la transmisin de una rfaga (trigger) de ultrasonido en una
frecuencia muy por encima del rango auditivo humano y provee un pulso de
salida, el cual corresponde con el tiempo requerido por el eco (echo) para
retornar hasta el sensor. Al medir la duracin de este pulso se puede calcular
fcilmente la distancia al objetivo.
Ilustracin 16 empleando la frmula de velocidad V=D/T podemos conocer la distancia que recorri un pulso de sonido
despus de rebotar y regresar.
21
22
23
Ilustracin 19 Conexin de un potencimetro como resistencia variable con salida analgica a Arduino
24
Void loop(){
If (lectura >=0 && lectura <102){ cero();}
else if (lectura >0 102 && lectura <204){uno();}
}
El doble smbolo & equivale al operador booleano AND es decir requiere que
sean cumplidas dos o ms condiciones para que la condicin se considere
verdadera, a continuacin, una tabla de otros operadores booleanos.
25
Ilustracin 20 Fotorresistencia
26
Ilustracin 21 Conexin de una fotoresistencia para ser empleada como resistencia variable dependiente de la luz
27
28
29
pinMode(pin,modo)
Se emplea en la funcin setup() para configurarcomportamientode un pin a lo largo del
programa, un pin digital puede ser configurado como entrada (INPUT) o salida (OUTPUT).
digitalWrite(pin,value)
Establece el valor en un pin dado, este puede ser alto (HIGH) o bajo (LOW), lo cual es lo mismo
en binario a 1 o 0, o bien en cantidad de voltaje a 5V o 0V
DigitalRead(pin)
Lee el un valor digital desde un pin especifico, este puede ser HIGH o LOW el cual es igual a un
valor numrico 1 o 0.
AnalogRead(pin)
Lee un valor analgico desde un pin analgico (A0-A5)
delay(ms)
Realiza una pausa en el programa en milisegundos, el programa nicamente saltar a la
siguiente lnea una vez transcurrido el tiempo especificado.
Serial.Begin(rango)
Inicia un puerto paralelo y especifica la velocidad de transmisin en baudios
Serial.Print(dato)
Imprime datos a travs del puerto serie, una variacin es Serial.println con esta cinfuguracion
ser agregado un salto de lnea despus de su llamada.
30
BIBLIOGRAFIA:
https://www.arduino.cc/en/Guide/Introduction#
http://comohacer.eu/analisis-comparativo-placas-arduino-oficialescompatibles/
http://blog.codebender.cc/2014/03/07/lesson-1-inputs-and-outputs/
https://www.arduino.cc/en/Main/ArduinoBoardUno
http://www.cs.utah.edu/~germain/PPS/Topics/variables.html
http://www.diegotecnology.es/led/
http://playground.arduino.cc/ArduinoNotebookTraduccion/Structure
http://tecbolivia.com/index.php/articulos-y-tutorialesmicrocontroladores/17-como-medir-distancias-con-el-sensor-ultrasonicoping
https://www.arduino.cc/en/Reference/Serial
https://es.wikipedia.org/wiki/Se%C3%B1al_anal%C3%B3gica
http://www.miki.96.lt/archivos/Arduino%20Manuales%20y%20Ejemplos/Ma
nual%20Arduino.pdf
31
eliuthcc@gmail.com
32