Arduino

i INSTITUTO TECNOLOGICO DE MEXICALI Carrera: Ingenieria Mecatrónica Materia: Interfaces y Redes Industriales Tema (s)

Views 196 Downloads 7 File size 8MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

i

INSTITUTO TECNOLOGICO DE MEXICALI Carrera: Ingenieria Mecatrónica

Materia: Interfaces y Redes Industriales

Tema (s): ARDUINO

Nombre del alumno: Camacho Mariscal Jorge Moisés

10440806

García Balderrama Isaac Daniel

10490578

Hernández Cervantes Roberto

11490032

Luna Álvarez Juan Manuel

10490597

Morales García Miguel Ángel

10490603

Ortega Garzón Francisco

10490606

Viveros Macias Raúl Iván

11490247

Nombre del Instructor: ING. Alejandro Ortega Nazario

Fecha: Mexicali B.C. a 26 de Mayo de 2014 Av. Tecnológico S/N Col. Elías Calles, Apdo. Postal 91-55, Mexicali Baja California, México, C.P. 21396

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

i

Tabla de Contenido ARDUINO INTRODUCCIÓN ................................................................................................................................ 1 ARDUINO ANTECEDENTES ................................................................................................................. 1 ARDUINO ANTECEDENTES ................................................................................................................. 2 TIPOS DE ARDUINO ........................................................................................................................... 8 ARDUINO UNO ............................................................................................................................................. 8 Características ..................................................................................................................................... 8 Especificaciones .................................................................................................................................. 9 ARDUINO LEONARDO .................................................................................................................................... 9 Características ..................................................................................................................................... 9 Especificaciones ................................................................................................................................ 10 ARDUINO DUE .......................................................................................................................................... 10 Características ................................................................................................................................... 10 Especificaciones ................................................................................................................................ 11 ARDUINO YÚN ........................................................................................................................................... 12 Características ................................................................................................................................... 12 Especificaciones ................................................................................................................................ 12 ARDUINO MICRO ....................................................................................................................................... 13 Características ................................................................................................................................... 14 Especificaciones ................................................................................................................................ 14 ARDUINO ROBOT ....................................................................................................................................... 15 ARDUINO ESPLORA ..................................................................................................................................... 16 Características ................................................................................................................................... 16 Especificaciones ................................................................................................................................ 17 ARDUINO MEGA ADK................................................................................................................................. 18 Características ................................................................................................................................... 18

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

ii Especificaciones ................................................................................................................................ 18 ARDUINO ETHERNET ................................................................................................................................... 19 Características ................................................................................................................................... 19 Especificaciones ................................................................................................................................ 19 ARDUINO MEGA 2560 ............................................................................................................................... 20 Características ................................................................................................................................... 20 Especificaciones ................................................................................................................................ 21 ARDUINO MINI .......................................................................................................................................... 22 Características ................................................................................................................................... 22 Especificaciones ................................................................................................................................ 22 LILYPAD ARDUINO USB .............................................................................................................................. 22 Especificaciones ................................................................................................................................ 23 LILYPAD ARDUINO SIMPLE ........................................................................................................................... 24 LILYPAD ARDUINO SIMPLESNAP .................................................................................................................... 25 LILYPAD ARDUINO ...................................................................................................................................... 26 Especificaciones ................................................................................................................................ 26 ARDUINO NANO ........................................................................................................................................ 27 Características ................................................................................................................................... 27 Especificaciones ................................................................................................................................ 27 ARDUINO PRO MINI ................................................................................................................................... 28 Características ................................................................................................................................... 28 Especificaciones ................................................................................................................................ 28 ARDUINO PRO ........................................................................................................................................... 29 Características:.................................................................................................................................. 29 ARDUINO FIO ............................................................................................................................................ 30 Características ................................................................................................................................... 30 Especificaciones ................................................................................................................................ 31 ARDUINO ZERO. ....................................................................................................................................... 31 ARDUINO TRE ........................................................................................................................................... 32 Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

iii DISPOSITIVOS ALTERNOS COMPATIBLES CON ARDUINO .................................................................. 35 JAMECO ELECTRONICS ................................................................................................................................. 35 MOUSER ELECTRONICS ......................................................................................................................... 39 OLIMEX .................................................................................................................................................... 61 COMPONENTES DEL ARDUINO ........................................................................................................ 66 RESISTENCIA .............................................................................................................................................. 68 DIODO ..................................................................................................................................................... 68 TRANSISTOR .............................................................................................................................................. 69 CONDENSADOR .......................................................................................................................................... 69 PULSADOR ................................................................................................................................................ 70 REED SWITCH ............................................................................................................................................ 70 ZUMBADOR O BUZZER ................................................................................................................................. 71 EXPANSIONES DE ARDUINO CON SHIELD ......................................................................................... 72 MICROCONTROLADORES .............................................................................................................................. 75 TERMINALES DIGITALES ............................................................................................................................... 75 PINES ANALÓGICOS .................................................................................................................................... 76 PINES DE ALIMENTACIÓN ............................................................................................................................. 76 OTROS PINES ............................................................................................................................................ 77 ALAMBRE ................................................................................................................................................. 78 BREADBOARD ............................................................................................................................................ 79 FUENTE DE ALIMENTACIÓN ............................................................................................................. 80 RESISTOR .................................................................................................................................................. 80 CONDENSADOR .......................................................................................................................................... 80 INDUCTOR ................................................................................................................................................ 81 DIODO ..................................................................................................................................................... 81 LED ........................................................................................................................................................ 82 LIMITADORES DE CORRIENTE RESISTENCIAS EN SERIE .......................................................................................... 82 Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

iv PULSADOR ................................................................................................................................................ 83 TRANSISTOR .............................................................................................................................................. 83 RELÉ ........................................................................................................................................................ 85 FOTORESISTOR ........................................................................................................................................... 85 MODULO ARDUINO ........................................................................................................................ 86 PROGRAMACIÓN DE ARDUINO ....................................................................................................... 87 ESTRUCTURA DEL PROGRAMA ....................................................................................................................... 87 SETUP().................................................................................................................................................... 88 LOOP() ..................................................................................................................................................... 88

FUNCIÓN .................................................................................................................................................. 88 {} ENTRE LLAVES ......................................................................................................................................... 89 ; PUNTO Y COMA ........................................................................................................................................ 89 /*… */ BLOQUE DE COMENTARIOS ................................................................................................................ 90 // LÍNEA DE COMENTARIOS ........................................................................................................................... 90 VARIABLES ...................................................................................................................................... 90 DECLARACIÓN DE VARIABLES......................................................................................................................... 91 UTILIZACIÓN DE UNA VARIABLE ..................................................................................................................... 91 TIPOS DE DATOS ............................................................................................................................. 92 BYTE ........................................................................................................................................................ 92 INT .......................................................................................................................................................... 92 LONG ....................................................................................................................................................... 93 FLOAT ...................................................................................................................................................... 93 ARRAYS .................................................................................................................................................... 93

ARITMÉTICA.................................................................................................................................... 94 ASIGNACIONES COMPUESTAS ........................................................................................................................ 95 OPERADORES DE COMPARACIÓN ................................................................................................................... 96 OPERADORES LÓGICOS ................................................................................................................................ 96 Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

v CONSTANTES .................................................................................................................................. 96 CIERTO/FALSO (TRUE/FALSE) ........................................................................................................................ 96 HIGH/LOW ................................................................................................................................................ 97 INPUT/OUTPUT .......................................................................................................................................... 97

CONTROL DE FLUJO ......................................................................................................................... 97 IF (SI) ....................................................................................................................................................... 97 IF… ELSE (SI….. SINO ..) ............................................................................................................................... 98 FOR ......................................................................................................................................................... 99

WHILE ................................................................................................................................................... 100 DO WHILE ............................................................................................................................................... 101

E/S DIGITALES ............................................................................................................................... 101 PINMODE(PIN, MODE) .............................................................................................................................. 101 DIGITALREAD(PIN) .................................................................................................................................... 102 DIGITALWRITE(PIN, VALUE) ........................................................................................................................ 102 ANALOGREAD(PIN) ................................................................................................................................... 103 ANALOGWRITE(PIN, VALUE) ....................................................................................................................... 103

TIEMPO ........................................................................................................................................ 104 DELAY(MS) .............................................................................................................................................. 104 MILLIS() .................................................................................................................................................. 104

MATEMÁTICAS ............................................................................................................................. 105 MIN(X, Y) ................................................................................................................................................ 105 MAX(X, Y) ............................................................................................................................................... 105

ALEATORIO ................................................................................................................................... 105 RANDOMSEED(SEED) ................................................................................................................................ 105 RANDOM(MAX)........................................................................................................................................ 106 RANDOM(MIN, MAX) ................................................................................................................................ 106

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

vi PUERTO SERIE ............................................................................................................................... 106 SERIAL.BEGIN(RATE) ................................................................................................................................. 106 SERIAL.PRINTLN(DATA) .............................................................................................................................. 107 SERIAL.PRINT(DATA, DATA TYPE) ................................................................................................................. 107 SERIAL.AVAILABLE() .................................................................................................................................. 109 SERIAL.READ()......................................................................................................................................... 109 BIBLIOTECAS ARDUINO ................................................................................................................. 111 APLICACIONES DE ARDUINO ......................................................................................................... 116 BLINK WITHOUT DELAY ............................................................................................................................. 116 BUTTON ................................................................................................................................................. 117 LOOP.................................................................................................................................................... 118 ENTRADA ANALÓGICA ............................................................................................................................... 119 FADING .................................................................................................................................................. 120 KNOCK ................................................................................................................................................... 121 SENSOR DE INCLINACIÓN ............................................................................................................................ 123 SALIDA DIGITAL ........................................................................................................................................ 124 ENTRADA DIGITAL ..................................................................................................................................... 125 SALIDA PWM ......................................................................................................................................... 126 GENERAR TONOS CON UN BUZZER ................................................................................................................ 127 SALIDA DE ALTA CORRIENTE DE CONSUMO ..................................................................................................... 128 } Control de un relé. ......................................................................................................................... 128 Control de un relé. ........................................................................................................................... 129 EL POTENCIÓMETRO ................................................................................................................................. 131 MOTOR DC ............................................................................................................................................ 133 CONCLUSIÓNES ............................................................................................................................. 135 FUENTES DE INFORMACIÓN .......................................................................................................... 136 DOCUMENTOS CONSULTADOS..................................................................................................................................... 138 Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

1

ARDUINO

Introducción Es que es muy difícil hablar de gadgets, especialmente curiosos, sin que la plataforma de hardware libre esté involucrada. Pero no todo el mundo tiene lo suficientemente claro de qué va todo esto, y es por eso que ha llegado el tiempo de detallar un poco más qué es Arduino. En el mundo de la informática hay una corriente que de a poco está ganando cada vez más fuerza. Se trata de las filosofías libres. En los últimos años el software libre ha ganado mucho terreno, desde el código que da vida a infinidad de sitios en Internet, hasta el sistema operativo más común en dispositivos móviles a día de hoy, todo construido sobre usando como base software de código abierto. Hacer libre el software no es demasiado difícil. Solo hace falta que quién invierte tiempo desarrollando código esté dispuesto a compartir su tiempo y esfuerzo con otras personas de manera íntegra. El software es replicable con impresionante facilidad, cosa que no es tan sencilla de hacer con el hardware, por lo que pensar el hardware libre requiere tener mucha visión. De eso se trata Arduino, un sistema que desde hace ya casi una década sirve como núcleo del hardware libre, y será el tema central de este Hardware para novatos.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

2

ARDUINO ANTECEDENTES Emergiendo desde la “cuna filosófica” del software libre, Arduino es en sí una propuesta electrónica fácil de programar, distintos sistemas operativos que captan la atención de especialistas, novatos y estudiantes; ya sea, para encender un led o para construir un robot, estas sencillas y económicas tarjetas electrónicas están revolucionando a su manera el mundo del hardware con la cantidad de aplicaciones ya comerciales. Hace más de un siglo, en 1901 Frank Hornby inventó en Inglaterra un sistema de construcción consistente en perfiles metálicos estandarizados —placas, perfiles, ángulos— que junto con ejes, engranajes y tornillos permitía armar de forma muy sencilla mecanismos complejos y modelos de todo tipo. El sistema era un juguete y se patentó con el nombre "Mecánica Hecha Fácil".

Ilustración 1 Meccano by Frank Hornby

La característica sobresaliente del sistema era hacer fácil y accesible la construcción de mecanismos de todo tipo a cualquier aficionado, casi sin conocimiento previo, pero con mucho entusiasmo por la Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

3 experimentación. Esta idea de diseñar kits con piezas prefabricadas que ahorrasen tiempo a los "hobbystas", pero que sean lo suficientemente maleables para no limitar la creatividad, se repitió bastante durante el siglo pasado. Y en especial, en el campo de la electrónica [1].

Massimo Banzi forma parte del equipo Arduino. Como profesor de Ivrea, hacia 2005 decidió junto con un grupo de estudiantes crear unas placas de hardware propias porque las que había en el mercado rondaban los 75 euros, demasiado dinero para poder trabajar con ellas en clase, y como el instituto estaba a punto de cerrar, abrieron el proceso a través de Internet para que no quedara enterrado una vez el centro clausurara.

Ilustración 2. Massimo Banzi forma parte del equipo Arduino

Tal y como narra el documental Arduino, dirigido porRodrigo Calvo y Raúl Alaejos y producido por Laboral Centro de Arte, al equipo inicial se fueron sumando más personas, y el primer prototipo evolucionó hacia modelos más accesibles y fáciles de utilizar gracias a la colaboración abierta a través de la Red, siguiendo la filosofía del software en código abierto. Las primeras unidades se vendieron a un euro por placa y hoy en día, la comunidad Arduino tiene más de 120 mil usuarios.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

4 El documental recoge algunos de los proyectos que se han realizado utilizando hardware en open source, desde unas maracas que interaccionan con una pantalla digital vía bluetooth, creando gráficos cuando se agitan (un proyecto de James Tichenor y Joshua Walton, de Rockwellgroup.com), hasta la impresora en 3D, que permite diseñar un objeto o bajarlo de Internet y crearlo físicamente en plástico, desde un silbato o un abrebotellas hasta un coche de juguete.

Ilustración 3. Logotipo de Codigo Abierto (Open Source)

Pero la mayor revolución del hardware en open source está en la posibilidad que brinda a la gente de aprender cómo funciona la tecnología, y ser capaz de manipular y crear objetos físicos. Según David Cuartielles, también del equipo Arduino, "por culpa de la _blankización y las patentes, se había cerrado la oportunidad a la gente para aprender cómo funcionan las cosas y solo los expertos y hackers podían abrir y ver lo que hay dentro. El hardware en open source significa poder volver a abrir las cosas y ver cómo funcionan. Cuando hay más ordenadores que personas, eso es muy importante, no ya para repararlas sino para entender cómo funciona nuestra vida".

Esta tecnología se ha extendido a otras áreas más allá de los expertos en informática e ingeniería y aunque está todavía lejos de ser una corriente masiva, supone una oportunidad también en el ámbito educativo. Juan Carlos de Mena es profesor en el IES Miguel Hernández de Madrid, donde ha introducido el open hardware en sus clases de tecnología. "Aprenden que hay otro lado a parte del

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

5 consumidor, que hay formas de conocer los cacharros por dentro y tener el control sobre ellos", explica [2].

Despues de que Arduino fue un gran lanzamiento para la gente con poco conocimiento de la electronia se convirtió en una herramienta altamente recomendada para el aprendizaje en varias universidades como Standford y Carnegie Mellon y el MIT. Para la producción en serie de la primera versión, se tomaron en cuenta algunas consideraciones:



Economía (no mayor a 30 Euros)



Debía ser Plug and Play (fácil de manejar y sin muchos problemas para la instalación).



Debía ser capaz de trabajar en todas las plataformas (Mac, Windows y Linux).



El color azul de la placa fue pensado para “marcar una diferencia con las placas

convencionales”.

Arduino nacio de un proyecto no comercial en ese momento, sino como un proyecto educativo en cuanto a la limitación de la electrónica para informáticos, etc. Pero de ¿donde surgio la idea de llamarlo Arduino?; el nombre data de tiempo atrás en la pintoresca ciudad de Ivrea, Italia. En 1002 el rey Arduin o Arduino, se convirtió en el gobernante del país [3].

Ilustración 4. Ivrea, Italia

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

6

Arduino permaneció en Borgoña hasta que se autoproclamó rey de Italia tras la muerte Otón III en 1002. En un primer momento fue “elegido por los lombardos en Pavía y fue llamado «Caesar». 2 por un nutrido grupo de vasallos en la iglesia de San Michelle, y recorrió el reino con el arzobispo de Milán para que los magnates le profesaran lealtad. Mientras, Enrique II era aclamado emperador. Todos los magnates del reino le profesaron lealtad, pero secretamente se mantenían leales a Enrique. Sus enemigos en la Iglesia recordaban los antiguos enfrentamientos con Arduino y temían las consecuencias de que acaparase el poder, así que liderados por Frederick, arzobispo de Rávena, y el propio cronista Arnulfo, arzobispo de Milán, se aliaron al nuevo emperador y le ofrecieron la corona de Italia. Enrique envió al duque Otto de Carintia, a quien había nombrado conde de Verona, para enfrentarse

a

Arduino.

Pero

Arduino

cosechó

una

serie

de

victorias

junto

al

río Adigio en Valsugana contra las tropas de los obispos y las imperiales. La batalla campal de Fábrica (1003) supuso un grandísimo éxito para Arduino:

...se masacró a muchos y al resto se les puso en fuga en las fronteras del reino [4].

El Rey Arduino fue derrocado por el Rey Arturo II, de Alemania dos años después de que Arduino procuró recuperar el poder del trono y tomó venganza sobre todos aquellos que le fueron infieles. También intentó contrarrestar el poder de Arnulfo, arzobispo de Milán, abogando por que fuese sustituido por Alrico, obispo de Asti y hermano de Olderico Manfredi II. En 1007 el emperador atacó sus tierras y le asedió en la iglesia fortificada de Santa Croce, en Sparone (Alto Canavese), también conocida por la tradición como la Roca di Sparone o la Roca di Arduino porque en ella resistió Arduino sin que el emperador pudiese completar su victoria. En 1014 Enrique regresó a Italia con fuerza para consolidar su poder y consiguió incluso vencer la resistencia de la nobleza romaba.

El 14 de Febrero era coronado emperador en Roma por el Papa Benedicto VIII. Después regresó a Alemania. Con el emperador otra vez fuera de Italia, Arduino emprendió una nueva campaña en la que capturó la ciudad de Vercelli, asedió Novara, invadió Como y destruyó muchas otras ciudades que se habían dado la espalda tras el incendio de Pavía. Pero nunca acabó de finalizar sus planes por la fuerte Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

7 oposición de la Iglesia, encabezada por Arnulfo de Milán, y de algunos nobles como Bonifacio de Canossa, marqués de Toscana, que veían más intereses estando del lado del emperador. Desgastado por ver cómo sus planes nunca llegaban a culminar, por la guerra, por una grave discapacidad y privado de su reino, Arduino se deshizo de las galas y pompa de la corte y se contentó tomando los hábitos de monje en la abadía de Fruttuaria (1014).

Esta abadía benedictina había sido fundada en el pueblo de San Benigno Canavese el 23 de febrero de 1003, entre los ríos Orco y Malone, precisamente en presencia de Arduino, su esposa Berta y Ottobiano, obispo de Ivrea, que habían donado bienes para su fundación. Derrocado por el Rey Arturo dos años después de haber tomado el trono de Italia. Hoy en dia en Ivrea, Italia, y específicamente en el Bar di Re Arduino, un pub en una calle adoquinada de la ciudad hace honor a su memoria, y ahí es donde nacio un nuevo rey improbable.

El bar es el abrevadero de Massimo Banzi, el cofundador italiano del proyecto de electrónica que llamo Arduino en honor al lugar. El pequeño tablero es ahora el tren de go-to para artistas, aficionados, estudiantes y cualquier persona con un sueño artilugios. Más de 250 000 placas Arduino se han vendido en todo el mundo, y eso no incluye los montones de clones. "Se hizo posible que la gente haga cosas que no habrían hecho de otra manera", dice David A. Mellis , que era un estudiante en IDII antes de seguir estudios de postgrado en el Laboratorio de Medios del MIT y es el desarrollador de software líder de Arduino [5].

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

8

Tipos de Arduino Arduino uno

Características El Arduino Uno es una placa electrónica basada en el ATmega328. Cuenta con 14 entradas / salidas digitales pines (de los cuales 6 pueden ser utilizados como salidas PWM), 6 entradas analógicas, un oscilador de cristal de 16 MHz, una conexión USB, un conector de alimentación, una cabecera de ICSP, y un botón de reinicio. Contiene todo lo necesario para apoyar al micro, sólo tiene que conectarlo a un ordenador con un cable USB o el poder con un adaptador AC-DC o la batería para empezar. El Arduino Uno difiere de todas las placas anteriores en que no utilizan el chip controlador USB FTDI a serie. Las características adicionales que vienen con la versión R3 son: *Lugar 8U2 como USB a serie convertidor de ATmega16U2. *1,0 pin out: añadido el SDA y SCL pines para la comunicación TWI coloca cerca de la pin AREF y dos pasadores de otros nuevos que se pongan cerca del pin de RESET, el IOREF que permiten a los escudos de adaptarse a la tensión proporcionada por la junta directiva y el segundo un No conecté el pin, que se reserva para usos futuros.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

9 Especificaciones  Microcontroller: ATmega328  Operating Voltage: 5V  Supply Voltage (recommended): 7-12V  Maximum supply voltage (not recommended): 20V  Digital I/O Pins: 14 (of which 6 provide PWM output)  Analog Input Pins: 6  DC Current per I/O Pin: 40 mA  DC Current for 3.3V Pin: 50 mA  Flash Memory: 32 KB (ATmega328) of which 0.5 KB used by bootloader  SRAM: 2 KB (ATmega328)  EEPROM: 1 KB (ATmega328)  Clock Speed: 16 MHz

Arduino Leonardo

Características Utiliza un microcontrolador ATmega32U4 que permite un diseño mucho más sencillo y económico. Una de las ventajas de este nuevo microcontrolador es que dispone de USB nativo por hardware y por lo tanto no necesita de ninguna conversión serie-USB. También permite a la placa ser utilizada y programada como un dispositivo de entrada para emular un teclado, ratón, etc. Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

10 Tiene 12 entradas analógicas y dado que el puerto de comunicación USB es emulado, deja el puerto serial hardware libre para la programación! De esta forma ya no ocurren conflictos de programación mientras tenemos periféricos seriales conectados a la placa. Especificaciones  Microcontrolador: ATmega32u4  Tensión de funcionamiento: 5V  Alimentación recomendada: 7-12V  Pines I/O Digitales: 20  Canales PWM: 7  Entradas analógicas: 12  Corriente Maxima de los pines I/O: 40 mA  Corriente Maxima de los pines 3.3V: 50 mA  Memoria Flash: 32 KB (4 KB usados para el bootloader)  SRAM: 2.5 KB  EEPROM interna: 1 KB  Velocidad: 16 MHz

Arduino DUE

Características El Due es el primer Arduino basado en ARM. Esta placa se basa en un potente microcontrolador ARM CortexM3 de 32 bits hecho programable a través de la conocida IDE Arduino. Aumenta la potencia de Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

11 cálculo disponible para los usuarios de Arduino mantenimiento el lenguaje de programación lo más compatible posible para que muchos programas se puedan migrar a esta plataforma en cuestión de minutos! El Arduino Due dispone de 54 entradas / salidas digitales pines (de los cuales 12 se pueden utilizar como salidas PWM), 12 entradas analógicas, 4 UARTs (puertas seriales), un reloj de 84 MHz, una conexión USB-OTG, 2 DAC (convertidor digital a analógico), 2 TWI, un conector de alimentación, una cabecera de SPI, un encabezado JTAG, un botón de reset y un botón de borrado. Hay también algunas características interesantes como DACs, Audio, DMA, una biblioteca experimental multitarea y mucho más. Para compilar código para el procesador ARM, necesitarás la última versión del IDE de Arduino: v1.5 (Después de un período de prueba y depuración de ésta se sustituirá por la IDE 1.0.1) Debido a las limitaciones de tensión del sistema impuestas por la SAM3X8E Atmel, los escudos Arduino que se basan en los modelos de 5V no funcionará correctamente. Todos los escudos que apliquen plenamente la disposición R3 Arduino son compatibles directamente (como el escudo Arduino Shield Ethernet y WiFi), pero otros escudos podría no ser compatible. Tenga cuidado cuando usted está conectando cosas en su Arduino Due. Especificaciones  Microcontrolador: AT91SAM3X8E  Voltaje de operación: 3,3V  Voltaje de entrada (recomendado): 7-12V  Límites de voltaje: 6-20V  Pines I/O: 54 (12 con PWM)  Entradas analógicas: 12  Salidas analógicas: 2 (DAC)  Salida máxima I/O: 130mA  Corriente máxima: 800mA  SRAM: 96 KB (64 + 32 KB) Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

12  Memoria para programa: 512 KB  Velocidad: 84 MHz

Arduino Yún

Características El Arduino Yún combina la potencia de Linux junto con la sencillez característica de Arduino. Cuenta con el chip del modelo Leonardo (ATMega32U4) junto con un módulo SOC (System-On-a-Chip) corriendo una distribución de Linux llamada Linino, basada en OpenWRT. Soporta red cableada ethernet 10/100 mbps y otra Wifi (IEEE 802.11 b/g/n, 2,4GHz) que puede montarse como cliente o como punto de acceso. El puerto serial del AR9331 está conectado al serial del 32U4 con los pines 0 y 1. Tarjeta microsd para almacenamiento de datos. Especificaciones  Microcontrolador: ATmega32u4  Tensión de funcionamiento: 5V  Alimentación recomendada: 7-12V  Pines I/O Digitales: 20  Canales PWM: 7  Entradas analógicas: 12  Corriente Maxima de los pines I/O: 40 mA Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

13  Corriente Maxima de los pines 3.3V: 50 mA  Memoria Flash: 32 KB (4 KB usados para el bootloader)  SRAM: 2.5 KB  EEPROM interna: 1 KB  Velocidad: 16 MHz  LINUX:  Procesador: Atheros AR9331  Arquitectura: MIPS @400MHz  Alimentación: 3.3V  Puerto Ethernet: IEEE 802.3 10/100Mbit/s  Conexión WiFi: IEEE 802.11b/g/n  USB Type-A: 2.0 Host/Device  Lector de tarjetas: Micro-SD  RAM: 64 MB DDR2  Memoria Flash: 32 MB  Soporte para PoE tipo 802.3af

Arduino Micro

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

14 Características El Arduino Micro tiene toda la potencia del Arduino Leonardo en un formato compacto de solo 48 x 18 mm. Viene con con el chip ATmega32u4 y una de las mayores ventajas de este chip es que dispone de un puerto USB nativo que permite entre otras cosas evitar tener que usar un conversor serie/USB. Funciona a 5V con un cristal de 16MHz. La placa incluye un conector micro USB, un puerto ICSP, un botón de reset y algunos diodos LED de estado. Todos los pines de entrada y salida son los mismos que el modelo Leonardo. Especificaciones  Microcontrolador: ATmega32u4  Funcionamiento: 5V  Alimentación recomedada: 7-12V  Límites de entrada (max): 6-20V  Pines I/O totales: 20  Pines PWM: 7  Pines analógicos: 12  Imax de los pines I/O: 40 mA  Corriente máxima del pin 3.3V: 50 mA  Memoria flash: 32 KB (4 KB usados por el bootloade)  SRAM: 2.5 KB  EEPROM: 1 KB  Velocidad: 16 MHz  Dimensiones: 48x18mm  Peso: 6.5g

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

15 Arduino Robot Con el Arduino Robot, usted puede aprender acerca de la electrónica, la mecánica y el software. Se trata de una pequeña computadora sobre ruedas. Viene con una serie de ejemplos de proyectos se puede replicar fácilmente, y es una potente plataforma de robótica que se puede hackear para realizar todo tipo de tareas.

El robot cuenta con un gran número de entradas; dos potenciómetros, cinco botones, una brújula digital, cinco sensores de piso, y un lector de tarjetas SD. También cuenta con un altavoz, dos motores, y una pantalla a color como salidas. Usted puede controlar todos estos sensores y actuadores a través de la biblioteca de robot. Hay dos tablas diferentes en el robot: la Junta de Control (arriba) y la Junta de Motor (abajo). Si estás empezando con la electrónica y la programación, usted debe trabajar con la Junta de Control. A medida que adquiera más experiencia, es posible que desee jugar con la Junta de motor.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

16

Arduino Esplora

Características El Arduino Esplora es una placa electronica derivada de la Arduino Leonardo. El Esplora difiere de todas las placas Arduino precedentes, en el que proporciona un número de sensores de a bordo listos para trabajar con ellos. Está diseñado para personas que quieren empezar a trabajar con Arduino sin tener que aprender acerca de la electrónica más basica. El Esplora tiene sonido de a bordo, salidas de luz, y varios sensores de entrada, incluyendo una palanca de mando, un control deslizante, un sensor de temperatura, un acelerómetro, un micrófono, y un sensor de luz. También tiene el potencial de ampliar sus capacidades con conectores de entrada y salida, y una toma de una pantalla a color TFT LCD. Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

17 Al igual que el Arduino Leonardo, la Esplora utiliza un microcontrolador AVR ATMEGA32U4 con 16 MHz oscilador de cristal y una conexión micro USB capaz de actuar como un dispositivo de cliente USB, como un ratón o un teclado. En la esquina superior izquierda de la placa hay un pulsador de rearme, que se puede utilizar para reiniciar el Esplora. Entre los sensores y actuadores se encuentran: -

Sensor de luz

-

Sensor de temperatura

-

Acelerometro de 3 ejes

-

Joystick

-

Pulsadores

-

Potenciometro deslizante

-

Leds RGB – Zumbador

Especificaciones  Microcontroladores ATMEGA32U4  5V Tensión de funcionamiento  Memoria Flash 32 KB de los cuales 4 KB utilizado por gestor de arranque  SRAM 2.5 KB  EEPROM 1 KB  Velocidad de reloj 16 MHz

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

18 Arduino Mega ADK

Características El Arduino ADK es una placa electronica basada en el microprocesador Atmega2560 Cuenta con una interfaz de host USB para conectar con los teléfonos basados en Android, basado en el CI MAX3421e. Cuenta con 54 entradas / salidas digitales pines (de los cuales 14 se pueden utilizar como salidas PWM), 16 entradas analógicas, 4 UARTs (puertos de hardware de serie), un oscilador de cristal de 16 MHz, una conexión USB, un conector de alimentación, una cabecera de ICSP, y un botón de reinicio. Especificaciones  Microcontrolador: ATmega2560  Tensión de alimentación: 5V  Tensión de entrada recomendada: 7-12V  Límite de entrada: 6-20V  Pines digitales: 54 (14 con PWM)  Entradas analógicas: 16  Corriente máxima por pin: 40 mA  Corriente máxima para el pin 3.3V: 50 mA  Memoria flash: 256 KB  SRAM: 8 KB  EEPROM: 4 KB  Velocidad de reloj: 16 MHz Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

19 Arduino Ethernet

Características Arduino Ethernet es una placa basada en el microcontrolador ATmega328 al igual que el modelo Arduino UNO. Dispone de 14 pines I/O, 6 entradas analógicas, un cristal de 16MHz, un conector de red RJ45, conector de alimentación, un zócalo ICSP y un pulsador de RESET. Es la combinación en una sola placa de un Arduino UNO y una Ethernet Shield para los proyectos que necesiten de menor espacio físico. Dispone también de un zócalo para tarjetas de memoria MicroSD que puede ser utilizado para leer y escribir datos El módulo de alimentación PoE (Power One Ethernet) que permite alimentar el Arduino Ethernet a través de ethernet no está incluído (ver productos relacionados) La placa difiere un poco de los otros modelos ya que no dispone de un conector USB ni del chip conversor USB/Série, por lo tanto es necesario un cable FTDI 5V para poder programarla (ver productos relacionados) Especificaciones  Microcontrolador:

ATmega328

 Alimentación: 5V  Entrada recomendada:  7-12V Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

20  Entrada (max):  6-20V  Pines I/O

14 (4 con PWM)

 Pines reservados:

10 a 13 para SPI

 4 para SD  2 para interrupción W5100 (en bridge)  Analog Input Pins

6

 DC Current per I/O Pin

40 mA

 DC Current for 3.3V Pin

50 mA

 Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader  SRAM 2 KB (ATmega328)  EEPROM

1 KB (ATmega328)

 Clock Speed 16 MHz  W5100 TCP/IP Embedded Ethernet Controller  Power Over Ethernet ready Magnetic Jack  Micro SD card, with active voltage translators

Arduino Mega 2560

Características El Arduino Mega 2560 es una placa electrónica basada en el Atmega2560

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

21 Cuenta con 54 entradas / salidas digitales pines (de los cuales 14 se pueden utilizar como salidas PWM) y 16 entradas analógicas, 4 UARTs (puertos de hardware de serie), un oscilador de cristal de 16 MHz, un puerto USB de conexión, un conector de alimentación, una cabecera de ICSP, . y un botón de reinicio Contiene todo lo necesario para apoyar a la micro, sólo tiene que conectarlo a un ordenador con un cable USB o el poder con un adaptador AC-DC o la batería para empezar. La Mega es compatible con la mayoría de los escudos diseñados para el Arduino Duemilanove o Diecimila. Especificaciones  Microcontrolador: ATmega2560  Tensión de alimentación: 5V  Tensión de entrada recomendada: 7-12V  Límite de entrada: 6-20V  Pines digitales: 54 (14 con PWM)  Entradas analógicas: 16  Corriente máxima por pin: 40 mA  Corriente máxima para el pin 3.3V: 50 mA  Memoria flash: 256 KB  SRAM: 8 KB  EEPROM: 4 KB  Velocidad de reloj: 16 MHz

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

22 Arduino Mini

Características Arduino Mini miniaturizado versión de placa Arduino (w / o parte de USB) sin conector a la baja las dimensiones mínimas (30x18mm) permiten el ahorro de espacio. Se utiliza un ATMega328 con 32K de espacio de programa y se puede utilizar con USB / Serial converter para la programación y para agregar al puerto USB. Especificaciones  Chip ATmega328 a 16MHz con cristal de cuarzo externo (toleracia: 0.5%)  Auto-reset  Regulador 5V integrado  Max: 150mA por salida  Protección de sobrecarga  Protección contra inversión de polaridad  Entrada DC de 5V hasta 12V  LED de power y estado

LilyPad Arduino USB

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

23 El LilyPad Arduino USB es una placa electronica basada en el ATMEGA32U4 ( ficha técnica ). Cuenta con 9 pines digitales de entrada / salida (de los cuales 4 pueden utilizarse para salidas PWM y 4 entradas analógicas), como un niño de 8 MHz resonador, una conexión micro USB, un conector JST de 3.7V LiPo batería y un botón de reinicio. Contiene todo lo necesario para apoyar el microcontrolador; basta con conectarlo a un ordenador con un cable USB, o alimentarla con una batería para empezar. El LilyPad Arduino USB difiere de anteriores LilyPad tableros en que el ATMEGA32U4 ha incorporado en la comunicación USB, lo que elimina la necesidad de un adaptador independiente de USB a serie. Esto permite que la LilyPad Arduino USB aparezca a una computadora conectada como un ratón y el teclado, además de un (CDC) de puerto serie / COM virtual. También tiene otras implicaciones para el comportamiento de la junta. Especificaciones  Microcontroladores ATMEGA32U4  Tensión de funcionamiento 3.3V  Voltaje de entrada

3.8V a 5V

 Digital I / O Pins

9

 Canales PWM 4  Canales de Entrada Analógica

4

 Corriente continua para las E / S Pin 40 mA  Memoria Flash

32 KB ( ATMEGA32U4 ) de los cuales 4 KB utilizado por el gestor de

arranque  SRAM 2,5 KB ( ATMEGA32U4 )  EEPROM

1 KB ( ATMEGA32U4 )

 Velocidad del reloj

8 MHz

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

24 LilyPad Arduino Simple

Se trata de la Junta simple LilyPad Arduino. Está controlado por un microprocesador Atmega328 con el bootloader de Arduino. Tiene menos pines que la placa principal Arduino LilyPad , una de un interruptor integrado en el zócalo de alimentación y encendido / apagado. Cualquiera de nuestras baterías LiPo se pueden enchufar a la derecha en el zócalo. La placa simple está diseñado para optimizar su próximo proyecto sewable por mantener las cosas simples y que le da más espacio para trabajar y eliminando la necesidad de coser una fuente de alimentación. Esta revisión elimina la cabecera de ISP y añade un circuito de carga basado en el MCP73831 IC. LilyPad es una tecnología e-textil portátil desarrollada por Leah Buechley y diseñado por Leah y Sparkfun. Cada LilyPad fue creativamente diseñado para tener grandes almohadillas de conexión que les permitan ser cosidos en la ropa. Varias tarjetas de entrada, de salida, de energía, y los sensores están disponibles. Son aún lavable.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

25 LilyPad Arduino SimpleSnap

El LilyPad SimpleSnap es una nueva forma, fácil de crear los proyectos con LilyPad que son modulares y se pueden desmontar o descompuestos, también es una gran manera de crear prototipos! La junta SimpleSnap es similar a la placa LilyPad simple, y tiene la misma funcionalidad, excepto por dos diferencias principales: Un built-in recargable de baterías de polímero de litio y de conexión por presión de sexo femenino. Mediante la adición de encaje de tela a la junta, LilyPad ha hecho posible la conexión de esta tarjeta a la SimpleSnap Protoboard o simplemente un arreglo de coser en tela broches de presión de manera que la placa se puede retirar de su proyecto para el lavado o para que varios proyectos se puede compartir un tablero. Es importante, sin embargo, que no se lava el SimpleSnap debido a que la batería puede estar dañada. La batería de polímero de litio a bordo se puede cargar simplemente uniendo un desglose FTDI (la misma tarjeta utilizada para la programación) y al igual que el sencillo, el SimpleSnap se puede programar en Arduino! LilyPad es una tecnología e-textil portátil desarrollada por Leah Buechley y diseñado por Leah y Sparkfun. Cada LilyPad fue creativamente diseñado para tener grandes almohadillas de conexión que les permitan ser cosidos en la ropa. Varias tarjetas de entrada, de salida, de energía, y los sensores están disponibles.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

26 LilyPad Arduino

El LilyPad Arduino es una placa con microcontrolador. Puede utilizar con complementos similares como fuentes de alimentación, sensores actuadores unidos por hilo conductor. La placa está basada en el ARmega168V (la versión de baja consumo del ATmega168) (hoja de datos), o el ATmega328V (datasheet). El LilyPad Arduino ha sido diseñado y desarrollado por Leah Buechley y SparkFun Electronics. Especificaciones  Atención: No alimentes el LilyPad Arduino con más de 5,5 voltios, ni inviertas la polaridad al conectarlo.  Microcontroladores ATmega168V o ATmega328V  Voltaje de funcionamiento 2.7 a 5.5 V  Voltaje de entrada

2.7 a 5.5 V

 Pines E/S Digitales

14 (de las cuales 6 proporcionan salida PWM)

 Pines Entradas Analógicas Input Pins

6

 Intensidad por pin

40 mA

 Flash Memorabl

16 KB (de las cuales 2 KB las usa el gestor de arranque(bootloader))

 SRAM 1 KB  EEPROM

512 bytes

 Velocidad de reloj

8 MHz

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

27 Arduino Nano

Características Arduino Nano igual que el Arduino Mini pero aún más diminuto. Es la nueva generación de placas que permite realizar rápidos prototipos sobre protoboard Ésta vez, incorpora un conector mini USB, un chip ATMega328, 2 entradas analógicas más que la placa Arduino Diecimila y un conector ICSP para programarlo mediante un programador externo si se desea, sin necesidad de cablear el contector externamente. Especificaciones  RESET automatico al descargar el programa  LED azul en la base para indicar el encendido  LED Verder (TX), Rojo (RX) y Naranja (L)  Jumper para +5V conectado a AREF  Regulador de tensión integrado  Conector mini-B USB para programación y comunicación série integrado en placa  Conector ICSP para programación  Pines con espaciado de 0.1" DIP para insertarlo directamente sobre una protoboard  Boton de reset integrado  Bootloader integrado que permite programarlo con el entorno de desarrollo Arduino sin necesidad de un programador externo

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

28 Arduino Pro Mini

Características El Mini Arduino es una placa de pequeño microcontrolador basado originalmente en el ATMega168 , pero ahora se suministra con el 328, destinado a montarse en placas base y cuando el espacio es primordial. Cuenta con 14 entradas / salidas digitales pines (de los cuales 6 pueden ser utilizados como salidas PWM), 8 entradas analógicas, y una de 16 MHz del oscilador de cristal. Se puede utilizar con USB / Serial converter para la programación y para agregar al puerto USB Especificaciones  Chip ATmega328 a 16MHz con cristal de cuarzo externo (toleracia: 0.5%)  Auto-reset  Regulador 5V integrado  Max: 150mA por salida  Protección de sobrecarga  Protección contra inversión de polaridad  Entrada DC de 5V hasta 12V  LED de power y estado

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

29 Arduino Pro

Arduino Pro, enfoque de diseño minimalista de Sparkfun para Arduino. Esta es una de 5V Arduino ejecutar el gestor de arranque de 16MHz en un factor de forma super-elegante que cabe fácilmente en su próximo proyecto pequeño. Arduino Pro no viene con conectores pobladas de modo que usted puede soldar en cualquier conector o cable con cualquier orientación que necesita. Recomendamos primera vez que los usuarios de Arduino comienzan con el Uno R3. Es un gran tablero que te llevará a trabajar rápidamente. La serie Pro Arduino está pensado para los usuarios que entienden las limitaciones de esta falta de conectores USB y fuera bordo. Para mantener las cosas perfil asequible y de bajo, que hemos elegido para hacer la huella de gato de la corriente continua disponible, pero no para poblarlo. Se recomienda ejecutar el tablero con una batería de Li-Po para una mejor portabilidad. Además, para mantener el costo bajo, hicimos cambios, como el uso de todos los componentes SMD y el cambio a un PCB de dos capas. Esta tarjeta se conecta directamente a la placa FTDI Básico Breakout y soporta auto-reset. El Arduino Pro también trabaja con el cable de FTDI pero el cable FTDI no saca el pin DTR por lo que la función de restablecimiento automático no funcionará. En esta última versión de la Arduino Pro también hemos movido los encabezados FTDI espalda sólo un skoach modo que los pasadores no se cuelguen del borde del tablero. También hemos pobló con un interruptor de selección de potencia más robusto. Características:  ATmega328 funcionando a 16MHz resonador externo Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

30  Conexión USB de tablero  Regulador de 5V  Salida máxima 150 mA  Sobre corriente protegida  Protegido contra inversión de polaridad  Entrada DC 5V hasta 12V  Fusible rearmable evita daños a la placa en caso de corto  Poder seleccionar switch actúa como interruptor on / off  Dimensiones: 2.1x2.05 "(53.34x52.08mm)

Arduino Fio

Características Arduino Fio es ideal para proyectos inalámbricos. Dispone de un zócalo para un mózulo XBee, un conector mini-USB y puede ser alimentado directamente por una batería LiPo. Incluye también un cargador de batería basado en el MAX1555 de Maxim. Como todos los modelos de Arduino, se ofrece con un bootloader integrado que además permite cargar programar de forma inalámbrica mediante XBee sin necesidad de conectarlo por USB. El Arduino Fio está basado en el diseño de Arduino Funnel I/O (Fio) diseñado por Shigeru Kobayashi y a su vez basado en LilyPad. Arduino Fio ofrece mejoras en el diseño de la placa y está oficialmente soportado por la comunidad Arduino.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

31 Especificaciones  ATmega328V a 8MHz  Incluye el Arduino Bootloader  Zócalo para XBee (módulo xbee no incluido)  Compatible con baterías de Litio Polímeto  Cargador LiPo MAX1555 integrado  botón de RESET  Interruptor On/Off integrado  Indicadores LED: Status/Charge/RSSI

Arduino ZERO.

La nueva creación de Arduino se llama Arduino ZERO y es una placa de 32bits basada en un microcontrolador ATMEL Cortex-M0 SAMD21 que además incorpora la tecnología EDBG (Atmel’s Embedded Debugger) que permite realizar un debug de la aplicación sin necesidad de hardware externo. Por el momento sólo se ha hecho el anuncio oficial aunque el primer prototipo será mostrado en la Maker Faire Bay Area y donde muy probablemente se ofrezcan aún más detalles. Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

32 Como se puede ver, el formato es muy similar a su primo pequeño Arduino UNO, salvo la incorporación de dos conectores de tipo Micro USB. Uno se utilizará para debug y otro para programación y muy probablemente como puerto OTG o USB host. La plataforma se está actualizando con nuevos microcontroladores y facilitando aún más la vida al usuario. También existen otras placas anunciadas recientemente como el Arduino TRE o el Arduino Galilleo, que soportan incluso Linux nativo o Android, sin embargo el nuevo Arduino ZERO parece más orientado a proyectos de tipo wearable o IoT (Internet de las cosas).

Arduino TRE La primera semana de Octubre del año 2013 ha sido una semana de grandes noticias y anuncios por parte de la Fundación Arduino. El 3 de Octubre del 2013, poco después de haber anunciado la colaboración con la compañía Intel que se tradujo en el desarrollo de la placa Galileo, Arduino ha anunciado ahora el lanzamiento de una nueva placa diseñada en colaboración con la Fundación Beagleboard, la creadora de las placas Beagleboard, Beaglebone y Beaglebone Black, hasta ahora rivales ostensibles del movimiento Arduino. El Arduino TRE (por si acaso UNO, DUE, TRE en italiano se traduce al español como UNO, DOS, TRES) será en realidad dos Arduinos en uno; por una parte contendrá el mismo controlador que potencia a la placa Arduino Leonardo y por otra parte contendrá el procesador de 32 bits Sitara AM335x ARM Cortex-A8 de la compañía Texas Instruments, la cual corre a 1GHz y cuenta con una gama variada de periféricos y E/S de propósito general. Un aspecto destacable de este procesador (que es el mismo procesador usado en la placa Beaglebone Black) es el hecho de que cuenta con dos microcontroladores PRU (Programmable Real-time Unit) de 32 bits que corren a 200MHz y que están incluidos en el mismo chip que contiene el núcleo principal ARM Cortex, los cuales están pensados para su uso en innumerables aplicaciones de tiempo real (control de motores, PWM, etc.) El nuevo Arduino TRE será efectivamente como tener un Arduino Leonardo combinado con una placa BeagleBone Black en un solo sistema. Correrá el sistema operativo Linux y permitirá compilar y correr sketches de Arduino sin necesidad de una PC adicional. La placa será compatible con la gran mayoría

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

33 de los shields ya disponibles e incorporará ademas conectividad mediante Ethernet, XBee, USB y CAN entre otros. Gracias a la potencia del procesador AM335x los usuarios podrán implementar aplicaciones avanzadas que incluyan displays LCD de alta resolución, gráficos acelerados por hardware y tendrán además mayores opciones de conectividad. Otras aplicaciones pensadas incluyen impresoras 3D, portales de acceso de red para automatización doméstica, concentradores para telemetría mediante sensores inalámbricos y otras aplicaciones que requieran conectividad y operación en tiempo real. Más allá de la gran popularidad de la que ya goza actualmente, ciertamente la plataforma Arduino está demostrando que quiere insertarse aún mucho más agresivamente en el ámbito del bricolaje electrónico por afición, en el ámbito educativo y más aún también en el ámbito del desarrollo profesional de cara al cada vez más próximo "boom" del Internet de las Cosas, que según opiniones de algunos expertos para el 2020 se traducirá en la conexión a la red de 50 billones de dispositivos. El Arduino TRE estará disponible para la venta recién a partir del segundo cuarto del año próximo 2014 a un precio todavía no revelado. Ya sea como estudiante, profesional o aficionado, sin duda esta es una excelente época para dedicarse a la electrónica!

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

34

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

35

Dispositivos Alternos compatibles con ARDUINO A continuación se presentan las distribuidoras de componentes electrónicos, donde cuentan con elementos adicionales para la realización de proyectos con Arduino.

Jameco Electronics

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

36

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

37

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

38

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

39 MOUSER ELECTRONICS

En la dirección electrónica www.mouser.com, donde buscaremos varios elementos de Arduino un sistema que complementa fuertemente a precios módicos; el cual es un gran levantamiento para este software/hardware de código OpenSource. Para ingresar la búsqueda de Arduino, se coloca la palabra Arduino en el cuadro de búsqueda y en la parte derecha del cuadro hay una lupa en azul; se da clic y muestra una lista detallada de cada elemento en venta y el tipo de fabricante de cada uno de ellos, como se muestra en la captura siguiente:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

40

A continuación se muestra una captura de pantalla de la pagina www.mouser.com donde muestra los artículos de búsqueda de Arduino; asi como, su fabricante, el modelo, el precio y la disponibilidad del articulo, etc.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

41

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

42

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

43

A continuación se mostrar cada artículo con su fabricante, de forma detallada: Módulos de Pantalla 4D Systems:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

44

Herramientas de Ingeniería de potenciómetro digital:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

45

Herramientas de desarrollo de pantalla:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

46

Herramientas de desarrollo de procesador integrado, Tarjetas hija y Tableros OEM:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

47

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

48

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

49

Tipos de Herramientas de Procesador Integrado:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

50

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

51

Arduino Corriente Alterna (CA), Corriente Directa (DC) y Servo Motores:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

52

Arduino Cables USB / Cables IEEE 1394:

Antenas para Arduino:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

53

Productos de Prototipos:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

54

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

55

Herramientas de desarrollo de iluminación:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

56

Módulos de sensor:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

57

Arduino accesorios para módulo:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

58

Procesadores y Controladores integrados:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

59

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

60 Alojamiento de cables y cabecera:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

61 Olimex Una empresa que se dedica a la electrónica, sacó el producto derivado del Arduino más pequeño en el mercado. Se trata de un ATtiny85, al cual Olimex llamó Olimexino 85s, y sin duda fue el Arduino más pequeño que haya salido a la venta. Es impresionante en cierta medida. Sin embargo, se ha desarrollado uno aún más pequeño, con su entrada a USB. Es francamente increíble. El nanite 85 fue diseñado con mucho cuidado, con la intención de hacerlo pequeño y funcional. No solamente es un 20% más chico que el Olimexino, sino que hasta tiene un botón de reset. Uno de los aspectos más novedosos en el diseño es que tiene tiene sus pins del tamaño de un ATtiny85. Esto significa que se puede usar el Nanite 85 para desarrollar código con el bootloader y entonces se puede reemplazar directamente con un ATtiny85 preprogramado. El único pero que podría tener este mini dispositivo es que no tiene un regulador de voltaje, por lo que solamente se conecta al USB y esperemos que no se vaya a quemar lo cual, finalmente, no tiene tampoco por qué ocurrir.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

