0% encontró este documento útil (0 votos)
66 vistas10 páginas

Lab 7 - Arduino 2

El informe presenta las actividades realizadas y resultados obtenidos en el laboratorio Arduino II. Se desarrolló el manejo de funciones básicas mediante Arduino para familiarizarse con la tarjeta de desarrollo y dirigir instrucciones de control de flujo de forma óptima. También se llevó a cabo la lectura y escritura de puertos análogos, desarrollando un problema en el que un motor variaba su velocidad y sentido de giro dependiendo de la lectura de un sensor.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
66 vistas10 páginas

Lab 7 - Arduino 2

El informe presenta las actividades realizadas y resultados obtenidos en el laboratorio Arduino II. Se desarrolló el manejo de funciones básicas mediante Arduino para familiarizarse con la tarjeta de desarrollo y dirigir instrucciones de control de flujo de forma óptima. También se llevó a cabo la lectura y escritura de puertos análogos, desarrollando un problema en el que un motor variaba su velocidad y sentido de giro dependiendo de la lectura de un sensor.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 10

INFORME Arduino II

Deiby Jesús Rincón López


[email protected]
Wilfrido Rios Reyes
[email protected]
Daniela M. Mendoza Rubio
[email protected]

RESUMEN: El presente informe, presenta las 3. RESULTADOS


actividades realizadas,así como los resultados y
conclusiones a que se llegó en la práctica de Procedimiento por realizar
arduino II. En este laboratorio se desarrolló el
manejo de funciones básicas mediante Arduino, lo Partiendo del siguiente problema resuelva lo
cual nos lleva la familiarización con la tarjeta de siguiente.:
desarrollo, esto conlleva a que se debe dirigir de
forma óptima las instrucciones de control de flujo. Por medio de un sensor (potenciómetro) se debe
Por otro lado, se llevó a cabo la lectura y escritura manipular un motor para que este varíe sus RPMS
de puertos análogos en el sistema arduino; lo y el sentido de giro de acuerdo con la lectura en
anterior se pudo desarrollar a partir del problema términos porcentuales.
planteado, teniendo en cuenta que si la lectura
estaba por encima del 80% o por debajo del 30% ● Si la lectura está por encima del 80%, el
de voltaje de referencia, el motor giraría en sentido motor funciona al 100% en sentido
horario o en sentido antihorario. IZQUIERDA.

● Si la lectura decae por debajo del 30% el


PALABRAS CLAVE: Arduino, programación, Tinkercad. motor funciona al 100% en sentido
DERECHA.
KEY WORDS: Arduino, tinckercad, programming.
● Cuando la lectura se encuentra en el rango
intermedio el funcionamiento del motor cae
1. INTRODUCCIÓN proporcionalmente de forma lineal hasta
Arduino ha sido una plataforma electrónica digital, que alcance el valor límite (IZQ o DER).
basada en hardware y software libre para la creación de
prototipos, permitiendo la creación de objetos y entornos ● El sistema debe tener un botón que
interactivos[1]. Allí todos los circuitos integrados permita indicar el inicio de esta secuencia
funcionan gracias a un microcontrolador AVR de Atmel, o ciclo particular de control sobre el motor.
por lo que no necesita sistema operativo. Además
cuenta con características dentro de las cuales se ● Se debe presentar en Pantalla (SERIAL
destacan que tiene un entorno de desarrollo integrado
MONITOR) las variables de entrada y
gratuito, en el que se pueden crear diferentes
aplicaciones, también se puede ejecutar con diferentes
salida de este sistema.
sistemas operativos y es de uso sencillo y tiene la
flexibilidad necesaria para usuarios principiantes o 3.1. Realice la Tabla de entradas y salidas. No
avanzados[2]. Por tanto, es importante tener el manejo olvide definir el tipo de variable y relacionarla con
adecuado de las instrucciones de control de flujo para lo que se encuentra dentro del programa.
realizar el código en arduino. así como integrar
diferentes funciones, instrucciones y capacidades del
lenguaje de programación y llevar a cabo la lectura de
puertos análigos. ENTRADAS TIPO DE VARIABLE

ENABLE variable tipo logical en


el programa esta
2. MATERIALES variable da inicio al
● Arduino
funcionamiento del
● Tinkercad.com
● Resistencia sistema con una
● Dip switch entrada de 1 o de 0
● Cables

