trilbymedia / grav-plugin-git-sync

Collaboratively Synchronize your Grav `user` folder hosted on GitHub, BitBucket or GitLab
Apache License 2.0
239 stars 57 forks source link

mblock project #238

Open ayatifra opened 1 month ago

ayatifra commented 1 month ago

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()