62 Memoria El ATmega168 tiene 16 KB de memoria Flash para almacenar código (de los cuales 2 KB se usa para el bootloader). Tiene 1 KB de SRAM y 512 bytes de EEPROM (que puede ser leida y escrita con la librería EEPROM1 Hay muchos otros microcontroladores y plataformas microcontroladoras disponibles para computación física. Parallax Basic Stamp, Netmedia's BX-24, Phidgets, MIT's Handyboard, y muchas otras ofertas de funcionalidad similar. Todas estas herramientas toman los desordenados detalles de la programación de microcontrolador y la encierran en un paquete fácil de usar. Arduino también simplica el proceso de trabajo con microcontroladores, pero ofrece algunas ventajas para profesores, estudiantes y acionados interesados sobre otros sistemas Placas E/S Diecimila: Esta es la placa Arduino más popular. Se conecta al ordenador con un cable estándar USB y contiene todo lo que necesitas para programar y usar la placa. Puede ser ampliada con variedad de dispositivos: placas hijas con características especícas. Nano: Una placa compacta diseñada para uso como tabla de pruebas, el Nano se conecta al ordenador usando un cable USB Mini-B. Bluetooth: El Arduino BT contiene un modulo bluetooth que permite comunicación y programación sin cables. Es compatible con los dispositivos Arduino. LilyPad: Diseñada para aplicaciones listas para llevar, esta placa puede ser conectada en fábrica, y un estilo sublime. Mini: Esta es la placa más pequeña de Arduino. Trabaja bien en tabla de pruebas o para aplicaciones en las que prima el espacio. Se conecta al ordenador usando el cable Mini USB. Serial: Es una placa básica que usa RS232 como un interfaz con el ordenador para programación y comunicación. Esta placa es fácil de ensamblar incluso como ejercicio de aprendizaje.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

63 Serial Single Sided: Esta placa está diseñada para ser grabada y ensamblada a mano. Es ligeramente más grande que la Diecimila, pero aun compatible con los dispositivos. El Arduino Diecimila puede ser alimentado a través de la conexión USB o con un suministro de energía externo. La fuente de energía se selecciona mediante el jumper PWR_SEL: para alimentar a la placa desde la conexión USB, colocarlo en los dos pines más cercanos al conector USB, para un suministro de energía externo, en los dos pines más cercanos al conector de alimentación externa. La alimentación externa (no USB) puede venir o desde un adaptador AC-a-DC (wall-wart) o desde una batería. El adaptador puede ser conectado mediante un enchufe centro-positivo en el conector de alimentación de la placa. Los cables de la batería pueden insertarse en las cabeceras de los pines Gnd y Vin del conector POWER. Un regulador de bajo abandono proporciona eficiencia energética mejorada. Otros productos olimex

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

64

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

65

Olimex © 1997-2014

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

66

Componentes del Arduino

1. Conector USB para el cable tipo AB 2. Pulsador de Reset 3. Pines de Entradas y salidas digitales y PWM 4. LED verde de placa encendida 5. LED naranja conectado al pin13 6. ATmega 16U2 encargado de la comunicación con el PC 7. LED TX (transmisor) y RX (receptor) de la comunicación serial 8. Puerto ICSP para programación serial 9. Microcontrolador ATmega 328, cerebro del Arduino 10. Cristal de cuarzo de 16 Mhz 11. Regulador de voltaje 12. Conector hembra 2.1mm con centro positivo 13. Pines de voltaje y tierra 14. Entradas análogas

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

67 Microcontrolador Un microcontrolador (abreviado μC,UC o MCU) es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica. Un microcontrolador incluye en su interior las tres unidades funcionales principales: unidad central de procesamiento (CPU), memoria y periféricos de entrada y salida (I/O). Para que pueda controlar algún proceso es necesario crear y luego grabar en la memoria EEPROM del microcontrolador algún programa, el cual puede ser escri-to en lenguaje ensamblador u otro len-guaje para microcontroladores; debe ser codificado en sistema numérico hexade-cimal que es finalmente el sistema que hace trabajar al microcontrolador cuan-do éste es alimentado con el voltaje adecuado y asociado a dispositivos analógicos y discretos para su funcionamiento. Los microcontroladores representan la inmensa mayoría de los chips vendidos, tie-nes distribuidos seguramente entre los electrodomésticos de tu hogar una o dos docenas de microcontroladores. Pueden encontrarse en casi cualquier dispositivo electrónico como automóviles, lavadoras, hornos microondas, teléfonos, Arduino. Los microcontroladores utilizan la mayoría para recibir señales de dispositivos de entrada/salida, con la gran ventaja de que se puede prescindir de cualquier otra circuitería externa. Los

puertos

de

E/S

(entrada/salida

ó

I/O)

en

el

microcontrolador, se agrupan en puertos de 8 bits de longitud, lo que permite leer datos del exterior o escribir en ellos desde el interior del microcontrolador, el destino es el trabajo con dispositivos simples como relés, LED, motores, fotoceldas, pulsado-res o cualquier otra cosa que se le ocurra al programador.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

68

Resistencia

Es un material formado por carbón y otros elementos resistivos para disminuir la corriente que pasa. Se opone al paso de la corriente. La corriente máxima en un resistor viene condicionado por la máxima potencia que puede disipar su cuerpo. Esta potencia se puede identificar visualmente a partir del diámetro sin que sea necesaria otra indicación. Los valores más comunes son 0,25 W, 0,5 W y 1 W. El valor de la resistencia eléctrica se obtiene leyendo las cifras como un número de una, dos o tres cifras; se multiplica por el multiplicador y se obtiene el resultado en Ohmios (Ω).

Diodo

Un diodo es un componente electrónico de dos terminales que permite la circulación de la corriente eléctrica a través de él en un solo sentido. Tiene dos partes: el cáto-do y el ánodo.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

69

Transistor

El transistor es un dispositivo electrónico semiconductor que cumple funciones de amplificador, oscilador, conmutador o rectificador. Tiene tres partes: la base (B), el emisor (E) y colector (C). Actualmente se encuentran prácticamente en todos los aparatos domésticos de uso diario: radios, televisores, grabadoras, reproductores de audio y video, hornos de microondas, lavadoras, automóviles, equipos de refrigeración, alarmas, relojes de cuarzo, ordenadores, calculadoras, impresoras, lámparas fluorescentes, equipos de rayos X, tomógrafos, ecógrafos, reproductores mp3, teléfonos celulares, etc.

Condensador

Un condensador o capacitor es un dispositivo utilizado en electrónica, capaz de almacenar energía sustentando un campo eléctrico. Está formado por un par de superficies conductoras, generalmente en forma de láminas o placas, en situación de influencia total separadas por un material dieléctrico o por el vacío. Las placas, sometidas a una diferencia de potencial, adquieren una determinada carga eléctrica, positiva en una de ellas y negativa en la otra.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

70 Pulsador

Un botón o pulsador es utilizado para activar alguna función. Los botones son por lo general activados al ser pulsados, normalmente con un dedo. Un botón de un dispo-sitivo electrónico funciona por lo general como un interruptor eléctrico, es decir en su interior tiene dos contactos, si es un dispositivo NA (normalmente abier-to) o NC (normalmente cerrado), con lo que al pulsarlo se activará la fun-ción inversa de la que en ese momento este realizando.

Reed switch

Reed switch es un interruptor eléctrico activado por un campo magnético, por ejemplo con un imán. Cuando los contactos están normalmente abiertos se cierran en la presencia de un campo magnético; cuando están normalmente cerrados se abren en presencia de un campo magnético. Un uso muy extendido se pue-de encontrar en los sensores de las puertas y ventanas de las alarmas anti-robo, el imán va unido a la puerta y el reed switch al marco.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

71 Zumbador o Buzzer

El zumbador, buzzer en inglés, es un transductor electroacústico que produce un sonido o zumbido continuo o intermitente de un mismo tono. Sirve como mecanismo de señalización o aviso, y son utilizados en múltiples sistemas como en automóviles o en electrodomésticos. Inicialmente este dispositivo estaba basado en un sistema electromecánico que era similar a una campana eléctrica pero sin el badajo metálico, el cual imitaba el sonido de una campana. Su construcción consta de dos elementos, un electroimán y una lámina metálica de acero. El zumbador puede ser conectado a circuitos integrados especiales para así lograr distintos tonos. Cuando se acciona, la corriente pasa por la bobina del electroimán y produce un campo magnético variable que hace vibrar la lámina de acero sobre la armadura.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

72

Expansiones de Arduino con shield Un Shield o escudo es una placa que permite expandir funcionalidades a tu Arduino, con lo cual puedes conectar motores, o a la red celular, a una red WiFi, a una red Ethernet o tener un MP3 en el Arduino, etc.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

73

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

74



Terminal de referencia analógica (naranja)



Tierra digital (verde claro)



Terminales digitales 2-13 (verde)



Terminales digitales 0-1/ E/S serie - TX/RX (verde oscuro) serie (por ejemplo Serial.begin).



Botón de reinicio - S1 (azul oscuro)



Programador serie en circuito "In-circuit Serial Programmer" o "ICSP" (azul celeste)



Terminales de entrada analógica 0-5 (azul claro)



Terminales de alimentación y tierra (alimentación: naranja, tierras: naranja claro)



Entrada de alimentación externa (9-12VDC) - X1 (rosa)



Selector de alimentación externa o por USB (coloca un jumper en los dos pines mas cercanos de la alimentación que quieras) - SV1(púrpura). En las versiones nuevas de Arduino la selección de alimentacion es automática por lo que puede que no tengas este selector.



USB (utilizado para subir programas a la placa y para comunicaciones serie entre la placa y el ordenador; puede utilizarse como alimentación de la placa) (amarillo) Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

75 Microcontroladores ATmega168 (utilizado en la mayoría de las

ATmega8 (utilizado en algunas placas antiguas)

placas Arduino) Terminales

de

E/S digital Terminales

14 (6 de ellos pueden proporcionar

salidas

PWM) de

entrada

Pines de E/S digital Pines

6

analógica Corriente

Corriente DC por

por pin de E/S

40 mA

salidas

de

analógicos

terminal de E/S

proporcionar PWM)

entrada 6 (DIP) o 8 (SMD)

