Tema 13: Arduino

Arduino

Arduino es una plataforma de desarrollo basado un en una plataforma de hardware y software libre o también llamado de código libre, esto quiere decir que el usuario es libre de modificar y usar para poder realizar proyectos de múltiples índoles.
Arduino se basa en el empleo de un hardware basado en micro controladores y múltiples conexiones de diferente naturaleza los cuales permiten al usuario el poder conectar una gran variedad de sensores o dispositivos con los cuales se es posible realizar una gran amplia gama de acciones como, por ejemplo, realizar un módulo de control para servomotores, un centro de control para realizar un sistema automático con múltiples sensores, etc.

El microcontrolador de la placa se programa usando el “Arduino Programming Language” (basado en Wiring) y el “Arduino Development Environment” (basado en Processing). Los proyectos de Arduino pueden ser autónomos o se pueden comunicar con software en ejecución en un ordenador (por ejemplo con Flash, Processing, MaxMSP, etc.).
Las placas se pueden ensamblar a mano o encargarlas pre-ensambladas; el software se puede descargar gratuitamente.
El hardware de arduino se basa en una placa con un microcontrolador con el cual que puede programar para cumplir una tarea específica, este microcontrolador cumple básicamente la misma función de un procesador convencional de una computadora de escritorio pero la diferencia entre ambos está en que el microcontrolador incorpora elementos que en una computadora de escritorio se mantienen de manera independiente: memoria, unidad central de procesamiento, interfaz de entrada y salida de periféricos, etc. Se dispone de una gran cantidad de variedad de placas arduino los cuales están pensados para su uso e implementación en diferentes proyectos con necesidades específicas:

  • Arduino Uno: Es la placa estándar y posiblemente la más conocida y documentada. Salió a la luz en septiembre de 2010 sustituyendo su predecesor Duemilanove con varias mejoras de hardware que consisten básicamente en el uso de un USB HID propio en lugar de utilizar un conversor FTDI para la conexión USB. Es 100% compatible con los modelos Duemilanove y Diecimila. Viene con un Atmega328 con 32Kbytes de ROM para el programa.

  • Arduino Mega:Versión con más potencia, más conexiones y de mayor tamaño pensada para tareas más complejas, cuenta con el microcontrolador Atmega2560 con más memoria para el programa, más RAM y más pines que el resto de los modelos.

  • Arduino Ethernet:Versión de arduino uno con el que cuenta con un puerto ethernet, con el cual permite el poder conectarse a una red o internet.

  • Arduino Due:Arduino con la mayor capacidad de procesamiento, basado en un microcontrolador de 32 bit y arquitectura ARM: Atmel SAM3X8E ARM Cortex-M3 CPU.

  • Arduino Micro:Arduino de dimensiones reducidas basado en el microcontrolador ATmega32u4 el cual trae integrado la comunicación USB, lo que elimina la necesidad de un segundo procesador. Esto tiene otras implicaciones en el compartimento del arduino al conectarlo al ordenador, lo que no lo hace apto para iniciarse con él.

  • Arduino Mini:Versión miniaturizada de la placa Arduino uno basado en el ATMega328. Mide tan sólo 30x18mm y permite ahorrar espacio en los proyectos que lo requieran. Las funcionalidades son las misma que Arduino uno.

  • Arduino Lilypad:Diseñado para dispositivos “wearables” y e-textiles. Para coser con hilo conductor e instalarlo sobre prendas.
Los componentes que conforman una placa arduino pueden variar de acuerdo a la versión que se esté usando, en este casi se nombraran los componentes del arduino uno esto por la razón que es el más usado y común:


  1. Puerto USB: Puerto de conexión con el cual se pueden cargar la programación al microcontrolador de la placa arduino, como también proporcionar alimentación eléctrica a la misma.
  2. Conector de adaptador de corriente:Conexión de alimentación eléctrica directa, el transformador el cual se debe se usar debe de dar un voltaje entre 6 y 12 voltios.
  3. GND:Abreviación de “GROUND”, tierra en español, este puerto de conexión es usado para realizar una conexión a tierra de los circuitos que se vayan a realizar con la placa arduino.
  4. Puerto de alimentación 5V:Puerto que proporciona un voltaje de 5V, este puerto puede ser usado para proporcionar energía eléctrica para circuitos o componentes tales como sensores.
  5. Puerto de alimentación 3.3V:Cumple la misma función que el puerto de 5V, pero este puerto proporciona un voltaje de 3.3V.
  6. Pines I/O analógicos:Pines identificados por las siglas (A0 – A5), estos pines de conexión pueden ser empleados para realizar conexiones con dispositivos que hagan uso de señales analógicas tanto de entrada como de salida, por ejemplo, sensores de temperatura, sensores magnéticos, etc.
  7. Pines I/O digitales:Pines identificados por la numeración del 0 al 13, cumple básicamente la misma función que los pines analógicos, pero con la diferencia que estos pueden recibir y enviar señales digitales, por ejemplo, display LED, pulsadores, etc.
  8. Pines PWM:Identificados con el símbolo (~) ubicados en la sección de los pines digitales, estos pines tienen la particularidad de modular el ancho de los pulsos de salida de ahí las siglas PWM.
  9. Pines AREF:Soportes de referencia analógica. La mayoría de las veces se puede dejar este pin solo. A veces se utiliza para establecer una tensión de referencia externa (entre 0 y 5 voltios) como el límite superior para los pines de entrada analógica.
  10. Botón reinicio:Cumple la función de reiniciar el código cargado en el microcontrolador del arduino al conectar temporalmente el pin de reset a tierra.
  11. Indicador LED de alimentación:Diodo LED el cual al encender indica al usuario que la placa arduino está en funcionamiento.
  12. Indicadores LED RX TX:Diodos LED los cuales indican al usuario que se están cargando o transmitiendo información a la placa arduino.
  13. Microcontrolador:Pieza fundamental de la placa arduino, es la unidad central de procesamiento, se encarga de ejecutar el código que es guardado en el mismo, este microcontrolador puede variar de acuerdo a cada modelo de placa arduino con diferentes capacidades.
  14. Regulador de voltaje:Se encarga de regular el voltaje de entrada por el puerto de adaptador de corriente, protegiendo a la placa de cualquier voltaje que exceda lo recomendado para su funcionamiento.
TRABAJO REALIZADO EN EL TALLER:

-Mediante el uso de una guía básica para arduino proporcionada por el docente se procederá a realizar las practicas pertenecientes de las páginas 62 y 94

PRIMERA TAREA 
  • Trabajo de página 62: Este trabajo consiste en encender un diodo LED por un periodo de tiempo determinado por el usuario, para que se apague e inicie el ciclo nuevamente. Este es el código extraído de la guía:



Este es el código modificado para que encienda y apague 3 diodos LED de forma secuencial:


Fotografía en la que se hace uso una placa de arduino junto con el entrenador:


-SEGUNDA TAREA 
  • Trabajo página 94: Este trabajo consiste en encender un diodo LED, mediante el empleo de un pulsador el cual realizara una cuenta ascendente, en este proceso el arduino ira comparando dicha cuenta con una serie de números los cuales están establecidos para que el arduino al detectar alguna similitud encienda el diodo LED. Este es el código extraído de la guía:


Fotografía en la que se hace uso una placa de arduino junto con el entrenador


-TERCERA TAREA 

- En este apartado el docente propuso realizar una modificación del código para que se realice un conteo descendiente tomando como punto inicial el número 27, posteriormente se tienen que encender tres diodos LED formando así un semáforo en la cual cuando el conteo llegue al número 25 se tiene que encender el LED verde, cuando llegue al número 3 el LED amarillo se tiene que encender y cuando llegue al número 1 se encienda el LED rojo:

-Programación de la segunda tarea 




CUENTA REGRESIVA 



-Estas son capturas tomadas del simulador Tinkercad, ya que no se puedo realizar la implementación en una placa arduino en el taller por la falta de tiempo ocasionada por las labores de mantenimiento del taller:

FOTO DE LA PRÁCTICA 

-VÍDEO EXPLICATIVO
 
-Le adjunto el video de la semana 13 que se subio a la plataforma de youtube.
-https://www.youtube.com/watch?v=lITPJBiHbZY&feature=youtu.be

Observaciones

  • Al hacer uso del entrenado no había la necesidad de realizar las conexiones a resistencias hacia los diodos LED en la realización de las tres tareas dadas por el docente.
  • Al usar el entrenado no hacía falta la conexión del pulsador para realizar las dos últimas tareas que dejo el docente.
  • A no funcionar correctamente el entrenado en el apartado de los pulsadores se ha tenido que adaptar el código para que el conteo de la última tarea se haga de forma automática.
  • Debido a que el día del taller se programó una jornada de mantenimiento se tuvo que salir del mismo a una hora previa de la hora normal de la jornada normal de la sesión.
Conclusiones

  • Hay que tener cuidado cuando se termina de escribir una línea de código, ya que de no hacerlo no se podrá copilar el programa en el arduino.
  • Para la programación en arduino se hace uso de códigos predefinidos los cuales hacen acciones lógicas previamente definidas propias de la lógica booleana.
  • Debido a la gran flexibilidad que ofrece el hardware y software de la plataforma arduino se pueden crear una gran cantidad de proyectos mediante el empleo de una gran variedad de sensores y actuadores.
  • Arduino como plataforma tiene un amplio catálogo de hardware en donde sus diferencias están en características específicas para que el arduino pueda ser usado en condiciones específica, adicional se puede diseñar y armar módulos arduino que se amolden a las necesidades especiales y específicas de cada usuario, para lo cual tiene que hacer uso de plantillas que la propia empresa Arduino da de forma libre.
FOTO DEL GRUPO 

INTEGRANTES
-Yerdrick Tunco 
-Jhonatan Flores
-Andre Mejia Diaz  

-Foto de referencia que se realizo las actividades en el laboratorio. 

Descarga de informe:Informe Completo
Simulación en Tinkercad: Simulacion

Comentarios

Entradas populares de este blog

TEMA 11: Contador en Anillo y Matriz de Leds

TEMA 12: Presentación de la "E"