Skip to content

mblock project #238

@ayatifra

Description

@ayatifra

import time
from mbot import mBot, line_follower, button

Initialiser le mBot

robot = mBot()

Fonction pour avancer

def avancer():
robot.set_speed(50, 50)

Fonction pour tourner à droite

def tourner_droite():
robot.set_speed(50, -50)

Fonction pour tourner à gauche

def tourner_gauche():
robot.set_speed(-50, 50)

Fonction pour reculer

def reculer():
robot.set_speed(-50, -50)

Boucle principale

try:
while True:
# Vérifier si le bouton est pressé
if button.is_pressed():
# Lire les valeurs du capteur de ligne
ligne_gauche, ligne_droite = line_follower.read()

        # Si les deux capteurs détectent du noir, avancer
        if ligne_gauche == 0 and ligne_droite == 0:
            avancer()
        # Si le capteur de ligne gauche détecte du blanc, tourner à droite
        elif ligne_gauche == 1 and ligne_droite == 0:
            tourner_droite()
        # Si le capteur de ligne droite détecte du blanc, tourner à gauche
        elif ligne_gauche == 0 and ligne_droite == 1:
            tourner_gauche()
        # Si les deux capteurs détectent du blanc, reculer
        elif ligne_gauche == 1 and ligne_droite == 1:
            reculer()
    else:
        # Si le bouton n'est pas pressé, arrêter le robot
        robot.stop()
    
    # Petite pause pour éviter une surcharge de la boucle
    time.sleep(0.1)

except KeyboardInterrupt:
# Arrêter le robot en cas d'interruption du programme
robot.stop()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions