Práctica 2. Metodología de diseño con Arduino

Documentos relacionados
Electrónica Industrial

Programación de Arduino

IM : ARDUINO NANO OEM

1. INTRODUCCIÓN 1.1. ARDUINO, QUÉ ES? 1.2. HARDWARE.

OKY2002: Arduino Uno Genérico

Ardunio. Test Placa. LunikSoft. Fco. Javier Andrade.

CARGANDO EL PRIMER PROGRAMA EN ARDUINO OBJETIVOS MATERIAL NECESARIO


Cuál Arduino comprar?

Electrónica para crear con Arduino

Empezando con Arduino. Controla tu entorno con un microcontrolador PIIISA

Iniciación al IDE de Arduino y primer ejercicio

Práctica 1. Introducción al laboratorio de electrónica

DEPARTAMENTO DE CIENCIAS DE LA ENERGIA Y MECANICA Laboratorio de Automatización Industrial Mecánica. TEMA: Control de procesos con Arduino.

Dispositivos de Entrada/Salida

TECNOLOGICO NACIONAL DE MÉXICO. Materia: Instrumentación Virtual

La plataforma Arduino y su programación en entornos gráficos

Introducción a Arduino

Guía de Usuario Iraduino

Por qué no puedes conectar un motor directamente a Arduino. Cómo funciona un Transistor NPN? Material. Circuito

Qué es y por qué usarlo

Investigación y Desarrollos en Open Hardware

La plataforma Arduino

MANUAL DE USUARIO Arduino Relay Shield MCI-MA-0064 REV. 1.0

Arduino Aprender a desarrollar para crear objetos inteligentes

Se tomaron en cuenta tres marcas fabricantes para este módulo:

IM : PLACA OEM DUE COMPATIBLE CON ARDUINO

Taller de Hardware Libre con Arduino

QUÉ ES EL OPEN SOURCE?

Recursos en SYMBHIA: Empaquetado CSG225. Convertidor USB-RS /576 Kb de Block RAM

Taller Introducción a la Ingeniería Eléctrica Robot y comunicaciones basado en Microcontrolador Arduino

Ingeniería en Mecatrónica

ESPino - Especificaciones

OBJETIVOS QUÉ VAMOS A REALIZAR? CONOCIMIENTOS PREVIOS

PRÁCTICA NÚMERO 3: ENCENDIDO DE UN LED MEDIANTE EL USO DE LA PLATAFORMA CAYENNE

Instituto Tecnológico de Colima

Taller de Arduino Arduino UNO Rev 3. Arduino Leonardo

El ladrillo llamado R8+ es el cerebro del kit robó co. Tiene conectores laterales para motores y sensores.

INTRODUCCIÓN A LA PROGRAMACIÓN ENGINEERING KICKSTART

Las 7 claves de Arduino UNO

Introducción a Arduino. Electrónica para todos.

BLOG. Tutorial Arduino: Introducción

El hardware libre y el Internet de las cosas

ARDUINO El proyecto Arduino: Recordando - Pines de entrada - Pines de salida - Microcontrolador - Conexión USB - IDE de arduino

Tecnología robótica. Tema 7.- Tarjeta controladora Arduino

Comunicación Serial Arduino UNO vs Leonardo

Technology GOBLIN 2 / MANUAL

Guía de Usuario Convertidor USB-Serial v2

Introducción Arduino TPR 3º ESO

Instalación y entorno de programación

INSTITUTO TECNOLÓGICO METROPOLITANO ITM GUÍA DE LABORATORIO INSTRUMENTACIÓN ELECTRÓNICA INTERFAZ ARDUINO - LABVIEW

ARDUINO GUÍA PRÁCTICA. Byron O. Ganazhapa

Arduino. Eduardo Sacristán Ruiz-Funes

TPR 3ºESO. Departamento de Tecnología. IES Nuestra Señora de la Almudena Mª Jesús Saiz TEMA 5: ROBÓTICA

CYBERTECH 2018 TALLER 03: MOTORES Y POTENCIA

Arduino, una familia de placas y software que comparten nombre. Semana del software libre 2016


# CÓDIGODE ACCESO. Manual para aprender a programar con hardware

1 Microprocesadores: Introducción

3 Sensores y transductores. Alfaomega. Material Web. Arduino 2. Electrónica en arquitectura abierta 7

Programación Arduino Con Visualino

El Microcontrolador Arduino

PRESENTA INTRODUCCIÓN A ARDUINO

TPR 3ºESO. Departamento de Tecnología. IES Nuestra Señora de la Almudena Mª Jesús Saiz TEMA 6: ROBÓTICA

Gracias a su puerto RS485, está recomendado para aplicaciones distribuidas como domótica, conexión con PLCs industriales, control, etc.

INTRODUCCIÓN A ARDUINO

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

TICA EN LA ESCUELA. El Robot (hardware) Alicia Escudero. Apellido y Nombre: Escudero Alicia. Tema: características de un robot

IMPLEMENTACIÓN DE LAS NTIC S EN LOS LABORATORIOS DE CIENCIAS NATURALES MEDIANTE EL USO DE LA PLATAFORMA ARDUINO- PHYSICSSENSOR

Aprende a construir y programar un robot interactivo utilizando los componentes del Maker Control Kit y el Maker Kit 3.

TALLER ARDUINO BÁSICO

MEDIDOR DE TEMPERATURA

AR 1 T. Tutorial 1. Introducción a Arduino Controlando un LED.

Sesión 12: Practica 3: Creación de prototipo básico de Arduino.

MANUAL DE USUARIO Como utilizar un servo motor con Arduino REV. 1.0

DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA CARRERA DE INGENIERÍA ELECTRÓNICA E INSTRUMENTACIÓN

DISEÑO DE APLICACIONES ELECTRÓNICAS EN ARDUINO. Curso teórico-práctico, básico, de diseño de aplicaciones electrónicas en Arduino.

CONCEPTOS BÁSICOS DE MICRO CONTROLADORES: CONOCIENDO A ARDUINO

Arduino I. José Manuel Ruiz Gutiérrez

Clase 2: Programación

Tecnológico Nacional de México

Bienvenido! Le deseamos mucha diversión!

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

Práctica 4. Entradas/Salidas Analógicas con Arduino

OBJETIVOS QUÉ VAMOS A REALIZAR? CONOCIMIENTOS PREVIOS

Programación de dispositivos Arduino Asignatura Sistemas Digitales!

Tarjeta Desarrollo dspic. Bogobots ITEM-CEM

TuBot 2014 GUIA DE MONTAJE Y PROGRAMACIÓN SENSORES. Dpto. de Electrónica - Universidad de Alcalá TuBot

Taller de Introducción a la Ingeniería Eléctrica Instituto de Ingeniería Eléctrica - Facultad de Ingeniería Universidad de la Republica

Curso de Automatización y Robótica Aplicada con Arduino

GreenCore Solutions SRL

Introducción a Arduino

Introducción a Arduino

GUÍA DEL CURSO DE INICIACIÓN A ARDUINO KIT DE ARDUINO DE LA XUNTA DE GALICIA

QUÉ ES MBOT? Conectores RJ25

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

Este documento presenta las ventajas de la tarjeta de evaluación DRAGONFRUIT con respecto a la tarjeta de evaluación Arduino/Genuino UNO

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

G O B L I N 2 / M A N U A L

Transcripción:

Práctica 2. con Arduino Manuel Jiménez Buendía José Alfonso Vera Repullo Departamento de Tecnología Electrónica Curso 2013/2014

Material necesario ARDUINO UNO REV.3. Precio aprox.: 20.00 Cable USB tipo impresora. Arduino Sidekick Basic Kit (KIT2243P). Precio aprox: 20.00 Electrónica Industrial 2

Microcontroladores Un microcontrolador (μc) es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria, y que dispone de los tres elementos básicos de una microcomputadora: un procesador, memoria e interfaces. Existe una amplia variedad de microcontroladores con muy diferentes prestaciones (velocidad de reloj, consumo de energía, tamaño de los datos, interfaces, etc.) Los microcontroladores se utilizan para reducir el tamaño, costo económico y el consumo de energía de un sistema en particular. Por eso el tamaño de la unidad central de procesamiento, la cantidad de memoria y los periféricos incluidos dependerán de la aplicación. Ventajas de los microcontroladores : Bajo coste. Versatilidad. Desarrollo más rápido. Facilidad de programación Tamaño muy reducido. Electrónica Industrial 3

Conceptos generales Electrónica Industrial 4

Aplicaciones Los microcontroladores se utilizan en un amplio rango de aplicaciones. Algunas de estas pueden ser: Electrodomésticos => Panel de control de un horno microondas. Equipos de sonido => Reproductor musical y/o vídeo (MP3 y/o MP4). Vehículos (Automóviles, camiones y aviones) => Control de velocidad de crucero, antibloqueo de frenos, control de encendido, entrada automática, control ambiental y flujo de aire y de combustible, etc... Juguetes => Sistema de control de un perro robot. Equipos de oficina => Control de una máquina de Fax. Los microcontroladores suponen más de un 50% de los Circuitos Integrados existentes hoy en día. Mientras se pueden tener uno o dos microprocesadores de propósito general en casa (por ejemplo en los ordenadores personales), se pueden encontrar una o dos docenas de microcontroladores distribuidos entre los diferentes dispositivos existentes en un hogar cualquiera. Los μc se pueden encontrar en casi cualquier dispositivo electrónico como automóviles, lavadoras, frigoríficos, hornos microondas, teléfonos, mandos inalámbricos, teclados, juguetes, etc. Electrónica Industrial 5

Fabricantes Empresa 8 bits 16 bits 32 bits Atmel X X Freescale X X X Holtek X Intel X X X National Semiconductor X X X Microchip X X X NXP Semiconductor X X X Renesa X X X STMicroelectronics X Texas Instruments X X Zilog X Electrónica Industrial 6

Conexiones básicas de un μc Fuente de alimentación de 5 V DC Circuito de RESET Oscilador Electrónica Industrial Fuente: http://www.mikroe.com/ 7

Arduino Electrónica Industrial 8

Conceptos generales Arduino Arduino es una plataforma de diseño de objetos interactivos (Physical Computing o Physical Interaction Design) que integra una tarjeta microcontroladora open-source, un entorno de desarrollo de software basado en el lenguaje de programación Processing y una amplia comunidad de usuarios. En resumen, Arduino se utiliza para desarrollar objetos y entornos interactivos (internet de las cosas) que tienen que ver con la creación de obras de arte, diseño de mecatrónica (para consumo e industrial) y proyectos DIY (Do It Yourself) para aficionados. Los objetos pueden ser autónomos (stand-alone) o pueden comunicarse con cualquier software a través de puerto serie (p.e. Flash, Processing, MaxMSP,.), bien por cable o por Xbee, ZigBit, etc. Las tarjetas microcontroladoras pueden ser construidas por el usuario final o pueden comprarse ya fabricadas. El entorno de desarrollo (IDE, Integrated Development Environment) puede ser descargado libremente desde arduino.cc Electrónica Industrial 9

Conceptos generales Qué lo diferencia de otros entornos? Es un entorno multiplataforma. Puede correr sobre Windows, Macintosh y Linux. El IDE de Arduino está basado en Processing, un entorno de desarrollo fácil de utilizar por artistas y diseñadores. Las tarjetas μc Arduino se pueden programar vía un cable USB, no un puerto serie. Tanto el hardware como el software es open-source. El usuario puede descargar los diagramas de los circuitos, comprar todos los componentes y fabricárselo el mismo, sin tener que pagar nada a los fabricantes de Arduino. El hardware es barato. Una tarjeta Arduino UNO cuesta unos 20. Y reemplazar un chip dañado en la tarjeta es fácil y barato (no cuesta más de 5 ). Hay una comunidad de usuarios muy activa con la que poder colaborar y recibir ayuda. Electrónica Industrial 10

Placas Arduino (I) Placas oficiales de Arduino Arduino Leonardo (2012) Arduino Mega 2560 (XXXX) Arduino Uno (XXXX) Arduino Mega (XXXX) Arduino Duemilanove (XXXX) Arduino Diecimila(XXXX) Arduino Bluetooth (XXXX) Arduino NG Rev.C (XXXX) Arduino NG (XXXX) Lily PAD Arduino (XXXX) Arduino Nano (XXXX) Arduino Mini (XXXX) Electrónica Industrial Consultar para una lista completa http://en.wikipedia.org/wiki/list_of_arduino_compatibles 11

Placas Arduino (II) Shields: Arquitectura modular inteligente Arduino. Ethernet Shield. GSM Shield. Las Shields son placas que a modo de accesorio se pueden conectar a una placa Arduino o compatible. Para ello los pines de sus puertos guardan una disposición de compatibilidad. Existe una gran variedad de shields con diversa funcionalidad: control de motores, comunicaciones, prototipado rápido, etc. Electrónica Industrial Una lista completa Shields se puede encontrar en: http://shieldlist.org/ 12

