← Índice Valentina Tech
Misión 2 · Bitácora de Misiones · Astra-7

El panel de mando improvisado

Ya hay luz en la cabina. Y con esa luz descubres algo inquietante: el panel de mando
original de la Astra-7 está destrozado
. Botones arrancados, cables sueltos, tornillos
por el suelo. Y ahí fuera, en el océano oscuro de K-342, empiezan a moverse sombras
alrededor del casco…

No hay tiempo para lamentarse, cadete. Los mejores exploradores improvisan. Vas a
construir tu propio panel de mando con objetos que encuentres en la nave —una cuchara,
una moneda, un trozo de papel de aluminio— y convertirlos en controles reales gracias a un
truco increíble: el toque capacitivo.

Tu placa tiene unos puntos especiales llamados pads de toque (marcados A1, A2, A3,
A4…
). Con cables de pinzas de cocodrilo conectas un objeto a un pad, y ¡al tocar ese
objeto, la nave obedece!
Es la misma tecnología que las pantallas de los celulares.

🎬 Esto es como en las películas: vas a fabricar una consola de nave de verdad, con
sus mandos, sus etiquetas y sus alarmas. Cuando termines, pilotarás la Astra-7 tocando
objetos como un auténtico capitán/a.

🎯 Tu misión

Construir un panel de mando con 4 objetos sobre una hoja, con la placa en el centro,
cada objeto conectado a un pad de toque, junto a su letrero y con un tipo de acción
diferente
.

🏷️ Paso 1 — Arma tu consola en una hoja en blanco

  1. Toma una hoja de papel en blanco: será el tablero de tu consola.
  2. Coloca la placa CPX justo en el centro de la hoja. Es el cerebro de la nave.
  3. Alrededor de la placa, escribe con marcador 4 letreros, uno por mando:
    NAVEGACIÓN, SIGILO, ALERTA y PELIGRO. Deja un hueco junto a cada letrero.
  4. Consigue 4 objetos que conduzcan la electricidad: por ejemplo una cuchara de
    metal
    , una moneda, un trozo de papel de aluminio sobre cartón y una llave
    (o un dibujo hecho con lápiz de grafito, que también conduce).
  5. Coloca cada objeto encima de su letrero y conéctalo con pinzas de cocodrilo al pad
    que le corresponde: NAVEGACIÓN → A1, SIGILO → A2, ALERTA → A3, PELIGRO → A4.
    Recuerda: A0 no sirve para toque (es para sonido); usa A1–A7.
  6. Con todo ya conectado, reinicia el programa (guarda code.py de nuevo o pulsa
    reset). Los sensores se calibran al arrancar: si conectas las pinzas después, un
    mando puede activarse solo. Conecta primero, arranca después.

🎬 ¡Con la placa en el centro y los objetos rotulados alrededor, tu consola se verá como
la de una nave espacial de verdad!

🎛️ Paso 2 — La tabla de tu panel (obligatorio)

Cada objeto hace una acción distinta. Estos son los valores exactos que debes usar:

Pad Letrero Color (RGB) Brillo Sonido
A1 🟢 NAVEGACIÓN Verde (0, 255, 0) 0.3 (normal) — (silencio)
A2 🔵 SIGILO Azul (0, 0, 255) 0.05 (muy bajo → "tenue") — (silencio)
A3 🟡 ALERTA Amarillo (255, 255, 0) 0.5 Pitido agudo: nota La (A5) = 880 Hz, 0.2 s
A4 🔴 PELIGRO Rojo (255, 0, 0) 0.6 (alto) Alarma grave: nota Re (D3) ≈ 150 Hz, 0.4 s, ×2

💡 ¿Qué significa "azul tenue" y "brillo bajo"? El color azul siempre es
(0, 0, 255). Lo que lo hace verse tenue es el brillo: un dial de 0.0 (apagado)
a 1.0 (máximo). Con brillo 0.05 el azul se ve muy débil (sigilo); con 0.3 se ve
normal. ¡El color no cambia, cambia la intensidad!

🧰 Paso 3 — Tips para que lo hagas tú solo/a

Con estas recetas puedes programar los cuatro mandos. No necesitas nada más.

A) Leer un objeto (¿lo estoy tocando?)

cp.adjust_touch_threshold(200)   # menos sensible (si se activa solo)

if cp.touch_A1:      # ¿toco el objeto conectado al pad A1?
    ...              # entonces haz su acción

Cambia A1 por A2, A3 o A4 para cada objeto.

B) Poner un color y un brillo en TODAS las luces

cp.pixels.brightness = 0.3        # el dial de intensidad (0.0 a 1.0)
cp.pixels.fill((0, 255, 0))       # pinta las 10 luces de ese color RGB

C) Hacer un sonido (una nota durante un tiempo)

cp.play_tone(880, 0.2)   # toca la nota La (880 Hz) durante 0.2 segundos

El primer número es la frecuencia de la nota (Hz) y el segundo, cuántos segundos
suena.

D) Parpadear un color (para los mandos ALERTA y PELIGRO): enciende y apaga en bucle.

cp.pixels.fill((255, 255, 0)); time.sleep(0.3)   # amarillo, 0.3 s
cp.pixels.fill((0, 0, 0));     time.sleep(0.3)

PELIGRO funciona igual pero en rojo, con pausas de 0.15 s (parpadeo rápido) y su
alarma cp.play_tone(150, 0.4) sonando dos veces.

👉 Comprueba tu consola: toca la cuchara de NAVEGACIÓN y todo se pone verde; toca
el aluminio de PELIGRO y estalla la alarma roja con su tono grave. Cada mando responde
siempre igual.

🌟 Si quieres ir más allá (reto opcional)

✅ Misión cumplida cuando…

🏅 Insignia: "Mando improvisado activo".

Valentina Tech · Circuit Playground Express · CircuitPython