Hedef Pozisyonunu Hesaplama
Şimdi hedef pozisyonumuz için bir tahminimiz olduğuna göre, bunu, Drivetrain Encoder'ları bölümünde ele aldığımız benzer yöntemleri kullanarak daha hassas bir şekilde iyileştirip iyileştiremeyeceğimize bakalım.
Dönüşüm İçin Gerekenler Devr Başına Tıklar Hatırlayalım ki, encoder milinin devri başına tıklama sayısı, bir mekanizmayı kontrol eden milin devri başına tıklama sayısından farklıdır, bu, Drivetrain'imizde belirlediğimiz gibi.
Mekanik bir sistemde hareket iletiminin etkisi hakkında daha fazla bilgi için Compound Gearing (Bileşik Dişli) bölümüne göz atın.
Encoder milinin devri başına tıklama sayısı, motor ve encoder'a bağlıdır. Dahili encoder'lı motorların üreticileri, devri başına tıklama sayısı hakkında bilgi sağlar.
Motorunuz veya encoder'larınız hakkında daha fazla bilgi için üreticinin web sitesini ziyaret edin. HD Hex Motorlar veya Core Hex Motorlar için Motor dokümantasyonuna bakın.
Core Hex Motor spesifikasyonlarında, her biri için iki farklı Encoder Sayısı bulunmaktadır:
Motorda - 4 tıklama/devrim
Çıkışta - 288 tıklama/devrim
Motorda, encoder'ın üzerinde bulunduğu milin devri başına tıklama sayısını ifade eder. Bu sayı, HD Hex Motor için kullandığımız 28 tıklama/devrime eşdeğerdir.
288 tıklama "çıkışta", hareketin motordan entegre 72:1 dişli kutusuna iletilmesinden sonra çözünürlükteki değişikliği hesaplar.
Şimdi, dişli kutusunu toplam dişli oranı değişkenimizde hesaba katmamak için, 288'i devri başına tıklama sayısı olarak kullanalım.
Toplam Dişli Oranı Motor dişli kutusundaki dişli oranını devri başına tıklama sayısına dahil ettiğimizden, bu bölümün ana odak noktası, kol ekleminin dişli oranını hesaplamaktır.
Motor milinin, hareketi 125 dişli bir dişliye ileten 45 dişli bir dişliyi çalıştırdığını varsayalım. Toplam dişli oranı 125T:45T'dir. Bu dişli treninin dişli oranını hesaplamak için, 125'i 45'e bölelim.
125
45
2.777778 45 125 = 2.777778
Kısa Özet Özetlemek gerekirse, Class Bot V2 için aşağıdaki bilgiler doğrudur:
Devrim başına tıklama 288 tıklama
Toplam dişli oranı 2.777778
Kol Encoder'larını Programa Eklemek Başlatma Değişkenlerini Belirleme Bu bilgiyi şimdi elde ettiğimize göre, iki sabit değişken oluşturalım:
COUNTS_PER_MOTOR_REV
GEAR_REDUCTION
COUNTS_PER_MOTOR_REV ve GEAR_REDUCTION değişkenlerini programın başlatma bölümüne ekleyin.

COUNTS_PER_MOTOR_REV ve GEAR_REDUCTION Ekleme COUNTS_PER_MOTOR_REV ve GEAR_REDUCTION değişkenlerimiz, ardından diğer iki değişkeni hesaplamak için kullanılacak bir değere ayarlanacak.
Bu değişkenleri OpMode'umuza ekleyelim.

Başlatma Değişkenlerinin Tam Listesi
Değişkenlere Hesaplamalar Eklemek
Değişkenler oluşturulup yerleştirildikten sonra, ilk değişkenleri ilgili değerlere ayarlamak için
blokları kullanın.

Bu iki değişken tanımlandıktan sonra, bunları kullanarak iki başka değişken hesaplayabiliriz: 125T tahrik dişlisinin dönüşü başına encoder tıklama sayısı ve hareket edilen derece başına tıklama sayısı.
125T dişlisinin devri başına tıklama sayısını (veya COUNTS_PER_GEAR_REV) hesaplamak, drivetrain'imizde COUNTS_PER_WHEEL_REV değişkeni için kullandığımız aynı formüldür, bu yüzden bu değişkeni elde etmek için COUNTS_PER_MOTOR_REV'i GEAR_REDUCTION ile çarpabiliriz.

COUNTS_PER_DEGREE sayısını hesaplamak için COUNTS_PER_GEAR_REV değişkenini 360'a bölelim.

Hep birlikte, değişkenlerimiz aşağıdaki gibi görünecektir:

Tüm Başlatma Değişkenleri Hesaplandı
If/Else İfadesini Ayarlamak Bir tane daha sabit olmayan değişken oluşturmamız gerekiyor, bu değişken pozisyonumuzu temsil edecek. Bu değişken "armPosition" olarak adlandırılacak.
90 derece pozisyonuna gelmek için kolun yaklaşık 45 derece hareket etmesi gerektiğinden, armPosition değerini COUNTS_PER_DEGREE ile 45 çarpacak şekilde ayarlayın.

, 90 derece olmasını belirleyen
bölümüne ekleyin. if/else bloğuna bir blok ekleyin.
If/Else İfadesini
ile Ayarlamak
OpMode'unuzu kaydedin ve test edin!

Last updated