PRACTICAS CON ARDUINO

Documentos relacionados
LED INTERMITENTE CIRCUITO ELÉCTRICO MATERIALES PROGRAMA LED DOS CONECTORES CABLE USB ROBÓTICA. Puerto 8 ( salida al led rojo ) ARDUINO UNO 220 W GND

Empieza con // y termina con la siguiente línea de código. Son ignorados por el programa y no ocupan espacio en memoria.

CURSO: ROBÓTICA. CONECTANDO CON EL MUNDO FÍSICO

Taller Robótica Libre con Arduino Desarrollo del pensamiento computacional a través de la programación y la robótica. UIMP. Julio de 2017.

Entradas Analógicas.

APRENDE ARDUINO FACILMENTE CON MIRPAS.COM.

PROPUESTA ARDUINO por José Manuel Aranga Salazar

Primera práctica (blink): Hace parpadear un leda intervalos definidos.

CONTROL DE UN SERVOMOTOR

5.- ENTRADAS/SALIDAS DIGITALES

VISUALINO (Apuntes y Proyectos. Parte I)

1. Escribir un dato digital del WinCC al Arduino

Programación de dispositivos Arduino Asignatura Sistemas Digitales!

Bach. Pablo Sanabria Campos. Programa de Tecnologías Educativas Avanzadas

Control por Computador. Manual de arduino. Jorge Pomares Baeza. Grupo de Innovación Educativa en Automática 2009 GITE IEA

La plataforma Arduino

ENTRADAS Y SALIDAS DIGITALES USO DE VARIABLES Y TEMPORIZADORES

Encender un LED utilizando un pulsador (Ref libro 1 pg 82 pero como y pg 132 como 1.2.3)

EJERCICIOS CON ARDUINO LED ENCENDIDO. Se conecta el Led al pin 52 y a alimentación. Compilar Se enciende el LED.

Clase 2: Programación

Curso Robótica Práctica

CONTROL AUTOMÁTICO CON ARDUINO

ACTIVIDADES PROGRAMACIÓN CON ARDUINO

EL MICROCONTROLADOR ARDUINO

CURSO: ROBÓTICA. CONECTANDO CON EL MUNDO FÍSICO. ÍÑIGO MARTÍN MIMBELA.

PROYECTO DE ELECTRÓNICA

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

ACTIVIDADES PROGRAMACIÓN CON ARDUINO. Todas las actividades siguientes se harán con el entrenador.

QUÉ ES EL OPEN SOURCE?

Contenido Unidad de Robótica

Conceptos básicos de Arduino:

Movimiento de servos de rotación continua (Ref libro 1 pg 105)

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

Domótica con Arduino, WiFi y Android

Programa del curso de Arduino

CURSO: ROBÓTICA. CONECTANDO CON EL MUNDO FÍSICO

COMUNIDAD DE FORMADORES DEL EMPRENDIMIENTO TECNOLÓGICO FEMPRETEC

1. Qué es Arduino? 2. Modelos de Arduino 3. Primer programa: parpadeo de un LED

Proyecto : Control coche Arduino-Android

INTERRUPTOR CREPUSCULAR CON LDR Y ARDUINO OBJETIVOS MATERIAL NECESARIO

PRÁCTICAS DE ARDUINO / VISUALINO

Taller de electrónica para usos creativos. Practicando con Arduino

Programación con Arduino. Jornadas de Robótica 2016 Curso de Impresión 3D y Hardware libre

EJERCICIOS DE ARDUINO RESUELTOS

Sencillo proyecto consistente en un LED que parpadea continuamente. Para ello debemos conectar un LED al pin 13 de la tarjeta controladora.

PRÁCTICAS CON ARDUINO UNO

Construye y programa tu semáforo

1. Conocimientos previos.

Para comenzar realizaremos el ejercicio-ejemplo de poner a titilar un led.

Qué es y por qué usarlo

2. Programación en Arduino

Instituto Tecnológico de Colima

ElecFuse -- Dispositivo todo en uno ---

Práctica 3. Entradas/Salidas Digitales con Arduino

Características del sistema

EJERCICIOS DE ARDUINO RESUELTOS

PRÁCTICA NÚMERO 5: COMUNICACIÓN ENTRE DOS ARDUINOS CON RF

Control de LCD y sensor de temperatura

Puente H: cambio de giro y velocidad de motores DC.

Crear una app con MIT inventor

LABORATORIO DE ELECTRÓNICA DE POTENCIA PRÁCTICA N 1

Arduino. OPEN HARDWARE - David Cuartielles, Máximo Banti.

Módulo Radio frecuencia FSK y Arduino

PRACTICAS CON ARDUINO: Nivel 1

ACTIVIDADES DE SCRATCH PARA ARDUINO (S4A) 3º ESO TECNOLOGÍAS

Control de sistemas automáticos con Arduino. CTIF OESTE Noviembre de Víctor Gallego Le Forlot

4 Dispositivos de E/S

DFRduino Romeo, todo en un controlador (RoMeo V1.0) Por favor, lea atentamente este manual antes de encender el dispositivo.

CI 555 FUNCIONAMIENTO COMO ASTABLE

CONSTRUCCIÓN DE TIMER PARA VUELO CIRCULAR CON NANO ARDUINO

Controlar la luz (u otros inputs) con pulsos modulados PWM (Pulse Width Modulation): reguladores de intensidad.

Dynabot II es un kit diseñado para el aprendizaje de robótica móvil basado en arduino. Para qué sirve?

CONSTRUCCION DE TIMER PARA VUELO CIRCULAR CON MOTOR ELECTRICO

Lectura de pines analógicos

ABIERTO- ELECTRoNICA- PROTOTIPO- PLATAFORMA- QUE ES UN ARDUINO? ES UNA PLATAFORMA DE PROTOTIPADO ELECTRoNICA DE DISEnO ABIERTO. QUE SIGNIFICA ESTO?

Detección de luz con sensor LDR

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

Apuntes de ARDUINO Nivel Pardillo

CONTROL ELÉCTRICO CONTROL DE UN RECEPTOR DESDE DOS PUNTOS CIRCUITO INVERSOR DEL GIRO DE UN MOTOR

Practicas con el CD 4017

Introducción práctica la uso de la tarjeta Arduino. Prácticas Nivel I

Tema: Introducción a la Plataforma Arduino

TUTORIAL III V2 (PaP)

Introducción. Que es Arduino? 1. Por qué Arduino? 2. Asequible

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

AR 3 T. Tutorial 3: Voltajes analógicos y PMW, Potenciómetro + LED. Objetivo General.

Práctica de manejo de motores CC con arduino. Antonio Martínez

Introducción a Arduino

JOHNNY 5. Competencia de robótica ~2015~ Categoría: Laberinto. Nombre robot: Zim. Institución: Club de Robótica FIUBA

Curso Arduino Iniciativa Focus

Traductor Morse búcles, strings y arrays

Alarma GSM. 1. Componentes

Instalación y entorno de programación

Este manual aborda todos los conceptos básicos de Arduino y es una excelente guía para todo aquel que quiera iniciarse en este apasionante mundo.

COMO EMPEZAR... Proceso de conexión de la placa al ordenador:

Actuadores eléctricos - Motores

Escuela Secundaria Técnica 47 Juan de Dios Bátiz

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

MIDIENDO DISTANCIAS CON UN SENSOR DE ULTRASONIDOS

MANUAL DE FUNCIONAMIENTO

Transcripción:

PRACTICAS CON ARDUINO 1º DE BACHILLERATO PROYECTO INTEGRADO: TALLER DE ROBÓTICA

Materiales: Placa Protoboard Microcontroladora Arduino Cable de conexión 1 LED 1 resistencia 120 Ω Cables PRÁCTICA Nº 1: PARPADEO DE UN LED Objetivo Con esta práctica se pretende explicar al alumno el esquema de programación de la microcontroladora, el montaje de circuitos sencillos y la estructura de la placa Arduino, el programa es sencillo y consiste en hacer parpadear un LED con una frecuencia de 1 segundo El alumno debe aprender: 1. Definir variables int 2. Inicializar las variables de salida pinmode(variable,output); 3. Hacer bucles para que se repita la secuencia void loop() 4. Función para hacer que funcione el LED digitalwrite(variable,high); 5. Función para hacer que no funcione el LED digitalwrite(variable,low); 6. Función para mantener una variable en un estado durante un tiempo delay(tiempo en ms) Diagrama de flujo

Montaje Programa: /* Parpadeo: Enciende un LED un segundo, entonces se apaga 1 segundo y así sucesivamente. El LED está conectado al Pin 3 y lleva en serie una resistencia de protección cuyo valor podrá estar entre 120 Ω y 220 Ω. */ int ledpin = 3; // LED conectado a pin 3 void setup() { // inicializa el pin 3 como salida pinmode(ledpin, OUTPUT); // ahora hacemos un bucle void loop() { digitalwrite(ledpin, HIGH); // enciende el LED delay(1000); // espera un segundo digitalwrite(ledpin, LOW); // apaga el LED delay(1000); // espera un segundo Actividades: 1. Con el mismo montaje varia el tiempo de encendido y apagado del LED, ahora debe ser de 2 segundos 2. Con el mismo montaje, el LED debe estar encendido 1 segundo y apagado 3 segundos. 3. Cambia el pin donde conectamos el LED al pin 6, modifica el programa para que funcione adecuadamente. 4. Añade en serie un potenciómetro Qué ocurre cuando giras el potenciómetro?

Materiales: Placa protoboard Microcontroladora Arduino Cable de conexión 1 LED Rojo 1 LED Verde 2 Resistencias de 120 Ω Cables PRÁCTICA Nº 2: PARPADEO DE VARIOS LED Objetivo Ahora tenemos 2 LEDs. Queremos que el LED rojo esté siempre encendido y que el amarillo esté 1 segundo encendido y medio segundo apagado. Se complica el montaje y se debe introducir una nueva variable. Diagrama de flujo

Montaje Programa /* Parpadeo. Practica 2 Un led siempre encendido, rojo Un segundo led verde se enciende 1 seg y se apaga 0,5 segundos */ int ledrojo = 1; // LED rojo conectado al pin 1 int ledverde=8; // LED verde conectado al pin 8 void setup() { //ledrojo y ledverde son variables de salida pinmode(ledrojo, OUTPUT); pinmode(ledverde,output); void loop() { digitalwrite(ledrojo, HIGH); // enciende el led rojo digitalwrite(ledverde,high); //enciende el led verde delay(1000); // espera un segundo digitalwrite(ledverde, LOW); // apaga el led verde delay(500); // espera medio segundo

Actividades 1.- Cambia el programa para que se mantenga encendido el LED verde y parpadea el rojo. 2.- Cambia el programa para que el LED rojo esté encendido 1,5 segundos y apagado 0,8 segundos. 3.- Cambia el programa para que cuando el LED rojo este encendido el LED verde esté apagado y cuando el LED rojo esté apagado el LED verde esté encendido. Frecuencia de 1 segundo. 4.- Monta un LED amarillo y modifica el programa para que se enciendan los LED con la siguiente secuencia Verde-Amarillo-Rojo 5.- Los LED deben encenderse con la secuencia siguiente: Verde-Amarillo-Rojo esperar 2 segundos todos apagados Rojo-Amarillo-Verde esperar 2 segundos todos encendidos.

PRÁCTICA Nº 3: CONTROL DE UN LED CON UN PULSADOR Materiales: Placa protoboard Microcontroladora Arduino Cable de conexión 1 LED Rojo 1 Pulsador 1 Resistencia de 120 Ω 1 Resistencia de 150 kω Cables Objetivo El LED rojo se debe encender cuando accionamos el pulsador. En esta práctica introducimos los siguientes conceptos: - Variable val (donde se almacena el estado del pulsador) - Inicializar una variable de entrada de información pinmode(variable,input); - Función que nos dice el estado del interruptor digitalread(variable); - Función que permite actuar de una forma cuando el interruptor está cerrado y de otra forma cuando el interruptor está abierto if (val==high){ else{ Diagrama de flujo

Montaje Programa /*El objetivo de este programa es controlar el encendido y apagado de un led *Si el pulsador está pulsado se enciende el LED si no está apagado */ int pulsador=8; int led=1; int val=0; void setup(){ pinmode(pulsador,input); pinmode(led,output); void loop(){ val=digitalread(pulsador); if(val==high){ digitalwrite(led,high); else{ digitalwrite(led,low);

Actividades 1.- Cambia el programa para que cuando el pulsador está pulsado el LED se apaga y cuando está sin pulsar el LED está encendido 2.- Pon un LED verde y varia el programa para que cuando acciones el pulsador el LED rojo esté encendido y el LED verde apagado, al dejar de pulsar el LED rojo se apaga y se enciende el LED verde 3.- Al presionar un pulsador 1 debe encenderse el LED rojo y al presionar el pulsador 2 debe apagarse el LED rojo y encenderse el verde. 4.- Hacer un programa con tres LED que se enciendan Verde-Amarillo-Rojo y cuando pulsemos el pulsador que cambie la secuencia a Amarillo-Rojo- Amarillo-Verde 5.- Cuando pulsemos el pulsador la secuencia de dos LED Verde y Rojo va mas rápido

Materiales: Placa protoboard Microcontroladora Arduino Cable de conexión 1 LED Rojo 1 LED Verde 1 Pulsador 2 Resistencias de 120 Ω 1 Resistencia de 150 kω Cables PRÁCTICA 4. SEMÁFORO PARA PEATONES Objetivo El LED rojo se debe encuentra encendido indicando que el peatón no puede pasar, cuando el peatón llega al semáforo pulsa el botón el led rojo se apaga y se enciende el verde durante cinco segundos. Diagrama de flujo

Montaje

Programa /* El semaforo está rojo para el peatón *Cuando el peatón pulsa el botón el LED rojo se apaga y se enciende el verde *El LEd verde se mantiene encendido 5 segundos y luego se enciende el rojo */ int interruptor=8; int ledrojo=1; int ledverde=5; int val=0; void setup(){ pinmode(interruptor,input); pinmode(ledrojo,output); pinmode(ledverde,output); void loop(){ val=digitalread(interruptor); if(val==high){ digitalwrite(ledrojo,low); digitalwrite(ledverde,high); delay(5000); digitalwrite(ledverde,low), digitalwrite(ledrojo,high); else{ digitalwrite(ledrojo,high); Actividades 1.- Cambia el programa para que cuando pulsamos el interruptor el LED rojo tarde un segundo en apagarse para evitar que los coches tengan que dar un frenazo

PRÁCTICA Nº 5: CONTANDO EVENTOS. CONTAR LAS VECES QUE PULSAMOS UN PULSADOR Materiales: Placa protoboard Microcontroladora Arduino Cable de conexión 1 LED Rojo 1 Pulsador 1 Resistencias de 120 Ω 1 Resistencia de 150 kω Cables Objetivo Cada vez que accionamos el pulsador, el LED rojo se enciende y además aparece en pantalla el número de veces que pulsamos. Esto nos serviría para contar eventos, por ejemplo, número de veces que se abre una puerta, personas que entran en un local, etc. En esta práctica introducimos los siguientes conceptos: Serial.begin(9600) abre el puerto serie ++ aumenta uno;!= distinto; == igual Serial.println() imprime datos con salto de línea Serial.print() imprime datos

Diagrama de flujo

Montaje

Programa /* Este programa nos permite conocer las veces que cambiamos una entrada de un estado a otro. Encendido o apagado */ int pulsadorpin = 2; // el pin donde hemos conectado el pulsador int ledpin = 7; // el pin donde hemos conectado el led int contador = 0; // cuenta el numero de veces que pulsamos int estadopulsador = 0; // estado actual del pulsador int estadoanteriorpulsador = 0; // estado anterior del pulsador void setup() { pinmode(pulsadorpin, INPUT); // pulsador es una entrada pinmode(ledpin, OUTPUT);//el LED es una salida Serial.begin(9600);//abre puerto serie void loop() { // read the pushbutton input pin: estadopulsador = digitalread(pulsadorpin);//nos dice si el pulsador está pulsado o no if (estadopulsador!= estadoanteriorpulsador) {//compara el estado actual con el anterior // si el estado cambia aumenta el contador if (estadopulsador == HIGH) { contador++;//contador aumenta digitalwrite(ledpin,high);//enciende el led Serial.println("on"); //imprime datos al puerto serie con retorno de carro Serial.print("numero de veces que pulsamos: "); //imprime puerto serie sin retorno de carro Serial.println(contador, DEC); else { digitalwrite(ledpin,low); //apaga el led Serial.println("off"); estadoanteriorpulsador = estadopulsador;//salva el estado actual como último estado

Actividades 1.- Cambiar el programa para que el LED se encienda cuando se pulsa cuatro veces 2.- Cómo podemos conseguir que cuente hasta 10 y se reinicialice el programa? Nota: la actividad nº 2 es lo suficientemente complicada como para considerarla un reto. Así pues: Si consigue solucionarla una sola persona, tendrá 1,5 puntos más en la evaluación. Si consiguen solucionarla 2 personas del mismo grupo, cada una de ellas tendrá 1 punto más en la evaluación. Si consiguen solucionarla 3 personas del mismo grupo, cada una de ellas tendrá 0,8 puntos más en la evaluación. Si consiguen solucionarla 2 o más personas de distinto grupo, tan sólo os daré 0,1 puntos más en la evaluación a quienes lo averigüen: recordad que cada grupo es un equipo de investigadores, y que hay que tratar de impedir el espionaje industrial... Tenéis de tiempo para pensarlo desde el momento en el que leáis estas líneas hasta la semana siguiente a aquella en la que se plantee en clase realizar esta práctica.

Materiales: Placa protoboard Microcontroladora Arduino Cable de conexión 1 LED Rojo 1 Resistencia de 120 Ω Cables PRACTICA 6. SIMULAR LUZ DE UNA VELA Objetivo Se trata de simular el movimiento de la llama de una vela. Introducimos las entradas PWM e introducimos también una instrucción para generar un número aleatorio. randomseed(0) Inicializa los números aleatorios a cero random(100,255) genera un número aleatorio entre 100 y 255 Diagrama de flujo

Montaje Programa /* * Para simular la luz de la vela necesitamos: * Saca por una de las salidas del puerto PWM un valor aleatorio que activa un LED */ int ledpin = 9; // selecciona el puerto PWM int val = 0; // define y pone a cero la variable "brillo" int delayval = 0; // define el intervalo de cambio de valor de salida void setup() { randomseed(0); // inicializa el generador de números aleatorios pinmode(ledpin, OUTPUT); // declara el pin de SALIDA pin 9 void loop() { val = random(100,255); // genera un número aleatorio entre 100 y 255 que asigna a la variable val analogwrite(ledpin, val); // envía ese valor a la salida pin 9 delayval = random(50,150); // genera un numero aleatorio entre 50 y 150 y lo asigna a la variable de temporización delay(delayval); // espera un tiempo delayval medido en milisegundos