Intro arduino

21
Aplicaciones en Tiempo Real UTN – FRLP Ing. Omar E. Rodriguez

Transcript of Intro arduino

Page 1: Intro arduino

Aplicaciones en Tiempo Real UTN – FRLP Ing. Omar E. Rodriguez

Page 2: Intro arduino

¿Qué es? Arduino es una plataforma de electrónica

abierta para la creación de prototipos basada en software y hardware flexibles y fáciles de usar. Se creó para artistas, diseñadores, aficionados y cualquiera interesado en crear entornos u objetos interactivos.

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 3: Intro arduino

Origen

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Nace en Italia – 2005

Hardware deriva de Wiring

IDE deriva de Processing

Page 4: Intro arduino

Wiring / Arduino

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 5: Intro arduino

IDE Arduino / Processing

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 6: Intro arduino

Arduino Boards

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 7: Intro arduino

Son placas que pueden ser conectadas encima de la placa Arduino extendiendo sus capacidades. 

- WIFI

- ETHERNET

- Motores DC

- Comunicación inalámbrica entre arduinos

Shields

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 8: Intro arduino

Arduino UNO

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Microcontroller ATmega328

Operating Voltage 5V

Input Voltage (recommended) 7-12V

Input Voltage (limits) 6-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

Page 9: Intro arduino

I/O Digitales

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Pines digitales permiten E/S señales

Modos: INPUT - OUTPUTEstados: HIGH - LOW

Ciertos pines permiten salidas PWM.

Page 10: Intro arduino

Salidas PWM

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

La Modulación por Ancho de Pulso (PWM = Pulse Width Modulation) es una técnica para simular una salida analógica con una salida digital.

El control digital se usa para crear una onda cuadrada, una señal que conmuta constantemente entre encendido y apagado.

Este patron de encendido-apagado puede simular voltajes entre 0 (siempre apagado) y 5 voltios (siempre encendido) simplemente variando la proporción de tiempo entre encendido y apagado. A la duración del tiempo de encendido (ON) se le llama Ancho de Pulso (pulse width)

Page 11: Intro arduino

Salidas PWM

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 12: Intro arduino

Entradas Analógicas

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Permite leer sensores analógicosTiene la misma funcionalidad GPIO

Conversor A/DResolución 10 bits

Page 13: Intro arduino

Ingresar a www.arduino.cc Descargar el IDE e instalarlo Conectar la placa a la PC vía USB Instalar los drivers de ser necesario Abrir el IDE arduino Seleccionar la Placa correcta Seleccionar el puerto serie … programar…

Como comenzar…

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 14: Intro arduino

IDE Arduino

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 15: Intro arduino

Estructura de un programa

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 16: Intro arduino

Lenguaje

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 17: Intro arduino

Configura el pin especificado para comportarse como una entrada o una salida. 

SintaxispinMode(pin, modo)

Parametrospin: el numero del pin que se desea configurarmodo: INPUT (Entrada) o OUTPUT (Salida)

PinMode

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 18: Intro arduino

Escribe un valor HIGH o LOW hacia un pin digital.Si el pin ha sido configurado como OUTPUT con pinMode(), su voltaje será establecido al correspondiente valor: 5V para HIGH, 0V (tierra) para LOW.

SintaxisdigitalWrite(pin, valor)

Parámetrospin: el número de pinValor: HIGH o LOW

DigitalWrite

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 19: Intro arduino

Lee el valor de un pin digital especificado, HIGH o LOW.

SintaxisdigitalRead(pin)

Parámetrospin: el número de pin digital que quieres leer (int)

DevuelveHIGH o LOW

DigitalRead

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 20: Intro arduino

Lee el valor del pin analógico especificado

SintaxisanalogRead (pin)

Parámetrospin: el número del pin de entrada analógica para leer (de 0 a 5 en la mayoría de las placas, 0-7 en el Mini y Nano, de 0 a 15 en el Mega)

Retornaint (0 a 1023)

AnalogRead

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real

Page 21: Intro arduino

Escribe un valor analógico (PWM) en un pin. Puede ser usado para controlar la luminosidad de un LED o la velocidad de un motor. Después de llamar a la función analogWrite(), el pin generará una onda cuadrada estable con el ciclo de trabajo especificado hasta que se vuelva a llamar a la función analogWrite() (o una llamada a las funciones digitalRead()o digitalWrite() en el mismo pin). La frecuencia de la señal PWM sera de aproximadamente 490 Hz.En la mayoría de las placas Arduino (aquellas con el ATmega168 o ATmega328), se podrá generar señales PWM en los pines 3, 5, 6, 9, 10, y 11. En la placa Arduino Mega, se puede llevar a cabo con los pines desde el 2 hasta el pin 13La función analogWrite no tienen ninguna relación con los pines de entrada analógicos ni con la función analogRead.

SintaxisanalogWrite(pin, valor)

Parámetrospin: Es el pin en el cual se quiere generar la señal PWM.valor: El ciclo de trabajo deseado comprendido entre 0 (siempre apagado) y 255 (siempre encendido).

AnalogWrite

Universidad Tecnológica Nacional – Facultad Regional La Plata Aplicaciones en Tiempo Real