Estos contenidos prácticos complementan la parte teórica de los temas 4. Fundamentos de la computación física, 5. Internet de las cosas y 6. Robótica del currículo de Computación y Robótica de 1º ESO.
Tabla de contenidos
- 1. Objetivo
- 2. El servomotor
- 3. El misterio de la corriente eléctrica
- 4. Montando el circuito
- 5. Turno para el servomotor
- 6. El programa
- 7. Construcción de la interfaz
1. Objetivo
El ruido en un aula de la Educación Secundaria Obligatoria (ESO) puede generar diversos problemas que afectan tanto al proceso de enseñanza-aprendizaje como al bienestar de estudiantes y profesores.
A los alumnos les genera dificultad para centrar la atención, la concentración y el enfoque en las tareas, lo que conlleva una disminución del rendimiento académico, además de episodios de ansiedad que afectan a su salud mental y física.

Los profesores, por su parte, tienen que realizar un esfuerzo mayor para hacerse escuchar (fatiga vocal), frustración, desgaste, estrés y otros daños que, irremediablemente, conducen a un proceso de enseñanza-aprendizaje menos eficaz.
Por todo lo anterior este proyecto viene a concienciar sobre un problema al que con frecuencia se le presta poca atención, al tiempo que nos permite aportar soluciones reales aplicando conceptos adquiridos en el currículo de Computación y Robótica de 1º ESO.
Para la construcción de nuestro dispositivo se ha elegido la temática IoT (Internet of Things) por su relevancia en el mundo digital actual y su potencial para proporcionar una experiencia de aprendizaje interdisciplinar e interactiva. Además, incluye numerosos conceptos que hemos visto en este Tema 4 – Fundamentos de la computación física.
A lo largo de esta experiencia irás aplicando aprendizajes que te permitirán construir un artefacto como el de la siguiente imagen:

Como ves, se trata de la interfaz de nuestro indicador.
Detrás de la interfaz tendremos una placa Micro:bit alimentada con pilas y conectada a un servomotor que es el que mueve la flecha indicadora. Deberás crear un programa que almacenarás en el placa controladora para que lea los valores del sensor de sonido integrado en tiempo real, y en función de sus valores, ir accionando el servo motor para que mueva el indicador sobre el panel de niveles de ruido.

Además, cuando se alcancen ciertos niveles, haremos que el gadget emita un sonido de alerta para avisar de que el ruido ambiental es excesivo.
Previamente, estudiaremos cómo circula la corriente eléctrica, cómo se leen los valores del sensor de sonido, cuántos niveles queremos establecer, cómo accionar un servo motor, cómo conseguir emitir sonidos y también cómo construir la interfaz de nuestro dispositivo. ¿Alucinante, verdad?
¡Vamos a ello! 🚀
🛠 Materiales mínimos necesarios:
- 1 x Lámina de cartón.
- 1 x Placa Micro:bit.
- 1 x Servomotor MS18.
- 1 x Rotulador.
- 3 x Cables Dupont macho-macho.
- 3 x Cables de cocodrilo.
2. El servomotor
Un servomotor es un tipo especial de motor que puede moverse a una posición específica y mantenerse en ella.
A diferencia de otros motores que simplemente giran sin control, el servo sabe exactamente cuánto y en qué dirección debe girar. Esto se consigue mediante una señal eléctrica que le enviamos, y que le indica en qué posición debe estar.
Piensa en una barrera como la que te encuentras en los aparcamientos de cualquier ciudad. La barrera está en horizontal (no recibe corriente) cerrando el paso a los vehículos. Cuando un vehículo llega, el conductor introduce una tarjeta y la barrera se abre (recibe corriente). Se queda en vertical el tiempo suficiente para que el vehículo pase. Cuando detecta que el vehículo ha pasado, vuelve a cerrarse volviendo a su posición original (deja de recibir corriente). Esta barrera si la construyéramos en casa con cartón y un pequeño listón de madera, podría estar conectada a un servo motor que recibe señales de una placa Micro:bit.

