5.1 KiB
Detectar proximidad - Hardware IoT Virtual
En esta parte de la lección, agregarás un sensor de proximidad a tu dispositivo IoT virtual y leerás la distancia desde él.
Hardware
El dispositivo IoT virtual utilizará un sensor de distancia simulado.
En un dispositivo IoT físico, usarías un sensor con un módulo de medición láser para detectar la distancia.
Agregar el sensor de distancia a CounterFit
Para usar un sensor de distancia virtual, necesitas agregar uno a la aplicación CounterFit.
Tarea - agregar el sensor de distancia a CounterFit
Agrega el sensor de distancia a la aplicación CounterFit.
-
Abre el código
fruit-quality-detector
en VS Code y asegúrate de que el entorno virtual esté activado. -
Instala un paquete adicional de Pip para agregar un shim de CounterFit que pueda comunicarse con sensores de distancia simulando el paquete rpi-vl53l0x Pip, un paquete de Python que interactúa con un sensor de distancia VL53L0X de tiempo de vuelo. Asegúrate de instalar esto desde una terminal con el entorno virtual activado.
pip install counterfit-shims-rpi-vl53l0x
-
Asegúrate de que la aplicación web de CounterFit esté en ejecución.
-
Crea un sensor de distancia:
-
En el cuadro Create sensor en el panel Sensors, despliega el cuadro Sensor type y selecciona Distance.
-
Deja las Units como
Millimeter
. -
Este sensor es un sensor I²C, así que configura la dirección en
0x29
. Si usaras un sensor físico VL53L0X, estaría codificado en esta dirección. -
Selecciona el botón Add para crear el sensor de distancia.
El sensor de distancia se creará y aparecerá en la lista de sensores.
-
Programar el sensor de distancia
El dispositivo IoT virtual ahora puede ser programado para usar el sensor de distancia simulado.
Tarea - programar el sensor de tiempo de vuelo
-
Crea un nuevo archivo en el proyecto
fruit-quality-detector
llamadodistance-sensor.py
.💁 Una forma sencilla de simular múltiples dispositivos IoT es hacerlo en diferentes archivos de Python y ejecutarlos al mismo tiempo.
-
Inicia una conexión con CounterFit con el siguiente código:
from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000)
-
Agrega el siguiente código debajo de esto:
import time from counterfit_shims_rpi_vl53l0x.vl53l0x import VL53L0X
Esto importa la biblioteca shim del sensor para el sensor de tiempo de vuelo VL53L0X.
-
Debajo de esto, agrega el siguiente código para acceder al sensor:
distance_sensor = VL53L0X() distance_sensor.begin()
Este código declara un sensor de distancia y luego inicia el sensor.
-
Finalmente, agrega un bucle infinito para leer las distancias:
while True: distance_sensor.wait_ready() print(f'Distance = {distance_sensor.get_distance()} mm') time.sleep(1)
Este código espera a que un valor esté listo para ser leído desde el sensor y luego lo imprime en la consola.
-
Ejecuta este código.
💁 ¡No olvides que este archivo se llama
distance-sensor.py
! Asegúrate de ejecutarlo con Python, no conapp.py
. -
Verás mediciones de distancia aparecer en la consola. Cambia el valor en CounterFit para ver cómo cambia este valor, o usa valores aleatorios.
(.venv) ➜ fruit-quality-detector python distance-sensor.py Distance = 37 mm Distance = 42 mm Distance = 29 mm
💁 Puedes encontrar este código en la carpeta code-proximity/virtual-iot-device.
😀 ¡Tu programa del sensor de proximidad fue un éxito!
Descargo de responsabilidad:
Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por garantizar la precisión, tenga en cuenta que las traducciones automatizadas pueden contener errores o imprecisiones. El documento original en su idioma nativo debe considerarse como la fuente autorizada. Para información crítica, se recomienda una traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o interpretaciones erróneas que puedan surgir del uso de esta traducción.