micro:bit

Conocer la placa MICRO:BIT, sus posibilidades didácticas
Retos - Retos avanzados - Bluetooth - Create IA

Objetivos y contenidos

CONTENIDOS:

OBJETIVOS

Conocer la placa MICROBIT, sus posibilidades didácticas realizando un completo conocimiento de la didáctica del pensamiento computacional y de la robótica para nivel de primaria-secundaria usando programación por bloques accesible a un amplio alumnado.

Pensamiento computacional

¿Dónde se encaja esta placa micro:bit? ¿Se puede comparar este robot con otros robots de otros cursos que hacemos desde CATEDU?

Esta es la hoja de ruta que proponemos, no se tiene que tomar al pie de la letra, pero intenta ayudar al profesorado que tenga una visión global de tanta oferta robótica:

Como se puede ver MICROBIT tiene la ventaja de ser una buena relación calidad/precio con muchas posibilidades y un amplio espectro de niveles.

Guía orientativa

Tenemos un grupo Telegram Robótica Educativa en Aragón, https://t.me/roboticaeducativaaragon

Lenguajes de programación

Micro:bit se puede programar :

Tipo de lenguaje Lenguaje Ventajas Inconvenientes En AULARAGON
BLOQUES

MAKECODE
https://makecode.microbit.org/

 

-Muy extendido
-Existen en Internet muchos recursos y ejemplos
-Con CretateAI podemos usar IA

-micro:bit
-micro:bit+car
-Smart Home
-Smart Agriculture
BLOQUES

SCRATCH+LearningML

https://learningml.org/lml-scratch/

-Se puede usar IA

-En vivo


Es el que proponemos en el curso de micro:bit en LearningML
BLOQUES

Classroom Microbit
https://classroom.microbit.org/

- Se puede crear una clase, enviar proyectos a los alumnos, corregir....

BLOQUES

Microblocks

https://microblocks.fun/

-Código abierto

BLOQUES

mBlock

-Permite usar multitud de extensiones Recomendamos usar la versión descargada no la online
CÓDIGO

PYTHON
https://python.microbit.org/

- Se usa todo el potencial del código - Curva de aprendizaje alta, no recomendado en primaria. Micro:bit y Python

Guía de los lenguajes de programación para robots

Tenemos un grupo Telegram Robótica Educativa en Aragón, https://t.me/roboticaeducativaaragon

Robotica y accesibilidad

1.- Introducción

Durante mucho tiempo la robótica fue patrimonio de personas y/o instituciones con alta capacidad económica (podían adquirir las placas con microcontroladores comerciales) y capacidad intelectual (podían entender y programar el funcionamiento de las mismas) siempre dentro de los límites establecidos por las marcas comerciales y lo que pudieran “desvelar” de su funcionamiento, vigilando siempre que la competencia no “robara” sus secretos y “copiara” sus soluciones.

Todo esto saltó por los aires en torno a 2005 con la irrupción de un grupo de profesores y estudiantes jóvenes, que decidieron romper con esta dinámica, tratando de poner a disposición de su alumnado microcontroladores económicamente accesibles y que les permitieran conocer su funcionamiento, sus componentes, e incluso replicarlos y mejorarlos. Nacía Arduino y el concepto de Hardware Open Source. Detrás de este concepto se encuentra la accesibilidad universal. En un proyecto Open Source todo el mundo puede venir, ayudar y contribuir, minimizando barreras económicas e intelectuales.

Arduino traslada al hardware un concepto ya muy conocido en el ámbito del software, como es el software open source o software libre.

opensource.png

Software libre

Cuando los desarrolladores de software terminan su creación, tienen múltiples posibilidades de ponerlo a disposición de las personas, y lo hacen con condiciones específicas especificadas en una licencia. Esta licencia es un contrato entre el creador o propietario de un software y la persona que finalmente acabará utilizando este software. Como usuarios, es nuestro deber conocer las condiciones y permisos con las que el autor ha licenciado su producto, para conocer bajo qué condiciones podemos instalar y utilizar cada programa.

Existen muchas posibilidades de licencias: software privativo, comercial, freeware, shareware, etc.. Nos centraremos aquí en la de software libre.

