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
CommitLineData
ebd3530c
YN
1package org.usfirst.frc.team3501.robot.subsystems;\r
2\r
da11cb45
YN
3import org.usfirst.frc.team3501.robot.Constants;\r
4\r
3f5489cc 5import edu.wpi.first.wpilibj.AnalogPotentiometer;\r
3d825b61 6import edu.wpi.first.wpilibj.CANTalon;\r
ebd3530c
YN
7import edu.wpi.first.wpilibj.command.Subsystem;\r
8\r
5585bd31 9public class DefenseArm extends Subsystem {\r
3f5489cc 10 // Defense arm related objects\r
68b22e83
YA
11 private AnalogPotentiometer defenseArmPotentiometer;\r
12 private AnalogPotentiometer defenseHandPotentiometer;\r
ae33aa8d
SC
13 private CANTalon defenseArm;\r
14 private CANTalon defenseHand;\r
68b22e83
YA
15 private double hookHeight;\r
16 private double footHeight;\r
da11cb45 17\r
3f5489cc
YN
18 // Defense arm specific constants that relate to the degrees per pulse value\r
19 // for the potentiometers\r
dae46a1d 20 // private final static double PULSES_PER_ROTATION = 1; // in pulses\r
f661626f 21\r
dc5aab20 22 // array;\r
8d2a8664 23\r
da11cb45 24 public DefenseArm() {\r
dae46a1d 25 defenseArmPotentiometer = new AnalogPotentiometer(\r
ae33aa8d
SC
26 Constants.DefenseArm.ARM_CHANNEL,\r
27 Constants.DefenseArm.FULL_RANGE,\r
28 Constants.DefenseArm.OFFSET);\r
a1a9b30f 29\r
ae33aa8d
SC
30 defenseArm = new CANTalon(Constants.DefenseArm.ARM_PORT);\r
31 defenseHand = new CANTalon(Constants.DefenseArm.HAND_PORT);\r
da11cb45 32 }\r
3f5489cc 33\r
ae33aa8d
SC
34 public double getArmPotAngle() {\r
35 return defenseArmPotentiometer.get();\r
f661626f
YA
36 }\r
37\r
ae33aa8d
SC
38 public double getHandPotAngle() {\r
39 return defenseHandPotentiometer.get();\r
68b22e83
YA
40 }\r
41\r
42 /***\r
43 * This method sets the voltage of the arm motor. The range is from [-1,1]. A\r
44 * negative voltage makes the direction of the motor go backwards.\r
45 *\r
46 * @param speed\r
47 * The voltage that you set the motor at. The range of the voltage of\r
48 * the arm motor is from [-1,1]. A\r
49 * negative voltage makes the direction of the motor go backwards.\r
50 */\r
51\r
ae33aa8d
SC
52 public void setArmSpeed(double speed) {\r
53 if (speed > 1)\r
54 speed = 1;\r
55 else if (speed < -1)\r
56 speed = -1;\r
dac91bff 57\r
ae33aa8d 58 defenseArm.set(speed);\r
68b22e83
YA
59 }\r
60\r
61 /***\r
62 * This method sets the voltage of the hand motor. The range is from [-1,1]. A\r
63 * negative voltage makes the direction of the motor go backwards.\r
64 *\r
65 * @param speed\r
66 * The voltage that you set the motor at. The range of the voltage of\r
67 * the hand motor is from [-1,1]. A\r
68 * negative voltage makes the direction of the motor go backwards.\r
69 */\r
a1a9b30f 70\r
ae33aa8d
SC
71 public void setHandSpeed(double speed) {\r
72 if (speed > 1)\r
73 speed = 1;\r
74 else if (speed < -1)\r
75 speed = -1;\r
76\r
77 defenseHand.set(speed);\r
dac91bff
YA
78 }\r
79\r
76273676
YN
80 @Override\r
81 protected void initDefaultCommand() {\r
82 }\r
ebd3530c 83}\r