Lenguaje de interfaz (Introduccion arduino)
INTRODUCCIÓN ARDUINO
1.1 ARDUINO
Es una placa programable con entradas y salidas digitales y analógicas, cuyo bajo costo la hace ideal para iniciarse en automatización o realizar pequeños proyectos domésticos en electrónica y robótica.
Esto quiere decir que es una pequeña maquina que funciona de manera autónoma capaz de recibir información del entorno (sensores) y realizar acciones según un programa que introducimos con una computadora, y que se puede ejecutar de manera autónoma.
Este tipo de autómatas se emplean para interactuar y controlar todo tipo de sistemas, desde instalaciones en edificios (climatización, bombeo), instalaciones industriales, vehículos, robots… cualquier sistema físico que necesite ser controlado electrónicamente.
Todos los conocimientos sobre electrónica, automatización, programación y telecomunicación, lo podréis aplicar directamente y con facilidad en caso de tener que emplear un autómata más caro, por lo que Arduino es una plataforma excelente para práctica y aprendizaje.
1.2 VENTAJAS Y DESVENTAJAS
VENTAJAS
· Arduino simplifica el proceso de trabajar con microcontroladores.
· Bajos costos. Las placas Arduino son más accesibles comparadas con otras plataformas de microcontroladores. Los módulos más caros de Arduino pueden ser montadas a mano bajando sus costos.
· Multi-Plataforma. El software de Arduino funciona en los sistemas operativos Windows, Macintosh OSX y Linux; mientras que la mayoría de otros entornos para microcontroladores están únicamente limitados a Windows.
· Entorno de programación simple y directa. El entorno de programación de Arduino es fácil de usar para principiantes y flexible para los usuarios avanzados. Además, Arduino está basado en el entorno de programación de Procesing, con lo que los estudiantes que aprendan a programar en este entorno se sentirán familiarizados con el entorno de desarrollo Arduino.
· Software ampliable y de código abierto. El software Arduino es de distribución de licencia libre y preparado para ser adaptado por programadores experimentados. El lenguaje puede ampliarse a través de librerías de C++, y en caso de querer profundizar en los detalles técnicos, se puede dar el salto a la programación en el lenguaje AVR C en el que está basado. De igual modo se puede añadir directamente código en AVR C en los programas de los usuarios, si es que así lo desean.
· Hardware ampliable y de Código abierto. Arduino está basado en los microcontroladores ATMEGA168, ATMEGA328 y ATMEGA1280. Los planos de los módulos están publicados bajo licencia Creative Commons, por lo que diseñadores de circuitos con experiencia pueden hacer su propia versión del módulo, ampliándolo u optimizándolo. Incluso usuarios relativamente inexpertos pueden construir la versión para placa de desarrollo para entender cómo funciona y ahorrar algo de dinero.
Tipos de Arduino
Existen multitud de modelos Arduino disponibles, lo que puede ser un poco confuso para los nuevos usuarios. A la hora de elegir lo normal es que nos fijemos en la cantidad de entradas y salidas que tiene, especialmente las analógicas dado que son las que habitualmente restringen nuestro proyecto.
Lo más normal es que para empezar emplees una Arduino UNO R3. Este es el modelo más estándar y es la placa que utilizaremos de forma habitual. Para ciertos proyectos grandes, que requieran manejar un número importante de motores o servo motores (robots, máquinas de CNC, impresoras 3D) puede ser necesario pasar a un modelo con mayor número de salidas, especialmente analógicas. En ese caso lo normal es emplear una Arduino MEGA R3.
Por su parte, el modelo Mini 05 es un modelo para usuarios avanzados. Es una placa de apenas 2.5 dólares y un tamaño realmente pequeño, pensado para aplicaciones finales, es decir, cuando vas a dejar la placa permanentemente conectada (y por tanto la vas a “perder”). Viene sin terminales de conexión, hay que soldarlos, y para programarla se requiere un adaptador USB FTDI que cuesta 3.5 dólares. En niveles expertos esta es prácticamente el único modelo de placa que se usa dado que, en caso de requerir una gran cantidad de entradas o salidas, es más económico formar una red de 3 o 4 placas mini, y obtienes una capacidad superior a una MEGA.
Tipos de Shields
Las shields son placas de circuitos modulares que se montan unas encima de otras para dar funcionalidad extra a un Arduino. Esta Shields son apilables.
Un shield en Arduino es un placa que se apila sobre el arduino o sobre otro shield, de forma que nos permite ampliar el hardware/capacidades de Arduino.
Las shields se pueden comunicar con el arduino bien por algunos de los pines digitales o analógicos o bien por algún bus como el SPI, I2C o puerto serie, así como usar algunos pines como interrupción. Además estas shields se alimentan generalmente a través del Arduino mediante los pines de 5V y GND.
Cada Shield de Arduino debe tener el mismo factor de forma que el standard de Arduino con un espaciado de pines concreto para que solo haya una forma posible de encajarlo.
Shields más importantes
Ethernet Shield: La placa Arduino se comunica con el módulo W5100 y la micro-SD utilizando el bus SPI (mediante el conector ICSP). Esto se encuentra en los pines digitales 11, 12 y 13 en el modelo UNO y en los pines 50, 51 y 52 del modelo MEGA. En ambas placas, el pin 10 es utilizado para seleccionar el W5100 y el pin 4 para la micro-SD. Estos pines no pueden ser utilizados para otros fines mientras la Ethernet Shield esté conectada.
Arduino Wifi Shield: Permite conectar un Arduino a Internet mediante Wifi y hace uso de la librería WiFi También dispone de un slot para una tarjeta micro SD. Este shield se comunica con Arduino a través del bus SPI mediante los pines ICSP y usa los pines 4 y 10 al igual que la Shield Ethernet. También hace uso del pin 7 que no puedes ser usado.
Otros tipos de SHIELD:
Arduino GSM Shield: Conecta Arduino a Internet mediante GPRS, usando una tarjeta SIM. También permite enviar y recibir mensajes y llamadas de voz (SMSs).
Arduino Motor Shield: Permite manejar dos motores DC, controlando su dirección y velocidad. Está basado en un chip de doble puente H ST L298 Este shield usa dos canales y cada canal usa 4 pines, en total nos ocupa 8 pines del Arduino.
GPS Shield: Con un slot para micro SD donde guardar logs. No es compatible con Arduino Mega ni Due, RTC incluido. Conexión por puerto serie o conexión directa.
TFT Shield: Pantalla táctil resistiva con un slot para micro SD integrado. Comunicación a Arduino a través de bus SPI.
Bluetooth Shield: Comunicación inalámbrica por bluetooth. Conecta con la UART del Arduino o software serial con selector de puerto serie.
Terminal Shield: Shield con borneros y placa de prototipado que nos permite conectar fácilmente cualquier sensor o actuador a un Arduino.

