investigacion sobre el arduino

Upload: gloridk

Post on 06-Jan-2016

12 views

Category:

Documents


1 download

TRANSCRIPT

Universidad Tecnolgica de PanamFacultad de Ingeniera Mecnica.Licenciatura en Ingeniera Naval.

Materia: Teora de Control

Investigacin #1Tema: Arduino

Preparado por:Gloria Illueca8-886-2065

Profesora Ilka Banfield

Instructora: Evelyn Mascarin

1 NI 131

20151. Qu es Arduino?

Arduino es una herramienta para hacer que los ordenadores puedan sentir y controlar el mundo fsico a travs de tu ordenador personal. Es una plataforma de desarrollo de computacin fsica (physical computing) de cdigo abierto, basada en una placa con un sencillo microcontrolador y un entorno de desarrollo para crear software (programas) para la placa.Puedes usar Arduino para crear objetos interactivos, leyendo datos de una gran variedad de interruptores y sensores y controlar multitud de tipos de luces, motores y otros actuadores fsicos. Los proyectos con Arduino pueden ser autnomos o comunicarse con un programa (software) que se ejecute en tu ordenador.

2. Cuntas clases existen?

Existen hasta la fecha 19 tipos de Arduinos: Arduino UNO Arduino Leonardo Arduino Due Arduino Yn Arduino Robot Arduino Esplora Arduino Mega ADK Arduino Ethernet Arduino Mega 2560 Arduino Mini Arduino Nano Arduino Pro Mini Arduino Pro Arduino Micro Arduino Fio LilyPad Arduino USB LilyPad Arduino Simple LilyPad Arduino SimpleSnap LilyPad Arduino

3. Cul es el Principio de funcionamiento de un Arduino?

Lo primero que tenemos que hacer para comenzar a trabajar con el entorno de desarrollo de Arduino es configurar las comunicaciones entre la placa Arduino y la PC. Para ello deberemos abrir el men Tools la opcin Serial Port. En esta opcin deberemos seleccionar el puerto serie al que est conectada nuestra placa. En Windows, si desconocemos el puerto al que est conectada nuestra placa podemos descubrirlo a travs del Administrador de dispositivos (Puertos COM & LPT/USB serial Port).El primer paso para comprobar que todo lo que hemos hecho hasta ahora est bien y familiarizarnos con el interfaz de desarrollo, es abrir uno de los ejemplos. Se recomienda abrir el ejemplo Blink. Para ello debemos acceder a travs del men File Skethbook Examples Digital Blink.El ejemplo Blink lo nico que hace es parpadear un Led que est colocado en el pin nmero 13 de la placa. Vamos a ver que hay que hacer para subir el programa a la placa Arduino. Primero comprobamos que el cdigo fuente es el correcto. Para ello pulsamos el botn de verificacin de cdigo que tiene forma de tringulo inclinado 90 . Si todo va bien deber aparecer un mensajeen la parte inferior de la interfaz indicando Done compilion. Una vez que el cdigo ha sido verificado procederemos a cargarlo en la placa. Para ello tenemos que pulsar el botn de reset de la placa e inmediatamente despus pulsar el botn que inicia la carga.Durante la carga del programa, en la placa USB, se encendern los LED que indican que se estn enviando y recibiendo informacin por el puerto serie TX/RX. Si todo se ha realizado correctamente debe aparecer el mensaje Done unploading. Ahora tan solo queda esperar unos 8 segundos aproximadamente para comprobar que todo has salido bien. Si el led colocado en el pin 13 de la placa se enciende y se apaga cada segundo entonces todo ha ido bien.

4. Cules son las diferentes partes y para que funcionan?Existen mltiples variantes del Arduino. En este caso, usaremos el Arduino UNO que es el ms comn.

