Оглавление:
- Шаг 1:
- Шаг 2: Создайте новый проект робота
- Шаг 3: Создайте / заполните RobotMap
- Шаг 4: Удалить пример команды и пример подсистемы
- Шаг 5. Создайте DriveTrainSubSubSystem
- Шаг 6. Создайте команду DriveTrainCommand
- Шаг 7. Перейти к роботу
- Шаг 8: вернитесь к DriveTrainCommand
- Шаг 9: перейдите в DriveTrainSub
- Шаг 10: Далее мы создадим код OI
- Шаг 11: перейдите в DriveTrainCommand
- Шаг 12: Наконец, скомпилируйте и загрузите код в робота
Видео: Как написать простую трансмиссию для FRC (Java): 12 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:54
Это руководство о том, как сделать простую трансмиссию для робота FRC. В этом руководстве предполагается, что вы знаете основы java, eclipse и уже установили wpilib, а также библиотеки CTRE.
Шаг 1:
Откройте Eclipse
Шаг 2: Создайте новый проект робота
- Щелкните правой кнопкой мыши проводник пакетов, выберите «Создать», затем «Другой».
- Прокрутите вниз, пока не увидите WPILib Robot Java Development (если вы его не видите, у вас не установлены ресурсы wpilib).
- Нажмите на Robot Java Project.
- Затем введите имя проекта и щелкните тип проекта робота на основе команд (пакет уже должен быть заполнен, как и мир моделирования).
Шаг 3: Создайте / заполните RobotMap
Создайте конечные переменные, которые содержат количество различных портов талона
Шаг 4: Удалить пример команды и пример подсистемы
Шаг 5. Создайте DriveTrainSubSubSystem
- Создайте новый конструктор во вновь созданной подсистеме трансмиссии. Затем создайте объекты CANTalon, соответствующие когтям трансмиссии.
- Создайте RobotDrive под названием Drive
- Создайте экземпляры этих объектов в конструкторе (обязательно используйте значения когтей, которые мы создали на карте робота). Для Robot Drive мы будем использовать конструктор, который использует 4 контроллера мотора (RobotDrive (SpeedController frontLeftMotor, SpeedController rearLeftMotor, SpeedController frontRightMotor, SpeedController rearRightMotor))
- Затем создайте метод arcadeDrive () с двумя входными переменными: x - вперед и назад, а y - вправо и влево. Внутри вы вызовете drive.arcade со значениями forward и rotate.
- Затем измените initDefaultCommand (), чтобы он содержал строку setDefaultCommand (new DriveTrainCommand ());.
- Пока не беспокойтесь обо всех ошибках.
Шаг 6. Создайте команду DriveTrainCommand
- Сначала начните с перехода в меню, которое мы использовали для создания подсистемы, и робот спроецирует себя (это последний раз, когда я покажу этот фактический шаг в следующих шагах, я скажу, просто чтобы сделать команду или сделать подсистемы, и вы предположите, что она находится в этом меню.) Щелкните команду и введите имя класса с помощью DriveTrainCommand (если вы действительно измените имена этих файлов, они не могут быть одинаковыми).
- В новой команде DriveTrainCommand вы увидите 6 методов, один из которых является конструктором, а другие 5 являются частями кода, который робот будет вызывать при выполнении команды. Мы знаем, что делает конструктор, поэтому давайте объясним Initialize, execute, isFinished, end и interrupted. Инициализация вызывается один раз при каждом вызове команды, метод execute вызывается непрерывно, пока команда не завершится, что вызвано завершением, когда метод isFinished возвращает true, команда перестанет выполняться, метод завершения вызывается один раз после isFinished вызывается метод, а прерванный вызывается, когда ресурсы команды используются другой командой, и команда завершится (без вызова метода завершения).
- Сначала в DriveTrainCommand в конструкторе вам нужно добавить строку required (требует (Robot. DriveTrainSub)), обратите внимание, что DriveTrainSub не совпадает с именем подсистемы, и это сделано специально.
Шаг 7. Перейти к роботу
- Далее мы перейдем к классу роботов.
- то мы собираемся изменить строку (public static final ExampleSubsystem exampleSubsystem = new ExampleSubsystem ();) на (public static final DriveTrainSubsystem DriveTrainSub = new DriveTrainSubsystem ();) обратите внимание, что первое имя после final совпадает с именем подсистемы и имя после нового также обратите внимание, что DriveTrainSub совпадает с именем, которое мы указали на нашем последнем шаге, и что оно не совпадает с именем подсистемы (у вас ДОЛЖНО быть имя объекта (DriveTrainSub), которое не совпадает с именем подсистемы имя).
- Затем импортируйте нашу DriveTrainSubSystem.
- Затем мы удалим строку (chooser.addDefault ("Default Auto", new ExampleCommand ());)
- Затем удалите неиспользованный импорт.
- Тогда сохраните.
Шаг 8: вернитесь к DriveTrainCommand
- импортный робот (второй на изображении)
- Затем сохраните
Шаг 9: перейдите в DriveTrainSub
- Импортировать DriveTrainCommand
- Тогда сохраните.
Шаг 10: Далее мы создадим код OI
- Идите к OI.
- Создайте новый общедоступный объект джойстика с портом 0.
- И удалите неиспользованный импорт.
- Сохранить.
Шаг 11: перейдите в DriveTrainCommand
- Перейдите в DriveTrainCommand.
- Теперь мы займемся той частью, которая возьмем джойстики и применим их для перемещения робота. Внутри выполнения (потому что он выполняется постоянно) добавьте строку (Robot. DriveTrainSub.arcadeDrive (Robot.oi. Driver.getRawAxis (1), Robot.oi. Driver.getRawAxis (4));), где мы вызываем arcadeDrive в нашем подсистема со значениями Robot.io. Driver.getRawAxis (1), которая возвращает значение джойстика, где 1 - ось левой оси y и то же самое для второго значения, за исключением того, что 4 - правая ось x. так что это будет означать, что левый стик будет двигаться вперед и назад, а правый стик будет двигаться вправо и влево. (если вы хотите, вы можете вернуться к RobotMap и создать новые значения для оси джойстика, затем вызвать их с помощью RobotMap. (имя оси) и не забудьте сделать их окончательными, если вы сделаете это таким образом.)
- Затем удалите неиспользуемый импорт из всего проекта.
Шаг 12: Наконец, скомпилируйте и загрузите код в робота
Рекомендуемые:
Как сделать простую целевую практику для Nintendo LABO: 13 шагов
Как сделать простую целевую практику для Nintendo LABO: Мы с сестрой недавно купили Nintendo Switch. Так что, конечно, у нас есть несколько игр. И одним из них был комплект Nintendo LABO Variety Kit. В конце концов я наткнулся на Toy-Con Garage. Я попробовал кое-что, и вот тогда я
Как написать свою первую программу на Java: 5 шагов
Как написать свою первую программу на Java: в этом руководстве показано, как поэтапно написать свою первую программу на Java
Как написать код «Записки путешественника»: 5 шагов (с изображениями)
Как записать «альбом для вырезок путешественника»: Люди склонны ностальгировать по важным для них увлечениям, таким как походы. Но как сохранить память о походе? Картинки - это вариант, да. Это устройство позволит еще одним вариантом архивирования данных из поездки. У человека будет
Как написать грубую силу для чисел (Visual BASIC 2008 Express): 5 шагов
Как написать грубую силу для чисел (Visual BASIC 2008 Express): в этой инструкции я покажу вам, как написать так называемую «грубую силу»; в Visual BASIC 2008 Express, который вы можете скачать здесь - > http://www.microsoft.com/eXPress/download/A force brute - это "взлом" запрограммируйте этого чудака
Как сделать простую подставку для будильника для Iphone: 5 шагов (с изображениями)
Как сделать простую подставку для будильника для Iphone: это цельная плоская подставка для использования с вашим iphone, когда он заряжается от кабеля. Для меня это означает, что я могу использовать его как будильник у кровати, но при этом могу видеть его. Это также цельный дизайн, поэтому его очень легко сделать. Идея пришла от