Entfernungsmesser#
Einführung#
Das Sonar der Klasse sonar wie lange der Schall zum Zurückprallen benötigt.

Klassenkonstruktor#
sonar(
triport::port &port);
Klassendestruktor#
Destroys the sonar object and releases associated resources.
virtual ~sonar();
Parameter#
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Der erste 3-Draht-Port einer erforderlichen Zwei-Port-Gruppe, die vom Entfernungsmesser verwendet wird. Der Entfernungsmesser belegt zwei benachbarte Ports (A–B, C–D, E–F oder G–H) entweder am Hauptgerät oder an einem 3-Draht-Expander. Geben Sie den ersten Port des Paares (A, C, E oder G) an, geschrieben als |
Beispiele#
// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);
Mitgliedsfunktionen#
Die Klasse sonar umfasst die folgenden Memberfunktionen:
foundObject— Gibt zurück, ob der Entfernungsmesser ein Objekt erkennt.distance— Gibt die Entfernung zwischen dem Entfernungsmesser und dem nächstgelegenen erkannten Objekt zurück.
Bevor Sie eine der sonar Memberfunktionen aufrufen, muss eine sonar -Instanz erstellt werden, wie unten gezeigt:
/* 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#
Gibt zurück, ob der Entfernungsmesser ein Objekt in seinem Sichtfeld erkennt.
Available Functionsbool foundObject();
Diese Funktion akzeptiert keine Parameter.
Return ValuesGibt einen booleschen Wert bool zurück, der angibt, ob der Entfernungsmesser ein Objekt erkennt:
true— Der Entfernungsmesser erkennt ein Objekt.false— Der Entfernungsmesser erkennt kein Objekt.
// 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#
Gibt die gemessene Entfernung zum nächstgelegenen vom Sensor erfassten Objekt zurück.
Available Functionsdouble distance(
distanceUnits units );
Parameter |
Typ |
Beschreibung |
|---|---|---|
|
|
Die Einheit, die die Entfernung angibt: |
Gibt einen Wert vom double zurück, der die Entfernung in den angegebenen Einheiten darstellt.
// 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);