What is the primary purpose?
The primary purpose of this subsystem is to let the robot effectively get from one location to another on wheels a.k.a. driving!
What operations does it need to do?
Drive forward
Drive any direction
What does the subsystem need to know?
Direction
In terms of the field position
Magnitude of Speed
Rotation of the swerve wheel
What actuators are on the subsystem?
8 Neo's in total, 2 Neo's per each swerve module
What sensors are on the subsystem?
Pigeon Gyro
4 Magnetic Encoders
8 Spark Max Motor Controllers
How can the subsystem fail?
This subsystem could fail by not moving the right direction in terms of the field. The swerve drive could not move at all. Maybe some integral windup with tuning P.I.D.'s.
How can we mitigate failure?
Tuning our P.I.D.'s correctly, using our gyro properly, being good, using the encoders to make sure the swerve modules are moving properly are turning correctly.
What can be automated?
An autonomous period, taxing out of the terminal, maybe some machine learning go to the nearest ball (lofty goal but hey who knows...)
Drive
What is the primary purpose? The primary purpose of this subsystem is to let the robot effectively get from one location to another on wheels a.k.a. driving!
What operations does it need to do?
What does the subsystem need to know?
What actuators are on the subsystem?
What sensors are on the subsystem?
How can the subsystem fail? This subsystem could fail by not moving the right direction in terms of the field. The swerve drive could not move at all. Maybe some integral windup with tuning P.I.D.'s.
How can we mitigate failure? Tuning our P.I.D.'s correctly, using our gyro properly, being good, using the encoders to make sure the swerve modules are moving properly are turning correctly.
What can be automated? An autonomous period, taxing out of the terminal, maybe some machine learning go to the nearest ball (lofty goal but hey who knows...)