Está en la página 1de 9

Introducción a la Mecatrónica

I Ciclo

Laboratorio 10: Programación con Arduino NOTA

Alumnos: <colocar aquí los apellidos y nombres del alumno>


<colocar aquí los apellidos y nombres del
alumno>

Fecha de realización: 00-00-2021


Fecha de entrega: 00-00-2021

I. Objetivos
● Conocer el Arduino

● Escribir un programa de control de Leds y display

II. Seguridad
Advertencia:
●Obligatorio el uso de Mascarilla y careta de protección
●Desinfectar las manos con alcohol al ingreso del laboratorio
●Mantener siempre la distancia durante el laboratorio
●No obstruir las vías de evacuación con mochilas, sillas en mala
posición, etc.
●Ubicar maletines y/o mochilas al final del aula o en los casilleros
asignados al estudiante.
●No ingresar con líquidos, ni comida al aula de Laboratorio.
●Al culminar la sesión de laboratorio apagar correctamente la
computadora y la pantalla, y ordenar las sillas utilizadas.
●En este laboratorio está prohibida la manipulación del hardware,
conexiones eléctricas o de red

III. Equipos y Materiales


Una computadora con:
● Windows 7 o superior
● Conexión a la red

IV. Fundamento Teórico


Estos 10 últimos años la electrónica ha hecho unos progresos muy importantes. Uno de ellos es la
democratización de los micro-controladores como el AVR 328P en el cual se basa la tarjeta
ARDUINO.
Lab. N° 10 Programación Básica del
Arduino

Cableado del protoboard

Los Número nos muestran en amarillo como se conecta internamente el protoboard.

Conexión del LED:


● La patita más larga es positivo
● La muesca indica el negativo
● El cátodo se conecta al GND
● El ánodo se conecta al lado de la
resistencia
● La resistencia se conecta al arduino

Montaje correcto, resistencias de pull-down o pull-up


Las resistencias de Pull-Down y Pull-Up se conectan entre el PIN digital y una de las tensiones de
referencia (0V o 5V) y "fuerzan" (de ahí su nombre) el valor de la tensión a LOW o HIGH,
respectivamente.
La resistencia de Pull-Up: fuerza HIGH cuando el pulsador está abierto. Cuando está cerrado el PIN
se pone a LOW, la intensidad que circula se ve limitada por esta resistencia
La resistencia de Pull-Down: fuerza LOW cuando el pulsador está abierto. Cuando está cerrado el
PIN se pone a HIGH, y la intensidad que circula se ve limitada por esta resistencia
Así es como quedaría el montaje final en vista esquemática (la conexión se puede realizar empleando
cualquiera de los PIN digitales).

Docente: Armando Sarco Montiel Pág. 2


Lab. N° 10 Programación Básica del
Arduino

V. Procedimiento:
Led de prueba (pin 13) intermitente:
Ejercicio 1: Copiar el programa de abajo, compilar, analizar y comentar lo que sucede.
int led = 13;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
digitalWrite(led, HIGH);
delay(500);
digitalWrite(led, LOW);
delay(500);
}

Nota: Se utiliza “//” y “/*---*/”, para documentar nuestro programa (comentarios), es una muy buena
práctica comentar siempre nuestro programa, aunque este no se almacene en la memoria del
arduino.
Responder las siguientes preguntas:
● ¿Qué pasa si cambiamos uno de los 2 valores del delay a 2000?
● ¿Qué pasa si en vez de poner “int led = 13” ponemos “int led = 2”? explicar

Ejercicio 2: Utilizando el Tinkercad, armar el siguiente circuito en el protoboard, realizar un programa


para que se activen cuatro leds uno tras otro con un tiempo de espera de 200ms, compilar, analizar y
comentar lo que sucede.

Docente: Armando Sarco Montiel Pág. 3


Lab. N° 10 Programación Básica del
Arduino

int retardo = 200;