GNU (https://www.gnu.org) es una organización sin ánimo de lucro que puso una primera definición disponible de lo que es software libre: Software libre significa que los usuarios del software tienen libertad (la cuestión no es el precio). Desarrollaron el sistema operativo GNU para que los usuarios pudiesen tener libertad en sus tareas informáticas. Para GNU, el software libre implica que los usuarios tienen las cuatro libertades esenciales:

1. ejecutar el programa.
2. estudiar y modificar el código fuente del programa.
3. redistribuir copias exactas.
4. distribuir versiones modificadas.

En otras palabras, el software libre es un tipo de software que se distribuye bajo una licencia que permite a los usuarios utilizarlo, modificarlo y distribuirlo libremente. Esto significa que los usuarios tienen libertad de ejecutar el software para cualquier propósito, de estudiar cómo funciona el software y de adaptarlo a sus necesidades, de distribuir copias del software a otros usuarios y de mejorar el software y liberar las mejoras al público.

El software libre se basa en el principio de la libertad de uso, y no en el principio de la propiedad. Esto significa que los usuarios tienen la libertad de utilizar el software de la manera que deseen, siempre y cuando no violen las condiciones de la licencia. El software libre es diferente del software propietario, que es el software que se distribuye con restricciones en su uso y modificación. El software propietario suele estar protegido por derechos de autor y solo se puede utilizar bajo los términos y condiciones especificados por el propietario del software.

Recomendamos la visualización de este video para entender mejor el concepto.

Más adelante, entorno a 2015, en Reino Unido, surgiría también la placa BBC Micro:bit, con la misma filosofía de popularizar y hacer accesible en este caso al alumnado de ese país la programación y la robótica. También hablaremos de ella.

2.- ARDUINO o LA ROBÓTICA ACCESIBLE

Arduino es una plataforma de hardware y software libre.

Hardware libre

Esto significa que tanto la placa Arduino como el entorno de desarrollo integrado (IDE) son de código abierto. Arduino permite a los usuarios utilizar, modificar y distribuir tanto el software como el hardware de manera libre y gratuita, siempre y cuando se respeten las condiciones de las licencias correspondientes.

El hardware libre es un tipo de hardware cuya documentación y diseño están disponibles de manera gratuita y libre para su modificación y distribución. Esto permite a los usuarios entender cómo funciona el hardware y adaptarlo a sus necesidades, así como también crear sus propias versiones modificadas del hardware.

Arduino surge como solución al elevado precio de los microcontroladores allá por el año 2005. En el ámbito de la educación, los microcontroladores solo se utilizaban en la etapa universitaria, y su coste era tan elevado que muchos proyectos de fin de carrera se quedaban únicamente en prototipos virtuales ya que las universidades no podían proveer a cada estudiante con un microprocesador, contando además que en el propio proceso de experimentación lo más habitual era que una mala conexión hiciera que se rompieran. Otro gran inconveniente era la dificultad de la programación. Cada fabricante entregaba su manual de programación, lo que hacía que de unos a otros no hubiera un lenguaje estándar, y la consecuente dificultad de interpretación. Además, su programación era a bajo nivel en lenguaje máquina. Generar una simple PWM requería una ardua y minuciosa secuenciación que podía llevar varias horas hasta conseguir el resultado deseado. Por este motivo, el enfoque de Arduino desde el principio fue ser Open Source tanto en hardware como en software. El desarrollo del hardware fue la parte más sencilla. Orientado a educación, sufre algunas modificaciones frente a los microprocesadores existentes para hacer más fácil su manejo y accesibilidad a cualquier sensor o actuador. El mayor esfuerzo se entregó en todas las líneas de código que hacían posible que ya no hubiera que programar a bajo nivel gracias al IDE de Arduino que incluía bibliotecas y librerías que estandarizaban los procesos y hacían tremendamente sencillo su manejo. Ahora el alumnado para mover un motor, ya no tenía que modificar las tramas de bits del procesador una a una, sino que bastaba con decir que quería moverlo en tal dirección, a tal velocidad, o a equis grados.

Acabábamos de pasar de unos costes muy elevados y una programación muy compleja a tener una placa accesible, open source y de bajo coste que además hacía muy accesible su programación y entendimiento, características fundamentales para su implantación en educación, hasta tal punto que su uso ya no era exclusivo de universidades, sino que se extiende a la educación secundaria.

arduinosecundaria.png

Este hecho es fundamental para el desarrollo del Pensamiento Computacional en el aula observándose que su accesibilidad y beneficios son tales, que alcanzan a centros con alumnado de toda tipología como la aplicación del pensamiento computacional y robótica en aulas con alumnos de necesidades especiales. Una vez más, aparece el concepto de accesibilidad asociado a esta filosofía Open Source.

A este respecto, recomendamos la lectura de este interesante blog, que tiene por título: ROBOTIQUEAMOS...” Experiencia de aproximación a la robótica en Educación Especial (CPEE ÁNGEL RIVIÈRE). También recomendamos los trabajos robótica en Educación Especial (CPEE ÁNGEL RIVIÈRE):  http://zaragozacpeeangelriviere.blogspot.com/search/label/ROB%C3%93TICA

blogRobotiqueamos.jpg

Igualmente, la aparición de Arduino supone una gran facilidad para la aplicación de la robótica y la programación en la atención temprana, donde son numerosas sus aplicaciones desde ayudar a mitigar el déficit de atención en jóvenes autistas, hasta ayudar a socializar a los alumnos con dificultades para ello, o ayudar a alumnos de altas capacidades a desarrollar sus ideas.

Por otro lado su accesibilidad económica lo ha llevado a popularizarse en países de todo el mundo, especialmente en aquellos cuyos sistemas educativos no disponen en muchas ocasiones de recursos suficientes, lo que supone en la práctica una democratización del conocimiento y superación de brecha digital.

Filosofía del Arduino ver vídeo

Arduino y su IDE son la primera solución que aparece en educación con todas las ventajas que hemos enumerado, y esto hace que todos los nuevos prototipados y semejantes tengan algo en común, siempre son compatibles con Arduino

Para entender bien la filosofía de Arduino y  el hardware libre, os recomendamos este documental de 30 minutos. Arduino the Documentary

Scratch: software libre para el desarrollo del pensamiento computacional

Scratch es un lenguaje de programación visual desarrollado por el grupo Lifelong Kindergarten del MIT Media Lab. Scratch es un software libre. Esto significa que está disponible gratuitamente para todos y que se distribuye bajo una licencia de software libre, la Licencia Pública General de Massachusetts (MIT License). Esta licencia permite a los usuarios utilizar, modificar y distribuir el software de manera libre, siempre y cuando se respeten ciertas condiciones. Entre otras cosas, la licencia de Scratch permite a los usuarios utilizar el software para cualquier propósito, incluyendo fines comerciales. También permite modificar el software y distribuir las modificaciones, siempre y cuando se incluya una copia de la licencia y se indique que el software ha sido modificado. En resumen, Scratch es un software libre que permite a los usuarios utilizar, modificar y distribuir el software de manera libre y gratuita, siempre y cuando se respeten las condiciones de la licencia. De hecho, gracias a que está licenciado de esta forma, han surgido decenas de variaciones de Scratch para todo tipos de propósitos, eso sí, siempre educativos y relacionados con las enseñanzas de programación y robótica

3. BBC micro:bit y la Teoría del Cambio

BBC micro:bit, a veces escrito como Microbit o Micro Bit, es un pequeño ordenador del tamaño de media tarjeta de crédito, creado en 2015 por la BBC con el fin de promover el desarrollo de la robótica y el pensamiento computacional entre la población escolar del Reino Unido. Actualmente su uso está extendido entre 25 millones de escolares de 7 a 16 años de más de 60 países.

e74cc3a97963070daee67213f9ccf5268388bd01-790x635.webpTarjeta BBC micro:bit V1. Fuente: https://microbit.org. CC BY-SA 4.0.

Aunque el proyecto fue iniciado por la BBC, su desarrollo fue llevado a cabo por 29 socios tecnológicos de primera línea. Por ejemplo, la implementación del Bluetooth integrado en la tarjeta corrió a cargo de la fundación propietaria de la marca, Bluetooth SIG, una asociación privada sin ánimo de lucro.

El hardware y el software resultantes son 100% abiertos, y están gestionados por una fundación sin ánimo de lucro que comenzó a funcionar en el año 2016, la Micro:bit Educational Foundation. La fundación basa sus actuaciones en su Teoría del Cambio,

Teoría del cambio y más sobre microbit

Teoría del cambio puede resumirse en tres principios:

Para desarrollar sus principios, la fundación trabaja en tres líneas de acción:

Uno de los objetivos de la Micro:bit Educational Foundation es llegar a 100 millones de escolares en todo el mundo.

En correspondencia con las líneas de acción y con los principios expuestos, el sistema resultante es muy económico: tanto las placas como los accesorios producidos por terceras empresas tienen un precio muy contenido. Además, dado el carácter abierto del proyecto, están disponibles algunos clones totalmente compatibles, como Elecrow Mbits o bpi:bit. Estos clones son incluso más potentes y económicos que la placa original.

El universo micro:bit destaca por su alta integración de software y hardware: basta un clic de ratón para cargar las librerías necesarias para que funcione cualquier complemento robótico, como sensores, pantallas, tarjetas de Internet de las Cosas, robots, casas domóticas, etc.

La programación de la placa se realiza desde un ordenador a través de un navegador cualquiera, estando disponibles 12 lenguajes de programación. De nuevo, por ser un sistema abierto, existen múltiples soluciones de programación, aunque las más común es MakeCode.

MakeCode.pngCaptura de pantalla del editor MakeCode, https://makecode.microbit.org/#.

El sitio web MakeCode permite programar con bloques y también en Python y en Java, traduciendo de un lenguaje a otro instantáneamente. No se necesita ningún registro en la plataforma para poder programar.

Los programas también pueden guardarse descargados en el ordenador compilados en código de máquina. Al subir de nuevo el programa al editor, se realiza una decompilación automática al lenguaje de bloques, Python o Java. Los programas guardados en código de máquina se pueden cargar directamente en micro:bit, que en el escritorio de un ordenador se maneja como una simple unidad de memoria USB.

MakeCode contiene además múltiples recursos como tutoriales, vídeos, fichas de programación, cursos para el profesorado, ejemplos y propuestas de proyectos y experimentos, todo ello en varios idiomas y clasificado por edades desde los 7 años.

Otra solución muy usada para programar micro:bit es MicroPython, creada por Python Software Foundation, otra organización sin ánimo de lucro.

MicroCode permite que los más pequeños, a partir de los 6 años de edad, programen micro:bit mediante un sistema de fichas dispuestas en líneas de acción. Están disponibles un tutorial introductorio en 20 idiomas, una guía del usuario y muchos ejemplos. El proyecto es de código abierto.

Micro:bit también es programable en Scratch con sólo añadir una extensión al editor.

Todos los entornos de desarrollo descritos disponen de un simulador de micro:bit, por lo que ni siquiera resulta necesario disponer de una tarjeta física para aprender a programar.

Una vez realizada la programación, la placa y sus complementos pueden funcionar desconectados del ordenador por medio de un cargador de móvil, una batería externa o un simple par de pilas alcalinas.

Versiones y características de micro:bit

A pesar de su pequeño tamaño, micro:bit es un sistema potente. Existen dos versiones de la placa. La más moderna, llamada micro:bit V2, tiene las siguientes características:

4.- LA IMPORTANCIA DEL OPEN SOURCE / CÓDIGO ABIERTO EN EDUCACIÓN

La creación, distribución, modificación y redistribución del hardware y software libre así como su utilización, están asociados a una serie de valores que deberían ser explicados en la escuela a nuestros alumnos para dar una alternativa a la versión mercantilista de que cualquier creación es creada para obtener beneficios económicos.

En GNU, pusieron especial énfasis en la difusión del software libre en colegios y universidades, promoviendo una serie de valores fundacionales:

Valores GNU
 Compartir

   El código fuente y los métodos del hardware y software libre son parte del conocimiento humano. Al contrario, el hardware software privativo es conocimiento secreto y restringido. El código abierto no es simplemente un asunto técnico, es un asunto ético, social y político. Es una cuestión de derechos humanos que la personas usuarias deben tener. La libertad y la cooperación son valores esenciales del código abierto. El sistema GNU pone en práctica estos valores y el principio del compartir, pues compartir es bueno y útil para el progreso de la humanidad. Las escuelas deben enseñar el valor de compartir dando ejemplo. El hardware y software libre favorece la educación pues permite compartir conocimientos y herramientas.

Responsabilidad social

     La informática, electrónica, robótica... han pasado a ser una parte esencial de la vida diaria. La tecnología digital está transformando la sociedad muy rápidamente y las escuelas ejercen una influencia decisiva en el futuro de la sociedad. Su misión es preparar al alumnado para que participen en una sociedad digital libre, mediante la enseñanza de habilidades que les permitan tomar el control de sus propias vidas con facilidad. El hardware y el software no debería estar bajo el poder de un desarrollador  que toma decisiones unilaterales que nadie más puede cambiar.

Independencia

      Las escuelas tienen la responsabilidad ética de enseñar la fortaleza, no la dependencia de un único producto o de una poderosa empresa en particular. Además, al elegir hardware y software libre, la misma escuela gana independencia de cualquier interés comercial y evita permanecer cautiva de un único proveedor. Las licencias de hardware y software libre no expiran

Aprendizaje

        Con el open source los estudiantes tienen la libertad de examinar cómo funcionan los dispositivos y programas y aprender cómo adaptarlos si fuera necesario. Con el software libre se aprende también la ética del desarrollo de software y la práctica profesional.

Ahorro

        Esta es una ventaja obvia que percibirán inmediatamente muchos administradores de instituciones educativas, pero se trata de un beneficio marginal. El punto principal de este aspecto es que, por estar autorizadas a distribuir copias de los programas a bajo costo o gratuitamente, las escuelas pueden realmente ayudar a las familias que se encuentran en dificultad económica, con lo cual promueven la equidad y la igualdad de oportunidades de aprendizaje entre los estudiantes, y contribuyen de forma decisiva a ser una escuela inclusiva.

Calidad

        Estable, seguro y fácilmente instalable, el software libre ofrece una amplia gama de soluciones para la educación.

Para saber más

En los años 90, era realmente complicado utilizar un sistema operativo Linux y la mayoría de la cuota del mercado de los ordenadores personales estaba dominada por Windows. Encontrar drivers de Linux para el hardware que tenía tu equipo era casi una quimera dado que las principales compañías de hardware y de software no se molestaban en crear software para este sistema operativo, puesto que alimentaba la independencia de los usuarios con respecto a ellas mismas.

Afortunadamente, y gracias a la creciente presión de su comunidad de usuarios, estas situaciones pertenecen al pasado, y las compañías fabricantes de hardware han tenido que variar el rumbo. Hoy en día tenemos una gran cantidad de argumentos en los que nos podemos basar para dar el salto hacia cualquier sistema operativo basado en Linux. Tal y como podemos leer en educacionit.com, podemos encontrar las siguientes ventajas:

Por estas razones, el software libre se ha expandido por toda la comunidad educativa en los últimos años de manera exponencial. Un buen ejemplo de lo que estamos hablando es Bookstack, este sistema de edición de contenidos para cursos que utiliza Aularagón así como el uso de Moodle como plataforma de enseñanza y aprendizaje. En cuanto a sistema operativo para ordenadores, en Aragón disponemos de nuestra propia distribución Linux: Vitalinux EDU. Tal y como podemos leer desde su página web: Vitalinux EDU (DGA) es la distribución Linux elegida por el Gobierno de Aragón para los centros educativos. Está basada en Vitalinux, que se define como un proyecto para llevar el Software Libre a personas y organizaciones facilitando al máximo su instalación, uso y mantenimiento. En concreto Vitalinux EDU (DGA) es una distribución Ubuntu (Lubuntu) personalizada para Educación, "tuneada" por los requisitos y necesidades de los propios usuarios de los centros y adaptada de forma personalizada a cada centro y a la que se ha añadido una aplicación cliente Migasfree. De ésta forma, obtenemos:

  1. Un Sistema Ligero. Permite "revivir" equipos obsoletos y "volar" en equipos modernos. Esto garantiza la sostenibilidad de un sistema que no consume recursos de hardware innecesariamente ni obliga a la sustitución del hardware cada poco tiempo en esa espiral de obsolescencia programada en la que se ha convertido el mercado tecnológico.
  2. Facilidad en la instalación y el uso del sistema mediante programas personalizados.
  3. Un Sistema que se adapta al centro y/o a cada aula o espacio, y no un centro que se adapta a un Sistema Operativo.
  4. Gestión de equipo y del software de manera remota y desatendida mediante un servidor Migasfree.
  5. Inventario de todo el hardware y software del equipo de una forma muy cómoda.
  6. Soporte y apoyo de una comunidad que crea, comparte e innova constantemente.



Kit de préstamo de CATEDU

Si haces este curso en Aularagón, te podemos dejar este kit para que puedas hacer cómodamente todos los retos que se proponen:

La placa microbit+cable USB+ accesorio pilas (las pilas las tienes que poner tú)

2025-11-28 12_16_39-WhatsApp.png

Y el vestible para que puedas probar los retos de usarlo como muñequera, Create AI, etc...

2025-11-28 12_15_26-Greenshot.png

Introducción

Introducción

Aprender pensando y aprender haciendo

La introducción del pensamiento computacional en los currículos es tan reciente que no existe una definición precisa ni del concepto ni de su alcance. Esta cuestión comentada por Serrano (2022) es resuelta por el mismo autor, quien proporciona una definición operativa generada desde una perspectica histórica: 

El pensamiento computacional está compuesto por un conjunto de procesos de pensamiento involucrados en la formulación de problemas para que sus soluciones puedan representarse como pasos computacionales y algoritmos.

Según esta definición el pensamiento computacional tiene como propósito resolver problemas. Un problema parte de una situación nueva en la que el proceso de resolución es desconocido. Es por ello que la simple memorización de procedimientos para automatizar una tarea, no pone en juego los procesos mentales propios del pensamiento computacional.

Los procesos mentales básicos involucrados en el pensamiento computacional son:

Pensamiento computacional.pngFases del pensamiento computacional. Elaboración propia

Si la computación permite aprender pensando, la robótica educativa contribuye a aprender haciendo. Por este motivo, la robótica es denominada computación física. La robótica materializa el algoritmo, que puede de esta forma interactuar con el mundo real.

Más complicado resulta determinar para qué introducir el pensamiento computacional en el aula. Serrano (2022) cita dos corrientes principales, la que limita su desarrollo al ámbito del desarrollo de la competencia digital del alumnado y la que sostiene que el pensamiento computacional puede ser trabajado en todas las disciplinas con el objetivo de contribuir a la mejora global de los aprendizajes.

La fundación micro:bit sigue el primer enfoque, basando su visión en el riesgo de perpetuación y de profundización de las desigualdades sociales que producen las tecnologías digitales. Con su Teoría del Cambio (Micro:bit Educational Foundation, 2023c) pretende que todas las personas desarrollen habilidades digitales que les permitan comprender, participar y trabajar en el mundo moderno. Para ello ha desarrollado productos como micro:bit, alianzas con socios tecnológicos, contenidos y programas educativos con el objetivo de llegar a 100 millones de estudiantes en 2025.

Alegoría microbit.jpegAlegoría de BBC micro:bit generada con IA de Bing.

El segundo enfoque tiene en cuenta el perfecto encaje del pensamiento computacional en las metodologías activas que se derivan de la corriente pedagógica construccionista, que postula que el sujeto construye su conocimiento a través de la acción orientada a la creación. Dos metodologías muy adecuadas para introducir el pensamiento computacional son el aprendizaje basado en problemas y el aprendizaje basado en juegos.

Por otro lado, las actividades de robótica y de pensamiento computacional contribuyen a desarrollar toda una serie de habilidades secundarias o periféricas que no conviene desdeñar. Estas habilidades comunes a todas las metodologías activas son, entre otras, la creatividad, el espíritu crítico, la autonomía personal y las capacidades comunicativas.

Dado el gran número de personas y países involucrados en los programas de micro:bit, diversas organizaciones han realizado estudios de impacto desde los primeros años. Por ejemplo, un estudio de la BCC (2017) encontró que tras un año con micro:bit, la mayoría del alumnado de 11 años de edad consideraba que programar era fácil y que cualquiera podía hacerlo. Además se produjo un incremento significativo de estudiantes que consideraban que las TIC podían ser una opción profesional para su futuro. Este incremento fue del 70% entre las chicas. En cuanto al profesorado, alrededor de un 80% valoró muy positivamente la introducción de micro:bit en el aula.

Introducción

¿Qué es la micro:bit?

La placa micro:bit

Micro:bit es un pequeño ordenador del tamaño de media tarjeta de crédito creado inicialmente por la BBC (British Broadcasting Corporation) en 2015 con el fin de promover el desarrollo de la robótica y el pensamiento computacional entre la población escolar de entre 11 y 15 años del Reino Unido.

Actualmente su uso está extendido entre 39 millones de escolares de más de 60 países (Micro:bit Educational Foundation, 2023) con más de 5 millones de tarjetas distribuidas por todo el mundo  (Microes.org, 2023).

Corazón.gifPlaca BBC micro:bit. Micro:bit Educational Foundation CC BY-SA 4.0

El hardware es 100% libre, y está gestionado por una fundación sin ánimo de lucro fundada en 2016, la micro:bit Educational Foundation.

Micro:bit no es el primer proyecto de alfabetización informática de la BBC. Ya en 1981 produjo el BBC Micro, un ordenador de 8 bit programable mediante varios lenguajes de programación, entre ellos un lenguaje BASIC muy avanzado para la época. De este ordenador llegaron a venderse 1,5 millones de unidades, principalmente en el Reino Unido. Fue el ordenador con el que las escuelas británicas comenzaron la enseñanza de la informática.

640px-BBC_Micro_Front_Restored.jpgBBC Micro. Dominio público.

Volviendo a micro:bit, el desarrollo del proyecto ha sido llevado a cabo por 29 socios tecnológicos de primera línea. Por ejemplo, la implementación del Bluetooth corrió a cargo de la fundación propietaria de la marca, Bluetooth SIG, asociación privada sin ánimo de lucro.

Micro:bit es económico; tanto las placas como los accesorios producidos por terceras empresas tienen un precio muy contenido.

El sistema destaca por su alta integración de software y hardware: basta un clic de ratón para cargar las librerías necesarias para que funcione cualquier complemento robótico, como sensores, pantallas, tarjetas de Internet de las Cosas, robots, casas domóticas, etc.

Programación de micro:bit

La programación de la placa se realiza desde un ordenador a través de un navegador cualquiera, estando disponibles 12 lenguajes de programación. Dado su carácter abierto, existen múltiples soluciones de programación, aunque las más común es MakeCode.

El sitio MakeCode permite programar con bloques y también en Python y en Java, traduciendo de un lenguaje a otro instantáneamente. No se necesita ningún registro en la plataforma para poder programar. Nuestros programas se guardan en el servidor de MakeCode siempre que no utilicemos nuestro navegador de Internet en modo incógnito o que no tengamos activado el borrado automático de cookies.

Makecode.jpgSitio web de Make Code. Captura de pantalla

Los programas también pueden guardarse descargados en el ordenador compilados en código de máquina. Al subir de nuevo el programa en el editor, se realiza una decompilación automática al lenguaje de bloques, Python o Java. Los programas guardados en código de máquina se pueden cargar directamente en micro:bit, que en el escritorio de un ordenador aparece como una simple unidad USB.

MakeCode contiene además múltiples recursos como tutoriales, vídeos, fichas de programación, cursos para el profesorado, ejemplos y propuestas de proyectos y experimentos en varios idiomas.

Otra solución muy usada para programar micro:bit es MicroPython, creada por Python Software Foundation, otra organización sin ánimo de lucro.

MicroCode permite que los más pequeños, a partir de los 6 años de edad, programen micro:bit mediante un sistema de fichas dispuestas en líneas de acción. Están disponibles un tutorial introductorio en 20 idiomas, una guía del usuario y muchos ejemplos. El proyecto es de código abierto.

microcode.jpgEjemplo de programa con MicroCode. Captura de pantalla

Micro:bit también es programable en Scratch con sólo añadir una extensión al editor.

Todos los entornos de desarrollo descritos disponen de un simulador de micro:bit, por lo que ni siquiera resulta necesario disponer de una tarjeta física para aprender a programar.

Características de micro:bit

Características de micro:bit V2:

    • Procesador de 64 MHz.
    • 512 KB de RAM Flash y 128 KB de RAM.
    • Matriz de 5 x 5 LED rojos.
    • Dos pulsadores mecánicos y un tercer pulsador de apagado y reset.
    • Pulsador táctil en el logotipo.
    • Micrófono y altavoz.
    • Acelerómetro y compás.
    • Sensores de luz y de temperatura.
    • Bluetooth de bajo consumo.
    • Alimentación a 3 V o por USB.
    • 25 pines de entradas y salidas.
    • GPIO, PWM, I2C y SPI.
    • 200 mA disponibles en las salidas para alimentar accesorios.

La placa micro:bit  que se encontraba disponible en el mercado antes de la introducción de la V2 era la denominada V1.5. Se distingue de la V2 en que carece de micrófono, de altavoz y de pulsador táctil en el logo. Internamente tiene un procesador menos potente y menos memoria RAM. Tampoco tiene piloto de encendido ni puede apagarse desde el pulsador de reset.

Microbit 3d by GmedranoTIC on Sketchfab

Introducción

Descripción de la placa micro:bit

Presentación de micro:bit

Micro:bit es una pequeña placa de circuito impreso de 52 mm x 42 mm, dimensiones que corresponden aproximadamente al tamaño de media tarjeta de crédito. El circuito dispone sus componentes electrónicos al aire, sin ninguna carcasa, y se encuentran soldados por las dos caras de la placa.

La placa micro:bit es segura para su uso con el alumnado de 8 a 14 años (Micro:bit Educational Foundation, 2023b).  Ha sido ampliamente probada y cumple con todos los requisitos de seguridad y compatibilidad medioambiental exigibles. En el siguiente enlace se muestran todas las normas y estándares que cumple la tarjeta: https://microbit.org/compliance/

El siguiente vídeo, pensado para personas sin conocimientos de robótica, proporciona una primera idea acerca de las posibilidades y del manejo de la placa micro:bit.

Kits

Micro:bit se encuentra disponible comercialmente como placa simple (micro:bit single) o como parte de un kit. El coste medio en el año 2023 de una placa es de unos 22 €. Por un precio un poco más elevado se puede adquirir un kit más completo, cuyo contenido está pensado como un equipo de iniciación.

Kit básico.JPGContenido de un kit de inicio. Elaboración propia

El kit presentado en la imagen contiene:

Componentes electrónicos integrados en la placa

El anverso de la placa en su versión 2 tiene el aspecto mostrado de la figura.

Anverso con partes.jpgAnverso de la placa BBC micro:bit. Elaboración propia

La parte marcada con el número 1 es una fila de contactos o pines que permiten conectar la placa a múltiples accesorios, como altavoces, robots, sensores o actuadores. Dispone de 25 pines, 5 de ellos de anillo. Estos últimos están pensados para conectar cables por medio de pinzas o bananas.

El número 2 corresponde al pulsador A. En el lado derecho de la placa existe otro pulsador B. Ambos pulsadores son programables y permiten al usuario comunicarse con micro:bit.

El número 3 apunta al pulsador táctil. Se trata de una novedad de la versión 2 de micro:bit. El pulsador puede distinguir entre pulsaciones rápidas y pulsaciones prolongadas.

El sensor marcado con el número 4 es un micŕofono. Es otra novedad de la versión 2 de la placa. Aunque puede grabar sonido, las grabaciones resultan de una calidad muy pobre. Es por ello que el micrófono se usa sobre todo para medir el ruido ambiental. Un diodo LED de color rojo indica que el micrófono está en funcionamiento.

La matriz de 25 LED rojos está marcada con el número 5. Se usa para representar mensajes de texto e iconos. Su intensidad es ajustable. Sirve también como sensor del nivel de luz ambiental.

El reverso de la placa es un poco más complejo. Aquí se encuentran soldados los dispositivos que permiten el funcionamiento de micro:bit. Se trata del procesador, de los sensores y de los circuitos integrados que proporcionan funcionalidades como la comunicación USB o Bluetooth.

Reverso con partes.jpgReverso de la placa BBC micro:bit. Elaboración propia

El circuito número 6 es un acelerómetro y un compás. Este dispositivo permite medir aceleraciones y giros, así como campos magnéticos.

El componente 7 es un pequeño zumbador que puede reproducir tonos y sonidos. Su potencia es muy baja, pero micro:bit puede también conectarse a un altavoz externo. 

El procesador es el circuito marcado con el número 8. Además contiene un sensor de temperatura.

La antena Bluetooth se indica con el número 9. Gracias al Bluetooth incorporado, micro:bit puede enviar y recibir datos por radio a cortas distancias.

Cuando el LED de color rojo 10 está encendido indica que la placa está conectada a una fuente de alimentación. Micro:bit puede ser alimentado por un ordenador o por una batería externa través de un cable USB o bien por un par de pilas.

La placa puede comunicarse con un ordenador mediante el conector micro USB 11. Mediante esta conexión micro:bit puede ser programado y también puede enviar al ordenador los datos que recoja con sus sensores.

El LED ámbar 12 parpadea cuando la placa está conectada a un ordenador y se encuentra emitiendo o recibiendo datos.

El pulsador 13 se usa para reiniciar el programa contenido en la placa. Una pulsación prolongada apaga micro:bit, pero sólo si la placa es de la versión 2.

El conector JST 14  permite conectar el portapilas para alimentar la placa con dos pilas alcalinas de 1,5 V. También se pueden usar pilas recargables; las clásicas pilas recargables de NiMH o níquel-hidruro metálico que se venden en algunos supermercados hacen que tanto micro:bit como sus accesorios funcionen sin problemas.

En la versión 2 existe un botón para apagar

2025-01-23 14_16_36-WhatsApp.png

Introducción

Accesorios para micro:bit

Micro:bit puede ser expandida con múltiples accesorios fabricados por empresas asociadas. Los sensores, las placas de expansión o los robots se acoplan a la tarjeta y se programan de forma simple e intuitiva. También es posible conectar micro:bit a dispositivos no pensados específicamente para la placa, como altavoces o sensores autofabricados, al estilo de Makey Makey. En estos casos es muy conveniente disponer de cables de conexión con pinzas de cocodrilo. Las pinzas se conectan a los pines circulares números 0, 1 y 2 y a los pines GND (masa de alimentación) y 3V (salida de alimentación de 3 volt).

Cables.JPG

Pinzas de cocodrilo conectadas a micro:bit V2. Elaboración propia

Debemos tener cuidado de no cortocircuitar los pines GND y 3V.

Las fundas de plástico tienen un precio muy bajo y protegen la placa eficazmente, pero hay que tener cuidado de adquirirlas de color transparente, o el sensor de luz podría no funcionar.

Funda.JPG

Funda para micro:bit V2. Elaboración propia

Quizás los accesorios más potentes sean las placas de expansión. En la figura se muestra una placa IoT (Internet de las Cosas) del fabricante Elecfreaks. La tarjeta micro:bit se inserta directamente en la ranura azul. La placa dispone de un reloj de cuarzo alimentado por una pila de litio de larga duración, de un módulo de comunicación wifi y de conectores de pines (GVS) para añadir sensores. El precio de la placa ronda los 20€ en 2023.

Los terminales GVS se emplean para conectar sensores y actuadores. La G se refiere al terminal de masa (polo negativo, marcado en negro), la V al terminal de alimentación (polo positivo, marcado en rojo) y la S (marcada en amarillo) al terminal que recoge la señal del sensor o del actuador.

Placa IoT.JPG

Placa IoT de Elecfreaks. Elaboración propia

Los sensores vienen generalmente agrupados en kits. La figura es un kit de Elecfreaks orientado a actividades relacionadas con la agricultura. Además de una placa IoT para monitorizar a distancia nuestros cultivos, también hay sensores de humedad del suelo, de humedad ambiental, de lluvia, de luz y de temperatura, además de un servo para abrir y cerrar ventanas, un sensor de ultrasonidos para detectar intrusos y una pantalla OLED para mostrar información. El precio del kit es de unos 60€ en 2023.

Agricultura.JPG

Kit de agricultura de Elecfreaks. Elaboración propia

Algunos accesorios añaden grandes funcionalidades, como el reproductor de audio mp3 de la fotografía. Incorpora un altavoz de más calidad y un lector de tarjetas micro SD. La cantidad de archivos reproducibles sólo está limitada por la capacidad de la tarjeta.

Reproductor mp3.JPG

Reproductor de audio en formato mp3. Elaboración propia

Los robots como Cute Bot, disponen de dos ruedas controlables individualmente para ajustar la velocidad y la dirección. Además incorporan sensores para el seguimiento de líneas, luces de colores, sensores de distancia para evitar obstáculos y sensores de infrarrojos para el control con mandos a distancia. Su precio en 2023 es de unos 35€.

Cute Bot.JPGRobot Cute Bot de Elecfreaks. Elaboración propia

El Maqueen es también muy parecido ver comparativa en https://libros.catedu.es/books/microbit-car/page/cars-para-microbit

El brazo manipulador de la fotografía se conecta a pines GVS como los de una placa de expansión o como los de un robot. Abre y cierra las pinzas gracias a un servo incorporado y es compatible con juegos de construcción de bloques.

Brazo cutebot.JPG

Brazo manipulador. Elaboración propia

Es posible encontrar achivos para imprimir accesorios en 3D en repositorios como Thingiverse. En la fotografía se muestra una cajita de plástico para proteger la placa micro:bit y contener la caja portapilas.

Caja Thingiverse.JPG

Caja impresa en 3D para micro:bit según diseño de University of Bristol. CC BY-NC. Elaboración propia

Introducción

El entorno de trabajo de MakeCode

El punto de partida para el estudio de un lenguaje de programación pasa inevitablemente por los lenguajes gráficos o de bloques que facilitan su estudio al mostrar de forma visual las instrucciones del algoritmo programado. (Morales, 2023)

Vamos a utilizar MakeCode ofrece un entorno integrado, simple e intuitivo de codificación por bloques. Hay que decir que en el entorno de MakeCode también están disponibles los lenguajes Java y Python, con la ventaja de que un programa desarrollado mediante bloques puede ser traducido instantáneamente a cualquiera de los otros dos lenguajes. 

Aquí tienes un esquema de dónde se sitúa Makecode, encaja dentro de los programas de bloque se se carga en la placa

2025-11-30 10_24_40-ESQUEMA LENGUAJES PROGRAMACIÓN - PowerPoint.png

Para acceder al entorno basta con abrir en un navegador cualquiera el enlace: https://makecode.microbit.org/. Si nuestro navegador tiene desactivadas las cookies o navega en modo incógnito, aparecerá un mensaje de advertencia:

Advertencia guardado automático.jpgPulsando sobre el botón de continuar aparecerá la ventana principal de MakeCode. Para iniciar el entorno de programación habremos de pulsar sobre el botón de nuevo proyecto:

Nuevo proyecto.jpgMakeCode nos pedirá seguidamente dar un nombre cualquiera al proyecto y pulsar el botón de crear, tras lo cual se abrirá la ventana del editor.

Entorno MakeCode.jpg

Entorno Microsoft MakeCode. Captura de pantalla

Para trabajar con MakeCode no se requiere registro. No obstante, pulsando sobre el icono de la esquina superior derecha, situado en la barra de herramientas, es posible acceder a MakeCode desde una cuenta de Google o de Microsoft. Esta característica permite guardar en la nube los diseños realizados y acceder a ellos desde cualquier ordenador.

Podemos ajustar el idioma de la interfaz pulsando sobre la rueda dentada de la esquina superior derecha. Están disponibles 33 idiomas, incluyendo el español.

El panel de la izquierda representa el anverso de una placa micro:bit. Se trata de un simulador, que mostrará en tiempo real el efecto del programa en desarrollo. Nótese que no es necesario disponer de una placa real para realizar los primeros pasos en programación con micro:bit.

Con el puntero del ratón se puede interactuar con la placa y pulsar sus botones, agitarla o cambiar las condiciones simuladas de luz o de ruido. Por otro lado, los controles situados bajo la placa nos permiten:

Controles simulador.jpg

El panel central es una caja de herramientas en forma de menú desplegable con todos los bloques de programación disponibles. Los bloques pueden ser arrastrados directamente con el ratón desde el menú. Cada color del menú se identifica con un tipo de acción o de estructura de control. Por ejemplo, el color verde se reserva para los bloques que permiten ejecutar acciones repetitivas o bucles.

Menú bucles.jpg

La caja de búsqueda colocada sobre el menú desplegable es muy útil para encontrar rápidamente el bloque más adecuado para realizar la acción deseada en cada momento.

El panel de la derecha es el área de programación. Aquí se escriben los programas arrastrando y encajando los bloques de código. Cuando se abre el navegador aparecen por defecto dos bloques azules de eventos del menú básico:

Pulsando con el botón derecho del ratón sobre un bloque se desplegará un menú contextual que dará varias opciones, como duplicar, borrar u obtener ayuda sobre el uso del bloque.CMenú contextual bloques.jpg

Al colocar el puntero del ratón sobre un bloque, el editor mostrará una etiqueta de ayuda con una breve explicación sobre la función del bloque. 

Hints.png

https://makecode.microbit.org/reference contiene explicaciones detalladas de los bloques de MakeCode.

En la parte inferior de la ventana de MakeCode se dispone la barra de herramientas, con botones para realizar acciones como descargar el programa en un placa micro:bit conectada al ordenador, guardar el programa en nuestro ordenador o en un repositorio en línea, hacer y deshacer y ampliar o reducir la imagen.

Introducción

Nuestro primer programa

El primer programa que se realiza cuando se comienza a aprender un nuevo lenguaje consiste casi siempre en presentar un saludo por pantalla. Micro:bit es más original, puesto que propone como primer programa un corazón palpitante.

Vamos a combinar el saludo inicial con el corazón. De esta forma ilustraremos el funcionamiento de los bloques de eventos al inicio y para siempre.

Se trata de seguir los pasos explicados en la página anterior y crear un programa llamado Hola. Tras la apertura del editor pulsaremos sobre el menú Básico y arrastraremos y encajaremos los bloques para configurar el siguiente programa:Hola.jpg

Para escribir el texto ¡Hola! basta con hacer clic sobre la caja blanca del bloque mostrar cadena. De igual forma, los iconos de los bloques mostrar icono y los números de los bloques pausa (ms) pueden seleccionarse pulsando sobre las flechas, acción que despliega menús de selección.

Desplegable de bloque.jpg

Como en el caso de la caja de texto, también puede teclearse directamente el número de milisegundos del bloque pausa (ms).

¿Qué hace el programa? Cuando se enciende la placa, el algoritmo de inicio mostrará una vez mediante la matriz de LED la cadena de texto "¡Hola!". Como la pantalla es muy pequeña, micro:bit deslizará el texto horizontalmente, de derecha a izquierda.

Seguidamente, el algoritmo principal mostrará en pantalla el icono de un corazón grande y entrará en pausa 500 milisegundos, es decir, medio segundo. Pasado este tiempo, micro:bit mostrará un corazón pequeño y esperará otro medio segundo. Este algoritmo se ejecutará indefinidamente hasta que se apague la placa, se pulse el botón de reinicio o se acaben las pilas. El efecto visual será el de un corazón palpitante.

Nada más terminar de colocar el último bloque, el simulador de MakeCode mostrará en pantalla el resultado del programa en ejecución. Para reiniciar el programa hay que pulsar sobre el icono de reinicio, situado justo bajo el dibujo de la placa micro:bit.

Saludo.gif

Cargar el programa en micro:bit

Hay que conectar primero la placa al ordenador por medio del cable USB. Después de unos instantes, el sistema operativo, (Linux, Windows o MacOS) reconocerá a la tarjeta micro:bit conectada como si se tratase de una unidad USB con el nombre MICROBIT.

Microbit USB Mint.jpgLa unidad Micro:bit en el escritorio de Linux Mint

Si la tarjeta es nueva, llevará cargado de fábrica un programa de demostración que empezará a ejecutarse nada más ser conectada al puerto USB. El programa mostrará mensajes, iconos en movimiento y sonidos y pedirá al usuario que calibre el compás magnético.

METODO RÁPIDO: EMPAREJAMIENTO (recomendable)

La primera vez que le damos a descargar, nos pide que conectemos la MICRO:BIT

2025-11-02 19_03_44-WhatsApp.png

La primera vez nos muestra la opción de EMPAREJAR 

2025-11-02 19_04_58-Greenshot.png

Nos pregunta por la tarjeta que tiene que estar conectada al USB

2025-11-02 19_06_36-Greenshot.png

Una vez emparejado, ya sale la opción de descargar

2025-11-02 19_08_18-Greenshot.png

Empieza a cargarse 

2025-11-02 19_09_02-Greenshot.png

Y YA ESTA

🥳🥳🥳 La siguiente vez que utilices esa micro:bit automáticamente pasa a descargar de forma muy rápida. 

METODO QUE NO FALLA : DESCARGAR COMO ARCHIVO Y COPIAR Y PEGAR EN LA NUEVA UNIDAD USB CREADA

Seguidamente hay que pulsar sobre el botón Descargar, acción que abrirá el diálogo de guardado de archivos del sistema operativo. Bastará con seleccionar la unidad MICROBIT y confirmar la descarga. 

Descargar.jpg

Si tienes Vitalinux, te recomendamos visitar https://libros.catedu.es/books/vitalinux-y-robotica/page/r8-microbit

Mientras dure la transferencia de datos, el LED ámbar situado junto al conector USB de micro:bit parpadeará rápidamente, quedando fijo cuando el programa haya sido transferido.

La transferencia de archivos a micro:bit lleva algo de tiempo, especialmente si el programa es largo. Tras la transferencia, el programa empezará a ejecutarse inmediatamente sobre la tarjeta micro:bit.

La desventaja es que es un método LENTO y no se reduce la velocidad en los siguientes intentos, no como en el método anterior

¿Y ahora qué?

Pues simplemente la placa ejecutará el programa cargado cuando se le alimente.

Sólo es posible cargar un programa a la vez en micro:bit, por lo que cada nuevo programa se reescribe sobre el anterior.

Si se desea que micro:bit funcione desconectado del ordenador, simplemente hay que alimentarlo por medio de la caja de pilas o mediante una batería externa o un cargador USB. El programa se ejecutará de igual forma, pues se encuentra guardado en la memoria de la placa.

embedded-image-aT6h3zXl.jpeg

Introducción

Kits que amplían la microbit

Desde CATEDU recomendamos estos kits 

SMART HOME KEYSTUDIO

Recomendamos este kit SMART HOME PARA MICRO:BIT que está en un curso en AULARAGÓN en este enlace https://libros.catedu.es/books/smart-home-para-microbit

smarthomemicrobit.png

Agricultura inteligente

Una alternativa a la casa domótica es una granja : https://tienda.bricogeek.com/kits-microbit/1666-kit-agricultura-inteligente-para-microbit.html

2025-05-13 12_11_19-Kit agricultura inteligente para Micro_bit Elecfreaks EF08254 _ BricoGeek.com.png

Pero hay que añadirle la granja : https://tienda.bricogeek.com/kits-microbit/1792-granja-de-carton-para-iot-con-microbit.html

2025-05-13 12_11_45-Granja de cartón para IoT con Micro_bit Elecfreaks EF08269 _ BricoGeek.com.png

Retos con micro:bit

Retos con micro:bit

Panel LED

La tarjeta consta de 25 LEDs de color rojo, estos se pueden programar de forma independiente. Permite mostrar números, letras e imágenes. El sistema está preparado para desplazarse de forma automática en el supuesto de que no quepan los caracteres a mostrar.

Micro bit position des DEL By Ugopedia [CC BY-SA 4.0 ], from Wikimedia Commons

Reto Hola Mundo.

Cuando se aprende a programar, se llama “Hola Mundo” al primer programa que se crea. Este código imprime el texto «¡Hola Mundo!» en un dispositivo de visualización.

Objetivo.

Al conectar la micro:BIT, se debe mostrar el texto «¡¡¡Hola Mundo!!!» en el panel LED de la tarjeta.

Descripción del código.

Se propone usar el evento al iniciar, situado en la categoría Básico. Este bloque permite ejecutar el código introducido, cuando se inicia la micro:BIT

A continuación se usará el bloque mostrar cadena, también localizado en la categoría Básico e introducir el texto “¡¡¡ Hola Mundo !!!”. Este bloque permite mostrar caracter a caracter, el texto introducido.

El código quedará de la siguiente manera.

De forma inmediata comenzará a leerse en el panel LED la cadena de texto introducida. El texto no cabe en su totalidad por lo que este se desplazará de forma automática.

Simulador

Lo bueno que tiene el editor es que permite compartirlo y embeberlo en una página web. Aquí tienes el resultado de embeber el anterior código:

Propuesta.

Modificar el código, para que se muestre el nombre del programador.

Reto Animando los iconos.

La animación es una técnica que logra crear sensación de movimiento a imágenes estáticas. Se consigue mediante una secuencia de imágenes ordenadas, que al ser mostradas consecutivamente, consiguen generar la ilusión visual de movimiento.

Objetivo.

Se propone, que al conectar la micro:BIT, se muestre en el panel LED un corazón que late.

Descripción del código.

Se usará el evento “para siempre”, situado en la categoría Básico..

Situar en el interior el bloque anterior la instrucción mostrar icono, usar el llamado corazón.

Agregar el bloque pausa ms (100) localizado en la categoría Básico.

Repetir los dos bloques anteriores, pero seleccionando el icono “corazón pequeño”.

De forma inmediata se visualiza en el simulador un corazón que simula latir.

Simulador

Propuesta.

Hacer un código que muestre la animación de una tijera cortando.

Reto 3 Diseñando iconos.

MakeCode permite diseñar de forma gráfica los iconos a mostrar en el display LED. Para este menester dispone de un bloque específico situado en la categoría Básico. El bloque se llama “mostrar LEDs” y permite al usuario diseñar sus propios iconos marcando de forma independiente los LEDs que se quieren iluminar.

Objetivo.

Diseñar un icono con forma de Indalo. Se trata de una figura rupestre encontrado en una cueva de la provincia de Almería y que representa una figura humana con los brazos extendidos y un arco sobre sus manos. Actualmente se considera un símbolo de la provincia de Almería.

Descripción del código.

Se usará el evento al iniciar, situado en la categoría Básico..

Situar en el interior el bloque anterior, la instrucción “mostrar LEDs”, este se localiza en la categoría Básico. Este bloque permite marcar de forma independiente los LEDs que se quieren encender.

Pulsar sobre los LEDs que se quieren iluminar hasta conseguir el icono deseado.

Deberá aparecer en el simulador el icono con la forma diseñada.

Propuesta.

Diseñar un código que muestre un logotipo diseñado por el programador.

Retos con micro:bit

Jugando con los LED: bloques básicos de código

El menú Básico contiene los bloques más usados para programar micro:bit. En la página anterior se han visto los bloques de eventos al iniciar y para siempre. También se han utilizado los comandos mostrar icono, pausa (ms) y mostrar cadena.

El bloque mostrar LEDs sirve para dibujar iconos personalizados. Basta con hacer clic en los puntos para dibujar la figura deseada como en el caso del gato de la figura.

Mostrar LEDs.jpg

El menú contiene además los bloques borrar la pantalla, mostrar flecha y mostrar número, cuyos nombres son lo suficientemente indicativos de sus funciones.

El menú LED posibilita el control individual de los 25 LED de la pantalla.

Menú LED.jpg

Graficar enciende el LED de coordenadas x e y. La coordenada 0, 0 corresponde al LED situado en la esquina superior izquierda de la pantalla, mientras que la coordenada 4, 4 es la del LED de la esquina inferior derecha. El LED central es el de coordenadas 2, 2.

Ocultar apaga el LED de coordenadas x e y. 

Invertir cambia el estado  del LED de coordenadas x e y. Si estaba apagado lo enciende; si estaba encendido lo apaga.

Punto informa sobre si el punto de coordenadas x e y está encendido o apagado. Este tipo de bloques se explicará en la sección de variables, lógica y matemáticas.

Plot bar graph of crea una barra vertical para representar un parámetro. Resulta un bloque muy útil para visualizar gráficamente las medidas de los sensores de micro:bit. En la sección siguiente se verá con más detalle aplicado a un ejemplo.

El siguiente programa crea una animación con los bloques básicos. Las animaciones son una excelente forma de introducir al alumnado de menor edad en los fundamentos de la programación a través de secuencias simples y en las imágenes digitales.

Gato animado.jpg

Nótese que al inicio se ha ajustado el brillo de la pantalla. La función ajustar brillo se encuentra pulsando sobre los tres puntos suspensivos bajo el menú LED. El brillo máximo es de 255, por lo que 128 representa un valor medio.

Gato animado.gif

Retos con micro:bit

Sensor temperatura

El sensor de temperatura integrado en la placa detecta la temperatura ambiente en grados Celsius.

CelsiusKelvin

By Celsius_kelvin_estandar_1954.png: Homo logosderivative work: kismalac (Celsius_kelvin_estandar_1954.png) [CC BY-SA 3.0 or GFDL], via Wikimedia Commons

Reto Termómetro digital.

Un termómetro es un instrumento que sirve para medir la temperatura; el más habitual consiste en un tubo capilar de vidrio cerrado y terminado en un pequeño depósito que contiene una cierta cantidad de mercurio o alcohol, el cual se dilata al aumentar la temperatura o se contrae al disminuir y cuyas variaciones de volumen se leen en una escala graduada.

Los termómetros digitales son aquellos que, valiéndose de dispositivos transductores, utilizan circuitos electrónicos para convertir en números las pequeñas variaciones de tensión obtenidas, mostrando finalmente la temperatura en un visualizador.

Objetivo.

Mostrar en el panel LED la temperatura detectada por el sensor de temperatura integrado en la micro:BIT.

Descripción del código.

Se propone iniciar el programa usando el evento “para siempre”. Añadir el bloque, localizado en la categoría Básico, mostrar número. Este bloque muestra en la pantalla LED el número introducido, desplazándose si es mayor de 1 cifra.

Sustituir el número “0” por el valor obtenido del sensor de temperatura. Este bloque se localiza en la categoría Entrada.

A continuación se borra la pantalla y se introduce una pausa de 1000 ms. Quedando el programa de la siguiente forma:

En el simulador aparecerá una barra vertical que permite modificar la temperatura, siendo la temperatura marcada la mostrada en el panel LED.

Propuesta.

Hacer un programa que al pulsar el botón A muestra la temperatura en grados celsius y al pulsar el botón B la temperatura mostrada sea en grados Fahrenheit.

Reto Aviso de placas de hielo.

La mayoría de coches incorporan en el salpicadero, junto a la pantalla que marca la temperatura exterior, un testigo con forma de copo de nieve, que avisa de la posibilidad de que haya placas de hielo en la carretera. Este testigo se suele iluminar cuando la temperatura baja de 3 grados centígrados.

Objetivo.

Mostrar en el panel LED de la micor:BIT un icono con forma de copo de nieve cuando la temperatura esté por debajo de 3 grados.

Descripción del código.

Para iniciar el programa, se propone usar el evento para siempre. Posteriormente se debe añadir el operador lógico si … entonces situado en la sección Lógica. Este bloque verifica si es verdad que se cumple una condición, si es así, ejecuta las instrucciones introducidas.

Para comprobar si la temperatura está por debajo de los 3º centígrados se usará el operador que devuelve verdadero siempre que 3 sea mayor que el valor reportado por el sensor de temperatura. El bloque se localiza en la categoría Lógica.

Para mostrar un icono con forma de copo de nieve se usará el bloque mostrar LED, también se debe añadir el bloque borrar la pantalla para que no se quede encendido el panel LED cuando suba la temperatura de 3º centígrados

Una vez terminado el código, aparecerá el símbolo de hielo, cuando la temperatura sea menor de 3º centígrados.

Propuesta.

Añadir un aviso sonoro cuando la temperatura sea inferior a 3 grados celsius.

Reto Temperatura óptima de una nevera

La temperatura óptima de un frigorífico es de 7ºC, mientras que la temperatura de un congelador debe estar entorno a los -18ºC. Algunas neveras incorporan un avisador acústico que se activa cuando la temperatura no es la óptima.

Objetivo.

Mostrar en el panel LED de la micro:BIT la temperatura del frigorífico y activar una alarma cuando la temperatura esté por encima de 7ºC

Descripción del código.

En este reto se incorpora un altavoz como actuador externo. Se conectará uno de los polos al GND y el otro al PIN 0.

Para iniciar el programa se usará el bloque “para siempre”. Dentro se situará el condición “si entonces”. La condición a verificar será: si la temperatura es mayor de 7 grados.

Si el valor es verdadero entonces se reproducirá un tono de aviso.

También se muestra la temperatura medida.

En el simulador se puede variar la temperatura para comprobar el correcto funcionamiento del programa.

Propuesta.

Modificar el código para monitorizar el congelador.

Retos con micro:bit

Sensor luminosidad y sonido

Los LEDs de la placa micro:BIT también pueden actuar como entrada haciendo que detecten la luz ambiente.

Artist's rendition of the new light-bending metamaterial

By Photo Credit: Keith Drake [Public domain], via Wikimedia Commons

Reto Interruptor crepuscular.

Cuando la intensidad de la luz cae por debajo de un nivel de iluminación predeterminado y ajustado con anterioridad, el interruptor crepuscular enciende la iluminación. Por el contrario, si la intensidad de la luz es mayor que el nivel prefijado, los interruptores apagan la iluminación.

Objetivo.

Crear un programa que mida el nivel luminoso existente, para ello usará el sensor de luz de la micro:BIT. Posteriormente se comprobará si este valor es inferior a 50, si es así, se encenderán todos leds de la placa a su máxima intensidad.

Descripción del código.

Se usará el evento para siempre, para iniciar el programa. Se introducirá la condición si … entonces, si no, para comprobar si se está por encima o por debajo del valor teórico tomado como límite en esta ocasión 50. Si el valor es inferior a 50, se fijará la intensidad de los LEDs al máximo usando el bloque ajustar brillo 255. Si el valor es superior a 50 se usará el bloque borrar la pantalla para, de esta forma, apagar todos los LEDs.

El código quedaría de la siguiente forma, se podrá comprobar su funcionamiento variando la intensidad en el simulador de la tarjeta.

Brillo adaptativo

La matriz de LED de micro:bit es también un sensor que puede captar tanto la luz visible como la invisible. En este último caso se encuentra la luz infrarroja emitida por los mandos a distancia.

Los valores de la variable nivel de luz del menú Entrada se encuentran comprendidos entre 0 y 1023. Como en el caso del sensor de sonido, estos valores no tienen correspondencia con ninguna unidad física, como el lux.

Para poder obtener buenas medidas de luz, la matriz de LED debe estar descubierta. Las fundas para micro:bit, especialmente las de color oscuro, pueden alterar las medidas del sensor de luz. 

De acuerdo con Martínez de Carvajal (2019), el sensor de luz arrojará aproximadamente las siguientes medidas:

Podemos retomar el proyecto del sonómetro y acompañarlo de una pantalla con brillo adaptativo, como la de los teléfonos móviles. La pantalla debe iluminarse con más brillo cuanto mayor sea la luz ambiental.

El evento al presionarse el botón A medirá el nivel de sonido y lo mostrará gráficamente con la ya conocida barra.

Sonómetro de pulsador.png

Usaremos un evento de tiempo cada ms para medir la luz ambiental cada segundo y así poder ajustar el brillo de pantalla al nivel de luz medido. De esta forma, a mayor luz ambiental, mayor brillo de pantalla. Como el brillo máximo es de 255 y el nivel de luz máximo medible es de 1023, dividiremos la lectura del nivel de luz entre 4 usando un bloque aritmético / del menú Matemática.

Brillo adaptativo.pngLuz crepuscular

Vamos a dar solución a un reto propuesto por Muñoz (2022) programando un automatismo que encienda la pantalla de LED cuando la luz ambiental caiga por debajo de un cierto valor, por ejemplo 100.

Todos los algoritmos programados hasta este momento se ejecutan linealmente desde el primer bloque colocado en la parte superior hasta el último situado abajo. Sin embargo, para solucionar el reto de la luz crepuscular necesitaremos que el flujo del programa siga caminos distintos según se cumpla o no una determinada condición.

Empezaremos evaluando la luz ambiental cada segundo mediante un evento de tiempo cada ms. Esto significa que el automatismo tendrá un tiempo de reacción de un segundo.

Dentro del evento de tiempo, usaremos la estructura si entonces si no, disponible en el menú Lógica , para encender con el máximo brillo la luz de la matriz de LED si  la luz ambiental es inferior a 100 o para apagar la matriz en caso contrario. Tras el apagado de la pantalla dejaremos un pequeño punto en el centro iluminado a baja intensidad  como piloto de funcionamiento.

Luz crepuscular.png

El bloque comparador < (menor que) usado dentro de la estructura si entonces  también se encuentra dentro del menú Lógica.

Semáforo del ruido en el aula

Make Code permite construir sentencias condicionales más complejas. El código del semáforo del ruido emplea un bloque  si entonces si no, si entonces si no. Para construir este bloque se ha utilizado la estructura si entonces si no del ejemplo anterior y se ha añadido una condición suplementaria pulsando sobre el pequeño círculo con  el símbolo +. De igual manera, pulsando sobre los círculos con los signos - podremos eliminar condiciones.

Caras de sonido.png

Así pues, si el nivel de sonido es inferior a 64, la pantalla mostará un icono sonriente. En caso contrario, si el nivel de sonido es alto pero todavía inferior a 128, se mostrará una cara triste. FInalmente, si el sonido es igual a superior a 128, se mostrará una cara enfadada.

Retos con micro:bit

Pulsadores

Pulsadores mecánicos

El menú Entradas contiene los bloques que permiten captar datos de los sensores integrados en micro:bit. Para que la placa lleve a cabo acciones al pulsar los botones A, B ó A y B a la vez, disponemos del bloque de eventos denominado al presionarse el botón:

Eventos de pulsación.jpg

Al arrastrar el bloque anterior desde la caja de herramientas hasta el área de programación y seleccionar la opción de pulsación A+B, la imagen de la tarjeta cambia para mostrar la posibilidad de pulsar con el ratón sobre un nuevo botón virtual que simula la pulsación simultánea de los botones A y B.

Pulsadores.png

Para que micro:bit realice alguna acción específica al pulsar un botón, bastará con introducir los bloques de código necesarios dentro de un bloque de evento de pulsación. El siguiente programa mostrará una flecha apuntando hacia la izquierda al pulsar el botón A, una flecha apuntando hacia la derecha al pulsar el botón B y dos flechas al pulsar los botones A+B. Transcurrido 1 s, se borrará la pantalla.

Programa de pulsadores2.jpg

Los eventos al iniciar y para siempre han quedado vacíos simplemente porque no hemos previsto que se lleve a cabo ninguna acción inicial ni permanente.

Pulsador táctil

Desde la versión 2 de la tarjeta el logo situado en el anverso es un sensor táctil. El menú Entradas dispone de un bloque específico que puede ajustarse mediante un menú desplegable para capturar el evento deseado.

Sensor Logo.jpg

Como puede verse, los eventos asociados al logo son pulsar, tocar, soltar y mantener pulsado. Cada vez que se toque el logo se producirán tres eventos:

El siguiente programa simula una luz temporizada

Luz temporizada.jpg

Mada más tocar el logo, el evento al tocar el logotipo hará brillar la pantalla con una luz tenue. Al levantar el dedo, el evento  al soltar el logotipo iluminará la pantalla a plena potencia. Si la pulsación ha sido corta, el evento al pulsar el logotipo mantendrá la luz encendida durante  3 s. Si la pulsación ha sido larga, el evento al mantener pulsado el logotipo mantendrá la luz encendida durante  15 s.

Reto ¿Qué botón has pulsado?

A veces puede interesar usar un pulsador para iniciar, pausar o detener un código o subrutina. Algunos robots incorporan botoneras para esta finalidad.

Objetivo.

Crear un programa que muestre en pantalla la letra del pulsador que se ha accionado.

Pruébalo aquí:

Descripción del código.

Se usará el bloque al iniciar para que al principio se muestre el texto “Pulsa un botón”. La micro:BIT no muestra caracteres acentuados, por lo que dejará un hueco si se pone la tilde en la palabra botón.

Posteriormente se usará el evento al presionar el botón A y se introducirá el bloque mostrar cadena donde se sustituirá el texto por defecto por la letra “A”.

Esto mismo se repetirá cuando se pulsa el botón B y la pulsación combinada de A+B.

El código quedaría de la siguiente forma:

Propuesta.

Crear una caja de música. Al pulsar el botón A haga hará sonar una melodía. El bloque necesario para hacer sonar una melodía se encuentra en la categoría Música.

Retos con micro:bit

Acelerómetro

El acelerómetro mide la aceleración de tu micro:bit. Se activa cuando tu placa se mueve y también puede detectar otras acciones como agitar, girar y hasta soltar tu micro:bit en caída libre!

Micro bit 3 axes de l accéléromètre

By Ugopedia [CC BY-SA 4.0 ], from Wikimedia Commons

Reto Dado electrónico.

Un dado es un objeto cúbico usado en juegos de azar. En las caras del cubo aparecen puntos que representan distintos números.

Se propone crear un dado electrónico que, usando el panel LED, muestre el resultado de obtener un número al azar entre 1 y 6.

Objetivo.

Tras agitar la micro:BIT, se deberá calcular un número aleatorio cuyo valor esté entre 1 y 6. Posteriormente, se mostrará en el panel LED el valor obtenido.

Pruébalo ¡¡lo puedes sacudir pulsando en Shake!! este simulador es genial !!

Descripción del código.

Como evento de inicio del programa se usará el bloque si agitado, se mostrará un número escogido al azar entre 0 y 5, al que se le sumará 1. Se suma 1 dado que el bloque escoge al azar, tiene como valor fijo de inicio el 0.

Tras una pausa de 1 segundo se borra la pantalla, quedando a la espera de que se vuelva agitar la micro:BIT.

Propuesta.

Diseñar un programa que permita jugar a la ruleta además se deberá indicar si es rojo o negro o si gana la banca.

Reto Cara o cruz.

El juego de cara o cruz es un juego de azar en el que se emplea una moneda. Gana quien acierte qué lado de la moneda (de los dos posibles) caerá cara arriba. Cada uno de los dos lados tiene un nombre distintivo y son mencionados como opciones para ser elegidas por los participantes. Por lo tanto, los participantes pueden ser dos equipos o dos personas y así cada bando tiene el 50% de probabilidades de acertar.

Este juego es frecuentemente empleado como un mecanismo para tomar decisiones o sortear, ya sea entre amigos o en forma informal, pero también es completamente aceptado en ciertas circunstancias, por ejemplo al inicio de un partido de fútbol profesional.

Objetivo.

La micro:BIT se situará con el panel LED hacia abajo. Al posicionarlo hacia arriba, se mostrará una cara o una cruz, ganando el que haya escogido la opción mostrada.

Descripción del código.

En primer lugar se creará una variable que se puede llamar “azar”.

Se usará como evento de inicio el bloque si pantalla hacia arriba. A continuación se asigna a la variable “azar”, un valor al azar entre 0 y 1.

Usando el operador lógico si entonces si no se elige como opción es la ganadora. Se asigna la carita feliz si la variable “azar” toma un valor de cero y en caso contrario ganará la cruz. Se mostrará la opción ganadora usando el bloque mostrar icono.

Tras una pausa de un segundo se borra la pantalla.

Para volver a repetir el proceso se deberá poner la micro:BIT con el panel hacia abajo y al volver a poner el panel hacia arriba se repetirá el código programado

.

Para ver el funcionamiento del programa se recomienda volcar el código a una micro:BIT. En el simulador, el proceso no es tan intuitivo.

Propuesta.

Hacer un programa que permita jugar a “Pares o Nones” contra la micro:BIT

Retos con micro:bit

Brújula

La brújula detecta el campo magnético terrestre por lo que se puede saber en qué dirección está orientada la micro:bit. (Necesita ser calibrada para asegurar un resultado preciso.)

Calibrar la brújula

La primera vez que grabamos un programa sale este mensaje por la pantalla:

Tilt to Fill Screen Inclinar para llenar la pantalla

LED iluminados.png

Luego lo que tenemos que hacer después de que aparezca el texto anterior, sale un punto que irá rellenando la pantalla a medida que lo vas inclinando.

Objetivo: que se llene toda la pantalla de leds.

Con un vídeo se ve mejor

Pagina oficial de calibración.

Brújula numérica

El sensor de campo magnético integrado en micro:bit también puede usarse para medir el campo magnético terrestre. De esta forma es posible determinar la dirección del norte magnético y programar así una brújula.

De acuerdo con la esencia de micro:bit bastan unas pocas líneas de código para realizar una brújula digital. El código mostrado a continuación indica en pantalla la dirección a la que apunta el logotipo cada vez que se presiona el botón A.

Brújula digital.png

Como el resto de bloques de sensores, el bloque dirección de la brújula (º) se encuentra disponible en el menú Entrada.

La dirección será mostrada en grados sexagesimales. Conviene recordar que el valor de 0º corresponde al norte y el de 180º al sur. La siguiente rosa de los vientos puede servir para clarificar la correspondencia entre los puntos cardinales y los rumbos asociados:Rosa de los vientos.png

Por ejemplo, y de acuerdo con la rosa de los vientos, una lectura de 340º indicará que el logotipo de micro:bit apunta en dirección casi norte, concretamente nornoroeste. 

La brújula funcionará mejor en exteriores, ya que el sensor magnético puede ver alteradas sus lecturas por la presencia de masas metálicas en el interior de los edificios, como las de los electrodomésticos o las armaduras de pilares y forjados.

Es posible que al encender micro:bit, aparezca un mensaje en inglés solicitando agitar la tarjeta para calibrar el sensor. Esta cuestión se trata en el apartado siguiente.

Reto Conocer la orientación

El norte magnético es la dirección que señala la aguja imantada de una brújula, dirección que no coincide con la del Polo Norte geográfico. Se puede conocer la orientación si se conocen los grados de desviación respecto el Norte Magnético.

Objetivo.

Tras calibrar la brújula, nos dirá la desviación en grados respecto al Norte Magnético de la micro:BIT.

Descripción del código.

Usar el evento para siempre, para iniciar el programa.

Mostrar el valor del sensor dirección de la brújula (º) que ofrece el ángulo de desviación respecto el Norte Magnético.

Esperar 1 segundo y borrar la pantalla.

Brújula analógica

Vamos a completar la funcionalidad de la brújula añadiendo un cursor que marque continuamente la dirección del norte. Usaremos un evento de tiempo para leer el sensor y actualizar el dibujo del cursor cada medio segundo.

Dentro del evento de tiempo, el código dibujará una flecha hacia arriba cuando la dirección de micro:bit sea mayor que 315º o menor que 45º, es decir, cuando el logotipo apunte aproximadamente al norte. Los bloques condicionales y los comparadores usados en el código se encuentran en el menú Lógica.

Brújula norte.png

Sin embargo, este programa sólo mostrará la flecha cuando el logo apunte al norte, borrando la pantalla en caso contrario. Para que haya una flecha en pantalla apuntando permanentemente al norte, habrá que pulsar sobre el signo + para añadir líneas al bloque condicional.

Brújula 4 direcciones.png

Nótese que cuando el logo de micro:bit apunta al este, dirección de la brújula (º) < 135, hay que dibujar la flecha apuntando a la izquierda (flecha oeste), y que cuando el logo apunta al oeste, hay que mostrar una flecha apuntando a la derecha (flecha este). Sólo de esta forma la flecha apuntará siempre al norte.

este-oeste.png

Reto Aviso sonoro de orientación Norte.

Cuando se necesita orientarse con un mapa, lo que primero que hay que hacer, es situar el mapa con orientación norte. Para ellos se debe usar una brújula.

Objetivo.

Crear un programa que mediante un aviso acústico se advierta de que la micro:BIT está orientada al Norte.

Descripción del código.

Usar el evento para siempre, para iniciar el programa.

Crear una variable donde se almacenará el valor del sensor obtenido por el bloque dirección de la brújula (º).

Se introduce el condicional si entonces si no para comprobar en qué intervalo se encuentra el valor obtenido por el sensor.

Si el valor se encuentra entre 315º y 45º la micro:BIT se encuentra orientada al Norte, por lo que se mostrará una N y se reproducirá una nota. Si no se cumple la hipótesis, se borra la pantalla.

Retos con micro:bit

Radio

La radio te permite comunicar tu micro:bit con otras micro:bit. Por ejemplo, puedes conectar todas las tarjetas dentro de un aula a una misma emisora, usarla para enviar mensajes entre ellas y mucho más!.

Radio receiver 06

By Iron Bishop [GFDL, CC-BY-SA-3.0 or CC BY-SA 2.5 ], from Wikimedia Commons

Micro bits (26186158207)

By Libraries Taskforce (Micro:bits) [CC BY 2.0 ], via Wikimedia Commons

Reto Sensor inalámbrico.

En algunas situaciones se puede dar el caso de que no se pueda tener conectado el sensor con la unidad receptora de datos mediante cable. Cuando esta situación se presenta una opción es usar sensores inalámbricos.

Usar sensores inalámbricos aporta numerosas ventajas. Entre ellas destacan la seguridad, la centralización de la monitorización y el ahorro de costes por no tener que cablear la instalación.

Un sensor inalámbrico está compuesto por el sistema recolector de datos, un sistema de emisión de datos y una fuente de alimentación. Lo más habitual es que la transmisión de datos sea mediante radiofrecuencia. Por otro lado, se encuentra un sistema receptor de datos conectado al sistema de almacenamiento y procesado.

Objetivo.

Diseñar un sistema inalámbrico de recolección de datos. La micro:BIT emisora se situará en el interior de una nevera y emitirá la temperatura. La unidad exterior mostrará el valor de la temperatura.

Descripción del código.

Se deberán crear dos códigos, uno para la micro:BIT emisora y otro para la receptora.

Para que las tarjetas se puedan comunicar entre sí, ambas deben estar en el mismo grupo de comunicación. También se debe emitir con la máxima potencia para evitar la atenuación que sufre la tarjeta emisora al encontrarse dentro de la nevera. Por este motivo, se deberá usar el bloque radio establecer potencia de transmisión situado en la categoría Radio y usar el máximo valor que es 7. Se recomienda usar el evento al iniciar para establecer el grupo de comunicación y asignar la potencia de transmisión.

micro:BIT emisora:

Tras establecer el grupo de emisión en 1 y poner la potencia de emisión al máximo, se enviará el valor de la temperatura mediante el bloque radio send number.

micro:BIT receptora:

La cadena enviada se guarda en la micro:BIT receptora en una variable que por defecto se llama “receivedNumber”. Se usará el bloque mostrar número, para visualizar la temperatura medida en la nevera. Tras un segundo se apagará el panel LED. No olvidar establecer al inicio el grupo de comunicación.

El código de la tarjeta receptora quedaría de la siguiente forma:

Propuesta.

Se propone mostrar una animación en el panel de la micro:BIT emisora, que confirme que el programa está en marcha.

Retos con micro:bit

Pines entrada y salida

La micro:BIT dispone de 25 conectores situados en el borde inferior . A través de ellos se podrán programar motores, LEDs o cualquier otro componente o sensor externo.

~ Biografía del autor ~

Reto ¿Hay continuidad?

En algunas ocasiones interesa conocer si un cable tiene continuidad en toda su longitud. Para comprobar la continuidad se suele usar un multímetro, midiendo la resistencia del conductor. Una lectura de resistencia infinita indicaría una interrupción en alguna parte del interior del cable.

Objetivo.

Diseñar un programa que permita comprobar si un cable tiene continuidad. Si no está cortado, mostrar una cara feliz.

Descripción del código.

Se usará el bloque pin (P0) está presionado de la categoría Entrada para comprobar la continuidad. Se propone emplear el evento para siempre y usar un condicional que verifique si el P0 está presionado. Si se cumple la condición se muestra una carita feliz, en caso contrario, el panel permanece apagado. El código podría quedar de la siguiente forma:

Para comprobar el funcionamiento se puede usar un cable con bananas conectados al GND, si se conecta con el P0 y el cable tiene continuidad, deberá aparecer una carita feliz en el panel LED.

Propuesta.

Modificar el código para que cuando el cable a comprobar tenga continuidad haga sonar la melodía “jump up” y si no tiene continuidad que se emita la melodía “jump down”.

Reto Música

Se puede añadir música utilizando unos cascos o altavoces de PC.. conectandolo al puerto P0 (pon sonido a tu ordenador y lo oirás):

Conexión con el "minijack"

Para la conexión se puede utilizar unas pinzas de cocodrilo (ver conexión)

Si no se tienen pinzas de cocodrilo, haciendo un poco DYC (lease mañoso) con papel de aluminio y celo (ver cómo se hace)

Descripción del código

El código es muy fácil:

Hay que tener cuidado con lo de repitiendo una vez prueba no ponerlo y verás que se van mezclando melodías cada vez que ser repite el bucle y al final no se sabe qué es lo que está sonando

No intentes relés directamente

A pesar de que microbit parece que se puede poner directamente, no tiene suficiente energía para mover un motor, aunque sea un servo sencillo:

microbit-rele.jpg

La única manera es:

También venden tarjetas para hacer intermediarias entre estos elementos y la microbit, el Smartcar es un ejemplo.

Reto libre

Ahora te retamos a lo siguiente: Entra en Makecode https://makecode.microbit.org y ELIGE UN PROYECTO EL QUE QUIERAS DE LOS QUE APARECEN Y HAZLO

Tendrás que hacerlo si quieres contestar a la pregunta test del curso correctamente !!!

 

Retos avanzados con micro:bit

Retos avanzados con micro:bit

Mejorando el termómetro

Programación del termómetro

El siguiente programa proporcionará el valor numérico de la temperatura ambiente en grados Celsius cada vez que se pulse el botón A. La variable temperatura (ºC) se encuentra disponible en el menú Entrada.

Termómetro de pulsador.png

El evento al iniciar comienza encendiendo un punto de la matriz de LED a modo de piloto de funcionamiento. El brillo de la pantalla se ajusta a un valor bajo para conseguir un bajo consumo de energía.

Por otro lado, cada vez que se pulse el botón A, ocurrirá un evento del tipo al presionarse el botón A que subirá el brillo de la pantalla al máximo (255) y  mostrará la temperatura mediante una cadena de texto deslizante, para volver más tarde a dejar encendido el piloto de funcionamiento a bajo brillo.

La temperatura indicada será algo superior a la ambiental. Esto ocurre porque el sensor de temperatura se encuentra en el microprocesador y éste se calienta ligeramente cuando la placa está en funcionamiento. Martínez de Carvajal (2019) establece el error medio en 3ºC, por lo que habrá que restar 3 al valor mostrado en pantalla para obtener la temperatura real. La manipulación de la placa con los dedos también contribuye al calentamiento y al error en la medida de la temperatura.

Podemos añadir un evento de tiempo para que el termómetro muestre la temperatura cada cierto tiempo. Para ello debemos usar el evento cada ms, dentro del menú Bucles.

Termómetro de evento.png

Cada 30000 ms, o cada 30 segundos, el programa mostrará la temperatura aunque no haya sido pulsado el botón A. Dentro del bucle de tiempo no se sube el brillo, así que los dígitos se mostrarán con bajo brillo para ahorrar batería.

Es posible mejorar un poco más el programa haciendo que micro:bit muestre tres veces la temperatura cada 30 segundos. Podríamos repetir sin más la sentencia mostrar cadena temperatura (ºC) tres veces dentro del bucle de tiempo, pero en su lugar vamos a usar un bucle del tipo repetir veces , que también se encuentra en el menú Bucles.

Evento de tiempo y bucle.png

Nótese que el programa ejecuta un bucle cada 30 segundos, y que dentro de ese bucle se ejecuta otro bucle que muestra la temperatura tres veces seguidas. Al hecho de introducir un bucle dentro de otro se le llama anidar bucles.

Mejorando la lectura del sensor de temperatura

Para corregir el error de 3 grados Celsius en la lectura del sensor, bastará con restar 3 al valor de la variable temperatura (ºC). El menú Matemática contiene bloques para realizar operaciones aritméticas. Si se usa el bloque de resta - dentro de los bloques mostrar cadena resulta sencillo realizar la corección necesaria. El código del termómetro completo quedará:

Termómetro corregido.png

Los dos bloques mostrar LED han sido sustituidos por dos bloques graficar x y para conseguir que el código sea algo más compacto. 

Retos avanzados con micro:bit

Aprender con un led la diferencia entre analógico y digital

Vamos a conectar un led, el pin corto (-) al GND y el otro al pin0

2024-06-02 20_13_07-Copia de Wednesday - Presentaciones de Google.png

Ulrich Pedersen Dah & Ture Reimer-Mattesen Center for Underisningsmidler CPU

Vamos a ver la diferencia entre estos dos métodos de encender y apagar la luz

2024-06-02 20_14_07-Copia de Wednesday - Presentaciones de Google.png
Ulrich Pedersen Dah & Ture Reimer-Mattesen Center for Underisningsmidler CPU

El programa en digital es sencillo

2024-06-02 20_14_57-Copia de Wednesday - Presentaciones de Google.png
Ulrich Pedersen Dah & Ture Reimer-Mattesen Center for Underisningsmidler CPU

Y el programa en analógico

2024-06-02 20_33_34-Copia de Wednesday - Presentaciones de Google.png
Ulrich Pedersen Dah & Ture Reimer-Mattesen Center for Underisningsmidler CPU

Retos avanzados con micro:bit

Bloques de entradas: sonómetro, magnetómetro y acelerómetro con una sola línea de código

Sensor de sonido

Para usar los sensores integrados de micro:bit no es necesario cargar ni inicializar bibliotecas de código. Las medidas de los sensores se encuentran disponibles en el menú Entrada en forma de variables. En el lenguaje de bloques las variables se representan mediante rectángulos de extremos redondeados.

La versión 2 de micro:bit dispone de un micrófono que además de grabar sonidos puede medir el nivel de ruido. La variable nivel de sonido nos dará lecturas entre 0 (nivel mínimo de sonido) y 255 (nivel máximo). Estos niveles no se corresponden con ninguna unidad física, como el dB por ejemplo, y deben usarse con fines comparativos.

La razón de que algunos sensores de micro:bit proporcionen medidas entre 0 y 255, es que con un byte (8 bits) sólo se pueden representar 28 = 256 números distintos, es decir, el 0 y los 255 primeros números naturales.

El bloque plot bar graph of del menú LED permite construir un sencillo medidor de sonido ambiente. Como 255 es un valor muy alto de intensidad de sonido, ajustamos el rango de medida de la barra, up to, a la mitad, es decir, a 128. Así la barra reflejará mejor el sonido de una voz o el sonido ambiental normal.

Programa de barra de sonido.jpg

La variable nivel de sonido debe arrastrarse desde el menú Entrada. En el momento en el que la variable haya sido introducida en el programa, el simulador de micro:bit cambiará, mostrando una barra ajustable que simulará el nivel de sonido captado por el micrófono. El valor numérico del nivel de sonido simulado también será mostrado al lado del LED del micrófono.

microbit-Sonido.png

Tras descargar el programa en la placa real, la matriz de LED representará continuamente el sonido recogido por el micrófono en forma de barra vertical. El LED del micrófono iluminado indicará que micro:bit está captando sonido.

Barra de sonido.gif

Una tarjeta micro:bit ejecutando este programa puede agotar un par de pilas alcalinas IEC R03 (AAA) en unas 40 horas (Frost 2018). Para ahorrar energía y prolongar la autonomía del medidor podemos reducir tanto el brillo de la pantalla como el número de medidas por segundo que realiza el sensor. Para conseguir esto último introduciremos en el bucle para siempre un bloque pausa (ms). Si el bloque se ajusta a 100 ms, el sensor sólo realizará 10 mediciones del nivel de sonido cada segundo.

Ahorro de energía.jpg

Magnetómetro y acelerómetro

Con una mínima modificación, el código anterior puede usarse para monitorizar aquellas magnitudes que puedan variar rápidamente. Por ejemplo, podemos usar el sensor integrado de campo magnético (magnetómetro) para medir el campo magnético de la Tierra, el de una imán o el de una masa de hierro. 

Podemos acceder al sensor mediante la variable fuerza magnética (µT), que proporciona la inducción magnética medida en microtesla. Al cargar el programa, micro:bit comenzará a medir el campo magnético terrestre que varía, según la localización, entre 25 y 65 µT. Nótese que el magnetómetro no limita sus medidas al valor de 255.

Programa de inducción magnética.jpg

Otra medida interesante es la de la aceleración de la placa. La variable de acceso al acelerómetro se llama aceleración (mg) y proporciona las aceleraciones medidas en milésimas de g. Cuando la placa esté en reposo medirá  la aceleración de la gravedad terrestre, que es de 1 g. Los movimientos bruscos de la placa en cualquier dirección deberían alterar el valor medido.

Programa de aceleración.jpg

Retos avanzados con micro:bit

Nivel de burbuja usando el giroscopio

Mediante el sensor de fuerza, micro:bit puede determinar para cada uno de los tres ejes coordenados las proyecciones de la aceleración de la gravedad y, a partir de ellas, el giro de la placa con respecto al plano horizontal.

Vamos a usar la medida  del giro de la placa para programar un sencillo nivel de burbuja. La burbuja será un punto luminoso en la pantalla LED de micro:bit. Cuando el punto se encuentre en el centro de la pantalla, cuyas coordenadas son (2,2), micro:bit estará nivelado. Si micro:bit está desnivelado hacia la izquierda o hacia la derecha, el punto se dibujará desplazado en esas direcciones.

La estructura del código, compuesto por múltiples sentencias condicionales, es muy similar al de la brújula analógica presentada en el apartado anterior.Nivel.png

El código consta de un único evento temporal dentro del cual se evalúa el giro de la placa cada 250 ms y que, en función del ángulo de inclinación, enciende el punto correspondiente. Por ejemplo, si la placa se inclina hacia la izquierda con una rotación inferior a -5º, se encenderá el punto situado más a la izquierda, cuyas coordenadas son (0,2). En caso contrario, si la placa está incilinada hacia la izquierda menos de -2º, se encenderá el siguiente punto, de coordenadas (1.2), y así sucesivamente.

Tarjeta nivel.png

Retos avanzados con micro:bit

Lectura puerto USB por MakeCode o Coolterm

Podemos enviar datos por el puerto USB y visualizarlos en el ordenador

Hemos elegido el sensor de luz, pero PUEDE SER CUALQUIER SENSOR

https://makecode.microbit.org/S14202-21125-85484-72930

METODO VISUALIZACIÓN EN EL MISMO MAKECODE

Debajo del simulador podemos ver una evolución de los datos que lee

2025-11-02 20_31_54-.png

y el resultado es muy visual

METODO COOLTERM

Este método es utilizando un programa que lo podemos descargar en esta página https://freeware.the-meiers.org/

2025-11-02 20_33_40-Greenshot.png

Es un programa libre, y portable, es decir es una carpeta con un ejecutable y programas accesorios

2025-11-02 20_34_32-Greenshot.png

lo ejecutamos

2025-11-02 20_35_26-CoolTermWin64Bit - Explorador de archivos.png

En Connection - Options 

2025-11-02 20_36_05-Untitled_0.png

Subimos la velocidad a 115.200 baudios

2025-11-02 20_36_40-Connection Options (Untitled_0).png

Al darle a conectar se ven los datos numéricamente

2025-11-02 20_37_48-Untitled_0 _.png

LA VENTAJA DE COOLTERM ES QUE LEE CUALQUIER DISPOSITIVO (MICRO:BIT, ARDUINO, ECHIDNA....)

Retos avanzados con micro:bit

BLUETOOTH un poco de teoría

ONDAS

Una onda es una señal que se propaga por un medio. Por ejemplo el sonido, que es una onda mecánica que viaja usando el aire o cualquier otro material. Pero en el caso de las señales eléctricas pueden ser enviadas por el cable o a través del vacío (no necesitan un medio para transmitirse).

Dependen de 3 parámetros principalmente:

La relación entre ellas es muy fácil pues las ondas electromagnéticas viajan a la velocidad de la luz c y si velocidad es espacio/tiempo luego c = λ/T luego c= λ*f

Dentro del espectro electromagnético encontramos diferentes tipos de señales dependiendo de las características de su onda.

TRANSMISIÓN INALÁMBRICA: BLUETOOTH.   

¿Sabias que?
Su curioso nombre viene de un antiguo rey Noruego y Danés, y su símbolo, de las antiguas ruinas que representan ese mismo nombre. 

Hay 3 clases de bluetooth que nos indican la máxima potencia a la que emiten y por tanto la distancia máxima que podrán alcanzar:

También es muy importante la velocidad a la que pueden enviarse los datos con este protocolo:

Mbps : Mega Bits por segundo.       MBps: Mega Bytes por segundo.
kb = 1.024 b     M = 1.024 k     G = 1.024 M

¿Te atreves a calcularlo . ?

¿Cuántos ciclos por segundo tendrán las ondas que están en la Banda ISM? ¿Cuál es el periodo de esas ondas?

Solución 
a)  f = 2.4G
b) λ=c/f= 12.5cm o sea, las antenas tendrían que ser de esta longitud. Hay muchos trucos para reducirla, una de ellas es la forma de serpiente que puedes ver en el HC-06

