Proyecto de COMPUTACIÓN FÍSICA con ED1 y MicroBlocks sobre la base de Snap! y este cuaderno.
Nota: todas estas entradas forman una continuidad para el estudio de la placa ED1 y su programación en MicroBlocks.
– Recursos para la puesta en marcha de la placa y su conexión a MicroBlocks.
– Primeras prácticas, explicaciones y ejercicios que se nos proponen, contados a modo de Cuaderno de Bitácora.
– Después continuamos con lo que viene ahora.
– Por último, desplegamos un pequeño proyecto con un vídeo y un informe que lo justifica, que en mi caso ha sido éste: ¡Robot! ¡Cuidado! ¡Que está en obras!
PROGRAMACIÓN DEL SENSOR DE LUZ
Primero, voy a verificar que el sensor y su programación me funcionan. A ver cómo distingo cuándo es uno y cuándo es otra.
La programación (mi aportación personal al código del sensor) es esta.. Me he liado muchísimo.
Para valorar el nivel de luz, mejor toco directamente «nivel de luz» y ya está.
Conecto el potenciómetro. Para ello, me dirijo a mi enlace, mi particular «librería» que es mi Laboratorio de Interactividad. Allí está, como un tesoro, explicado y bien explicado. Bitácora, me tengo que encender la luz y poner las gafas, porque, por mucho que haya adaptación de muchas cosas, la mala visión es un obstáculo casi insalvable para el acceso al mundo de las cosas físicas en informática.
Me voy a mi carpeta donde he metido mis programaciones (explicada en otro nivel muchísimo más inferior que este, en esta entrada para mocosos preescolares… Nosotros estamos aquí, en el nivel uno, cerca de las Ingenieriles cimas), saco la del potenciómetro, la arrastro, le doy… No veo nada y tengo que apagar la luz…
¡FUNCIONA!
Es tan increíble como cuando ves que tu adolescente, que pensabas que nunca lo conseguiría, se ha insertado en el mundo laboral. Perfectamente predecible y perfectamente asombroso, una fiesta. Champagne, baile, fuegos de artificio, hogueras en la playa y esas luces de colores que salen en el Polo Norte en el cielo y que casi podríamos simular…
PROGRAMACIÓN DE LA TIRA DE NEOPÍXELES
Reviso esta programación y ahora la entiendo de verdad (Madre mía, qué mala impresión de CAOS sin futuro estoy dando.) Claro: primero inicializa y borra lo que sea que se ha dibujado y luego lo que hace es leer lo que le dice el potenciómetro
Ahora vuelvo a mi programación de la secuencia de NeoPíxeles y le tengo que dar, a ver si funciona. No funciona. No lo entiendo. El potenciómetro funciona, la tira funciona y la programación es una copia de la del cuadernillo. Entonces lo que hago es:
Tiro la programación de la inicialización de la tira de NeoPíxeles y del potenciómetro, por si están interfiriendo. Pruebo y me sale en la pantalla la lectura que hace el potenciómetro, sí, es el potenciómetro.Bitácora, lo que más me estresa de este momento es que si no me sale esto, no puedo avanzar tampoco en lo siguiente, es decir, que es lo que he llamado un «ejercicio llave», que me está cerrando la puerta.
Ahora me ha funcionado el bloque «apaga pantalla». Otro gran aprendizaje: acabo de entender que, cuando no funciona un bloque, lo que no funciona es la programación en general.
He podido apagar las luces.
Bitácora. No es de temer el apagón digital, eso será lo de menos… ¿Qué ocurrirá cuando el mundo, al reves, «no pueda apagar sus luces»? ¿Cómo será ese día?
Pero sigue sin funcionarme la secuencia.
Entonces hago lo que siempre hay que hacer, en las dos culturas, C P Snow, que es lo que se llama VOLVER A LAS FUENTES. Me vuelvo a revisar el propio vídeo, y no mi transcripción, y veo que ¡me faltaban los dos bloques finales! Eso me fastidiaba todo el código… y ahora me funciona la secuencia.
Sigo avanzando. 15.46 de la tarde. No he comido, no he ido a la piscina, sigo en pijama, cuaderno de bitácora. Menos mal que tú no ves, cuaderno de bitácora.
El código correcto es éste que viene en mi ejercicio, al final la falta de la orden de «apagar y esperar» era la que me los dejaba encendidos permanentemente… En este momento y con este código, me parpadean, pero no se me encienden secuencialmente.
¿Por qué?
Creo que es el momento de descansar. Son las 16:05
18:20 ya de vuelta. Bitácora, ya estoy mejor, gracias. Porque yo, a diferencia de ti, tengo un cuerpo… Porque tampoco las Bitácoras tenéis cuerpo, estáis siempre ahí, como la Ia.
Creo que tiene que ver con la determinación del color, que, al modificarla, ha modificado la orden principal, la del bloque donde se hace la lectura analógica.
Pero he pedido ayuda al profesor sobre todos los conceptos que quedaron colgados al principio de mi alfabetización, en https://ubischofbergerv.folio.uoc.edu/2024/11/28/a-l-f-a-b-e-t-i-z-a-c-i-o-n-d-i-g-i-t-a-l-b-a-s-i-c-a/
Las 13:20. Bitácora, me he tenido que ir a poner un implante y no puedo comer nada sólido ni con residuos. Reflexionando mientras me han hecho la radiografía, le he pedido a la enfermera que me deje hacerme un selfie mientras me la hago y he visto tres ojos: el sensor (0j0) de la radiografía, el sensor (0j0) y el el sensor (0j0) que es la cámara de mi móvil que mira. El primero es un ojo extremadamente útil, que me ayuda. Mi ojo es LO MÁS. Pero, sinceramente, el sensor del movil, su técnica, es esencial y la comparte con el de la radiografía seguramente, pero SU EXISTENCIA ES DE LOS MÁS CONTINGENTE, es decir, es un ojo que «no va a ningún sitio», un ojo que necesita legitimación constante porque, en sí mismo, no es nada, es un ojo que me permite crear historias (MEJOR SERÍA DECIR HISTORIETAS INFUNDADILLAS, COMO LA MAYORÍA) y este ojo de mi móvil tiene un nombre que es
LOS MEDIOS
LOS MEDIOS Y SU REINA, LA IMAGEN
Prohibida en el mundo árabe (creo)
Considerada (creo) de forma muy distinta en oriente
Convención entre convenciones
Manipuladora
Humana demasiado humana siempre, siempre y siempre, incluso cuando es computacional.
Así que vuelvo a empezar de cero a las 13_29 del día de hoy.
Pero antes, reproduzco el correo a los profesores, correo que me ha decidido, para poder construir escenarios atractivos, a trabajar con DOS placas en lugar de una, por lo que llamo para enterarme de cómo la puedo comprar.
CORREO A LOS PROFESORES
(Adjunto foto del ejercicio de ROBOT CON COLA PROGRAMADA, subtitulado Servomotor en acción, que consistió en conectar el servomotor y crear la programación de la activación y de los botones para que vean en qué línea voy a trabajar: la interacción no va a ser sólo de hardware (creo que se llama así) como mundo físico que manda al software (código), sino que va a ser un juego de los componentes en el espacio-tiempo real. O sea, los componentes (creo que se llaman así) van a actuar comoo «juguetes».)
Hola, Joan
Ya le he dado otro repaso a los ejercicios y, para hacer el que quiere Mónica [la artista Mónica Rikic es mi tutora en esta asignatura], he pensado mezclar interacción con elementos míos vivos, por ejemplo mi mano o una narrativa en la pantalla del ordenador.
EJEMPLO UNO: CUADRÓN RESPONDE A LA LUZ
Está la placa apoyada en el ordenador y escribo en grande en el ordenador una orden, por ejemplo.
CUADRÓN, cuando se haga la luz roja pon cara de calavera.
Y entonces quiero programas los leds todos en rojo y que, a la vez, en la placa se vea la imagen de una calavera.
Entonces necesito: inicialización de los MicroPíxeles y ponerlos todos en rojo y «muestra imagen» de la librería pantalla led.
Para ello, el código que necesitaría preparar ¿sería este?:
Al comienzo/SI/ inicialización MicroPixeles/Todos rojos/ENTONCES/MUESTRA IMAGEN CALAVERA.
¿Podría funcionar con esos bloques?
Luego iría haciendo variaciones, por ejemplo, si van serpenteando Cuadrón va en patinete, o sea, habría miles de variaciones.
EJEMPLO DOS. CUADRÓN LLORÓN
Activo el código del sensor de luz. Entonces, igual que en el anterior, pero la reacción en vez de ser imágenes de la carpeta pantalla led son sonidos, porque programo la conversión de luz a sonido. Entonces dependiendo del número de leds encendidos, el sonido cambia.
Código. Haría por un lado el de los neopixeles y por otro el del sensor de sonido y lo mismo, les pongo un condicional.
EJEMPLO TRES. EL ROBOT CON COLA CAMINA EN ARCOIRIS
Consiste en que tengo pintados en el suelo colores y al lado está la tira de NeoPíxeles. El robot va avanzando y, a la vez, sincronizo para que los píxeles se enciendan conforme pasa por delante. PERO NO TENGO LA LIBRERÍA DEL otro que no es servomotor, esa no la encuentro.
Correo a mi profesora:
Hola, Mónica.
Tengo mucho texto, discúlpame. He pensado incluir actantes del mundo real, como la música de mi ordenador o mi mano moviéndose como un personaje con dedos pintados, si te parece bien. He visto el ejercicio de más adelante, el del robot, me ha gustado mucho y esta práctica la quiero dirigir también a publico infantil. ¿¿pUEDE SER??
EJEMPLO UNO: CUADRÓN RESPONDE A LA LUZ («cuadrón» es como llamo a la pantalla de la placa)
CUADRÓN, cuando se haga la luz roja pon cara de calavera.
Y entonces quiero programas los leds todos en rojo y que, a la vez, en la placa se vea la imagen de una calavera.
Entonces necesito: inicialización de los NeoPíxeles y ponerlos todos en rojo y «muestra imagen» de la librería pantalla led.
Para ello, el código que necesitaría preparar ¿sería este?:
Al comienzo/SI/ inicialización NeoPixeles/Todos rojos/ENTONCES/MUESTRA IMAGEN CALAVERA.
¿Podría funcionar con esos bloques?
Luego iría haciendo variaciones, por ejemplo, si van serpenteando Cuadrón va en patinete, o sea, habría miles de variaciones.EJEMPLO DOS. CUADRÓN LLORÓN
Activo el código del sensor de luz. Entonces, igual que en el anterior, pero la reacción en vez de ser imágenes de la carpeta pantalla led son sonidos, porque programo la conversión de luz a sonido. Entonces dependiendo del número de leds encendidos, el sonido cambia.
Código. Haría por un lado el de los neopixeles y por otro el del sensor de sonido y lo mismo, les pongo un condicional.EJEMPLO TRES. EL ROBOT CON COLA CAMINA POR EL ARCO IRIS
Consiste en que tengo pintados en el suelo colores y al lado está la tira de NeoPíxeles. El robot va avanzando y, a la vez, sincronizo para que los píxeles se enciendan conforme pasa por delante. PERO NO TENGO LA LIBRERÍA DEL otro que no es servomotor, esa no la encuentro pero ya se lo he dicho a Joan.
2. ESTAS PROPUESTAS SÍ SE ADECUÁN A LA TAREA, ¿VERDAD?
Todavía no me han contestado, entonces voy a seguir repasándome, primero, TODO LO ANTERIOR, o sea, la puesta a punto de la placa y las herramientas de programación y los primeros pasos, y ahora continúo.
CONEXIÓN DEL POTENCIÓMETRO en pin analógico uno haciendo coincidir los colores del cable. GRACIAS a Joan tengo estos conceptos, y me siento tranquila y me es fácil retenerlos. Adjunto las explicaciones, a las que debería haber llamado «DUDAS BÁSICAS DEL MUNDO COMPUTACIONAL», en las que la sima de nuestra ignorancia humanística llega justo a lo más hondo de la Fosa de las Marianas a hacer compañía a esa bolsa de plástico de pipas Facundo que encontraron en ella, oh Bitácora, espero que no fuera una que tiré yo, Bitácora…
Me importo la secuencia.
¡Menos mal que la tengo en esta GENIAL carpeta de bloques que me he creado! Creo que hasta Joan Campas i Montaner, que me enseño a desconfiar del concepto «genio» con el, a su vez, gran maestro y referente de cualquier persona con un mínimo básico de cultura humanística que es Larry Shiner.
Pero, tenéis que reconocerlo; mi carpeta es GENIAL. Aquí la pongo. Esta es mi carpeta donde tengo metidos todos los bloques de la quinta parte del tercer ejercicio de la segunda parte de la tercera PEC. Una carpeta marxista por excelencia, como se puede comprobar en la primera parte de la segunda PEC de la cuarta asignatura del tercer curso de este Grado.
Después de activar el bloque, compruebo que, al girar el potenciómetro, los números cambian.
¡NO PUEDE SER! ¡¡¡¡¡¡FUNCIONA!!!!
Bitácora (nárrame). Ella, empoderada y sintiéndose El Llanero Solitario, o (mejor aún) sintiendo en su propia carne que soy algo así como la bisabuela del futuro Neo o la madre del Terminator Dos (SIEMPRE SOLA Y SIEMPRE CORRIENDO para evitar que pase algo REALMENTE grave, que se le sale la leche), prosigue con marcha firme su camino real por lo virtual.
CONEXIÓN DE LA TIRA: Conecto la tira de NeoPíxeles a izquierda/arriba/colorines/D1/amarillo con amarillo rojo con rojo azul con azul y ene con ene si los hubiera, hubiese o hubiere (Yo siempre hibridando las dos culturas, me digo.)
PROGRAMACIÓN DE LA TIRA: lo más genial de mi genialidad es que me quite trabajo. (Bitácora: esa es la función de cualquier objeto técnico, desde la polea a la base de datos de Excel, no entiendo por qué trabajamos cada vez más.)
DUDA: en la línea de programación ponemos que el PIN es el número 12 ¿Por qué? Yo en la placa veo D1
Errores de los que he aprendido:
– No puse el bloque «apaga NeoPíxeles» y se quedaba, por tanto, el último encendido todo el tiempo.
DUDAS:
– Cambié el color y el ejercicio no funcionaba.
– No sé si hago bien en subir los bloques completos aquí, a lo mejor está ralentizando la carga de la página.
– Para modificar el color de mono que funcione y sea preciso, he visto que se abren sus valores RGB aquí.
– Cuando subo un bloque completo (con «carga de programación» que no sé si se dice así) aparece esto, por tanto mejor voy a subir capturas a partir de ahora
Expires=1733237429&Signature=FMRfnynvphZAfE5VmgJUsSuMX8yBUAVytj41Tr918lc05JxzPU5-vRHECBf9RDH~GC2JvN4ifwqcI8uIYHNmPfOVObuz7LrNlxbR-M3~mjQDKZB5Y1vkSlGAhR8V4znLgK-SWNebFRn3~NX3tHaWFG90N24HKKftyJoDGw7zTMGwED8-AsojoRJgiu0l9WqWIbSkyXlip1AwRfpsBXqc~G1Oz-QYJOR3UizNO3Rn7goDAASn8-IHuJU8V2kAFq2n4HzDxYCahRsfVOdloqzAIOmM02fdCd9icKDgajb5LHpIE2svV4K3B-mAQALP8Jv0bD6PpiPiH0Id1cregL21YA__&Key-Pair-Id=K3T7EYR9NMFURT» alt=»» width=»478″ height=»622″ />
VIABILIDAD DEL OBJETO-BLOQUE
Bitácora, el objeto-bloque sobrecarga innecesariamente, de modo que lo sustituyo por CAPTURAS y lo retiro del «banco de medios» de WordPress.
RESULTADO en la pestaña HTML de esta página del cambio del bloque por una imagen:
Expires=1733238424&Signature=lLLN80VyikYPe3ASx4aqi6V4AhPeSKK21x5zvAAmcmxnSkeLZys-fv~kquh3KT6kF-k-ZT0DpVxmJvOfVj5RuzAre05w4wa4NmB4q~N-zl~XYs4Ywc3pzgRQUY-0rI-pFHxM3soR8NXvPlXKRhwKPuuJE8ZsfzkshX5pvqSzY74i4vPbkla4QXUjAM0ty1wWLtBCFPJA5LSOTN3aKSkDpzld437BOnZsEvAJpeZ5at80BzFm6cmFu9CQfHUcFZUdCvsBJldAHIbeTh7pLoSWdi5dHCVKLRJqb6djlmm4HKPNS3NYkqhKv-VNzAJrU0ZDvXut46nuiNUFiBYt4dVmcA__&Key-Pair-Id=K3T7EYR9NMFURT» alt=»» width=»621″ height=»719″ />
DUDA: SI COPIO ESTE CÓDIGO ¿HAGO PÚBLICA ALGUNA INFORMACIÓN PRIVADA SOBRE MI ORDENADOR QUE PUEDE HACER QUE ALGUIEN PIRATEE Y ENTRE EN MÍ (EN MI ORDENADOR, QUIERO DECIR)?¿Corro algún peligro??
Muchísimo código también. Madre mía, cada vez admiro más a los pobres desarrolladores de los países más desarrollados. Me creo una etiqueta de código (le meto unas cuantas letras al azar para que no diga nada) porque ¿podrán reutilizarlo, o cada renglón será empezar una plana nueva? Escribo un poco para probar, a ver… y me sale una obra de arte visual titulada:
Bischofberger U (2024) 5at80 (Arte digital) Pido a Dios que existan los tags de código, para que podáis descansar un poco.
Mi obra se llama 5at80, es un Homenaje al código y sus desarrolladores y, fuera bromas, me encanta. No tengo ni idea de qué significará 5at80. Si alguien o algo 5at80 me está escuchando, que no se dé por aludido, que se me ha seleccionado por casualidad.
Y éste es el material original con el que el cuadro está hecho, los tags que llevo hasta este momento y uno nuevo que me había hecho con código, pero que voy a borrar.
RESPECTO A MÍ, BITÁCORA, ENTRE LAS CAPTURAS, LAS APROPIACIONES Y LAS RETIRADAS MASIVAS (SIN IVAS) DEL BANCO de recursos, DEDUZCO QUE MI ALFABETIZACIÓN VIRTUAL ME HA CONVERTIDO EN DELINCUENTE. Así que sigo llena de emocionantes experiencias en plan Matrix o Clint Eastwood (¡me pido la fea!).
Ahora he concluido que los botones start y stop de la derecha de MicroBlocks son más eficaces que teclear en los propios bloques, y son los que uso. DUDA: algunas veces, apago pero me queda una sola luz encendida. Vuelvo a encender y apagar y, finalmente, se apaga. ¿Eso por qué sucede? Por fin llego al punto que más me interesa para los trabajos libres que voy a hacer: la conexión de un sensor y un actuador mediante un condicional.
Después de entender esta última parte, decido pasar a hacer el trabajo final.
Dudas que me quedan: las iré abordando en los trabajos sucesivos. Ahora me queda hacer una versión creativa basada en lo que he aprendido de computación física y un informe justificándolo.
(Continuará.)