void setup() {
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
}
void loop() {
digitalWrite(0, HIGH);
delay(retardo);
digitalWrite(0, LOW);
delay(retardo);
digitalWrite(1, HIGH);
delay(retardo);
digitalWrite(1, LOW);
delay(retardo);
digitalWrite(2, HIGH);
delay(retardo);
digitalWrite(2, LOW);
delay(retardo);
digitalWrite(3, HIGH);
delay(retardo);
digitalWrite(3, LOW);
delay(retardo);
}

Responder la siguiente pregunta:


● Tener cuidado conectando el led puesto que si se conecta al revés ¿Qué pasaría?

Ejercicio 3: Modificar el programa anterior para que ocho Leds se vayan prendiendo y apagando uno
tras otro y una vez el último led se ha prendido se invierte el sentido. Compilar, analizar y comentar lo
que sucede.

int retardo = 80;


void setup() {
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
}
void loop() {
digitalWrite(0, HIGH);
delay(retardo);
digitalWrite(0, LOW);
delay(retardo);
digitalWrite(1, HIGH);
delay(retardo);
digitalWrite(1, LOW);
delay(retardo);
digitalWrite(2, HIGH);
delay(retardo);
digitalWrite(2, LOW);

Docente: Armando Sarco Montiel Pág. 4


Lab. N° 10 Programación Básica del
Arduino

delay(retardo);
digitalWrite(3, HIGH);
delay(retardo);
digitalWrite(3, LOW);
delay(retardo);
digitalWrite(4, HIGH);
delay(retardo);
digitalWrite(4, LOW);
delay(retardo);
digitalWrite(5, HIGH);
delay(retardo);
digitalWrite(5, LOW);
delay(retardo);
digitalWrite(6, HIGH);
delay(retardo);
digitalWrite(6, LOW);
delay(retardo);
digitalWrite(7, HIGH);
delay(retardo);
digitalWrite(7, LOW);
delay(retardo);
...completar

Display de 7 segmentos:
Ejercicio 4: Montar el circuito con un display cátodo común, para que realice una cuenta de 0 a 9;
realizar el programa, compilar, analizar y comentar lo que sucede.
int a = 9;
int b = 10;
int c = 6;
int d = 5;
int e = 4;
int f = 8;
int g = 7;
int tiempo = 500;

void setup(){
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
}

void loop()
{
digitalWrite(a, 1);//0
digitalWrite(b, 1);

Docente: Armando Sarco Montiel Pág. 5


Lab. N° 10 Programación Básica del
Arduino

digitalWrite(c, 1);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 1);
digitalWrite(g, 0);
delay(tiempo);
digitalWrite(a, 0);//1
digitalWrite(b, 1);
digitalWrite(c, 1);
digitalWrite(d, 0);
digitalWrite(e, 0);
digitalWrite(f, 0);
digitalWrite(g, 0);
delay(tiempo);
digitalWrite(a, 1);//2
digitalWrite(b, 1);
digitalWrite(c, 0);
digitalWrite(d, 1);
digitalWrite(e, 1);
digitalWrite(f, 0);
digitalWrite(g, 1);
delay(tiempo); //Completar...
}

Pulsador:
Ejercicio 5: Montar el circuito con un led y pulsador, probar con los dos programas de abajo,
compilar, analizar y comentar lo que sucede.

int puls = 2;
int led = 3;
int value = 0;
void setup() {
pinMode(puls, INPUT);
pinMode(led, OUTPUT);
}
void loop(){
value = digitalRead(puls);
if (value == HIGH) {
digitalWrite(led, 1);
}
else {
digitalWrite(led, 0);
}
delay(100);
}

Docente: Armando Sarco Montiel Pág. 6


Lab. N° 10 Programación Básica del
Arduino

//Enclavamiento
int pulsador, contador = 0;

