Valkyrie 2026
Loading...
Searching...
No Matches
Requests.h
1#pragma once
2#include <frc/kinematics/ChassisSpeeds.h>
3#include <frc/kinematics/MecanumDriveWheelSpeeds.h>
4
5#include "valkyrie/controllers/BaseController.h"
6
7namespace valor {
8namespace mecanum {
9namespace requests {
10
17enum class OutputType {
24 Velocity,
25
31 Voltage,
32
39 DutyCycle
40};
41
55 frc::ChassisSpeeds speeds;
56
62 frc::Translation2d centerOfRotation = {};
63
70 BaseController::Output frontLeftFF = 0;
71 BaseController::Output frontRightFF = 0;
72 BaseController::Output rearLeftFF = 0;
73 BaseController::Output rearRightFF = 0;
74
81 BaseController::Output zeroOutput = 0;
82
90 OutputType outputType = OutputType::Velocity;
91
98 bool discretize = true;
99
107
114 bool fieldRelative = true;
115
122 units::meters_per_second_t deadband = 0_mps;
123};
124
138 frc::MecanumDriveWheelSpeeds speeds;
139
146 BaseController::Output frontLeftFF = 0;
147 BaseController::Output frontRightFF = 0;
148 BaseController::Output rearLeftFF = 0;
149 BaseController::Output rearRightFF = 0;
150
154 BaseController::Output zeroOutput = 0;
155
163 OutputType outputType = OutputType::Velocity;
164
172
179 units::meters_per_second_t deadband = 0_mps;
180};
181
182} // namespace requests
183} // namespace mecanum
184} // namespace valor
Request structure for commanding a swerve drivetrain using chassis speeds.
Definition Requests.h:49
bool desaturateWheelSpeeds
Whether to desaturate wheel speeds.
Definition Requests.h:106
frc::ChassisSpeeds speeds
Desired chassis-relative or field-relative motion.
Definition Requests.h:55
BaseController::Output zeroOutput
Default output value used when speeds are below the given deadband.
Definition Requests.h:81
bool fieldRelative
Whether the chassis speeds are field-relative.
Definition Requests.h:114
OutputType outputType
Output control mode used when applying drive requests.
Definition Requests.h:90
bool discretize
Whether to discretize the chassis speeds.
Definition Requests.h:98
frc::Translation2d centerOfRotation
Center of rotation for the drivetrain motion.
Definition Requests.h:62
units::meters_per_second_t deadband
Minimum wheel speed required before motion is applied.
Definition Requests.h:122
BaseController::Output frontLeftFF
Optional feedforward outputs for each swerve module.
Definition Requests.h:70
Request structure for commanding a swerve drivetrain using explicit module states.
Definition Requests.h:132
OutputType outputType
Output control mode used when applying drive requests.
Definition Requests.h:163
frc::MecanumDriveWheelSpeeds speeds
Desired states for each swerve module.
Definition Requests.h:138
units::meters_per_second_t deadband
Minimum wheel speed required before motion is applied.
Definition Requests.h:179
BaseController::Output zeroOutput
Default output value used when no feedforward is provided.
Definition Requests.h:154
bool desaturateWheelSpeeds
Whether to desaturate wheel speeds.
Definition Requests.h:171
BaseController::Output frontLeftFF
Optional feedforward outputs for each swerve module.
Definition Requests.h:146