Sensor de objetos#

Introducción#

La objectdetector clase objectdetector se utiliza para medir la reflectividad y detectar objetos con la luz infrarroja (IR) del sensor de objetos.

Constructor de clases#

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

Destructor de clase#

Destruye el objectdetector objeto objectdetector y libera los recursos asociados.

virtual ~objectdetector();

Parámetros#

Parámetro

Tipo

Descripción

port

triport::port &

El puerto de 3 hilos al que está conectado el sensor de objetos, escrito Brain.ThreeWirePort.X Brain.ThreeWirePort.X ExpanderName.XExpanderName.X, donde X es la letra del puerto (por ejemplo Brain.ThreeWirePort.A o Expander1.A).

bReverse

bool

Un booleano opcional para invertir la dirección del sensor de objetos:

  • false (predeterminado) — No invertir la dirección
  • true — Invertir la dirección

Ejemplos#

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

Funciones de los miembros#

La objectdetector clase objectdetector incluye las siguientes funciones miembro:

  • reflectivity — Devuelve la reflectividad detectada por el sensor de objetos.

  • isObjectDetected — Devuelve si el sensor de objetos detecta un objeto.

  • setDetectionThreshold — Establece el rango de detección del sensor de objetos.

  • objectDetected — Registra una función que se llamará cuando el sensor de objetos detecte un objeto.

  • objectLost — Registra una función que se llamará cuando el sensor de objetos pierda un objeto.

Antes de llamar a objectdetector miembro de objectdetector, se objectdetector instancia de objectdetector, como se muestra a continuación:

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

reflectivity#

Devuelve la reflectividad medida por el sensor de objetos.

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

Parameters

Parámetros

Tipo

Descripción

units

percentUnits

La unidad que representa la reflectividad:

  • percent / pct — porcentaje

Return Values

Devuelve un int32_t que representa la reflectividad medida por el detector de objetos como un porcentaje en el rango de 0 - 100%.

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

isObjectDetected#

Devuelve si el detector de objetos detecta actualmente un objeto.

Available Functions
bool isObjectDetected();

Parameters

Esta función no toma ningún parámetro.

Return Values

Devuelve un booleano que indica si se detecta un objeto:

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

setDetectionThreshold#

Establece el umbral de detección para el detector de objetos en un valor específico.

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

Parameters

Parámetros

Tipo

Descripción

threshold

int32_t

El umbral de reflectividad para la detección de objetos, en el rango de 0 - 100.

units

percentUnits

La unidad que representa el nuevo umbral:

  • percent / pct — porcentaje

Return Values

Esta función no devuelve un valor.

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

objectDetected#

Registra una función de devolución de llamada para cuando se detecta un objeto.

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

Parameters

Parámetro

Tipo

Descripción

callback

void (*)(void)

La función de devolución de llamada que se llamará cuando se detecte un objeto.

Return Values

Esta función no devuelve un valor.

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

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

objectLost#

Registra una función de devolución de llamada para cuando se pierde un objeto.

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

Parameters

Parámetro

Tipo

Descripción

callback

void (*)(void)

La función de devolución de llamada que se llamará cuando se pierda un objeto.

Return Values

Esta función no devuelve un valor.

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

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