Arduino la programación a otro nivel.
Imagina la capacidad de realizar un programa de computo y la posibilidad de llevarlo al mundo físico, definitivamente eso es arduino, la capacidad de llevar el mundo virtual al físico, arduino es todo un entorno de desarrollo para pequeños microcontroladores(diminutas computadoras), que incluye un Entorno de Desarrollo Integrado(IDE) un lenguaje de programación propio de arduino, un hardware especifico y libre, todo esto con la facilidad de desarrollo de los sistemas de software y hardware modernos.
Gracias a arduino seremos capaces de realizar un programa de software que maneje un actuador para realizar cierta acción por ejemplo activar un motor o bien encender y apagar luces ó un sistema de aire acondicionado, también podremos leer sensores de humedad, temperatura o de presión atmosférica y alimentar este pequeño microcontrolador con datos del mundo físico para que los pueda manejar.
Arduino como lo explica el video es básicamente un microcontrolador y un microcontrolador es básicamente una computadora pequeña, lo que diferencia un microcontrolador de una computadora con microprocesador es que el microcontrolador incluye todas las partes de una computadora es un solo encapsulado, mientras que la computadora dentro del mother board o tarjeta madre los incluye todos, por ejemplo el CPU, la ALU, Memoria ROM, Memoria RAM, etc.
Ventajas de Arduino
Barato: Las placas Arduino son relativamente baratas comparadas con otras plataformas microcontroladores. La versión menos cara del modulo Arduino puede ser ensamblada a mano, e incluso los módulos de Arduino pre ensamblados cuestan menos de 50$.
Multiplataforma: El software de Arduino se ejecuta en sistemas operativos Windows, Macintosh OSX y GNU/Linux. La mayoría de los sistemas microcontroladores están limitados a Windows.
Entorno de programación simple y claro: El entorno de programación de Arduino es fácil de usar para principiantes, pero suficientemente flexible para que usuarios avanzados puedan aprovecharlo también. Para profesores, está convenientemente basado en el entorno de programación Processing, de manera que estudiantes aprendiendo a programar en ese entorno estarán familiarizados con el aspecto y la imagen de Arduino.
Código abierto y software extensible: El software Arduino está publicado como herramientas de código abierto, disponible para extensión por programadores experimentados. El lenguaje puede ser expandido mediante librerías C++, y la gente que quiera entender los detalles técnicos pueden hacer el salto desde Arduino a la programación en lenguaje AVR C en el cual está basado. De forma similar, puedes añadir código AVR-C directamente en tus programas Arduino si quieres.
Código abierto y hardware extensible: El Arduino está basado en microcontroladores ATMEGA8 y ATMEGA168 de Atmel. Los planos para los módulos están publicados bajo licencia Creative Commons, por lo que diseñadores experimentados de circuitos pueden hacer su propia versión del módulo, extendiéndolo y mejorándolo. Incluso usuarios relativamente inexpertos pueden construir la versión de la placa del módulo para entender como funciona y ahorrar dinero.
El 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.
Tu mismo puedes crearte tu propia placa compatible con Arduino, en el Arduino IDE existe una opción que se llama Grabar secuencia de arranque. Esta opción puede servir para grabar la secuencia de bootloader (cargador de inicio) en el microcontrolador de Arduino.
Diagrama de los pines de arduino.
Definitivamente arduino es una excelente opción para extender la programación.