0% encontró este documento útil (0 votos)
341 vistas40 páginas

Taller Robotica Arduino5

Este taller de robótica con Arduino cubrirá temas como conocer la placa Arduino y sus materiales, la interfaz de programación, entradas digitales y analógicas, y sentencias como IF, ELSE, ELSE IF, FOR y PWM. Se explicarán conceptos como voltaje, resistencia, hardware y software. Se realizarán prácticas para conectar entradas digitales y analógicas al Arduino.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
341 vistas40 páginas

Taller Robotica Arduino5

Este taller de robótica con Arduino cubrirá temas como conocer la placa Arduino y sus materiales, la interfaz de programación, entradas digitales y analógicas, y sentencias como IF, ELSE, ELSE IF, FOR y PWM. Se explicarán conceptos como voltaje, resistencia, hardware y software. Se realizarán prácticas para conectar entradas digitales y analógicas al Arduino.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 40

TALLER ROBOTICA ARDUINO

HUMBERTO GARCIA VILLAGOMEZ


TEMARIO:
• CONOCER PLACA DE
ARDUINO Y MATERIALES
• INTERFAZ DE
PROGRAMACION
• ENTRADAS DIGITALES
• ENTRADAS ANALOGICAS
• SENTENCIAS IF, ELSE, ELSE IF
• PWM
• SENTENCIA FOR
CONOCER PLACA ARDUINO UNO
PINES DIGITALES
Arduino es una plataforma de creación de electrónica de código
PUERTO
abierto, USB está
la cual DE ENTRADA
basada enDE DATOS y software libre, flexible
hardware
y fácil de utilizar para los creadores y desarrolladores.
Para poder entender este concepto, primero vas a tener que
entender los conceptos de hardware libre y el software libre.
El hardware libre son los dispositivos cuyas especificaciones y
diagramas son de acceso público, de manera que cualquiera
puede replicarlos.
El software libre son los programas informáticos cuyo código es
accesible por cualquiera para que quien quiera pueda utilizarlo y
PINES ANALOGICOS modificarlo.
ENTRADAS Y SALIDAS DE VOLTAGE
LA PLACA DE PRUEBAS
(PROTOBOARD)

SECCION DE ALIMENTACION
PUENTES O CONECCIONES PARALELAS

UNA DE NUESTRAS HERRAMIENTRAS MAS


IMPORTANTES NOS AYUDARA A UNIR
NUESTROS ELEMENTOS ENTRE SI.
MAS ELEMENTOS A UTILIZAR EN EL CURSO

LED’S
CABLES DUPONT (PUENTES)
SERVO SG90
RESISTENCIAS
BOTONES POTENCIOMETRO
FOTORESISTENCIA
DICCIONARIO ROBOTICA
VOLTAJE: también conocido como tención o diferencial de potencia es un termino que veremos muy
seguido en el curso, así como nosotros necesitamos alimento para tener fuerza, nuestros proyectos
necesitaran voltaje para tener la energía para realizar las tareas que les programemos, la fuente de
energía que mas usaremos será la que proporciona nuestra placa, su unidad de medida es el Volt y lo
abreviamos con una V, por ejemplo 3.3v o 5v, existen otros tipos de voltajes como los que usa nuestra
televisión que son muy altos y por lo tanto mas peligrosos por ejemplo 110v o 220v y siempre
necesitaremos la supervisión de un adulto responsable para poder trabajar con ellos.
DICCIONARIO ROBOTICA
RESISTENCIA: es un material que protege la cantidad de energía que pasa por un circuito para que no
dañe un elemento, por ejemplo cuando arrojamos agua por una manguera y la doblamos un poco
veremos que sale menos agua.
Su unidad de medida es el Ohm y se abrevia con la legra griega Omega Ω
DICCIONARIO ROBOTICA

HARDWARE: es todo lo relacionado con la


electrónica que podemos tocar, por ejemplo
nuestra computadora, celular, televisión, nuestra
placa de arduino, nuestras resistencias, leds,
potenciómetros, etc.

SOFWARE: es todo lo relacionado con la electrónica


que no podemos tocar, por ejemplo youtube, el
fondo de nuestra pantalla, o una canción en nuestro
celular.
PROGRAMACION ARDUINO
Arduino ofrece la plataforma Arduino IDE (Entorno de Desarrollo Integrado), que es
un entorno de programación con el que cualquiera puede crear aplicaciones para
las placas Arduino, de manera que se les puede dar todo tipo de utilidades.
Programar Arduino consiste en traducir a líneas de código las tareas automatizadas que queremos
hacer leyendo de los sensores y en función de las condiciones del entorno programar la interacción
con el mundo exterior mediante unos actuadores.

