Mündəricat:

FRC (Java) üçün sadə bir ötürücü necə yazılır: 12 addım (şəkillərlə)
FRC (Java) üçün sadə bir ötürücü necə yazılır: 12 addım (şəkillərlə)

Video: FRC (Java) üçün sadə bir ötürücü necə yazılır: 12 addım (şəkillərlə)

Video: FRC (Java) üçün sadə bir ötürücü necə yazılır: 12 addım (şəkillərlə)
Video: FRC 0 to Autonomous: #1 Arcade drive + auto-line 2024, Noyabr
Anonim
FRC (Java) üçün sadə bir ötürücü necə yazılır
FRC (Java) üçün sadə bir ötürücü necə yazılır

Bu, FRC robotu üçün sadə bir ötürücünün necə hazırlanacağına dair bir dərsdir. Bu təlimat, java, eclipse və wpilibin əsaslarını, həmçinin CTRE kitabxanalarını bildiyinizi bildiyinizi güman edir.

Addım 1:

Şəkil
Şəkil

Eclipse'i açın

Addım 2: Yeni Robot Layihəsi yaradın

Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
Yeni Robot Layihəsi yaradın
  1. Paket araşdırıcısına sağ vurun, yeni, sonra digərini vurun.
  2. WPILib Robot Java Development proqramını görənə qədər aşağıya fırladın (görmürsünüzsə wpilib mənbələri quraşdırılmamışdır.)
  3. Robot Java Layihəsinə vurun
  4. Sonra layihənin adını doldurun və əmr əsaslı robot layihə növünü basın. (Paket artıq simulyasiya dünyası ilə doldurulmalı və eyni olmalıdır.)

Addım 3: RobotMap yaradın/doldurun

RobotMap yaradın/doldurun
RobotMap yaradın/doldurun
RobotMap yaradın/doldurun
RobotMap yaradın/doldurun

Müxtəlif talon limanlarının sayını ehtiva edən son dəyişənlər yaradın

Addım 4: Nümunə Əmri və Nümunə Alt Sistemini silin

Nümunə Əmri və Nümunə Alt Sistemini silin
Nümunə Əmri və Nümunə Alt Sistemini silin
Nümunə Əmri və Nümunə Alt Sistemini silin
Nümunə Əmri və Nümunə Alt Sistemini silin

Addım 5: DriveTrainSubSystem yaradın

DriveTrainSubSystem yaradın
DriveTrainSubSystem yaradın
DriveTrainSubSystem yaradın
DriveTrainSubSystem yaradın
DriveTrainSubSystem yaradın
DriveTrainSubSystem yaradın
  1. Yeni yaradılan ötürücü alt sistemində yeni bir konstruktor yaradın. Ardından, ötürmə sistemindəki çubuqlara uyğun CANTalon obyektləri yaradın.
  2. Drive adlı bir RobotDrive yaradın
  3. Bu obyektləri konstruktorda tətbiq edin (robot xəritəsində yaratdığımız baldırlar üçün dəyərlərdən istifadə etdiyinizə əmin olun). Robot Sürücü üçün 4 Motor İdarəçiliyindən istifadə edən konstruktordan istifadə edəcəyik (RobotDrive (SpeedController frontLeftMotor, SpeedController rearLeftMotor, SpeedController frontRightMotor, SpeedController rearRightMotor))
  4. Sonra iki giriş dəyişəninə malik olan bir arcadeDrive () metodu yaradın: x irəli və geriyə, y isə sağa və sola. İçəridə irəli və dönmə dəyərləri ilə drive.arcade çağıracaqsınız
  5. Sonra initDefaultCommand () sətrini setDefaultCommand (yeni DriveTrainCommand ()) daxil etmək üçün dəyişdirin;.
  6. Hələ bütün səhvlərdən narahat olmayın.

Addım 6: DriveTrainCommand yaradın

DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
DriveTrainCommand yaradın
  1. Əvvəlcə alt sistemi yaratmaq üçün istifadə etdiyimiz menyuya keçərək robotun öz layihəsini hazırlayın (bu əmr vermək və ya bir əmr vermək üçün deyəcəyim gələcək addımlarda bu həqiqi addımı sonuncu dəfə göstərəcəyəm. alt sistem və bunun bu menyuda olduğunu zənn edəcəksiniz.) Komuta basın və DriveTrainCommand ilə sinif adını doldurun (bu faylın adlarını dəyişdirsəniz eyni ola bilməz).
  2. Yeni DriveTrainCommand -da görürsən ki, biri konstruktor, digəri 5 komanda işləyərkən robotun çağıracağı kodun 6 hissəsidir. Konstruktorun nə etdiyini bilirik, Başlatmağı, icra etməyi, bitməsini, bitməsini və kəsilməsini izah etməyə imkan verir. Hər dəfə əmr çağırıldıqda Initialize çağırılır, əmr bitənə qədər icra üsulu davamlı olaraq çağırılır, bu da isFinished metodu doğru qayıtdıqda əmr işləməyi dayandıracaq, son metod isFinished -dən sonra bir dəfə çağırılır. əmr mənbələri başqa bir komanda tərəfindən istifadə edildikdə və əmr sona çatdıqda (son metodu çağırmadan) kəsilən zaman çağırılır.
  3. Əvvəlcə konstruktorda DriveTrainCommand -da DriveTrainSubun alt sistem adı ilə eyni olmadığını və məqsədli olduğunu bildirərək tələb olunan xətti (tələb edir (Robot. DriveTrainSub) tələb edir) əlavə etməlisiniz.

Addım 7: Robota keçin

Robota keçin
Robota keçin
Robota keçin
Robota keçin
Robota keçin
Robota keçin
Robota keçin
Robota keçin
  1. Sonra Robot sinifinə keçəcəyik
  2. sonra xətti dəyişəcəyik (ümumi statik son ExampleSubsystem exampleSubsystem = new ExampleSubsystem ();) (public static final DriveTrainSubsystem DriveTrainSub = new DriveTrainSubsystem ();) to final is the last name is the same as the subsystem name and the Yenidən sonra adı, DriveTrainSub -un son addımımızda qoyduğumuz adla eyni olduğunu və alt sistem adı ilə eyni olmadığını (Alt sistemlə eyni olmayan bir obyekt adına (DriveTrainSub) sahib olmalısınız) adı).
  3. Sonra DriveTrainSubSystemimizi idxal edin.
  4. Sonra xətti siləcəyik (chooser.addDefault ("Varsayılan Avtomatik", yeni ExampleCommand ());)
  5. Sonra istifadə olunmamış idxalı çıxarın.
  6. Sonra qənaət edin.

Addım 8: DriveTrainCommand -a qayıdın

DriveTrainCommand -a qayıdın
DriveTrainCommand -a qayıdın
  1. Robot idxal edin (şəkildəki ikincisi)
  2. Sonra Saxla

Addım 9: DriveTrainSub -a gedin

DriveTrainSub -a gedin
DriveTrainSub -a gedin
  1. DriveTrainCommand idxal edin
  2. Sonra qənaət edin.

Addım 10: Sonra OI Kodunu Yaratacağıq

Sonra OI Kodunu Yaradacağıq
Sonra OI Kodunu Yaradacağıq
  1. OI -ə gedin.
  2. 0 portu ilə yeni bir ictimai joystick obyekti yaradın.
  3. Və istifadə olunmamış idxalı çıxarın.
  4. Yadda saxla.

Addım 11: DriveTrainCommand -a gedin

DriveTrainCommand -a gedin
DriveTrainCommand -a gedin
  1. DriveTrainCommand -a gedin.
  2. İndi joystickləri götürüb robotu hərəkət etdirmək üçün tətbiq edən hissəni edəcəyik. İcra daxilində (daim işlədiyi üçün) xətti əlavə edin (Robot. DriveTrainSub.arcadeDrive (Robot.oi. Driver.getRawAxis (1), Robot.oi. Driver.getRawAxis (4));) arcadeDrive adlandırdığımız yerdə joystick dəyərini qaytaran Robot.io. Driver.getRawAxis (1) dəyərləri olan alt sistem və burada 1 sol y oxunun oxudur və 4 istisna olmaqla ikinci dəyər üçün eyni sağ oxdur. bu, sol çubuğun irəli və geriyə, sağ çubuğun isə sağa və sola getməsi deməkdir. (İstəsəniz, RobotMap -a qayıda və joystick oxu üçün yeni dəyərlər yarada bilərsiniz. Onları RobotMap ilə çağırın.
  3. Sonra bütün layihədən istifadə edilməyən idxalları silin.

Addım 12: Nəhayət Kodu tərtib edin və Robota Yükləyin

Tövsiyə: