- Portada
- Fundamentos de MentorBit
- Alimentación de circuitos y dispositivos
-
Programación y ejercicios básicos
-
Introducción
-
Driver necesario para programar la placa
-
Descripción de mBlock
-
Descripción de IDE Arduino
-
Estructura de un programa
-
Variables
-
Tipos de datos
-
Operadores
-
Sintaxis
-
Principales Bloques
-
Principales funciones C/C++
-
Monitor Serial
-
Actividad 1: Mi primer programa
-
Estructuras de control
-
Actividad 2: Bucle for
-
Actividad 3: Bucle while
-
Actividad 4: Condicional if y else
-
Actividad 5: Sentencia Switch
-
Arrays
-
Actividad 6: Los Arrays
-
Recibir por Serie
-
Actividad 7: Recepción por bus serial
-
Funciones
-
Funciones en Bloques
-
Funciones en C/C++
-
Actividad 8: Mis primeras funciones
-
Clases en C/C++
-
Actividad 9: Mi primera Clase
-
Actividad 10: Mi propia Calculadora
-
-
Programación y ejercicios con hardware
-
Introducción a MentorBit
-
LEDs
-
Actividad 11: LEDs de colores
-
El LED RGB
-
Actividad 12: LED RGB
-
El pulsador
-
Actividad 13: Pulsador en Pull Down
-
Actividad 14: Pulsador en Pull Up
-
El Potenciómetro
-
Actividad 15: Potenciómetro
-
El Zumbador
-
Actividad 16: Zumbador Pasivo
-
La Fotorresistencia
-
Actividad 17: LDR
-
Sensor de temperatura DS18B20
-
Actividad 18: DS18B20
-
El Servomotor
-
Actividad 19: Servomotor
-
Motores Corriente Continua
-
Puente en H
-
Actividad 20: Motor DC
-
Introducción a Motores paso a paso
-
Actividad 21: Motor paso a paso
-
Displays 7 Segmentos
-
Actividad 22: Display 7 Segmentos
-
Pantallas LCD
-
Actividad 23: Pantalla LCD
-
Actividad 24: Pantalla LCD
-
Pantallas OLED
-
Actividad 25: Pantalla OLED
-
Actividad 26: Pantalla OLED
-
Reloj en Tiempo Real (RTC)
-
Actividad 27: RTC
-
Tarjeta micro SD
-
Actividad 28: Micro SD
-
Actividad 29: Micro SD & RTC
-
Actividad 30: Micro SD & RTC
-
Puertos para Módulos MentorBit
-
Puertos de Comunicaciones
-
Puertos Genéricos
-
- Problemas Adicionales
- Proyectos Finales
Problema 1
Problema 1

Automatizando la Línea de Producción de Botella de Agua
Eres el/la encargado/a del sistema de control automatizado de una planta embotelladora de agua. Tu misión es asegurarte de que cada botella sea llenada correctamente con agua y que se le coloque su tapa antes de ser enviada al almacén. El objetivo es garantizar que las botellas estén listas para el consumo de manera eficiente y segura.
Para ello vamos a utilizar los siguientes componentes del MentorBit:
2 Botones (S1 y S2)
1 Led
Pantalla LCD
Display 7 Segmentos
Descripción del Sistema:
Sensor de llenado (S1): Detecta si la botella ha sido llenada correctamente con agua.
Sensor de tapa (S2): Confirma si la botella tiene la tapa colocada correctamente.
Tu reto es simular el funcionamiento de estos sensores utilizando los 2 botones.
Funcionamiento del Sistema:
Si la botella es llenada correctamente (se presiona S1), debes mostrar en la pantalla LCD el mensaje: "Botella llena".
Luego, si la tapa es colocada correctamente (se presiona S2 después de S1), se debe mostrar el mensaje: "Botella tapada".
Una vez que ambos pasos se han cumplido en el orden correcto (primero llenar y luego tapar), se encenderá un LED para indicar que el proceso ha finalizado exitosamente.
Además, deberás mostrar el mensaje: "Botella bien empaquetada" en la pantalla LCD para confirmar que la botella está lista para ser almacenada.
Una vez se confirme que la Botella está bien empaquetada, cuenta el número de botellas empaquetadas y muéstralo en el Display 7 Segmentos.
Si el proceso no se realiza en el orden correcto (por ejemplo, se presiona S2 antes que S1), no se encenderá el LED y el proceso no será considerado válido.
Detalles del Hardware:
Botón S1: Simula el sensor de llenado de la botella de agua.
Botón S2: Simula el sensor de colocación de la tapa.
Pantalla LCD: Muestra los mensajes de estado del proceso.
LED: Se enciende al finalizar exitosamente el proceso de llenado y tapado.
Display 7 Segmentos: Muestra el número de botellas empaquetadas correctamente.
Tarea:
Escribe un programa que controle el proceso descrito, asegurándote de que:
Los botones simulen correctamente los sensores.
El LED solo se encienda si ambos sensores han sido activados en el orden correcto (S1, luego S2).
El display de 7 segmentos muestre cuántas botellas han sido correctamente empaquetadas.
La pantalla LCD muestre los mensajes de estado apropiados en cada paso.
valor del pin tiene que ser mayor a 0, para mantener un margen de seguridad puede poner un número
más elevado, en este caso vamos a utilizar >100:
el valor del pin tiene que ser mayor a 0, para mantener un margen de seguridad puede poner un número
más elevado, en este caso vamos a utilizar >100:
}
int S1 = 0;
}
}
}
}
if(S1==1){
}
}
}
Desafío Adicional 1:
Implementa una validación que indique un error si el botón S2 (sensor de tapa) es presionado antes que S1 (sensor de llenado) o se presiona nuevamente S1. En este caso, muestra en la pantalla LCD: "Error en el proceso". Además, puedes implementar el encendido de otro LED que indique el fallo en el proceso.
if(S2==1){
}
else{
}
}
if(S1==1){
}
else{
}
}
}
Desafío Adicional 2:
Implementa una señal que indique que se ha completado un lote de 6 unidades, donde muestre en la pantalla LCD: "Lote completado". Además, puedes implementar el encendido de otro LED que se encienda cada vez que se complete un lote.
resto de la misma es 0, sabes que el contador es múltiplo de 6 unidades:
}
| Vistas | |
|---|---|
| 17 | Número de vistas |
| 17 | Vistas de miembros |
| 0 | Vistas públicas |
| Acciones | |
|---|---|
| 0 | Gustos |
| 0 | No me gusta |
| 0 | Comentarios |
Compartir por correo
Por favor iniciar sesión para compartir esto webpage por correo.


