Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de...
Transcript of Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de...
![Page 1: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/1.jpg)
Proyecto de VinculaciónPVS-2018-031
Desarrollo de habilidades técnicas en
el área de robótica en los estudiantes de la Unidad Educativa Don Bosco
![Page 2: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/2.jpg)
PROGRAMACIÓN DE ENTRADAS Y SALIDAS
DIGITALES
1
![Page 3: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/3.jpg)
Objetivos• Comprender el funcionamiento de las entradas y
salidas digitales de un Arduino.
• Analizar conceptos relacionados con las entradas ysalidas digitales y con los sistemas digitales.
• Conocer cuáles son las funciones que permitenprogramar una entrada y salida digital.
• Diseñar aplicaciones que permitan el manejo dedispositivos sencillos de entrada y salida (pulsadores,leds, resistencias, etc.)
2
![Page 4: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/4.jpg)
INTRODUCCIÓNSeñales Digitales y Señales Analógicas
3
![Page 5: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/5.jpg)
INTRODUCCIÓNSeñales Digitales
Las señales digitales que manejan losdispositivos electrónicos son representadas enla mayoría de casos en lenguaje binario, es decir,pueden tomar 1 o 0 lógico.
1 LÓGICO Encendido Nivel alto Abierto +Vcc 5 [V]
0 LÓGICO Apagado Nivel bajo Cerrado -Vcc 0 [V]
4
![Page 6: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/6.jpg)
INTRODUCCIÓNEntradas / Salidas
Los microcontroladoresposeen una serie determinales o tambiénconocidos como pineso patas que funcionancomo entradas y salidasde señales digitales (oanalógicas).
5
![Page 7: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/7.jpg)
Entradas DigitalesUn pin configurado como entradadigital puede verse como unterminal que permite el ingreso deinformación al microcontrolador.
A manera de ejemplo una entradadigital puede verse como unperiférico de entrada en unacomputadora.
6
![Page 8: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/8.jpg)
Entradas Digitales
Una entrada es un terminal que permite que se leaplique una señal de voltaje, lo cual le permite almicrocontrolador interpretar que algo está sucediendoy que se debe comportar de una forma determinada.
¿Qué pasa si a una entrada digital no se conecta nada?
7
![Page 9: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/9.jpg)
Cuando el interruptor está abierto, el voltaje registrado es 0 voltios.Cuando se presiona el botón se cierra el interruptor y el voltajealcanza 5 voltios. Si se conecta este circuito al Arduino, al presionarel botón éste registrará los 5 voltios y podrá interpretar que el botónha sido presionado. Entonces, por medio de la programaciónadecuada, se ejecutarán las acciones que el programador hayaestablecido.
8
![Page 10: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/10.jpg)
Entradas DigitalesLos voltajes que el Arduino puede reconocer como 0lógico y como 1 lógico son los siguientes:
Existe una franja en la que el valor delvoltaje se desprecia, no se considera ni un1L ni un 0L, de este modo se filtranposibles datos erróneos producidos porposibles rebotes de tensión provenientesde dispositivos externos.
9
![Page 11: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/11.jpg)
Salidas DigitalesUn pin configurado como salidadigital puede verse como unterminal que permite mostrarinformación al usuario.
Como ejemplo, un terminalconfigurado como salida digitalpuede verse como un periférico deentrada .
10
![Page 12: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/12.jpg)
Salidas DigitalesEl pin se encuentra en un estado de baja impedancia.Gracias a esto, el microcontrolador puede entregar unacorriente alta de hasta 40 mA.
NOTA: no es recomendable conectar directamente loselementos. Se debe colocar una resistencia de 1kΩ porlo menos para proteger los pines.
11
![Page 13: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/13.jpg)
Función pinModeFunción usada en la function setup() para configurar unpin dado para comportarse como INPUT o OUTPUT. Elcomando pinMode(pin, OUTPUT) configura el pinnúmero pin como salida. Los pines de Arduinofuncionan por defecto como entradas, de forma que nonecesitan declararse explícitamente como entradasempleando pinMode().
Ejemplo: pinMode(4,OUTPUT)
12
![Page 14: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/14.jpg)
Función digitalReadLee el valor desde un pin digital específico. Devuelve unvalor HIGH o LOW. El pin puede ser especificado conuna variable o una constante (0-13).
Ejemplo: v = digitalRead(Pin);
13
![Page 15: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/15.jpg)
Función digitalWriteIntroduce un nivel alto (HIGH) o bajo (LOW) en el pindigital especificado. De nuevo, el pin puede serespecificado con una variable o una constante 0-13.
Ejemplo: digitalWrite(pin, HIGH)
14
![Page 16: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/16.jpg)
Ejercicio 1Encender un led
//declaración de variables
int tiempo=200; //para el control de los intervalos de parpadeo
void setup() //código que se ejecuta una sola vez
pinMode(2,OUTPUT); //el pin 2 del arduino uno como salida digital
void loop() //ciclo del programa
digitalWrite(2,HIGH); //led en el pin 2 encendido
delay(tiempo); //pausa de 200ms
digitalWrite(2,LOW); //led en el pin 2 apagado
delay(tiempo); //pausa de 200ms
15
![Page 17: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/17.jpg)
Ejercicio 1
Al momento de armar el circuito, ¿cuál es laresistencia adecuada?
V = I x R
Vfuente – Vled = I x R
Vfuente – Vled = I x R
R = (Vfuente – Vled) / I
Por lo general, la corriente que soporta un led es 20 mA16
![Page 18: Proyecto de Vinculación PVS-2018-031 · Proyecto de Vinculación PVS-2018-031 Desarrollo de habilidades técnicas en el área de robótica en los estudiantes de la Unidad Educativa](https://reader036.fdocuments.net/reader036/viewer/2022062307/60233d49444c1655a06e7c64/html5/thumbnails/18.jpg)
Ejercicio 2Encender un led mediante un pulsador
declaración de variables
byte pulsador=11; //al pin 11 se le llamará pulsador
byte led=13; //al pin 13 se le llamará led
byte tiempo=500; //antirrebotes
boolean aux=0; //variable auxiliar para cambiar los estados del led
void setup() //código que se ejecuta una sola vez
pinMode(pulsador,INPUT_PULLUP); //el pin 11 del arduino uno como entrada digital
//con su resistencia pull up interna activada
pinMode(led,OUTPUT); //el pin 13 del arduino uno como salida digital
digitalWrite(led,LOW); //el led inicia apagado
void loop() //ciclo del programa
if(digitalRead(pulsador)==0 && aux==0) //si se ha pulsado y la variable aux es 0
delay(tiempo); //antirreboltes
digitalWrite(led,HIGH); //el led enciende
aux=1; //aux a 1 para que el led se pueda volver a apagar con el mismo pulsador
if(digitalRead(pulsador)==0 && aux==1) //si se ha pulsado y la variable aux es 1
delay(tiempo); //antirreboltes
digitalWrite(led,LOW); //el led se apaga
aux=0; //aux a 0 para que el led se pueda volver a encender con el mismo pulsador
17