Bir Komutu Test Etmek İçin Shuffleboard Kullanma

Komutlar, Shuffleboard/SmartDashboard’a komutu tetiklemek için bir düğme eklenerek kolayca test edilir. Bu şekilde, robot programının geri kalanıyla hiçbir entegrasyon gerekli değildir ve komutlar bağımsız olarak kolayca test edilebilir. Bu, komutları doğrulamanın en kolay yoludur, çünkü programınızdaki tek bir kod satırı ile, Shuffleboard’da komutu çalıştıracak bir düğme oluşturulabilir. Bu düğmeler, gelecekte alt sistemleri ve komut işlemlerini doğrulamak için yerinde bırakılabilir.

Bu, her biri komut yazan birden çok programcıyı barındırma avantajına sahiptir. Kod ana robot projesinde kontrol edildiğinde, komutlar ayrı ayrı test edilebilir.

Shuffleboard’da Düğme Oluşturma

To create a button in Shuffleboard ensure the "Button on SmartDashboard" checkbox is checked.

Düğme, komutun bir örneğini robot programından kontrol paneline koyarak SmartDashboard’da oluşturulur. Bu o kadar yaygın bir işlemdir ki, RobotBuilder’a bir onay kutusu olarak eklenmiştir. Komutlarınızı yazarken, kutunun işaretli olduğundan ve düğmelerin sizin için otomatik olarak oluşturulduğundan emin olun.

Düğmelerin Çalıştırılması

Each of the created buttons has its own widget in Shuffleboard.

Düğmeler otomatik olarak oluşturulacak ve kontrol paneli ekranında görünecektir. Shuffleboard’daki düğmeleri yeniden düzenleyebilirsiniz. Bu örnekte, her biri test için ilişkili bir düğme içeren birkaç komut vardır. Komutlar düğmesine basmak komutu çalıştıracaktır. Bir kez basıldığında, tekrar basmak komutu keserek Interrupted() yönteminin çağrılmasına neden olur.

Manuel Olarak Komut Ekleme

SmartDashboard.putData("Autonomous Command", new AutonomousCommand());
SmartDashboard.putData("Open Claw", new OpenClaw(m_claw);
SmartDashboard.putData("Close Claw", new CloseClaw(m_claw));
SmartDashboard::PutData("Autonomous Command", new AutonomousCommand());
SmartDashboard::PutData("Open Claw", new OpenClaw(&m_claw));
SmartDashboard::PutData("Close Claw", new CloseClaw(&m_claw));

Komutlar, kodu kendiniz yazarak Shuffleboard’a manuel olarak eklenebilir. Bu, Shuffleboard’daki düğmeyle ilişkilendirilmesi gereken adla birlikte komutun örneklerini PutData yöntemine ileterek yapılır. Bu örnekler, düğmeye her basıldığında planlanır. Sonuç, RobotBuilder’ın oluşturduğu kodla tamamen aynıdır, ancak RobotBuilder’daki onay kutusuna tıklamak tüm kodu elle yazmaktan çok daha kolaydır.