Sei sulla pagina 1di 52

INTRODUCCIÓN A ARDUINO

MICROPROCESADOR VS
MICROCONTROLADOR
MICROPROCESADOR
 Los microprocesadores tienen una arquitectura
destinada al procesamiento de la información.
Las características de los microprocesadores son:
la CPU, las memoria RAM, ROM y periféricos se
encuentra separados; así mismo los programas
que se realizan para un microprocesador siempre
tienen un fin.
MICROCONTROLADOR
 Un microcontrolador tiene una arquitectura
destinada a procesos de control. Las
características de los microcontroladores es que
en un solo chip pueden contar con:
 CPU
 Memorias RAM y ROM
 Periféricos
 Timers
 Conversores AD y DA
 Los programas que se realizan para un
microcontrolador nunca tienen fin, es decir solo
termina el programa cuando se corta la energía.
CONSTITUCIÓN FÍSICA DE UN ARDUINO
 Arduino Uno está basado en el
microcontrolador ATmega328 de Atmel. Donde
los pines del Arduino UNO (pinout) consta de:
 14 pines digitales,

 6 entradas analógicas,

 un conector de alimentación,

 conexión USB

 encabezado ICSP.

La versatilidad de estos pines nos irán ayudando


en los diferentes proyectos que deseemos
emprender con Arduino.
 Los Pines Digitales: Pueden ser configurados
como entradas o salidas y sirven para encender
luces, motores, electro válvulas, relés entre otros.
Si trabaja como entrada sirve para detectar
cambios de estado.
 Los Pines PWM: Son pines que pueden ser
configurados con una señal PWM (Ancho por
Modulación de Pulso) son muy usados para
controlar la velocidad de motores, regular
intensidades, entre otros.
 Los Pines Analogo/Digital: Sirven para
capturar las señales del mundo real, como la
medida de los sensores.
 Pines de Alimentación: Nos ofrece dos pines,
uno de 5V y otro de 3.3V, nos sirve para
alimentar nuestros circuitos o protoboards.
ESTRUCTURA BÁSICA DEL PROGRAMA DE
ARDUINO
 Zona de declaraciones: se encuentra arriba de
la función “void setup”, en esta parte vamos a
declarar todo lo que necesitemos en nuestro
programa como variables, funciones, objetos, y
estructuras.
 Función void setup: Esta función se ejecuta
una única vez cada que se enciende la placa de
Arduino, o se pulsa la tecla Reset. Dentro de esta
función se configuran todos los dispositivos
periféricos que deseamos usar en nuestro
proyecto de Arduino.
 Función void loop: como su nombre lo indica,
es una función de ciclo infinito, la cual se ejecuta
infinitamente hasta que el Arduino sea
desenergizado. En esa función es donde vamos a
programar nuestros proyectos de Arduino.
INSTRUCCIONES Y OPERADORES
 {} Llaves: definen el principio y el final de un
bloque de instrucciones o función, podemos
encontrarlas en estructuras de control definiendo
el bloque al cual afecta la función. Podemos
anidar tantos bloques como queramos.
 ; Punto y coma: Se utiliza para separar
instrucciones, es común olvidar colocarlo al final
de línea. Si no lo ponemos no reconocerá el fin de
la función y el programa dará un problema al
compilar.
 /*….*/ Bloque de comentario: Son áreas de
texto que pueden abarcar más de una línea, lo
que escribamos entre esos símbolos será ignorado
por el programa.
 // Línea de Comentario: Funciona como el
bloque de comentario, con la diferencia que solo
será ignorado el texto que este a su derecha, al
cambiar de línea perderá el efecto.
DECLARACIÓN DE ENTRADAS/SALIDAS
 Pin mode: Esta instrucción se usa para
configurar los pines de nuestro Arduino como
entrada o como salida. Se declarará dentro de la
función "SetUp«.
ENTRADAS/SALIDAS DIGITALES
 Las entradas y salidas digitales solo trabajaran
con dos estados "ALTO" o "BAJO" que irá
asociados a un nivel de 5 volts(alto) ó 0 volts
(bajo) (también podemos encontrarnos con
Arduinos que trabajan a 3.3v).
ENTRADAS/SALIDAS ANALÓGICAS
 Estos pines a diferencia de los pines digitales
pueden tomar cualquier valor entre 0 y 5 volts. A
la hora de leer un valor tendremos una resolución
de 10bit's o lo que es lo mismo, el valor que
podemos leer tendrá un rango entre 0 y 1023.
Para escribir un valor analógico lo haremos
usando el PWM para esto la resolución será de 8
bit's teniendo un rango de 0 a 255.
INSTRUCCIONES DE TIEMPO
 Son instrucciones que nos sirven para hacer
temporizaciones o para comprobar el tiempo
transcurrido desde el inicio del programa.
FUNCIONES SERIAL
 Las placas de Arduino tienen al menos 1 puerto
serial para la comunicación con el ordenador o
con otros dispositivos, esta comunicación se
llevará a cabo mediante los pines TX y RX
(podemos tener varios en nuestra placa según el
modelo).
BUCLES
¿QUÉ ES UN BUCLE?
 Un bucle es una subrutina que se repite y que es
