Lessons
Each lesson starts from a problem in a real project, builds the math and science needed to solve it from first principles, includes an interactive demo, and ends in working code. The first arc’s projects are robots: the code is plain Java with WPILib Units, then WPILib, then Team 766’s own code.
Arc 1: Robotics
- Angles and Trig Ratios Problem: turn a robot’s heading and distance driven into down-field and sideways parts.
- Vectors (coming) Problem: turn a joystick push into a drive command.
- Frames and Rotation (coming) Problem: drive relative to the field while the robot is turned.
- Equations, Quadratics and the Discriminant (coming) Problem: find when and where a thrown ball comes down.
- Ballistics (coming) Problem: aim a shooter at a target, including while moving.
- Rates and Accumulation (coming) Problem: track where the robot is from wheel speeds over time.
- Matrices as Transforms (coming) Problem: convert between chassis motion and wheel motion, and between camera, robot and world.
- Overdetermined Systems and Least Squares (coming) Problem: get a camera pose from a fiducial marker seen in an image.
- Uncertainty and Weighted Averaging (coming) Problem: combine two estimates that disagree.
- The Kalman Filter (coming) Problem: fuse odometry with vision continuously.
- Optimization and Gradient Descent (coming) Problem: fit a model to data by improving it step by step.
- SLAM (coming) Problem: localize when the map itself is unknown.