// 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.commands.Elevateur; import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard; import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab; import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Bougie; import frc.robot.subsystems.Elevateur; import frc.robot.subsystems.Pince; /* You should consider using the more terse Command factories API instead https://docs.wpilib.org/en/stable/docs/software/commandbased/organizing-command-based.html#defining-commands */ public class StationPince extends Command { ShuffleboardTab teb = Shuffleboard.getTab("teb"); private Pince pince; private Elevateur elevateur; private Bougie bougie; /** Creates a new L2Pince. */ public StationPince(Pince pince,Elevateur elevateur, Bougie bougie) { this.elevateur = elevateur; this.pince = pince; this.bougie = bougie; addRequirements(pince, elevateur, bougie); // Use addRequirements() here to declare subsystem dependencies. } // Called when the command is initially scheduled. @Override public void initialize() { } // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { if(pince.emperagecoral() >= 18){ pince.x = true; } if(elevateur.position()<=-0.4 && elevateur.position()>= -0.5){ elevateur.vitesse(0); } else if(elevateur.position()>=-0.4){ elevateur.vitesse(-0.7); } else{ elevateur.vitesse(0.25); } if(pince.x){ pince.aspirecoral(0); bougie.Bleu(); pince.pivote(-0.2); if(pince.position()){ pince.pivote(0); } } else{ pince.aspirecoral(0.25); } if (!pince.x){ pince.pivote(-0.15); if(pince.encodeurpivot()>=10 && pince.encodeurpivot()<=11){ pince.pivote(0); } else if(pince.encodeurpivot()>=10.5){ pince.pivote(-0.15); } else{ pince.pivote(0.15); } } } // Called once the command ends or is interrupted. @Override public void end(boolean interrupted) { pince.pivote(0); pince.aspirecoral(0); elevateur.vitesse(0); pince.x =false; } // Returns true when the command should end. @Override public boolean isFinished() { return false; } }