Távolságmérő#

Bevezetés#

A sonar osztályú szonárt ultrahangos távolságmérővel használják, amely hanghullámok segítségével méri a legközelebbi tárgytól való távolságot. Úgy működik, hogy ultrahangos impulzust küld ki, és méri, mennyi időbe telik, amíg a hang visszaverődik.

A VEX EXP távolságmérő.

Osztálykonstruktor#

sonar(
  triport::port &port);

Osztálydestruktor#

Megsemmisíti a sonar objektumot és felszabadítja a hozzá tartozó erőforrásokat.

virtual ~sonar();

Paraméterek#

Paraméter

Típus

Leírás

port

triport::port &

A távolságmérő által használt kétportos csoport első 3-vezetékes portja. A távolságmérő két szomszédos portot foglal el (A–B, C–D, E–F vagy G–H) az agyon vagy egy 3-vezetékes bővítőn. Adja meg a pár első portját (A, C, E vagy G), a következőképpen írva Brain.ThreeWirePort.X vagy ExpanderName.X , ahol X a port betűjele (például Brain.ThreeWirePort.A vagy Expander1.C).

Példák#

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

Tagfüggvények#

A sonar osztály a következő tagfüggvényeket tartalmazza:

  • foundObject — Visszaadja, hogy a távolságmérő észlelt-e objektumot.

  • distance — Visszaadja a távolságmérő és a legközelebbi érzékelt tárgy közötti távolságot.

Bármely sonar tagfüggvény meghívása előtt létre kell hozni egy sonar példányt, az alábbiak szerint:

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

Azt adja vissza, hogy a távolságmérő észlel-e objektumot a látóterében.

Available Functions
bool foundObject();

Parameters

Ez a függvény nem fogad el paramétereket.

Return Values

bool értéket ad vissza, amely azt jelzi, hogy a távolságmérő észlelt-e objektumot:

  • true — A távolságmérő egy tárgyat érzékel.

  • false — A távolságmérő nem érzékel tárgyat.

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#

Visszaadja az érzékelő által érzékelt legközelebbi tárgytól mért távolságot.

Available Functions
double distance(
  distanceUnits units );

Parameters

Paraméter

Típus

Leírás

units

distanceUnits

A távolságot jelző mértékegység: inches vagy mm — milliméter.

Return Values

double értéket ad vissza, amely a megadott mértékegységben megadott távolságot jelöli.

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