Placa Arduino Uno (I) Características principales del Arduino Uno Rev. 3 ATmega 328P-PU 32 KB de memoria de programa FLASH 2 KB de RAM 16 MHz de velocidad de reloj Entradas / Salidas 14 pines de entradas/salidas 6 pines de entradas analógicas (también salidas) Total: 20 entradas/salidas Completamente autónomo (stand-alone) una vez programado. Electrónica Industrial Fuente: http://arduino.cc/en/main/arduinoboarduno 13

Placa Arduino Uno (II) Alimentación y POWER Puerto USB Alimentación 5 V Jack Alimentación externa: Recomndado: 7-12 V Límites: 6-20 V 3.3V 3,3 voltios 5V 5 voltios GND 0 voltios Vin Alimentación externa de entrada sin regular Electrónica Industrial Fuente: http://arduino.cc/en/main/arduinoboarduno 14

Placa Arduino Uno (III) Entradas / Salidas AREF Voltaje de referencia para entradas analógicas 14 pines de E/S digitales. 2,4,7,8,12,13 = puertos digitales convencionales 3,5,6,9,10,11 = puertos PWM Puertos analógicos. A4, A5 = son utilizadas para conexiones I2C/TWI A0-A5 = pueden funcionar como puertos digitales (14-19) Electrónica Industrial Fuente: http://arduino.cc/en/main/arduinoboarduno 15

Placa Arduino Uno (IV) Comunicaciones Puerto serie RX/TX. ICSP. (In-Circuit Serial Programming) Para cargar el gestor de arranque (bootloader) o programas/firmware. Puerto USB y FTDI chipset Electrónica Industrial Fuente: http://arduino.cc/en/main/arduinoboarduno 16

Placa Arduino Uno (V) Otras características Botón de RESET LEDs de test, TX y RX LED de encendido Reloj a 16/20 MHz Microcontrolador Atmega328 Electrónica Industrial Fuente: http://arduino.cc/en/main/arduinoboarduno 17

Entradas/salidas de Arduino (I) Mapeado entre ATmega168/328 y Arduino Electrónica Industrial 18 Fuente: http://arduino.cc/en/hacking/pinmapping168

Entradas/salidas de Arduino (II) Puertos de entrada/salida digitales Trabajan con niveles de tensión TTL: 0-0,8 V = 0 2-5 V = 1 No se pueden conectar directamente a dispositivos que consuman potencia (Imax= 40 ma). Puertos analógicos Convertidor A/D de 10 bits: 0 a 1023. La tensión de referencia es 5 V. 0 V = 0 2,5 V = 215 5 V = 1023 Electrónica Industrial 19

Entradas/salidas de Arduino (III) Puertos PWM Es un puerto híbrido, ya que es un puerto digital que mediante la modulación de 0 y 1 consigue expresar una idea de potencia. Electrónica Industrial 20

Entradas/salidas de Arduino (IV) Cómo se trabaja en la práctica? Asignamos componentes a los puertos disponibles (digitales, analógicos y PWM). Realizamos lecturas y escrituras con el objeto de obtener un dato de un sensor o contralar un determinado actuador. Procesamos los datos en el μc. Veamos algunos ejemplos de componentes que podemos utilizar Electrónica Industrial 21

Entradas/salidas de Arduino (V) Algunos ejemplos de sensores y actuadores para Arduino Brújula Sensor de temperatura Medidor ultrasónico Sensor de presión GPS Pantalla táctil Controlador de motor Unidad GSM/GPRS Electrónica Industrial 22

Dónde comprar un Arduino? Tiendas Españolas www.cooking-hacks.com www.bricogeek.com www.ardumania.es www.electan.com Rayte Extranjeras www.parallax.com www.sparkfun.com www.makershed.com www.liquidware.com www.ladyada.net www.adafruit.com Se agradece cualquier información para tener actualizada esta lista Electrónica Industrial 23

El entorno de desarrollo Arduino (I) Cómo podemos empezar? Descargar la última versión del IDE (1.0.5). http://arduino.cc/en/main/software Sigue las instrucciones de http://arduino.cc/es/guide/homepage para la instalación en Windows (recomendable fichero instalable), Mac o Linux (descomprimir, instalar el driver, abrir el IDE y seleccionar el puerto correcto (Menú Herramientas Puerto Serial )). Conecta la placa Arduino a tu ordenador usando el cable USB. el LED verde indicador de la alimentación (nombrado como ON en la placa) debería quedar encendido a partir de ese momento. Haz doble clic sobre la aplicación Arduino o el acceso directo. Abre el programa de ejemplo para hacer parpadear un LED ("LED blink"): Abrir > Basics > Blink (pin 13 del microcontrolador). Compilamos el programa de ejemplo: Verificar Cargamos el código compilado en Arduino: Cargar Si todo funciona correctamente el LED de TEST debería parpadear Prueba a cambiar los tiempos de retardo y comprueba que la frecuencia de parpadeo varía Electrónica Industrial 24

