Śledzenie linii#
Wstęp#
Klasa linii line jest używana z czujnikiem Line Tracker, analogowym czujnikiem, który wykorzystuje podczerwoną diodę LED i czujnik światła do wykrywania odbicia powierzchni przed nim. Jest on przeznaczony do montażu pod podwoziem robota, aby robot mógł podążać wyznaczoną ścieżką.
![]()
Konstruktor klasy#
line(
triport::port &port );
Destruktor klasy#
Niszczy obiekt linii line i uwalnia powiązane zasoby.
virtual ~line();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Port 3-żyłowy, do którego podłączony jest Line Tracker, zapisany jako |
Przykłady#
// Create a line instance in Port A
line LineTrackerA = line(Brain.ThreeWirePort.A);
Funkcje członkowskie#
Klasa line zawiera następujące funkcje członkowskie:
reflectivity— Zwraca wartośćint32_treprezentującą ilość światła odbitego od powierzchni jako procent.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej z wiersza line należy utworzyć instancję z wiersza line , jak pokazano poniżej:
/* This constructor is required when using VS Code.
Line Tracker configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create a line instance in Port A
line LineTrackerA = line(Brain.ThreeWirePort.A);
reflectivity#
Zwraca wartość int32_t , która reprezentuje ilość światła odbitego od powierzchni w procentach. Może to pomóc robotowi podążać wyznaczoną ścieżką.
Notatka:
0% współczynnika odbicia oznacza, że obiekt jest bardzo ciemny.
100% współczynnik odbicia oznacza, że obiekt jest bardzo jasny.
int32_t reflectivity(
percentUnits units = percentUnits::pct );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Jednostka reprezentująca współczynnik odbicia: |
Zwraca wartość int32_t reprezentującą współczynnik odbicia mierzony przez Line Tracker jako wartość procentową w zakresie 0–100%.
// Display the detected reflectivity
int32_t value = LineTrackerA.reflectivity();
Brain.Screen.print(value);