¿Te atreves a calcularlo...?

¿A qué distancia y cuanto tiempo tardarían en enviarse los siguientes archivos por Bluetooth?

  1. Un vídeo de 7Mb usando versión 2 clase 2
  2. Una imagen de 2.5Mb usando versión 3 clase 1
  3. Un archivo de texto de 240KB usando versión 1.2 clase 1

Solución 
1) 7Mb / 3Mbs = 2.3 seg.
2) 2.5Mb / 24Mbs = 0.1 seg.
3) 240 kB 8b/B = 1.920 kb   1.920 kb  / 1.024 =   1.875 Mb     1.875Mb / 1Mbs  = 1.875 seg. 

¿Bluetooth clásico o Bluetooth Low Energy = BLE?

Es un protocolo similar al clásico Bluetooth pero diseñado a consumir menos potencia manteniendo funcionalidad. Su popularidad ha crecido en multitud de dispositivos  

En robótica, el clásico device que utiliza BLE es la Micro:bit. Aunque la Micro:bit no tiene Wifi integrada, posee una radiofrecuencia que podemos configurar para Bluetooth (hay que elegir, o utilizar sus comandos de Radio o utilizar comandos de Bluetooth)

Por eso a la hora de elegir la APP tienes que tener en cuenta:

Nosotros hemos elegido uno sencillo que cumple las dos condiciones (hay muchas APPs) Serial Bluetooth Terminal

