X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2Fcommands%2Fintakearm%2FPushDownChevalDeFrise.java;h=9852a1c0cbc9c03fd1453a261d2483f6b413d72a;hb=5cff891038f613483040c7f1a2b5b554adcd3313;hp=bccdc7d06844b01188e0a04a2214dc05b23feee3;hpb=ee26ec151d61d147fc13d28e44fc3cfcfa8663ae;p=3501%2Fstronghold-2016 diff --git a/src/org/usfirst/frc/team3501/robot/commands/intakearm/PushDownChevalDeFrise.java b/src/org/usfirst/frc/team3501/robot/commands/intakearm/PushDownChevalDeFrise.java index bccdc7d0..9852a1c0 100755 --- a/src/org/usfirst/frc/team3501/robot/commands/intakearm/PushDownChevalDeFrise.java +++ b/src/org/usfirst/frc/team3501/robot/commands/intakearm/PushDownChevalDeFrise.java @@ -1,6 +1,7 @@ package org.usfirst.frc.team3501.robot.commands.intakearm; import org.usfirst.frc.team3501.robot.Robot; +import org.usfirst.frc.team3501.robot.commands.driving.DriveDistance; import edu.wpi.first.wpilibj.command.CommandGroup; @@ -15,6 +16,17 @@ import edu.wpi.first.wpilibj.command.CommandGroup; * */ public class PushDownChevalDeFrise extends CommandGroup { + // distances are in inches + private final double MIN_ANGLE = Robot.intakeArm.potAngles[2]; // TODO: find + // min angle + // the intake + // arm has + // to be to be over the cheval de frise + private final double RAMP_DIST = 12; + private final double MAX_TIMEOUT_RAMP = 1; // TODO: check that one second is + // enough + private final double LOWEST_ANGLE = Robot.intakeArm.potAngles[0]; + private final double DEFAULT_ARM_SPEED = 0.4; public PushDownChevalDeFrise() { requires(Robot.intakeArm); @@ -33,7 +45,22 @@ public class PushDownChevalDeFrise extends CommandGroup { * * move forward a little * - */ + * move arm down + **/ + + if (Robot.intakeArm.getArmAngle() > MIN_ANGLE) { + addSequential(new DriveDistance(RAMP_DIST, MAX_TIMEOUT_RAMP)); + addSequential(new MoveIntakeArmToAngle(LOWEST_ANGLE, DEFAULT_ARM_SPEED)); + + } else { + addSequential(new MoveIntakeArmToAngle(MIN_ANGLE + 3, DEFAULT_ARM_SPEED)); // TODO: + // check that adding + // 3 is correct + + addSequential(new DriveDistance(RAMP_DIST, MAX_TIMEOUT_RAMP)); + addSequential(new MoveIntakeArmToAngle(LOWEST_ANGLE, DEFAULT_ARM_SPEED)); + + } } }