package org.usfirst.frc.team3501.robot.commands.intake;
+import org.usfirst.frc.team3501.robot.subsystems.Intake;
+
import edu.wpi.first.wpilibj.command.Command;
/***
*
*/
public class RunContinuous extends Command {
+ // create setter method for speed, use setSpeed method to do end() by setting
+ // speed to 0
public RunContinuous() {
@Override
protected boolean isFinished() {
// TODO Auto-generated method stub
- return false;
+ return true;
}
// Called just before this Command runs the first time
@Override
protected void initialize() {
+
}
// Called repeatedly when this Command is scheduled to run
@Override
protected void execute() {
+
}
// Called once after isFinished returns true
@Override
protected void end() {
+ Intake.intake.setSpeed(0);
}
// Called when another command which requires one or more of the same
// subsystems is scheduled to run
@Override
protected void interrupted() {
+ end();
}
}
package org.usfirst.frc.team3501.robot.commands.intake;
+import org.usfirst.frc.team3501.robot.subsystems.Intake;
+
+import edu.wpi.first.wpilibj.Timer;
import edu.wpi.first.wpilibj.command.Command;
/**
*/
public class RunIntake extends Command {
private double timeToMove;
+ public Timer timer;
public RunIntake(double timeToMove) {
+ timer = new Timer();
this.timeToMove = timeToMove;
}
@Override
protected boolean isFinished() {
- // TODO Auto-generated method stub
- return false;
+ return timer.get() >= timeToMove;
}
// Called just before this Command runs the first time
// Called once after isFinished returns true
@Override
protected void end() {
+ Intake.intake.setSpeed(0);
}
// Called when another command which requires one or more of the same
// subsystems is scheduled to run
@Override
protected void interrupted() {
+ end();
}
}
package org.usfirst.frc.team3501.robot.commands.intake;
+import org.usfirst.frc.team3501.robot.subsystems.Intake;
+
import edu.wpi.first.wpilibj.command.Command;
/**
// Called once after isFinished returns true
@Override
protected void end() {
+ Intake.intake.setSpeed(0);
}
// Called when another command which requires one or more of the same
// subsystems is scheduled to run
@Override
protected void interrupted() {
+ end();
}
@Override
package org.usfirst.frc.team3501.robot.subsystems;
+import com.ctre.CANTalon;
+
import edu.wpi.first.wpilibj.command.Subsystem;
-/***
- *
- *
+/**
* @author Meeta
- *
*/
public class Intake extends Subsystem {
- public Intake() {
-
- }
-
- /**
- * Runs the intake continuously
- */
- public void RunContinous() {
+ public static Intake intake = null;
+ protected double speed = 0;
+ private CANTalon intakeWheel;
- }
-
- /**
- * Starts running the intake for a specific period of time that the user
- * inputs.
- *
- * @param timeToMove
- * in seconds
- */
- public void RunIntake(double timeToMove) {
+ // create speed of intake whee
+ public Intake() {
}
- /**
- * Stops the intake
- */
- public void StopIntake() {
-
+ public static Intake getIntake() {
+ if (intake == null) {
+ intake = new Intake();
+ }
+ return intake;
}
@Override
protected void initDefaultCommand() {
- // TODO Auto-generated method stub
}
+ public void setSpeed(double speed) {
+ this.speed = speed;
+ }
+
}