Ampharos Simple Pathing is still not available for general public, the current ETA is the end of March due to our Nationals Event being held.
This documentation is still not yet complete and missing components under testing (such as Auto Tuning and Tuning in general)
Getting Started
Downloading
You can download ASP from our GitHub page.
Versions are available for OnBotJava and Android Studio.
Troubleshooting
You can join our Discord server to get help : ASP Discord
Or ping @jaumthe16th in the FTC official discord.
Tuning
ASP currently supports Mecanum Drive using
GoBilda Pinpoint Computer localization.
Drive Train Tuning
Each drive train has its own tuning class.
Tuning includes:
- Translation PID (kPT, kIT, kDT)
- Heading PID (kPH, kIH, kDH)
- Distance tolerances (inches & degrees)
Mecanum Tuning Example
public class MyMecanumTuning extends ASPMecanumTuning {
// Translation PID
double kPT = 0.02;
double kIT = 0.06;
double kDT = 0.44;
// Heading PID
double kPH = 0.05;
double kIH = 0.12;
double kDH = 0.44;
// Tolerances
double translationTolerance = 2.3; // inches
double headingTolerance = 2; // degrees
// Motor configuration... (Copy from the ASPMecanumTuning in /asp/tuning/ASPMecanumTuning.java)
}
Autonomous
Creating an Autonomous with ASP is straightforward once your robot
is tuned.
Poses
A Pose represents the robot position on the field:
X, Y (in inches), and Heading (degrees).
ASPPose2D pose1 = new ASPPose2D(0, 0, 5);
ASPPose2D pose2 = new ASPPose2D(0, 41, 25);
Paths
Paths are used by our Drive Trains
A Path in ASP consits of many Poses.
Making a new Path is very easy.
ASPPose2D myPose1 = new Pose2D(0, 41, 5);
new ASPPath().add(new ASPPose2D(0, 0, 0))
.add(new ASPPose2D(0, 15, 0))
.add(new ASPPose2D(0, 15, 25))
.add(myPose1);
Example
Here is an Example MecanumDriveTrain Autonomous class.
@Autonomous
public class MyASPAutonomous extends LinearOpMode {
ASPLocalizer localizer;
ASPMecanumDriveTrain drive;
@Override
public void runOpMode() {
// Initializes our Localizer
localizer = new ASPPinpointLocalizer(
hardwareMap,
new ASPPose2D(0, 0, 0)
);
// Initializes our DriveTrain
drive = new ASPMecanumDriveTrain(hardwareMap, localizer, new MyASPMecanumTuning());
// Creates a Path
drive.paths = new ASPPath().add(new ASPPose2D(0, 0, 0))
.add(new ASPPose2D(0, 15, 0))
.add(new ASPPose2D(0, 15, 25))
.add(new ASPPose2D(0, 0, 0));
waitForStart();
while (opModeIsActive()) {
drive.update(); // Updates DriveTrain
drive.followTarget(); // Follows the path
}
}
}
ASP Path Visualizer
The ASP Path Visualizer helps you create and preview paths visually.
You can download it here.