void setup(){
pinMode(3,OUTPUT);
pinMode(2,INPUT);
}
void loop(){
pulsador = digitalRead(2);
if (pulsador == HIGH){
contador = 1 - contador;
delay(200);
}
if (contador == 1) {
digitalWrite(3, HIGH);
}
else {
digitalWrite(3,LOW);
}
}

Docente: Armando Sarco Montiel Pág. 7


Lab. N° 10 Programación Básica del
Arduino
Ejercicio 6 para la casa(Reto Tecsup): Utilizando el Tinkercad, monte el circuito eléctrico en el
protoboard tal como se muestra en la figura de abajo, compilar, analizar y comentar lo que sucede.

● Realizar un programa tal que al mantener presionado un pulsador se observe una cuenta
ascendente de 0 a 9 de forma cíclica en el display de 7 segmentos cátodo común. Con el otro
pulsador se debe observar una cuenta descendente de 9 a 0 de forma cíclica siempre y cuando
el pulsador se mantenga presionado. La cuenta ascendente o descendente debe verse en
intervalos de 500 ms. Colocar evidencia del programa realizado con su respectivo comentario y
análisis. Colocar evidencia de la simulación realizada en el TINKERCAD.

● Modificar el programa anterior para que se active el LED verde sólo cuando se vea el número 9
en el display de 7 segmentos y el LED rojo solo cuando se vea el número 0. Colocar evidencia
del programa realizado con su respectivo comentario y análisis. Colocar evidencia de la
simulación realizada en el TINKERCAD.

● Realizar un programa tal que cuando se presione una sola vez un pulsador el LED de color
verde debe parpadear 10 veces a intervalos de 250 ms. Cuando se presione una sola vez el otro
pulsador el LED de color rojo debe parpadear 15 veces a intervalos de 150 ms. Colocar
evidencia del programa realizado con su respectivo comentario y análisis. Colocar evidencia de
la simulación realizada en el TINKERCAD.

Entregables: Copie todo el código, capture las pantallas en ejecución de los seis ejercicios en el
Tinkercad, responda las preguntas y comente lo que sucede.

Docente: Armando Sarco Montiel Pág. 8


Lab. N° 10 Programación Básica del
Arduino

I. Observaciones:
abc

II. Conclusiones:
abc

III. Normas Generales:


1. Presentar como informe de laboratorio el titulo, número de laboratorio, nombres, fechas,
entregables(Lo resaltado en amarillo), observaciones, conclusiones y su propia bibliografía. No
colocar, objetivos, seguridad , equipos y materiales, fundamento teórico, procedimientos,
normas generales y anexo, ya que el turnitin va a reconocer un alto porcentaje de copia.
2. Por cada captura de pantalla que se realice, se deberá comentar en no menos de 3 líneas
explicando la figura o procedimiento.
3. La presentación del informe se realiza por el Canvas, un día antes de que se cumpla la semana
de realizado el laboratorio (6 días), no se revisa por otro medio.
4. Se penalizará con puntos en contra las faltas de ortografía en la redacción del informe, la
presentación fuera del tiempo indicado, en especial la falta de orden.
5. Se evaluará con nota cero si el nombre de uno de los participantes no está incluido en el
informe, incluir a un alumno que no ha participado en la experiencia de laboratorio, el nombre del
profesor está mal escrito, la presentación del informe por otro medio que no sea el Canvas, o el
más mínimo intento de plagio.
6. Se dará una bonificación de un punto a aquel alumno que publique en el foro de consultas,
alguna información relevante del tema tratado en la semana o encuentre alguna falla de
redacción u ortografía en las presentaciones y guías de laboratorio, así como de algún error en el
Canvas.
7. Pasada una semana de la publicación de la nota en el SEVA, se dará por entendido la
conformidad del alumno con su nota, es responsabilidad del alumno la verificación de la
conformidad de su nota, en caso de algún reclamo pasada la semana, ya no será tomada en
cuenta.

IV. Bibliografía
1. www.arduino.cc

V. Anexo

Docente: Armando Sarco Montiel Pág. 9

También podría gustarte