AUCHINO PRÁCTICAS DE ARDUINO CON S4A 50 PRÁCTICAS RESUELTAS Y 60 EJERCICIOS PROPUESTOS Pedro Gómez Casado Año 2018 Cincuenta prácticas resueltas sobre uso y funcionamiento de la placa microcontroladora Arduino Uno programada mediante S4A y sesenta ejercicios propuestos con un procedimiento de trabajo basado en la sencillez y el autoaprendizaje, que nos darán acceso a conocimientos básicos en Robótica y Domótica Contenido PRÁCTICA 0 FUNCIONAMIENTO BÁSICO E INSTALACIÓN DEL PROGRAMA S4A. ................................................................................................................................................... 5 PRÁCTICA 1 ENTRADAS DIGITALES. ...................................................................................................................................................................................................................... 10 PRÁCTICA 2 ENTRADA ANALÓGICA. ..................................................................................................................................................................................................................... 12 PRÁCTICA 3 MONTAJE PULL DOWN. .................................................................................................................................................................................................................... 15 PRÁCTICA 4 PULL UP. ........................................................................................................................................................................................................................................... 17 PRÁCTICA 5 SALIDA DIGITAL. ............................................................................................................................................................................................................................... 19 PRÁCTICA 6 SALIDA LED INTERMITENTE. ............................................................................................................................................................................................................. 20 PRÁCTICA 7 ENTRADA PULL DOWN SALIDA LED. ................................................................................................................................................................................................ 22 PRÁCTICA 8 ENTRADA PULL UP SALIDA LED........................................................................................................................................................................................................ 24 PRÁCTICA 9 SALIDA ANALÓGICA (PWM). ............................................................................................................................................................................................................. 26 PRÁCTICA 10 ENTRADA Y SALIDA ANALÓGICA. .................................................................................................................................................................................................... 28 PRÁCTICA 11 CONTROL DE UNA SALIDA ANALÓGICA MEDIANTE DESLIZADOR EN PANTALLA. ........................................................................................................................... 30 PRÁCTICA 12 SALIDA LED INTERMITENTE CON DISFRAZ. ..................................................................................................................................................................................... 34 PRÁCTICA 13 CONTROL DE SALIDA DIGITAL MEDIANTE TECLADO. ...................................................................................................................................................................... 38 PRÁCTICA 14 CONTROL DE SALIDA DIGITAL MEDIANTE PULSADORES EN EL ESCENARIO CON EL USO DE DISFRACES Y MENSAJES. .................................................................. 40 PRÁCTICA 15 ACTIVAR DOS SALIDAS CONECTADAS A DOS DIODOS MEDIANTE DOS PULSADORES Y DISFRACES. ............................................................................................. 51 PRACTICA 16 ENTRADA ANALÓGICA Y SALIDA ANALÓGICA HACIENDO USO DE UNA VARIABLE. ....................................................................................................................... 56 PRÁCTICA 17 CONTADOR SENCILLO CON FILTRADO DE PULSACIÓN. .................................................................................................................................................................. 58 PRÁCTICA 18 CONTADOR SENCILLO CON PUESTA A CERO. ................................................................................................................................................................................. 61 PRÁCTICA 19 CONTADOR CON INCREMENTO Y DECREMENTO DE CONTAJE. ..................................................................................................................................................... 64 Prácticas S4A Página 2 PRÁCTICA 20 DIODOS LED UNIDOS A SALIDAS DIGITALES CONTROLADOS MEDIANTE OBJETOS ARDUINO Y USO DE MENSAJES. ..................................................................... 67 PRÁCTICA 21 ACTIVAR DOS SALIDAS CONECTADAS A DOS DIODOS MEDIANTE DOS PULSADORES. METODO ALTERNATIVO CON UN OBJETO ARDUINO Y DOS OBJETOS NO ARDUINOS. ........................................................................................................................................................................................................................................................... 74 PRÁCTICA 22 CONEXIÓN DE UN DIODO LED RGB A SALIDAS DIGITALES CONTROLADO CON UNA ENTRADA DIGITAL. ....................................................................................... 80 PRÁCTICA 23 CONEXIÓN DE UN DIDO LED RGB A SALIDAS ANALÓGICAS CONTROLADO POR TRES POTENCIÓMETROS CONECTADOS A ENTRADAS ANALÓGICAS. ................. 84 PRÁCTICA 24 INTERRUPTOR CREPUSCULAR MEDIANTE EL USO DE UNA RESISTENCIA LDR. ............................................................................................................................... 88 PRÁCTICA 25 MEDIDA DE TEMPERATURA CON SENSOR LM35. ............................................................................................................................................................................ 95 PRÁCTICA 26 SENSOR DE PRESENCIA HC- SR501. ................................................................................................................................................................................................. 99 PRÁCTICA 27 CONEXIÓN DE UN ZUMBADOR. .................................................................................................................................................................................................... 106 PRÁCTICA 28 CONEXIÓN DE UN SERVOMOTOR................................................................................................................................................................................................. 109 PRÁCTICA 29 USO DE UN RELÉ PREPARADO PARA CONECTARLO DIRECTAMENTE A LA SALIDA ARDUINO. ...................................................................................................... 111 PRÁCTICA 30 CONEXIÓN DE UN JOYSTICK A ARDUINO. ..................................................................................................................................................................................... 117 PRÁCTICA 31 PUENTE H L298N INVERSIÓN DEL SENTIDO DE GIRO DE UN MOTOR DE CORRIENTE CONTINUA. ............................................................................................ 121 PRÁCTICA 32 CONTROL DE POTENCIA USANDO EL L 298N. ............................................................................................................................................................................... 123 PRÁCTICA 33 SENSOR DE SONIDO KY-038 CONTROLANDO UNA SALIDA DIGITAL. ........................................................................................................................................... 125 PRÁCTICA 34 INTERRUPTOR DE ESCENARIO ACTUANDO SOBRE UNA SALIDA DIGITAL. .................................................................................................................................... 129 PRÁCTICA 35 PULSADOR DE ESCENARIO ACTIVANDO UNA SALIDA DIGITAL. .................................................................................................................................................... 135 PRÁCTICA 36 PUNTO DE LUZ SIMPLE Y PUNTO DE LUZ CONMUTADO CON INTERRUPTORES DE ESCENARIO. ................................................................................................. 141 PRÁCTICA 37 CONTROL DE PERSIANA DE ESCENARIO CON PULSADORES DE ESCENARIO. ................................................................................................................................ 156 PRÁCTICA 38 SERVOMOTOR, MOVIMIENTO ESCALONADO............................................................................................................................................................................... 165 PRÁCTICA 39 REGULACIÓN DE LA INTENSIDAD LUMINOSA CON POTENCIÓMETRO Y DISFRACES. ................................................................................................................... 168 PRÁCTICA 40 CONTROL DEL GIRO DEL SERVOMOTOR CON UN POTENCIÓMETRO. .......................................................................................................................................... 171 PRÁCTICA 41 SERVO ACTIVADO POR BARRERA COMPUESTA POR LED Y LDR. ................................................................................................................................................. 175 Prácticas S4A Página 3 PRÁCTICA 42 PUNTO LUZ CONMUTADO DESDE INTERRUPTORES DE ESCENARIO Y PULSADORES ARDUINO. .................................................................................................. 185 PRÁCTICA 43 CONTROL DE PERSIANA DE ESCENARIO CON PULSADORES ARDUINO. ......................................................................................................................................... 201 PRÁCTICA 44 CONTRASEÑA A TRAVÉS DE TECLADO CON TRES INTENTOS. ....................................................................................................................................................... 211 PRÁCTICA 45 JUEGO PONG CON JOYSTICK. ....................................................................................................................................................................................................... 216 PRÁCTICA 46 JUEGO USANDO DOS JOYSTICK. ................................................................................................................................................................................................... 223 PRÁCTICA 47 APERTURA DE PUERTA CON CONTRASEÑA Y SERVO. ................................................................................................................................................................... 231 PRÁCTICA 48 PERSIANA MOTORIZADA C0NTROLADA CON PULSADORES ARDUINO Y DE ESCENARIO. ............................................................................................................ 257 PRÁCTICA 49 TOLDO MOTORIZADO FUNCIONAMIENTO AUTOMÁTICO CON LDR Y MANUAL CON PULSADORES DE ESCENARIO Y ARDUINO. ............................................... 281 PRÁCTICA 50 CAPOTA CON SERVOMOTOR COMANDADO A TRAVÉS DE PULSADORES O MODO AUTÓMATICO CON LDR Y POSIBLIDADAD DE ACTIVACIÓN EN MODO REMOTO. ............................................................................................................................................................................................................................................................ 312 EJERCICIOS BÁSICOS ASOCIADOS A LAS PRÁCTICAS. .......................................................................................................................................................................................... 338 EJERCICIOS PROPUESTOS. PRÁCTICAS DE ENTRADAS Y SALIDAS. ....................................................................................................................................................................... 356 EJERCICIOS PROPUESTOS SENSORES Y ACTUADORES. ...................................................................................................................................................................................... 361 DIRECCIONES DE INTERNET. ............................................................................................................................................................................................................................... 367 Prácticas S4A Página 4 PRÁCTICA 0 FUNCIONAMIENTO BÁSICO E INSTALACIÓN DEL PROGRAMA S4A. Estas prácticas tienen como objetivo el aprender a usar una placa microcontroladora junto a componentes eléctricos y electrónicos que conectados a esta, forman un sistema capaz de controlar y automatizar procesos con múltiples aplicaciones. Estos sistemas se encuentran en todos los aparatos que usamos a diario por sencillos y pequeños que sean, desde un electrodoméstico hasta nuestro automóvil, en una cantidad que nos sorprendería. Con la aparición del Open Harware y plataformas como Arduino, se nos ofrece la oportunidad de acceder a incorporar unos conocimientos que a priori solo son accesibles a técnicos con alta cualificación, pero con las nuevas herramientas de programación gráfica simplifican tanto el aprendizaje que con la excusa de aprender robótica, nos enriquecemos con el uso del pensamiento computacional, abordar trabajos de forma estructurada, la programación orientada a objetos y comprender mejor nuestro entorno, incorporando conocimiento tecnológico que tanto nos afecta en nuestra vida diaria. Un sistema microcontrolador se compone de: Un microprocesador, capaz de secuenciar operaciones. Un almacén de memoria donde podemos guardar información en formato binario (0 y 1) Unos circuitos electrónicos, llamados puertos capaces de gestionar la entrada y salida de la información. Todo ello contenido en un solo integrado que nos permite realizar el control de procesos mediante sensores (suelen medir magnitudes físicas) y actuadores (suelen ser motores, servos, relés, etc). Un programa de control consiste en una secuencia de instrucciones que el microcontrolador debe de ir leyendo y ejecutando. Esas instrucciones que lee y ejecuta deben de estar en un idioma que entienda el microcontrolador, denominado lenguaje de bajo nivel también llamado lenguaje máquina, demasiado complicado de escribir además de necesitar conocer la estructura interna del microcontrolador. Para abstraernos de la circuitería interna del microcontrolador y el lenguaje máquina, aparece el lenguaje de alto nivel también llamado lenguaje fuente que utiliza instrucciones similares a nuestro lenguaje verbal, con lo que solo nos tendremos que ocupar de describir el proceso de forma correcta y alguien traducirá a lenguaje máquina nuestro programa para que sea entendido por el microcontrolador. Prácticas S4A Página 5 La herramienta que traduce el lenguaje de alto nivel a lenguaje máquina, es el compilador que se encuentra en nuestro ordenador y después de traducir las instrucciones, las lleva al microcontrolador mediante un puerto de comunicaciones, almacenándolas en su memoria interna, de tal forma que el microcontrolador podrá ejecutar el programa ya compilado de manera autónoma, desconectado del ordenador. Otra forma de trabajar un sistema microcontrolador es mediante un lenguaje interpretado, en donde el programa fuente es compilado instrucción a instrucción, mediante el siguiente proceso: Se compila una instrucción. Se envía la instrucción al microcontrolador. Se ejecuta la instrucción, haciendo uso de un programa llamado firmware residente en la memoria del microcontrolador. Se vuelve a repetir el proceso. El firmware es el programa que cargamos en la memoria del microcontrolador, haciendo de enlace entre las instrucciones que le llegan desde el ordenador y la respuesta del hardware o circuitos electrónicos del microcontrolador. Esta forma de ejecutar un programa provoca un retraso en la respuesta del microcontrolador, además de tener que estar permanentemente unido al ordenador ya sea mediante cable o radioenlace. Como ventajas tenemos. Podemos realizar programas extensos en tamaño sin tener que preocuparnos, si nuestro microcontrolador podrá almacenarlos en su memoria. El programa podrá estar escrito con la posibilidad de multitarea, donde varios objetos puedan realizar acciones paralelas, con la facilidad que nos da el describir un proceso con un lenguaje orientado a objetos. No es determinante la potencia y velocidad de cálculo de nuestro microcontrolador, ya que el programa se ejecuta en el ordenador y no en el microcontrolador. S4A es un entorno de programación de sistemas embebidos (compactos) para la plataforma Arduino, basado en programa interpretado, que procede de SCRATCH. Prácticas S4A Página 6 Es un lenguaje de alto nivel con un entorno de programación muy amigable que permite escribir las instrucciones de forma gráfica mediante bloques, con lo que se convierte en una herramienta que da acceso a un perfil de usuarios sin conocimientos previos de electrónica y programación. Su aprendizaje es sencillo y gradual, con resultados visibles e inmediatos, pudiendo poner en práctica el trabajar con pensamiento computacional, herramienta transversal muy útil para aprender a abordar y resolver problemas. Para programar debemos partir de algunos conceptos previos. El entorno simula un teatro donde tenemos un escenario y los actores, siendo nuestro papel el de dramaturgo o escritor. Podremos cambiar de escenario tantas veces como necesitemos y en cada escena podrán aparecer los actores necesarios para el desarrollo del guión. Los actores están vestidos con disfraces y podremos cambiarle el disfraz en función del guión o del escenario. A cada actor tendremos que escribirle su guión, es decir que tiene que decir y hacer en cada momento de la representación. Los actores interactúan entre sí hablándose, en nuestro caso mandándose mensajes entre ellos. Existen dos tipos de actores, los que no pueden interactuar con el público, solo con los otros actores del escenario y los que pueden interactuar con el público de la sala, observando su comportamiento, pidiéndole colaboración, realizando preguntas con el objetivo de obtener respuestas, con la característica de que pueden modificar el guión en función de las respuestas. Al escribir el guión es fácil cometer el error de ordenar a dos actores realizar alguna acción que sea contradictoria, de tal forma que en un mismo instante un actor ejecuta una orden que podría ser sube la persiana, y a otro se le da la orden contraria baja la persiana. El desarrollo de la representación es secuencial, es decir cada actor ejecuta su guión de forma ordenada de principio a fin con un desarrollo lineal en el tiempo, pero con la particularidad de poder romper la secuencia en función del cambio de las condiciones programadas. A los actores que no interactúan con el entorno físico se les llama objetos y a los actores que interactúan con el entorno físico los llamamos objetos Arduino ya que tenemos la capacidad de poder leer las entradas físicas y escribir en las salidas. Prácticas S4A Página 7 Para trabajar con S4A deberemos instalar el programa en el ordenador, pudiéndolo descargar desde la página oficial. http://s4a.cat/index_es.html Una vez instalado S4A en nuestro ordenador, tenemos que instalar el firmware (sketch_nov06a) en la placa microcontroladora mediante el IDE de Arduino, teniendo en cuenta que existe comunicación entre el ordenador y el microcontrolador, confirmando en el menú herramientas que la placa que tenemos, es la que corresponde en modelo y que el puerto asignado por el sistema está activo, que generalmente es el alternativo al COM1. El programa de firmware sketch_nov06a lo descargamos desde la misma página oficial de S4A. Se habrá realizado correctamente la instalación si al ejecutar el programa S4A los LEDs indicadores asociados al puerto serie y las patillas de comunicación Rx y Tx, parpadean de forma permanente indicando que existe comunicación entre la placa y el ordenador. Cuando en un montaje de una práctica, el parpadeo se detiene apagándose los LED de comunicación quedando solo el LED de alimentación, deberemos de desconectar rápidamente la alimentación en las patillas correspondientes, ya que esto es un signo de haber realizado una conexión incorrecta y provocar un cortocircuito. Si el resultado de nuestro programa no es que a priori debería ser, tenemos una herramienta de depuración en la localización de errores de secuenciación de órdenes, en el menú editar de ejecución paso a paso. Prácticas S4A Página 8 Las prácticas se han hecho intentando cumplir tres condiciones: Deben ser accesibles buscando la sencillez, eliminando todas las dificultades que pudieran ser añadidas. Deben de ser útiles, que se puedan aplicar a trabajos y proyectos reales, donde cada práctica sea una pieza de una construcción mayor. Orientadas al autoaprendizaje, donde; “se aprende haciendo”. De las 50 prácticas las 46 primeras son asumibles en dificultad y extensión, siguiendo el siguiente procedimiento: Leyendo que es lo que se pretende. Realizando el montaje del croquis en Fritzing. Copiando el programa de control. Comprobando que tanto el montaje como el programa de control están correctos y la práctica funciona. Las cuarenta primeras prácticas llevan asociado un ejercicio en el que se propone una pequeña modificación o ampliación, de tal forma que obliga a pensar que es lo que se ha hecho y como podemos modificarlo. También se proponen diez ejercicios sobre entradas y salidas y diez ejercicios sobre sensores y actuadores, basados en varias prácticas, donde su resolución ya no es tan inmediata, permitiendo investigar posibles soluciones. Desde la práctica cuarenta y siete a la cincuenta se realizan aplicaciones que integran varios elementos de control, siendo más extensas. Estas prácticas pueden servir para ser incorporadas a proyectos que integren varios controles de automatización como pueden ser domotizar una vivienda, realizar un proyecto de eficiencia energética, etc. Por último agradecer al equipo de Citilab, crear y distribuir esta magnífica herramienta que es S4A, permitiéndonos divulgar y acercar el conocimiento tecnológico de una manera sencilla a multitud de estudiantes y aficionados a la electrónica. Prácticas S4A Página 9 PRÁCTICA 1 ENTRADAS DIGITALES. Realizar el siguiente montaje, conectando la entrada digital 2 a 5V y la entrada digital 3 a 0V, comprobando que en la tabla de sensores, la entrada digital 2 cambia a estado true y la entrada digital 3 cambia a estado false Prácticas S4A Página 10
Description: