13-12-2017 Practica conArduino Simulación con Tinkercad Alexander Aguirre, Diego Pineda AUTOMATISMOS II ....................................... 7 Practica 02: Parqueadero inteligente ............. 3 Código de programación: ............................................................................................................................................ 2 Resumen ............................................................................... 2 Metodología de la investigación .................................................................................. 3 Practica 01: Semáforo inteligente ........................ 8 Código de programación: ...................... 11 ..... 2 Objetivos Específicos ......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 2 Objetivo General.......................... 4 Listado de componentes ........................................................................................................ 3 Modelo del circuito .......................................................................................................................................................................................................................... 10 Listado de componentes .......... 8 Descripción ........................................................................................................................................................................ 11 Conclusiones e implicaciones .................................................. 3 Desarrollo ..................................... 2 Abstract ........................................................................................................................... 10 Código de programación: .......................................................... 9 Modelo del circuito de la valla de ingreso vehicular ................................................................................................ 8 Modelo del circuito de la valla de ingreso vehicular ................................................................................ 8 Listado de componentes ..................... Contenido Introducción ........................................... 3 Descripción ....................... The microcontroller on the board is programmed using the Arduino Programming Language (based on Wiring) and the Arduino Development Environment (based on Processing). que amplían los funcionamientos de la placa. secuencia básica de tres leds y construcción de un indicador led. El hardware consiste en una placa de circuito impreso con un microcontrolador. Objetivos Específicos • Desarrollar la practica con Arduino de diversas aplicaciones incidentes. los cuales pueden conectarse a placas de expansión (shields). concretamente un ATMEL que es un Arduino. usualmente Atmel AVR. puertos digitales y analógicos de entrada/salida. specifically an ATMEL that is an Arduino. Introducción Resumen Para practicar aplicaciones electrónicas se maneja una placa basada en un microcontrolador. • Investigar la esquematización de programación con Arduino. Abstract To practice electronic applications. se desarrollará aplicaciones como led intermitente. enfocados en el uso de Arduino uno. . con la primordial función de ser una plataforma de prototipos electrónica de código abierto (open-source) establecida en hardware y software flexibles y fáciles de usar. • Describir y analizar los componentes y variables en el desarrollo de la práctica. a board based on a microcontroller is used. digital and analog input / output ports. pulsador. Objetivo General Construir y simular los ejercicios planteados por el docente en el laboratorio a través del programa Tinkercad. El microcontrolador de la placa se programa utilizando el Arduino Programming Language (basado en Wiring) y el Arduino Development Environment (basado en Processing). usually Atmel AVR. which expand the operation of the board. The hardware consists of a printed circuit board with a microcontroller. with the primary function of being an open- source electronic prototype platform (open-source) established in flexible and easy-to- use hardware and software. which can be connected to expansion boards (shields). el semáforo cambia a amarillo y a rojo inmediatamente. el semáforo se pone en rojo luego de 30 segundos. Desarrollo Practica 01: Semáforo inteligente Descripción El semáforo funciona normalmente hasta que el peatón presiona el botón para cruzar. • Si al presionar el botón existen autos cruzando. El semáforo funciona con tiempos y en el siguiente orden: • Verde: 15 segundos • Amarillo: 2 Segundos • Rojo: 15 Segundos Los autos son detectados mediante sensor de presencia. • Si al presionar el botón NO existen autos cruzando. Modelo del circuito .Metodología de la investigación La metodología que se utilizara en el ensayo es un estudio descriptivo. escogido de acuerdo a disponibilidad. se justifica la aplicación de este estudio analítico al describir una serie de casos y análisis de prevalencia en varias muestras que se nos presentan para probar hipótesis específicas [1]. // Tiempo de espera hasta comenzar transición void setup() { // Iniciamos el monitor serie Serial. // Indica si el semáforo 1 está activo. // Tiempo de espera entre transición de LEDs int tiempoEspera = 3000. INPUT).begin(9600). pinMode(LEDROJO1. OUTPUT). OUTPUT). INPUT). pinMode(PULSADOR1. de lo contrario será el semáforo 2 int tiempoCambio = 3000. pinMode(LEDROJO2. pinMode(PULSADOR2. OUTPUT). pinMode(LEDAMARILLO2. .Código de programación: // Pines utilizados #define LEDVERDE1 2 #define LEDAMARILLO1 3 #define LEDROJO1 4 #define LEDVERDE2 5 #define LEDAMARILLO2 6 #define LEDROJO2 7 #define PULSADOR1 8 #define PULSADOR2 9 // Variables bool activo1 = true. LOW). pinMode(LEDVERDE2. OUTPUT). // Modo entrada/salida de los pines pinMode(LEDVERDE1. OUTPUT). OUTPUT). pinMode(LEDAMARILLO1. // Apagamos todos los LEDs digitalWrite(LEDVERDE1. } void loop() { // Dependiendo del semáforo que tengamos activo if (activo1) { // Está encendido el semáforo 1. // Estado inicial: semáforo 1 abierto. } } else { // Está encendido el semáforo 1. digitalWrite(LEDVERDE2. comprobamos el pulsador 1 int valor1 = digitalRead(PULSADOR1). LOW). pulsador pulsado if (valor2 == HIGH) { // Encender semáforo 2 ecenderSemaforo2(). HIGH). LOW). pulsador pulsado if (valor1 == HIGH) { // Encender semáforo 1 ecenderSemaforo1(). comprobamos el pulsador 2 int valor2 = digitalRead(PULSADOR2). } } } void ecenderSemaforo2() { // Apagamos semáforo 1 // Esperamos delay(tiempoEspera). digitalWrite(LEDROJO2. LOW). . LOW). // Semáforo 2 activo activo1 = false. digitalWrite(LEDROJO2. digitalWrite(LEDAMARILLO1. semáforo 2 cerrado digitalWrite(LEDVERDE1. // Si hay un coche esperando. // Semáforo 1 activo activo1 = true. LOW). digitalWrite(LEDROJO1. digitalWrite(LEDAMARILLO2. // Si hay un coche esperando. HIGH). LOW). digitalWrite(LEDAMARILLO1. // Pasamos a luz amarilla digitalWrite(LEDROJO2. LOW). HIGH). // Esperamos delay(tiempoCambio). HIGH). digitalWrite(LEDROJO1. LOW). // Pasamos a luz roja digitalWrite(LEDAMARILLO2. // Pasamos a luz roja digitalWrite(LEDAMARILLO1. digitalWrite(LEDAMARILLO2. HIGH). HIGH). // Pasamos a luz amarilla digitalWrite(LEDVERDE2. HIGH). digitalWrite(LEDVERDE2. // Pasamos a luz amarilla digitalWrite(LEDVERDE1. // Encendemos semáforo 1 // Esperamos delay(tiempoCambio). LOW). } . LOW). digitalWrite(LEDVERDE1. // Pasamos a luz amarilla digitalWrite(LEDROJO1. // Esperamos delay(tiempoCambio). LOW). } void ecenderSemaforo1() { // Apagamos semáforo 2 // Esperamos delay(tiempoEspera). digitalWrite(LEDROJO2. // Encendemos semáforo 2 // Esperamos delay(tiempoCambio). HIGH). Listado de componentes En la práctica elaborada se utilizaron los componentes electrónicos descritos en la tabla 01. Componentes utilizados Nombre Cantidad Componente U1 1 Arduino Uno R3 DLEDROJO1 2 Red LED DLEDROJO2 DLEDAMARILLO1 2 Yellow LED DLEDAMARILLO2 DLEDVERDE1 2 Green LED DLEDVERDE2 R2 R3 R4 6 220 ohm Resistor R5 R6 R7 SPULSADOR2 2 Pushbutton SPULSADOR1 R8 2 10 kohm Resistor R9 . Tabla 01. int angulo = 0.Practica 02: Parqueadero inteligente Descripción Al detectar un vehículo. si está disponible. Existen 3 parqueaderos disponibles. Una vez que el auto cruzó la barrera se coloca en posición inicial 0º. Modelo del circuito de la valla de ingreso vehicular Código de programación: #include <Servo. Para la salida es el mismo procedimiento. //Pin para el pulsador de aumentar el angulo . //Variable para el ángulo.h> Servo servomotor. el conductor presiona un pulsador y la barrera controlada mediante un servo motor se levanta hasta 90º. inicia en 0° int aumentar = 6. Dentro del parqueadero que encienden una luz verde. //Pin PWM 6 del Arduino pinMode(disminuir.attach(7). INPUT). if (angulo <= 0) { angulo = 0. pinMode(aumentar. Tabla 02. //Manda el ángulo al servo dependiendo del pulsador presionado delay(10).int disminuir = 5. Componentes utilizados Nombre Cantidad Componente Arduino Uno U1 1 R3 SERVOservomotor 1 Micro Servo S1 2 Pushbutton S2 R1 18 kohm 2 R2 Resistor . if (angulo >= 90) { angulo = 90. //El angulo no disminuye mas alla de 0 grados } } servomotor.write(angulo). //Posiciona el servo inicialmente en la mitad (90°) } void loop() { //Aumenta el angulo mientras se mantenga presionado if (digitalRead(aumentar) == LOW) { angulo++. //Pin para el pulsador de disminuir el angulo void setup() { servomotor. //El angulo no aumenta mas alla de 180 grados } } //Disminuye el angulo mientras se mantenga presionado if (digitalRead(disminuir) == LOW) { angulo--. servomotor. INPUT). } Listado de componentes En la práctica elaborada se utilizaron los componentes electrónicos descritos en la tabla 02.write(angulo). delay(1000). HIGH). OUTPUT).Modelo del circuito de la valla de ingreso vehicular Código de programación: void setup() { pinMode(13. // Wait for 1000 millisecond(s) . } void loop() { digitalWrite(13. T. LOW). [En línea].A. F. Tabla 03. hay dos nuevos pines cerca del pin RESET.» Luoman. I. // Wait for 1000 millisecond(s) } Listado de componentes En la práctica elaborada se utilizaron los componentes electrónicos descritos en la tabla 03. Processing. • El Arduino es una plataforma computacional física open-source basada en una simple tarjeta de I/O y un entorno de desarrollo que implementa el lenguaje Processing/Wiring. Componentes utilizados Nombre Cantidad Componente U1 1 Arduino Uno R3 D1 D2 3 Green LED D3 R1 R2 3 220 ohm Resistor R3 S1 S2 3 Slideswitch S3 Conclusiones e implicaciones • El Arduino Uno R3 utiliza el microcontrolador ATmega328 para el manejo de USB en lugar del 8U2 (o del FTDI encontrado en generaciones previas). Available: http://metodologia02.blogspot.U. . delay(1000). • Puede ser utilizado para desarrollar objetos interactivos o puede ser conectado a software de tu computadora (por ejemplo.html.. 2010. Flash. • La tarjeta Arduino Uno R3 añade pins SDA y SCL cercanos al AREF. Referencias Bibliográfica [1] J. «Blogspot. [Último acceso: 03 Noviembre 2017]. digitalWrite(13. Uno es el IOREF y el otro pin no se encuentra conectado y está reservado para propósitos futuros.com/p/operacionalizacion-de-variables. MaxMSP).