Los servos necesitan energía para moverse.
Si te fijas, el servomotor tendrá un pequeño conector negro con tres cables: uno marrón (o negro), otro rojo y otro naranja (también puede ser amarillo o blanco). Para que funcione, asegúrate de conectarlo a una fuente de alimentación adecuada. A veces, la Micro:bit por sí sola no es suficiente, y podría necesitar una fuente de energía externa. Para ello utiliza el pin que conecta con el cable rojo (+). El marrón lo usaremos para conectar la tierra (GND, ya veremos por qué) y el naranja para enviarle señales eléctricas para que cambie su posición.
Es importante que no cometas errores conectando los cables, puesto que conectarlos al revés puede dañar el dispositivo y dejarlo inservible.
Cuando hablamos de la «posición» de un servo, nos referimos a un ángulo. La mayoría de los servos comunes pueden moverse desde 0º hasta 180º. Si lo piensas es como un abanico que se abre y se cierra.
Antes de montar el servo en tu proyecto, es una buena práctica centrarlo (ponerlo en 90º) usando MakeCode. Esto te permitirá saber cuál es la posición neutral del servo y asegurarte de que se mueve como esperas.
Además, comprueba siempre que el servo pueda moverse libremente a lo largo de su rango de movimiento. Evita que choque con otros componentes o partes de la interfaz de tu dispositivo.
Por último, ten cuidado al conectar cables a los pines. Asegúrate de que las conexiones sean firmes, porque las flojas pueden causar comportamientos inesperados.
3. El misterio de la corriente eléctrica
¿Estás listo para saber cómo fluye la energía desde la Micro:bit hasta el servo motor para hacer que se mueva?
Presta atención.
Piensa en la corriente eléctrica como un río invisible de partículas diminutas llamadas electrones. Estos electrones, al moverse, llevan energía de un lugar a otro, de la misma manera a cómo el agua fluye de las montañas al mar. Esta energía es lo que hace que nuestros dispositivos, como la Micro:bit y el servo motor, cobren vida y realicen sus funciones.
Pero todo flujo necesita un camino (autopistas para los coches, cauces para los ríos o venas para la sangre), y para los electrones, este camino se llama circuito. Si alguna vez has visto un mapa del metro o tren, puedes pensar en un circuito como esas rutas que conectan diferentes estaciones. La corriente eléctrica siempre viaja desde un punto de inicio, pasa por varios componentes (nuestra Micro:bit y el servo) y finalmente regresa a su punto de partida. Este recorrido de ida y vuelta lo hace utilizando dos cables.
Cuando mires los cables en nuestros proyectos de robótica, a menudo verás dos colores dominantes: rojo y negro. Estos dos colores no están ahí solo porque combinan bien, sino que tienen un propósito muy específico.
- Cable rojo: es conocido como el cable de alimentación (3V en la Micro:bit) o positivo (+). Imagina que es como una autopista principal por donde viajan los electrones cargados de energía desde la fuente (por ejemplo una batería o unas pilas) hacia los dispositivos que queremos alimentar, como nuestra Micro:bit o el servo motor. Es decir, se utiliza en el camino de ida.
- Cable negro: este es el cable de tierra (GND del inglés «Ground», en la Micro:bit) o negativo (-). Representa el camino de regreso para los electrones. Después de que los electrones han entregado su energía al dispositivo, necesitan un camino para regresar a casa, pues este cable les proporciona esa ruta.

Ahora que ya sabes cómo fluye la corriente eléctrica, es imprescindible conectar todo correctamente. Asegúrate de que el cable rojo se conecte al pin de alimentación y el cable negro al pin de tierra. Una vez todo esté conectado, con MakeCode, puedes programar tu Micro:bit y controlar el servo motor de manera mágica.
4. Montando el circuito
Ha llegado la hora de integrar todos nuestros componentes aplicando los conceptos que hemos aprendido a lo largo del proyecto.
El primer elemento que debemos considerar es la placa controladora. De todo lo que hemos visto, sabemos que la placa debe recibir corriente eléctrica (establecer un camino de ida para los electrones) y también debe conectarse a tierra (establecer un camino de vuelta para los electrones). Esto podemos hacerlo de dos maneras diferentes:
- Podemos dejar libre el pin de 3V de la placa y alimentarla con el cable USB.
- Podemos utilizar el pin de 3V de la placa y no alimentarla con el cable USB.
Es una elección de diseño que debéis realizar vosotros. Pero con cuidado, porque en función de la distribución que elijáis, las conexiones ser realizarán de una manera distinta.
En cualquier caso lo que sí sabemos es que debemos conectar el cable de tierra al pin GND de la placa.
Además, debemos elegir entre los pines 0, 1 y 2, en cuál de ellos vamos a conectar el servo motor para enviarle instrucciones.
En todos los casos anteriores utilizaremos cables de cocodrilo, ya que nos facilitan la tarea de conectar y desconectar componentes de forma rápida.

Por tanto, en este punto de nuestro montaje podríamos tener un esquema parecido a este:

5. Turno para el servomotor
Del servomotor sabemos que tiene disponible tres pines: uno para recibir alimentación (el rojo), otro para conectarlo a tierra (el marrón o negro) y otro para recibir señales eléctricas y saber qué tiene que hacer (cable amarillo, naranja o blanco).
Además, los cables de cocodrilo no los podemos conectar directamente a los pines hembra del conector del servo, así que debemos recurrir a los cables Dupont.

Ahora sólo nos quedaría conectar correctamente los cables de cocodrilo de la Micro:bit a los cables Dupont para insertarlos en los pines del servomotor. Hazlo con cuidado y asegurándote de que las conexiones quedan firmes.
Llegados a este punto tendríamos nuestro circuito montado con los dos componentes principales. Este es un esquema conceptual de cómo quedaría hasta ahora:

Ten en cuenta que este montaje es un ejemplo conceptual, tú debes tomar tus propias decisiones y elegir el montaje que creas que mejor se ajusta a tus necesidades.
Y no olvides que debes aportar energía al circuito de alguna manera que debes elegir tú: usando el cable USB de la Micro:bit o utilizando un portapilas o una combinación de ambos.
Asumiendo que tu circuito está correctamente conectado, llega el momento más emocionante de todo: hacer que la placa hable con el servo.
Para eso hemos aprendido a programar, así que manos a la obra.
6. El programa
Antes de comenzar a construir nuestro programa, debemos activar una extensión específica para servomotores. Así que, nos dirigimos al panel de bloques, pulsamos sobre Extensiones y seleccionamos la que se llama Servos. Una vez hecho esto, ya tendremos nuestro panel de bloques para servo motores disponible:

Lo primero que debe hacer la placa con el servo (si lo recuerdas) es decirle que vamos a comunicarnos usando el Pin 0 (podrías usar el 1 o el 2 si quisieras) y que se sitúe en un ángulo de 90º cuando se inicie el programa. Para ello, podemos usar estos bloques:

Nuestro programa ha comenzado, hemos establecido la comunicación entre los dos componentes y hemos colocado el servo donde nos interesa. Ahora, y de manera indefinida (bloque para siempre), debemos ir comprobando el nivel de sonido que llega al sensor de la placa e ir moviendo el servo en consecuencia.
De momento, no sabemos cómo leer el nivel de sonido, pero lo que sí sabemos es que nuestra interfaz queremos que tenga tres niveles: verde (ruido normal), amarillo (ruido un poco alto) y rojo (ruido demasiado alto). Para ello podemos establecer una estructura condicional que sitúe el servo en las tres posiciones que nos interesan (revisa el apartado dedicado al servo motor si no recuerdas cuántos grados de giro tiene el servo):

Ahora sólo quedaría, indicar correctamente las condiciones. Si nosotros arrastramos al área de programación el bloque nivel de sonido, observamos que sobre la placa aparece una barrita que nos permite mover el nivel de ruido que en cada momento está recibiendo el sensor. Si te fijas, el nivel mínimo de ruido es 0 y el máximo 255. Sabiendo esto podemos decidir:
- Si el nivel de sonido es inferior a 100, consideramos que el ruido es asumible (zona verde de nuestra interfaz).
- Si el nivel de sonido está entre 100 y 150, consideramos que el ruido empieza a ser alto (zona amarilla de nuestra interfaz).
- Si el nivel de sonido es superior a 150, consideramos que el ruido es demasiado alto (zona roja de nuestra interfaz).
Tomadas las decisiones anteriores, solo nos queda trasladar las condiciones a los bloques:

Observa cómo funciona el servo cuando modificas los valores de sonido. Ten en cuenta que es posible que necesites colocar el servo de una manera u otra para que las indicaciones sean coherentes con tu interfaz y con el nivel de sonido que se está detectando en cada momento.
Dejo en tus manos la modificación del programa para que consigas reproducir un sonido (lo ideal sería una pista de audio con tu voz, que puedes grabar directamente en MakeCode) cuando el nivel de ruido sea demasiado alto.
Ahora tienes todas las herramientas, pistas e indicaciones necesarias para realizar un montaje y programación del circuito que resuelva la necesidad planteada en el proyecto.
7. Construcción de la interfaz
Bueno, tienes un circuito que funciona a la perfección, pero es muy poco glamuroso. Necesitamos crear una estructura para poderlo situar en cualquier aula y que todas las personas entiendan qué hace con un golpe de vista.
Para ello necesitamos construirle una interfaz a nuestro proyecto. Disponemos de estos materiales:
- Planchas de cartón.
- Cartulinas de colores.
- Pegamento.
- Tijeras.
Además, recuerda que tu interfaz se tiene que sostener sobre la vertical y no dejar visible ningún elemento electrónico.
Aquí especificaremos las medidas y distribución de elementos mínimos necesarios para construir una interfaz, pero debes tener en cuenta que es sólo un ejemplo. Tienes libertad para mejorarlo o cambiarlo todo lo que necesites, siempre que no utilices menos elementos de los indicados.
Partiremos de una plancha de cartón del tamaño aproximado de un folio A4 apaisado:

Ahora vamos a marcar sobre el cartón el espacio que ocuparán nuestros niveles de ruido. Para ello, localiza el punto medio del borde inferior del cartón y úsalo como punto central para trazar una circunferencia.

A continuación, necesitamos dividir nuestra media circunferencia en tantos sectores como niveles de sonido queramos mostrar en la interfaz. El número mínimo es tres, así que voy a trazar tres ángulos de 60º (si media circunferencia son 180º y lo quiero dividir en 3 partes, tengo que hacer 180º / 3) partiendo desde la base y utilizando el centro de la circunferencia como punto de referencia.

Ya puedes recortar las cartulinas de colores y pegarlas sobre cada uno de los tres sectores (piensa en el orden en que vas a situar los colores de tus niveles).
Además, debes tener en cuenta que necesitas un orificio para situar el eje del servo motor que moverá tu flecha indicadora. No te recomiendo que la sitúes muy pegada al borde de abajo, ni tampoco muy arriba. Una posición baja pero útil podría ser:

La estructura de nuestra interfaz está terminada, pero como queremos que se sostenga sobre la vertical, necesitamos idear algún mecanismo que la soporte. Existen muchas posibles soluciones para ello, aquí de dejo algunos ejemplos que podrían servirte de inspiración.
Ya solo resta que tires de creatividad y decores tu interfaz de la manera que consideres más interesante. Tienes libertad para diseñar la manecilla del indicador (flecha, línea, curva,…) y otros elementos decorativos (como el título del proyecto, iconos de altavoces, emojis, siluetas, luces,…) que seguro que mejoran notablemente la apariencia de tu proyecto.
El límite es tu imaginación, ¡sorpréndeme!