FORMATO EN EXCEL DEL PROYECTO FINAL - BITACORAS DE AGOSTO - LOGO DEL PROYECTO - YEREMI GOMEZ, GABRIELA PAVAS, NICOLAS OVALLE, LUIS ALEJANDRO ROMERO Y DANNA GONZALES

 Proyecto final, día 1.


El día 29 de Julio de 2025, se organizaron los grupos, lo que dio resultado al nuestro. Buscamos el proyecto que escogeríamos para fin de año. 



Entre nuestras opciones estaban:


Un elevador.


Una Máquina Expendedora.



Una máquina de garra.



Al final se decidió por hacer un elevador, esto debido a que es más barato, más sencillo y podemos agregarle más cosas funcionales.


 Proyecto final, día 2.


El día 5 de Agosto de 2025, unimos a Nicolàs Ovalle a nuestro grupo. Aùn no estabamos seguros de como proseguir con nuestro proyecto, asi que buscamos màs posibilidades  



 Proyecto final, día 3.


El día 12 de Agosto de 2025, ese dìa no fue realmente ocupado, simplemente seguimos buscando lo que eventualmente serìa nuestro proyecto. En esta fase del proyecto ya sabìamos que no elegiríamos el ascensor. Sin embargo, teníamos en mente elegir ya fuera un rociador, o un carrito.


          Bitácora      

  •  Nicolas Ovalle Largo
  •  Luis Alejandro Romero

  •  Danna Gonzales Gómez
  • Gabriela Pavas.
  •   Yeremi Gómez.


      DIA 19 DE AGOSTO DEL VIENTICINCO:

Empezamos con la lluvia de ideas para el proyecto final del área de sistemas.  Tuvimos en cuenta las ODS y tuvimos varias ideas, Una de ellas fue la idea de un elevador, pero pensamos en las ODS y cambiamos el proyecto a un robot bombero.

Y ELEGIMOS ESTE LOGO


      
                                   

        Bitácora     

  • Nicolas Ovalle Largo
  • Luis Alejandro Romero
  • Danna Gonzales Gómez
  • Gabriela Pavas
  • Yeremi Gómez.

  26 de agosto de 2025     

El Dia de hoy en equipo nos dividimos el trabajo en 4, Alejandro y Pavas trabajando en el      Formulario del Excel, Yeremi está haciendo el código en tinkercad  Y Danna trabajando con Ovalle realizando el modelo 3D en tinkercad.
El logo fue creado por Danna y Ovalle.
Gabriela y Yeremi hicieron lo que fue como tal un circuito de inicio 


AQUI ESTA EL CODIGO EN ARDUINO IDE

#define enA 10 // Enable1 L298 Pin enA
#define in1 9 // Motor1 L298 Pin in1
#define in2 8 // Motor1 L298 Pin in2
#define in3 7 // Motor2 L298 Pin in3
#define in4 6 // Motor2 L298 Pin in4
#define enB 5 // Enable2 L298 Pin enB

#define ir_R A0
#define ir_F A1
#define ir_L A2
#define servo A4
#define pump A5

int Speed = 160; // Velocidad motores (0-255)
int s1, s2, s3;

const int UMBRAL_FUEGO = 500; // <--- Ajusta este número según tus lecturas
const int REPETICIONES =5; // Cuántas veces seguidas debe detectar para actuar

int contadorS1 = 0, contadorS2 = 0, contadorS3 = 0;

void setup() {
Serial.begin(9600);

pinMode(ir_R, INPUT);
pinMode(ir_F, INPUT);
pinMode(ir_L, INPUT);
pinMode(enA, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(enB, OUTPUT);
pinMode(servo, OUTPUT);
pinMode(pump, OUTPUT);

// Centrado inicial del servo con menor rango (75°–105°)
for (int angle = 90; angle <= 105; angle += 5) servoPulse(servo, angle);
for (int angle = 105; angle >= 75; angle -= 5) servoPulse(servo, angle);
for (int angle = 75; angle <= 90; angle += 5) servoPulse(servo, angle);

analogWrite(enA, Speed);
analogWrite(enB, Speed);
delay(500);
}

void loop() {
// Leer sensores
s1 = analogRead(ir_R);
s2 = analogRead(ir_F);
s3 = analogRead(ir_L);

// Mostrar lecturas en el monitor serie
Serial.print(s1);
Serial.print("\t");
Serial.print(s2);
Serial.print("\t");
Serial.println(s3);
delay(50);

// ---- Filtro por software ----
contadorS1 = (s1 < UMBRAL_FUEGO) ? contadorS1 + 1 : 0;
contadorS2 = (s2 < UMBRAL_FUEGO) ? contadorS2 + 1 : 0;
contadorS3 = (s3 < UMBRAL_FUEGO) ? contadorS3 + 1 : 0;

// ---- Lógica principal ----
if (contadorS1 >= REPETICIONES) {
Stop();
digitalWrite(pump, 1);
for (int angle = 90; angle >= 75; angle -= 3) servoPulse(servo, angle);
for (int angle = 75; angle <= 90; angle += 3) servoPulse(servo, angle);
}
else if (contadorS2 >= REPETICIONES) {
Stop();
digitalWrite(pump, 1);
for (int angle = 90; angle <= 105; angle += 3) servoPulse(servo, angle);
for (int angle = 105; angle >= 75; angle -= 3) servoPulse(servo, angle);
for (int angle = 75; angle <= 90; angle += 3) servoPulse(servo, angle);
}
else if (contadorS3 >= REPETICIONES) {
Stop();
digitalWrite(pump, 1);
for (int angle = 90; angle <= 105; angle += 3) servoPulse(servo, angle);
for (int angle = 105; angle >= 90; angle -= 3) servoPulse(servo, angle);
}
else if (s1 >= UMBRAL_FUEGO && s1 <= 700) {
digitalWrite(pump, 0);
backword();
delay(100);
turnRight();
delay(200);
}
else if (s2 >= UMBRAL_FUEGO && s2 <= 800) {
digitalWrite(pump, 0);
forword();
}
else if (s3 >= UMBRAL_FUEGO && s3 <= 700) {
digitalWrite(pump, 0);
backword();
delay(100);
turnLeft();
delay(200);
}
else {
digitalWrite(pump, 0);
Stop();
}
delay(10);
}

// ------------------ FUNCIONES ------------------
void servoPulse(int pin, int angle) {
int pwm = (angle * 11) + 500;
digitalWrite(pin, HIGH);
delayMicroseconds(pwm);
digitalWrite(pin, LOW);
delay(50);
}

void forword(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}

void backword(){
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}

void turnRight(){
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
}

void turnLeft(){
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
}

void Stop(){
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
}

CODIGO EN PSEINT 
Proceso RobotSimple
Definir s1, s2, s3 Como Entero
Definir UMBRAL_FUEGO Como Entero
UMBRAL_FUEGO <- 500
Mientras Verdadero Hacer
Escribir ""
Escribir "Sensor derecha: " Sin Saltar
Leer s1
Escribir "Sensor frente: " Sin Saltar
Leer s2
Escribir "Sensor izquierda: " Sin Saltar
Leer s3
Si s1 < UMBRAL_FUEGO O s2 < UMBRAL_FUEGO O s3 < UMBRAL_FUEGO Entonces
Escribir "?? FUEGO DETECTADO - Bomba encendida"
Escribir "Servo moviendo para apagar fuego..."
Sino
Escribir "Sin fuego - Robot avanzando ??"
FinSi
Esperar 1 Segundos
FinMientras
FinProceso 
                                                  DIAGRAMA DE FLUJO 





Evidencias





FOMATO EXCEL




modelo 3D









circuito 




 Bitácora

9/09/25

El día de hoy trabajamos en el proyecto, este día estamos repartiéndonos el trabajo
pavas, Yeremi y romero se pusieron a armar el robot bombero, Danna hizo el código en el simulador, y Nicolás se puso a hacer la bitácora.


 Bitácora

30/09/25

El día de hoy, nos pusimos a trabajar en conjunto sobre el robot, reconectando algunas cosas y haciendo revisiones de código y del funcionamiento del robot




 Bitácora

14/10/25

El dia de hoy estabamos haciendolo una revision de el robot moviendo cables y verificando el codigo para arreglarle unos detalles al robot sobre su funcionamiento.


Bitácora

21/10/25




el robot bombero finalizado
con el robot finalizado,lo pusimos aprueba verificando que todo funcione como debe y nos quedaria ver la decoracion para el stand de la feria de la ciencia.

Feria de la ciencia 2025

VIERNES /24 /OCTUBRE

Bitacora final



                                                               Stand de presentacion

Dia de Exposición



El dia de la feria de la ciencia 

primero al llegar al colegio nos preparamos para las exposiciones y presentaciones que teniamos en el salon de sistemas y el de español junto con artistica.

despues en la exposicion de el robot bombero en sistemas estuvimos hablando de su funcion,mision y vision y sus ODS, cosas para las cuales teniamos una presentacion lista para mostrar y explicar junto al codigo del proyecto que se explico dentro de la aplicación de arduino.

 









El dia de la feria nos ha ido excelente hasta recibiendo opiniones positivas sobre el proyecto y la exposicion,eso fue todo lo que sucedio en el dia y esta es la Bitacora final con el proyecto finalizado,nos despedimos.

-Maestros de la robotica.

FIN



Comentarios