Kodlayıcı#

giriiş#

encoder sınıfı, şaftın dönme konumunu ve hızını ölçen Optik Şaft Kodlayıcı ile birlikte kullanılır. Şaftın ne kadar döndüğünü ve ne kadar hızlı döndüğünü tespit etmek için dahili optik sensörler kullanır; bu da tekerlek dönüşünü, kol konumunu veya diğer mekanizmaları izlemek için kullanışlı hale getirir.

VEX Optik Şaft Kodlayıcı.

Sınıf Oluşturucu#

encoder(
  triport::port &port );

Sınıf Yıkıcısı#

encoder nesnesini yok eder ve ilgili kaynakları serbest bırakır.

virtual ~encoder();

Parametreler#

Parametre

Tip

Tanım

port

triport::port &

Optik Şaft Kodlayıcı tarafından kullanılan gerekli iki portlu grubun ilk 3-Kablolu Portu. Kodlayıcı, Beyin veya 3-Kablolu Genişletici üzerinde iki bitişik portu (A–B, C–D, E–F veya G–H) işgal eder. Çiftteki ilk portu (A, C, E veya G) Brain.ThreeWirePort.X veya ExpanderName.X şeklinde belirtin; burada X port harfidir (örneğin, Brain.ThreeWirePort.A veya Expander1.C).

Örnekler#

// Create an encoder instance in Ports A and B
encoder EncoderA = encoder(Brain.ThreeWirePort.A);

Üye Fonksiyonları#

encoder sınıfı aşağıdaki üye fonksiyonlarını içerir:

  • setPosition — Kodlayıcının mevcut konumunu belirtilen bir değere ayarlar.

  • position — Kodlayıcının ne kadar döndüğünü döndürür.

  • velocity — Kodlayıcının mevcut dönme hızını döndürür.

Herhangi bir encoder üye fonksiyonunu çağırmadan önce, aşağıda gösterildiği gibi bir encoder örneği oluşturulmalıdır:

/* 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#

Kodlayıcının mevcut konumunu belirtilen bir değere ayarlar. Bu, bir motoru veya başka bir mekanizmayı döndürmeden izlenen konumu manuel olarak ayarlamak için kullanılabilir.

Available Functions
void setPosition(
  double        value,
  rotationUnits units);

Parameters

Parametreler

Tip

Tanım

value

double

Ayarlanacak dönme pozisyonu.

units

rotationUnits

The unit that represents the position:

  • deg / degrees — degrees
  • turns / rev — revolutions

Return Values

Bu fonksiyon bir değer döndürmez.

position#

Kodlayıcıya bağlı milin ne kadar döndüğünü döndürür.

Available Functions
double position(
  rotationUnits units );

Parameters

Parametreler

Tip

Tanım

units

rotationUnits

The unit that represents the position:

  • deg / degrees — degrees
  • turns / rev — revolutions

Return Values

Belirtilen birimlerdeki dönüşü temsil eden double bir çift değer döndürür.

velocity#

Kodlayıcının dönme hızını döndürür.

Available Functions
double velocity(
  velocityUnits units );

Parameters

Parametreler

Tip

Tanım

units

velocityUnits

Hızı temsil etmek için kullanılan birim:

  • percent / pct — yüzde
  • rpm — dakikadaki dönüş sayısı
  • dps — saniyede derece

Return Values

Belirtilen birimlerdeki hızı temsil eden double bir double değeri döndürür.