Tabla de contenido:

Cómo descargar el código MicroPython en XBee 3:18 pasos (con imágenes)
Cómo descargar el código MicroPython en XBee 3:18 pasos (con imágenes)

Video: Cómo descargar el código MicroPython en XBee 3:18 pasos (con imágenes)

Video: Cómo descargar el código MicroPython en XBee 3:18 pasos (con imágenes)
Video: Como usar Micropython en un XBee3 2024, Mes de julio
Anonim
Cómo descargar el código MicroPython en XBee 3
Cómo descargar el código MicroPython en XBee 3

MicroPython es un lenguaje de programación inspirado en Python 3.0 que funciona en microcontroladores, como XBee 3. MicroPython puede ayudar a disminuir la cantidad de suministros y el volumen general de su proyecto, y hacer las cosas mucho más fáciles. Sin embargo, descubrí que cuando estaba usando MicroPython, el proceso de cargar y descargar el código en el dispositivo era confuso. Así que este instructivo tiene como objetivo explicar el proceso "simple" de cómo descargar código dentro y fuera de su XBee.

Si aún no lo ha hecho, consulte la Guía de programación de Digi MicroPython. Es útil para obtener un amplio conocimiento de cómo funciona MicroPython en XBees y también para solucionar problemas.

Este tutorial no asume que esté familiarizado con XCTU, pero si lo está, puede leer los encabezados de cada sección para obtener pasos más básicos sobre cómo instalar y desinstalar el código MicroPython. Asume que ya ha escrito su código y lo ha guardado como un archivo.py o.mpy.

El XBee que uso utiliza el protocolo 802.15.4, por lo que cualquier diferencia que encuentre entre el tutorial y su propia versión de XCTU puede deberse a eso.

Algunas reglas generales a seguir al usar MicroPython en XBees:

- Mantenga la velocidad en baudios en 115200 o superior. Esto ayuda a prevenir la pérdida de datos.

- Haga que su código se ejecute rápidamente a través de los paquetes entrantes. Cuando se usa MicroPython, el XBee solo puede contener una cola de 4 paquetes de datos; una vez que la cola está llena, arroja nuevos datos que ingresan.

- Asegúrese de que su XBee sea un XBee3. MicroPython no funciona en ningún otro modelo de XBee.

Suministros

  • XBee3 (tantos como necesite)
  • Un XBee Explorer o un dongle similar que le permite conectar su XBee a su computadora
  • Una computadora con XCTU instalado
  • Un archivo.py o.mpy que contiene el código que desea instalar en XBee

Paso 1: conecta tu XBee

Conecta tu XBee
Conecta tu XBee

Conecte el XBee que desea programar y abra XCTU. Haga clic en Agregar dispositivos (el icono que parece un XBee con un +) en la esquina superior izquierda y seleccione el puerto COM correcto. Asegúrese de que la velocidad en baudios sea correcta (dejamos el XBees configurado en 9600), luego haga clic en Finalizar para conectar el XBee.

XCTU tarda mucho en cargar muchas cosas. Cuando vea la barra de carga verde, que verá con frecuencia, tenga paciencia.

Paso 2: asegúrese de que PS esté configurado en 0 y AP esté configurado en 4

Asegúrese de que PS esté configurado en 0 y AP esté configurado en 4
Asegúrese de que PS esté configurado en 0 y AP esté configurado en 4

Haga clic en el icono de XBee en el lado izquierdo de la pantalla para mostrar su configuración en el lado derecho. En el lado derecho de la pantalla, desplácese hacia abajo hasta la sección llamada Comandos de MicroPython y asegúrese de que PS esté configurado como Desactivado [0]. Si no es así, cambie la configuración y presione el ícono de lápiz junto a la configuración en el extremo derecho para escribir el cambio en el XBee. Haga lo mismo en la sección llamada Interfaz UART para el parámetro AP y asegúrese de que esté configurado en MicroPython REPL [4].

El parámetro PS determina si el código se ejecuta automáticamente cuando se enciende el XBee, y el parámetro AP es básicamente el "modo operativo" en el que se encuentra el XBee. Para que MicroPython funcione, tiene que estar en su propio "modo MicroPython". " Si PS está configurado en Habilitado [1], puede causar problemas con algunos de estos pasos, así que creo que es mejor apagarlo hasta que termine de actualizar el código en el XBee.

