5.4 Detección de Líneas¶
El módulo de seguimiento de líneas se utiliza para detectar la presencia de áreas negras en el suelo, como líneas negras pegadas con cinta aislante.
Su emisor emite luz infrarroja adecuada hacia el suelo, la cual es absorbida en mayor medida y reflejada débilmente por superficies negras. Lo contrario ocurre con las superficies blancas. Si se detecta luz reflejada, se indica que el suelo es blanco actualmente. Si no se detecta, se indica como negro.
Componentes Requeridos
Para este proyecto, necesitamos los siguientes componentes.
Definitivamente es conveniente comprar un kit completo, aquí está el enlace:
Nombre |
ELEMENTOS EN ESTE KIT |
ENLACE |
---|---|---|
Kit de Inicio ESP32 |
320+ |
También puedes comprarlos por separado en los enlaces a continuación.
INTRODUCCIÓN DEL COMPONENTE |
ENLACE DE COMPRA |
---|---|
- |
|
Pines Disponibles
Pines Disponibles
Aquí hay una lista de pines disponibles en la placa ESP32 para este proyecto.
Pines Disponibles
IO13, IO14, IO27, IO26, IO25, IO33, I35, I34, I39, I36, IO4, IO18, IO19, IO21, IO22, IO23
Pines de Strapping (Entrada)
Los pines de strapping son un conjunto especial de pines que se utilizan para determinar modos de arranque específicos durante el inicio del dispositivo (es decir, reinicio por encendido).
Pines de Strapping
IO5, IO0, IO2, IO12, IO15
Generalmente, no se recomienda usarlos como pines de entrada. Si deseas usar estos pines, considera el impacto potencial en el proceso de arranque. Para más detalles, por favor consulta la sección Pines de Estrapeo.
Esquemático
Cuando el módulo de seguimiento de línea detecta una línea negra, IO14 devuelve un nivel alto. Por otro lado, cuando detecta una línea blanca, IO14 devuelve un nivel bajo. Puedes ajustar el potenciómetro azul para modificar la sensibilidad de detección de este módulo.
Conexión
Código
Nota
Abre el archivo
5.4_detect_the_line.py
ubicado en la rutaesp32-starter-kit-main\micropython\codes
o copia y pega el código en Thonny. Luego, haz clic en «Ejecutar script actual» o presiona F5 para ejecutarlo.Asegúrate de seleccionar el intérprete «MicroPython (ESP32).COMxx» en la esquina inferior derecha.
import machine
import time
# Create a pin object named greyscale, set pin number 14 as input
line = machine.Pin(14, machine.Pin.IN)
while True:
# Check if the value is 1 (black)
if line.value() == 1:
# Print "black"
print("black")
time.sleep(0.5)
# If the value is not 1 (it's 0, which means white)
else :
# Print "white"
print("white")
time.sleep(0.5)
Cuando el módulo de seguimiento de línea detecta que hay una línea negra, aparece «negro» en la consola; de lo contrario, se muestra «blanco».