Indholdsfortegnelse:

Sådan skriver du en simpel drivlinje til FRC (Java): 12 trin (med billeder)
Sådan skriver du en simpel drivlinje til FRC (Java): 12 trin (med billeder)

Video: Sådan skriver du en simpel drivlinje til FRC (Java): 12 trin (med billeder)

Video: Sådan skriver du en simpel drivlinje til FRC (Java): 12 trin (med billeder)
Video: Sådan laver du et opslag med tekst, billeder, video og links 2024, Juli
Anonim
Sådan skriver du en simpel drivlinje til FRC (Java)
Sådan skriver du en simpel drivlinje til FRC (Java)

Dette er en vejledning i, hvordan du laver et simpelt drivværk til en FRC -robot. Denne vejledning forudsætter, at du kender det grundlæggende i java, eclipse og allerede har wpilib installeret, samt CTRE -biblioteker.

Trin 1:

Billede
Billede

Åben Eclipse

Trin 2: Opret et nyt robotprojekt

Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
Opret et nyt robotprojekt
  1. Højreklik på pakkeudforskeren, klik på ny og derefter på anden.
  2. Rul ned, indtil du ser WPILib Robot Java Development (hvis du ikke kan se det, har du ikke installeret wpilib -ressourcerne.)
  3. Klik på Robot Java Project
  4. Udfyld derefter projektnavnet, og klik på den kommandobaserede robotprojekttype. (Pakken skal allerede udfyldes og samme med simuleringsverdenen.)

Trin 3: Opret/udfyld RobotMap

Opret/udfyld RobotMap
Opret/udfyld RobotMap
Opret/udfyld RobotMap
Opret/udfyld RobotMap

Opret endelige variabler, der indeholder antallet af de forskellige talonporte

Trin 4: Slet eksempelkommando og eksempelundersystem

Slet eksempelkommando og eksempelundersystem
Slet eksempelkommando og eksempelundersystem
Slet eksempelkommando og eksempelundersystem
Slet eksempelkommando og eksempelundersystem

Trin 5: Opret DriveTrainSubSystem

Opret DriveTrainSubSystem
Opret DriveTrainSubSystem
Opret DriveTrainSubSystem
Opret DriveTrainSubSystem
Opret DriveTrainSubSystem
Opret DriveTrainSubSystem
  1. Opret en ny konstruktør i det nyoprettede drivsystemdelsystem. Opret derefter CANTalon -objekter, der svarer til talonerne på drivlinjen.
  2. Opret en RobotDrive kaldet Drive
  3. Instantier disse objekter i konstruktøren (sørg for at bruge værdierne for de taloner, som vi har oprettet i robotkortet). Til Robot Drive vil vi bruge konstruktøren, der bruger 4 motorstyringer (RobotDrive (SpeedController frontLeftMotor, SpeedController rearLeftMotor, SpeedController frontRightMotor, SpeedController rearRightMotor))
  4. Opret derefter en arcadeDrive () -metode med to inputvariabler, hvor x er frem og tilbage og y er til højre og venstre. Indenfor vil du kalde drive.arcade med værdierne fremad og rotere
  5. Skift derefter initDefaultCommand () for at indeholde linjen setDefaultCommand (ny DriveTrainCommand ());.
  6. Bare rolig om alle fejlene endnu.

