Skip to content

Commit cc24ca4

Browse files
authored
Create RobotPoses.java (#24)
1 parent 1d2f886 commit cc24ca4

File tree

3 files changed

+38
-1
lines changed

3 files changed

+38
-1
lines changed

src/main/java/frc/robot/Constants.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import edu.wpi.first.math.controller.ProfiledPIDController;
2424
import edu.wpi.first.math.geometry.Pose2d;
2525
import edu.wpi.first.math.geometry.Rotation2d;
26+
import edu.wpi.first.math.geometry.Rotation3d;
27+
import edu.wpi.first.math.geometry.Transform3d;
2628
import edu.wpi.first.math.geometry.Translation2d;
2729
import edu.wpi.first.math.system.plant.DCMotor;
2830
import edu.wpi.first.math.trajectory.TrapezoidProfile;
@@ -32,6 +34,7 @@
3234
import edu.wpi.first.units.measure.Distance;
3335
import edu.wpi.first.units.measure.LinearVelocity;
3436
import edu.wpi.first.units.measure.Mass;
37+
import edu.wpi.first.units.Unit;
3538
import edu.wpi.first.units.Units;
3639
import edu.wpi.first.wpilibj.DriverStation;
3740
import edu.wpi.first.wpilibj.DriverStation.Alliance;
@@ -42,6 +45,9 @@ public final class Constants {
4245
*/
4346
public static final double MAX_VOLTAGE = 12;
4447

48+
public static final Transform3d ROBOT_TO_BUMPERS = new Transform3d(0, 0, Units.Meters.convertFrom(5, Units.Inches),
49+
Rotation3d.kZero); // TODO: Replace with actual measurement
50+
4551
public static class constControllers {
4652
public static final double DRIVER_LEFT_STICK_DEADBAND = 0.05;
4753
public static final boolean SILENCE_JOYSTICK_WARNINGS = true;
@@ -90,6 +96,7 @@ public static class constDrivetrain {
9096
public static final double TRACK_WIDTH = TRACK_WIDTH_29; // TODO: Replace with actual measurement
9197
// Distance between Front & Back Wheels
9298
public static final double WHEELBASE = WHEELBASE_29; // TODO: Replace with actual measurement
99+
93100
// -- Pose Estimation --
94101
/**
95102
* <p>

src/main/java/frc/robot/RobotContainer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ public class RobotContainer {
2121
private final SN_XboxController conDriver = new SN_XboxController(mapControllers.DRIVER_USB);
2222

2323
private final Drivetrain subDrivetrain = new Drivetrain();
24-
2524
private final StateMachine subStateMachine = new StateMachine(subDrivetrain);
25+
private final RobotPoses robotPose = new RobotPoses(subDrivetrain);
2626

2727
Command TRY_NONE = Commands.deferredProxy(
2828
() -> subStateMachine.tryState(RobotState.NONE));
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
// Copyright (c) FIRST and other WPILib contributors.
2+
// Open Source Software; you can modify and/or share it under the terms of
3+
// the WPILib BSD license file in the root directory of this project.
4+
5+
package frc.robot.subsystems;
6+
7+
import edu.wpi.first.math.geometry.Pose3d;
8+
import edu.wpi.first.wpilibj2.command.SubsystemBase;
9+
import frc.robot.Constants;
10+
11+
public class RobotPoses extends SubsystemBase {
12+
/** Creates a new RobotPoses. */
13+
14+
Drivetrain subDrivetrain;
15+
16+
Pose3d comp0Drivetrain = Pose3d.kZero;
17+
Pose3d comp1Bumpers = Pose3d.kZero.plus(Constants.ROBOT_TO_BUMPERS);
18+
19+
public RobotPoses(Drivetrain subDrivetrain) {
20+
this.subDrivetrain = subDrivetrain;
21+
}
22+
23+
@Override
24+
public void periodic() {
25+
// This method will be called once per scheduler run
26+
27+
// Robot Positions
28+
comp0Drivetrain = new Pose3d(subDrivetrain.getPose());
29+
}
30+
}

0 commit comments

Comments
 (0)