![Jak napisać prosty układ napędowy dla FRC (Java): 12 kroków (ze zdjęciami) Jak napisać prosty układ napędowy dla FRC (Java): 12 kroków (ze zdjęciami)](https://i.howwhatproduce.com/images/001/image-1405-108-j.webp)
Spisu treści:
- Krok 1:
- Krok 2: Utwórz nowy projekt robota
- Krok 3: Utwórz/wypełnij RobotMap
- Krok 4: Usuń przykładowe polecenie i przykładowy podsystem
- Krok 5: Utwórz podsystem DriveTrain
- Krok 6: Utwórz polecenie DriveTrainCommand
- Krok 7: Przejdź do robota
- Krok 8: Wróć do DriveTrainCommand
- Krok 9: Przejdź do DriveTrainSub
- Krok 10: Następnie utworzymy kod OI
- Krok 11: Przejdź do DriveTrainCommand
- Krok 12: Na koniec skompiluj i prześlij kod do robota
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03
![Jak napisać prosty układ napędowy dla FRC (Java) Jak napisać prosty układ napędowy dla FRC (Java)](https://i.howwhatproduce.com/images/001/image-1405-109-j.webp)
To jest samouczek, jak zrobić prosty układ napędowy dla robota FRC. Ten samouczek zakłada, że znasz podstawy java, eclipse i masz już zainstalowane wpilib, a także biblioteki CTRE.
Krok 1:
![Obraz Obraz](https://i.howwhatproduce.com/images/001/image-1405-110-j.webp)
Otwórz zaćmienie
Krok 2: Utwórz nowy projekt robota
![Utwórz nowy projekt robota Utwórz nowy projekt robota](https://i.howwhatproduce.com/images/001/image-1405-111-j.webp)
![Utwórz nowy projekt robota Utwórz nowy projekt robota](https://i.howwhatproduce.com/images/001/image-1405-112-j.webp)
![Utwórz nowy projekt robota Utwórz nowy projekt robota](https://i.howwhatproduce.com/images/001/image-1405-113-j.webp)
![Utwórz nowy projekt robota Utwórz nowy projekt robota](https://i.howwhatproduce.com/images/001/image-1405-114-j.webp)
- Kliknij prawym przyciskiem myszy eksplorator pakietów, kliknij nowy, a następnie inny.
- Przewiń w dół, aż zobaczysz WPILIb Robot Java Development (jeśli go nie widzisz, nie masz zainstalowanych zasobów wpilib).
- Kliknij Projekt Robot Java
- Następnie wpisz nazwę projektu i kliknij typ projektu robota opartego na komendach. (Pakiet powinien być już wypełniony i tak samo ze światem symulacji.)
Krok 3: Utwórz/wypełnij RobotMap
![Utwórz/wypełnij RobotMap Utwórz/wypełnij RobotMap](https://i.howwhatproduce.com/images/001/image-1405-115-j.webp)
![Utwórz/wypełnij RobotMap Utwórz/wypełnij RobotMap](https://i.howwhatproduce.com/images/001/image-1405-116-j.webp)
Utwórz końcowe zmienne, które zawierają liczbę różnych portów talonu
Krok 4: Usuń przykładowe polecenie i przykładowy podsystem
![Usuń przykładowe polecenie i przykładowy podsystem Usuń przykładowe polecenie i przykładowy podsystem](https://i.howwhatproduce.com/images/001/image-1405-117-j.webp)
![Usuń przykładowe polecenie i przykładowy podsystem Usuń przykładowe polecenie i przykładowy podsystem](https://i.howwhatproduce.com/images/001/image-1405-118-j.webp)
Krok 5: Utwórz podsystem DriveTrain
![Utwórz podsystem pociągu napędowego Utwórz podsystem pociągu napędowego](https://i.howwhatproduce.com/images/001/image-1405-119-j.webp)
![Utwórz podsystem pociągu napędowego Utwórz podsystem pociągu napędowego](https://i.howwhatproduce.com/images/001/image-1405-120-j.webp)
![Utwórz podsystem pociągu napędowego Utwórz podsystem pociągu napędowego](https://i.howwhatproduce.com/images/001/image-1405-121-j.webp)
- Utwórz nowego konstruktora w nowo utworzonym podsystemie napędowym. Następnie utwórz obiekty CANTalon, które odpowiadają szponom w układzie napędowym.
- Utwórz RobotDrive o nazwie Drive
- Utwórz wystąpienie tych obiektów w konstruktorze (upewnij się, że używasz wartości dla szponów, które utworzyliśmy na mapie robota). Do napędu robota użyjemy konstruktora, który wykorzystuje 4 sterowniki silnika (RobotDrive(SpeedController frontLeftMotor, SpeedController rearLeftMotor, SpeedController frontRightMotor, SpeedController rearRightMotor))
- Następnie utwórz metodę arcadeDrive() z dwiema zmiennymi wejściowymi: x to przód i tył, a y to prawa i lewo. Wewnątrz wywołasz drive.arcade z wartościami forward i rotate
- Następnie zmień initDefaultCommand() tak, aby zawierała wiersz setDefaultCommand(new DriveTrainCommand());.
- Nie martw się jeszcze o wszystkie błędy.
Krok 6: Utwórz polecenie DriveTrainCommand
![Utwórz polecenie DriveTrainCommand Utwórz polecenie DriveTrainCommand](https://i.howwhatproduce.com/images/001/image-1405-122-j.webp)
![Utwórz polecenie DriveTrainCommand Utwórz polecenie DriveTrainCommand](https://i.howwhatproduce.com/images/001/image-1405-123-j.webp)
![Utwórz polecenie DriveTrainCommand Utwórz polecenie DriveTrainCommand](https://i.howwhatproduce.com/images/001/image-1405-124-j.webp)
![Utwórz polecenie DriveTrainCommand Utwórz polecenie DriveTrainCommand](https://i.howwhatproduce.com/images/001/image-1405-125-j.webp)
- Najpierw zacznij od przejścia do menu, którego użyliśmy do stworzenia podsystemu, a robot sam się projektuje (jest to ostatni raz, kiedy pokażę ten rzeczywisty krok w przyszłych krokach, powiem tylko, aby wykonać polecenie lub wykonać podsystem i założysz, że jest w tym menu.) Kliknij polecenie i wpisz nazwę klasy za pomocą DriveTrainCommand (jeśli zmienisz nazwy tych plików, nie możesz mieć ich identycznych).
- W nowym DriveTrainCommand zobaczysz, że istnieje 6 metod, jedna to konstruktor, a pozostałe 5 to części kodu, które robot wywoła, gdy polecenie zostanie uruchomione. Wiemy, co robi konstruktor, więc wyjaśnijmy Initialize, execute, isFinished, end i interrupted. Initialize jest wywoływana raz przy każdym wywołaniu polecenia, metoda execute jest wywoływana w sposób ciągły aż do zakończenia polecenia, co jest spowodowane przez zakończenie, gdy metoda isFinished zwróci true polecenie przestanie działać, Metoda end jest wywoływana raz po isFinished wywoływana jest metoda, a przerwana jest wywoływana, gdy zasoby poleceń są używane przez inne polecenie i polecenie zostanie zakończone (bez wywoływania metody end).
- Najpierw w DriveTrainCommand w konstruktorze musisz dodać wymaganą linię (requires(Robot. DriveTrainSub)) zauważ, że DriveTrainSub to nie to samo co nazwa podsystemu i jest to celowe.
Krok 7: Przejdź do robota
![Przejdź do robota Przejdź do robota](https://i.howwhatproduce.com/images/001/image-1405-126-j.webp)
![Przejdź do robota Przejdź do robota](https://i.howwhatproduce.com/images/001/image-1405-127-j.webp)
![Przejdź do robota Przejdź do robota](https://i.howwhatproduce.com/images/001/image-1405-128-j.webp)
![Przejdź do robota Przejdź do robota](https://i.howwhatproduce.com/images/001/image-1405-129-j.webp)
- Następnie przejdziemy do klasy Robot
- następnie zmienimy linię (publiczny statyczny końcowy PrzykładPodsystemuPrzykładowyPodsystem = newPrzykładowyPodsystem();) na (publiczny statyczny końcowy PodsystemNapędowyDriveTrainSub = nowyPodsystemNapędowy();) zauważ, że imię po zakończeniu jest takie samo jak nazwa podsystemu i nazwa po nowej zauważ, że DriveTrainSub jest taka sama jak nazwa, którą umieściliśmy w naszym ostatnim kroku i że nie jest taka sama jak nazwa podsystemu (MUSISZ mieć nazwę obiektu (DriveTrainSub), która nie jest taka sama jak podsystem Nazwa).
- Następnie zaimportuj nasz DriveTrainSubSystem.
- Następnie usuniemy wiersz(chooser.addDefault("Default Auto", nowy ExampleCommand());)
- Następnie usuń nieużywane importy.
- Następnie zapisz.
Krok 8: Wróć do DriveTrainCommand
![Wróć do polecenia DriveTrain Wróć do polecenia DriveTrain](https://i.howwhatproduce.com/images/001/image-1405-130-j.webp)
- importuj Robota (drugi na obrazku)
- Następnie Zapisz
Krok 9: Przejdź do DriveTrainSub
![Przejdź do DriveTrainSub Przejdź do DriveTrainSub](https://i.howwhatproduce.com/images/001/image-1405-131-j.webp)
- Importuj polecenie DriveTrain
- Następnie zapisz.
Krok 10: Następnie utworzymy kod OI
![Następnie stworzymy kod OI Następnie stworzymy kod OI](https://i.howwhatproduce.com/images/001/image-1405-132-j.webp)
- Przejdź do OI.
- Utwórz nowy publiczny obiekt joysticka z portem 0.
- I usuń niewykorzystane importy.
- Zapisać.
Krok 11: Przejdź do DriveTrainCommand
![Przejdź do polecenia DriveTrain Przejdź do polecenia DriveTrain](https://i.howwhatproduce.com/images/001/image-1405-133-j.webp)
- Przejdź do polecenia DriveTrain.
- Teraz zrobimy część, która bierze joysticki i używa ich do poruszania robotem. Wewnątrz execute (ponieważ działa on stale) dodaj linię (Robot. DriveTrainSub.arcadeDrive(Robot.oi. Driver.getRawAxis(1), Robot.oi. Driver.getRawAxis(4));) gdzie nazywamy arcadeDrive w naszym podsystem z wartościami Robot.io. Driver.getRawAxis(1), który zwraca wartość joysticka i gdzie 1 jest osią lewej osi y i to samo dla drugiej wartości, z wyjątkiem 4 to prawa oś x. więc oznaczałoby to, że lewy drążek poruszałby się do przodu i do tyłu, a prawy drążek poruszałby się w prawo i w lewo. (jeśli chcesz, możesz wrócić do RobotMap i utworzyć nowe wartości dla osi joysticka, a następnie wywołać je za pomocą RobotMap.(nazwa osi) i nie zapomnij, aby były ostateczne, jeśli zrobisz to w ten sposób.)
- Następnie usuń wszelkie nieużywane importy z całego projektu.
Krok 12: Na koniec skompiluj i prześlij kod do robota
Zalecana:
Prosty zautomatyzowany układ modeli kolejowych - Kontrolowane przez Arduino: 11 kroków (ze zdjęciami)
![Prosty zautomatyzowany układ modeli kolejowych - Kontrolowane przez Arduino: 11 kroków (ze zdjęciami) Prosty zautomatyzowany układ modeli kolejowych - Kontrolowane przez Arduino: 11 kroków (ze zdjęciami)](https://i.howwhatproduce.com/images/005/image-13287-j.webp)
Prosty zautomatyzowany układ modeli kolejowych | Kontrolowane przez Arduino: Mikrokontrolery Arduino są świetnym dodatkiem do modelowania kolei, zwłaszcza jeśli chodzi o automatyzację. Oto prosty i łatwy sposób na rozpoczęcie pracy z automatyką modeli kolejowych za pomocą Arduino. Więc bez zbędnych ceregieli zacznijmy
Jak napisać swój pierwszy program Java: 5 kroków
![Jak napisać swój pierwszy program Java: 5 kroków Jak napisać swój pierwszy program Java: 5 kroków](https://i.howwhatproduce.com/images/005/image-14404-j.webp)
Jak napisać swój pierwszy program w języku Java: Ten samouczek pokazuje, jak krok po kroku napisać swój pierwszy program w języku Java
2019 FRC pisze prosty układ napędowy (Java): 5 kroków
![2019 FRC pisze prosty układ napędowy (Java): 5 kroków 2019 FRC pisze prosty układ napędowy (Java): 5 kroków](https://i.howwhatproduce.com/images/010/image-28572-j.webp)
2019 FRC Pisanie prostego układu napędowego (Java): TA INSTRUKCJA JEST NIEAKTUALNA! Proszę miej oko na moje kolejne instrukcje dotyczące bieżącego programowania 2019. Chociaż jest nieaktualny, nadal można się o nim dowiedzieć, jak na przykład tworzyć klasy i pisać kod
Jak napisać instrukcję za pomocą instrukcji: 14 kroków
![Jak napisać instrukcję za pomocą instrukcji: 14 kroków Jak napisać instrukcję za pomocą instrukcji: 14 kroków](https://i.howwhatproduce.com/images/006/image-17036-14-j.webp)
Jak napisać instrukcję za pomocą instrukcji: Ten dokument pokazuje, jak używać instrukcji do pisania instrukcji
Jak napisać brutalną siłę dla liczb (Visual BASIC 2008 Express): 5 kroków
![Jak napisać brutalną siłę dla liczb (Visual BASIC 2008 Express): 5 kroków Jak napisać brutalną siłę dla liczb (Visual BASIC 2008 Express): 5 kroków](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10963070-how-to-write-a-brute-force-for-numbers-visual-basic-2008-express-5-steps-j.webp)
Jak napisać Brute Force dla liczb (Visual BASIC 2008 Express): W tej instrukcji pokażę, jak napisać tzw. w Visual BASIC 2008 Express, który można pobrać tutaj --> http://www.microsoft.com/eXPress/download/Siła siłowa to „pękanie”; program, który krak