Archivo de la categoría: Taller Arduino Ingenia

Presentación Taller Arduino Ingenia’22

Objetivos

El objetivo de este taller es iniciar al alumno en la programación y uso de la placa de hardware libre Arduino.

El alumno conocerá las bases de la programación de Arduino, uso de librerías, los conceptos de entradas y salidas digitales y analógicas y aprenderá a manejar sensores y actuadores de diversos tipos. Todo ellos mediante casos prácticos usando los kits de Arduino.

Al finalizar el taller el alumno será capaz de usar el entorno de programación de Arduino, ejecutar programas, manejar la plataforma Arduino, conocer su potencial y realizar sus propios proyectos con Arduino.

Requisitos

Este taller parte desde cero, por lo que no son necesarios unos conocimientos previos, pero sí son recomendables conocimientos básicos de programación, electricidad y electrónica.

Es recomendable un conocimiento medio de Inglés puesto que gran parte de la documentación está en Inglés.

Metodología

En este caso he diseñado un curso 100% práctico donde aprenderemos a manejar Arduino usando un kit de Arduino básico como los que se pueden comprar por unos 20-25€. Usaremos cada elemento del kit y nos servirá de guía para aprender los conceptos de manejo de un microcontrolador.

El taller consiste en aprender a manejar Arduino usando el típico kit de Arduino que puede comprarse desde 25€ como guía para aprender conceptos de programación, electrónica y microcontroladores. De esta forma se establecen las bases necesarias para entender la plataforma Hardware y Software de Arduino, con una duración de 7,5 horas.

Una vez acabado el taller el alumno podrá realizar un proyecto más complejo combinando todo lo aprendido donde podrá ver la potencia de esta tecnología.

Los recursos utilizados para la realización de este curso son:

Además están disponibles otros recursos para ampliar información:

Para realizar las prácticas de este curso se incluye un Kit Arduino https://es.aliexpress.com/item/UNO-KIT-Upgraded-version-of-the-For-Starter-Kit-the-RFID-learn-Suite-Stepper-Motor-ULN2003/1207142899.html que contiene un Arduino Uno, una serie de sensores y actuadores y diversos elementos electrónicos necesarios para realizar las prácticas y proyectos.

Todo el material entregado es en préstamo y debe cuidarse al máximo, a la hora del montaje de las prácticas se seguirán las instrucciones para evitar dañar los componentes.

Toda la documentación y código es liberado con licencia Creative Commons.

Reconocimiento – NoComercial – CompartirIgual (by-nc-sa): No se permite un uso comercial de la obra original ni de las posibles obras derivadas, la distribución de las cuales se debe hacer con una licencia igual a la que regula la obra original.

Licencia de Creative Commons

Aprendiendo Arduino by Enrique Crespo is licensed under a Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional License.

Como Empezar con Arduino

Para empezar con Arduino debes preguntarte qué sabes de electrónica y qué sabes de programación. Si no sabes de electrónica, es difícil entender cómo funcionan los elementos con los que va a interactuar la placa Arduino y si no sabes de programación no va a ser posible traducir las órdenes que deseas hacer a la electrónica para que las ejecute Arduino.

La gran ventaja de Arduino es que no es necesario ser un experto en cada una de esas áreas, nos ofrece una capa de programación muy sencilla y el HW es muy sencillo de manejar sin saber mucho de electrónica.

Para empezar con Arduino hay que aprender electrónica y a programar y eso es lo que vamos a aprender en este curso entre otras cosas.

Artículos de como empezar con Arduino:

Un buen tutorial para los que están empezando lo puedes ver en https://openwebinars.net/tutorial-de-arduino/ 

Acerca de Enrique Crespo

El autor del curso es Enrique Crespo. Llevo trabajando con Arduino desde el año 2011 y en el año 2014 empecé mi andadura como profesor de Arduino y otros temas relacionados. Desde entonces he impartido muchos cursos presenciales de Arduino, talleres y conferencias en diversos lugares. También colaboro en el makerspace de la Universidad de la Rioja UR-maker.

Todos los cursos, talleres y conferencias que he impartido puedes verlos en https://www.aprendiendoarduino.com/, donde publico toda la documentación y código.

Twitter @jecrespo: https://twitter.com/jecrespom

Linkedin: https://www.linkedin.com/in/enriquecrespo/ 

Contacto

Para cualquier consulta durante el curso y en cualquier otro momento mediante email: aprendiendoarduino@gmail.com

Twitter @jecrespo: https://twitter.com/jecrespom 

Y más información sobre el curso y el autor: http://www.aprendiendoarduino.com/acerca-de/

Anuncio publicitario

LDR con Arduino

Una fotorresistencia o LDR (por sus siglas en inglés “light-dependent resistor”) es un componente electrónico cuya resistencia varía en función de la luz.

Se trata de un sensor que actúa como una resistencia variable en función de la luz que capta. A mayor intensidad de luz, menor resistencia: el sensor ofrece una resistencia de 1M ohm en la oscuridad, alrededor de 10k ohm en exposición de luz ambiente, hasta menos de 1k ohm expuesto a la luz del sol. Aunque estos valores pueden depender del modelo de LDR.

