new claw servo working

This commit is contained in:
Aarav
2023-03-23 15:45:08 -06:00
parent 731f14ecb8
commit 947b65481a
6 changed files with 165 additions and 38 deletions
@@ -6,41 +6,62 @@ import java.util.TimerTask;
import com.revrobotics.CANSparkMax;
import edu.wpi.first.wpilibj.PWM;
import edu.wpi.first.wpilibj.Servo;
import edu.wpi.first.wpilibj2.command.SubsystemBase;
public class Claw extends SubsystemBase {
private final PWM m_leftMotor;
private final PWM m_rightMotor;
// private final PWM m_leftMotor;
// private final PWM m_rightMotor;
private final Servo m_leftMotor;
private final Servo m_rightMotor;
private final CANSparkMax m_spinnyspin;
private boolean m_open = false;
// Opens claw
public Claw(PWM leftMotor, PWM rightMotor, CANSparkMax spinnyspin) {
// public Claw(PWM leftMotor, PWM rightMotor, CANSparkMax spinnyspin) {
// m_leftMotor = leftMotor;
// m_rightMotor = rightMotor;
// m_spinnyspin = spinnyspin;
// setClaw(false);
// }
public Claw(Servo leftMotor, Servo rightMotor, CANSparkMax spinnyspin) {
m_leftMotor = leftMotor;
m_rightMotor = rightMotor;
m_spinnyspin = spinnyspin;
setClaw(true);
setClaw(false);
}
public void setClaw(boolean open) {
// Open claw
m_open = open;
m_leftMotor.setRaw(m_open ? 1000 : 2000);
m_rightMotor.setRaw(m_open ? 2000 : 1000);
// m_leftMotor.setRaw(m_open ? 1000 : 2000);
// m_rightMotor.setRaw(m_open ? 2000 : 1000);
if (!m_open) {
m_spinnyspin.set(-0.2);
new Timer().schedule(new TimerTask() {
@Override
public void run() {
nospinnyspin();
}
}, 750);
}
// m_leftMotor.setBounds(4000, 20000, 2000, 0, 0);
m_leftMotor.setAngle(m_open ? 0 : 180);
m_rightMotor.setAngle(m_open ? 180 : 0);
// m_leftMotor.setRaw(m_open ? 0 : 4000);
// m_rightMotor.setRaw(m_open ? 4000 : 0);
// m_leftMotor.setRaw(m_open ? 1500 : 2000);
// m_rightMotor.setRaw(m_open ? 1500 : 1000);
if (m_open)
m_spinnyspin.set(0.2);
else
m_spinnyspin.set(-0.2);
new Timer().schedule(new TimerTask() {
@Override
public void run() {
nospinnyspin();
}
}, 750);
}
public void toggle() {