2025-12-05 08_05_39-WhatsApp.png

Retos avanzados con micro:bit

BLUETOOTH extensión en Makecode

En Makecode instalaremos la siguiente extensión

Entramos en Extensiones

2025-11-02 21_37_10-Greenshot.png

Buscamos Bluetooth y elegimos la esta :

2025-11-02 21_41_46-Greenshot.png

Nos dirá que es incompatible con la radio, y hay que eliminar la radio y poner Bluetotth, aceptamos :

2025-11-02 21_43_22-.png

Por si acaso...

En Makecode, si vamos a la rueda dentada - Project settings 

2025-11-05 09_44_34-Configuración.png

Hay que tener que cualquiera se puede conectar via Bluetooth

2025-11-05 09_45_48-Configuración.png


Retos avanzados con micro:bit

BLUETOOTH programa en Makecode

Realizamos un programa que :

¿Para qué mostrar el nombre de la micro:bit? Para saber a qué micro:bit conectarte. En una clase con muchas micro:bit es importante este dato. El nombre del equipo está en
2026-01-09 16_36_45-Greenshot.png

https://makecode.microbit.org/S60585-58735-21378-05922

Retos avanzados con micro:bit

BLUETOOTH programa Serial Bluetooth Terminal

Entramos con el móvil a Google Play e instalamos esta aplicación https://play.google.com/store/apps/details?id=de.kai_morich.serial_bluetooth_terminal

