Add set motor speed methods in defense arm and add potentiometer getter methods
[3501/stronghold-2016] / src / org / usfirst / frc / team3501 / robot / subsystems / DefenseArm.java
index b54a02f291616aba166a078a7833a5c9887a6a32..069ea45fd34734dda4d53bf5c2c37fe42825d105 100755 (executable)
@@ -10,60 +10,33 @@ public class DefenseArm extends Subsystem {
   // Defense arm related objects\r
   private AnalogPotentiometer defenseArmPotentiometer;\r
   private AnalogPotentiometer defenseHandPotentiometer;\r
-  private CANTalon defenseArmMotor;\r
-  private CANTalon defenseHandMotor;\r
+  private CANTalon defenseArm;\r
+  private CANTalon defenseHand;\r
   private double hookHeight;\r
   private double footHeight;\r
 \r
   // Defense arm specific constants that relate to the degrees per pulse value\r
   // for the potentiometers\r
   // private final static double PULSES_PER_ROTATION = 1; // in pulses\r
-  public final static double FULL_RANGE = 270.0; // in degrees\r
-  public final static double OFFSET = -135.0; // in degrees\r
-  public final static double[] armPotValue = { 0.0, 45.0, 90.0 }; // 3 level\r
 \r
   // array;\r
 \r
-  // do we want to use a hashmap??\r
-  // angles at 0,45,90 (Potentiometer value readings)\r
-  // degrees\r
-\r
   public DefenseArm() {\r
     defenseArmPotentiometer = new AnalogPotentiometer(\r
-        Constants.DefenseArm.ARM_CHANNEL, FULL_RANGE, OFFSET);\r
+        Constants.DefenseArm.ARM_CHANNEL,\r
+        Constants.DefenseArm.FULL_RANGE,\r
+        Constants.DefenseArm.OFFSET);\r
 \r
-    defenseArmMotor = new CANTalon(Constants.DefenseArm.ARM_PORT);\r
-    defenseHandMotor = new CANTalon(Constants.DefenseArm.HAND_PORT);\r
+    defenseArm = new CANTalon(Constants.DefenseArm.ARM_PORT);\r
+    defenseHand = new CANTalon(Constants.DefenseArm.HAND_PORT);\r
   }\r
 \r
-  /***\r
-   * This method gets the height of the hook from the\r
-   * ground. The hook is attached to the end of the hand, which is attached to\r
-   * the arm.\r
-   *\r
-   * @return hookHeight gets height of hook from ground. The hook is attached to\r
-   *         the end of the hand, which is attached the arm. The height is in\r
-   *         inches.\r
-   *\r
-   */\r
-\r
-  public double getHookHeight() {\r
-\r
-    return 0;\r
+  public double getArmPotAngle() {\r
+    return defenseArmPotentiometer.get();\r
   }\r
 \r
-  /***\r
-   * This method gets the height of the foot from the ground. The foot is\r
-   * attached to the end of the hand, which is attached to the arm.\r
-   *\r
-   * @return footHeight gets height of foot from ground. The foot is attached to\r
-   *         the end of the hand, which is attached the arm. The height is in\r
-   *         inches.\r
-   *\r
-   */\r
-\r
-  public double getFootHeight() {\r
-    return 0;\r
+  public double getHandPotAngle() {\r
+    return defenseHandPotentiometer.get();\r
   }\r
 \r
   /***\r
@@ -76,8 +49,13 @@ public class DefenseArm extends Subsystem {
    *          negative voltage makes the direction of the motor go backwards.\r
    */\r
 \r
-  public void setArmMotorSpeed(double speed) {\r
+  public void setArmSpeed(double speed) {\r
+    if (speed > 1)\r
+      speed = 1;\r
+    else if (speed < -1)\r
+      speed = -1;\r
 \r
+    defenseArm.set(speed);\r
   }\r
 \r
   /***\r
@@ -90,7 +68,13 @@ public class DefenseArm extends Subsystem {
    *          negative voltage makes the direction of the motor go backwards.\r
    */\r
 \r
-  public void setHandMotorSpeed(double speed) {\r
+  public void setHandSpeed(double speed) {\r
+    if (speed > 1)\r
+      speed = 1;\r
+    else if (speed < -1)\r
+      speed = -1;\r
+\r
+    defenseHand.set(speed);\r
   }\r
 \r
   @Override\r