Avståndssensor#

Introduktion#

Ekolodsklass sonar används med VEX IQ-avståndssensorn (1:a generationen). Ekolodsklass distance används med VEX IQ-avståndssensorn (2:a generationen).

Båda avståndssensorerna kan detektera om ett objekt befinner sig framför sensorn och returnera hur långt bort objektet är. VEX IQ-avståndssensorn (2:a generationen) kan också returnera det detekterade objektets relativa hastighet och uppskatta om objektet är litet, medelstort eller stort.

Klasskonstruktörer#

1 — Denna konstruktor skapar en VEX IQ-avståndssensor (1:a generationen).

sonar(
    int32_t index);

2 — Denna konstruktor skapar en VEX IQ-avståndssensor (2:a generationen).

distance(
    int32_t index);

Klassförstörare#

Förstör objektet med avstånd distance och frigör tillhörande resurser.

1 — Förstör en VEX IQ-avståndssensor (1:a generationen).

~sonar();

2 — Förstör en VEX IQ-avståndssensor (2:a generationen).

~distance();

Parametrar#

Parameter

Typ

Beskrivning

index

int32_t

Den smarta porten som avståndssensorn är ansluten till, skriven som PORTx, där x är portnumret (till exempel PORT1).

Exempel#

1 — Skapa en VEX IQ-avståndssensorinstans (1:a generationen) i port 1.

sonar Distance1 = sonar(PORT1);

2 — Skapa en VEX IQ-avståndssensorinstans (2:a generationen) i port 1.

distance Distance1 = distance(PORT1);

Medlemsfunktioner#

Klassen sonar inkluderar följande medlemsfunktioner:

  • foundObject — Returnerar om avståndssensorn för närvarande detekterar ett objekt.

  • distance — Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

Klassen distance innehåller följande medlemsfunktioner:

  • objectDistance — Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

  • objectVelocity — Returnerar hur snabbt det detekterade objektet rör sig mot eller bort från avståndssensorn.

  • objectSize — Returnerar den uppskattade storleken på det detekterade objektet.

  • isObjectDetected — Returnerar om avståndssensorn för närvarande detekterar ett objekt.

  • changed — Registrerar en återuppringningsfunktion som körs när det detekterade avståndsvärdet ändras.

  • installed — Returnerar om avståndssensorn är installerad och ansluten.

Innan några medlemsfunktioner för distance eller sonar anropas måste en distance eller sonar instans skapas, enligt nedan:

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

// Create a VEX IQ Distance Sensor (2nd gen) instance in Port 1
distance Distance1 = distance(PORT1);

foundObject#

Returnerar om avståndssensorn för närvarande detekterar ett objekt.

Available Functions
bool foundObject();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar ett booleskt värde som anger om avståndssensorn detekterar ett objekt:

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (1st gen) function.

distance#

Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

Available Functions
double distance( distanceUnits units );

Parameters

Parameter

Typ

Beskrivning

units

distanceUnits

Avståndsenheten:

  • mm — millimeter (24 mm till 1000 mm)
  • cm — centimeter (2,4 cm till 100 cm)
  • inches — tum (1 tum till 40 tum)

Return Values

Returnerar double som representerar avståndet mellan avståndssensorn och det närmaste detekterade objektet i de angivna enheterna.

Notes - This is a VEX IQ Distance Sensor (1st gen) function.

objectDistance#

Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

Available Functions
double objectDistance( distanceUnits units );

Parameters

Parameter

Typ

Beskrivning

units

distanceUnits

Avståndsenheten:

  • mm — millimeter (20 mm till 2000 mm)
  • cm — centimeter (2 cm till 200 cm)
  • inches — tum (0,78 tum till 78 tum)

Return Values

Returnerar double som representerar avståndet mellan avståndssensorn och det närmaste detekterade objektet i de angivna enheterna.

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectVelocity#

Returnerar den relativa hastigheten för det detekterade objektet.

Hastigheten visar hur snabbt objektet rör sig mot eller bort från avståndssensorn. Ett värde nära 0 betyder att objektet inte rör sig mycket i förhållande till sensorn.

Available Functions
double objectVelocity();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar double som representerar den relativa hastigheten för det detekterade objektet i m/s (meter per sekund).

Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

objectSize#

Returnerar den uppskattade storleken på objektet som detekterats av avståndssensorn.

Avståndssensorn uppskattar objektstorleken baserat på hur mycket av sensorns synfält som upptas av det detekterade objektet.

Available Functions
sizeType objectSize();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar en sizeType som anger den uppskattade storleken på det detekterade objektet:

  • none — No object is detected.
  • small — A small object is detected.
  • medium — A medium object is detected.
  • large — A large object is detected.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

isObjectDetected#

Returnerar om avståndssensorn för närvarande detekterar ett objekt.

Available Functions
bool isObjectDetected();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar ett booleskt värde som anger om avståndssensorn detekterar ett objekt:

  • true — The Distance Sensor detects an object.
  • false — The Distance Sensor does not detect an object.
Notes - This is a VEX IQ Distance Sensor (2nd gen) function.

changed#

Registrerar en återuppringningsfunktion som körs när det detekterade avståndsvärdet ändras.

Available Functions
void changed( void (* callback)(void) );

Parameters

Parameter

Typ

Beskrivning

callback

void (*)(void)

En pekare till en funktion som anropas när det detekterade avståndsvärdet ändras. Funktionen får inte ta emot några parametrar och returnera void.

Return Values

Den här funktionen returnerar inget värde.

Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.

installed#

Returnerar om avståndssensorn är installerad och ansluten.

Available Functions
bool installed();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar ett booleskt värde som anger om avståndssensorn är installerad och ansluten:

  • true — The Distance Sensor is installed and connected.
  • false — The Distance Sensor is not installed or not connected.
Notes - This is a VEX IQ Distance Sensor (1st gen) or (2nd gen) function.