Dalmierz#
Wstęp#
Sonar klasy sonar jest używany z dalmierzem ultradźwiękowym, który mierzy odległość do najbliższego obiektu za pomocą fal dźwiękowych. Działa poprzez wysyłanie impulsu ultradźwiękowego i pomiar czasu odbicia dźwięku.

Konstruktor klasy#
sonar(
triport::port &port);
Destruktor klasy#
Niszczy obiekt sonaru sonar i uwalnia powiązane zasoby.
virtual ~sonar();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Pierwszy port 3-przewodowy wymaganej grupy dwuportowej używanej przez dalmierz. Dalmierz zajmuje dwa sąsiednie porty (A–B, C–D, E–F lub G–H) w module Brain lub ekspanderze 3-przewodowym. Określ pierwszy port w parze (A, C, E lub G), zapisując go jako |
Przykłady#
// Create a sonar instance in Ports A and B
sonar RangeFinderA = sonar(Brain.ThreeWirePort.A);
Funkcje członkowskie#
Klasa sonaru sonar zawiera następujące funkcje członkowskie:
foundObject— Zwraca informację, czy Range Finder wykrył obiekt.distance— Zwraca odległość między dalmierzem a najbliższym wykrytym obiektem.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej sonar należy utworzyć instancję sonar , jak pokazano poniżej:
/* 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#
Zwraca informację, czy dalmierz wykrył obiekt w swoim polu widzenia.
Available Functionsbool foundObject();
Ta funkcja nie przyjmuje żadnych parametrów.
Return ValuesZwraca wartość logiczną bool oznaczającą, czy Range Finder wykrył obiekt:
true— Dalmierz wykrywa obiekt.false— Dalmierz nie wykrywa obiektu.
// 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#
Zwraca zmierzoną odległość do najbliższego obiektu wykrytego przez czujnik.
Available Functionsdouble distance(
distanceUnits units );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Jednostka oznaczająca odległość: |
Zwraca wartość double , co oznacza odległość w określonych jednostkach.
// 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);