Un shield en Arduino es un placa que se apila sobre el arduino o sobre otro shield, de forma que nos permite ampliar el hardware/capacidades de Arduino.
Las shields se pueden comunicar con el arduino bien por algunos de los pines digitales o analógicos o bien por algún bus como el SPI, I2C o puerto serie, así como usar algunos pines como interrupción. Además estas shields se alimentan generalmente a través del Arduino mediante los pines de 5V y GND.
Cada Shield de Arduino debe tener el mismo factor de forma que el standard de Arduino con un espaciado de pines concreto para que solo haya una forma posible de encajarlo.
Shields más importantes
Ethernet Shield: La placa Arduino se comunica con el módulo W5100 y la micro-SD utilizando el bus SPI (mediante el conector ICSP). Esto se encuentra en los pines digitales 11, 12 y 13 en el modelo UNO y en los pines 50, 51 y 52 del modelo MEGA. En ambas placas, el pin 10 es utilizado para seleccionar el W5100 y el pin 4 para la micro-SD. Estos pines no pueden ser utilizados para otros fines mientras la Ethernet Shield esté conectada.
Arduino Wifi Shield: Permite conectar un Arduino a Internet mediante Wifi y hace uso de la librería WiFi También dispone de un slot para una tarjeta micro SD. Este shield se comunica con Arduino a través del bus SPI mediante los pines ICSP y usa los pines 4 y 10 al igual que la Shield Ethernet. También hace uso del pin 7 que no puedes ser usado.
Otros tipos de SHIELD:
Arduino GSM Shield: Conecta Arduino a Internet mediante GPRS, usando una tarjeta SIM. También permite enviar y recibir mensajes y llamadas de voz (SMSs).
Arduino Motor Shield: Permite manejar dos motores DC, controlando su dirección y velocidad. Está basado en un chip de doble puente H ST L298 Este shield usa dos canales y cada canal usa 4 pines, en total nos ocupa 8 pines del Arduino.
GPS Shield: Con un slot para micro SD donde guardar logs. No es compatible con Arduino Mega ni Due, RTC incluido. Conexión por puerto serie o conexión directa.
TFT Shield: Pantalla táctil resistiva con un slot para micro SD integrado. Comunicación a Arduino a través de bus SPI.
Bluetooth Shield: Comunicación inalámbrica por bluetooth. Conecta con la UART del Arduino o software serial con selector de puerto serie.
Terminal Shield: Shield con borneros y placa de prototipado que nos permite conectar fácilmente cualquier sensor o actuador a un Arduino.
Arduino y sus características

