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

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

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

PRACTICAS CON ARDUINO

APRENDE ARDUINO FACILMENTE CON MIRPAS.COM.

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

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

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

USANDO PULSADORES CUADERNILLO RESUMEN. COMPONENTES ELECTRÓNICOS EN ARDUINO

Curso Robótica Práctica

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

TEMA 7: ROBÓTICA -PROGRAMACIÓN

5.- ENTRADAS/SALIDAS DIGITALES

TEMA 6: ROBÓTICA -PROGRAMACIÓN

Clase 2: Programación

PROPUESTA ARDUINO por José Manuel Aranga Salazar

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

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

Dpto. Tecnología Colegio Colón

Proyecto final Microcontroladores: Sistema De Seguridad Caja Fuerte Integrantes:

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

Programa del curso de Arduino

TEMA 6: PROGRAMACIÓN ROBÓTICA.ARDUINO

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

Introducción a Arduino

Instalación y entorno de programación

Taller Introducción a la Ingeniería Eléctrica Microcontrolador Arduino y Comunicaciones

Clase 4: Motores. Conviértete en un Joven Inventor PENTA UC

Control de brazo robótico por Bluetooth (Compatible solo con dispositivos Android)

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

Programamos nuestra placa Arduino gráficamente con mblock. Propuesta didáctica: Programamos nuestra placa Arduino gráficamente con mblock

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

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

ENTRADAS Y SALIDAS DIGITALES USO DE VARIABLES Y TEMPORIZADORES

La plataforma Arduino

VISUALINO (Apuntes y Proyectos. Parte I)

EL SENSOR DE SONIDO KY-038 (VERSION )

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.

PRESENTA INTRODUCCIÓN A ARDUINO

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

Programar posiciones en un Micro Servo Tower Pro SG90 9G

2. Programación en Arduino

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

Tutorial: Uso de Driver L298N para motores DC con Arduino

PRÁCTICAS ELECTRÓNICA ANALÓGICA

4.2 Práctica 1: encendiendo y apagando varios leds

CONTROL DE UN SERVOMOTOR

IES Los Albares (Dep. de Tecnología)

Introducción a Arduino

Programación de Arduino

INTRODUCCIÓN DESCRIPCIÓN... 4 Características Hardware... 4

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

CYBERTECH 2018 TALLER 03: MOTORES Y POTENCIA

CONTROL DE MOTOR PASO A PASO

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

Tallerine. Biónico. Clase

ACTIVIDADES PROGRAMACIÓN CON ARDUINO

Control programado con ARDUINO TECNOLOGÍA IES BELLAVISTA

Build & Code 4in1 Primeros pasos

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

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

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

CONSTRUCCION DE TIMER PARA VUELO CIRCULAR CON MOTOR ELECTRICO

COMUNIDAD DE FORMADORES DEL EMPRENDIMIENTO TECNOLÓGICO FEMPRETEC

Qué es y por qué usarlo

GUIA DE EJERCICIOS Nº 3 INSTRUMENTACIÓN AVANZADA

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

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

Domótica con Arduino, WiFi y Android

Incorporan funciones especialmente diseñadas para el control de motores paso a paso bipolar:

UNIDAD 1 Primeros programas

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

PRÁCTICAS ELECTRÓNICA DIGITAL

1. Escribir un dato digital del WinCC al Arduino

Introducción a Arduino

GreenCore Solutions SRL

Programación de dispositivos Arduino Asignatura Sistemas Digitales!

4 Dispositivos de E/S

El Microcontrolador Arduino

Arduino Punk Console. Idea

PRÁCTICAS CON ARDUINO UNO

PROYECTO DE ELECTRÓNICA

Características del sistema

VISUALINO Apuntes y Proyectos IV

Metodología y didáctica de la robótica y el control por ordenador

P R Á C T I C A S D E E L E C T R Ó N I C A A N A L Ó G I C A

Centro Educativo y Cultural del Estado de Querétaro. Alumnos de Ingeniería, carreras técnicas y profesionistas.

ARPA LÁSER GRUPO 7 MIEMBROS: Paula Forero Pastor José Ignacio Pérez López

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

Iniciación al IDE de Arduino y primer ejercicio

PROFESOR: Práctica 5. Manejo de Motores

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

Anexo III. Programas

Actuadores eléctricos - Motores

Taller de electrónica creativa. Cocinando con Arduino

Crear una app con MIT inventor

OBJETIVOS QUÉ VAMOS A REALIZAR? CONOCIMIENTOS PREVIOS

IM : ARDUINO NANO OEM

Pulsador receptor de 1 canal (ESTÁNDAR)

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

