1 package org
.usfirst
.frc
.team3501
.robot
.subsystems
;
3 import org
.usfirst
.frc
.team3501
.robot
.Constants
;
5 import edu
.wpi
.first
.wpilibj
.CANTalon
;
6 import edu
.wpi
.first
.wpilibj
.DoubleSolenoid
;
7 import edu
.wpi
.first
.wpilibj
.DoubleSolenoid
.Value
;
8 import edu
.wpi
.first
.wpilibj
.command
.Subsystem
;
10 public class Scaler
extends Subsystem
{
11 private DoubleSolenoid piston
;
12 private CANTalon winch
;
15 piston
= new DoubleSolenoid(Constants
.Scaler
.FORWARD_CHANNEL
,
16 Constants
.Scaler
.REVERSE_CHANNEL
);
17 winch
= new CANTalon(Constants
.Scaler
.WINCH_MOTOR
);
20 public Value
getSolenoidValue() {
24 public void liftScissorLift() {
25 piston
.set(DoubleSolenoid
.Value
.kReverse
);
28 public void lowerScissorLift() {
29 piston
.set(DoubleSolenoid
.Value
.kForward
);
32 public void engageHook() {
36 public void disengageHook() {
39 public void runWinch(double speed
) {
49 * This method returns boolean value true or false on whether piston is
53 * returns true if piston is extended, false if otherwise.
55 public boolean getPistonStatus() {
60 * This method sets the motor voltage for the scissor lift. The range is from
64 * The voltage that you set the motor at. The range of the voltage of
65 * the motor is from [-1,1].
67 public void setScalarSpeed(double speed
) {
72 * This method sets the piston status for the scissor lift.
73 * The piston can either be extended or not extended.
76 * The status of the piston.
77 * 0 for the piston to be extended, 1 for the piston to not be
81 public void setPistonStatus(int status
) {
86 protected void initDefaultCommand() {