14 (3 de ellos pueden

DC

40 mA

Memoria Flash

8 KB

Memoria Flash

16 KB

SRAM

1 KB

SRAM

1 KB

EEPROM

512 bytes

EEPROM

512 bytes

Terminales Digitales En adición a las funciones específicas listadas abajo, las terminales digitales de una placa Arduino pueden ser utilizados para entradas o salidas de propósito general a través de los comandos pinMode(), digitalRead(), y digitalWrite(). Cada terminal tiene una resistencia pull-up que puede activarse o desactivarse utilizando DigitalWrite() (con un valor de HIGH o LOW, respectivamente) cuando el pin esta configurado como entrada. La corriente máxima por salida es 40 mA. 

Serial: 0 (RX) y 1 (TX). Utilizado para recibir (RX) y transmitir (TX) datos serie TTL.



Interrupciones externas: 2 y 3. Estas terminales pueden ser configuradas para disparar una interrupción con un valor bajo, un pulso de subida o bajada, o un cambio de valor.



PWM: 3, 5, 6, 9, 10, y 11. Proporcionan salidas PWM de 8 bit con la función analogWrite(). Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

76 

Reset BT: 7. (solo en Arduino BT) Conectado a la línea de reset del módulo bluetooth.



SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estas terminales soportan comunicación SPI. Aunque esta funcionalidad esta proporcionada por el hardware, no está incluida actualmente el el lenguaje Arduino.



LED: 13. En el Diacemila y el LilyPad hay un led en placa conectado al pin digital 13. cuando el pin tiene valor HIGH, el LED está encendido, cuando el pin está en LOW, está apagado

Pines Analógicos En adición a las funciones específicas listadas abajo, los pines de entrada analógicos soportan conversiones analógico-digital (ADC) de 10 bit utilizando la función analogRead(). Las entradas analógicas pueden ser también usadas como pines digitales: entrada analógica 0 como pin digital 14 hasta la entrada analógica 5 como pin digital 19. Las entradas analógicas 6 y 7 (presentes en el Mini y el BT) no pueden ser utilizadas como pines digitales. 

I2C: 4

(SDA) y 5 (SCL). Soportan comunicaciones

I2C (TWI) utilizando

la librería

Wire (documentación en la página web de Wiring).

Pines de alimentación 

VIN (a veces marcada como "9V"). Es el voltaje de entrada a la placa Arduino cuando se está utilizando una fuente de alimentación externa (En comparación con los 5 voltios de la conexión USB o de otra fuente de alimentación regulada). Puedes proporcionar voltaje a través de este pin. Date cuenta que diferentes placas aceptan distintos rangos de voltaje de entrada, por favor, mira la documentación de tu placa. También date cuenta que el LilyPad no tiene pin VIN y acepta solo una entrada regulada.



5V. La alimentación regulada utilizada para alimentar el microcontrolador y otros componentes de la placa. Esta puede venir de VIN a través de un regulador en placa o ser proporcionada por USB u otra fuente regulada de 5V.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

77 

3V3. (solo en el Diacemila) Una fuente de 3.3 voltios generada por el chip FTDI de la placa.



GND. Pines de tierra.

Otros Pines 

AREF. Referencia

de

voltaje

para

las

entradas

analógicas.

Utilizada

con

la

función analogReference(). 

Reset. (Solo en el Diacemila) Pon esta línea a LOW para resetear el microcontrolador. Utilizada típicamente para añadir un botón de reset a shields que bloquean el de la placa principal.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

78 Alambre

Un alambre es uno de los componentes más básicos, y cruciales disponibles. Un alambre permite el flujo sin trabas de la electricidad. Un alambre se utiliza para conectar los componentes de un circuito juntos. Un alambre puede ser pensado como cualquier dispositivo que se destina a la electricidad ruta desde un componente a otro. En este sentido, un cable puede ser el núcleo de metal tradicional, envuelta aislante alambre. Además también puede ser la huella en una placa de circuito o la conexión de soldadura entre dos componentes en la ausencia de un alambre " tradicional. {Nota: un cable impedirá el flujo de la electricidad, pero es tan leve que usualmente podemos ignorar sus efectos.} Alambre físico Cable físico (a diferencia de las trazas de PCB , o alambres en los esquemas ) se puede dividir en dos categorías generales : sólido y trenzado . La diferencia es la facilidad con que se dobla el alambre, y la facilidad con que se rompe. Todos los cables que se necesitan para flexionar, como los cables de la línea de aparatos o cables a los altavoces de audio deben ser trenzados de alambre. El alambre sólido se utiliza cuando el alambre no necesita flexionarse y donde tener un conductor sólido hace que el alambre más fácil trabajar con. Los ejemplos de lugares donde se utiliza alambre sólido están dentro de las paredes de los edificios y en paneras electrónicos. En ambos casos, el cable no va a hacer una gran cantidad de flexión, y es más fácil de usar como un conductor sólido , en lugar de un montón de hebras más pequeñas . Medidores de alambre Breadboards están generalmente diseñados para utilizar un cable de calibre 22, aunque pueden acomodar un medidor o dos de cualquier manera. Cabeceras femeninas Arduino no están diseñadas para la inserción de alambre, pero funciona bastante bien para muchas situaciones de prototipo. Calibre 20 es probablemente más dependendable en los encabezados de Arduino que un calibre 22,

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

79 pero tanto va a funcionar. En calibres de alambre, los números más grandes corresponden con alambre más pequeño. Radio Shack, aunque uno siempre vacila en recomendar, vende alambre sólido y trenzado. Busque sólido calibre 22 (o alternativamente calibre 20 sólido) de alambre para el uso con su ' duino y un tablero. Si usted necesita una buena cantidad de alambre breadboard lo puede obtener a bajo costo, y en varios colores, con la compra de un cable telefónico conductor sólido. Asegúrese de que sea conductor sólido, aunque como se venden tanto sólido y trenzado. Usted puede encontrar esto en tiendas de mejoras para el hogar y en la RS Esto es comúnmente de calibre 24, por lo que es un tamaño más pequeño que ideal, y se puede doblar sobre sí mismo para realizar conexiones seguras en ' cabeceras femeninas Duino . Cables de la computadora antiguas contienen una gran cantidad de cable trenzado en varios calibres y colores que es extremadamente útil para el cableado de pequeños proyectos electrónicos. Obtener dondequiera basura tech se descarta.

Breadboard A Breadboard es un dispositivo que facilita la construcción y prueba de circuitos. Típicamente se utilizan para diseños de circuitos de prototipos. Algunos tipos comunes son: Placa sin soldadura - tiene una placa frontal de plástico con agujeros que los componentes se pueden insertar en. Los componentes hacen contacto eléctrico con tiras de metal debajo de la placa frontal. De esta manera no se necesita ninguna soldadura para sujetar los componentes en su lugar.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

80

Fuente de alimentación Una fuente de alimentación es un dispositivo que proporciona una fuente de energía eléctrica para un circuito. Una fuente de alimentación crea una tensión entre sus pines de salida. La medida de la tensión y la corriente que se suministra varía entre los dispositivos. Algunos tipos comunes de fuentes de alimentación:

Sobremesa Power Supply - proporciona los cargadores AC (corriente alterna) de origen a DC (corriente continua). Batería - Un dispositivo autónomo que produce energía por reacciones químicas en la batería. Propiedades de estas reacciones son conocidas y por lo tanto el voltaje y la corriente son conocidos. "Wall Wart " - típicamente un pequeño dispositivo que se conecta a una toma de corriente y la convierte de AC a DC con un voltaje y corriente predeterminada. Células solares - Convierte la luz en voltaje eléctrico y corriente. Estos pueden variar en función de la intensidad de la luz.

Resistor Una resistencia es un dispositivo que resiste el flujo de electricidad. Esta resistencia al flujo de electricidad puede ser usado para limitar la cantidad de corriente que fluye en un componente eléctrico. Su capacidad para resistir la corriente se mide en ohmios [R] o [Capital de Omega ] .

Condensador Un condensador es un dispositivo que puede almacenar y liberar carga eléctrica en un circuito. Normalmente, un condensador consta de dos placas de carga con un material en el medio que evita la descarga eléctrica. Aunque otros tipos de condensadores se pueden producir. Estos dispositivos Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

81 pueden ser utilizados para suavizar las señales en un circuito. Además, grandes condensadores se pueden utilizar como sistemas de almacenamiento de corriente. Su capacidad para almacenar carga se mide en faradios [F].

Inductor Un inductor es un dispositivo que almacena energía eléctrica en un campo magnético. Un inductor es una bobina de alambre. Cuando una corriente se envía por el cable se genera un campo magnético. Cuando el flujo aumenta, más energía se almacena en el campo magnético; cuando el flujo disminuye, la energía se libera en forma de energía eléctrica. Un inductor se puede utilizar para suavizar o filtrar las variaciones en la corriente, tanto en la misma forma en que un condensador se puede. La capacidad de un inductor para almacenar energía eléctrica se mide en Henrys [H].

Diodo

Un diodo es un dispositivo que sólo permite el flujo de electricidad para pasar en una dirección. Estos componentes se utilizan a menudo para aislar el efecto de un componente de otro. Algunos tipos comunes de Diodos: Diodo emisor de luz (LED) Foto diodo - detecta la luz Diodo láser - emite un haz de luz coherente (láser) Diodo Zener - impide que el flujo de corriente hasta un umbral de tensión.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

82 LED Un LED es un diodo que genera una longitud de onda específica de la luz cuando se aplica un voltaje a través de sus clientes potenciales. Esta tensión se conoce como la tensión directa del LED. El brillo de la luz varía según la corriente es muy variada. Un LED no tiene limitantes, por lo que la aplicación de tensiones actuales inherentes superiores a la tensión directa se suele producir un recalentamiento o quemar el LED . A menudo, el LED está dañada por esto y todavía se enciende, pero nunca será tan brillante como la configuración original.

Limitadores de corriente resistencias en serie

La manera más simple para limitar la corriente a un LED es usar una resistencia en serie con el LED, Para calcular el valor correcto de la resistencia, es más fácil utilizar la ley de Ohm para calcular la corriente eléctrica a través de la resistencia, y no el LED. Esto funciona bien porque la corriente a través de un circuito en serie es la misma en cada punto en un circuito, lo que significa que la corriente será la misma a través del LED como la corriente a través de la resistencia.

He aquí un ejemplo: Un LED va a ser alimentados por una fuente de 5 voltios. Comprobación de hoja de datos del LED, la tensión directa es 3 voltios. Así que una resistencia en serie con el LED tendría 5 voltios - 3 voltios = 2 voltios a través de la resistencia. Para decirlo de 20 miliamperios a través del LED (una especificación típica para un LED iluminado), la ley de Ohm se vería así . E = IR E = Tensión en voltios I = corriente en amperios R = resistencia en ohmios

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

83 2 voltios / amperios 0.02 = 100 ohmios, por lo que usar una resistencia de 100 ohmios en serie con el LED se iluminarán que a una corriente de 0,02 amperios ( 20 miliamperios) . Así que puedo conectar un LED en un Arduino sin una resistencia?

La respuesta es sí , aunque esto no es necesariamente la mejor de las técnicas . Un pasador ATmega sólo puede abastecer a unos 40 miliamperios , que no es suficiente corriente para dañar stndard LED. Una mejor opción sería una resistencia en serie con un valor de entre 100 ohmios y 1k , conectado entre el LED y el suelo.

Pulsador Un pulsador es un dispositivo que ya sea completa o interrumpe el flujo de electricy en un circuito debido a la fuerza en el botón. Los pulsadores vienen en muchas configuraciones y tipos. Un tipo común es el interruptor momentáneo. Cuando se aplica una fuerza al botón del botón se completar ya sea la conexión (esto se conoce como un interruptor normalmente abierto ) o interrumpirá la conexión ( esto se conoce como un interruptor normalmente cerrado) . Estos dispositivos pueden ser útiles para la interrupción de las señales al microcontrolador ( Arduino ) para la entrada .

Transistor Un transistor es un dispositivo que restringe o permite el flujo de corriente entre dos contactos en función de la presencia o ausencia de corriente en un tercer contacto. Un transistor tiene tres terminales: colector, emisor y base. El colector y actuar como emisor de la entrada y la salida para el transistor. Mientras que la base es el detonante de la señal. Dos tipos comunes de los transistores son:

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

84 PNP - Si la tensión de base es menor que la tensión de emisor, a continuación, la corriente fluye desde el emisor al colector. NPN - Si la tensión de base es mayor que la tensión de emisor, a continuación, la corriente fluye desde el colector al emisor. {Nota: La P significa semiconductor tipo P y el N es N- tipo semiconductor}

Dos usos comunes para los transistores son para actuar como un interruptor activado eléctricamente. También transistores se pueden utilizar para aumentar (amplificar) la corriente de salida .

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

85

Relé Un relé es un dispositivo que completa una conexión entre dos puntos de contacto por medio de un movimiento mecánico. Un relé puede utilizar un solenoide para mover magnéticamente un interruptor de contacto. Se envía una señal al relé que puede ser usado como la fuente del electroimán. Se suelen utilizar como mecanismos que permitan la pequeña corriente DC para cambiar grandes corrientes AC o DC de conmutación. En esta aplicación se pueden aislar los circuitos de control más sensible de los componentes más grandes.

Fotoresistor Una fotorresistencia es un tipo especial de resistencia que es la foto (o la luz ) sensible es decir, la resistencia cambia según la cantidad de luz que se encuentra en la fotorresistencia.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

86

Modulo Arduino El módulo Arduino ha sido usado como base en diversas aplicaciones electrónicas: Xoscillo: Osciloscopio de código abierto. Equipo científico para investigaciones. Arduinome: Un dispositivo controlador MIDI. OBDuino: un económetro que usa una interfaz de diagnóstico a bordo que se halla en los automóviles modernos. Humane Reader: dispositivo electrónico de bajo costo con salida de señal de TV que pueden manejar una biblioteca de 5000 títulos en una tarjeta microSD. The Humane PC: equipo que usa un módulo Arduino para emular un computador personal, con un monitor de televisión y un teclado para computadora. Ardupilot: software y hardware de aviones no tripulados. ArduinoPhone: un teléfono móvil celular construido sobre un módulo Arduino. Arduino puede tomar información del entorno a través de sus pines de entrada de toda una gama de sensores y puede afectar aquello que le rodea controlando luces, motores y otros actuadores. El microcontrolador en la placa Arduino se programa mediante el lenguaje de programación Arduino (basasdo en Wiring) y el entorno de desarrollo Arduino (basado en Processing). Los proyectos hechos con Arduino pueden ejecutarse sin necesidad de conectar a un ordenador, si bien tienen la posibilidad de hacerlo y comunicar con diferentes tipos de software

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

87

Programación de Arduino Estructura del programa La estructura básica del lenguaje de programación de Arduino es bastante simple y se compone de al menos dos partes. Estas dos partes necesarias, o funciones, encierran bloques que contienen declaraciones, estamentos o instrucciones. void setup() { estamentos; } void loop() { estamentos; } En donde setup() es la parte encargada de recoger la configuración y loop() es la que contienen el programa que se ejecutará cíclicamente (de ahí el termino loop –bucle-). Ambas funciones son necesarias para que el programa trabaje. La función de configuración debe contener la declaración de las variables. Es la primera función a ejecutar en el programa, se ejecuta sólo una vez, y se utiliza para configurar o inicializar pinMode (modo de trabajo de las E/S), configuración de la comunicación en serie y otras. La función bucle (loop) siguiente contiene el código que se ejecutara continuamente (lectura de entradas, activación de salidas, etc) Esta función es el núcleo de todos los programas de Arduino y la que realiza la mayor parte del trabajo.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

88 Setup() La función setup() se invoca una sola vez cuando el programa empieza. Se utiliza para inicializar los modos de trabajo de los pins, o el puerto serie. Debe ser incluido en un programa aunque no haya declaración que ejecutar. void setup() { pinMode(pin, OUTPUT); // configura el 'pin' como salida }

loop() Después de llamar a setup(), la función loop() hace precisamente lo que sugiere su nombre, se ejecuta de forma cíclica, lo que posibilita que el programa este respondiendo continuamente ante los eventos que se produzcan en la tarjeta void loop() { digitalWrite(pin, HIGH); // pone en uno (on, 5v) el ´pin´ delay(1000); // espera un segundo (1000 ms) digitalWrite(pin, LOW); // pone en cero (off, 0v.) el ´pin´ delay(1000); }

Función Una función es un bloque de código que tiene un nombre y un conjunto de estamentos que son ejecutados cuando se llama a la función. Son funciones setup() y loop() de las que ya se ha hablado. Las funciones de usuario pueden ser escritas para realizar tareas repetitivas y para reducir el tamaño de un programa. Las funciones se declaran asociadas a un tipo de valor “type”. Este valor será el que devolverá la función, por ejemplo 'int' se utilizará cuando la función devuelva un dato numérico de tipo entero. Si la función no devuelve ningún valor entonces se colocará delante la palabra “void”, que significa “función vacía”. Después de declarar el tipo de dato que devuelve la función se debe escribir el nombre de la función y entre paréntesis se escribirán, si es necesario, los parámetros que se deben pasar a la función para que se ejecute. Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

89 type nombreFunción(parámetros) { estamentos; } La función siguiente devuelve un número entero, delayVal() se utiliza para poner un valor de retraso en un programa que lee una variable analógica de un potenciómetro conectado a una entrada de Arduino. Al principio se declara como una variable local, ´v´ recoge el valor leído del potenciómetro que estará comprendido entre 0 y 1023, luego se divide el valor por 4 para ajustarlo a un margen comprendido entre 0 y 255, finalmente se devuelve el valor ´v´ y se retornaría al programa principal. Esta función cuando se ejecuta devuelve el valor de tipo entero ´v´. int delayVal() { int v; // crea una variable temporal 'v' v= analogRead(pot); // lee el valor del potenciómetro v /= 4; // convierte 0-1023 a 0-255 return v; // devuelve el valor final }

{} entre llaves Las llaves sirven para definir el principio y el final de un bloque de instrucciones. Se utilizan para los bloques de programación setup(), loop(), if.., etc. Una llave de apertura “{“ siempre debe ir seguida de una llave de cierre “}”, si no es así el programa dará errores.

; punto y coma El punto y coma “;” se utiliza para separar instrucciones en el lenguaje de programación de Arduino. También se utiliza para separar elementos en una instrucción de tipo “bucle for”. Olvidarse de poner fin a una línea con un punto y coma se traducirá en un error de compilación.

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

90 /*… */ bloque de comentarios Los bloques de comentarios, o multi-línea de comentarios, son áreas de texto ignorados por el programa que se utilizan para las descripciones del código o comentarios que ayudan a comprender el programa. Comienzan con / * y terminan con * / y pueden abarcar varias líneas.

// línea de comentarios Una línea de comentario empieza con / / y terminan con la siguiente línea de código. Al igual que los comentarios de bloque, los de línea son ignoradas por el programa y no ocupan espacio en la memoria. Una línea de comentario se utiliza a menudo después de una instrucción, para proporcionar más información acerca de lo que hace esta o para recordarla más adelante.

Variables Una variable es una manera de nombrar y almacenar un valor numérico para su uso posterior por el programa. Como su nombre indica, las variables son números que se pueden variar continuamente en contra de lo que ocurre con las constantes cuyo valor nunca cambia. Una variable debe ser declarada y, opcionalmente, asignarle un valor. El siguiente código de ejemplo declara una variable llamada variable Entrada y luego le asigna el valor obtenido en la entrada analógica del PIN2: int variableEntrada = 0; // declara una variable y le asigna el valor 0 variableEntrada = analogRead(2);// la variable recoge el valor analógico del PIN2 'variableEntrada' es la variable en sí. La primera línea declara que será de tipo entero “int”. La segunda línea fija a la variable el valor correspondiente a la entrada analógica PIN2. Esto hace que el valor de PIN2 sea accesible en otras partes del código. Una vez que una variable ha sido asignada, o re-asignada, usted puede probar su valor para ver si cumple ciertas condiciones (instrucciones if...), o puede utilizar directamente su valor. Como ejemplo ilustrativo veamos tres operaciones útiles con variables: el siguiente código prueba si la Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

91 variable “entradaVariable” es inferior a 100, si es cierto se asigna el valor 100 a “entradaVariable” y, a continuación, establece un retardo (delay) utilizando como valor “entradaVariable” que ahora será como mínimo de valor 100: if (entradaVariable < 100) // pregunta si la variable es menor de 100 { entradaVariable = 100;// si es cierto asigna el valor 100 a esta } delay(entradaVariable); // usa el valor como retardo Las variables deben tomar nombres descriptivos, para hacer el código más legible.

Declaración de variables Todas las variables tienen que declararse antes de que puedan ser utilizadas. Para declarar una variable se comienza por definir su tipo como int (entero), long (largo), float (coma flotante), etc, asignándoles siempre un nombre, y, opcionalmente, un valor inicial. Esto sólo debe hacerse una vez en un programa, pero el valor se puede cambiar en cualquier momento usando aritmética y reasignaciones diversas. El siguiente ejemplo declara la variable entradaVariable como una variable de tipo entero “int”, y asignándole un valor inicial igual a cero. Esto se llama una asignación. int entradaVariable = 0; Una variable puede ser declarada en una serie de lugares del programa y en función del lugar en donde se lleve a cabo la definición esto determinará en que partes del programa se podrá hacer uso de ella.

Utilización de una variable Una variable puede ser declarada al inicio del programa antes de la parte de configuración setup(), a nivel local dentro de las funciones, y, a veces, dentro de un bloque, como para los bucles del tipo if... for..., etc. En función del lugar de declaración de la variable así se determinara el ámbito de aplicación, o la capacidad de ciertas partes de un programa para hacer uso de ella. Una variable global es aquella que puede ser vista y utilizada por cualquier función y estamento de un programa. Esta variable se declara al comienzo del programa, antes de setup(). Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

92 Una variable local es aquella que se define dentro de una función o como parte de un bucle. Sólo es visible y sólo puede utilizarse dentro de la función en la que se declaró. Por lo tanto, es posible tener dos o más variables del mismo nombre en diferentes partedel mismo programa que pueden contener valores diferentes. La garantía de que sólo una función tiene acceso a sus variables dentro del programa simplifica y reduce el potencial de errores de programación. El siguiente ejemplo muestra cómo declarar a unos tipos diferentes de variables y la visibilidad de cada variable: int value; // 'value' es visible para cualquier función void setup() { // no es necesario configurar } void loop() { for (int i=0; i 0 && x < 5) // cierto sólo si las dos expresiones son ciertas Logical OR: if (x > 0 || y > 0) // cierto si una cualquiera de las expresiones es cierta Logical NOT: if (!x > 0) // cierto solo si la expresión es falsa

Constantes El lenguaje de programación de Arduino tiene unos valores predeterminados, que son llamados constantes. Se utilizan para hacer los programas más fáciles de leer. Las constantes se clasifican en grupos.

cierto/falso (true/false) Estas son constantes booleanas que definen los niveles HIGH (alto) y LOW (bajo) cuando estos se refieren al estado de las salidas digitales. FALSE se asocia con 0 (cero), mientras que TRUE se asocia con Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

97 1, pero TRUE también puede ser cualquier otra cosa excepto cero. Por lo tanto, en sentido booleano, 1, 2 y -200 son todos también se define como TRUE. (esto es importante tenerlo en cuanta) if (b == TRUE); { ejecutar las instrucciones;

high/low Estas constantes definen los niveles de salida altos o bajos y se utilizan para la lectura o la escritura digital para las patillas. ALTO se define como en la lógica de nivel 1, ON, ó 5 voltios, mientras que BAJO es lógica nivel 0, OFF, o 0 voltios. digitalWrite(13, HIGH); // activa la salida 13 con un nivel alto (5v.) Estas constantes son utilizadas para definir, al comienzo del programa, el modo de funcionamiento de los pines mediante la instrucción pinMode de tal manera que el pin puede ser una entrada INPUT o una salida OUTPUT. pinMode(13, OUTPUT); // designamos que el PIN 13 es una salida

input/output Estas constantes son utilizadas para definir, al comienzo del programa, el modo de funcionamiento de los pines mediante la instrucción pinMode de tal manera que el pin puede ser una entrada INPUT o una salida OUTPUT. pinMode(13, OUTPUT); // designamos que el PIN 13 es una salida

Control de flujo if (si) if es un estamento que se utiliza para probar si una determinada condición se ha alcanzado, como por ejemplo averiguar si un valor analógico está por encima de un cierto número, y ejecutar una serie de declaraciones (operaciones) que se escriben dentro de llaves, si es verdad. Si es falso (la condición no Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

98 se cumple) el programa salta y no ejecuta las operaciones que están dentro de las llaves, El formato para if es el siguiente: if (unaVariable ?? valor) { ejecutaInstrucciones; } En el ejemplo anterior se compara una variable con un valor, el cual puede ser una variable o constante. Si la comparación, o la condición entre paréntesis se cumple (es cierta), las declaraciones dentro de los corchetes se ejecutan. Si no es así, el programa salta sobre ellas y sigue. Nota: Tenga en cuenta el uso especial del símbolo '=', poner dentro de if (x = 10), podría parecer que es válido pero sin embargo no lo es ya que esa expresión asigna el valor 10 a la variable x, por eso dentro de la estructura if se utilizaría X==10 que en este caso lo que hace el programa es comprobar si el valor de x es 10.. Ambas cosas son distintas por lo tanto dentro de las estructuras if, cuando se pregunte por un valor se debe poner el signo doble de igual “==”

if… else (si….. sino ..) if… else viene a ser un estructura que se ejecuta en respuesta a la idea “si esto no se cumple haz esto otro”. Por ejemplo, si se desea probar una entrada digital, y hacer una cosa si la entrada fue alto o hacer otra cosa si la entrada es baja, usted escribiría que de esta manera: if (inputPin == HIGH) // si el valor de la entrada inputPin es alto { instruccionesA; //ejecuta si se cumple la condición } else { instruccionesB; //ejecuta si no se cumple la condición } Else puede ir precedido de otra condición de manera que se pueden establecer varias estructuras condicionales de tipo unas dentro de las otras (anidamiento) de forma que sean mutuamente excluyentes pudiéndose ejecutar a la vez. Es incluso posible tener un número ilimitado de estos

Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

99 condicionales. Recuerde sin embargo qué sólo un conjunto de declaraciones se llevará a cabo dependiendo de la condición probada: if (inputPin < 500) { instruccionesA; // ejecuta las operaciones A } else if (inputPin >= 1000) { instruccionesB; // ejecuta las operaciones B } else { instruccionesC; // ejecuta las operaciones C } Nota: Un estamento de tipo if prueba simplemente si la condición dentro del paréntesis es verdadera o falsa. Esta declaración puede ser cualquier declaración válida. En el anterior ejemplo, si cambiamos y ponemos (inputPin == HIGH). En este caso, el estamento if sólo chequearía si la entrada especificado esta en nivel alto (HIGH), o +5v.

for La declaración for se usa para repetir un bloque de sentencias encerradas entre llaves un número determinado de veces. Cada vez que se ejecutan las instrucciones del bucle se vuelve a testear la condición. La declaración for tiene tres partes separadas por (;) vemos el ejemplo de su sintaxis: for (inicialización; condición; expresión) { ejecutaInstrucciones; } La inicialización de una variable local se produce una sola vez y la condición se testea cada vez que se termina la ejecución de las instrucciones dentro del bucle. Si la condición sigue cumpliéndose, las instrucciones del bucle se vuelven a ejecutar. Cuando la condición no se cumple, el bucle termina. El siguiente ejemplo inicia el entero i en el 0, y la condición es probar que el valor es inferior a 20 y si es cierto i se incrementa en 1 y se vuelven a ejecutar las instrucciones que hay dentro de las llaves: Interfaces y Redes Industriales

Instituto Tecnológico de Mexicali

100 for (int i=0; i