aplicada sobre una porción determinada de
código hasta que deje de cumplirse cierta
condición.
BUCLE FOR
 En el caso de la sentencia for la condición se
encuentra dada por el número de ciclos, o en
otras palabras, se define que cierta porción de
código se repetirá una cantidad finita de veces.

Sintaxis:
En el siguiente ejemplo se muestra la sintaxis y
el uso de la sentencia:
 Primero se define el contador y se inicializa
(desde dónde quiero contar), luego se propone
una condición para este (hasta dónde quiero
contar) y una iteración (como quiero contar).
Suponga la siguiente situación:
BUCLE WHILE
 Un bucle del tipo while es un bucle de ejecución
continua mientras se cumpla la expresión
colocada entre paréntesis en la cabecera del
bucle. La variable de prueba tendrá que cambiar
para salir del bucle. La situación podrá cambiar a
expensas de una expresión dentro el código del
bucle o también por el cambio de un valor en una
entrada de un sensor.
BUCLE DO-WHILE
 El bucle do funciona exactamente igual que el
bucle while, con la excepción de que la condición
es evaluada después de ejecutar las instrucciones
escritas dentro de las llaves. Esto hace que las
instrucciones siempre sean ejecutadas como
mínimo una vez, aun cuando la condición sea
falsa. La sintaxis es de la siguiente forma:
DESCRIPCIÓN DE LOS
MATERIALES
PROTOBOARD
SENSOR ULTRASONIDO HC-SR04
 El sensor HC-SR04 te permite medir distancia
mediante ultrasonido, muy utilizado en Robots
Sumo y Laberinto.
 El sensor HC-SR04 posee dos transductores: un
emisor y un receptor piezoeléctricos, además de
la electrónica necesaria para su operación.
FUNCIONAMIENTO
 El emisor piezoeléctrico emite 8 pulsos de
ultrasonido(40KHz) luego de recibir la orden en
el pin TRIG, las ondas de sonido viajan en el aire
y rebotan al encontrar un objeto, el sonido de
rebote es detectado por el receptor piezoeléctrico,
luego el pin ECHO cambia a Alto (5V) por un
tiempo igual al que demoró la onda desde que fue
emitida hasta que fue detectada, el tiempo del
pulso ECO es medido por el microcontrolador y
así se puede calcular la distancia al objeto.
 Distancia(m) = {(Tiempo del pulso ECO) *
(Velocidad del sonido=340m/s)}/2
ROBOT SUMO
BLUETOOTH
 Los dispositivos HC06 y el HC-05, gracias a sus
puertos TxD y RxD permite realizar
comunicaciones inalámbricas a una distancia de
10 mts máximo. Estos dispositivos son fáciles de
manejar, por sus comandos AT. Dichos comandos
se envían por un puerto serial. Trabajan a
3.3V. Los módulos son para aplicaciones sobre
todo con microcontroladores, PIC o tarjetas
Arduino.
 Para empezar el módulo de bluetooth HC-06 solo
opera de modo esclavo, a diferencia del módulo
HC-05.
 El pin de transmisión del Bluetooth Tx se conecta
al de recepción de Arduino Rx.
 El pin de recepción del Bluetooth Rx se conecta al
de transmisión de Arduino
PUENTE H
 Arduino tiene pines de entrada y de salida para
comunicarse físicamente con su entorno. Los
pines de salida pueden dar una pequeña cantidad
de energía que sirve por ejemplo para encender
un LED, pero no pueden alimentar a un motor.
Para ello necesitamos un circuito que haga de
intermediario. Este circuito, el controlador o
driver de motores, tomará energía de otra fuente
(una pila, batería o equivalente) y siguiendo las
instrucciones de Arduino hará funcionar el motor.
Existen muchos drivers diferentes, pero para poder
controlar bien un motor necesitamos dos
características fundamentales:
 Que permitan invertir el sentido de giro del
motor.
 Que permitan graduar la velocidad de giro del
motor.
DRIVERS CON PUENTES H
 El circuito básico que permite las dos funciones
que dijimos es un puente H. Un motor DC cambia
el sentido de giro cuando invertimos los polos
positivo y negativo en sus bornes, y este circuito
juega con una serie de interruptores para hacer
ese cambio de polaridad. Podemos construir un
puente H con cuatro interruptores, pero lo que
usaremos es un circuito integrado que tiene esos
interruptores -o puertas- y las abrirá y cerrará
siguiendo instrucciones del Arduino.
L298N
 Sirve para controlar motores de entre 6 y 50
voltios y con un consumo máximo de 2 A. Un
mismo integrado sirve para controlar dos
motores.

 La típica placa tiene seis fichas para atornillar
los cables de los motores y la alimentación (más
una salida regulada de 5 v) y seis pines:
 Tres pines de control para el motor A, dos de ellos
digitales (IN1, IN2) y uno PWM (ENA).
 Otro tres con el mismo esquema para el motor B
(IN3, IN4, ENB).
 La operación del driver tiene la siguiente lógica
(la tabla indica la señal en cada pin para el motor
A).

Potrebbero piacerti anche