Czujnik obiektu#
Wstęp#
Klasa objectdetector służy do pomiaru współczynnika odbicia i wykrywania obiektów za pomocą światła podczerwonego (IR) czujnika obiektów.
Konstruktor klasy#
objectdetector(
triport::port &port,
bool bReverse = false );
Destruktor klasy#
Niszczy obiekt objectdetector objectdetector i uwalnia powiązane zasoby.
virtual ~objectdetector();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Port 3-żyłowy, do którego podłączony jest czujnik obiektu, zapisany jako |
|
|
Opcjonalna wartość logiczna, która odwraca kierunek czujnika obiektu:
|
Przykłady#
// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);
Funkcje członkowskie#
Klasa objectdetector zawiera następujące funkcje członkowskie:
reflectivity— Zwraca współczynnik odbicia wykryty przez czujnik obiektu.isObjectDetected— Zwraca informację, czy czujnik obiektu wykrył obiekt.setDetectionThreshold— Ustawia zakres wykrywania czujnika obiektu.objectDetected— Rejestruje funkcję, która ma zostać wywołana, gdy czujnik obiektu wykryje obiekt.objectLost— Rejestruje funkcję, która ma zostać wywołana, gdy czujnik obiektu utraci obiekt.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej objectdetector objectdetector należy utworzyć instancję objectdetector objectdetector , jak pokazano poniżej:
// Create an objectdetector instance in Port A
objectdetector ObjectSensorA = objectdetector(Brain.ThreeWirePort.A, true);
reflectivity#
Zwraca współczynnik odbicia zmierzony przez czujnik obiektu.
Available Functionsint32_t reflectivity(
percentUnits units = percentUnits::pct );
Parametry |
Typ |
Opis |
|---|---|---|
|
|
Jednostka oznaczająca współczynnik odbicia:
|
Zwraca wartość int32_t reprezentującą współczynnik odbicia zmierzony przez detektor obiektów jako wartość procentową w zakresie 0–100%.
// Display the detected reflectivity on the Brain's screen
int32_t value = ObjectSensorA.reflectivity();
Brain.Screen.print(value);
isObjectDetected#
Zwraca informację, czy obiekt jest obecnie wykryty przez detektor obiektów.
Available Functionsbool isObjectDetected();
Funkcja ta nie przyjmuje żadnych parametrów.
Return ValuesZwraca wartość logiczną wskazującą, czy obiekt został wykryty:
-
true— An object is detected. -
false— No object is detected.
setDetectionThreshold#
Ustawia próg wykrywania dla detektora obiektów na określoną wartość.
Available Functionsvoid setDetectionThreshold(
int32_t threshold,
percentUnits units = percentUnits::pct );
Parametry |
Typ |
Opis |
|---|---|---|
|
|
Próg odbicia dla wykrywania obiektów w zakresie 0 - 100. |
|
|
Jednostka oznaczająca nowy próg:
|
Ta funkcja nie zwraca wartości.
Examples// Set the reflectivity threshold to 50%
ObjectSensorA.setDetectionThreshold(50);
objectDetected#
Rejestruje funkcję wywołania zwrotnego na wypadek wykrycia obiektu.
Available Functionsvoid objectDetected(void (* callback)(void));
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Funkcja wywołania zwrotnego, która ma zostać wywołana po wykryciu obiektu. |
Ta funkcja nie zwraca wartości.
Examplesvoid detected() {
Brain.Screen.print("object detected");
}
// Run detected when the Object Detector detects an object
ObjectSensorA.objectDetected(detected);
objectLost#
Rejestruje funkcję wywołania zwrotnego na wypadek utraty obiektu.
Available Functionsvoid objectLost(void (* callback)(void));
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Funkcja wywołania zwrotnego, która ma zostać wywołana w przypadku utraty obiektu. |
Ta funkcja nie zwraca wartości.
Examplesvoid lost() {
Brain.Screen.print("object lost");
}
// Run lost when the Object Detector loses an object
ObjectSensorA.objectLost(lost);