2025-11-02 21_50_49-Greenshot.png

Tiene la ventaja de

Entramos en Devices y en Bluetooth LE y nos conectamos a la Micro:bit

unnamed.webp

Una vez conectado, podemos:

Retos avanzados con micro:bit

BLUETOOTH con App Inventor. Extensiones

Descargas e instalación

Necesitamos estas extensiones para poder crear una APP que pueda enviar y recibir con nuestra micro:bit

Página de descargas https://iot.appinventor.mit.edu/#/

2025-11-02 22_05_10-.png

Una vez descargadas, vamos al APP INVENTOR https://ai2.appinventor.mit.edu y las instalamos en extensiones :

2025-11-02 22_08_33-Mattermost Desktop App.png

 

Una vez instaladas, se visualizan como extensiones abajo del menú. Las dos últimas son las que utilizaremos:

2025-11-02 22_10_51-.png

La extensión Bluetooth tiene diversas funciones que tienes su descripción aquí (English). Para poder instalarla, vamos al APP INVENTOR https://ai2.appinventor.mit.edu

Retos avanzados con micro:bit

BLUETOOTH App Inventor programa

En DESIGNER

incorporamos:

  1. HorizontalArrangment para que los botones queden alineados horizontalmente
  2. Botones
    1. Scan
    2. Stop
    3. Conectar
    4. Desconectar
  3. Label que dirá el estado de la conexión. Lo llamaremos LabelEstado
  4. ListView que lo llamaremos ListBLE donde mostrará los diferentes dispositivos Bluetooth LE que detecta
  5. TextBox para poner el texto que queramos a enviar a micro:bit
  6. Un botón Enviar el texto anterior
  7. Un Label que lo llamaremos LabelTextoRecibido que mostrará el mensaje desde micro:bit
  8. Añadimos los elementos de las extensiones que hemos instalado anteriormente 
    1. Microbit_UART_Simple
    2. BluetoothLE

2025-11-02 22_13_06-Mattermost Desktop App.png

En Blocks

Cuando escaneemos, que el elemento empiece el escaneado y la lista se vuelva visible, además de que LabelEstado diga que esta escaneando

2025-11-02 22_24_04-Greenshot.png

Si ha encontrado un dispositivo, que lo vaya añadiendo a la lista ListBLE

2025-11-02 22_25_21-Mattermost Desktop App.png

Cuando le digamos que pare, simplemente se lo mandamos al dispositivo y LabelEstado lo informa

2025-11-02 22_24_44-Mattermost Desktop App.png

Cuando le demos a conectar, pues conecta con el seleccionado en ListBLE y LabelEstado informa

2025-11-02 22_25_49-Greenshot.png

Si conecta, pues LabelEstado informa y ListBLE no es necesaria por lo tanto se oculta, pues entorpece la visión

2025-11-02 22_26_36-Greenshot.png

Si queremos desconectar, pues le decimos al elemento BluetoothLE que desconecte

2025-11-02 22_27_31-Greenshot.png

Si se ha desconectado (voluntariamente al dar al botón anterior, o involuntariamente pues el dispositivo se ha desconectado, o esta muy lejos... etc) que informe

2025-11-02 22_28_08-Mattermost Desktop App.png