El entorno de desarrollo Arduino (II) Versión 1.0.1 Menú Área de Programación Área de DEBUG Electrónica Industrial 25

El entorno de desarrollo Arduino (III) Versión 1.0.1 Verificar Chequea errores Cargar Compila y carga Nuevo Crea nuevos sketches Abrir Abre sketches existentes Guardar Graba Sketches Monitor Serial Abre el monitor serie Los programas desarrollados se conocen como sketches. Los sketches se escriben con un editor de texto y son guardados con la extensión.ino Electrónica Industrial 26

El lenguaje de programación (I) Conceptos generales. Se basa en C estándar. Para el control de los puertos del microcontrolador se utilizan las funciones predefinidas: pinmode(<puerto>,<modo>) // configura un puerto digital para leer o escribir datos digitalwrite(<puerto>,0 o 1) // envía un 0 o 1 al puerto digital digitalread(<puerto>) // devuelve un 0 o 1 del puerto analogread(<puerto>) // devuelve un valor (0-1023) del puerto analógico analogwrite(<puerto>,<valor>) //escribe en un puerto PWM un valor de 0 a 255 Referencia funciones sintaxis: http://arduino.cc/en/reference/homepage Electrónica Industrial 27

El lenguaje de programación (II) Estructura de un programa. Se tienen que programar obligatoriamente dos funciones: void setup() { // se ejecuta una sola vez, cuando se inicia el sketch } void loop() { // se ejecuta de modo continuo indefinidamente } Electrónica Industrial 28

Ejemplo: encendido/apagado LED (I) Código fuente. LED L (en placa conectado a pin 13) /* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinmode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalwrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalwrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } Electrónica Industrial 29

Ejemplo: encendido/apagado LED (II) Esquemático. Resistor 330 ohm (orange, orange, brown) Electrónica Industrial 30

Ejemplo: encendido/apagado LED (III) Esquemático. Resistor 330 ohm (orange, orange, brown) Electrónica Industrial 31

Ejemplo: encendido/apagado LED (IV) Montaje en protoboard. Electrónica Industrial 32

Ejemplo: encendido/apagado LED (V) Esquemático. Medir Polímetro: I en LED V en salida (Pin 13) Resistor 330 ohm (orange, orange, brown) Electrónica Industrial 33

Fritzing Esquemático, PCB, protoboard Multiplataforma http://fritzing.org/download/ http://sourceforge.net/projects/fritzing.mirror/?source=directory Virtual breadboard Sólo protoboard Windows (Linux/OSX sólo VBB express with Mono runtime) http://www.virtualbreadboard.com/ Electrónica Industrial 34

Ej.: on/off (fade) progresivo de un LED (I) Esquemático y código fuente. Pin 9 Habrá que utilizar: una salida PWM (3,5,6,9,20 o 11) analogwrite(<pin>,<valor>) Electrónica Industrial 35

Ej.: on/off (fade) progresivo de un LED (II) Esquemático y código fuente. /* Fade This example shows how to fade an LED on pin 9 using the analogwrite() function. This example code is in the public domain. */ Pin 9 int led = 9; // the pin that the LED is attached to int brightness = 0; // how bright the LED is int fadeamount = 5; // how many points to fade the LED by // the setup routine runs once when you press reset: void setup() { // declare pin 9 to be an output: pinmode(led, OUTPUT); } Habrá que utilizar: una salida PWM (3,5,6,9,20 o 11) analogwrite(<pin>,<valor>) // the loop routine runs over and over again forever: void loop() { // set the brightness of pin 9: analogwrite(led, brightness); // change the brightness for next time through the loop: brightness = brightness + fadeamount; // reverse the direction of the fading at the ends of the fade: if (brightness == 0 brightness == 255) { fadeamount = -fadeamount ; } // wait for 30 milliseconds to see the dimming effect delay(30); Electrónica Industrial } 36

Ej.: on/off (fade) progresivo de un LED (III) Esquemático y código fuente. Pin 9 Modificar código para menor velocidad Medir Polímetro: V en salida (Pin 9) Osciloscopio: V en salida (Pin 9) Habrá que utilizar: una salida PWM (3,5,6,9,20 o 11) analogwrite(<pin>,<valor>) Electrónica Industrial 37