Potencia - USB (1) / Conector de Adaptador (2): Cada placa Arduino necesita una forma de estar alimentado elctricamente. Esta puede ser alimentada desde un cable USB que viene de su ordenador o un cable de corriente elctrica con su respectivo adaptador. La conexin USB es tambin cmo va a cargar cdigo en su placa Arduino. Pines (5V, 3.3V, GND, Analog, Digital, PWM, AREF): Los pines en la placa Arduino es donde se conectan los cables de un circuito. El Arduino tiene varios tipos diferentes de entradas, cada uno de las cuales est marcado en el tablero y utilizan para diferentes funciones. GND (3): Abreviatura de "tierra" (en Ingles). Hay varios pines GND en el Arduino, cualquiera de los cuales pueden ser utilizados para conectar a tierra el circuito. 5V (4) y 3.3V (5): Son los suministros pin 5V 5 voltios de energa, y los suministros de pin 3.3V 3.3 voltios de potencia. Analgico (6): El rea de pines en el marco del 'analgica' etiqueta (A0 a A5) son analgicas. Estos pines pueden leer la seal de un sensor analgico (como un sensor de temperatura) y convertirlo en un valor digital que podemos leer. Digital (7): Son los pines digitales (del 0 al 13). Estos pines se pueden utilizar tanto para la entrada digital (como decir, si se oprime un botn) y salida digital (como encender un LED). PWM (8): Usted puede haber notado la tilde (~) al lado de algunos de los pines digitales (3, 5, 6, 9, 10 y 11). Estos pines actan como pines digitales normales, pero tambin se pueden usar para algo llamado Modulacin por ancho de pulsos (PWM, por sus siglas en Ingles). AREF (9): Soportes de referencia analgica. La mayora de las veces se puede dejar este pin solo. A veces se utiliza para establecer una tensin de referencia externa (entre 0 y 5 voltios) como el lmite superior para los pines de entrada analgica. Botn de reinicio (10): Empujando este botn se conectar temporalmente el pin de reset a tierra y reinicie cualquier cdigo que se carga en el Arduino. Esto puede ser muy til si el cdigo no se repite, pero quiere probarlo varias veces. Indicador LED de alimentacin (11): Este LED debe encenderse cada vez que conecte la placa Arduino a una toma elctrica. Si esta luz no se enciende, hay una buena probabilidad de que algo anda mal. LEDs RX TX (12): TX es la abreviatura de transmisin, RX es la abreviatura de recibir. Estas marcas aparecen un poco en la electrnica para indicar los pasadores responsables de la comunicacin en serie. En nuestro caso, hay dos lugares en la Arduino UNO donde aparecen TX y RX - una vez por pines digitales 0 y 1, y por segunda vez junto a los indicadores LED de TX y RX (12). Estos LEDs nos darn algunas buenas indicaciones visuales siempre nuestro Arduino est recibiendo o transmitiendo datos (como cuando nos estamos cargando un nuevo programa en el tablero). Microcontrolador (13): Lo negro con todas las patas de metal es un circuito integrado (IC, por sus siglas en Ingles). Piense en ello como el cerebro de nuestro Arduino. La principal IC en el Arduino es ligeramente diferente del tipo de placa a placa tipo, pero es por lo general de la lnea de ATmega de CI de la empresa ATMEL. Esto puede ser importante, ya que puede necesitar para saber el tipo de IC (junto con su tipo de tarjeta) antes de cargar un nuevo programa desde el software de Arduino. Esta informacin se puede encontrar en la escritura en la parte superior de la IC. Si quieres saber ms acerca de la diferencia entre diversos circuitos integrados, la lectura de las hojas de datos suele ser una buena idea. Regulador de Voltaje (14): Esto no es realmente algo que se puede (o debe) interactuar con el Arduino. Pero es potencialmente til para saber que est ah y para qu sirve. El regulador de voltaje hace exactamente lo que dice - que controla la cantidad de tensin que se deja en la placa Arduino. Piense en ello como una especie de guardin; se dar la espalda a una tensin adicional que podra daar el circuito. Por supuesto, tiene sus lmites, por lo que no conecta tu Arduino a nada superior a 20 voltios.

5. Cules son las funciones bsicas de un Arduino?

E/S DigitalespinMode (pin,modo)Configura el pin especificado para comportarse como una entrada (INPUT) o una salida (OUTPUT).Ejm: pinMode(Pin13, OUTPUT)

digitalWrite(pin,valor)Asigna el valor HIGH (5V) o LOW (0V) a un pin digital.Ejm: digitalWrite(Pin13 , HIGH);

digitalRead(pin)Lee el valor de un pin digital especificado, HIGH o LOW.Ejm: val = digitalRead(Pin13);