Paso 3: abre el Administrador del sistema de archivos

Abra el Administrador del sistema de archivos
Abra el Administrador del sistema de archivos

Navegue a la sección "Herramientas" en la barra en la parte superior de la pantalla y seleccione Administrador del sistema de archivos. Abre una ventana que se parece a la que se muestra arriba: los archivos de su computadora se muestran a la izquierda y una ventana vacía a la derecha.

Paso 4: configurar el puerto COM correcto

Configure el puerto COM correcto
Configure el puerto COM correcto

Presione Configurar. Seleccione el puerto COM correcto, asegúrese de que la velocidad en baudios sea correcta y haga clic en Aceptar. Debería ver el nombre del puerto COM seleccionado en el lugar donde anteriormente decía "Configure el puerto antes de trabajar con el sistema de archivos".

Paso 5: Abra la conexión al XBee

Abra la conexión al XBee
Abra la conexión al XBee

Presiona Abrir. Si obtiene un error, desenchufar y enchufar el XBee nuevamente y luego presionar Abrir generalmente funciona. Ahora debería ver los archivos cargados en el XBee en el lado derecho de la ventana. Si su XBee es nuevo, probablemente solo verá dos carpetas, pero si su XBee se ha utilizado antes, es posible que vea otros archivos en el directorio (en el mío, hay uno llamado "main.py").

Paso 6: elimine el código anterior en el Administrador del sistema de archivos

Si su XBee no tiene un código antiguo, puede omitir este paso.

Si está actualizando un archivo de código antiguo en XBee, primero debe eliminar el anterior. El XBee no elimina automáticamente las versiones antiguas de código y tiene un almacenamiento muy limitado, por lo que debe eliminar manualmente los archivos de código antiguos.

El código MicroPython en XBee tiene que estar en un archivo llamado "main.py" para que XBee ejecute el código automáticamente. Puede tener varios archivos cargados en el XBee, pero el único que se ejecutará al inicio es "main.py", por lo que puede utilizar varios módulos siempre que los importe a "main.py". Si está utilizando varios módulos, solo necesita eliminar el que está volviendo a cargar en el XBee.

Primero, haga clic con el botón derecho en el archivo que desea eliminar y seleccione Eliminar. Después de unos momentos, desaparecerá del Administrador del sistema de archivos. El archivo ahora se elimina del almacenamiento principal del XBee. Sin embargo, el XBee también tiene una memoria de trabajo, donde almacena el último código que se le pidió que se ejecutara, y esto también debe borrarse. Presione Cerrar en la esquina inferior derecha para salir del Administrador del sistema de archivos.

Paso 7: cambia AP a 1

Cambiar AP a 1
Cambiar AP a 1

En la configuración de XBee en el lado derecho de la pantalla, desplácese hasta la sección que dice Interfaz UART. Cambie el parámetro AP a Modo API sin escapes [1] y haga clic en el icono de lápiz para escribirlo en XBee. Esto nos permite enviar comandos AT al XBee, lo que tendremos que hacer para borrar la memoria de trabajo del XBee. Si está utilizando su XBee desde nuevo, probablemente no tenga que realizar este paso la primera vez que descargue el código en él, pero no está de más confirmar que se borró la memoria de trabajo.

Paso 8: cambie al modo de trabajo de consolas y abra la conexión

Cambie al modo de trabajo de consolas presionando Alt-C o presionando el botón en la parte superior derecha que parece un monitor de TV, y presione Abrir para abrir la línea de comunicación con su XBee. Usamos este modo para hablar con nuestros XBees.

Paso 9: abra el generador de marcos

Abra el generador de marcos
Abra el generador de marcos

Hacia el lado derecho de la pantalla, debajo de donde dice Enviar un solo paquete, haga clic en el ícono + y luego haga clic en Crear marco usando la herramienta "Generador de marcos" en la ventana emergente. Esto abre el Generador de marcos, que se muestra arriba. Usamos esto para generar el mensaje que enviaremos al XBee.

Paso 10: configurar el generador de tramas para generar un comando AT

Configurar el generador de tramas para generar un comando AT
Configurar el generador de tramas para generar un comando AT

Donde dice Tipo de marco, haga clic en el cuadro para abrir un menú desplegable y seleccione 0x08 - Comando AT. La pantalla cambiará al formato que se muestra arriba.

Paso 11: Ingrese el comando AT para borrar la memoria de trabajo

Ingrese el comando AT para borrar la memoria de trabajo
Ingrese el comando AT para borrar la memoria de trabajo

En el cuadro resaltado en rojo etiquetado como comando AT, escriba PY. Esta es la primera parte del comando AT, que básicamente le dice al XBee que queremos hacer algo con MicroPython. En el cuadro etiquetado Valor de parámetro, escriba E. Este es el comando específico de MicroPython que queremos que realice el XBee, que está borrando la memoria de trabajo del XBee (trato de recordar “E para borrar”). A medida que escribe, aparecerán números en el cuadro en la parte inferior de la pantalla.

Paso 12: agregue el marco

Agregar el marco
Agregar el marco

Presiona OK. Ahora ha vuelto a la ventana en la que estaba antes de entrar en el generador de marcos. El nombre del marco no es particularmente importante para nuestros propósitos, así que ignórelo. Debería ver los números de la última ventana en el cuadro de esta ventana. Si es así, seleccione Agregar marco.

Paso 13: Envíe el comando AT

Envíe el comando AT
Envíe el comando AT

El nuevo marco "frame_0" aparece en el cuadro etiquetado Enviar marcos. Ahora podemos enviar el comando AT al XBee. Asegúrese de que el marco que acabamos de crear esté resaltado y luego haga clic en el botón con la flecha verde que dice Enviar marco seleccionado. El texto azul y rojo aparecerá en el registro de Marcos de arriba.

Paso 14: Interprete la respuesta

Interpretar la respuesta
Interpretar la respuesta

El texto azul es el comando que acaba de enviar y el texto rojo es la respuesta de XBee. Haga clic en el texto rojo para leerlo. Puede ver una línea hexadecimal similar a la que enviamos al XBee en la ventana de la derecha. Puede copiar y pegar esto en la herramienta Frames Interpreter (a la que se accede haciendo clic en la flecha junto al icono de la herramienta de arriba), pero si el penúltimo par de dígitos es un doble cero, eso significa que logró borrar la memoria de trabajo.

Paso 15: cambia AP a 4

Haga clic en Cerrar en la esquina superior izquierda para salir de la comunicación con el XBee.

Haga clic en el icono de engranaje para volver a la configuración de XBee, desplácese hacia abajo hasta la interfaz UART y cambie el parámetro AP de nuevo a MicroPython REPL [4]. Escriba la nueva configuración en el XBee haciendo clic en el icono de lápiz.

Paso 16: arrastre su código al administrador del sistema de archivos

Arrastre su código al administrador del sistema de archivos
Arrastre su código al administrador del sistema de archivos

Vuelva a Herramientas> Administrador del sistema de archivos, configure el puerto correcto y haga clic en Abrir. En el lado izquierdo de la ventana (los archivos de su computadora), navegue hasta el código que desea cargar en el XBee, haga clic y arrástrelo hacia el lado derecho (los archivos del XBee). Debería ver que el archivo aparece en el lado derecho. El nuevo código ahora se descarga en el XBee.

Paso 17: Abra la terminal MicroPython

Abra la Terminal MicroPython
Abra la Terminal MicroPython

Presiona Cerrar. Es hora de asegurarse de que el código funcione. Vaya a Herramientas> Terminal MicroPython. Seleccione Configurar, elija el puerto COM correcto y luego presione Abrir. Debería haber un cursor negro parpadeante en la ventana. Presione enter y verá el indicador de MicroPython: >>>

Paso 18: prueba tu código

Presione Ctrl-R y se ejecutará el código del archivo "main.py". Si todo funciona correctamente, ¡ya está! Si desea que el código se ejecute automáticamente cuando XBee esté encendido, cierre la Terminal MicroPython y, en la configuración de XBee, desplácese hacia abajo hasta Comandos MicroPython, cambie el parámetro PS a Enabled [1] y presione el ícono de lápiz para escribir a la XBee.

Recomendado: