Image Alt
Home / Actividades con Microbit  / “Hemos desarrollado un coche siguelíneas utilizando una MicroBit. y
Construcción de un sigueLineas

“Hemos desarrollado un coche siguelíneas utilizando una MicroBit. y

“Hemos desarrollado un coche siguelíneas utilizando una Micro , el cual está diseñado para moverse de manera autónoma a lo largo de un recorrido. El coche sigue una línea negra en el mapa a una velocidad uniforme. Si el vehículo se desvía temporalmente de la línea, mantendrá su velocidad y dirección hasta que logre volver a posicionarse correctamente sobre la misma, garantizando un movimiento fluido y preciso a lo largo del recorrido.” 

Código

Pyton placa de conexión Wukong.

# Pines para los motores
motor_izquierdo = machine.Pin(0, machine.Pin.OUT)
motor_derecho = machine.Pin(1, machine.Pin.OUT)

# Sensores de línea
sensor_izquierdo = pin2
sensor_derecho = pin3

# Definir velocidad de los motores
velocidad = 1023 # Valor máximo (ajustable)

# Función para mover el coche hacia adelante
def avanzar():
motor_izquierdo.write_analog(velocidad)
motor_derecho.write_analog(velocidad)

# Función para girar hacia la derecha
def girar_derecha():
motor_izquierdo.write_analog(velocidad)
motor_derecho.write_digital(0)

# Función para girar hacia la izquierda
def girar_izquierda():
motor_izquierdo.write_digital(0)
motor_derecho.write_analog(velocidad)

# Función para detener el coche
def detener():
motor_izquierdo.write_digital(0)
motor_derecho.write_digital(0)

while True:
# Leer los valores de los sensores de línea
valor_izquierdo = sensor_izquierdo.read_digital()
valor_derecho = sensor_derecho.read_digital()

# Verificar si ambos sensores están sobre la línea
if valor_izquierdo == 1 and valor_derecho == 1:
avanzar() # Mantenerse en la línea
# Verificar si el sensor izquierdo está fuera de la línea
elif valor_izquierdo == 0 and valor_derecho == 1:
girar_derecha() # Corrige hacia la derecha
# Verificar si el sensor derecho está fuera de la línea
elif valor_izquierdo == 1 and valor_derecho == 0:
girar_izquierda() # Corrige hacia la izquierda
else:
detener() # Detener si ambos sensores pierden la línea

 

Este código utiliza los pines 0 y 1 para controlar los motores, y los pines 2 y 3 para los sensores de línea. El coche avanzará si ambos sensores detectan la línea, o corregirá su dirección si uno de los sensores se desvía. Ajusta la velocidad o los pines según tu configuración de hardware.

Post a Comment