Exponential drive curves to allow for finer control of the robot
Motivation
Driving a robot is hard. The more the operator needs to focus on controlling the robot, the less situational awareness they have. Therefore, the robot should be programmed to be as easy as possible to drive. Exponential drive curves will assist in this. It allows for fine control of the robot for low-speed adjustments, but still maintain the top speed.
Implementation
Command Xbox Controller will be extended, and the get joystick functions will be overridden. The drive curve itself will be a manually-tuned curve, much like tuning a fan curve. This can be done using an array of 2-dimensional values, and will be interpolated as necessary.
Additional Information
Exponential drive curves are common in FRC and VRC, and I have first-hand experience of this.
Overview
Exponential drive curves to allow for finer control of the robot
Motivation
Driving a robot is hard. The more the operator needs to focus on controlling the robot, the less situational awareness they have. Therefore, the robot should be programmed to be as easy as possible to drive. Exponential drive curves will assist in this. It allows for fine control of the robot for low-speed adjustments, but still maintain the top speed.
Implementation
Command Xbox Controller will be extended, and the get joystick functions will be overridden. The drive curve itself will be a manually-tuned curve, much like tuning a fan curve. This can be done using an array of 2-dimensional values, and will be interpolated as necessary.
Additional Information
Exponential drive curves are common in FRC and VRC, and I have first-hand experience of this.