El LDR actúa como una resistencia variable. Para conocer la cantidad de luz que el sensor capta en cierto ambiente, necesitamos medir la tensión de salida del mismo. Para ello utilizaremos un divisor de tensión, colocando el punto de lectura para Vout entre ambas resistencias. De esta forma:

Dónde Vout es el voltaje leído por el PIN analógico del Arduino y será convertido a un valor digital, Vin es el voltaje de entrada (5v), R2 será el valor de la resistencia fija colocada (10k ohm generalmente) y R1 es el valor resistivo del sensor LDR. A medida que el valor del sensor LDR varía, obtendremos una fracción mayor o menor del voltaje de entrada Vin.

El LDR que usamos: Photoresistor [VT90N2 LDR]

El valor de resistencia eléctrica de un LDR es bajo cuando hay luz incidiendo en él (puede descender hasta 50 ohms) y muy alto cuando está a oscuras (varios megaohmios).

Más información http://diwo.bq.com/descubre-el-ldr/

Ejemplos de uso:

Esquema de conexión:

Leer el valor del LDR cada 500ms y mostrarlo por el Serial Plotter. Usar delay para grabar cada 500ms.

Opcionalmente calcular el máximo y mínimo, mostrándolo por pantalla. Usar las funciones:

Esto nos puede servir para calibrar un elemento y conocer su máximo y mínimo para luego en función de esos valores regular otro elemento como la intensidad de un LED.

Solución: https://github.com/jecrespo/aprendiendoarduino-Curso_Programacion_Arduino/tree/master/Ejercicio02-LDR

Sonda DS18B20 con Arduino

Un sonda de temperatura muy usada con Arduino es la DS18B20, esta usa un bus de comunicación multipunto llamado one wire, lo que nos permite leer muchas sondas con una sola i/o digital.

Sonda: http://www.seeedstudio.com/depot/One-Wire-Temperature-Sensor-p-1235.html

Datasheet sensor: http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf

Librería: http://playground.arduino.cc/Learning/OneWire

Última versión de la librería OneWire:

Existen librerías para la sonda DS18B20 que facilita el trabajo:

Protocolo one-wire:

Esquema de montaje. El bus 1-Wire necesita una resistencia de pull-up de 4K7, y que podemos alimentar el sensor directamente a través del pin Vdd o usar el modo “parásito” y alimentarlo con la propia línea de datos.

Para poder usar las sonda DS18B20 necesitaremos las librerías OneWire y DallasTemperature. Solo hay que buscar e instalar la librería a través del Gestor de Librerías.

Leer la sonda conectada al pin 2:

Código: https://github.com/jecrespo/Arduino-Kit-China-Guide/blob/master/12-DS18B20/12-DS18B20.ino

Más información:

Buzzer con Arduino

Un buzzer pasivo o un altavoz son dispositivos que permiten convertir una señal eléctrica en una onda de sonido. Estos dispositivos no disponen de electrónica interna, por lo que tenemos que proporcionar una señal eléctrica para conseguir el sonido deseado.

En oposición, los buzzer activos disponen de un oscilador interno, por lo que únicamente tenemos que alimentar el dispositivo para que se produzca el sonido.

El buzzer activo es el que tiene la pegatina y al alimentarlo entre 5V y GND suena a una frecuencia fija,

Usar el ejemplo de blink para probarlo y comparar con el buzzer pasivo. El buzzer activo es adecuado para hacer avisos sonoros pero no para reproducir tonos o música.

El buzzer pasivo no tiene un oscilador interno y por lo tanto la frecuencia del sonido debemos hacerla desde Arduino, para ello disponemos de la función tone(): https://www.arduino.cc/reference/en/language/functions/advanced-io/tone/

Tone() genera una onda cuadrada de una frecuencia específica y con un 50% de duty cycle en el pin especificado. La duración del tono puede ser especificado o en caso contrario continúa hasta llamar a la función noTone().

Esquema de conexión:

Hacer sonar un sonido: https://github.com/jecrespo/aprendiendoarduino-Curso_Arduino_2017/tree/master/Ejercicio21-tone

Hacer sonar la musica Star Wars con Arduino: http://miarduinounotieneunblog.blogspot.com.es/2016/01/banda-sonora-de-star-wars-con-un.html

Led RGB con Arduino

Un LED RGB se puede considerar como tres LEDs de colores rojo, verde y azul a los que les han unido (soldado) o bien los ánodos (ánodo, “polo positivo”, común) o bien los cátodos (cátodo, “polo negativo”, común).

Con un led RGB y jugando con las intensidades de cada uno de sus colores se puede obtener cualquier color:

Colores:

Conexión:

Código: https://github.com/jecrespo/Arduino-Kit-China-Guide/blob/master/11-Led_RGB/11-Led_RGB.ino

Observar cómo se iluminan los 3 colores en el setup y luego se generar colores aleatorios.