Objektsensor#

Introduktion#

Objektdetektorklassen objectdetector

Klasskonstruktor#

objectdetector( 
  triport::port &port, 
  bool           bReverse = false );

Klassförstörare#

Förstör objectdetector objektet och frigör tillhörande resurser.

virtual ~objectdetector();

Parametrar#

Parameter

Typ

Beskrivning

port

triport::port &

Den 3-trådsport som objektsensorn är ansluten till, skriven som Brain.ThreeWirePort.X eller ExpanderName.X, där X är portbokstaven (till exempel Brain.ThreeWirePort.A eller Expander1.A).

bReverse

bool

Ett valfritt booleskt värde för att reversera objektsensorns riktning:

  • false (standard) — Reversera inte riktningen
  • true — Reversera riktningen

Exempel#

// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);

Medlemsfunktioner#

Klassen objectdetector innehåller följande medlemsfunktioner:

  • reflectivity — Returnerar den reflektivitet som detekterats av objektsensorn.

  • isObjectDetected — Returnerar om objektsensorn detekterar ett objekt.

  • setDetectionThreshold — Ställer in objektsensorns detekteringsområde.

  • objectDetected — Registrerar en funktion som ska anropas när objektsensorn detekterar ett objekt.

  • objectLost — Registrerar en funktion som ska anropas när objektsensorn förlorar ett objekt.

Innan någon funktion med objectdetector medlem anropas måste en objectdetector instans skapas, som visas nedan:

// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);

reflectivity#

Returnerar den reflektivitet som mätts av objektsensorn.

Available Functions
int32_t reflectivity( 
  percentUnits units = percentUnits::pct );

Parameters

Parametrar

Typ

Beskrivning

units

percentUnits

Enheten som representerar reflektiviteten:

  • percent / pct — procent

Return Values

Returnerar int32_t som representerar reflektiviteten mätt av objektdetektorn som en procentandel i intervallet 0–100 %.

Examples
// Display the detected reflectivity on the Brain's screen
int32_t value = ObjectSensorA.reflectivity();
Brain.Screen.print(value);

isObjectDetected#

Returnerar om ett objekt för närvarande detekteras av objektdetektorn.

Available Functions
bool isObjectDetected();

Parameters

Den här funktionen tar inga parametrar.

Return Values

Returnerar ett booleskt värde som anger om ett objekt har upptäckts:

  • true — An object is detected.
  • false — No object is detected.

setDetectionThreshold#

Ställer in detektionströskeln för objektdetektorn till ett specifikt värde.

Available Functions
void setDetectionThreshold( 
  int32_t      threshold, 
  percentUnits units = percentUnits::pct );

Parameters

Parametrar

Typ

Beskrivning

threshold

int32_t

Reflektionsgränsen för objektdetektering, i intervallet 0–100.

units

percentUnits

Enheten som representerar det nya tröskelvärdet:

  • percent / pct — procent

Return Values

Den här funktionen returnerar inget värde.

Examples
// Set the reflectivity threshold to 50%
ObjectSensorA.setDetectionThreshold(50);

objectDetected#

Registrerar en återuppringningsfunktion för när ett objekt detekteras.

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

Parameters

Parameter

Typ

Beskrivning

callback

void (*)(void)

Återanropsfunktionen som ska anropas när ett objekt detekteras.

Return Values

Den här funktionen returnerar inget värde.

Examples
void detected() {
  Brain.Screen.print("object detected");
}

// Run detected when the Object Detector detects an object
ObjectSensorA.objectDetected(detected);

objectLost#

Registrerar en återuppringningsfunktion för när ett objekt går förlorat.

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

Parameters

Parameter

Typ

Beskrivning

callback

void (*)(void)

Återanropsfunktionen som ska anropas när ett objekt går förlorat.

Return Values

Den här funktionen returnerar inget värde.

Examples
void lost() {
  Brain.Screen.print("object lost");
}

// Run lost when the Object Detector loses an object
ObjectSensorA.objectLost(lost);