67 lines
2.0 KiB
Java
67 lines
2.0 KiB
Java
// Copyright (c) FIRST and other WPILib contributors.
|
|
// Open Source Software; you can modify and/or share it under the terms of
|
|
// the WPILib BSD license file in the root directory of this project.
|
|
|
|
package frc.robot.subsystems;
|
|
|
|
import com.revrobotics.spark.SparkMax;
|
|
import com.revrobotics.spark.SparkLowLevel.MotorType;
|
|
|
|
import edu.wpi.first.networktables.GenericEntry;
|
|
import edu.wpi.first.wpilibj.DigitalInput;
|
|
import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard;
|
|
import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab;
|
|
import edu.wpi.first.wpilibj2.command.SubsystemBase;
|
|
|
|
public class Grimpeur extends SubsystemBase {
|
|
ShuffleboardTab teb = Shuffleboard.getTab("teb");
|
|
SparkMax grimpeur1 = new SparkMax(3, MotorType.kBrushless);
|
|
SparkMax grimpeur2 = new SparkMax(12, MotorType.kBrushless);
|
|
|
|
// SparkMaxConfig slaveConfig = new SparkMaxConfig();
|
|
DigitalInput limit = new DigitalInput(0);
|
|
private GenericEntry EncodeurGrimpeur = teb.add("Position haut grimpeur", 100).getEntry();
|
|
|
|
// public void Grimper(double vitesse){
|
|
// grimpeur1.configure(slaveConfig, ResetMode.kNoResetSafeParameters,
|
|
// PersistMode.kPersistParameters);
|
|
// grimpeur2.configure(slaveConfig.follow(grimpeur1),
|
|
// ResetMode.kNoResetSafeParameters, PersistMode.kPersistParameters);
|
|
// grimpeur1.set(vitesse);
|
|
// }
|
|
public void GrimperGauche(double vitesse) {
|
|
grimpeur1.set(vitesse);
|
|
}
|
|
|
|
public void GrimperDroit(double vitesse) {
|
|
grimpeur2.set(vitesse);
|
|
}
|
|
|
|
public double Position() {
|
|
return grimpeur1.getEncoder().getPosition();
|
|
}
|
|
|
|
public void Reset() {
|
|
grimpeur1.getEncoder().setPosition(0);
|
|
}
|
|
|
|
public boolean Limit() {
|
|
return limit.get();
|
|
}
|
|
|
|
public double PositionFinal() {
|
|
return EncodeurGrimpeur.getDouble(100);
|
|
}
|
|
|
|
/** Creates a new Grimpeur. */
|
|
public Grimpeur() {
|
|
teb.addDouble("encodeur grimpeur", this::Position);
|
|
teb.addBoolean("limit grimpeur", this::Limit);
|
|
}
|
|
|
|
@Override
|
|
public void periodic() {
|
|
// This method will be called once per scheduler run
|
|
}
|
|
}
|