10#define WHEEL_DIAMETER_METERS 0.146
106 ChassisState desired_state;
107 ChassisState curr_state;
109 WheelSpeed desired_wheelspeed;
110 WheelSpeed curr_wheelspeed;
112 unsigned long prev_time;
149 void setDesiredWheelSpeed();
152 ChassisSpeed rotateChassisSpeed(ChassisSpeed desired_vel,
float frame_angle);
155 void calculateWheelSpeed(ChassisSpeed chassisSpeeds);
158 void calculateChassisSpeed();
164 float Bisection(
int LeftFrontPower,
int RightFrontPower,
int LeftBackPower,
int RightBackPower,
int LeftFrontRpm,
int RightFrontRpm,
int LeftBackRpm,
int RightBackRpm,
float chassisPowerLimit);
167 float p_theory(
int LeftFrontPower,
int RightFrontPower,
int LeftBackPower,
int RightBackPower,
int LeftFrontRpm,
int RightFrontRpm,
int LeftBackRpm,
int RightBackRpm);
CANBus
Definition CANHandler.h:45
Definition OmniWheelSubsystem.h:15
void setChassisState(ChassisState state)
Definition OmniWheelSubsystem.cpp:58
bool setOdomReference()
Definition OmniWheelSubsystem.cpp:80
ChassisState getChassisState()
Definition OmniWheelSubsystem.cpp:68
ChassisMode
Definition OmniWheelSubsystem.h:54
@ ROBOT_ORIENTED
Definition OmniWheelSubsystem.h:57
@ YAW_ORIENTED
Definition OmniWheelSubsystem.h:55
@ OFF
Definition OmniWheelSubsystem.h:60
@ BEYBLADE
Definition OmniWheelSubsystem.h:56
@ YAW_ALIGNED
Definition OmniWheelSubsystem.h:59
@ ODOM_ORIENTED
Definition OmniWheelSubsystem.h:58
void setPowerLimit(int powerLimit)
Definition OmniWheelSubsystem.h:72
void periodic()
Definition OmniWheelSubsystem.cpp:87
void setYawReference(TurretSubsystem &_yaw, float initial_offset_ticks=0, float _yawAlign=0)
Definition OmniWheelSubsystem.cpp:73
Definition TurretSubsystem.h:15
Definition OmniWheelSubsystem.h:47
float vOmega
Definition OmniWheelSubsystem.h:50
float vX
Definition OmniWheelSubsystem.h:48
float vY
Definition OmniWheelSubsystem.h:49
Definition OmniWheelSubsystem.h:64
ChassisMode mode
Definition OmniWheelSubsystem.h:66
ChassisSpeed vel
Definition OmniWheelSubsystem.h:65
Definition OmniWheelSubsystem.h:18
float max_vel
Definition OmniWheelSubsystem.h:27
PID::config br_vel_config
Definition OmniWheelSubsystem.h:35
PID::config fr_vel_config
Definition OmniWheelSubsystem.h:33
PID::config fl_vel_config
Definition OmniWheelSubsystem.h:32
float feed_forward
Definition OmniWheelSubsystem.h:29
float max_accel
Definition OmniWheelSubsystem.h:28
int power_limit
Definition OmniWheelSubsystem.h:25
PID::config bl_vel_config
Definition OmniWheelSubsystem.h:34
short brid
Definition OmniWheelSubsystem.h:22
float max_beyblade
Definition OmniWheelSubsystem.h:30
CANHandler::CANBus canBus
Definition OmniWheelSubsystem.h:37
float radius
Definition OmniWheelSubsystem.h:24
float yawAlign
Definition OmniWheelSubsystem.h:43
float initial_angle
Definition OmniWheelSubsystem.h:42
short frid
Definition OmniWheelSubsystem.h:20
short flid
Definition OmniWheelSubsystem.h:19
IMU & imu
Definition OmniWheelSubsystem.h:39
TurretSubsystem & yaw
Definition OmniWheelSubsystem.h:41
short blid
Definition OmniWheelSubsystem.h:21