import org.usfirst.frc.team3501.robot.Constants;\r
\r
import edu.wpi.first.wpilibj.AnalogPotentiometer;\r
+import edu.wpi.first.wpilibj.CANTalon;\r
import edu.wpi.first.wpilibj.command.Subsystem;\r
\r
public class DefenseArm extends Subsystem {\r
// Defense arm related objects\r
- private AnalogPotentiometer potentiometer;\r
+ public AnalogPotentiometer defenseArmPotentiometer;\r
+ public AnalogPotentiometer defenseHandPotentiometer;\r
+ public CANTalon defenseArmMotor;\r
+ public CANTalon defenseHandMotor;\r
+ public double hookHeight;\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
- private final static double FULL_RANGE = 270.0; // in degrees\r
- private final static double OFFSET = -135.0; // in degrees\r
- private Double[] potentiometerArray; // change name, 5 to another #\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
- public DefenseArm() {\r
- potentiometer = new AnalogPotentiometer(Constants.DefenseArm.CHANNEL,\r
- FULL_RANGE, OFFSET);\r
- }\r
+ // array;\r
\r
- public double getDistance(int desiredArmLocation) {\r
- return potentiometerArray[desiredArmLocation];\r
- }\r
+ // do we want to use a hashmap??\r
+ // angles at 0,45,90 (Potentiometer value readings)\r
+ // degrees\r
\r
- public Double[] putInValues() {\r
- for (int i = 0; i < 3; i++) {\r
- potentiometerArray[i] = (double) (45 * i);\r
- }\r
- return potentiometerArray;\r
+ public DefenseArm() {\r
+ defenseArmPotentiometer = new AnalogPotentiometer(\r
+ Constants.DefenseArm.ARM_CHANNEL,\r
+ FULL_RANGE, OFFSET);\r
+ Constants.DefenseArm.HAND_CHANNEL);\r
+ defenseArmMotor = new CANTalon(Constants.DefenseArm.ARM_PORT);\r
+ defenseHandMotor = new CANTalon(Constants.DefenseArm.HAND_PORT);\r
}\r
\r
- public void moveArmTo() {\r
-\r
+ /***\r
+ * This method gets the height of the hook from the ground. The hook is\r
+ * attached to the end of the hand, which is attached to 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.\r
+ * \r
+ */\r
+\r
+ public double getHookHeight() {\r
+ return hookHeight;\r
}\r
\r
@Override\r