Rastreador de linha#
Introdução#
A classe line é utilizada com o Line Tracker, um sensor analógico que utiliza um LED infravermelho e um sensor de luz para detetar a refletividade da superfície à sua frente. Foi concebido para ser montado sob o chassis de um robô, permitindo que este siga um caminho pré-marcado.
![]()
Construtor de Classes#
line(
triport::port &port );
Destrutor de classes#
Destrói o objeto da linha line , e liberta os recursos associados.
virtual ~line();
Parâmetros#
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
A porta de 3 fios à qual o rastreador de linha está ligado, escrita como |
Exemplos#
// Create a line instance in Port A
line LineTrackerA = line(Brain.ThreeWirePort.A);
Funções de membro#
A classe line inclui as seguintes funções membro:
reflectivity— Retorna umint32_tque representa a quantidade de luz reflectida da superfície em percentagem.
Before calling any line member functions, a line instance must be created, as shown below:
/* 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#
Devolve um valor do tipo int32_t ( int32_t que representa a quantidade de luz reflectida pela superfície em percentagem. Isto pode ser utilizado para ajudar um robô a seguir um caminho pré-determinado.
Nota:
0% de refletividade significa que o objeto está demasiado escuro.
Uma refletividade de 100% significa que o objeto é demasiado brilhante.
int32_t reflectivity(
percentUnits units = percentUnits::pct );
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
A unidade que representa a reflectividade: |
Retorna um valor int32_t que representa a reflectividade medida pelo Line Tracker como uma percentagem no intervalo de 0 a 100%.
// Display the detected reflectivity
int32_t value = LineTrackerA.reflectivity();
Brain.Screen.print(value);