E/S AnalgicasanalogRead(pin)Lee el valor de tensin en el pin analgico especificado. La placa Arduino posee 6 canales conectados a un conversor analgico digital de 10 bits. Esto significa que convertir tensiones entre 0 y 5 voltios a un nmero entero entre 0 y 1023. Esto proporciona una resolucin en la lectura de: 5 voltios / 1024 unidades, es decir, 0.0049 voltios (4.9mV) por unidad. El rango de entrada puede ser cambiado usando la funcin analogReference().Ejm: val = analogRead(Pin3)

analogWrite(pin,valor)Escribe un valor analgico (PWM) en un pin. Puede ser usado para controlar la luminosidad de un LED o la velocidad de un motor. Despus de llamar a la funcin analogWrite(), el pin generar una onda cuadrada estable con el ciclo de trabajo especificado hasta que se vuelva a llamar a la funcin analogWrite() (o una llamada a las funciones digitalRead() o digitalWrite() en el mismo pin). La frecuencia de la seal PWM ser de aproximadamente 490 Hz. los valores de analogRead van desde 0 a 1023 y los valores de analogWrite van desde 0 a 255

Parmetros: pin: Es el pin en el cual se quiere generar la seal PWM. valor: El ciclo de trabajo deseado comprendido entre 0 (siempre apagado) y 255 (siempre encendido).Ejm: val = analogRead(analogPin); analogWrite(ledPin, val / 4);

Comunicacin SerieSe utiliza para la comunicacin entre la placa Arduino y un ordenador u otros dispositivos. Todas las placas Arduino tienen al menos un puerto serie Serial. Se comunica a travs de los pines digitales 0 (RX) y 1 (TX), as como con el ordenador mediante USB. Por lo tanto, si utilizas estas funciones, no puedes usar los pines 0 y 1 como entrada o salida digital.Puedes utilizar el monitor del puerto serie incorporado en el entorno Arduino para comunicarte con la placa Arduino. Haz clic en el botn del monitor de puerto serie en la barra de herramientas y selecciona la misma velocidad en baudios utilizada en la llamada a begin().

Serial.begin(speed)Establece la velocidad de datos en bits por segundo (baudios) para la transmisin de datos en serie. Para comunicarse con el ordenador, utilice una de estas velocidades: 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 o 115200.Ejm: Serial.begin(9600);

Serial.read()Lee los datos entrantes del puerto serie.Ejm; Byte = Serial.read();

Serial.print(val,[format])Imprime los datos al puerto serie como texto ASCII. val: el valor a imprimir - de cualquier tipo format: especifica la base (formato) a usar; los valores permitidos son BYTE, BIN (binarios o base 2), OCT (octales o base 8), DEC (decimales o base 10), HEX (hexadecimales o base 16). Para nmeros de coma flotante, este parmetro especifica el nmero de posiciones decimales a usar. Ejm: Serial.print(78) imprime "78" Serial.print('N') imprime "N" Serial.print(78, BYTE) imprime "N" Serial.print(78, DEC) imprime "78Serial.println(1.23456, 0) imprime "1.23 Serial.println(1.23456, 2) imprime "1.23"

Serial.println(val,[format])Imprime los datos al puerto serie como texto ASCII seguido de un retorno de carro (ASCII 13, o '\r') y un carcter de avance de lnea (ASCII 10, o '\n').Ejm: Serial.println(analogValue); // imprime como ASCII decimal Serial.println(analogValue, HEX);// imprime como ASCII Hexadecimal

Serial.available()Devuelve el nmero de bytes (caracteres) disponibles para ser ledos por el puerto serie. Se refiere a datos ya recibidos y disponibles en el buffer de recepcin del puerto (que tiene una capacidad de 128 bytes).if (Serial.available() > 0) {//realiza la lectura del puerto serie }

Infografa http://www.instructables.com/id/Arduino-Tutorial-0-Introducci%C3%B3n/step3/Qu%C3%A9-partes-componen-el-Arduino/ http://www.uca.es/recursos/doc/Unidades/Unidad_Innovacion/Innovacion_Docente/ANEXOS_2011_2012/22232441_310201212102.pdf http://rua.ua.es/dspace/bitstream/10045/11833/1/arduino.pdf