PRACTICAS CON ARDUINO: Nivel 1

Transcripción:

CURSO: ROBÓTICA. CONECTANDO CON EL MUNDO FÍSICO 1 Nombre, apellidos y correo electrónico de EducaMadrid del participante Elena Ribón Villamediana <eribonvillamediana@educa.madrid.org> José Antonio Cobo Arroyo < jcoboarroyo@educa.madrid.org> 2 Título de la Unidad Didáctica Automatización de un ascensor. 3 Curso 3º ESO 4ºESO 4 Descripción del proyecto Se pretende automatizar el funcionamiento de un ascensor con dos plantas. Proyecto que se puede realizar con madera en el taller de tecnología. Tenemos dos pulsadores de llamada y dos leds amarillos (1 por planta respectivamente). Al pulsar el botón de una planta, se encenderá el led del Arduino (pin 13), y el ascensor deberá ir a esa planta, salvo que ya se encuentre en esa misma planta, que no hará nada. Para simular el movimiento del ascensor se utilizarán dos motores de C.C. y dos leds de control, uno verde para indicar que el ascensor está subiendo y uno rojo para indicar que está bajando. Se utilizarán dos pulsadores, imitando dos finales de carrera, para detener el ascensor en cada planta. Cuando esto suceda, ha de encenderse el led amarillo de la planta correspondiente y apagarse los demás. Como mejoras del presente circuito, se puede introducir un circuito con inversor de giro y utilizar un solo motor. También se puede añadir un potenciómetro para regular la velocidad de giro del motor. Adicionalmente se puede conectar el puerto serie del ordenador, o bien para controlar los motores con el teclado, o para realizar lecturas de las variables como velocidad del motor, estado de los leds y pulsadores, número de planta del ascensor, etc. Este circuito también se puede aplicar al control de dos motores, con sentidos de giro opuestos, y controlados por dos pulsadores cada uno, funcionamiento y parada. 5 Competencias que se trabajarán Se trabajarán las siguientes competencias básicas: 1. Competencia en comunicación lingüística. 3. Competencia en el conocimiento y la interacción con el mundo físico. 4. Tratamiento de la información y competencia digital. 7. Competencia para aprender a aprender. 8. Autonomía e iniciativa personal. 6 Objetivos 7 Contenidos 1. Montar y conectar correctamente un led a la controladora Arduino Uno. 2. Montar y conectar correctamente un pulsador a Arduino. 3. Montar y conectar correctamente un motor a Arduino. 4. Aplicar un transistor bipolar npn en modo interruptor y conectarlo correctamente a Arduino. 5. Orden y limpieza en el montaje de un circuito en placa protoboard y cotroladora Arduino. 6. Programar correctamente la automatización de un ascensor de dos plantas controlado por un motor, dos pulsadores, 7. Documentar el código de manera limpia y clara para reutilización por terceras personas. - Placa controladora Arduino Uno, morfología y conexiones. - Led, aplicaciones y modos de conexión a Arduino. - Pulsadores, aplicaciones y modos de conexión a Arduino. - Motores de CC, aplicaciones y modos de conexión a Arduino. - Transistores bipolares, aplicaciones y modos de funcionamiento. - Programación en C++. Instrucciones básicas: pinmode(), digitalwrite(), digitalread(), do(), while(), if(), else(),switch(), operadores (=,!=, ==, >=, <= ). - Documentación de un programa. Sintaxis y normas de estilo. 1

8 Criterios de evaluación 1. Monta y conecta correctamente un led a controladora Arduino. 2. Monta y conecta correctamente un pulsador a Arduino. 3. Monta y conecta correctamente un motor a Arduino. 4. Monta y conecta correctamente un motor de CC mediante un transistor npn a Arduino. 5. Realiza el montaje del circuito con orden y claridad. 6. Programa correctamente la automatización de un ascensor, de manera que compila y el sistema funciona según lo previsto. 7. Documenta el código de manera limpia y clara. 9 Código del programa de Arduino // Establecemos los números de pin: const int motorsube = 3; // número de pin de activación del motor en sentido de subida. const int motorbaja = 4; // número de pin de activación del motor en sentido de bajada. const int ledp1 = 5; // número de pin del led de la primera planta. const int ledp2 = 6; // número de pin del led de la segunda planta. const int pinbotonp1 = 7; // número de pin del botón de la primera planta. const int pinbotonp2 = 8; // número de pin del botón de la segunda planta. const int pinfdc1 = 9; // número de pin del final de carrera (FDC) de la primera planta. const int pinfdc2 = 10; // número de pin del final de carrera (FDC) de la segunda planta. const int ledverde = 11; // número de pin del led verde. const int ledrojo = 12; // número de pin del led rojo. const int ledplaca = 13; // número de pin del led de la placa. // Establecemos las variables: int botonp1 = 0; // variable para leer el estado del botón de la planta 1. int b1 = 0; // Contador para saber si se ha pulsado el botón de la planta 1. int botonp2 = 0; // variable para leer el estado del botón de la planta 2. int b2 = 0; // Contador para saber si se ha pulsado el botón de la planta 2. int fdc1 = 0; // variable para leer el estado del final de carrera de la planta 1. int fdc2 = 0; // variable para leer el estado del final de carrera de la planta 2. int planta = 2; // variable para la lectura de la planta del ascensor. // Inicializamos los pines void setup() { // inicializamos pin digital 3 cómo una salida. pinmode(motorsube, OUTPUT); // inicializamos pin digital 4 cómo una salida. pinmode(motorbaja, OUTPUT); // inicializamos pin digital 5 cómo una salida. pinmode(ledp1, OUTPUT); // inicializamos pin digital 6 cómo una salida. pinmode(ledp2, OUTPUT); // inicializamos pin digital 7 cómo una entrada. pinmode(pinbotonp1, INPUT); // inicializamos pin digital 8 cómo una entrada. pinmode(pinbotonp2, INPUT); // inicializamos pin digital 9 cómo una entrada. pinmode(pinfdc1, INPUT); // inicializamos pin digital 10 cómo una entrada. pinmode(pinfdc2, INPUT); // inicializamos pin digital 11 cómo una salida. pinmode(ledverde, OUTPUT); // inicializamos pin digital 12 cómo una salida. pinmode(ledrojo, OUTPUT); // inicializamos pin digital 13 cómo una salida. pinmode(ledplaca, OUTPUT); 2

// the loop function runs over and over again forever void loop() { // Lectura de llamada de los botones de planta b1 - planta1, b2 - planta2. if (b1 == 0) { botonp1 = digitalread(pinbotonp1); if (botonp1 == HIGH) { digitalwrite(ledplaca, HIGH); // Enciende el led de llamada de planta. b1 = 1; if (b2 == 0) { botonp2 = digitalread(pinbotonp2); if (botonp2 == HIGH) { digitalwrite(ledplaca, HIGH); // Enciende el led de llamada de planta. b2 = 1; // Comprueba si el botón de la planta 1 está pulsado. // Si lo está, comprueba si el ascensor está en la planta 2: if (b1 == 1) { if (planta == 2) { while(fdc1!= HIGH){ digitalwrite(motorsube, LOW); digitalwrite(motorbaja, HIGH); // el ascensor baja digitalwrite(ledrojo, HIGH); // Enciende el led rojo de bajada del ascensor. fdc1 = digitalread(pinfdc1); // Lectura del estado del el Final de Carrera de la planta 1. digitalwrite(ledrojo, LOW); digitalwrite(motorbaja, LOW); // Para el motor de bajada. digitalwrite(ledplaca, LOW); // Apaga el led de llamada. planta = 1; b1 = 0; fdc1 = 0; // Comprueba si el botón de la planta 2 está pulsado. // Si lo está, comprueba si el ascensor está en la planta 1: if (b2 == 1) { if (planta == 1) { while(fdc2!= HIGH){ digitalwrite(motorsube, HIGH); // el ascensor sube. digitalwrite(motorbaja, LOW); digitalwrite(ledverde, HIGH); // Enciende el led verde de subida del ascensor. fdc2 = digitalread(pinfdc2); // Lectura del estado del el Final de Carrera de la planta 2. digitalwrite(ledverde, LOW); digitalwrite(motorsube, LOW); // Para el motor de bajada. digitalwrite(ledplaca, LOW); // Apaga el led de llamada. planta = 2; b2 = 0; fdc2 = 0; // Código para encender y/o apagar los leds de las plantas: switch (planta) { case 1: // enciende el led de la planta uno, apaga los leds de las otras plantas: digitalwrite(ledp1, HIGH); digitalwrite(ledp2, LOW); break; case 2: // enciende el led de la planta dos, apaga los leds de las otras plantas: digitalwrite(ledp1, LOW); digitalwrite(ledp2, HIGH); break; 3

10 Esquema de conexionado 11 Simulación del montaje 4

12 Foto del montaje X Marque con una cruz si acepta que esta unidad didáctica quede recogida bajo una licencia Creative Commons (by nc sa) (Reconocimiento, No Comercial, Compartir Igual) para ser compartida por todos los miembros de la comunidad de docentes: http://es.creativecommons.org/blog/licencias/ 5