presentación taller introducción a la robótica

51

Upload: activo-20

Post on 12-Jun-2015

173 views

Category:

Education


0 download

DESCRIPTION

Presentación Taller Introducción a la robótica

TRANSCRIPT

Page 1: Presentación Taller Introducción a la robótica

Taller de Introducción a laRobótica

Docentes:Airaldi, Guillermo - De Los Campos, Pablo

Taller 1

Colegio Santa MaríaHermanos Maristas

13 de Agosto de 2014

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 1 / 34

Page 2: Presentación Taller Introducción a la robótica

Esquema de la presentación

1 Introducción

2 HARDWARE

3 SOFTWARE

4 Ejercicios

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 2 / 34

Page 3: Presentación Taller Introducción a la robótica

Esquema de la presentación

1 Introducción

2 HARDWARE

3 SOFTWARE

4 Ejercicios

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 3 / 34

Page 4: Presentación Taller Introducción a la robótica

¾Qué es ARDUINO?

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 4 / 34

Page 5: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 6: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 7: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 8: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 9: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 10: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 11: Presentación Taller Introducción a la robótica

Microcontrolador: ¾Para qué sirve?

Algunas aplicaciones:

? Robótica.

? Control de un invernadero.

? Automatización y control.

? Control de un proceso industrial (temperatura, pH, humedad, etc.).

? Sintetizador de sonidos.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 5 / 34

Page 12: Presentación Taller Introducción a la robótica

ARDUINO UNO

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 6 / 34

Page 13: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 14: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 15: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 16: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 17: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 18: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 19: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 20: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 21: Presentación Taller Introducción a la robótica

Electrónica Libre

Basada en SOFTWARE / HARDWARE libre.

Permite:

? Estudiar el HW para entender como funciona.

? Hacer modi�caciones.

? Dar a conocer dichas modi�caciones a la comunidad.

Consecuencias:

? Comunidad activa de usuarios y desarrolladores (foros, ejemplos,tutoriales, etc.).

? SW y HW para autoconstruir (replicar).

? Precios bajos.

? Mucho material en la web con diversos proyectos interesantes que sepueden realizar.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 7 / 34

Page 22: Presentación Taller Introducción a la robótica

Sitio web o�cial: http://www.arduino.cc/

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 8 / 34

Page 23: Presentación Taller Introducción a la robótica

Sitio web o�cial: http://www.arduino.cc/

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 9 / 34

Page 24: Presentación Taller Introducción a la robótica

Esquema de la presentación

1 Introducción

2 HARDWARE

3 SOFTWARE

4 Ejercicios

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 10 / 34

Page 25: Presentación Taller Introducción a la robótica

Características

Microcontrolador ATmega328 (8 bits).

Alimentación via USB (5V ) o independiente (7− 12V ).

14 pines de entrada/salida (I/O) digitales (6 con Pulse WidthModulation -PWM-).

Corriente máxima por pin I/O: 40mA.

6 pines de entrada analógica.

Permite comunicación serial.

Memoria �ash: 32Kb.

Frecuencia de reloj: 16MHz .

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 11 / 34

Page 26: Presentación Taller Introducción a la robótica

Placa

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 12 / 34

Page 27: Presentación Taller Introducción a la robótica

Esquema de la presentación

1 Introducción

2 HARDWARE

3 SOFTWARE

4 Ejercicios

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 13 / 34

Page 28: Presentación Taller Introducción a la robótica

Lenguaje de programación

Basado en Wiring y similar a C++.

Sketches = Código fuente.

Lenguaje compilado.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 14 / 34

Page 29: Presentación Taller Introducción a la robótica

Entorno de desarrollo: Arduino IDE

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 15 / 34

Page 30: Presentación Taller Introducción a la robótica

PROCESO: Código fuente

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 16 / 34

Page 31: Presentación Taller Introducción a la robótica

PROCESO: Código fuente �> Compilación (�verify�)

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 17 / 34

Page 32: Presentación Taller Introducción a la robótica

PROCESO: Código fuente �> Compilación (�verify�) �>Programarlo en la placa (�upload�)

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 18 / 34

Page 33: Presentación Taller Introducción a la robótica

Estructura de un archivo

declaración de variables;void setup(){

seteo de pines;inicialización de la comunicación serial;}void loop(){

lo que voy a hacer todo el tiempo;}

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 19 / 34

Page 34: Presentación Taller Introducción a la robótica

VARIABLES: De�nición

int nombreVariable1 = 0;�oat nombreVariable2 = 1.24;int nombrearray[] = {valor0, valor1, valor2, ...};int nombreArray2[5];

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 20 / 34

Page 35: Presentación Taller Introducción a la robótica

½NO olvidar �;� al �nal de cada sentencia!

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 21 / 34

Page 36: Presentación Taller Introducción a la robótica

VARIABLES: Tipos