Arduino es una plataforma de desarrollo basada en una placa electrónica de hardware libre que incorpora un microcontrolador re-programable y una serie de pines hembra, los que permiten establecer conexiones entre el microcontrolador y los diferentes sensores y actuadores de una manera muy sencilla (principalmente con cables dupont).
Una placa electrónica es una PCB (“Printed Circuit Board”, “Placa de Circuito Impreso” en español). Las PCBs superficies planas fabricadas en un material no conductor, la cual costa de distintas capas de material conductor. Una PCB es la forma más compacta y estable de construir un circuito electrónico. Así que la placa Arduino no es más que una PCB que implementa un determinado diseño de circuitería interna, de esta forma el usuario final no se debe preocupar por las conexiones eléctricas que necesita el microcontrolador para funcionar, y puede empezar directamente a desarrollar las diferentes aplicaciones electrónicas que necesite.
PCB de un Arduino UNO
Cuando hablamos de “Arduino” deberíamos especificar el modelo concreto, ya que se han fabricado diferentes modelos de placas Arduino oficiales, cada una pensada con un propósito diferente y características variadas (como el tamaño físico, número de pines E/S, modelo del microcontrolador, etc). A pesar de las varias placas que existen todas pertenecen a la misma familia (microcontroladores AVR marca Atmel), esto significa que comparten la mayoría de sus características de software, como arquitectura, librerías y documentación.

¿Por qué usar Arduino?
Arduino es libre y extensible: esto quiere decir que cualquiera que desee ampliar y mejorar el diseño hardware de las placas como el entorno de desarrollo, puede hacerlo sin problemas. Esto permite que exista un rico ecosistema de placas electrónicas no oficiales para distintos propósitos y de librerías de software de tercero, que pueden adaptarse mejor a nuestras necesidades.

