Programe una frambuesa Pi desde su navegador con Windows 10 IoT Core Blockly

Programe una frambuesa Pi desde su navegador con Windows 10 IoT Core Blockly

Microsoft introdujo recientemente una nueva aplicación UWP que permite a los usuarios programar un frambuesa Pi 2, frambuesa 3 o un sombrero de frambuesa Pi Sense Hat desde sus navegadores. Windows 10 IoT Core Blockly permite a los usuarios crear un programa con bloques entrelazados que pueden controlar un minicomputador Raspberry Pi.

Microsoft se inspiró en cuatro proyectos diferentes al diseñar esta nueva herramienta, incluyendo el editor de bloques de código abierto Blockly de Google, el micro:bit de la BBC y su propio editor de bloques.

Windows 10 IoT Core Blockly tiene una estructura simple: la aplicación principal inicia un servidor web que sirve a la página del editor de Blockly en el puerto 8000. Los usuarios pueden acceder al editor Blockly navegando a su dirección Pi :8000 desde un navegador. Microsoft también creó bloques personalizados para funcionalidades específicas de Sense Hat que se pueden encontrar en categorías específicas Basic, Input, LED, Images, Pin, y más.

Otras características incluyen:

  • Blockly simplifica la traducción de bloques a JavaScript, para que podamos generar un fragmento de JavaScript ejecutable. Puede ver a qué se traduce su programa de bloques en JavaScript pulsando el botón azul «Convertir a JavaScript» – nota: para habilitar «eventos» como «en el botón del joystick pulsado» tenemos algunas funciones auxiliares de JavaScript y prestamos especial atención al orden de las distintas funciones.
  • En este punto, tenemos un editor de bloques que puede generar un fragmento de JavaScript ejecutable: Necesitamos algo que pueda ejecutar este fragmento de JavaScript en un hilo diferente sin interferir con el servidor web.
  • Para ejecutar el fragmento, instanciamos el motor JavaScript de Chakra (que forma parte de cada edición de Windows 10) e iniciamos el fragmento. Chakra hace que sea fácil detener el fragmento a voluntad.
  • Muchos de los bloques interactúan directamente con el Sense Hat. Podríamos haber escrito un montón de código JavaScript para controlar el Sense Hat, pero aprovechamos la completa y fácil de usar biblioteca C# SenseHat de EmmellSoft. Hacer un puente entre JavaScript y C# fue extremadamente fácil aprovechando una librería de envolturas UWP.
  • Por último, hemos añadido algo de maquinaria para asegurarnos de que el último fragmento de «run» se guarda en el Raspberry Pi (tanto la disposición de los bloques como el fragmento de JavaScript se almacenan en caché) y se ejecutan de nuevo la próxima vez que se inicie la aplicación IoT Core Blockly (por ejemplo, al reiniciar el dispositivo).

Para obtener más información sobre cómo configurar IoT Core Blockly en tu frambuesa Pi, consulta La entrada del blog de Microsoft .

Deja un comentario