Antes de empezar: tres ideas
1. Cuatro piezas
Un sistema IoT tiene un dispositivo con sensores, una pasarela que lo conecta a internet, la nube (un servidor que reparte los datos) y un panel que los muestra. Las ciudades inteligentes funcionan igual, con miles de sensores.
2. MQTT
Nadie habla con nadie directamente. Quien mide publica un mensaje en un tema y el broker (el repartidor) se lo entrega a quien se haya suscrito a ese tema. Un mensaje es solo un tema y un valor.
📖 Cómo se ve un mensaje
montesteam/eclipse/lince-4k7/luz → 182
- Los temas son como carpetas separadas por
/. +sustituye un nivel:montesteam/eclipse/+/luzes la luz de todas las estaciones.#sustituye todos los niveles que quedan:montesteam/eclipse/lince-4k7/#es todo lo de una estación.
3. Qué pasa en un eclipse
Cuando la Luna tapa el Sol la luz cae, la temperatura baja unos grados con algo de retraso y el ruido ambiente disminuye porque muchas aves se callan. Pero una nube también baja la luz: por eso hay que mirar varias variables.
📖 Qué hace falta para el eclipse de verdad
Sensores de luz y temperatura fuera de casa, una placa con wifi que publique sola (sin ordenador) y alimentación. Hoy ensayamos la parte de datos y de nube.
El camino del dato
1 Elige el broker (la nube)
Sin conexión. Elige un broker y pulsa «Conectar».
Los brokers públicos son gratuitos pero abiertos: no escribas datos personales. Si el centro bloquea la conexión, usa el simulado: funciona con dos pestañas de esta misma página.
2 La estación publica
Estación parada.
El eclipse simulado dura 150 segundos: 60 de luz que baja, 30 de totalidad y 60 de luz que vuelve. En la vida real dura horas; aquí está comprimido para verlo en clase.
3 El panel se suscribe
El broker no guarda historial: lo que ves es lo que el panel ha ido recibiendo desde que abriste la página.
Los paquetes MQTT, en directo
| Cliente | Paquete | Contenido |
|---|
Cada línea es un paquete real: CONNECT abre la sesión, PUBLISH envía un mensaje, SUBSCRIBE pide un tema, SUBACK y PUBACK son confirmaciones.
Ensayo general en Sierra Bermeja
Butan Hero: Lince, quiero aprender astronomía y cada vez que miro al cielo me sale una nube. ¿Cómo voy a ver el eclipse del año que viene?
Lince de la Noche: Con datos. Pondré un sensor que mida la luz y la temperatura, y todo el mundo podrá verlo en directo desde su casa.
Gata Montesa: ¿Y cómo viaja el dato del sensor hasta su casa? Hay que ensayarlo antes, con el sol de cada día.
Lince de la Noche: Pues un cable muy largo.
Gata Montesa: Un broker, Lince. Alguien reparte y cada uno recibe lo que le interesa.
Misiones
Con una micro:bit de verdad
La micro:bit V2 mide temperatura, luz y ruido. Hace falta Chrome o Edge en un ordenador (o Android para Bluetooth). Por cable USB es lo más fácil; el Bluetooth también funciona.
⚠️ Si usas Bluetooth, tres cosas imprescindibles
- Instala la extensión «bluetooth» en MakeCode (Extensiones → bluetooth) y acepta quitar la radio.
- Engranaje → «Configuración del proyecto» → marca «No se requiere emparejamiento» antes de descargar.
- Que nadie más tenga cogida la micro:bit. Cierra MakeCode, la app del móvil y quítala de los dispositivos Bluetooth de Windows si aparece.
No pongas iconos ni texto en la pantalla de LEDs: la micro:bit mide la luz con esos mismos LEDs y los falsea.
Programa por USB
🔵 Programa por Bluetooth
Si no conecta: cierra Chrome, desenchufa la micro:bit, quita «BBC micro:bit» o «Dispositivo desconocido» de los dispositivos de Windows, pulsa reset y recarga la página.
Cuidado: el broker no pide contraseña
Marge The ThunderClown: ¡Jajajaja! Qué bonito panel… y qué fácil. A las doce del mediodía voy a publicar «luz = 0» en vuestro tema y toda la ciudad creerá que hay eclipse. ¡Que empiece la función!
Tiene razón en lo técnico: en un broker público cualquiera que conozca tu tema puede leer tus datos y publicar datos falsos. Con un tema difícil de adivinar se complica, pero no se resuelve. Un servicio serio usa usuario y contraseña para publicar, TLS (las direcciones wss:// y mqtts://) para que nadie lea el tráfico, y listas de acceso (ACL) que dicen quién puede escribir en qué tema. Y siempre conviene preguntarse: ¿este dato podría ser falso?
Comprueba lo que sabes
Informe de la estación
Supera las misiones que puedas, escribe tus conclusiones e imprime el informe (o guárdalo como PDF). Tu nombre solo se queda en esta página.
| Misión | Estado |
|---|
Glosario
Palabras de este chisme
- IoT: Internet de las Cosas: objetos con sensores conectados a internet.
- Pasarela (gateway): equipo que conecta un dispositivo sencillo con internet.
- MQTT: protocolo ligero de mensajes por publicación y suscripción.
- Broker: servidor que recibe los mensajes y los reparte a los suscritos.
- Tema (topic): nombre jerárquico de un canal, como
montesteam/eclipse/lince-4k7/luz. - Comodín:
+sustituye un nivel del tema y#sustituye todos los que quedan. - QoS: garantía de entrega: 0 como mucho una vez, 1 al menos una vez con confirmación, 2 exactamente una.
- Mensaje retenido: último valor de un tema que el broker guarda y entrega a quien se suscribe después.
- Testamento (last will): mensaje que el broker publica si el cliente se cae sin despedirse.
- TLS: cifrado de la conexión: la «s» de
wss://.