1
3.3. Realice la explicación de forma gráfica del
Vref Es una constante de
funcionamiento de Motor vs SENSOR. Para ello se
un valor de voltaje
recomienda una gráfica en términos porcentuales.
definido al inicio como
¿Dónde iría el sentido de giro?
0.55
En el serial motor se ve reflejado el sentido de giro
o su detención.
Volt Es una variable de tipo
int la cual es la entrada
Anexo 3
del voltaje al sistema
Anexo 4
modulada por medio
Anexo 5
del potenciómetro
Anexo 6
Anexo 7
Vini Es una variable la cual
guarda una constante
3.4. Realice la correspondiente codificación de
de 5 que simboliza los
este problema. No olvide dentro de su código
5 volts con el cual es
comentar y enlazar el código con lo realizado como
alimentado el circuito,
Pseudo-algoritmo y diagrama de flujo.
y al que se se le va a
multiplicar por un por
Anexo 8
un decimal para sacar
el porcentaje que
3.5. Plantee una tabla que resuma el
convenga.
experimento o prueba para verificar el
funcionamiento de su sistema. ¿qué variables son
importantes para dicha verificación y por qué?
SALIDAS TIPO DE VARIABLE
Prueba para Si el valor que se
VelGiro Es una salida que ya comprobar si la está leyendo es
sea puede ser float o lectura está por mayor de 55 gira
double que indica la
encima del 80% del a la izquierda
velocidad de giro del
motor al final. voltaje de
referencia
DirGiro Es una variable de tipo
entera la cual indica el
giro el cual va a dar el Prueba para Si el valor que se
motor. comprobar si la está leyendo es
lectura decae por menor de 55 gira
3.2. Realice el diagrama de flujo. ¿se puede debajo del 30% del a la derecha
simplificar la lógica?. Plantee también como voltaje de
alternativa este problema como una máquina de referencia
estados finito (FSM). ¿cambian las variables
planteadas originalmente, es decir se requiere algo
adicional o se elimina algo también.? Prueba para Se determina si el
determinar si la valor que se está
Diagrama de flujo lectura se leyendo se
encuentra en un encuentra entre el
Anexo 1
rango intermedio 30 y 80% del
Máquina de estados finitos voltaje de
referencia
Anexo 2

Si varía uno del otro, se reducen el número de


Para realizar la verificación del funcionamiento del
variables y además de esto se puede generar una
sistema, se tienen en cuenta variable como Voltaje
segunda tabla de entradas y salidas. Además,
de referencia, voltaje del potenciómetro, velocidad
todos los datos del diagrama de flujo se pueden
de giro la cual estará dada entre 0 y 100%, y el
distribuir proporcionalmente aunque hay que ser
enable el cual indicará si está activo o no,
cuidadoso, porque se puede convertir en un ciclo
dependiendo si se encuentra en 0 o en 1.
infinito (se puede resumir si se desea).

2
3.6. Si se quisiera cambiar o dejar variables los
valores límites que establecen el cambio de Por ello el plan de pruebas del proyecto es una de
sentido de giro. ¿en que modifican su diseño y las actividades más importantes y fundamentales
desarrollo original en todas las etapas descritas? en el desarrollo del mismo, ya que posibilita los
procesos, métodos de trabajo y herramientas
Tanto en el diagrama de flujo como en el diagrama necesarias para garantizar la calidad de cualquier
de estados, cambiaría sencillamente los valores de proyecto.
los porcentajes en los que daría el sentido de giro
y detención. 4.3. Nombre y enliste los problemas y obstáculos
que tuvo durante el desarrollo de la práctica y
En el diseño del circuito no habría ningún cambio, como los corrigió.
pero el código cambiaría los valores en los cuales - en el diagrama de flujo se tuvo un
daría el sentido de giro. inconveniente en cuanto a los valores de
voltaje de referencia y del potenciómetro, y
gracias a la mejor comprensión y la lógica
4. Preguntas del laboratorio de arduino se logró solucionar, tomando
valores de fuente mucho más reales, ya
4.1.¿Cómo fue el proceso de diseño y desarrollo que en un principio, el valor del voltaje de
planteado en esta práctica? ¿lo podemos la fuente era de 1V.
relacionar con la metodología en V?
Para llevar a cabo el desarrollo de la práctica,
inicialmente se establecieron las variables, tal
como el voltaje de referencia, voltaje del 5. CONCLUSIONES
potenciómetro, entre otras. Así mismo hasta qué
valor se debía llegar para determinar si la lectura
estaba por encima del 80% o por debajo del 30% - A partir de lo realizado en el respectivo
para determinar el sentido del giro. Asimismo, se laboratorio, se puede concluir que el
planteó el respectivo diagrama de flujo, y llevar a manejo adecuado de la lógica de Arduino,
cabo de manera ordenada y lógica la solución al permite la realización de diferentes
problema y poder realizar la simulación del circuito aplicaciones basadas en los circuitos
y realizar la respectiva codificación. Lo eléctricos. En el circuito implementado se
anteriormente mencionado, claramente se puede evidenció que llegando al valor establecido
relacionar con la metodología en V, ya que lo en el voltaje de referencia o estando por
primero que se debe hacer el desde la parte encima del 80% del mismo, en efecto, el
teórica es plantear y determinar los valores de motor gira en sentido antihorario, o por
voltaje que se van a usar y definir las variables y a debajo del 30% del voltaje de referencia, el
partir de allí dar paso a la creación del diagrama y motor gira en sentido horario. Por lo que
posteriormente la simulación, por tanto cada paso algo muy importante de destacar es que
está concatenado, y la solución se va dando con esto se dio en gran parte al buen manejo
un orden específico. de las instrucciones de control de flujo, y
de la lógica que se usa al momento de
4.2.¿por qué y para qué es importante el plan de codificar en Arduino
pruebas en cualquier proyecto?
- Los diagramas de flujo permiten tener
En un proyecto de desarrollo de software los mejor orden y mayor claridad a la hora de
errores pueden presentarse en cualquiera de las resolver algún problema planteado, ya que
etapas del prototipo a desarrollar. facilita el proceso del paso al código.
Aún cuando se intente detectarlos después de
cada fase utilizando técnicas como la inspección, - El diagrama de flujo permite que el lector
algunos errores permanecen sin ser descubiertos. entienda la metodología con que se va a
Por lo tanto es muy probable que el código final desarrollar el problema y las variables con
contenga errores de requerimientos y diseño, que este sistema cuenta.
adicionales a los introducidos en la codificación.

