projects
/
3501
/
2017steamworks
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
competition fixes
[3501/2017steamworks]
/
src
/
org
/
usfirst
/
frc
/
team3501
/
robot
/
subsystems
/
Intake.java
diff --git
a/src/org/usfirst/frc/team3501/robot/subsystems/Intake.java
b/src/org/usfirst/frc/team3501/robot/subsystems/Intake.java
index 1c891d4837c2709b94335327784e0963cf51107b..b6c82d484f5f56b03dac38dd6332496972937910 100644
(file)
--- a/
src/org/usfirst/frc/team3501/robot/subsystems/Intake.java
+++ b/
src/org/usfirst/frc/team3501/robot/subsystems/Intake.java
@@
-1,47
+1,75
@@
package org.usfirst.frc.team3501.robot.subsystems;
package org.usfirst.frc.team3501.robot.subsystems;
+import org.usfirst.frc.team3501.robot.Constants;
+import org.usfirst.frc.team3501.robot.MathLib;
+
+import com.ctre.CANTalon;
+
import edu.wpi.first.wpilibj.command.Subsystem;
import edu.wpi.first.wpilibj.command.Subsystem;
-/***
- *
- *
+/**
* @author Meeta
* @author Meeta
- *
*/
public class Intake extends Subsystem {
*/
public class Intake extends Subsystem {
- public Intake() {
+ private static Intake intake = null;
+ private CANTalon intakeWheel;
+ public static final double INTAKE_SPEED = 1;
+ public static final double REVERSE_SPEED = -1;
+ public Intake() {
+ intakeWheel = new CANTalon(Constants.Intake.INTAKE_ROLLER_PORT);
}
}
- /**
- * Runs the intake continuously
+ /***
+ * It gets the intake instance, and if intake has not been initialized, then
+ * it will be initialized.
+ *
+ * @returns intake
*/
*/
- public void RunContinous() {
+ public static Intake getIntake() {
+ if (intake == null) {
+ intake = new Intake();
+ }
+ return intake;
+ }
+
+ @Override
+ protected void initDefaultCommand() {
}
}
- /**
- * Starts running the intake for a specific period of time that the user
- * inputs.
+ /***
+ * Sets speed of intake wheel to input speed
*
*
- * @param
timeToMove
- *
in seconds
+ * @param
speed
+ *
from -1 to 1
*/
*/
- public void RunIntake(double timeToMove) {
-
+ public void setSpeed(double speed) {
+ speed = MathLib.restrictToRange(speed, -1.0, 1.0);
+ intakeWheel.set(speed);
}
}
- /**
- *
Stops the intake
+ /**
*
+ *
Runs the intake wheel at the set intake speed.
*/
*/
- public void
Stop
Intake() {
-
+ public void
run
Intake() {
+ setSpeed(INTAKE_SPEED);
}
}
- @Override
- protected void initDefaultCommand() {
- // TODO Auto-generated method stub
+ /***
+ * Stops the intake wheel by setting intake wheel's speed to 0.
+ */
+ public void stopIntake() {
+ setSpeed(0);
+ }
+ /***
+ * Purpose is to release all balls from the ball container to the outside of
+ * the robot. Reverses intake wheel by setting wheel speed to reverse speed.
+ *
+ */
+ public void runReverseIntake() {
+ setSpeed(REVERSE_SPEED);
}
}
}
}