Arduino tiene una gran comunidad: Gracias a su gran alcance hay un gran comunidad trabajando con esta plataforma, lo cual genera una cantidad de documentación bastante extensa, la cual abarca casi cualquier necesidad.
Su entorno de programación es multiplataforma: Se puede instalar y ejecutar en sistemas operativos Windows, Mac OS y Linux.
Lenguaje de programación de fácil compresión: Su lenguaje de programación basado en C++ es de fácil compresión que permite una entrada sencilla a los nuevos programadores y a la vez con una capacidad tan grande, que los programadores mas avanzados pueden exprimir todo el potencial de su lenguaje y adaptarlo a cualquier situación.
Bajo costo: La placa Arduino estándar (Arduino UNO) tiene un valor aproximado de $17.000(pesos chilenos), incluso uno mismo la podría construir(una gran ventaja del hardware libre), con lo que el precio de la placa seria incluso menor.
Re-usabilidad y versatilidad: Es re-utilizable porque una vez terminado el proyecto es muy fácil poder desmontar los componentes externos a la placa y empezar con un nuevo proyecto, de igual manera todos los pines del microcontrolador están accesibles a través de conectores hembra, lo cual permite sacar partido de todas las bondades del microcontrolador con un riesgo muy bajo de hacer una conexión errónea.
Modelo del microcontrolador
El microcontrolador que lleva la placa Arduino UNO es el modelo ATmega328P de la marca Atmel. La «P» del final significa que este chip incorpora la tecnología «Picopower» (propietaria de Atmel), la cual permite un consumo eléctrico ligeramente menor comparándolo con el modelo equivalente sin «Picopower», ATmega328 (sin la «P»). Aunque el ATmega328P pueda trabajar a un voltaje menor y consumir menos corriente que el ATmega328, ambos modelos son funcionalmente idénticos, es decir, pueden ser remplazados el uno por el otro.
Al igual que ocurre con el resto de microcontroladores usados en otras placas Arduino, el ATmega328P tiene una arquitectura de tipo AVR, arquitectura desarrollada por Atmel y en cierta medida «competencia» de otras arquitecturas como por ejemplo la PIC del fabricante Microchip. Mas concretamente, el ATmega328P pertenece a la subfamilia de microcontroladores «megaAVR». Otras subfamilias de la arquitectura AVR son la «tinyAVR» (cuyos microcontroladores son mas limitados y se identifica con el nombre ATtiny) y la «XMEGA»(cuyos microcontroladores son mas capaces y se identifican con el nombre de ATxmega).
Una placa electrónica es una PCB (“Printed Circuit Board”, “Placa de Circuito Impreso” en español). Las PCBs superficies planas fabricadas en un material no conductor, la cual costa de distintas capas de material conductor. Una PCB es la forma más compacta y estable de construir un circuito electrónico. Así que la placa Arduino no es más que una PCB que implementa un determinado diseño de circuitería interna, de esta forma el usuario final no se debe preocupar por las conexiones eléctricas que necesita el microcontrolador para funcionar, y puede empezar directamente a desarrollar las diferentes aplicaciones electrónicas que necesite.
PCB de un Arduino UNO
Cuando hablamos de “Arduino” deberíamos especificar el modelo concreto, ya que se han fabricado diferentes modelos de placas Arduino oficiales, cada una pensada con un propósito diferente y características variadas (como el tamaño físico, número de pines E/S, modelo del microcontrolador, etc). A pesar de las varias placas que existen todas pertenecen a la misma familia (microcontroladores AVR marca Atmel), esto significa que comparten la mayoría de sus características de software, como arquitectura, librerías y documentación.

¿Por qué usar Arduino?
Arduino es libre y extensible: esto quiere decir que cualquiera que desee ampliar y mejorar el diseño hardware de las placas como el entorno de desarrollo, puede hacerlo sin problemas. Esto permite que exista un rico ecosistema de placas electrónicas no oficiales para distintos propósitos y de librerías de software de tercero, que pueden adaptarse mejor a nuestras necesidades.

Arduino tiene una gran comunidad: Gracias a su gran alcance hay un gran comunidad trabajando con esta plataforma, lo cual genera una cantidad de documentación bastante extensa, la cual abarca casi cualquier necesidad.
Su entorno de programación es multiplataforma: Se puede instalar y ejecutar en sistemas operativos Windows, Mac OS y Linux.
Lenguaje de programación de fácil compresión: Su lenguaje de programación basado en C++ es de fácil compresión que permite una entrada sencilla a los nuevos programadores y a la vez con una capacidad tan grande, que los programadores mas avanzados pueden exprimir todo el potencial de su lenguaje y adaptarlo a cualquier situación.
Bajo costo: La placa Arduino estándar (Arduino UNO) tiene un valor aproximado de $17.000(pesos chilenos), incluso uno mismo la podría construir(una gran ventaja del hardware libre), con lo que el precio de la placa seria incluso menor.
Re-usabilidad y versatilidad: Es re-utilizable porque una vez terminado el proyecto es muy fácil poder desmontar los componentes externos a la placa y empezar con un nuevo proyecto, de igual manera todos los pines del microcontrolador están accesibles a través de conectores hembra, lo cual permite sacar partido de todas las bondades del microcontrolador con un riesgo muy bajo de hacer una conexión errónea.
Modelo del microcontrolador
El microcontrolador que lleva la placa Arduino UNO es el modelo ATmega328P de la marca Atmel. La «P» del final significa que este chip incorpora la tecnología «Picopower» (propietaria de Atmel), la cual permite un consumo eléctrico ligeramente menor comparándolo con el modelo equivalente sin «Picopower», ATmega328 (sin la «P»). Aunque el ATmega328P pueda trabajar a un voltaje menor y consumir menos corriente que el ATmega328, ambos modelos son funcionalmente idénticos, es decir, pueden ser remplazados el uno por el otro.









Comentarios
Publicar un comentario