Si apretamos el botón enviar, le enviamos el texto que esta en TextBox entre "#" pues así lo hemos definido en el programa Makecode

2025-11-02 22_30_07-Mattermost Desktop App.png

Si se ha recibido un mensaje, pues que lo visualice, pero primero comprueba que el mensaje no este vacío
NOTA el mensaje "message" lo arrastras desde la instrucción "when.." tal y como señala la línea roja

2025-11-02 22_30_57-Mattermost Desktop App.png

basicoBluetoothLE.aia

La APP a tu móvil

Tienes dos opciones

OPCIÓN EN VIVO AI COMPANION

Instalas la APP MIT AI2 COMPANION

APP-MIT.png

En APP INVENTOR 

conect-ai-companion.png

Y sale un código y un QR asociado al código

cod-ai-companion.png

Abrimos la APP MIT AI2 COMPANION y metemos el código anterior (o lo escaneamos con el QR)

ai-companion2.jpg

En APP INVENTOR verás que sale una barra de progreso enviando tu APP a tu móvil. Cuando termina automáticamente lo ejecuta.

A jugar...

Música y sonido con micro:bit

Música y sonido con micro:bit

Una pequeña melodía

Secuencias

By pressing down a little key, it plays a little melody.

Kraftwerk, "Pocket Calculator", 1981

El menú Música de MakeCode contiene muchos bloques para producir sonidos y melodías. La forma más rápida de generar una pequeña melodía es introducir en el código el bloque play melody. En el ejemplo siguiente, al pulsar el botón A sonará una melodía pregrabada elegida de una lista desplegable.

Play melody.png

La melodía suena en el fondo, in background, por lo que el resto del código que haya sido introducido en micro:bit seguirá ejecutándose mientras suene la música.

La opción  hasta que termine detiene la ejecución del código hasta que finalice la melodía.

La opción looping in background hace sonar la música continuamente mientras se ejecuta el resto del código programado en micro:bit.

También es posible programar pequeñas melodías usando el bloque play melody at tempo. En el monento de programar, el bloque despliega un secuenciador gráfico de ocho notas y una octava, en el que las notas están codificadas por colores. Además, el bloque permite elegir el tempo de reproducción en bpm o pulsos por minuto. Vamos a usar el bloque play melody at tempo para codificar un arpegio que suene a 240 bpm al pulsar el botón B:

Secuenciador.png

Adicionalmente, el bloque play melody at tempo dispone de varias secuencias programadas, a las que se accede pulsando sobre el botón Galería.

Galería de melodías.pngMelodías y efectos de sonido

El bloque play contiene varias melodías pregrabadas, que pueden seleccionarse mediante una lista desplegable.

Play 2.png

Con la versión 2 de micro:bit podemos añadir efectos de sonido por medio del bloque play.  De nuevo, al pulsar sobre el bloque se desplegará una lista de los efectos disponibles.

El programa de la figura usa play para hacer que suene el efecto misterioso cuando micro:bit sea agitado.

Play sounds.png

Música y sonido con micro:bit

Grabadora de sonidos

La versión 2 de micro:bit tiene la capacidad de grabar sonidos gracias a su micrófono integrado. El sonido grabado puede reproducirse con el altavoz de la placa aunque, debido a su pequeño tamaño, la calidad es algo pobre. A pesar de ello, experimentar con la grabación del sonido siempre producirá resultados interesantes.

El sonido grabado se guarda en la memoria RAM de la placa, por lo que se borrará cuando se desconecte la alimentación.

Cuando se accede al entorno de MakeCode no aparece ningún menú de bloques relacionados con la grabación o con la reproducción del sonido. Resulta por lo tanto necesario cargarlo como una extensión del lenguaje de bloques de micro:bit. Para ello hay que pulsar sobre el menú Extensiones de la caja de herramientas de MakeCode y seleccionar audio-recording. Tras unos instantes, aparecerá en  la caja de herramientas un nuevo menú llamado Record.

Menú record.png

Con la nueva extensión ya cargada, podemos pasar a codificar un sencillo grabador y reproductor de sonido.

El programa debe grabar un sonido cuando se pulse el botón A y debe reproducirlo al pulsar el botón B. Durante la grabación mostraremos en pantalla el icono universal record (algo parecido a un círculo) y durante la reproducción mostraremos el icono universal play (un triángulo apuntando hacia la derecha). Cuando el programa termine de grabar o de reproducir, debe mostrar el icono pause (dos barras verticales). El programa puede ser algo parecido a esto:

Código grabadora.png

Una vez introducido el código, el simulador de MakeCode nos ofrecerá la posibilidad de probar el funcionamiento del programa sin necesidad de descargarlo previamente en la placa. Para ello usará el micrófono y el altavoz de nuestro ordenador.

La duración del mensaje grabado es de unos 6 segundos.

Adicionalmente, podemos usar el evento al iniciar para ajustar al máximo la calidad y la sensibilidad del micro.

Al iniciar grabadora.png

Set sample rate to 22000 for everything indica que tanto la grabación como la reproducción del sonido se realizarán tomando 22000 muestras o lecturas de la onda sonora por segundo.

Música y sonido con micro:bit

Fray Santiago

Por medio del bloque play tone, del menú Música, micro:bit puede reproducir melodías algo más complejas. Hay que recordar que para poder reproducir la melodía es necesario disponer de una tarjeta de la versión 2, ya que la primera versión de micro:bit no dispone de altavoz integrado.

A modo de ejemplo vamos a codificar la melodía Fray Santiago, cuya partitura se muestra a continuación:

Partitura Fray.png

De acuerdo con la partitura, las notas musicales que hay que reproducir son:

Do-Re-Mi-Do (2 compases)

Mi-Fa-Sol (2 compases)

Sol-La-Sol-Fa-Mi-Do (2 compases)

Re-Sol-Do (2 compases)

El bloque play tone da la posibilidad de ajustar la duración de las notas en pulsos. Algunas de las notas de Fray Santiago son negras, por lo que durarán un pulso. Otras son corcheas y deben durar la mitad de una negra, es decir, medio pulso. Las blancas tendrán una duración de dos pulsos.

Usaremos un evento si agitado para que la música se inicie al sacudir la tarjeta. Como cada compás se repite dos veces, deben usarse varios bucles repetir 2 veces para ahorrar líneas de código. Aplicando todo lo expuesto, el programa tendrá el siguiente aspecto:

Fray Santiago.jpg

Cuando el programa esté completo, el simulador de micro:bit dará la opción de agitar la placa con el puntero del ratón para reproducir la melodía desde el ordenador, sin necesidad de descargarla en la placa física.

Jack.pngPor otro lado, la imagen del simulador muestra la posibilidad de conectar la tarjeta a un altavoz externo por medio de unas pinzas de cocodrilo y del jack de 3,5 mm del altavoz. Esta es la solución para reproducir sonidos cuando no se dispone de una tarjeta de la versión 2.

Música y sonido con micro:bit

Controles de volumen, tempo y tono

Ajustando el volumen y el tempo

La potencia del altavoz de micro:bit no es muy alta, pero puede regularse con el bloque específico establecer volumen a. Por medio de este bloque el nivel sonoro puede ajustarse entre valores de 0 y 255. El ajuste del volumen puede realizarse en cualquier momento de la ejecución del programa. En el caso de la melodía de Fray Santiago, podemos fijar el volumen dentro del evento al iniciar. Además, aprovecharemos este evento para mostrar permanentemente en pantalla una corchea.

Control de volumen.png

De nuevo, tras modificar el programa de Fray Santiago, el simulador de micro:bit nos mostrará cómo conectar la tarjeta a un altavoz externo.Corchea en pantalla.pngAl conectar la placa a un altavoz, puede ser deseable desconectar el altavoz interno. Esta función la realiza el bloque llamado configurar altavoz interno, que puede adoptar los estados activado y desactivado.

Desactivar altavoz.png

La melodía se reproduce por defecto a un tempo de 120 pulsos por minuto. El bloque ajustar tempo a (bpm) admite tempos de entre 40 y 500 pulsos por minuto. Para reproducir Fray Santiago a una velocidad menor que 120 bpm, daremos al tempo un valor de 90 bpm dentro del evento al iniciar.

Ajustar tempo.pngSonidos estocásticos

El bloque tono de timbre (Hz) produce un sonido continuo cuya frecuencia en hertz (Hz) puede ser ajustada. El tono generado por micro:bit no tiene una duración determinada, así que sonará hasta que sea apagado mediante el bloque para todos los sonidos

Usando estos dos bloques podemos programar un generador de notas aleatorias. Para producir números aleatorios se utiliza el bloque escoger al azar de, disponible en el menú Matemática.

Aleatoria.png

De acuerdo con el código presentado, cada vez que se pulse el botón A, la placa generará al azar entre 16 y 32 sonidos, cuyas frecuencias variarán entre 262 Hz y 440 Hz, y que durarán entre 125 ms y 250 ms.

Tipos de IA

Viendo esta clasificación ¿Cuál es el tipo de IA que se usa en micro:bit?

Muy fácil: ML Aprendizaje automático supervisado

ML : APRENDIZAJE AUTOMATICO O MACHINE LEARNING

Aquí los algoritmos aprenden a partir de datos, y ellos buscan patrones para identificar. Cuanto más datos, mejores resultados.

El principio es básico. Queremos diferenciar silla mesa: Analiza datos, localiza patrones (cuatro patas, algo común, el tamaño y forma, patrones que diferencian como el respaldo....) con esas características, puede realizar un entrenamiento, y por lo tanto esta preparado para realizar predicciones.

Hay varios tipos de ML:

RL : APRENDIZAJE REFORZADO O REINFORCEMENT LEARNING

Es un modelo que busca la optimización. Utiliza resultados anteriores e intenta mejorarlos. Para buscar esto, se definen estados con unos parámetros que implican premio o penalización. La máquina busca soluciones y acciones para buscar los premios y huir de las penalizaciones.

DL : APRENDIZAJE PROFUNDO O DEEP LEARNING

Es un subconjunto del ML no supervisado, Se crea una red neuronal organizadas en capas, cada capa especializada, por ejemplo la primera de entrada recoge los datos, las intermedias, ya ocultas, identifican patrones y la última, la salida que recoge la información procesada  anteriores, la que toma las decisiones.

PLN : PROCESAMIENTO DE LENGUAJE NATURAL

Utiliza conceptos de DL y ML para comprender el lenguaje humano. Una aplicación son los chatbots. Que pueden ser:

EJEMPLOS 

LEARNING ML cabeza_genio.png
 https://web.learningml.org/en/home/ 

ML: MACHINE LEARNING FOR KIDS 2024-06-08 13_08_30-Machine Learning for Kids logo.png

https://machinelearningforkids.co.uk/#!/welcome

Ver nuestro tutorial en https://libros.catedu.es/books/robotica-educativa-con-mbot/page/maquina-educable-con-machine-learning-for-kids-y-scratch

DL REDES NEURONALES : QUICKDRAW 2024-06-08 13_22_52-quick draw - Buscar con Google.png

https://quickdraw.withgoogle.com/ Es un videojuego donde se ve claramente como se va perfilando las decisiones en forma de árbol y como la etapa final va reconociendo tu dibujo. En esta red, la primera etapa de la red neuronal son trazos que dibujas, y las neuronas intermedias son fruto de una extensa base de datos de dibujos. La última etapa es la decisión basada en las anteriores neuronas.

PRUEBALO ES SUPERDIVERTIDO, INCLUSO EN UN MÓVIL 
qr_img.png

PLN: CHATGPT COMO FUNCIONA

DL CREA TU PEQUEÑA RED NEURONAL CON PYTHON

DL: GOOGLE DEEPMIND
 Google deepmind desarrolló una red neuronal para aprender a jugar videojuegos, y ganó a varios campeones humanos en videojuegos complejos (de los que inicialmente la máquina desconocía las reglas). Puedes ver en https://deepmind.google/ los diferentes proyectos actuales.

 

Robótica e IA

Como se puede ver la Micro:bit esta entre nuestros preferidos para aprender la IA con la robótica

Nomenclatura

Recomendamos utilizar NoPT ML pues son mucho más educativos.
Además recomendamos no 🛜, así no se envían datos a ningún servidor.
                Esto es importante en los casos 🎞️🔊por protección de datos.
Marcamos con ❤️ nuestros favoritos.

Hardware
Software

Create AI

Create AI

Qué es CreateAI

Es una aplicación web en  a https://createai.microbit.org/ ideada para realizar estos pasos:

  1. Registrar los datos del acelerómetro de la micro:bit. En la web lo llaman paso Collect data
  2. Crear una máquina ML de Inteligencia Artificial que aprenda de los datos capturados En la web lo llaman paso Test model
  3. Generar instrucciones para poderlos usar en Makecode En la web lo llaman paso Code

Es decir, crea una máquina Machine Learning ML etiquetado¿No sabes lo que es eso? ) para reconocer diferentes acciones del acelerómetro de micro:bit

ATENCIÓN, HAY DOS PROGRAMAS QUE SE CARGAN EN LA MICRO:BIT Y DIFERENTES CONEXIONES QUE CREA CONFUSIÓN :

2025-10-13 16_32_03-Greenshot.png

Create AI

Vestibles

Para proyectos con CreateAI es recomendable fijar la micro:bit a una pulsera. 

2025-10-14 08_35_58-Greenshot.png2025-10-14 08_36_28-Greenshot.png

Fuente Ro-botica aprox 2€

2025-10-14 08_43_48-WhatsApp.png

Otro Modelo Elecfreaks aprox 10-15€ :

O modelos "maker" reciclando un trozo de tele de un vaquero y de una camiseta y un velcro. Instrucciones en https://www.instructables.com/Microbit-DIY-Smart-Watch/

Create AI

Paso 1 Collect data por Bluetooth y 1 micro:bit

Si trabajamos con un PC sin bluetooth no puedes usar esta página, mira esta página

Conectamos nuestra micro:bit con CreateAI

Nos vamos a https://createai.microbit.org/ a Get started 2025-10-13 16_32_03-Greenshot.png

New session si es la primera vez, sino puedes ir al anterior grabada con las otras opciones

2025-10-13 16_32_52-Greenshot.png

conectamos nuestra microbit con un cable USB y le damos a Connect

2025-10-13 16_34_26-Greenshot.png

Si detecta conexión de Bluetooth, te mostrará la siguiente pantalla (usar 1 microbit+bluetooth) en caso contrario, tienes que usar 2 microbits tal y como dice aquí

2025-10-13 16_35_12-Greenshot.png

Para llevar un programa a la micro:bit hace falta conexión por cable USB. Ahora va a cargar el programa que le facilitará a CreateAI los datos

Al conectar (por cable USB) nos pide elegir la micro:bit y seguimos los pasos

2025-10-13 16_36_46-Greenshot.png

Se cargará en la micro:bit el programa que permitirá transferir los datos el acelerómetro a la interfaz web CreateAI

2025-10-13 16_37_34-Greenshot.png

OJO, ESTE NO ES NUESTRO PROGRAMA FINAL, (paso Code) este no es el programa que nosotros editamos lo que queremos. Es un programa predeterminado, no editable, que sirve sólo para que CreateAI capte los movimientos del acelerómetro y así la máquina ML aprende con IA las acciones.

Preparado para que CreateAI lea datos del acelerómetro de la Micro:bit

Le ponemos una alimentación externa. Podemos usar pilas, batería de dron o powerbank :

2025-10-13 17_01_16-WhatsApp.png
Nos pide reproducir el patrón de la pantalla (esto se debe para asegurarse que sólo se comunica con ese micro:bit, por si hay otros micro:bits por el aula) lo normal es que coincida, por lo tanto no hay que hacer nada, en caso contrario con el ratón hay que reproducir el patrón que refleja la micro:bit

2025-10-13 16_53_54-WhatsApp.png

Luego nos pide conectarlo vía Bluetooth:

Para recopilar datos, la conexión es por Bluetooth lo que nos facilita libertad de movimientos

2025-10-13 17_02_07-Greenshot.png

Y lo probamos en diferentes ejes

O sea, tenemos nuestra micro:bit conectado con CreateAI y preparada para registrar movimientos.

Create AI

Paso 2 Test model

Grabando una acción 

Vamos a darle una acción, elegimos un icono, uno nombre y una acción, en este caso

 2025-10-13 17_14_06-Greenshot.png

y lo grabamos mínimo tres veces :

Cuanto más grabaciones hagas, la máquina ML detectará mejor tus acciones. Mínimo son 3.

Y así con varias acciones, aquí hemos añadido uno de estar "loco" que es agitando en el eje Y y otro que es quieto

2025-10-13 17_22_52-Greenshot.png

Pulsamos a Train model

En en este momento cuando se genera la inteligencia artificial MACHINE LEARNING ML etiquetado 

 Es muy rápido y enseguida pasa a la ventana donde podemos ir probando qué va detectando:

2025-10-13 17_25_15-Greenshot.png

Create AI

Paso 3 Code

Una vez testeado nuestro modelo pulsamos a Edit in MakeCode

2025-10-14 07_53_21-Mattermost Desktop App.png

AHORA ES NUESTRO MOMENTO DE PROGRAMAR

Podemos poner lo que queramos, por ejemplo

  1. hemos puesto una melodía en la acción círculos planoXY
  2. un silbido si lo pongo loco
  3. que silencia todo si esta quieto

codecreateai.jpg

Paso 4 descargarlo en la micro:bit y nos pide conectarlo con cable pues tiene que subir el programa

PARA DESCARGAR UN PROGRAMA SIEMPRE ES POR CABLE USB

2025-10-13 17_28_11-Greenshot.png

Una vez descargado ya puedes probar tu invento

Ten en cuenta que también se descarga en la micro:bit la máquina ML creada con IA

Por lo tanto no necesitas el ordenador conectado ni Internet para ejecutarlo ni esta conectado la micro:bit por Bluetooth al PC

Create AI

Sin Bluetooth y 2 micro:bit

La idea es utilizar una micro:bit que haga de "puente inalámbrico" utilizando la conexión vía radio que tiene integrada la placa micro:bit

Notación:

2025-10-14 14_59_38-Microsoft PowerPoint - [Presentación1].png

PASO 1 COLLECT DATA

Supongamos que no tenemos Bluetooth pero dos micro:bits. En el proceso de Collect data le damos a Connect

2025-10-14 14_16_59-Greenshot.png

Ya detecta que no tenemos Bluetooth por lo tanto nos invita a utilizar 2 micro:bits

2025-10-14 14_17_53-Greenshot.png

MICRO:BIT1 LA QUE VA A ESTAR "MOVIENDOSE"

Conectamos micro:bit1 con cable

2025-10-14 14_18_36-.png

2025-10-14 14_23_10-.png

Le descarga el programa de recoger los datos 

2025-10-14 14_19_13-Configuración.png

Desconectamos del cable y le ponemos la batería :

2025-10-14 14_24_50-WhatsApp.png

MICRO:BIT2 LA QUE VA A ESTAR QUIETA

Lo conectamos al pc con cable USB

2025-10-14 14_26_07-WhatsApp.png

Y le descargamos el programa de transferencia por radio

2025-10-14 14_27_33-Documento1 - Microsoft Word.png

A recoger los datos

Ya están los dos vinculados:

PASO 2 TEST MODEL

No hay que hacer nada :

PASO 3 CODE

Pulsamos a Edit in MakeCode:

2025-10-14 14_40_05-.png

Modificamos lo que queramos

2025-10-14 14_42_16-.png

PERO ATENCIÓN AQUÍ EN DOWNLOAD TIENES QUE CONECTAR POR CABLE LA MICRO:BIT1 ¡¡NO LA 2!!!

Es decir, el micro:bit1 que se mueve, pues es el que tiene que ejecutar el programa. El micro:bit2 sólo nos ha servido como puente para recoger los datos

2025-10-14 14_44_47-WhatsApp.png

Create AI

Entendiendo a mi peluche

Vamos a a reconocer diferentes gestos de un muñeco peluche. Extraído de https://microbit.org/projects/make-it-code-it/ai-storytelling-friend/

Procedemos a reconocer tres acciones:

En este enlace  directamente saltas al paso Collect Data

Paso Collect Data :

  1. Podemos borrar sus datos y así lo personalizamos a los de nuestra mascota
  2. Grabamos las acciones
  3. Le damos pues a Train Model para crear la máquina ML

2025-10-14 12_59_40-WhatsApp.png

Test model  lo testeamos si realmente funciona y la damos a Edit in MakeCode, si no funciona bien pues atrás a Edit data samples

2025-10-14 13_14_28-Mattermost Desktop App.png

En el paso Code podemos hacer lo que queramos, él nos enseña un programa por defecto, se puede modificar como se desee

2025-10-14 13_45_48-WhatsApp.png

El resultado es:

Create AI

Más proyectos CreateAI

Con el mismo principio de detectar con la AI movimientos con el acelerómetro, se pueden hacer diversos proyectos : 

Contador de tiempo de ejercicio

https://microbit.org/projects/make-it-code-it/simple-ai-exercise-timer/

Contador de ejercicio

https://microbit.org/projects/make-it-code-it/ai-activity-timer/

Y mucho más ....

https://microbit.org/ai/

2025-10-14 14_14_14-Greenshot.png

Learning ML

Learning ML

Conectar Micro:bit con Scratch

ES NECESARIO QUE NUESTRO ORDENADOR TENGA BLUETOOH por ejemplo un portátil.
Y la placa Micro:bit la versión 2

PASO 0 Las cosas claras: Scratch ¿Qué Scratch?

Pues cualquiera:

  1. El online de la página oficial de Scratch https://scratch.mit.edu/
  2. Uno offline, por ejemplo EchidnaML que tiene Scratch y Learning ML integrado https://echidna.es/a-programar/echidnaml/
    1. Ojo, no te confundas: Te creeras qeu Echidna ML sólo sirve para las placas Echidna, pues no, como tiene Scratch también puede servir para Micro:bit
  3. El online LearningML en https://v2.learningml.org/ que es una máquina de IA que se integra con Scratch (igual que EdhidnaML)

Como lo que nos interesa es la IA podemos elegir la opción 2 o 3, vamos a elegir la 3 para no marearnos con las instrucciones de la placa Echidna

PASO 1 ¿Qué necesito para conectar micro:bit con Scratch?

Dos cosas:

Para el paso 1.1 lo tienes en la web https://scratch.mit.edu/microbit te lo descargas, lo instalas y lo ejecutas, se ejecuta en segundo plano que no te molestará para nada.

2025-12-12 20_46_31-Greenshot.png

Para el paso 1.2 en la misma web https://scratch.mit.edu/microbit tienes el fichero micro:bit HEX que te lo tienes que descargar y copiarlo en la placa micro:bit como si fuese un pincho USB

OJO el fichero de lo descargar comprimido, hay que descomprimirlo !!!
⚡No copies en la placa micro:bit el fichero comprimido⚡⚡

2025-12-12 20_50_39-Greenshot.png

PASO 3 Scratch de https://v2.learningml.org/

Vamos a la web y nos vamos al icono de Scratch

2025-12-12 20_40_46-Greenshot.png

Se nos abre una web https://v2.learningml.org/scratch/ y vamos a añadir extensión

2025-12-12 20_41_28-Greenshot.png

Elegimos micro:bit ya señala que necesita Bluetooth

2025-12-12 20_42_56-.png

Si has realizado correctamente los pasos 1.1 y 1.2 entonces aparece tu placa micro:bit sólo le tienes que dar a Conectar

2025-12-12 20_55_10-Greenshot.png

Ir al editor

2025-12-12 20_55_46-Greenshot.png

PASO 4 PROBAR

Arrastra una instrucción, por ejemplo el corazón, dos clicks y ¡¡funciona!!

2025-12-12 20_57_18-Greenshot.png

VENTAJAS
Esta extensión permite trabajar con la microbit EN VIVO Y INTERACTUAR CON EL ORDENADOR ver cuadro más adelante

DESVENTAJAS
No tiene instrucciones para manejar los pines. Esto es una desventaja pues no permite usar la maqueta SMART HOME PARA MICRO:BIT

2025-11-30 10_24_40-ESQUEMA LENGUAJES PROGRAMACIÓN - PowerPoint.png

Learning ML

Enseñamos a la máquina

Podemos realizar un programa que siga los movimientos del brazo

braquioplastia.png y que la pantalla lo reproduzca

Haremos tres clases:

Da igual que las tres clases las llames 0 90 180 o derecha, arriba izquierda, lo importante es que coincida el nombre que le has puesto a la clase con el nombre en el programa

Enseñamos a la máquina

2025-11-23 10_52_08-EchidnaML.png


El programa sería :

2025-12-12 20_17_35-EchidnaML.png

y el resultado

Otros ejemplos

Aunque están realizados con otra placa, el principio es el mismo, podemos hacer que se visualice por la placa micro:bit el símbolo que queramos ante el reconocimiento.

No podemos activar los pines de la placa micro:bit por lo tanto no podemos mover servos u otros actuadores como en la maqueta Home Smart para Micro:bit

 

Muro

https://libros.catedu.es/books/microbit

 

Hecho con Padlet

Créditos

Autoría y licencias

Cualquier observación o detección de error en soporte.catedu.es

Los contenidos se distribuyen bajo licencia Creative Commons tipo BY-NC-SA excepto en los párrafos que se indique lo contrario.

image-1648462225402.gif

image-1648462299882.png

image-1648462361893.png