Diapazona meklētājs#

Ievads#

sonar tiek izmantots ar ultraskaņas tālmēru, kas mēra attālumu līdz tuvākajam objektam, izmantojot skaņas viļņus. Tas darbojas, nosūtot ultraskaņas impulsu un mērot, cik ilgs laiks nepieciešams, lai skaņa atstarotos atpakaļ.

VEX EXP tālmērs.

Klases konstruktors#

sonar(
  triport::port &port);

Klases iznīcinātājs#

Iznīcina sonar objektu un atbrīvo saistītos resursus.

virtual ~sonar();

Parametri#

Parametrs

Tips

Apraksts

port

triport::port &

Pirmais 3 vadu ports no nepieciešamās divu portu grupas, ko izmanto diapazona meklētājs. Diapazona meklētājs aizņem divus blakus esošus portus (A–B, C–D, E–F vai G–H) vai nu smadzenēs, vai 3 vadu paplašinātājā. Norādiet pirmo portu pārī (A, C, E vai G), kas pierakstīts kā Brain.ThreeWirePort.X vai ExpanderName.X , kur X ir porta burts (piemēram, Brain.ThreeWirePort.A vai Expander1.C).

Piemēri#

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

Dalībnieku funkcijas#

sonar klasē ir iekļautas šādas dalībfunkcijas:

  • foundObject — Atgriež, vai diapazona meklētājs atrod objektu.

  • distance — Atgriež attālumu starp tālmēru un tuvāko noteikto objektu.

Pirms jebkuru sonar dalībfunkciju izsaukšanas ir jāizveido sonar instance, kā parādīts zemāk:

/* 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#

Atgriež, vai diapazona meklētājs savā redzes laukā atrod objektu.

Available Functions
bool foundObject();

Parameters

Šī funkcija nepieņem nekādus parametrus.

Return Values

Atgriež bool kas apzīmē, vai diapazona meklētājs atrod objektu:

  • true — Tālummaiņas meklētājs nosaka objektu.

  • false — Tālummaiņas meklētājs neuztver objektu.

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#

Atgriež izmērīto attālumu līdz tuvākajam sensora noteiktajam objektam.

Available Functions
double distance(
  distanceUnits units );

Parameters

Parametrs

Tips

Apraksts

units

distanceUnits

Mērvienība, kas attēlo attālumu: inches vai mm — milimetri.

Return Values

Atgriež skaitli double un kas apzīmē attālumu norādītajās mērvienībās.

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