Koder#
Wstęp#
Klasa enkodera encoder jest używana z optycznym enkoderem wału, który mierzy położenie i prędkość obrotową wału. Wykorzystuje on wewnętrzne czujniki optyczne do pomiaru odległości i prędkości obrotu wału, co czyni go przydatnym do śledzenia obrotów kół, położenia ramienia lub innych mechanizmów.

Konstruktor klasy#
encoder(
triport::port &port );
Destruktor klasy#
Niszczy obiekt kodera encoder i uwalnia powiązane zasoby.
virtual ~encoder();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Pierwszy port 3-przewodowy wymaganej grupy dwuportowej używanej przez optyczny enkoder wałkowy. Enkoder zajmuje dwa sąsiednie porty (A–B, C–D, E–F lub G–H) w module Brain lub ekspanderze 3-przewodowym. Określ pierwszy port w parze (A, C, E lub G), zapisując go jako |
Przykłady#
// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);
Funkcje członkowskie#
Klasa kodera encoder zawiera następujące funkcje członkowskie:
setPosition— Ustawia bieżącą pozycję enkodera na określoną wartość.pozycja
position— Zwraca, o ile obrócił się enkoder.velocity— Zwraca aktualną prędkość obrotową enkodera.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej kodera encoder należy utworzyć instancję kodera encoder , jak pokazano poniżej:
/* This constructor is required when using VS Code.
Encoder configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);
setPosition#
Ustawia aktualną pozycję enkodera na określoną wartość. Można tego użyć do ręcznego ustawienia śledzonej pozycji bez obracania silnika lub innego mechanizmu.
Available Functionsvoid setPosition(
double value,
rotationUnits units);
Parametry |
Typ |
Opis |
|---|---|---|
|
|
Pozycja obrotowa do ustawienia. |
|
|
Jednostka, która reprezentuje pozycję:
|
Ta funkcja nie zwraca wartości.
position#
Zwraca informację o tym, jak daleko obrócił się wał podłączony do enkodera.
Available Functionsdouble position(
rotationUnits units );
Parametry |
Typ |
Opis |
|---|---|---|
|
|
Jednostka, która reprezentuje pozycję:
|
Zwraca wartość double oznaczającą obrót w określonych jednostkach.
velocity#
Zwraca prędkość obrotową enkodera.
Available Functionsdouble velocity(
velocityUnits units );
Parametry |
Typ |
Opis |
|---|---|---|
|
|
Jednostka używana do przedstawienia prędkości:
|
Zwraca wartość double , co oznacza prędkość w określonych jednostkach.