From 69b38d4e79d3193a5cfae7a899df3a5188f1b5de Mon Sep 17 00:00:00 2001 From: samuel desharnais Date: Tue, 23 Jan 2024 20:14:34 -0500 Subject: [PATCH 1/7] --- src/main/java/frc/robot/command/GuiderHaut.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/command/GuiderHaut.java b/src/main/java/frc/robot/command/GuiderHaut.java index d431475..586ebbd 100644 --- a/src/main/java/frc/robot/command/GuiderHaut.java +++ b/src/main/java/frc/robot/command/GuiderHaut.java @@ -40,6 +40,6 @@ public class GuiderHaut extends Command { // Returns true when the command should end. @Override public boolean isFinished() { - return false; + return guideur.haut()==true; } } From fb4429ae77f5d420e44e6a9a92a971d134b878b6 Mon Sep 17 00:00:00 2001 From: samuel desharnais Date: Tue, 23 Jan 2024 20:15:11 -0500 Subject: [PATCH 2/7] guideur --- src/main/java/frc/robot/command/GuiderBas.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/command/GuiderBas.java b/src/main/java/frc/robot/command/GuiderBas.java index a279897..4d6e5d2 100644 --- a/src/main/java/frc/robot/command/GuiderBas.java +++ b/src/main/java/frc/robot/command/GuiderBas.java @@ -40,6 +40,6 @@ public class GuiderBas extends Command { // Returns true when the command should end. @Override public boolean isFinished() { - return false; + return guideur.bas()==true; } } From 2351bfd79fec1ede1fb91b135158a52c5236fafb Mon Sep 17 00:00:00 2001 From: OlivierDubois Date: Tue, 23 Jan 2024 20:20:37 -0500 Subject: [PATCH 3/7] commencer commande acc et baleeuse --- src/main/java/frc/robot/command/Balayer.java | 40 +++++++++++++++++++ .../frc/robot/subsystem/Accumulateur.java | 6 ++- .../java/frc/robot/subsystem/Balayeuse.java | 1 + 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 src/main/java/frc/robot/command/Balayer.java diff --git a/src/main/java/frc/robot/command/Balayer.java b/src/main/java/frc/robot/command/Balayer.java new file mode 100644 index 0000000..d4e9972 --- /dev/null +++ b/src/main/java/frc/robot/command/Balayer.java @@ -0,0 +1,40 @@ +// 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.command; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystem.Accumulateur; +import frc.robot.subsystem.Balayeuse; + +public class Balayer extends Command { + private Balayeuse balayeuse; + private Accumulateur accumulateur; + /** Creates a new Balayer. */ + public Balayer(Balayeuse balayeuse, Accumulateur accumulateur) { + this.balayeuse = balayeuse; + addRequirements(balayeuse, accumulateur); + // 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() { + + } + + // 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/subsystem/Accumulateur.java b/src/main/java/frc/robot/subsystem/Accumulateur.java index 04b7821..23038ca 100644 --- a/src/main/java/frc/robot/subsystem/Accumulateur.java +++ b/src/main/java/frc/robot/subsystem/Accumulateur.java @@ -12,7 +12,7 @@ import frc.robot.Constants; public class Accumulateur extends SubsystemBase { /** Creates a new Accumulateur. */ - public Accumulateur() {} + final WPI_TalonSRX Moteuracc2 = new WPI_TalonSRX(Constants.Moteuracc2); final WPI_TalonSRX Moteuracc = new WPI_TalonSRX(Constants.Moteuracc); @@ -22,6 +22,10 @@ public class Accumulateur extends SubsystemBase { public void moteuraccfollow(){Moteuracc.follow(Moteuracc2); Moteuracc.setInverted(true);} public boolean limitswitch1(){return limitacc.get();} public boolean limitswitch2(){return limitacc2.get();} + public Accumulateur() {} + public void Accumuler(double vitesse){Moteuracc.set(vitesse);} + public void Accumuler2(double vitesse){Moteuracc2.set(vitesse);} + @Override public void periodic() { // This method will be called once per scheduler run diff --git a/src/main/java/frc/robot/subsystem/Balayeuse.java b/src/main/java/frc/robot/subsystem/Balayeuse.java index bf971ab..625bb2d 100644 --- a/src/main/java/frc/robot/subsystem/Balayeuse.java +++ b/src/main/java/frc/robot/subsystem/Balayeuse.java @@ -16,6 +16,7 @@ public class Balayeuse extends SubsystemBase { public Balayeuse() {} final WPI_TalonSRX roue = new WPI_TalonSRX(Constants.roue); final TalonSRX etoile = new TalonSRX(Constants.etoile); + public void Accumulation(double vitesse){roue.set(vitesse);} public void balayeuse(){etoile.follow(roue); etoile.setInverted(true);} @Override From 5e44778df54573f5b93d47dd43b9eba712614740 Mon Sep 17 00:00:00 2001 From: samuel desharnais Date: Wed, 24 Jan 2024 18:28:35 -0500 Subject: [PATCH 4/7] --- src/main/java/frc/robot/Constants.java | 9 +++++++-- src/main/java/frc/robot/subsystem/Grimpeur.java | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/Constants.java b/src/main/java/frc/robot/Constants.java index ca8a00f..8c918b3 100644 --- a/src/main/java/frc/robot/Constants.java +++ b/src/main/java/frc/robot/Constants.java @@ -42,12 +42,17 @@ public class Constants { public static int ArriereDroit = 6; public static int ArriereGauche = 7; - // Limit switsh + // Limit switch public static int guideurhaut = 23; public static int guideurbas = 24; public static int limitacc = 25; public static int limitacc2 = 76; public static int limithaut = 28; public static int limitbas = 29; - + + //piston + public static int pistondroiteouvre= 30; + public static int pistondroiteferme= 31; + public static int pistondgaucheouvre= 32; + public static int pistondgauchferme= 32; } diff --git a/src/main/java/frc/robot/subsystem/Grimpeur.java b/src/main/java/frc/robot/subsystem/Grimpeur.java index 447132b..aa1aa2e 100644 --- a/src/main/java/frc/robot/subsystem/Grimpeur.java +++ b/src/main/java/frc/robot/subsystem/Grimpeur.java @@ -9,6 +9,10 @@ import com.revrobotics.CANSparkMax; import com.revrobotics.CANSparkLowLevel.MotorType; import edu.wpi.first.wpilibj.DigitalInput; +import edu.wpi.first.wpilibj.DoubleSolenoid; +import edu.wpi.first.wpilibj.PneumaticsModuleType; +import edu.wpi.first.wpilibj.Solenoid; +import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants; @@ -21,6 +25,8 @@ public class Grimpeur extends SubsystemBase { // limit switch final DigitalInput limitdroite = new DigitalInput(Constants.limithaut); final DigitalInput limitgauche = new DigitalInput(Constants.limitbas); + final DoubleSolenoid pistondroite= new DoubleSolenoid(PneumaticsModuleType.CTREPCM, Constants.pistondroiteouvre, Constants.pistondroiteouvre); + final DoubleSolenoid pistondgauche= new DoubleSolenoid(PneumaticsModuleType.CTREPCM, Constants.pistondgaucheouvre, Constants.pistondroiteouvre); //fonction public void droit(double vitesse){ grimpeurd.set(vitesse); @@ -40,10 +46,19 @@ public void resetencodeurd(){ public void resetencodeurg(){ grimpeurg.getEncoder().setPosition(0); } + public AHRS gyroscope = new AHRS(); public double getpitch(){ return gyroscope.getPitch(); } + public void pistonouvre(){ + pistondroite.set(Value.kForward); + pistondgauche.set(Value.kForward); + } + public void pistonferme(){ + pistondroite.set(Value.kReverse); + pistondgauche.set(Value.kReverse); + } @Override public void periodic() { // This method will be called once per scheduler run From 78d284d0d19f7eaf7f7fddbed2014cc860d41f49 Mon Sep 17 00:00:00 2001 From: samuel desharnais Date: Wed, 24 Jan 2024 19:32:23 -0500 Subject: [PATCH 5/7] --- .../java/frc/robot/command/GrimpeurHaut.java | 38 +++++++++++++++++++ .../java/frc/robot/subsystem/Grimpeur.java | 1 - 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 src/main/java/frc/robot/command/GrimpeurHaut.java diff --git a/src/main/java/frc/robot/command/GrimpeurHaut.java b/src/main/java/frc/robot/command/GrimpeurHaut.java new file mode 100644 index 0000000..840c475 --- /dev/null +++ b/src/main/java/frc/robot/command/GrimpeurHaut.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.command; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystem.Grimpeur; + +public class GrimpeurHaut extends Command { + private Grimpeur grimpeur; + /** Creates a new GrimpeurHaut. */ + public GrimpeurHaut(Grimpeur grimpeur) { + this.grimpeur = grimpeur; + addRequirements(grimpeur); + // 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() { + + } + + // 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/subsystem/Grimpeur.java b/src/main/java/frc/robot/subsystem/Grimpeur.java index aa1aa2e..ed02bda 100644 --- a/src/main/java/frc/robot/subsystem/Grimpeur.java +++ b/src/main/java/frc/robot/subsystem/Grimpeur.java @@ -11,7 +11,6 @@ import com.revrobotics.CANSparkLowLevel.MotorType; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj.DoubleSolenoid; import edu.wpi.first.wpilibj.PneumaticsModuleType; -import edu.wpi.first.wpilibj.Solenoid; import edu.wpi.first.wpilibj.DoubleSolenoid.Value; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants; From 82caa36322606bee72f9999cf0a60fa2679f4373 Mon Sep 17 00:00:00 2001 From: OlivierDubois Date: Wed, 24 Jan 2024 19:34:02 -0500 Subject: [PATCH 6/7] Balayer et debalayer + menage --- src/main/java/frc/robot/command/Balayer.java | 22 ++++++---- .../java/frc/robot/command/Debalayer.java | 42 +++++++++++++++++++ .../frc/robot/subsystem/Accumulateur.java | 23 ++++++---- .../java/frc/robot/subsystem/Balayeuse.java | 15 +++++-- 4 files changed, 84 insertions(+), 18 deletions(-) create mode 100644 src/main/java/frc/robot/command/Debalayer.java diff --git a/src/main/java/frc/robot/command/Balayer.java b/src/main/java/frc/robot/command/Balayer.java index d4e9972..d13cb6d 100644 --- a/src/main/java/frc/robot/command/Balayer.java +++ b/src/main/java/frc/robot/command/Balayer.java @@ -13,11 +13,9 @@ public class Balayer extends Command { private Accumulateur accumulateur; /** Creates a new Balayer. */ public Balayer(Balayeuse balayeuse, Accumulateur accumulateur) { - this.balayeuse = balayeuse; - addRequirements(balayeuse, accumulateur); + this.balayeuse = balayeuse; + addRequirements(balayeuse, accumulateur);} // Use addRequirements() here to declare subsystem dependencies. - } - // Called when the command is initially scheduled. @Override public void initialize() {} @@ -25,16 +23,26 @@ public class Balayer extends Command { // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { - + if(accumulateur.limitswitch()){ + balayeuse.balaye(0); + accumulateur.Accumuler(0); } + else{ + balayeuse.balaye(0.6); + accumulateur.Accumuler(0.6); + } +} // Called once the command ends or is interrupted. @Override - public void end(boolean interrupted) {} + public void end(boolean interrupted) { + balayeuse.balaye(0); + accumulateur.Accumuler(0); + } // Returns true when the command should end. @Override public boolean isFinished() { - return false; + return accumulateur.limitswitch()==true; } } diff --git a/src/main/java/frc/robot/command/Debalayer.java b/src/main/java/frc/robot/command/Debalayer.java new file mode 100644 index 0000000..1ec655c --- /dev/null +++ b/src/main/java/frc/robot/command/Debalayer.java @@ -0,0 +1,42 @@ +// 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.command; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystem.Accumulateur; +import frc.robot.subsystem.Balayeuse; + +public class Debalayer extends Command { + private Balayeuse balayeuse; + private Accumulateur accumulateur; + /** Creates a new Balayer. */ + public Debalayer(Balayeuse balayeuse, Accumulateur accumulateur) { + this.balayeuse = balayeuse; + addRequirements(balayeuse, accumulateur);} + // 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() { + balayeuse.balaye(-0.6); + accumulateur.Accumuler(-0.6); +} + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + balayeuse.balaye(0); + accumulateur.Accumuler(0); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/subsystem/Accumulateur.java b/src/main/java/frc/robot/subsystem/Accumulateur.java index 23038ca..9c51357 100644 --- a/src/main/java/frc/robot/subsystem/Accumulateur.java +++ b/src/main/java/frc/robot/subsystem/Accumulateur.java @@ -16,15 +16,22 @@ public class Accumulateur extends SubsystemBase { final WPI_TalonSRX Moteuracc2 = new WPI_TalonSRX(Constants.Moteuracc2); final WPI_TalonSRX Moteuracc = new WPI_TalonSRX(Constants.Moteuracc); - final DigitalInput limitacc = new DigitalInput(Constants.limitacc); - final DigitalInput limitacc2 = new DigitalInput(Constants.limitacc2); - public void Deaccumuler(double vitesse){Moteuracc2.set(vitesse);} - public void moteuraccfollow(){Moteuracc.follow(Moteuracc2); Moteuracc.setInverted(true);} - public boolean limitswitch1(){return limitacc.get();} - public boolean limitswitch2(){return limitacc2.get();} + final DigitalInput limitacc = new DigitalInput(Constants.limitacc); + public void Deaccumuler(double vitesse){ + Moteuracc2.set(vitesse); + } + public void moteuraccfollow(){ + Moteuracc.follow(Moteuracc2); + Moteuracc.setInverted(true); + } + public boolean limitswitch(){ + return limitacc.get(); + } public Accumulateur() {} - public void Accumuler(double vitesse){Moteuracc.set(vitesse);} - public void Accumuler2(double vitesse){Moteuracc2.set(vitesse);} + public void Accumuler(double vitesse){ + Moteuracc.set(vitesse); + Moteuracc2.set(vitesse); + } @Override public void periodic() { diff --git a/src/main/java/frc/robot/subsystem/Balayeuse.java b/src/main/java/frc/robot/subsystem/Balayeuse.java index 625bb2d..8fc5987 100644 --- a/src/main/java/frc/robot/subsystem/Balayeuse.java +++ b/src/main/java/frc/robot/subsystem/Balayeuse.java @@ -15,10 +15,19 @@ public class Balayeuse extends SubsystemBase { public Balayeuse() {} final WPI_TalonSRX roue = new WPI_TalonSRX(Constants.roue); - final TalonSRX etoile = new TalonSRX(Constants.etoile); + final WPI_TalonSRX etoile = new WPI_TalonSRX(Constants.etoile); - public void Accumulation(double vitesse){roue.set(vitesse);} - public void balayeuse(){etoile.follow(roue); etoile.setInverted(true);} + public void Accumulation(double vitesse){ + roue.set(vitesse); + } + public void balayeuse(){ + etoile.follow(roue); + etoile.setInverted(true); + } + public void balaye(double vitesse){ + roue.set(vitesse); + etoile.set(vitesse); + } @Override public void periodic() { // This method will be called once per scheduler run From ded9cadcadf16bb254a35e270bd5a479af15865e Mon Sep 17 00:00:00 2001 From: OlivierDubois Date: Thu, 25 Jan 2024 18:44:56 -0500 Subject: [PATCH 7/7] Deaccumuler --- .../java/frc/robot/command/Deaccumuler.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main/java/frc/robot/command/Deaccumuler.java diff --git a/src/main/java/frc/robot/command/Deaccumuler.java b/src/main/java/frc/robot/command/Deaccumuler.java new file mode 100644 index 0000000..68e16ba --- /dev/null +++ b/src/main/java/frc/robot/command/Deaccumuler.java @@ -0,0 +1,40 @@ +// 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.command; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystem.Accumulateur; + +public class Deaccumuler extends Command { + private Accumulateur accumulateur; + /** Creates a new Deaccumuler. */ + public Deaccumuler(Accumulateur accumulateur) { + // Use addRequirements() here to declare subsystem dependencies. + this.accumulateur = accumulateur; + addRequirements(accumulateur); + } + + // 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() { + accumulateur.Accumuler(0.5); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + accumulateur.Accumuler(0); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +}