Files
Rebuilt-2026/src/main/java/frc/robot/subsystems/Grimpeur.java
samuel desharnais 41f6e4747f competiton
2026-04-11 08:16:06 -04:00

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
}
}