Kazalo:

Kako napisati preprost pogonski sklop za FRC (Java): 12 korakov (s slikami)
Kako napisati preprost pogonski sklop za FRC (Java): 12 korakov (s slikami)

Video: Kako napisati preprost pogonski sklop za FRC (Java): 12 korakov (s slikami)

Video: Kako napisati preprost pogonski sklop za FRC (Java): 12 korakov (s slikami)
Video: Архитектура ЭВМ | Основы Операционных Систем | Ассемблер | 01 2024, November
Anonim
Kako napisati preprost pogonski sklop za FRC (Java)
Kako napisati preprost pogonski sklop za FRC (Java)

To je vadnica o tem, kako narediti preprost pogonski sklop za robota FRC. Ta vadnica predvideva, da veste, da so osnove jave, eclipse in že nameščene wpilib, pa tudi knjižnice CTRE.

Korak 1:

Slika
Slika

Odprite Eclipse

2. korak: Ustvarite nov projekt robota

Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
Ustvarite nov projekt robota
  1. Z desno miškino tipko kliknite raziskovalca paketov, kliknite novo, nato pa drugo.
  2. Pomaknite se navzdol, dokler ne vidite WPILib Robot Java Development (če ga ne vidite, nimate nameščenih virov wpilib.)
  3. Kliknite Robot Java Project
  4. Nato vnesite ime projekta in kliknite vrsto projekta na osnovi ukazov (paket mora biti že izpolnjen in enako s svetom simulacije.)

3. korak: Ustvarite/izpolnite RobotMap

Ustvari/izpolni RobotMap
Ustvari/izpolni RobotMap
Ustvari/izpolni RobotMap
Ustvari/izpolni RobotMap

Ustvarite končne spremenljivke, ki vsebujejo število različnih vmesnih vrat

4. korak: Izbrišite ukaz Primer in primer podsistema

Izbriši primer ukaza in primer podsistema
Izbriši primer ukaza in primer podsistema
Izbriši primer ukaza in primer podsistema
Izbriši primer ukaza in primer podsistema

5. korak: Ustvarite DriveTrainSubSystem

Ustvarite DriveTrainSubSystem
Ustvarite DriveTrainSubSystem
Ustvarite DriveTrainSubSystem
Ustvarite DriveTrainSubSystem
Ustvarite DriveTrainSubSystem
Ustvarite DriveTrainSubSystem
  1. Ustvarite nov konstruktor v na novo ustvarjenem podsistemu pogonskega sklopa. Nato ustvarite predmete CANTalon, ki ustrezajo talonom na pogonskem sklopu.
  2. Ustvarite RobotDrive, imenovan Drive
  3. Ustvarite te objekte v konstruktorju (ne pozabite uporabiti vrednosti talonov, ki smo jih ustvarili na zemljevidu robota). Za Robotski pogon bomo uporabili konstruktor, ki uporablja 4 krmilnike motorja (RobotDrive (SpeedController frontLeftMotor, SpeedController rearLeftMotor, SpeedController frontRightMotor, SpeedController rearRightMotor))
  4. Nato ustvarite metodo arcadeDrive () z dvema vhodnima spremenljivkama x je naprej in nazaj, y pa desno in levo. V notranjosti boste poklicali drive.arcade z vrednostmi naprej in vrtenje
  5. Nato spremenite initDefaultCommand () tako, da vsebuje vrstico setDefaultCommand (nov DriveTrainCommand ());.
  6. Ne skrbite še za vse napake.

6. korak: Ustvarite DriveTrainCommand

Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
Ustvarite DriveTrainCommand
  1. Najprej začnite z menijem, ki smo ga uporabili za ustvarjanje podsistema, in robot se je sam projektiral (to je zadnjič, da bom ta dejanski korak pokazal v prihodnjih korakih, ki jih bom povedal samo, da naredim ukaz ali naredim podsistem in domnevali boste, da je v tem meniju.) Kliknite ukaz in ime razreda vnesite z DriveTrainCommand (če spremenite imena teh datotek, ne morete imeti enakih).
  2. V novem DriveTrainCommandu boste videli, da obstaja 6 metod, ena je konstruktor, ostalih 5 pa so deli kode, ki jo bo robot poklical, ko se ukaz izvaja. Vemo, kaj konstruktor naredi, zato lahko razložimo Inicializiraj, izvede, dokonča, konča in prekine. Initialize se pokliče enkrat ob vsakem klicu ukaza, metoda execute se kliče neprekinjeno, dokler se ukaz ne konča, kar je posledica dejstva, da je dokončano, ko metoda isFinished vrne true, ukaz se bo prenehal izvajati, metoda End se pokliče enkrat po isFinished se pokliče metoda in prekinjena se pokliče, ko vire ukazov uporabi drug ukaz in se ukaz konča (brez klicanja metode end).
  3. Najprej v orodju DriveTrainCommand v konstruktorju morate dodati vrstico require (zahteva (Robot. DriveTrainSub)) in opazite, da DriveTrainSub ni enak imenu podsistema in da je namenoma.

7. korak: Skočite na robota

Skoči na robota
Skoči na robota
Skoči na robota
Skoči na robota
Skoči na robota
Skoči na robota
Skoči na robota
Skoči na robota
  1. Nato bomo skočili v razred robotov
  2. potem bomo vrstico (javni statični končni primerSubsistema exampleSubsystem = new ExampleSubsystem ();) spremenili v (javni statični končni DriveTrainSubsystem DriveTrainSub = nov DriveTrainSubsystem ();) opazite, da je ime po finalu enako imenu podsistema in ime po novem opazite tudi, da je DriveTrainSub enako imenu, ki smo ga vnesli v zadnjem koraku, in da ni isto kot ime podsistema (MORATE imeti ime predmeta (DriveTrainSub), ki ni isto kot podsistem ime).
  3. Nato uvozite naš DriveTrainSubSystem.
  4. Nato bomo odstranili vrstico (Chooseser.addDefault ("Default Auto", nov ExampleCommand ());)
  5. Nato odstranite neuporabljen uvoz.
  6. Nato shranite.

8. korak: Vrnite se na DriveTrainCommand

Vrnite se na DriveTrainCommand
Vrnite se na DriveTrainCommand
  1. uvozni robot (drugi na sliki)
  2. Nato shrani

9. korak: Pojdite na DriveTrainSub

Pojdite na DriveTrainSub
Pojdite na DriveTrainSub
  1. Uvozi DriveTrainCommand
  2. Nato shranite.

10. korak: Nato bomo ustvarili kodo OI

Nato bomo ustvarili kodo OI
Nato bomo ustvarili kodo OI
  1. Pojdite na OI.
  2. Ustvarite nov javni objekt krmilne palice z vrati 0.
  3. In odstranite neuporabljen uvoz.
  4. Shrani.

11. korak: Pojdite na DriveTrainCommand

Pojdite na DriveTrainCommand
Pojdite na DriveTrainCommand
  1. Pojdite na DriveTrainCommand.
  2. Zdaj bomo opravili del, ki bo vzel igralne palice in jih uporabil za premikanje robota. Znotraj izvršitve (ker deluje neprestano) dodajte vrstico (Robot. DriveTrainSub.arcadeDrive (Robot.oi. Driver.getRawAxis (1), Robot.oi. Driver.getRawAxis (4));), kjer v svojem imenujemo arcadeDrive podsistem z vrednostmi Robot.io. Driver.getRawAxis (1), ki vrne vrednost krmilne palice in kjer je 1 os leve osi y in enaka za drugo vrednost, razen 4 je desna os x. torej bi to pomenilo, da bi leva palica šla naprej in nazaj, desna pa desno in levo. (če želite, se lahko vrnete na RobotMap in ustvarite nove vrednosti za os krmilne palice, nato jih pokličite z RobotMap. (ime osi) in ne pozabite jih dokončati, če to storite na ta način.)
  3. Nato odstranite neuporabljeni uvoz iz celotnega projekta.

12. korak: Končno sestavite in naložite kodo v robota

Priporočena: