From 09fd0f17f5dffadbb3bd067a55800c62d53b3226 Mon Sep 17 00:00:00 2001 From: frc3316 Date: Tue, 17 Feb 2015 20:14:11 +0200 Subject: [PATCH] Fixed setpoint getting stuck without stacker moving --- dist/FRCUserProgram.jar | Bin 1780426 -> 1780684 bytes .../frc/team3316/robot/humanIO/Joysticks.java | 7 ++++--- .../frc/team3316/robot/humanIO/SDB.java | 15 +++++++++++++++ .../robot/sequences/PickupSequence.java | 6 +++--- .../robot/stacker/commands/MoveStacker.java | 4 +++- .../team3316/robot/subsystems/Stacker.java | 16 ++++++++++++++-- sysProps.xml | Bin 5950 -> 5950 bytes 7 files changed, 39 insertions(+), 9 deletions(-) diff --git a/dist/FRCUserProgram.jar b/dist/FRCUserProgram.jar index 6d906ac0b80b97b43c75b2aa7ce3dc61d79ae920..92315d8d0b6defa3700670a86352ce109674b47c 100644 GIT binary patch delta 30907 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 z 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

7nW1GbHk@&f=@ldfTp9v?i^!q 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 step - moveToEndPosition = new MoveStackerToFloor(); + //moveToEndPosition = new MoveStackerToFloor(); } protected void end () @@ -31,6 +31,6 @@ protected void end () * This is in end because we don't want this to execute if the sequence * was cancelled (and interrupted was called instead of end) */ - moveToEndPosition.start(); + //moveToEndPosition.start(); } } diff --git a/src/org/usfirst/frc/team3316/robot/stacker/commands/MoveStacker.java b/src/org/usfirst/frc/team3316/robot/stacker/commands/MoveStacker.java index df1eb86..0500d8a 100644 --- a/src/org/usfirst/frc/team3316/robot/stacker/commands/MoveStacker.java +++ b/src/org/usfirst/frc/team3316/robot/stacker/commands/MoveStacker.java @@ -23,7 +23,7 @@ public abstract class MoveStacker extends Command public MoveStacker() { requires(Robot.stacker); - setpoint = setSetpointState(); + setpoint = this.setSetpointState(); } protected void initialize() {} @@ -38,6 +38,7 @@ protected void execute() protected boolean isFinished() { + if (Robot.stacker.getPosition() == setpoint) { return true; @@ -62,6 +63,7 @@ private void set () { setSuccessful = true; } + Robot.stacker.setSetpointState(setpoint); } protected abstract StackerPosition setSetpointState(); diff --git a/src/org/usfirst/frc/team3316/robot/subsystems/Stacker.java b/src/org/usfirst/frc/team3316/robot/subsystems/Stacker.java index 4b463d3..5a7e2e9 100644 --- a/src/org/usfirst/frc/team3316/robot/subsystems/Stacker.java +++ b/src/org/usfirst/frc/team3316/robot/subsystems/Stacker.java @@ -22,7 +22,6 @@ public class Stacker extends Subsystem { private class StackerManager extends TimerTask { - private StackerPosition currentState; private StackerPosition setpointState; @@ -67,6 +66,7 @@ else if (currentState == StackerPosition.Floor) if (!Robot.stacker.getSwitchRatchetLeft() || !Robot.stacker.getSwitchRatchetRight()) { + setpointState = null; return null; } @@ -99,6 +99,7 @@ else if (currentState == StackerPosition.Floor) if (!Robot.stacker.getSwitchRatchetLeft() || !Robot.stacker.getSwitchRatchetRight()) { + setpointState = null; return null; } @@ -146,6 +147,7 @@ else if (currentState == StackerPosition.Step) return setpointState; } + public void run () { currentState = Robot.stacker.getPosition(); @@ -272,9 +274,19 @@ public boolean closeSolenoidGripper () return true; } + double[] prevHeights = new double[100]; + public double getHeight () { - return (1 / heightIR.getVoltage()); + double currentHeight = (1 / heightIR.getVoltage()); + double avg = currentHeight; + for(int i=0; i