Trin 6: Opret DriveTrainCommand

Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
Opret DriveTrainCommand
  1. Start først med at gå til menuen, som vi har brugt til at oprette delsystemet og robotten projektere sig selv (det er sidste gang, jeg vil vise dette faktiske trin i de fremtidige trin, jeg vil sige bare for at lave en kommando eller lave en undersystem, og du vil antage, at det er i denne menu.) Klik på kommando, og udfyld klassens navn med DriveTrainCommand (hvis du ændrer navnene på disse filer, kan du ikke have dem til at være de samme).
  2. I det nye DriveTrainCommand vil du se, at der er 6 metoder, den ene er konstruktøren og de andre 5 er dele af koden, som robotten kalder, når kommandoen kører. Vi ved, hvad konstruktøren gør, så lad os forklare Initialiser, udfør, er færdig, afslut og afbrudt. Initialiser kaldes en gang hver gang kommandoen kaldes, kaldes udførelsesmetoden kontinuerligt, indtil kommandoen slutter, hvilket er forårsaget af, at den er færdig, når isFinished -metoden returnerer sand, kommandoen stopper med at køre. Afslutningsmetoden kaldes en gang efter isFinished metode kaldes, og afbrudt kaldes, når kommandoressourcerne bruges af en anden kommando, og kommandoen slutter (uden at kalde slutmetoden).
  3. Først i DriveTrainCommand i konstruktøren skal du tilføje den nødvendige linje (kræver (Robot. DriveTrainSub)), at DriveTrainSub ikke er det samme som undersystemets navn, og det er med vilje.

Trin 7: Gå til Robot

Spring til Robot
Spring til Robot
Spring til Robot
Spring til Robot
Spring til Robot
Spring til Robot
Spring til Robot
Spring til Robot
  1. Dernæst skal vi springe til robotklassen
  2. så vil vi ændre linjen (public static final ExampleSubsystem exampleSubsystem = new ExampleSubsystem ();) til (public static final DriveTrainSubsystem DriveTrainSub = new DriveTrainSubsystem ();) læg mærke til, at fornavnet efter final er det samme som undersystemets navn og navn efter nyt læg også mærke til, at DriveTrainSub er det samme som det navn, vi satte i vores sidste trin, og at det ikke er det samme som undersystemets navn (Du SKAL have et objektnavn (DriveTrainSub), der ikke er det samme som delsystemet navn).
  3. Importer derefter vores DriveTrainSubSystem.
  4. Dernæst fjerner vi linjen (chooser.addDefault ("Standard Auto", nyt eksempelkommando ());)
  5. Fjern derefter den ubrugte import.
  6. Gem derefter.

Trin 8: Gå tilbage til DriveTrainCommand

Gå tilbage til DriveTrainCommand
Gå tilbage til DriveTrainCommand
  1. import Robot (den anden i billedet)
  2. Derefter Gem

Trin 9: Gå til DriveTrainSub

Gå til DriveTrainSub
Gå til DriveTrainSub
  1. Importer DriveTrainCommand
  2. Gem derefter.

Trin 10: Dernæst opretter vi OI -koden

Dernæst opretter vi OI -koden
Dernæst opretter vi OI -koden
  1. Gå til OI.
  2. Opret et nyt offentligt joystickobjekt med porten 0.
  3. Og fjern den ubrugte import.
  4. Gemme.

Trin 11: Gå til DriveTrainCommand

Gå til DriveTrainCommand
Gå til DriveTrainCommand
  1. Gå til DriveTrainCommand.
  2. Nu gør vi den del, der tager joysticks og anvender dem til at flytte robotten. Inde i eksekveringen (fordi den kører konstant) tilføj linjen (Robot. DriveTrainSub.arcadeDrive (Robot.oi. Driver.getRawAxis (1), Robot.oi. Driver.getRawAxis (4));) hvor vi kalder arcadeDrive i vores undersystem med værdierne Robot.io. Driver.getRawAxis (1), som returnerer joystickets værdi, og hvor 1 er aksen for den venstre y -akse og den samme for den anden værdi undtagen 4 er den højre x -akse. så dette ville betyde, at venstre pind ville gå frem og tilbage og den højre pind ville gå til højre og venstre. (hvis du ville, kunne du gå tilbage til RobotMap og oprette nye værdier for joystickaksen, derefter kalde dem med RobotMap. (navn på akse) og glem ikke at gøre dem endelige, hvis du gør det på denne måde.)
  3. Fjern derefter enhver ubrugt import fra hele projektet.

Trin 12: Kompilér og upload koden til robotten

Anbefalede: