S15A - Sistemas Embebidos - Arduino - Mecatronica

Post on 06-Dec-2015

36 views 6 download

description

Arduino

Transcript of S15A - Sistemas Embebidos - Arduino - Mecatronica

Copyright © junio de 2015 por TECSUP

Introducción a los sistemas

embebidos

Que son los sistemas embebidos?

• O empotrado es un sistema de computación diseñado

para realizar una o algunas pocas funciones dedicadas,

frecuentemente en un sistema de computación

Sistema de adquisición de datos

C A/D C D/A

Intel® Galileo Development Board

(Gen 2) - Arduino Certified - Gen 2

BeagleBone Black Rev C

Raspberry Pi 2 - Model B - ARMv7 with

1G RAM

ARDUINO – ATMEGA328

Atiny Familia

Introducción al Arduino

¿Qué es Arduino?

Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en hardware flexible y fácil de usar.

Imagen tomada de: http://arduino.cc.es/

Está Basado en una tarjeta con un microcontrolador que permite conectar sensores, actuadores y otros elementos mediante sus entradas y salidas, analógicas y digitales.

¿Qué es Arduino?

Al ser Open-Hardware, tanto su diseño, como su distribución es

libre. Es decir, puede utilizarse

libremente para el desarrollo de cualquier tipo de proyecto

sin necesidad de adquirir ninguna licencia.

¿Qué es Arduino?

¡ Es un dispositivo que conecta el

mundo físico con el mundo virtual!

¿Qué es Arduino?

¿Cómo surge Arduino?

• 2005 -> Instituto de Diseño interactivo Ivrea (Italia) •David Cuartielles y Massimo Banzi

• Problemas existentes •Limitación tecnológica

•Usuario no experto •Plataformas existentes complejas y cerradas

•Limitación económica •Solución

•Plataforma OpenSource

¿Para Quien?

• Diseñadores • Aficionados • Estudiantes • Artistas

¡¡ PARA TODOS !!

¿Qué distingue a Arduino?

• La filosofia OpenSource – Codigo Abierto- que lo sustenta • La comunidad formada a su alrededor • La sencillez del lenguaje de programación • El hardware de bajo costo

Tipos de tarjeta Arduino

Duemilanove

Nano

Mega

Uno

Leonardo

Mini

Lilypad

Tarjeta Arduino Uno

Características

Microcontrolador ATMega328

Funcionamiento 5V

Voltaje Entrada de voltaje (recomendado) 7-12V

Límites de voltaje 6-20V

Digital I / O Pins 14 (de los cuales 6 proporcionar una salida PWM)

6 pines de entrada analógica DC

Corriente de pines I / O 40 mA

Memoria Flash de 32 KB (ATMega328) de los cuales 0,5 KB utilizado por el gestor de arranque

SRAM 2KB (ATMega328)

EEPROM 1KB (ATMega328)

Velocidad del reloj de 16 MHz

Frecuencia del reloj : 16Mhz

Tarjeta Arduino Uno

Shields

Los Shields o tarjetas de expansión son módulos fabricados por terceros que se pueden apilar encima de la placa Arduino y le proporcionan una funcionalidad determinada. por ejemplo: • Conexiones inalambricas • Control de sensores y motores • Lectura y escritura en memorias

Un Shield es una placa que permite

expandir funcionalidades a Arduino.

Shields

Shields

Arduino Shields

Arduino Uno 1. Conector USB para el cable Tipo AB

2. Pulsador de Reset

3. Pines de E/S 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 16Mhz

11. Regulador de voltaje

12. Conector hembra 2.1mm con centro positivo

13. Pines de voltaje y tierra

14. Entradas análogas

Plataformas relacionadas • Processing • Entorno de desarrollo para proyectos multimedia e interactivos • Diseño digital y procesado

• Wiring • Basado en Processing • Programación uC para no expertos • Arduino se basa en Wiring

• Fritzing • Entorno visual • Creación esquemas electrónicos

Fritzing

• Fritzing es un software

para diseñar los montajes

en protoboard y a partir

de ello generar el

diagrama esquemático y

el PCB.

Vista Protoboard

Vista Esquema

Vista PCB

Como se programa Arduino

Arduino cuenta con un entorno de desarrollo nativo creado en Java, por lo que es multiplataforma.

El lenguaje que utiliza es propio de Arduino y está basado en C.

Programar en Arduino

• Estructuras

• Variables

• Operadores: matemáticos, lógicos y booleanos

• Estructuras de control: Condicionales y ciclos

• Funciones

Ejemplo de un programa

Requiere unas nociones básicas de programación

Como se programa Arduino

Este entorno (IDE) se descarga de la pagina oficial de Arduino según el sistema operativo. Link de descarga:

http://arduino.cc/es/Main/software

http://arduino.cc/en/Main/software

(Español)

(Ingles)

Entornos de programación gráfica

Son interfaces para programar de una forma sencilla y dinámica la plataforma Arduino.

Programación basada en bloques o cajas de funciones, que simbolizan diferentes elementos de programación, por ejemplo: Instrucciones, condiciones, variables, entre otros.

Ardublock, Modkit, Minibloq, S4A

Estos bloques de programación se van ensamblando hasta formar programas.

Ardublock, Modkit, Minibloq, S4A

Usos de Arduino

Control de movimiento de actuadores

Usos de Arduino

Control de luces

Usos de Arduino

Control a distancia y manipulacion de datos en forma remota

Proyectos

Proyectos

Proyectos

Proyectos

• SECUduino -> controladora bus CAN

• ArduPilot -> control avión no tripulado

• Robótica -> robot araña controlado por voz

• Robótica -> control cámara pan/tilt con mando Wii

• Seguridad -> control de acceso mediante leds

• IoT -> control del estado de una planta mediante tweets

Proyectos

SECUduino:

controladora de bus

CAN • SECUduino: controladora de bus CAN

Proyectos con Arduino

• ArduPilot: UAV controlado por Arduino

http://www.youtube.com/watch?v=IvR3QM0iTPw

Proyectos con Arduino

• Robot araña controlado por voz (Arduino+Processing)

http://www.youtube.com/watch?v=wj8f9xL9_Hw

Más información

Enlaces de Información

• http://www.arduino.cc/es/ • http://blog.bricogeek.com • http://www.arduteka.com/

Fin

MUCHAS GRACIAS