diff --git a/src/main/java/frc/robot/Constants.java b/src/main/java/frc/robot/Constants.java index 3800657..44ac11c 100644 --- a/src/main/java/frc/robot/Constants.java +++ b/src/main/java/frc/robot/Constants.java @@ -12,7 +12,9 @@ public class Constants { // pneumatique public static int pistonpinceouvre = 0; public static int pistonpinceferme = 1; - public static int actuateur = 4; + public static int actuateur = 2; + public static int brakedroit = 3; + public static int brakegauche = 4; // DIO public static int limitbd = 0; public static int limitbg = 2; diff --git a/src/main/java/frc/robot/commands/GratteBaisser.java b/src/main/java/frc/robot/commands/GratteBaisser.java new file mode 100644 index 0000000..b423033 --- /dev/null +++ b/src/main/java/frc/robot/commands/GratteBaisser.java @@ -0,0 +1,38 @@ +// 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; + +import edu.wpi.first.wpilibj2.command.CommandBase; +import frc.robot.subsystems.Gratte; + +public class GratteBaisser extends CommandBase { + private Gratte gratte; + /** Creates a new GratteBaisser. */ + public GratteBaisser(Gratte gratte) { + this.gratte = gratte; + // Use addRequirements() here to declare subsystem dependencies. + addRequirements(gratte); + } + + // 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() { + gratte.baiser(0.5); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) {} + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/commands/GratteMonte.java b/src/main/java/frc/robot/commands/GratteMonte.java new file mode 100644 index 0000000..15f2b31 --- /dev/null +++ b/src/main/java/frc/robot/commands/GratteMonte.java @@ -0,0 +1,38 @@ +// 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; + +import edu.wpi.first.wpilibj2.command.CommandBase; +import frc.robot.subsystems.Gratte; + +public class GratteMonte extends CommandBase { + private Gratte gratte; + /** Creates a new GratteMonte. */ + public GratteMonte(Gratte gratte) { + this.gratte = gratte; + // Use addRequirements() here to declare subsystem dependencies. + addRequirements(gratte); + } + + // 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() { + gratte.Lever(0.5); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) {} + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/subsystems/BasePilotable.java b/src/main/java/frc/robot/subsystems/BasePilotable.java index 1379188..1fb04da 100644 --- a/src/main/java/frc/robot/subsystems/BasePilotable.java +++ b/src/main/java/frc/robot/subsystems/BasePilotable.java @@ -6,6 +6,9 @@ package frc.robot.subsystems; import com.revrobotics.CANSparkMax; import com.revrobotics.CANSparkMaxLowLevel.MotorType; + +import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.PneumaticsModuleType; import edu.wpi.first.wpilibj.drive.DifferentialDrive; import edu.wpi.first.wpilibj.motorcontrol.MotorControllerGroup; import edu.wpi.first.wpilibj2.command.SubsystemBase; @@ -16,7 +19,8 @@ public class BasePilotable extends SubsystemBase { final CANSparkMax avantgauche = new CANSparkMax(Constants.avantgauche, MotorType.kBrushless); final CANSparkMax arrieredroit = new CANSparkMax(Constants.arrieredroit, MotorType.kBrushless); final CANSparkMax arrieregauche = new CANSparkMax(Constants.arrieregauche, MotorType.kBrushless); - + private DoubleSolenoid brakedroit = new DoubleSolenoid(PneumaticsModuleType.CTREPCM,Constants.pistonpinceouvre, Constants.pistonpinceferme); + private DoubleSolenoid brakegauche = new DoubleSolenoid(PneumaticsModuleType.CTREPCM,Constants.pistonpinceouvre, Constants.pistonpinceferme); final MotorControllerGroup droit = new MotorControllerGroup(avantdroit, arrieredroit); final MotorControllerGroup gauche = new MotorControllerGroup(avantgauche, arrieregauche); diff --git a/src/main/java/frc/robot/subsystems/Gratte.java b/src/main/java/frc/robot/subsystems/Gratte.java index 2058cd3..e7e1cb6 100644 --- a/src/main/java/frc/robot/subsystems/Gratte.java +++ b/src/main/java/frc/robot/subsystems/Gratte.java @@ -19,8 +19,8 @@ import frc.robot.Constants; public class Gratte extends SubsystemBase { - private WPI_TalonSRX baisserGratte = new WPI_TalonSRX(Constants.leverGratte); - private WPI_TalonSRX leverGratte = new WPI_TalonSRX(Constants.baisserGratte); + private WPI_TalonSRX Gratted = new WPI_TalonSRX(Constants.leverGratte); + private WPI_TalonSRX Gratteg = new WPI_TalonSRX(Constants.baisserGratte); private DigitalInput limithd = new DigitalInput(Constants.limithd); private DigitalInput limithg = new DigitalInput(Constants.limithg); private DigitalInput limitbd = new DigitalInput(Constants.limitbd); @@ -41,9 +41,13 @@ public class Gratte extends SubsystemBase { } /** Creates a new Gratte. */ public Gratte() {} - public void BaisserLever(double vitesse){ - baisserGratte.set(vitesse); - leverGratte.set(vitesse); + public void Lever(double vitesse){ + Gratted.set(vitesse); + Gratteg.set(vitesse); + } + public void baiser(double vitesse){ + Gratted.set(-vitesse); + Gratteg.set(-vitesse); } @Override public void periodic() {