Contrôle#

Introduction#

Le contrôle en Python vous permet d’indiquer au robot quand attendre, quand répéter des actions, comment prendre des décisions et quand mettre fin au projet.

Vous trouverez ci-dessous une liste des contrôles disponibles, y compris les méthodes et les mots-clés principaux de Python :

  • wait – Met le projet en pause pendant une durée donnée.

  • for – Répète le code pour chaque élément d’une séquence.

  • if – Exécute le code si une condition est vraie.

  • if/else – Exécute un code différent en fonction d’une condition.

  • if/elif/else – Vérifie plusieurs conditions dans l’ordre.

  • while – Répète le code tant qu’une condition est vraie.

  • break – Sort immédiatement d’une boucle.

  • program_stop – Met fin au programme en cours.

  • pass – Espace réservé utilisé lorsqu’aucune action n’est nécessaire.

attendez#

wait fait une pause pendant une durée spécifique avant de passer à la ligne de code suivante.

Usage:
wait(time, units)

Paramètres

Description

time

Le temps d’attente, sous forme de nombre entier positif ou décimal.

units

L’unité représentant le temps d’attente : MSEC (par défaut) – millisecondes, ou SECONDS

# Move the arm to the desired position and then blink the signal tower
arm.move_to(40, 140, 210, False)
wait(1, SECONDS)
signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)

pour#

for répète un ensemble d’actions un nombre spécifique de fois. for peut être utilisé pour parcourir les éléments des listes, tuples, dictionnaires, ensembles, chaînes de caractères, ou pour un nombre spécifié de boucles avec range.

Utilisation :

for value in expression_list:
    pass

Composants

Description

value

Une variable temporaire qui stocke l’élément courant de l’itération.

expression_list

La collection d’éléments parcourus en boucle (par exemple, liste, chaîne de caractères, plage).

# Move the arm 4 times by 100 millimeters on the y axis
for index in range(4):
    arm.move_inc(0, 100, 0)

si#

if exécute le bloc de code indenté si la condition est True.

Usage:

if condition:
    pass

Composants

Description

condition

Une expression ou une variable vérifiée lors de l’exécution de l’instruction. Si sa valeur est Vrai True, le code à l’intérieur du bloc if est exécuté ; si sa valeur est Faux ( False).

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    print("\033[2J")
    print(brain.timer_time(SECONDS))
    wait(50, MSEC)
    if arm.is_done():
        brain.timer_reset()

si/sinon#

if et else déterminent quel bloc de code indenté s’exécute en fonction de si la condition est True ou False.

Usage:

if condition:
    pass
else:
    pass

Composants

Description

condition

An expression or variable that is checked when the statement runs. If it is True, the code inside the if block executes; if it is False, the code inside the else block executes instead.

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        brain.timer_reset()
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

si/sinon/sinon#

La structure if/elif/else sélectionne le bloc de code indenté qui s’exécute en fonction de conditions :

  • if exécute son bloc si la condition est True.

  • elif vérifie les conditions supplémentaires uniquement si toutes les conditions précédentes sont False. Plusieurs elif instructions peuvent être utilisées.

  • else exécute son bloc uniquement si aucune des conditions précédentes n’est True.

Usage:

if condition:
    pass
elif condition:
    pass
else:
    pass

Composants

Description

condition

An expression or variable that is checked when the statement runs. The first condition that is True determines which block executes; if none are True, the else block runs.

# Change the signal tower light if arm can reach to the desired position
while True:
    if arm.can_arm_reach_to(200, 200, 200):
        signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)
    elif arm.can_arm_reach_to(300, 300, 300):
        signal_tower.set_color(SignalTower.GREEN, SignalTower.BLINK)
    else:
        signal_tower.set_color(SignalTower.ALL, SignalTower.OFF)
    wait(50, MSEC)

alors que#

while repeatedly runs code as long as the condition is True. It can also be used like a “forever” by using True as the condition, or a “wait until” by adding not to the condition, as shown in the examples below.

Usage:

while condition:
    pass

Composants

Description

condition

Une expression ou une variable vérifiée avant chaque itération. Si elle vaut True, la boucle continue ; si elle vaut False, la boucle s’arrête.

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

# Blink blue light until the move is completed
signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)
arm.move_to(-100, 200, 100, False)
while not arm.is_done():
    wait(0.2, SECONDS)
signal_tower.set_color(SignalTower.BLUE, SignalTower.ON)

casser#

break sort immédiatement d’une boucle. break peut être utilisé pour interrompre des boucles qui, autrement, tourneraient indéfiniment.

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

arrêt_programme#

program_stop met fin à un projet en cours.

Usage:
brain.program_stop()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Stop the project until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)
brain.program_stop()

passer#

pass est un espace réservé pour du code futur et peut être utilisé pour éviter les erreurs dans les boucles vides, les conditions et les fonctions.

if condition:
    pass

def function():
    pass