Tabla de contenido:
- Paso 1: obtener el firmware y las bibliotecas
- Paso 2: trabajar con MicroPython
- Paso 3: MicroPython sobre serie
Video: MicroPython en la placa de sensores de artes complejas: 3 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
Uno de los aspectos más sorprendentes del microcontrolador ESP32 es su capacidad para ejecutar MicroPython. Esto se puede hacer de dos formas: ejecutando programas completos de Python o de forma interactiva a través de una aplicación de consola. Este Instructable demostrará cómo usar MicroPython en ambos sentidos usando el tablero de sensores de artes complejas. Primero ejecutaremos una aplicación de ejemplo que recopila datos del acelerómetro de la IMU BNO_085, luego usaremos un programa en serie para programar de forma interactiva en Python.
Nivel: este tutorial asume cierto conocimiento de Python y que Python está instalado. También asume el conocimiento de los comandos básicos de la terminal.
Herramientas: las únicas herramientas que necesitaremos serán la placa de sensores, un programa de terminal y un programa de consola en serie. En una Mac, simplemente puede usar terminal. En una máquina con Windows, deberá descargar e instalar un programa de terminal. Para la consola serial. La masilla es siempre una buena opción.
Paso 1: obtener el firmware y las bibliotecas
Para comenzar, necesitaremos descargar el firmware personalizado proporcionado por Complex Arts y luego actualizarlo a la placa de sensores. El firmware se puede encontrar aquí:
Descargue el archivo firmware.bin y colóquelo en la carpeta que elija. Eventualmente, también necesitará el programa de ejemplo de Artes complejas, por lo que también podría hacerlo ahora; vaya a: https://github.com/ComplexArts/SensorBoardPython y git clone o descárguelo en la ubicación que elija.
Una vez que tenga los archivos, necesitaremos algunos paquetes para interactuar con el ESP32. El primer paquete que necesitaremos es esptool.py. Para instalarlo, simplemente escriba
pip instalar esptool
en la terminal.
Una vez que esptool está instalado, podemos borrar y volver a flashear el chip. Para hacerlo, ingrese
esptool.py --chip esp32 --port COM4 erase_flash
para el puerto, ingrese el puerto serial que coincide con la placa del sensor. En una Mac, se vería algo así como --port / dev / ttyUSB0
Una vez hecho esto, flashearemos el chip con:
esptool.py --chip esp32 --port COM4 --baudios 460800 write_flash -z 0x1000 firmware.bin
Nuevamente, cambie el puerto en consecuencia.
Paso 2: trabajar con MicroPython
Si verificamos la salida en serie de la placa de sensores en este punto, veremos Python REPL (el ciclo de lectura-evaluación-impresión: >>>) Para hacer esto, necesitaremos un programa de consola en serie. Putty es una buena opción, ya que ofrece opciones para SSH y telnet, pero también comunicación en serie simple, como lo haremos aquí. putty.org. Una vez que lo haya instalado, ábralo y seleccione "Serie" en "Tipo de conexión:" Deberá escribir el mismo nombre de puerto serie que ingresó para la herramienta de espionaje anterior, luego una velocidad en baudios de 115200 para la Velocidad. Continúe y haga clic en "Abrir". ¡Y ahí está Python!
Ahora queremos cargar y ejecutar nuestro código de ejemplo. Para hacerlo, vaya a la carpeta donde guardó anteriormente los ejemplos de SensorBoardPython. Necesitaremos el increíble y amplio paquete de Adafruit. Puedes instalar eso con:
pip instalar adafruit-ampy = 0.6.3
Una vez que lo tengas, usa ampy para cargar el ejemplo del acelerómetro en la placa:
ampy -p COM4 poner acelerómetro.py
(cambiando el puerto en consecuencia, por supuesto). Ahora reinicia tu tablero con el botón de reinicio. Regresaremos a Putty en este punto y en el indicador >>>, escriba
importar acelerómetro
¡Viola! ¡Ahora está ejecutando el código accelerometer.py en la placa del sensor! El código se ejecutará durante 20 segundos y luego se detendrá. Observe que mientras se ejecuta el código del acelerómetro, el LED azul en la placa parpadea. Para aquellos más familiarizados con Python, notarán que esto se hace sin subprocesos y sin demora (). Eso se debe al uso de la biblioteca asyncio de Python, que proporciona excelentes métodos para ejecutar tareas simultáneamente y es muy útil en plataformas integradas como ESP32. Si no está familiarizado con él, vale la pena echarle un vistazo; hay un gran tutorial aquí: https://github.com/peterhinch/micropython-async/b… (pero ten cuidado, es un poco embriagador).
Paso 3: MicroPython sobre serie
¡De vuelta a la tarea que tenemos entre manos! Cuando el código del acelerómetro se detenga, volverá a ver Python >>>. Ahora podemos programar de forma interactiva utilizando la placa de sensores como nuestro intérprete de Python. Para hacerlo, ingrese
>> x = 10
>> y = 11
>> x + y
21
Si bien este es el ejemplo más básico, podemos comenzar fácilmente a crear código más complejo utilizando las bibliotecas Complex Arts como punto de partida. Esto le permite ejecutar mediciones de posición y movimiento sobre la marcha, con control en tiempo real. Con los pines GPIO disponibles en la placa de sensores, puede conectar fácilmente servos, luces, sensores, motores o cualquier número de dispositivos físicos, utilizándolos de forma interactiva o mediante un programa Python. ¡Divertirse!
Para obtener más información, consulte estos otros recursos:
complexarts.net/home/
complexarts.net/docs/bno085/
Recomendado:
Estación meteorológica de largo alcance HC-12 y sensores DHT: 9 pasos
Estación meteorológica de largo alcance HC-12 y sensores DHT: En este tutorial aprenderemos cómo hacer una estación meteorológica remota de larga distancia usando dos sensores dht, módulos HC12 y la pantalla LCD I2C. ¡Vea el video
Impedancia de componentes usando matemáticas complejas: 6 pasos
Impedancia de componentes usando matemáticas complejas: Aquí hay una aplicación práctica de ecuaciones matemáticas complejas. Esta es de hecho una técnica muy útil que puede usar para caracterizar componentes, o incluso una antena, en frecuencias predeterminadas. puede ser familia
Serie Docker Pi de placa de concentrador de sensores Acerca de IOT: 13 pasos
Serie Docker Pi de placa de concentrador de sensores Acerca de IOT: Hola a todos. Hoy en día, casi todo está relacionado con IOT. Sin duda con eso, nuestra placa de la serie DockerPi también es compatible con IOT. Hoy, quiero presentarles la serie DockerPi de SensorHub cómo para aplicarle a IOT. Ejecuto este elemento que se basa en
Uso de la placa de sensores de Complex Arts para controlar datos puros a través de WiFi: 4 pasos (con imágenes)
Uso de la placa de sensores Complex Arts para controlar datos puros a través de WiFi: ¿Alguna vez ha querido experimentar con el control gestual? ¿Hacer que las cosas se muevan con un movimiento de la mano? ¿Controlas la música con un giro de muñeca? ¡Este Instructable le mostrará cómo! El tablero de sensores de artes complejas (complexarts.net) es un microc
Cómo programar una placa AVR usando una placa Arduino: 6 pasos
Cómo programar una placa AVR usando una placa Arduino: ¿Tiene una placa de microcontrolador AVR por ahí? ¿Es complicado programarlo? Bueno, estás en el lugar indicado. Aquí, le mostraré cómo programar una placa de microcontrolador Atmega8a utilizando una placa Arduino Uno como programador. Así que sin más