diff --git a/src/main/deploy/ShooterData.csv b/src/main/deploy/ShooterData.csv index b694df7..ce14a5a 100644 --- a/src/main/deploy/ShooterData.csv +++ b/src/main/deploy/ShooterData.csv @@ -2,6 +2,7 @@ Distance (in) ,Hood Ext. (u) ,Drum Velocity (u/ds) 0 ,-29.5 ,8000 78.5 ,-29.5 ,8000 99 ,-39.62 ,8500 +111 ,-42 ,9000 127.25 ,-49.12 ,9500 150 ,-66.22 ,10000 164.5 ,-75.52 ,10000 diff --git a/src/main/java/frc4388/robot/RobotContainer.java b/src/main/java/frc4388/robot/RobotContainer.java index 8aeb457..e7b3cb4 100644 --- a/src/main/java/frc4388/robot/RobotContainer.java +++ b/src/main/java/frc4388/robot/RobotContainer.java @@ -519,16 +519,17 @@ public class RobotContainer { new TrackTarget(m_robotTurret, m_robotBoomBoom, m_robotHood, m_robotVisionOdometry, true), new RunCommandForTime(new RunCommand(() -> m_robotStorage.runStorage(StorageConstants.STORAGE_SPEED), m_robotStorage), 2.0) )); // * weird way of shooting, i think we should make a new TrackTarget with built-in Storage control instead. - + // ! POSITIVE Y IS LEFT, POSITIVE X IS BACKWARDS + // ! DRIVE OFF LINE, THEN SHOOT BALL (HOPEFULLY) return new SequentialCommandGroup( new InstantCommand(() -> m_robotSwerveDrive.resetGyro(), m_robotSwerveDrive), // * reset gyro before moving - new DriveWithInputForTime(m_robotSwerveDrive, new double[] {0.0, 0.5, 0.0, 0.0}, 0.5), // * drive out of tarmac - new InstantCommand(() -> m_robotSwerveDrive.stopModules(), m_robotSwerveDrive), // * brake + new DriveWithInputForTime(m_robotSwerveDrive, new double[] {0.6, 0, 0.0, 0.0}, 0.5), // * drive out of tarmac + new InstantCommand(() -> m_robotSwerveDrive.stopModules(), m_robotSwerveDrive)); // * brake - new RunCommandForTime(new RunCommand(() -> m_robotTurret.runShooterRotatePID((180.0 / Math.PI) * Math.atan2(-(82.83 / 2.00) + 15.56, -(219.25 / 2.00) - 40.44 + 10.00)), m_robotTurret), 1.0, true), // * aim with turret to target - weirdAutoShootingGroup, // * shoot - new InstantCommand(() -> m_robotStorage.runStorage(0.0), m_robotStorage) // * stop running storage - ); + // new RunCommandForTime(new RunCommand(() -> m_robotTurret.runShooterRotatePID((180.0 / Math.PI) * Math.atan2(-(82.83 / 2.00) + 15.56, -(219.25 / 2.00) - 40.44 + 10.00)), m_robotTurret), 1.0, true), // * aim with turret to target + // weirdAutoShootingGroup, // * shoot + // new InstantCommand(() -> m_robotStorage.runStorage(0.0), m_robotStorage) // * stop running storage + // ); // ! TWO BALL AUTO (HOPEFULLY) // return new SequentialCommandGroup( new ExtenderIntakeGroup(m_robotIntake, m_robotExtender), // * extend out, in preparation of running intake diff --git a/src/main/java/frc4388/robot/commands/DriveCommands/DriveWithInputForTime.java b/src/main/java/frc4388/robot/commands/DriveCommands/DriveWithInputForTime.java index bd78995..b2827f7 100644 --- a/src/main/java/frc4388/robot/commands/DriveCommands/DriveWithInputForTime.java +++ b/src/main/java/frc4388/robot/commands/DriveCommands/DriveWithInputForTime.java @@ -49,7 +49,7 @@ public class DriveWithInputForTime extends CommandBase { public void execute() { System.out.println("RUNNING"); elapsed = System.currentTimeMillis() - start; - this.swerve.driveWithInput(inputs[0], inputs[1], inputs[2], inputs[3], true); + this.swerve.driveWithInput(inputs[0], inputs[1], inputs[2], inputs[3], false); } // Called once the command ends or is interrupted.