ENTRADAS ARDUINO SALIDAS


• La estructura básica de un sketch de Arduino
es bastante simple y se compone de al menos
dos partes. Estas dos partes son obligatorios y
encierran bloques que contienen
declaraciones, estamentos o instrucciones.
• setup() es la parte encargada de recoger la
configuración y loop() es la que contiene el
programa que se ejecuta cíclicamente (de ahí
el término loop –bucle-). Ambas funciones son
necesarias para que el programa trabaje.
Librerías
• Las librerías son trozos de código hechos por
terceros que usamos en nuestro sketch. Esto
nos facilita mucho la programación y hace que
nuestro programa sea más sencillo de hacer y
de entender.
“pinMode”
• La función de Arduino pinMode permite configurar a cada pin, de forma individual, como
entrada o como salida.

• #PIN. Es el numero del pin que se quiere configurar, este numero esta escrito en la tarjeta
Arduino que se usara.
• Modo. Puede ser tres opciones:
• INPUT. Configura al pin como entrada.
• INPUT_PULLUP. Se le agrega al pin una resistencia de pull-up interna y se configura como entrada.
• OUTPUT. El pin se configura como salida digital.
“digitalWrite”
• La función Arduino digitalWrite permite escribir valores lógicos digitales en un pin
de Salida de una tarjeta Arduino. Entonces, está función requiere que el pin haya
sido declarado como salida previamente. Para empezar, esté elemento del
lenguaje Arduino, requiere de dos parámetros de entrada. El primero es el numero
de pin (0-13 para un Arduino UNO R3) y el segundo es la condición logica (HIGH ó
LOW).

• #PIN, se refiere al numero del PIN de la tarjeta Arduino correspondiente.


• ESTADO, aquí se colocara cualquiera de dos palabras: LOW ó HIGH. LOW indica
una condición logica 0, es decir 0V, HIGH indicaría entonces lo opuesto, un 1
lógico, es decir VCC.
PRACTICA #1
REALIZAREMOS LAS
ESCRIBIREMOS
CONECCIONES
ELDEACUERDO
SIGUIENTE CODIGO:
A LA SIGUIENTE IMAGEN:
PRACTICA #1
CARGAREMOS EL CODIGO DE LA SIGUIENTE MANERA:
VERIFICAMOS POR
QUE ESTE
REVIZAREMOS ULTIMO
BIEN QUE SUBIMOS
ENSELECCIONADO EL
EL PROGRAMA
PUERTO
PUERTO APARECE EN NUESTRO
NUESTRA PLACA PROGRAMA
REVIZAMOS QUE NUESTRO PROGRAMA NO TENGA ERRORES!

PRIMERO CONECTAMOS NUESTRA PLACA DE ARDUINO


PRACTICA #1
NUESTRO PROYECTO FUNCIONARA DE LA SIGUIENTE MANERA
ENTRADAS DIGITALES
• Una señal digital es una variación de voltaje entre -Vcc a
+Vcc sin pasar por los valores intermedios. Por lo tanto,
una señal digital dispone solo de dos estados. Al valor
inferior de tensión -Vcc le asociamos un valor lógico LOW o
'0', mientras que al valor superior +Vcc le asociamos HIGH
o '1' lógico.
• En Arduino las entradas y salidas digitales comparten pin,
motivo por el que se denominan I/O digitales. Esto significa
que el mismo pin puede ejecutar funciones tanto de
entrada como de salida aunque, lógicamente, no de forma
simultánea. Es necesario configurar un pin I/O como
entrada o salida en el código.
ENTRADAS DIGITALES
• En Arduino los valores de alimentación habituales son
0V y 5V. En este caso la tensión umbral será muy
cercana a 2'5V. Por tanto si medimos una tensión con
un valor intermedio entre 0 a 2'5V Arduino devolverá
una lectura LOW, y si medimos un valor entre 2'5V y 5V,
devolvera HIGH.
• Supongamos que queremos emplear Arduino para
conectarlo con un sensor, o cualquier otro
dispositivo, que dispone de una salida de tensión
ininterrumpida entre 0V a 5V. De momento no
consideramos la posibilidad de que la entrada digital
quede totalmente desconectada, algo que trataremos
en la siguiente entrada "Lectura de un pulsador con
Arduino".
PRACTICA #2
CARGAREMOS
REALIZAREMOS Aparecerá
LA SIGUIENTE la siguiente
EL SIGUIENTE
CONECCIONCODIGO ventana
COMOA NUESTRO ARDUINO
SE MUESTRA EN LA IMAGEN
y al presionar el botón veremos
su estado en nuestra
computadora
CON NUESTRO ARDUINO CONECTADO Y CON EL
PROGRAMA ABIERTO PRECIONAREMOS EN LA
SIGUIENTE OPCION
ENTRADAS ANALOGICAS
• En entradas anteriores hemos visto cómo emplear las entradas
digitales de nuestro Arduino. También hemos usado estas
entradas para leer el estado de un pulsador. En esta entrada
vamos a ver las entradas analógicas, su funcionamiento y
características.

• Las entradas analógicas funcionan de una forma similar a las


entradas digitales, por lo que en la práctica el montaje y código
final son muy similares. Por tanto, es de aplicación la mayoría
de lo que vimos en esta entrada. Sin embargo en ciertos
aspectos son radicalmente distintos, por lo que para entender
correctamente su uso y funcionalidad es necesario veamos un
mínimo de teoría.
ENTRADAS ANALOGICAS
• Una señal analógica es una magnitud que puede tomar
cualquier valor dentro de un intervalo –Vcc y + Vcc. Por
ejemplo, una señal analógica de tensión entre 0V y 5V podría
valer 2,72V, o cualquier otro valor con cualquier número de
decimales. Por contra, recordemos que una señal digital de
tensión teórica únicamente podía registrar dos valores (en el
ejemplo, 0V o 5V).
• Como vimos al explicar las entradas digitales, una entrada
digital supone un proceso de transformación de una señal en un
valor digital, atribuyendo un valor HIGH a las medidas que
superen un valor umbral, y LOW a lo que quedan por debajo.
Por el contrario, una entrada analógica proporciona una
medición codificada en forma de un valor digital con un
número N de bits.
ENTRADAS ANALOGICAS
• Para entender la precisión de una entrada analógica es
necesario entender cómo funciona un conversor analógico
digital (ADC), que es su componente fundamental. Un ADC
es un dispositivo que convierte una medición analógica en
una medición digital codificada con un número N de bits.
• Un bit es un dígito del sistema de numeración binario
• El sistema binario, llamado también sistema diádico, es un
sistema de numeración en el que los números se
representan utilizando solamente dos cifras: cero (0) y
uno (1). Es uno de los sistemas que se utilizan en las
computadoras, debido a que estas trabajan internamente
CJMCU-ADS1115 ultra pequeño de
con dos niveles de voltaje,
precisión de 16 bits Convertidor
analógico a digital ADC Módulo
de placa de desarrollo
PRACTICA #3
CONECTAREMOS NUESTROELARDUINO
ABRIREMOS MONITORY SERIAL
CARGAREMOS
Y VEREMOSEL SIGUIENTE
COMO ALCODIGO,
MOVER El código para
realizar la lectura
REALIZAREMOS es realmente
NUESTRO sencillo,CONECCIONES
POTENCIOMETRO
LAS SIGUIENTES y similar al queCOMO
CAMBIARA vimos
DE para
ESTADO
SE las VALOR
EL entradas
MUESTRA digitales.
EN LA IMAGEN
Simplemente MOSTRADO
realizamos la lectura mediante AnalogRead() y almacenamos el valor devuelto.
SENTENCIAS
• En programación, una sentencia
condicional es una instrucción o grupo de
instrucciones que se pueden ejecutar o no
en función del valor de una condición.
• Los tipos más conocidos de sentencias
condicionales son el SI..(if), el SI NO… (else
if) y el NO…(else).
• Otras también muy utilizadas son POR…
(for), MIENTRAS…(while), HACER
MIENTRAS…(do…while).
SENTENCIAS “if”
• Las sentencias condicionales if con Arduino son las más utilizadas en
programación de proyectos Maker. Sirven para que tu programa haga una cosa u
otra dependiendo de cada situación.
• Si hablamos de Arduino UNO su velocidad es de 20 MHz es decir, 20.000.000 de
instrucciones por segundo.
• Seguramente te estés preguntando, si se repite una y otra vez el mismo código
que está dentro de la función loop() ¿por qué obtenemos resultados diferentes?
• Pues en gran medida es debido a las sentencias condicionales if con Arduino. En
este tutorial aprenderás los siguientes conceptos:
• Sintaxis de la sentencia if else y else if
• Operadores de comparación (>, >=, <=, ==, !=)
• Operadores booleanos (||, &&, !)
SENTENCIAS “if”
• La sintaxis de la sentencia if con Arduino es muy sencilla. Comenzamos escribiendo
la palabra reservada if (en español se traduce como si condicional). Luego entre
paréntesis ponemos la condición y por último abrimos y cerramos las llaves.

• La condición es la que hará que se ejecute el código que hay entre las llaves. Si es
verdadera, el flujo del código de Arduino entrará dentro de las llaves y ejecutará
todo lo que hay dentro.
SENTENCIAS “if”
• Vale, tenemos claro que una sentencia if
con Arduino nos permite ejecutar un
código dependiendo de una condición.
Ahora vamos a ver cómo podemos hacer
condicionales con los operadores de
comparación.
PRACTICA #4 CARGAREMOS EL SIGUIENTE
CODIGO A NUESTRA PLACA DE
ARDUINO

MONTAREMOS EL SIGUIENTE CIRCUITO EN NUESTRA PLACA DE PRUEBAS


PRACTICA #4
UNA VEZ CARGADO NUESTRO CODIGO A NUESTRO ARDUINO FUNCIONARA DE LA SIGUIENTE
MANERA TAMBIEN PODEMOS VER COMO CAMBIA EL MENSAJE EN EL MONITOR SERIAL
PWM (Modulación Por Ancho De Pulso)

• La modulación por ancho de pulsos (también conocida como PWM, siglas en inglés de
pulse-width modulation) de una señal o fuente de energía es una técnica en la que se
modifica el ciclo de trabajo de una señal periódica (una senoidal o una cuadrada, por
ejemplo), ya sea para transmitir información a través de un canal de comunicaciones o
para controlar la cantidad de energía que se envía a una carga.
PWM (Modulación Por Ancho De Pulso)

• En la actualidad existen muchos circuitos integrados en los que se implementa la


modulación PWM, además de otros muy particulares para lograr circuitos
funcionales que puedan controlar fuentes conmutadas, controles de motores,
controles de elementos termoeléctricos, choppers para sensores en ambientes
ruidosos y algunas otras aplicaciones.
PWM (Modulación Por Ancho De Pulso)

• Ya vimos anterior mente como funciona una enstrada analógica y como el valor
que leemos por ella cambia al girar un potenciómetro el servo motor funciona de
una manera muy parecida, despendiendo del valor de la salida PWM de nuestro
arduino nuestro servo motor se moverá entre 0° y 180°.
PRACTICA #5
REALIZAREMOS
ESCRIBIREMOS LA SIGUIENTE
Y CARGAREMOS CONECCION
EL SIGUIENTE CODIGO
PRACTICA #5

• ¿Qué pasaría si cambiamos el numero en la siguiente parte del código?

• ¿Qué crees que pasaría si cambiamos el numero de grados en la siguiente parte


del codigo?

• ¿Qué crees que pasaría si cambiamos el numero de grados en la siguiente parte


del codigo?
SENTENCIA “for”
• En la practica anterior vimos una nueva sentencia “for” y seguramente se
preguntaron que tendría de diferente con la que estudiamos anteriormente la
sentencia “if”.
• La función for() se usa para repetir un bloque de estados encerrados entre llaves.
Generalmente se utiliza un contador para incrementar y terminar el bucle. Esta
función es útil para cualquier operación repetitiva, y se usa a menudo en
combinación con arreglos para operar en los datos / pines. Se usa de la siguiente
manera:
SENTENCIA “for”

• Para entender un poco mas esta


sentencia imaginémoslo de la
siguiente manera, ustedes se
encuentran realizando su tarea de
matemáticas pero también tienen
que realizar la tarea de español,
hasta que no terminen la tardea de
matemáticas no podrán comenzar la
de español, de igual forma la
sentencia for le dice al cerebro de
nuestra placa que no puede realizar
otra tarea hasta no terminar la que le
indicamos que comenzara primero.
SENTENCIA “for”

• Una manera muy practica de usar esta sentencia es cuando sabemos que
usaremos varios pines de nuestra placa de arduino como salidas o entradas, de
esta manera nos ahorraremos escribir pin por pin y declararlo como salidas lo cual
también beneficia algo la cantidad de memoria que usamos de nuestra placa.

Los pin de nuestra placa del 2


Seria lo mismo 7ealizarlosalidas
al 7 se volverán de la
anterior digitales
manera que de esta
manera
PRACTICA #6

REALIZAREMOS LAS SIGUIENTE CONECCION EN NUESTRA PLACA DE PRUEBAS

COPIAREMOS Y CARGAREMOS
EL SIGUIENTE CODIGO A
NUESTRA PLACA
PRACTICA #6

• ¿Qué pasaría si cambiamos el valor de la siguiente variable?

• ¿Qué pasaría si invertimos los estados de las salidas?

También podría gustarte