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 |
|---|---|---|
|
|
El puerto de 3 hilos al que está conectado el sensor de objetos, escrito |
|
|
Un booleano opcional para invertir la dirección del sensor de objetos:
|
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 Functionsint32_t reflectivity(
percentUnits units = percentUnits::pct );
Parámetros |
Tipo |
Descripción |
|---|---|---|
|
|
La unidad que representa la reflectividad:
|
Devuelve un int32_t que representa la reflectividad medida por el detector de objetos como un porcentaje en el rango de 0 - 100%.
// 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 Functionsbool isObjectDetected();
Esta función no toma ningún parámetro.
Return ValuesDevuelve 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 Functionsvoid setDetectionThreshold(
int32_t threshold,
percentUnits units = percentUnits::pct );
Parámetros |
Tipo |
Descripción |
|---|---|---|
|
|
El umbral de reflectividad para la detección de objetos, en el rango de 0 - 100. |
|
|
La unidad que representa el nuevo umbral:
|
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 Functionsvoid objectDetected(void (* callback)(void));
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
La función de devolución de llamada que se llamará cuando se detecte un objeto. |
Esta función no devuelve un valor.
Examplesvoid 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 Functionsvoid objectLost(void (* callback)(void));
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
La función de devolución de llamada que se llamará cuando se pierda un objeto. |
Esta función no devuelve un valor.
Examplesvoid lost() {
Brain.Screen.print("object lost");
}
// Run lost when the Object Detector loses an object
ObjectSensorA.objectLost(lost);