MAXSwerve'ü Programlama
MAXSwerve Kod Şablonları
Aşağıda, REV MAXSwerve Modülleri ile oluşturulmuş bir FRC swerve şasesini kontrol edecek şablon projeler için iki GitHub Deposu bulunmaktadır.
Bunun, her biri iki SPARK MAX, sürüş motoru olarak bir NEO, dönüş motoru olarak bir NEO 550 ve absolute turning encoder olarak bir REV Through Bore Encoder ile yapılandırılmış dört MAXSwerve Modülünden oluşan bir şase ile kullanılmak üzere tasarlandığını unutmayın.
Çevirme Hızı Parametrelerini Ayarlama
Hem Java hem de C++ MAXSwerve Şablonlarının Sabitleri dosyasında, takımınızın robotunuzun Dönüş Hızı ihtiyaçları için ayarlayabileceği üç değişken vardır. Varsayılan değerleri belirlemek için bir test MAXSwerve Şasesini yaklaşık 140 lb'ye ( Bumperlar ve batarya dahil) yükledik ve MAXSwerve Tekerleklerinin en uzun süre dayanmasını sağlayan değerleri bulana kadar parametreleri ayarladık.
DirectionSlewRate
DirectionSlewRate, MAXSwerve Tekerlek arızalarını azaltmak için en önemli parametredir. Düşük değerler robotun yön değiştirme oranını sınırlar. Bu, tekerleklere yıkıcı yan yükler bindiren yüksek hızlı J dönüşlerini önler. Düşük hızlarda dönüş hızından daha hızlı yön değişikliklerine izin verildiğini unutmayın. Buradaki değer %100 doğrusal hızdaki dönüş oranıdır.
MagnitudeSlewRate
Doğrusal yöndeki MagnitudeSlewRate veya ivme. Genel olarak, yön değiştirme hızına yapılan ayarlamalar burada da uygulanmalıdır (yani her ikisi de artırılmalı veya her ikisi de azaltılmalıdır).
RotationalSlewRate
RotationalSlewRate tekerlek aşınmasına önemli bir katkıda bulunmaz ancak diğer hareketleri yumuşatmaya yardımcı olabilir. Robotun savunma veya belirli bir mekanizma tarzı nedeniyle çok fazla dönmesi gerekiyorsa, bunu azaltmak lastik sırtı aşınmasını azaltmaya yardımcı olabilir.
// Driving Parameters - Note that these are not the maximum capable speeds of
// the robot, rather the allowed maximum speeds
public static final double kMaxSpeedMetersPerSecond = 4.8;
public static final double kMaxAngularSpeed = 2 * Math.PI; // radians per second
public static final double kDirectionSlewRate = 1.2; // radians per second
public static final double kMagnitudeSlewRate = 1.8; // percent per second (1 = 100%)
public static final double kRotationalSlewRate = 2.0; // percent per second (1 = 100%)// Driving Parameters - Note that these are not the maximum capable speeds of
// the robot, rather the allowed maximum speeds
constexpr units::meters_per_second_t kMaxSpeed = 4.8_mps;
constexpr units::radians_per_second_t kMaxAngularSpeed{2 * std::numbers::pi};
constexpr double kDirectionSlewRate = 1.2; // radians per second
constexpr double kMagnitudeSlewRate = 1.8; // percent per second (1 = 100%)
constexpr double kRotationalSlewRate = 2.0; // percent per second (1 = 100%)MAXSwerve Şablon Değişiklik Listesi:
V2023.1
Aşırı yüklerin erken tekerlek arızasına neden olmasını önlemek için yapılandırılabilir bir hız sınırlama sistemi eklendi.
Last updated
Was this helpful?