3
Artículo como Informe de Investigación –
Modelo IEEE – 2010-2011 – Adaptado para
el CEII

6. REFERENCIAS

[1] V. Carrillo, "Arduino, un intercambio de


conocimiento", BiblogTecarios, 2021. [Online].
Available:
https://www.biblogtecarios.es/anacarrillo/arduino-int
ercambio-y-generacion-de-conocimiento/#:~:text=A
rduino%20busca%20ser%20una%20herramienta,n
i%C3%B1os%20entiendan%20la%20electr%C3%
B3nica%20digital.&text=La%20importancia%20de
%20Arduino%20radica,de%20este%20modo%20in
tercambiar%20conocimiento. [Accessed: 17- May-
2021].

[2] "El mundo de arduino y sus posibilidades",


Blog.softtek.com, 2021. [Online]. Available:
https://blog.softtek.com/es/el-mundo-de-arduino-y-
sus-posibilidades. [Accessed: 17- May- 2021].

[3] Cristina López, C. L. (2018, 15 febrero). BLOG.


Cristina López-Goicochea Juárez.
https://www.atsistemas.com/es/blog/la-importancia-
del-testing-de-software-y-de-la-automatizacin-de-pr
uebas#:%7E:text=La%20importancia%20del%20te
sting%20de%20software%20y%20de%20la%20aut
omatizaci%C3%B3n%20de%20pruebas,-Abr%200
1%202019&text=El%20testing%20de%20software
%20es,la%20calidad%20de%20cualquier%20desa
rrollo.

[4] Testing. (2013, 1 enero). ¿Por qué son


necesarias las pruebas? TestingBaires.
https://testingbaires.com/2013/01/01/por-que-son-n
ecesarias-las-pruebas/

4
6. Anexos

Anexo 1 diagrama de flujo

Anexo 2 diagrama de estados


5
anexo 3 detención del movimiento con el swich de detenido.

Anexo 4 giro a la izquierda al 100%

6
Anexo 5 velocidad de giro por debajo del 80%

Anexo 6 velocidad de giro a la derecha del 100%

7
Anexo 7 giro a la derecha por debajo del 30%

//Variables
int E;
float Vref;
float Vel;
int Vini;
float Volt;
float auxF;
String sentido;
float VelP;

//pines
int izq = 4;
int der = 5;
int pot = 0;
int swt = 3;
int velo = 6;

void setup() {
//definicion pines
pinMode(izq,OUTPUT);
pinMode(der,OUTPUT);
pinMode(pot,INPUT);
pinMode(swt,INPUT);
pinMode(velo,OUTPUT);

digitalWrite(izq,LOW);
digitalWrite(der,LOW);

Serial.begin(9600);

void loop() {
E = digitalRead(swt);

if (E == HIGH){
Vini = 5;

8
Vref = Vini*0.5;
Volt = analogRead(pot);
Volt = map(Volt,0,1023,0,5);

if (Volt == Vref){
analogWrite(velo,0);
}
else{

if (Volt > Vref){


digitalWrite(izq,HIGH);
digitalWrite(der,LOW);
auxF = Vini*0.8;
sentido = "Giro a la izquierda";

if (Volt > auxF){


Vel = 255;
analogWrite(velo, Vel);
}
else{
Vel = 4*Volt - 220;
analogWrite(velo, Vel);
}

}else{
digitalWrite(izq,LOW);
digitalWrite(der,HIGH);
auxF = Vini*0.3;
sentido = "Giro a la derecha";

if (Volt < auxF){


Vel = 255;
analogWrite(velo, Vel);
}else{
Vel = 4*Volt - 220;
analogWrite(velo, Vel);
}

}else{
Vel = 0;
digitalWrite(izq,LOW);
digitalWrite(der,LOW);
analogWrite(velo, Vel);

VelP = map(Vel,0,255,0,100);
Serial.print("Velocidad: ");
Serial.print(VelP);
Serial.print("\t");
Serial.println(sentido);
delay(500);
}

Anexo 8 código del circuito

9
10

También podría gustarte