delete second potentiometer for defense hand
[3501/stronghold-2016] / src / org / usfirst / frc / team3501 / robot / subsystems / DefenseArm.java
1
2 package org.usfirst.frc.team3501.robot.subsystems;
3
4 import org.usfirst.frc.team3501.robot.Constants;
5
6 import edu.wpi.first.wpilibj.AnalogPotentiometer;
7 import edu.wpi.first.wpilibj.CANTalon;
8 import edu.wpi.first.wpilibj.command.Subsystem;
9
10 public class DefenseArm extends Subsystem {
11 // Defense arm related objects
12 private AnalogPotentiometer defenseArmPotentiometer;
13 private AnalogPotentiometer defenseHandPotentiometer;
14 private CANTalon defenseArm;
15 private CANTalon defenseHand;
16 private double hookHeight;
17 private double footHeight;
18 private Double[] potAngles;
19
20 public DefenseArm() {
21 defenseArmPotentiometer = new AnalogPotentiometer(
22 Constants.DefenseArm.ARM_CHANNEL,
23 Constants.DefenseArm.FULL_RANGE,
24 Constants.DefenseArm.OFFSET);
25
26 defenseArm = new CANTalon(Constants.DefenseArm.ARM_PORT);
27 defenseHand = new CANTalon(Constants.DefenseArm.HAND_PORT);
28 }
29
30 public double getArmPotAngle() {
31 return defenseArmPotentiometer.get();
32 }
33
34 public double getHandPotAngle() {
35 return defenseHandPotentiometer.get();
36 }
37
38 public double getDistance(int desiredArmLocation) {
39 return potAngles[desiredArmLocation];
40 }
41
42 public Double[] putInValues() {
43 for (int i = 0; i < 3; i++) {
44 potAngles[i] = (double) (45 * i);
45 }
46 return potAngles;
47 }
48
49 /***
50 * This method sets the voltage of the arm motor. The range is from [-1,1]. A
51 * negative voltage makes the direction of the motor go backwards.
52 *
53 * @param speed
54 * The voltage that you set the motor at. The range of the voltage of
55 * the arm motor is from [-1,1]. A
56 * negative voltage makes the direction of the motor go backwards.
57 */
58
59 public void setArmSpeed(double speed) {
60 if (speed > 1)
61 speed = 1;
62 else if (speed < -1)
63 speed = -1;
64
65 defenseArm.set(speed);
66 }
67
68 /***
69 * This method sets the voltage of the hand motor. The range is from [-1,1]. A
70 * negative voltage makes the direction of the motor go backwards.
71 *
72 * @param speed
73 * The voltage that you set the motor at. The range of the voltage of
74 * the hand motor is from [-1,1]. A
75 * negative voltage makes the direction of the motor go backwards.
76 */
77
78 public void setHandSpeed(double speed) {
79 if (speed > 1)
80 speed = 1;
81 else if (speed < -1)
82 speed = -1;
83
84 defenseHand.set(speed);
85 }
86
87 public void moveArmDown(int levelsToDegrees) {
88 // to move arm down levels
89 if (levelsToDegrees > 0 & levelsToDegrees < 45) {
90 levelsToDegrees = 0;
91 if (levelsToDegrees > 45 & levelsToDegrees < 90) {
92 levelsToDegrees = 45;
93
94 }
95 }
96 }
97
98 public void moveArmTo(int levelsToDegrees) {
99
100 }
101
102 public void moveArmUp(int levelsToDegrees) {
103 // to move arm up levels
104 if (levelsToDegrees < 45 & levelsToDegrees > 0) {
105 levelsToDegrees = 45;
106 if (levelsToDegrees < 90 & levelsToDegrees > 45) {
107 levelsToDegrees = 90;
108
109 }
110
111 }
112 }
113
114 @Override
115 protected void initDefaultCommand() {
116 }
117 }