add commands to control intake of boulders
authorLauren Meier <meier.lauren@gmail.com>
Wed, 10 Feb 2016 02:37:27 +0000 (18:37 -0800)
committerLauren Meier <meier.lauren@gmail.com>
Sat, 13 Feb 2016 22:36:13 +0000 (14:36 -0800)
src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerExpel.java [new file with mode: 0644]
src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerIntake.java [new file with mode: 0644]
src/org/usfirst/frc/team3501/robot/subsystems/IntakeArm.java

diff --git a/src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerExpel.java b/src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerExpel.java
new file mode 100644 (file)
index 0000000..271c79e
--- /dev/null
@@ -0,0 +1,38 @@
+package org.usfirst.frc.team3501.robot.commands;
+
+import org.usfirst.frc.team3501.robot.Robot;
+
+import edu.wpi.first.wpilibj.command.Command;
+
+public class ToggleBallRollerExpel extends Command {
+  final double BALL_INTAKE_SPEED = 0.3;
+
+  public ToggleBallRollerExpel() {
+  }
+
+  @Override
+  protected void initialize() {
+    Robot.shooter.setSpeed(BALL_INTAKE_SPEED);
+  }
+
+  @Override
+  protected void execute() {
+
+  }
+
+  @Override
+  protected boolean isFinished() {
+    return true;
+  }
+
+  @Override
+  protected void end() {
+
+  }
+
+  @Override
+  protected void interrupted() {
+
+  }
+
+}
diff --git a/src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerIntake.java b/src/org/usfirst/frc/team3501/robot/commands/ToggleBallRollerIntake.java
new file mode 100644 (file)
index 0000000..d758148
--- /dev/null
@@ -0,0 +1,35 @@
+package org.usfirst.frc.team3501.robot.commands;
+
+import edu.wpi.first.wpilibj.command.Command;
+
+public class ToggleBallRollerIntake extends Command {
+  final double BALL_EXPEL_SPEED = -0.3;
+
+  public ToggleBallRollerIntake() {
+  }
+
+  @Override
+  protected void initialize() {
+  }
+
+  @Override
+  protected void execute() {
+
+  }
+
+  @Override
+  protected boolean isFinished() {
+    return true;
+  }
+
+  @Override
+  protected void end() {
+
+  }
+
+  @Override
+  protected void interrupted() {
+
+  }
+
+}
index 9089852a6f790a69b63d6b3f1360801cb1049680..ceac71fb1d4ca5a424c01b26eb10168658f9c94c 100755 (executable)
@@ -19,126 +19,127 @@ import edu.wpi.first.wpilibj.command.Subsystem;
  */
 
 public class IntakeArm extends Subsystem {
-       private CANTalon intakeRoller;
-       private CANTalon intakeArm;
-       private AnalogPotentiometer intakePot;
-       private double[] potAngles = { 0, 45, 90 };
-
-       public IntakeArm() {
-               intakeRoller = new CANTalon(Constants.IntakeArm.ROLLER_PORT);
-               intakeArm = new CANTalon(Constants.IntakeArm.ARM_PORT);
-               intakePot = new AnalogPotentiometer(Constants.IntakeArm.POT_CHANNEL, Constants.IntakeArm.FULL_RANGE,
-                               Constants.IntakeArm.OFFSET);
-
-       }
-
-       /***
-        * This method sets the voltage of the motor to intake the ball. The voltage
-        * values are constants in Constants class
-        */
-       public void intakeBall() {
-               intakeRoller.set(Constants.IntakeArm.INTAKE_SPEED);
-       }
-
-       /***
-        * This method sets the voltage of the motor to output the ball. The voltage
-        * values are constants in Constants class
-        */
-       public void outputBall() {
-               intakeRoller.set(Constants.IntakeArm.OUTPUT_SPEED);
-       }
-
-       /***
-        * This method gets you the current voltage of the motor that controls the
-        * intake arm roller. The range of voltage is from [-1,1]. A negative
-        * voltage makes the motor run backwards.
-        *
-        * @return Returns the voltage of the motor that controls the roller. The
-        *         range of the voltage goes from [-1,1]. A negative voltage
-        *         indicates that the motor is running backwards.
-        */
-
-       public double getRollerVoltage() {
-               return intakeRoller.get();
-       }
-
-       /***
-        * This method sets the voltage of the arm motor. The range is from [-1,1].
-        * A negative voltage makes the direction of the motor go backwards.
-        *
-        * @param voltage
-        *            The voltage that you set the motor at. The range of the
-        *            voltage of the arm motor is from [-1,1]. A negative voltage
-        *            makes the direction of the motor go backwards.
-        */
-
-       public void setArmSpeed(double voltage) {
-               if (voltage > 1)
-                       voltage = 1;
-               else if (voltage < -1)
-                       voltage = -1;
-
-               intakeArm.set(voltage);
-       }
-
-       /***
-        * This method gets you the current voltage of the motor that controls the
-        * intake arm. The range of voltage is from [-1,1]. A negative voltage makes
-        * the motor run backwards.
-        *
-        * @return Returns the voltage of the motor that controls the arm. The range
-        *         of the voltage goes from [-1,1]. A negative voltage indicates
-        *         that the motor is running backwards.
-        */
-
-       public double getArmSpeed() {
-               return intakeArm.get();
-       }
-
-       /***
-        * This method checks to see if the presence of the ball inside is true or
-        * false.
-        *
-        * @return Returns whether the ball is inside as true or false
-        */
-
-       public boolean isBallInside() {
-               return true;
-       }
-
-       /***
-        * This method checks to see if the motors controlling the rollers are
-        * currently running.
-        *
-        * @return Returns whether the motors are currently running, and returns the
-        *         state of the condition (true or false).
-        *
-        */
-
-       public boolean areRollersRolling() {
-               return true;
-       }
-
-       /***
-        * This method gets the angle of the potentiometer on the Intake Arm.
-        *
-        * @return angle of potentiometer
-        */
-
-       public double getArmAngle() {
-               return intakePot.get() + Constants.IntakeArm.ZERO_ANGLE;
-       }
-
-       public void stop() {
-               setArmSpeed(0);
-       }
-
-       public double getAngleForLevel(double targetLevel) {
-               return potAngles[(int) (targetLevel - 1)];
-       }
-
-       @Override
-       protected void initDefaultCommand() {
-
-       }
+
+  private CANTalon intakeRoller;
+  private CANTalon intakeArm;
+  private AnalogPotentiometer intakePot;
+  private double[] potAngles = { 0, 45, 90 };
+
+  public IntakeArm() {
+    intakeRoller = new CANTalon(Constants.IntakeArm.ROLLER_PORT);
+    intakeArm = new CANTalon(Constants.IntakeArm.ARM_PORT);
+    intakePot = new AnalogPotentiometer(Constants.IntakeArm.POT_CHANNEL,
+        Constants.IntakeArm.FULL_RANGE, Constants.IntakeArm.OFFSET);
+
+  }
+
+  /***
+   * This method sets the voltage of the motor to intake the ball. The voltage
+   * values are constants in Constants class
+   */
+  public void intakeBall() {
+    intakeRoller.set(Constants.IntakeArm.INTAKE_SPEED);
+  }
+
+  /***
+   * This method sets the voltage of the motor to output the ball. The voltage
+   * values are constants in Constants class
+   */
+  public void outputBall() {
+    intakeRoller.set(Constants.IntakeArm.OUTPUT_SPEED);
+  }
+
+  /***
+   * This method gets you the current voltage of the motor that controls the
+   * intake arm roller. The range of voltage is from [-1,1]. A negative voltage
+   * makes the motor run backwards.
+   *
+   * @return Returns the voltage of the motor that controls the roller. The
+   *         range of the voltage goes from [-1,1]. A negative voltage indicates
+   *         that the motor is running backwards.
+   */
+
+  public double getRollerVoltage() {
+    return intakeRoller.get();
+  }
+
+  /***
+   * This method sets the voltage of the arm motor. The range is from [-1,1]. A
+   * negative voltage makes the direction of the motor go backwards.
+   *
+   * @param voltage
+   *          The voltage that you set the motor at. The range of the voltage of
+   *          the arm motor is from [-1,1]. A negative voltage makes the
+   *          direction of the motor go backwards.
+   */
+
+  public void setArmSpeed(double voltage) {
+    if (voltage > 1)
+      voltage = 1;
+    else if (voltage < -1)
+      voltage = -1;
+
+    intakeArm.set(voltage);
+  }
+
+  /***
+   * This method gets you the current voltage of the motor that controls the
+   * intake arm. The range of voltage is from [-1,1]. A negative voltage makes
+   * the motor run backwards.
+   *
+   * @return Returns the voltage of the motor that controls the arm. The range
+   *         of the voltage goes from [-1,1]. A negative voltage indicates that
+   *         the motor is running backwards.
+   */
+
+  public double getArmSpeed() {
+    return intakeArm.get();
+  }
+
+  /***
+   * This method checks to see if the presence of the ball inside is true or
+   * false.
+   *
+   * @return Returns whether the ball is inside as true or false
+   */
+
+  public boolean isBallInside() {
+    return true;
+  }
+
+  /***
+   * This method checks to see if the motors controlling the rollers are
+   * currently running.
+   *
+   * @return Returns whether the motors are currently running, and returns the
+   *         state of the condition (true or false).
+   *
+   */
+
+  public boolean areRollersRolling() {
+    return true;
+  }
+
+  /***
+   * This method gets the angle of the potentiometer on the Intake Arm.
+   *
+   * @return angle of potentiometer
+   */
+
+  public double getArmAngle() {
+    return intakePot.get() + Constants.IntakeArm.ZERO_ANGLE;
+  }
+
+  public void stop() {
+    setArmSpeed(0);
+  }
+
+  public double getAngleForLevel(double targetLevel) {
+    return potAngles[(int) (targetLevel - 1)];
+  }
+
+  @Override
+  protected void initDefaultCommand() {
+
+  }
 }