package org.usfirst.frc.team3501.robot.subsystems;
import org.usfirst.frc.team3501.robot.Constants;
+import org.usfirst.frc.team3501.robot.Lidar;
+import org.usfirst.frc.team3501.robot.MathLib;
-import edu.wpi.first.wpilibj.AnalogPotentiometer;
import edu.wpi.first.wpilibj.CANTalon;
import edu.wpi.first.wpilibj.CounterBase.EncodingType;
import edu.wpi.first.wpilibj.DoubleSolenoid;
import edu.wpi.first.wpilibj.Encoder;
+import edu.wpi.first.wpilibj.I2C;
import edu.wpi.first.wpilibj.command.Subsystem;
/***
private Lidar lidar;
public Shooter() {
- leftLidar = new AnalogPotentiometer(0);
- rightLidar = new AnalogPotentiometer(0);
shooter = new CANTalon(Constants.Shooter.PORT);
hood = new DoubleSolenoid(Constants.Shooter.HOOD_FORWARD,
Constants.Shooter.HOOD_REVERSE);
encoder = new Encoder(Constants.Shooter.ENCODER_PORT_A,
Constants.Shooter.ENCODER_PORT_B, false, EncodingType.k4X);
- lidar = new Lidar(Constants.Shooter.LIDAR_I2C_PORT);
+ lidar = new Lidar(I2C.Port.kMXP);
}
/***
}
public void setSpeed(double speed) {
- if (speed > 1.0)
- shooter.set(1.0);
- else if (speed < -1.0)
- shooter.set(-1.0);
- else
- shooter.set(speed);
+ speed = MathLib.constrain(speed, -1, 1);
+ shooter.set(speed);
}
public void stop() {
}
// Punch Commands
- public void extendPunch() {
+ public void punch() {
punch.set(Constants.Shooter.punch);
}
punch.set(Constants.Shooter.retract);
}
- @Override
- protected void initDefaultCommand() {
+ public boolean isHoodOpen() {
+ return hood.get() == Constants.Shooter.open;
}
public void openHood() {