télémètre#

Introduction#

Le sonar de classe sonar est utilisé avec le télémètre à ultrasons, qui mesure la distance à l’objet le plus proche grâce aux ondes sonores. Son fonctionnement repose sur l’émission d’une impulsion ultrasonore et la mesure du temps de retour de cette impulsion.

Le télémètre VEX EXP.

Constructeur de classe#

sonar(
  triport::port &port);

Destructeur de classe#

Détruit l’objet sonar et libère les ressources associées.

virtual ~sonar();

Paramètres#

Paramètre

Taper

Description

port

triport::port &

The first 3-Wire Port of a required two-port group used by the Range Finder. The Range Finder occupies two adjacent ports (A–B, C–D, E–F, or G–H) on either the Brain or a 3-Wire Expander. Specify the first port in the pair (A, C, E, or G), written as Brain.ThreeWirePort.X or ExpanderName.X where X is the port letter (for example, Brain.ThreeWirePort.A or Expander1.C).

Exemples#

// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);

Fonctions des membres#

La classe sonar comprend les fonctions membres suivantes :

  • foundObject — Indique si le détecteur de portée détecte un objet.

  • distance — Renvoie la distance entre le télémètre et l’objet détecté le plus proche.

Before calling any sonar member functions, a sonar instance must be created, as shown below:

/* This constructor is required when using VS Code.
Range Finder configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);

foundObject#

Indique si le télémètre détecte un objet dans son champ de vision.

Available Functions
bool foundObject();

Parameters

Cette fonction n’accepte aucun paramètre.

Return Values

Renvoie une valeur booléenne bool indiquant si le détecteur de distance détecte un objet :

  • true — Le télémètre détecte un objet.

  • false — Le télémètre ne détecte aucun objet.

Examples
// Check if an object is detected.
if (RangeFinderA.foundObject()){
    // Print to screen on the brain that an object was found.
    Brain.Screen.print("object found");
}

distance#

Renvoie la distance mesurée jusqu’à l’objet le plus proche détecté par le capteur.

Available Functions
double distance(
  distanceUnits units );

Parameters

Paramètre

Taper

Description

units

distanceUnits

L’unité qui représente la distance : inches ou mm — millimètres.

Return Values

Renvoie un nombre décimal double représentant la distance dans les unités spécifiées.

Examples
// Get the Range Finder distance in millimeters.
double value = RangeFinderA.distance(mm);

// Print the current distance detected by the Range Finder to the
// Brain's screen.
Brain.Screen.print(value);