ALVAREZ MEDINA ARISAID
SANCHEZ PINTO ANGEL ANTARES
Instituto Politécnico Nacional | Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Ticoman
Introducción
Arduino es una plataforma de electrónica "open-source" o de código abierto cuyos principios son contar con software y hardware fáciles de usar. Arduino es tanto software como hardware, y aquí viene la primera diferencia con otras placas y microcontroladores. Los entornos de desarrollo y lenguaje de programación de Arduino y las placas en las que se ejecutan han sido desarrollados de la mano, por lo que tenemos asegurada tanto la compatibilidad como la sencillez de desarrollo sobre ellas. l hardware Arduino más sencillo consiste en una placa con un microcontrolador y una serie de puertos de entrada y salida. Los microcontroladores AVR más usados son el Atmega168, Atmega328, Atmega1280, y Atmega8 por su sencillez y bajo coste que permiten el desarrollo de múltiples diseños, aunque también nos encontramos microcontroladores CortexM3 de ARM de 32 bits,5 que coexistirán con las más limitadas, pero también económicas AVR de 8 bits. ARM y AVR son plataformas diferentes, pero gracias al IDE de Arduino los programas se compilan y luego se ejecutan sin cambios en cualquiera de las plataformas. La diferencia entre los distintos Arduino la encontraremos por un l ado en la tensión utilizada en las placas. Generalmente las microcontroladoras con CortexM3 tienen un voltaje de 3,3 voltios, mientras que la mayor parte de las placas con AVR utilizan una tensión de 5 voltios. Esto luego es fundamental para utilizar lógica TTL (frente a lógica CMOS) por ejemplo, lo que abre la posibilidad de utilizar chips baratos y complementar el Arduino con alguna funcionalidad externa. También hay placas que pueden conmutar el voltaje, así que tampoco es un factor determinante para seleccionar una placa u otra. Y, por otra parte, el número de conexiones, procesador utilizado, memoria y, sobre todo, el número de e ntradas y salidas y la posibilidad de alimentar distintos elementos desde la propia placa Arduino. Arduino se puede utilizar para desarrollar elementos autónomos, o bien conectarse a otros dispositivos o interactuar con otros programas, para interactuar tanto con el hardware como con el software. Nos sirve tanto para controlar un elemento, pongamos por ejemplo un motor que nos suba o baje una persiana basada en la luz que haya y gracias a un sensor conectado al Arduino, o bien para transformar la información de una fuente, como puede ser un teclado, y convertir la información a algo que entienda por ejemplo un ordenador. Ejemplo de Hardware l microprocesador ATmega328 32 kbytes de memoria Flash 1 kbyte de memoria RAM 16 MHz Entradas y salidas 13 pins para entradas/salidas digitales (programables) 5 pins para entradas analógicas 6 pins para salidas analógicas (salidas PWM)
Completamente autónomo: Una vez programado no necesita estar conectado al PC ESPECIFICACIONES TECNICAS Microcontrolador ATmega328 Voltaje de operación 5V Voltaje de entrada (recomendado) 7-12 V Voltaje de entrada (limite) 6-20 V Digital I/O Pins 14 (con 6 salidas PWM) Entradas analógicas Pins 6 DC corriente I/O Pin 40 mA DC corriente 3.3V Pin 50 mA Memoria Flash 32 KB (2 KB para el bootloader) SRAM 1 KB EEPROM 512 byte Velocidad de reloj 16 MHz Las Entradas analógicas son de 10 bits, por lo que entregan valores entre 0 y 1023. El rango de voltaje está dado entre 0 y 5 volts, pero utilizando el pin AREF, este rango se puede variar a algún otro deseado.
Objetivo
El objetivo de la práctica es la familiarización con el sistema de Arduino utilizado, con el fin de obtener conocimiento sobre la capacidad que tienen las placas de este tipo que son usadas a menudo en la industria. Desarrollo: Primero se eligió dentro del entorno de circuits.io la plataforma ARDUINO UNO:
Se identificaron las conexiones básicas a corriente, tierra y distintas compuertas lógicas:
En primera instancia se determinó que la operación que llevará a cabo ARDUINO será encender y apagar tres diodos LED de manera secuencial.
Esto es posible modificando el código del microcontrolador de la siguiente forma:
Para afectar la velocidad de encendido sólo de modifica la variable delaytime: Y para afectar la secuencia de encendido sólo se modifica la posición del encendido del LED en el código:
Finalmente se introdujo la posibilidad de modificar la velocidad de encendido de los LEDs mediante un interruptor. Esto se logró primero poniendo la fuente de alimentación a 5V.
Se agregó el interruptor y se conectó de la siguiente forma: rojo-corriente, azul-RX<-0, negro-tierra
Para dejar funcionando el arreglo es necesario agregar una variable: Y modificar el código:
Conclusión Es importante conocer la funcionalidad que tiene este tipo de dispositivos y plataformas, debido a que, aunque en esta práctica se hizo con fines didácticos, puede tener una aplicación más sólida en la industria o en el área de diseño de elementos electrónicos. Además supone una gran revolución en los circuitos programables, debido a su bajo costo, universalidad (se puede usar en cualquier plataforma), un entorno sencillo y claro con el que facilita muchísimo la programación del mismo.