MicroPython como lenguaje para el desarrollo de dispositivos IoT - Workshop

By José Luis Laica Cornejo

Elevator Pitch

La introducción de dispositivos IoT en nuestras vidas cotidianas recién inicia y es interesante saber hasta dónde puede llegar, por lo cual conocer las ventajas de la sintaxis de micropython para microcontroladores brinda a la comunidad nuevas oportunidades para el desarrollo de nuevas aplicaciones.

Description

MicroPython como lenguaje de desarrollo para el internet de las cosas

Deseamos mostrar a la comunidad de python como de manera facil y rapida puede desarrollar dispositivos para el internet de las cosas con MicroPython que es una implementación eficiente del lenguaje de programación Python3 que incluye un pequeño subconjunto de las bibliotecas de Python y está optimizado para ejecutarse en microcontroladores. MicroPython pretende ser tan compatible con Python normal como sea posible para permitirle transferir código con facilidad desde el escritorio a un microcontrolador o sistema integrado.

MicroPython está repleto de características avanzadas, como un promt interactivo, enteros de precisión arbitrarios, comprensión de listas, generadores, manejo de excepciones y más. Sin embargo, es lo suficientemente compacto como para caber y funcionar en solo 256k de espacio de código y 16k de RAM.

MicroPython está escrito en C99 y todo el núcleo de MicroPython está disponible para uso general bajo la licencia de MIT. La mayoría de las bibliotecas y módulos de extensión (algunos de los cuales son de un tercero) también están disponibles bajo A continuación describo una tabla de contenido tentativa, que puede ser modificada para reforzar cierto temas si así lo considera el consejo de selección.

Tabla de contenido tentativo

Introducción 2 min. Inicios de MicroPython 2 min. MicroPython y tarjetas de desarrollo 2 min. Breve presentación de los módulos ESP 2 min. Instalación de binarios en el microcontrolador ESP8266 Instalar esptool 4 min Herramientas similares 2 min. Grabar Binarios 2 min. Entornos de programación Instalar ESPlorer 3 min. Ejemplo Hola mundo 2 min. Probando con el GTKterm 1 min. Ejemlo hola mundo 2 min. Manejo de Archivos Ejemplo Crear Archivo 2 min. Ejemplo Leer Archivo 2 min. Ejemplo Borra Archivo 2 min. Ejemplos de conexión a red** Conexión en modo punto de acceso 3 min. Conexión en modo estación 3 min. Simple Servidor TCP en Python 5 min. Simple Cliente TCP en MicroPython 5 min. Ejemplo Servidor-Cliente TCP 5 min. Simple WebServer 5 min. Manejo de pines I/O Tipos de Retardos 3 min. Ejemplo parpadeo del led 2 min Ejemplo pulsador 3 min Otros ejemplos desarrollados 5 min. Preguntas y Respuestas 10 min.

Notes

Siendo estudiante de Ing. Electronica y Autamatización fui investigador jr. del Centro de Visión y Robótica 2004-2010 en el cual puede desarrollar prototipos con diversos microcontroladores y sus lenguajes de programación entre ellos, PIC CCS Compiler,Basic,MikroBasic, c/c++, antes de la aparición de arduino y como el uso de los microcontroladores requerian una interface para el usuario tuve la oportunidad de aprender y usar leguajes como PHP, JavaScripts,html, C#, Visual y algo de java (Solo algo) hasta que el 2010-2011 como independiente y buscando nuevas herramientas para desarrollo me encontre con python y me simplifico el desarrollo de prototipos por lo cual desde esa fecha recomiendo a estudiantes y profesionales el uso del mismo para proyectos. Luego en el 2015 me tope con micropython, y desde ese entonces deje a los pics,atmels, arduino y otros como base de desarrollo y me dedique a pasar todos mis proyectos a este nuevo lenguaje. Pero había un problema, mientras yo usaba micropython otros desarrolladores aun usaban arduino lo cual nos causaba problemas a la hora de colaborar con proyectos en común. En mi afán de compartir las ventajas de micropython y python regrese a la universidad, donde se me permitió dar una serie de charlas abiertas demostrativas donde exponía las ventajas de micropython ,dado la acojida y el interes en el 2017 junto al Msc Dennys Paillacho y conjuntamente con un grupo de estudiantes decidimos dar estas mismas charlas a otras universidades observando el mismo interés, por lo cual luego fundamos la comunidad FunPython a fin de poder compartir experiencias entre los constructores/programadores en el uso de micropython y pyhton para la creación de prototipos.