byte: Enteros (1 byte) : -128 a 127

int: Enteros (2 bytes) : -32768 a 32767

long: Enteros (4 bytes)

�oat, double: Números en punto �otante (4 bytes)

boolean: verdadero (TRUE) o falso (FALSE)

char: un solo caracter

String: lista de caracteres

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 22 / 34

Page 37: Presentación Taller Introducción a la robótica

COMENTARIOS

/* Éste esun bloque decomentarios*/

// Éste es un comentario de línea

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 23 / 34

Page 38: Presentación Taller Introducción a la robótica

½NO olvidar de comentar todo lo que se programa!

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 24 / 34

Page 39: Presentación Taller Introducción a la robótica

COMPARACIÓN

A == B : A igual a B.

A != B : A distinto de B.

A < B : A menor que B.

A <= B : A menor o igual a B.

A > B : A mayor a B.

A >= B : A mayor igual a B.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 25 / 34

Page 40: Presentación Taller Introducción a la robótica

OPERADORES LÓGICOS

A && B : A AND B.

A ‖ B : A OR B.

!A : NOT A.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 26 / 34

Page 41: Presentación Taller Introducción a la robótica

CONTROL DE FLUJO: if

if (condición) {hacer algo;

}

if (condición) {hacer algo;

} else {hacer otra cosa;

}//Ejemplo:if (a == 0) {

b = 1;} else {

b = 0}

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 27 / 34

Page 42: Presentación Taller Introducción a la robótica

CONTROL DE FLUJO: if

if (condición) {hacer algo;

}

if (condición) {hacer algo;

} else {hacer otra cosa;

}//Ejemplo:if (a == 0) {

b = 1;} else {

b = 0}

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 27 / 34

Page 43: Presentación Taller Introducción a la robótica

CONTROL DE FLUJO: if

if (condición) {hacer algo;

}

if (condición) {hacer algo;

} else {hacer otra cosa;

}//Ejemplo:if (a == 0) {

b = 1;} else {

b = 0}

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 27 / 34

Page 44: Presentación Taller Introducción a la robótica

CONTROL DE FLUJO: if

if (condición) {hacer algo;

}

if (condición) {hacer algo;

} else {hacer otra cosa;

}//Ejemplo:if (a == 0) {

b = 1;} else {

b = 0}

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 27 / 34

Page 45: Presentación Taller Introducción a la robótica

Pines digitales (pin 0 a 13): ¾Cómo se manejan?

Pueden tomar solo 2 valores (excepto los PWM): 0V (LOW) o 5V (HIGH).

int pinEntrada = 10;int pinEntrada = 13;int llave = 0;void setup() {

pinMode(pinEntrada, INPUT);pinMode(pinEntrada, OUTPUT);

}void loop() {

llave = digitalRead(pinentrada); lee el valor del pin 10.if (llave == LOW) {

digitalWrite(pinSalida, HIGH); pone el pin 13 a +5V .} else {

digitalWrite(pinSalida, LOW); pone el pin 13 a +0V .}

}(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 28 / 34

Page 46: Presentación Taller Introducción a la robótica

Esquema de la presentación

1 Introducción

2 HARDWARE

3 SOFTWARE

4 Ejercicios

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 29 / 34

Page 47: Presentación Taller Introducción a la robótica

Manos a la obra...

Tarea 1: �El HOLA MUNDO de la robótica�

Se debe escribir un programa que apague y prenda un LED cada 1 segundo.Nota: Ir a la web o�cial de Arduino para conocer la función delay(x).1) Solo usando PC y Arduino (pin 13).2) Usando los siguientes materiales -antes de comenzar se verá comorealizar las conexiones entre los distintos componentes-.

PC

Arduino

Protoboard

Resistencia

Led

Cables

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 30 / 34

Page 48: Presentación Taller Introducción a la robótica

Esquemático: Tarea 1.2

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 31 / 34

Page 49: Presentación Taller Introducción a la robótica

Manos a la obra...

Tarea 2: Semáforo

Análogamente se deberá modi�car el programa de la tarea 1 para realizarun semáforo. Se impondrá una duración de 6 segundos en ROJO, 6segundo en VERDE y 2 segundos en AMARILLO. Pero si la entrada 5 (pin5) se encuentra a +5V el semáforo debe quedar fuera de servicio(AMARILLO prendiendo y apagando cada 3 segundos).

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 32 / 34

Page 50: Presentación Taller Introducción a la robótica

Tarea Domiciliaria

Investigar sobre el manejo de las entradas analógicas (pines analógicos) ysobre las salidas PWM en ARDUINO.

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 33 / 34

Page 51: Presentación Taller Introducción a la robótica

Referencias

Web o�cial de Arduino.

Fritzing.org

TallerInE - IIE - FING - UdelaR

(CSM-HHMM) Taller de Introducción a la Robótica 13 de Agosto de 2014 34 / 34