Distance#

Introduction#

Le capteur de distance peut détecter si un objet se trouve devant le capteur et indiquer la distance qui le sépare de cet objet.

Le capteur de distance VEX IQ (1re génération) utilise un sonar pour détecter les objets et mesurer les distances. Le capteur de distance VEX IQ (2e génération) utilise un laser sans danger pour les salles de classe et peut également fournir la vitesse relative de l’objet détecté et estimer sa taille (petit, moyen ou grand).

Cette page utilise distance_1 comme nom de capteur de distance à titre d’exemple. Remplacez-le par le nom que vous avez configuré, selon vos besoins.

Vous trouverez ci-dessous la liste de toutes les méthodes disponibles :

Getters — Renvoient les données du capteur de distance.

  • is_object_detected — (Capteur de distance VEX IQ (1re génération) ou (2e génération)) Renvoie si le capteur de distance détecte actuellement un objet.

  • distance — (Capteur de distance VEX IQ (1ère génération)) Renvoie la distance entre le capteur de distance et l’objet détecté le plus proche.

  • object_distance — (Capteur de distance VEX IQ (2e génération)) Renvoie la distance entre le capteur de distance et l’objet détecté le plus proche.

  • object_velocity — (Capteur de distance VEX IQ (2e génération)) Renvoie la vitesse à laquelle l’objet détecté se déplace vers ou s’éloigne du capteur de distance.

  • object_size — (Capteur de distance VEX IQ (2e génération)) Renvoie la taille estimée de l’objet détecté.

  • installed — (Capteur de distance VEX IQ (1re génération) ou (2e génération)) Renvoie si le capteur de distance est installé et connecté.

Constructeurs — Initialisez et configurez manuellement un capteur de distance.

  • Sonar — Crée un capteur de distance VEX IQ (1ère génération).

  • Distance — Crée un capteur de distance VEX IQ (2e génération).

Getters#

is_object_detected#

is_object_detected indique si le capteur de distance détecte actuellement un objet à portée.

  • True — Le capteur de distance détecte un objet.

  • False — Le capteur de distance ne détecte aucun objet.

Usage:
distance_1.is_object_detected()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Turn until an object is detected
drivetrain.turn(RIGHT)
while not distance_1.is_object_detected():
    wait(15, MSEC)
drivetrain.stop()
brain.screen.print("Object detected!")

distance#

distance renvoie la distance entre le capteur de distance et l’objet détecté le plus proche sous forme décimale (flottant).

Remarque : Il s’agit d’une méthode utilisant le capteur de distance VEX IQ (1re génération).

Usage:
distance_1.distance(units)

Paramètres

Description

units

Optionnel. Unité de distance : MM (par défaut, 24 mm à 1000 mm) ou INCHES (1 pouce à 40 pouces).

# Display the distance to an object
if distance_1.is_object_detected():
    print("Distance: ")
    print(distance_1.distance(MM))
else:
    print("No object detected")

object_distance#

object_distance renvoie la distance entre le capteur de distance et l’objet détecté le plus proche sous forme décimale (flottant).

Remarque : Il s’agit d’une méthode utilisant le capteur de distance VEX IQ (2e génération).

Usage:
distance_1.object_distance(units)

Paramètres

Description

units

Optionnel. L’unité de distance : MM (par défaut, 20 mm à 2000 mm), INCHES (0,78 pouce à 78 pouces), ou DistanceUnits.CM (2 cm à 200 cm).

# Drive forward until an object is 200 mm away
while distance_1.object_distance(MM) > 200:
    drivetrain.drive(FORWARD)
drivetrain.stop()

object_velocity#

object_velocity renvoie la vitesse relative de l’objet détecté sous forme décimale (flottant) en m/s (mètres par seconde).

La vitesse indique la rapidité avec laquelle l’objet se rapproche ou s’éloigne du capteur de distance. Une valeur positive signifie que l’objet se rapproche du capteur, une valeur négative qu’il s’en éloigne, et une valeur proche de 0 qu’il est quasiment immobile.

Remarque : Il s’agit d’une méthode utilisant le capteur de distance VEX IQ (2e génération).

Usage:
distance_1.object_velocity()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display the velocity of a moving object
while True:
    brain.screen.clear_screen()
    brain.screen.set_cursor(1, 1)
    brain.screen.print("Velocity: ")
    brain.screen.print(distance_1.object_velocity())
    wait(100, MSEC)

object_size#

object_size renvoie la taille estimée de l’objet détecté par le capteur de distance.

Le capteur de distance estime la taille de l’objet en fonction de la portion du champ de vision du capteur occupée par l’objet détecté.

  • ObjectSizeType.NONE — Aucun objet n’est détecté.

  • ObjectSizeType.SMALL — Un petit objet a été détecté.

  • ObjectSizeType.MEDIUM — Un objet de taille moyenne a été détecté.

  • ObjectSizeType.LARGE — Un objet volumineux a été détecté.

Remarque : Il s’agit d’une méthode utilisant le capteur de distance VEX IQ (2e génération).

Usage:
distance_1.object_size()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

installed#

installed indique si le capteur de distance est installé et connecté.

  • True — Le capteur de distance est installé et connecté.

  • False — Le capteur de distance n’est pas installé ou n’est pas connecté.

Usage:
distance_1.installed()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

Constructeurs#

Les constructeurs sont utilisés pour créer manuellement des objets Distance Distance et Sonar , par exemple lors de la configuration d’un capteur de distance en dehors de VEXcode.

Sonar#

Sonar crée un objet VEX IQ Distance Sensor (1ère génération).

Usage:
distance_1 = Sonar(smartport)

Paramètre

Description

smartport

Le port intelligent auquel le capteur de distance est connecté est écrit sous la forme Ports.PORTx, où x est le numéro de port.

# Create a Sonar object in Port 1
distance_1 = Sonar(Ports.PORT1)

Distance#

Distance crée un objet VEX IQ Distance Sensor (2e génération).

Usage:
distance_1 = Distance(smartport)

Paramètre

Description

smartport

Le port intelligent auquel le capteur de distance est connecté est écrit sous la forme Ports.PORTx, où x est le numéro de port.

# Create a Distance object in Port 1
distance_1 = Distance(Ports.PORT1)