From 1583a95f52b7e15a6a457cdb69e1b5a7870939a9 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 27 Jan 2025 18:40:58 -0500 Subject: [PATCH 01/26] il grimpe --- src/main/java/frc/robot/commands/Grimper.java | 46 +++++++++++++++++++ .../java/frc/robot/subsystems/Grimpeur.java | 4 +- 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 src/main/java/frc/robot/commands/Grimper.java diff --git a/src/main/java/frc/robot/commands/Grimper.java b/src/main/java/frc/robot/commands/Grimper.java new file mode 100644 index 0000000..11c4304 --- /dev/null +++ b/src/main/java/frc/robot/commands/Grimper.java @@ -0,0 +1,46 @@ +// 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.Command; +import frc.robot.subsystems.Grimpeur; + +/* 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 Grimper extends Command { + private Grimpeur grimpeur; + /** Creates a new Grimper. */ + public Grimper(Grimper grimper) { + this.grimpeur = new 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() { + if(grimpeur.stop()==true){ + grimpeur.grimpe(0); + } + else{ + grimpeur.grimpe(0.5); + } + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + grimpeur.grimpe(0); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return grimpeur.stop()==true; + } +} diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 7e55e0b..826da60 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -16,8 +16,8 @@ public class Grimpeur extends SubsystemBase { public void grimpe(double vitesse){ grimpeur.set(vitesse); } - final void stop(){ - limit1.get(); + public boolean stop(){ + return limit1.get(); } @Override public void periodic() { From 9653ca7205fd8da35c8664872eded9c2c24ee1ca Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 27 Jan 2025 19:12:49 -0500 Subject: [PATCH 02/26] grimpe --- src/main/java/frc/robot/subsystems/Grimpeur.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 826da60..7d0561f 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -4,14 +4,17 @@ package frc.robot.subsystems; +import com.revrobotics.spark.SparkMax; +import com.revrobotics.spark.SparkLowLevel.MotorType; + import edu.wpi.first.wpilibj.DigitalInput; -import edu.wpi.first.wpilibj.motorcontrol.Spark; + import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final Spark grimpeur = new Spark(0); + final SparkMax grimpeur = new SparkMax(0,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(0); public void grimpe(double vitesse){ grimpeur.set(vitesse); From 7e40328af43d20cc0f4ed344f7ffc0bebefeae44 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Tue, 28 Jan 2025 17:51:17 -0500 Subject: [PATCH 03/26] il grimpe mieux --- .../{Grimper.java => GrimperHaut.java} | 5 ++- .../java/frc/robot/commands/GrimpeurBas.java | 44 +++++++++++++++++++ .../java/frc/robot/subsystems/Grimpeur.java | 6 +++ 3 files changed, 53 insertions(+), 2 deletions(-) rename src/main/java/frc/robot/commands/{Grimper.java => GrimperHaut.java} (92%) create mode 100644 src/main/java/frc/robot/commands/GrimpeurBas.java diff --git a/src/main/java/frc/robot/commands/Grimper.java b/src/main/java/frc/robot/commands/GrimperHaut.java similarity index 92% rename from src/main/java/frc/robot/commands/Grimper.java rename to src/main/java/frc/robot/commands/GrimperHaut.java index 11c4304..e928ca4 100644 --- a/src/main/java/frc/robot/commands/Grimper.java +++ b/src/main/java/frc/robot/commands/GrimperHaut.java @@ -8,10 +8,10 @@ import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Grimpeur; /* 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 Grimper extends Command { +public class GrimperHaut extends Command { private Grimpeur grimpeur; /** Creates a new Grimper. */ - public Grimper(Grimper grimper) { + public GrimperHaut(GrimperHaut grimper) { this.grimpeur = new Grimpeur(); addRequirements(grimpeur); // Use addRequirements() here to declare subsystem dependencies. @@ -26,6 +26,7 @@ public class Grimper extends Command { public void execute() { if(grimpeur.stop()==true){ grimpeur.grimpe(0); + grimpeur.reset(); } else{ grimpeur.grimpe(0.5); diff --git a/src/main/java/frc/robot/commands/GrimpeurBas.java b/src/main/java/frc/robot/commands/GrimpeurBas.java new file mode 100644 index 0000000..d6b071f --- /dev/null +++ b/src/main/java/frc/robot/commands/GrimpeurBas.java @@ -0,0 +1,44 @@ +// 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.Command; +import frc.robot.subsystems.Grimpeur; + +/* 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 GrimpeurBas extends Command { + private Grimpeur grimpeur; + /** Creates a new GrimpeurBas. */ + public GrimpeurBas(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() { + if(grimpeur.encodeur()>=500){ + grimpeur.grimpe(0); + } + grimpeur.grimpe(-0.5); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + grimpeur.grimpe(0); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 7d0561f..09ca682 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -22,6 +22,12 @@ public class Grimpeur extends SubsystemBase { public boolean stop(){ return limit1.get(); } + public double encodeur(){ + return grimpeur.getEncoder().getPosition(); + } + public void reset(){ + grimpeur.getEncoder().setPosition(0); + } @Override public void periodic() { // This method will be called once per scheduler run From 12b5e6954e451779eb76cf2bac0e2efce4cb5318 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Tue, 28 Jan 2025 18:31:02 -0500 Subject: [PATCH 04/26] --- src/main/java/frc/robot/{commands => command}/GrimperHaut.java | 2 +- src/main/java/frc/robot/{commands => command}/GrimpeurBas.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename src/main/java/frc/robot/{commands => command}/GrimperHaut.java (98%) rename src/main/java/frc/robot/{commands => command}/GrimpeurBas.java (97%) diff --git a/src/main/java/frc/robot/commands/GrimperHaut.java b/src/main/java/frc/robot/command/GrimperHaut.java similarity index 98% rename from src/main/java/frc/robot/commands/GrimperHaut.java rename to src/main/java/frc/robot/command/GrimperHaut.java index e928ca4..37279f0 100644 --- a/src/main/java/frc/robot/commands/GrimperHaut.java +++ b/src/main/java/frc/robot/command/GrimperHaut.java @@ -2,7 +2,7 @@ // 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; +package frc.robot.command; import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Grimpeur; diff --git a/src/main/java/frc/robot/commands/GrimpeurBas.java b/src/main/java/frc/robot/command/GrimpeurBas.java similarity index 97% rename from src/main/java/frc/robot/commands/GrimpeurBas.java rename to src/main/java/frc/robot/command/GrimpeurBas.java index d6b071f..cf31f6a 100644 --- a/src/main/java/frc/robot/commands/GrimpeurBas.java +++ b/src/main/java/frc/robot/command/GrimpeurBas.java @@ -2,7 +2,7 @@ // 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; +package frc.robot.command; import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Grimpeur; From 982db168335e63ab4227639024e61500641505d1 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Tue, 28 Jan 2025 19:22:43 -0500 Subject: [PATCH 05/26] grimpeMieux --- src/main/java/frc/robot/command/GrimpeurBas.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/command/GrimpeurBas.java b/src/main/java/frc/robot/command/GrimpeurBas.java index cf31f6a..9f4a210 100644 --- a/src/main/java/frc/robot/command/GrimpeurBas.java +++ b/src/main/java/frc/robot/command/GrimpeurBas.java @@ -24,9 +24,12 @@ public class GrimpeurBas extends Command { // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { - if(grimpeur.encodeur()>=500){ + if(grimpeur.encodeur()>=500 && grimpeur.encodeur()<=510){ grimpeur.grimpe(0); } + else if(grimpeur.encodeur()>=510){ + grimpeur.grimpe(0.5); + } grimpeur.grimpe(-0.5); } From 831b9fec7556f61f1a1ef18bb4830175ce2f25a4 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 29 Jan 2025 19:51:59 -0500 Subject: [PATCH 06/26] Touche grinpeur --- src/main/java/frc/robot/RobotContainer.java | 12 +++++++++++- src/main/java/frc/robot/command/GrimperHaut.java | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index de2c9d0..44802c3 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -6,13 +6,23 @@ package frc.robot; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.Commands; +import edu.wpi.first.wpilibj2.command.button.CommandXboxController; +import frc.robot.command.GrimperHaut; +import frc.robot.command.GrimpeurBas; +import frc.robot.subsystems.Grimpeur; public class RobotContainer { + CommandXboxController manette1 = new CommandXboxController(0); + CommandXboxController manette2 = new CommandXboxController(0); + Grimpeur grimpeur = new Grimpeur(); public RobotContainer() { configureBindings(); } - private void configureBindings() {} + private void configureBindings() { + manette1.leftBumper().whileTrue(new GrimperHaut(grimpeur)); + manette1.rightBumper().whileTrue(new GrimpeurBas(grimpeur)); + } public Command getAutonomousCommand() { return Commands.print("No autonomous command configured"); diff --git a/src/main/java/frc/robot/command/GrimperHaut.java b/src/main/java/frc/robot/command/GrimperHaut.java index 37279f0..5951e90 100644 --- a/src/main/java/frc/robot/command/GrimperHaut.java +++ b/src/main/java/frc/robot/command/GrimperHaut.java @@ -11,7 +11,7 @@ import frc.robot.subsystems.Grimpeur; public class GrimperHaut extends Command { private Grimpeur grimpeur; /** Creates a new Grimper. */ - public GrimperHaut(GrimperHaut grimper) { + public GrimperHaut(Grimpeur grimpeur) { this.grimpeur = new Grimpeur(); addRequirements(grimpeur); // Use addRequirements() here to declare subsystem dependencies. From 0c7cfc9d4c6399d3380b0349ebf49b4f9f4e79b8 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:20:20 -0500 Subject: [PATCH 07/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 09ca682..f754c11 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,8 +14,8 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(0,MotorType.kBrushless); - final DigitalInput limit1 = new DigitalInput(0); + final SparkMax grimpeur = new SparkMax(1,MotorType.kBrushless); + final DigitalInput limit1 = new DigitalInput(2); public void grimpe(double vitesse){ grimpeur.set(vitesse); } From f01f327c81466771897ba6220cfcc9e49703bc5c Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:22:01 -0500 Subject: [PATCH 08/26] id --- simgui-ds.json | 97 +++++++++++++++++++ .../java/frc/robot/subsystems/Grimpeur.java | 2 +- 2 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 simgui-ds.json diff --git a/simgui-ds.json b/simgui-ds.json new file mode 100644 index 0000000..4a63cc1 --- /dev/null +++ b/simgui-ds.json @@ -0,0 +1,97 @@ +{ + "System Joysticks": { + "window": { + "enabled": false + } + }, + "keyboardJoysticks": [ + { + "axisConfig": [ + { + "decKey": 65, + "incKey": 68 + }, + { + "decKey": 87, + "incKey": 83 + }, + { + "decKey": 69, + "decayRate": 0.0, + "incKey": 82, + "keyRate": 0.009999999776482582 + } + ], + "axisCount": 3, + "buttonCount": 4, + "buttonKeys": [ + 90, + 88, + 67, + 86 + ], + "povConfig": [ + { + "key0": 328, + "key135": 323, + "key180": 322, + "key225": 321, + "key270": 324, + "key315": 327, + "key45": 329, + "key90": 326 + } + ], + "povCount": 1 + }, + { + "axisConfig": [ + { + "decKey": 74, + "incKey": 76 + }, + { + "decKey": 73, + "incKey": 75 + } + ], + "axisCount": 2, + "buttonCount": 4, + "buttonKeys": [ + 77, + 44, + 46, + 47 + ], + "povCount": 0 + }, + { + "axisConfig": [ + { + "decKey": 263, + "incKey": 262 + }, + { + "decKey": 265, + "incKey": 264 + } + ], + "axisCount": 2, + "buttonCount": 6, + "buttonKeys": [ + 260, + 268, + 266, + 261, + 269, + 267 + ], + "povCount": 0 + }, + { + "axisCount": 0, + "buttonCount": 0, + "povCount": 0 + } + ] +} diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index f754c11..3a48bfa 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(1,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(7,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(2); public void grimpe(double vitesse){ grimpeur.set(vitesse); From 345eb83d39ef33547df44a41987a2851bcf3cbfb Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:23:17 -0500 Subject: [PATCH 09/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 3a48bfa..2443db1 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(7,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(5,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(2); public void grimpe(double vitesse){ grimpeur.set(vitesse); From 8a7f10ec64ca0d3641836a27745a1b8dcc56a8a9 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:24:08 -0500 Subject: [PATCH 10/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 2443db1..b734228 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(5,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(10,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(2); public void grimpe(double vitesse){ grimpeur.set(vitesse); From d44aea512d27e34fbe8be5aae0d99f8b90fed149 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:27:30 -0500 Subject: [PATCH 11/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index b734228..a67ad2c 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -15,7 +15,7 @@ public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} final SparkMax grimpeur = new SparkMax(10,MotorType.kBrushless); - final DigitalInput limit1 = new DigitalInput(2); + final DigitalInput limit1 = new DigitalInput(3); public void grimpe(double vitesse){ grimpeur.set(vitesse); } From 7be1b69ece5663cad7751a8ddf2bbdbc8e26af30 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:31:31 -0500 Subject: [PATCH 12/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index a67ad2c..8539e5d 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(10,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(1,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(3); public void grimpe(double vitesse){ grimpeur.set(vitesse); From 6437b9f152e01b0ac8fbeb635c673be200291fb8 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:35:44 -0500 Subject: [PATCH 13/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index 8539e5d..bc5d37b 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(1,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(8,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(3); public void grimpe(double vitesse){ grimpeur.set(vitesse); From a54ebb16e9593ab5613fa7ecc9ba110794a4bda2 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:39:16 -0500 Subject: [PATCH 14/26] id --- src/main/java/frc/robot/RobotContainer.java | 2 +- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 44802c3..bb2adaa 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -13,7 +13,7 @@ import frc.robot.subsystems.Grimpeur; public class RobotContainer { CommandXboxController manette1 = new CommandXboxController(0); - CommandXboxController manette2 = new CommandXboxController(0); + CommandXboxController manette2 = new CommandXboxController(1); Grimpeur grimpeur = new Grimpeur(); public RobotContainer() { configureBindings(); diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index bc5d37b..a67ad2c 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(8,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(10,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(3); public void grimpe(double vitesse){ grimpeur.set(vitesse); From a984625e176f386ae5816285425013b536f0f1c7 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:48:23 -0500 Subject: [PATCH 15/26] marche --- src/main/java/frc/robot/command/GrimperHaut.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/command/GrimperHaut.java b/src/main/java/frc/robot/command/GrimperHaut.java index 5951e90..0330626 100644 --- a/src/main/java/frc/robot/command/GrimperHaut.java +++ b/src/main/java/frc/robot/command/GrimperHaut.java @@ -12,7 +12,7 @@ public class GrimperHaut extends Command { private Grimpeur grimpeur; /** Creates a new Grimper. */ public GrimperHaut(Grimpeur grimpeur) { - this.grimpeur = new Grimpeur(); + this.grimpeur = grimpeur; addRequirements(grimpeur); // Use addRequirements() here to declare subsystem dependencies. } From 0f81dd39e9597ddad0a9b1126e2b0023b9fd8aa1 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 3 Feb 2025 18:52:32 -0500 Subject: [PATCH 16/26] ils ont amener le deux par quatre --- src/main/java/frc/robot/command/GrimpeurBas.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/command/GrimpeurBas.java b/src/main/java/frc/robot/command/GrimpeurBas.java index 9f4a210..062de4e 100644 --- a/src/main/java/frc/robot/command/GrimpeurBas.java +++ b/src/main/java/frc/robot/command/GrimpeurBas.java @@ -30,7 +30,8 @@ public class GrimpeurBas extends Command { else if(grimpeur.encodeur()>=510){ grimpeur.grimpe(0.5); } - grimpeur.grimpe(-0.5); + else{grimpeur.grimpe(-0.5); + } } // Called once the command ends or is interrupted. From 3669e079bdf2f05115592dd97c5c3b549ca2d73f Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Thu, 6 Feb 2025 17:49:41 -0500 Subject: [PATCH 17/26] command -> commands --- src/main/java/frc/robot/RobotContainer.java | 4 ++-- .../java/frc/robot/{command => commands}/GrimperHaut.java | 2 +- .../java/frc/robot/{command => commands}/GrimpeurBas.java | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) rename src/main/java/frc/robot/{command => commands}/GrimperHaut.java (97%) rename src/main/java/frc/robot/{command => commands}/GrimpeurBas.java (98%) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index bb2adaa..5e95786 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -7,8 +7,8 @@ package frc.robot; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.Commands; import edu.wpi.first.wpilibj2.command.button.CommandXboxController; -import frc.robot.command.GrimperHaut; -import frc.robot.command.GrimpeurBas; +import frc.robot.commands.GrimperHaut; +import frc.robot.commands.GrimpeurBas; import frc.robot.subsystems.Grimpeur; public class RobotContainer { diff --git a/src/main/java/frc/robot/command/GrimperHaut.java b/src/main/java/frc/robot/commands/GrimperHaut.java similarity index 97% rename from src/main/java/frc/robot/command/GrimperHaut.java rename to src/main/java/frc/robot/commands/GrimperHaut.java index 0330626..29abdf8 100644 --- a/src/main/java/frc/robot/command/GrimperHaut.java +++ b/src/main/java/frc/robot/commands/GrimperHaut.java @@ -2,7 +2,7 @@ // 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; +package frc.robot.commands; import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Grimpeur; diff --git a/src/main/java/frc/robot/command/GrimpeurBas.java b/src/main/java/frc/robot/commands/GrimpeurBas.java similarity index 98% rename from src/main/java/frc/robot/command/GrimpeurBas.java rename to src/main/java/frc/robot/commands/GrimpeurBas.java index 062de4e..73cd93f 100644 --- a/src/main/java/frc/robot/command/GrimpeurBas.java +++ b/src/main/java/frc/robot/commands/GrimpeurBas.java @@ -2,7 +2,7 @@ // 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; +package frc.robot.commands; import edu.wpi.first.wpilibj2.command.Command; import frc.robot.subsystems.Grimpeur; From eb141ac2bad04f1635da50b44cb4ed22ded7e80f Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Mon, 17 Feb 2025 18:45:04 -0500 Subject: [PATCH 18/26] leds --- src/main/java/frc/robot/RobotContainer.java | 4 +- .../java/frc/robot/commands/GrimperHaut.java | 13 +++++- src/main/java/frc/robot/commands/RainBow.java | 41 +++++++++++++++++++ .../java/frc/robot/subsystems/Bougie.java | 38 +++++++++++++++++ 4 files changed, 93 insertions(+), 3 deletions(-) create mode 100644 src/main/java/frc/robot/commands/RainBow.java create mode 100644 src/main/java/frc/robot/subsystems/Bougie.java diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 5e95786..a990732 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -9,18 +9,20 @@ import edu.wpi.first.wpilibj2.command.Commands; import edu.wpi.first.wpilibj2.command.button.CommandXboxController; import frc.robot.commands.GrimperHaut; import frc.robot.commands.GrimpeurBas; +import frc.robot.subsystems.Bougie; import frc.robot.subsystems.Grimpeur; public class RobotContainer { CommandXboxController manette1 = new CommandXboxController(0); CommandXboxController manette2 = new CommandXboxController(1); Grimpeur grimpeur = new Grimpeur(); + Bougie bougie = new Bougie(); public RobotContainer() { configureBindings(); } private void configureBindings() { - manette1.leftBumper().whileTrue(new GrimperHaut(grimpeur)); + manette1.leftBumper().whileTrue(new GrimperHaut(grimpeur,bougie)); manette1.rightBumper().whileTrue(new GrimpeurBas(grimpeur)); } diff --git a/src/main/java/frc/robot/commands/GrimperHaut.java b/src/main/java/frc/robot/commands/GrimperHaut.java index 29abdf8..ad0ebf0 100644 --- a/src/main/java/frc/robot/commands/GrimperHaut.java +++ b/src/main/java/frc/robot/commands/GrimperHaut.java @@ -5,15 +5,18 @@ package frc.robot.commands; import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystems.Bougie; import frc.robot.subsystems.Grimpeur; /* 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 GrimperHaut extends Command { private Grimpeur grimpeur; + private Bougie bougie; /** Creates a new Grimper. */ - public GrimperHaut(Grimpeur grimpeur) { + public GrimperHaut(Grimpeur grimpeur, Bougie bougie) { this.grimpeur = grimpeur; - addRequirements(grimpeur); + this.bougie = bougie; + addRequirements(grimpeur,bougie); // Use addRequirements() here to declare subsystem dependencies. } @@ -27,9 +30,11 @@ public class GrimperHaut extends Command { if(grimpeur.stop()==true){ grimpeur.grimpe(0); grimpeur.reset(); + bougie.RainBow(); } else{ grimpeur.grimpe(0.5); + bougie.RainBowStop(); } } @@ -37,6 +42,10 @@ public class GrimperHaut extends Command { @Override public void end(boolean interrupted) { grimpeur.grimpe(0); + if(grimpeur.stop()){ + bougie.RainBow(); + } + } // Returns true when the command should end. diff --git a/src/main/java/frc/robot/commands/RainBow.java b/src/main/java/frc/robot/commands/RainBow.java new file mode 100644 index 0000000..37f2d68 --- /dev/null +++ b/src/main/java/frc/robot/commands/RainBow.java @@ -0,0 +1,41 @@ +// 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.Command; +import frc.robot.subsystems.Bougie; + +/* 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 RainBow extends Command { + /** Creates a new RainBow. */ + private Bougie bougie; + public RainBow(Bougie bougie) { + this.bougie = bougie; + addRequirements(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() { + bougie.RainBow(); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + bougie.RainBowStop(); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/subsystems/Bougie.java b/src/main/java/frc/robot/subsystems/Bougie.java new file mode 100644 index 0000000..9876824 --- /dev/null +++ b/src/main/java/frc/robot/subsystems/Bougie.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.subsystems; + +import com.ctre.phoenix.led.CANdle; +import com.ctre.phoenix.led.CANdleConfiguration; +import com.ctre.phoenix.led.RainbowAnimation; + +import edu.wpi.first.wpilibj2.command.SubsystemBase; + +public class Bougie extends SubsystemBase { + CANdle candle = new CANdle(5); + CANdleConfiguration config = new CANdleConfiguration(); + RainbowAnimation rainbowAnim = new RainbowAnimation(1, 0.5, 64); + /** Creates a new Bougie. */ + public Bougie() { + config.brightnessScalar = 0.5; + candle.configAllSettings(config); + } + public void Rouge() { + candle.setLEDs(255, 0, 0); + } + public void Vert() { + candle.setLEDs(0, 255, 0); + } + public void Bleu() { + candle.setLEDs(0, 0, 255); + } + public void RainBow(){candle.animate(rainbowAnim);} + public void RainBowStop(){candle.animate(null);} + @Override + public void periodic() { + // This method will be called once per scheduler run + } +} + From 583413ec5f153b3ed6a7e7891e8ca62536921a73 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Sat, 22 Feb 2025 11:44:53 -0500 Subject: [PATCH 19/26] id --- src/main/java/frc/robot/subsystems/Grimpeur.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/subsystems/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index a67ad2c..d8c06d5 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -14,7 +14,7 @@ import edu.wpi.first.wpilibj2.command.SubsystemBase; public class Grimpeur extends SubsystemBase { /** Creates a new Grimpeur. */ public Grimpeur() {} - final SparkMax grimpeur = new SparkMax(10,MotorType.kBrushless); + final SparkMax grimpeur = new SparkMax(21,MotorType.kBrushless); final DigitalInput limit1 = new DigitalInput(3); public void grimpe(double vitesse){ grimpeur.set(vitesse); From cfc6ba9479b7810de15bb266a63e29b9626c12c0 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 16:53:12 -0500 Subject: [PATCH 20/26] grimpeur manuel --- src/main/java/frc/robot/RobotContainer.java | 4 ++ .../frc/robot/commands/GrimpeurManuel.java | 45 +++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 src/main/java/frc/robot/commands/GrimpeurManuel.java diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index a990732..f42bb51 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -6,6 +6,7 @@ package frc.robot; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.Commands; +import edu.wpi.first.wpilibj2.command.RunCommand; import edu.wpi.first.wpilibj2.command.button.CommandXboxController; import frc.robot.commands.GrimperHaut; import frc.robot.commands.GrimpeurBas; @@ -18,6 +19,9 @@ public class RobotContainer { Grimpeur grimpeur = new Grimpeur(); Bougie bougie = new Bougie(); public RobotContainer() { + grimpeur.setDefaultCommand(RunCommand( + grimpeur.grimpe(manette1.getLeftY()) + ,grimpeur)); configureBindings(); } diff --git a/src/main/java/frc/robot/commands/GrimpeurManuel.java b/src/main/java/frc/robot/commands/GrimpeurManuel.java new file mode 100644 index 0000000..3e2046c --- /dev/null +++ b/src/main/java/frc/robot/commands/GrimpeurManuel.java @@ -0,0 +1,45 @@ +// 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 java.util.function.DoubleSupplier; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystems.Grimpeur; + +/* 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 GrimpeurManuel extends Command { + private Grimpeur grimpeur; + private DoubleSupplier x; + /** Creates a new GrimpeurManuel. */ + public GrimpeurManuel(Grimpeur grimpeur,DoubleSupplier x) { + this.grimpeur = grimpeur; + this.x = x; + 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() { + grimpeur.grimpe(x.getAsDouble()); + } + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + grimpeur.grimpe(0); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} From 476df088eae9745cc01e837a3484fa0d64b8a053 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 16:54:56 -0500 Subject: [PATCH 21/26] grimpeur manuel --- src/main/java/frc/robot/RobotContainer.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index f42bb51..a1097a4 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -19,9 +19,9 @@ public class RobotContainer { Grimpeur grimpeur = new Grimpeur(); Bougie bougie = new Bougie(); public RobotContainer() { - grimpeur.setDefaultCommand(RunCommand( + grimpeur.setDefaultCommand(new RunCommand(()->{ grimpeur.grimpe(manette1.getLeftY()) - ,grimpeur)); + })); configureBindings(); } From 5b80c53963c4eb5a630a723a6c7703fbca849a96 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 16:56:38 -0500 Subject: [PATCH 22/26] grimpeur manuel --- src/main/java/frc/robot/RobotContainer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index a1097a4..3a3525b 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -21,7 +21,7 @@ public class RobotContainer { public RobotContainer() { grimpeur.setDefaultCommand(new RunCommand(()->{ grimpeur.grimpe(manette1.getLeftY()) - })); + },grimpeur)); configureBindings(); } From 7ffeb78c35d8bc9088a4596a252fe1561cc35b35 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 16:57:51 -0500 Subject: [PATCH 23/26] grimpeur manuel --- src/main/java/frc/robot/RobotContainer.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 3a3525b..baae4c4 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -4,6 +4,7 @@ package frc.robot; +import edu.wpi.first.math.MathUtil; import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.Commands; import edu.wpi.first.wpilibj2.command.RunCommand; @@ -20,8 +21,8 @@ public class RobotContainer { Bougie bougie = new Bougie(); public RobotContainer() { grimpeur.setDefaultCommand(new RunCommand(()->{ - grimpeur.grimpe(manette1.getLeftY()) - },grimpeur)); + grimpeur.grimpe(MathUtil.applyDeadband(manette2.getRightY(), 0.2)); + }, grimpeur)); configureBindings(); } From 77240d255ec42e5085e8e9d41061b9141b47c1a6 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 16:58:50 -0500 Subject: [PATCH 24/26] grimpeur manuel --- src/main/java/frc/robot/RobotContainer.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index baae4c4..4fe2fad 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -11,6 +11,7 @@ import edu.wpi.first.wpilibj2.command.RunCommand; import edu.wpi.first.wpilibj2.command.button.CommandXboxController; import frc.robot.commands.GrimperHaut; import frc.robot.commands.GrimpeurBas; +import frc.robot.commands.GrimpeurManuel; import frc.robot.subsystems.Bougie; import frc.robot.subsystems.Grimpeur; @@ -19,9 +20,10 @@ public class RobotContainer { CommandXboxController manette2 = new CommandXboxController(1); Grimpeur grimpeur = new Grimpeur(); Bougie bougie = new Bougie(); + GrimpeurManuel grimpeurManuel = new GrimpeurManuel(grimpeur, manette1::getLeftY); public RobotContainer() { grimpeur.setDefaultCommand(new RunCommand(()->{ - grimpeur.grimpe(MathUtil.applyDeadband(manette2.getRightY(), 0.2)); + grimpeur.grimpe(MathUtil.applyDeadband(manette2.getLeftY(), 0.2)); }, grimpeur)); configureBindings(); } From 9b86a0b975dfc94e4a8875bab9198f7e3e44ffd4 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 17:23:27 -0500 Subject: [PATCH 25/26] limit avec grimpeur manuel --- src/main/java/frc/robot/commands/GrimpeurManuel.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/frc/robot/commands/GrimpeurManuel.java b/src/main/java/frc/robot/commands/GrimpeurManuel.java index 3e2046c..31a404b 100644 --- a/src/main/java/frc/robot/commands/GrimpeurManuel.java +++ b/src/main/java/frc/robot/commands/GrimpeurManuel.java @@ -28,7 +28,13 @@ public class GrimpeurManuel extends Command { // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { - grimpeur.grimpe(x.getAsDouble()); + if(grimpeur.stop()){ + grimpeur.grimpe(0); + } + else{ + grimpeur.grimpe(x.getAsDouble()); + } + } // Called once the command ends or is interrupted. From 63e476c64e2d4c372992919a3c41092e70993d19 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Wed, 26 Feb 2025 19:09:33 -0500 Subject: [PATCH 26/26] Grimpeur, Fonctionne --- src/main/java/frc/robot/RobotContainer.java | 20 ++++++---- .../java/frc/robot/commands/GrimpeurBas.java | 8 ++-- .../frc/robot/commands/ResetGrimpeur.java | 39 +++++++++++++++++++ .../java/frc/robot/subsystems/Grimpeur.java | 11 ++++-- 4 files changed, 64 insertions(+), 14 deletions(-) create mode 100644 src/main/java/frc/robot/commands/ResetGrimpeur.java diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index 4fe2fad..1b29981 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -12,6 +12,7 @@ import edu.wpi.first.wpilibj2.command.button.CommandXboxController; import frc.robot.commands.GrimperHaut; import frc.robot.commands.GrimpeurBas; import frc.robot.commands.GrimpeurManuel; +import frc.robot.commands.ResetGrimpeur; import frc.robot.subsystems.Bougie; import frc.robot.subsystems.Grimpeur; @@ -20,20 +21,25 @@ public class RobotContainer { CommandXboxController manette2 = new CommandXboxController(1); Grimpeur grimpeur = new Grimpeur(); Bougie bougie = new Bougie(); - GrimpeurManuel grimpeurManuel = new GrimpeurManuel(grimpeur, manette1::getLeftY); + GrimpeurManuel grimpeurManuel = new GrimpeurManuel(grimpeur, manette2::getLeftY); public RobotContainer() { grimpeur.setDefaultCommand(new RunCommand(()->{ - grimpeur.grimpe(MathUtil.applyDeadband(manette2.getLeftY(), 0.2)); - }, grimpeur)); + if(grimpeur.stop()){ + grimpeur.grimpe(0); + } + else{ + grimpeur.grimpe(MathUtil.applyDeadband(manette2.getLeftY(), 0.2)); + }}, grimpeur)); configureBindings(); } - + private void configureBindings() { - manette1.leftBumper().whileTrue(new GrimperHaut(grimpeur,bougie)); - manette1.rightBumper().whileTrue(new GrimpeurBas(grimpeur)); + manette2.leftBumper().whileTrue(new GrimperHaut(grimpeur,bougie)); + manette2.rightBumper().whileTrue(new GrimpeurBas(grimpeur)); + manette2.a().whileTrue(new ResetGrimpeur(grimpeur)); } public Command getAutonomousCommand() { return Commands.print("No autonomous command configured"); } -} +} \ No newline at end of file diff --git a/src/main/java/frc/robot/commands/GrimpeurBas.java b/src/main/java/frc/robot/commands/GrimpeurBas.java index 73cd93f..d6d27f7 100644 --- a/src/main/java/frc/robot/commands/GrimpeurBas.java +++ b/src/main/java/frc/robot/commands/GrimpeurBas.java @@ -24,13 +24,13 @@ public class GrimpeurBas extends Command { // Called every time the scheduler runs while the command is scheduled. @Override public void execute() { - if(grimpeur.encodeur()>=500 && grimpeur.encodeur()<=510){ + if(grimpeur.encodeur()>=-38.5 && grimpeur.encodeur()<=-39.19){ grimpeur.grimpe(0); } - else if(grimpeur.encodeur()>=510){ - grimpeur.grimpe(0.5); + else if(grimpeur.encodeur()>=-38.5){ + grimpeur.grimpe(-0.5); } - else{grimpeur.grimpe(-0.5); + else{grimpeur.grimpe(0.5); } } diff --git a/src/main/java/frc/robot/commands/ResetGrimpeur.java b/src/main/java/frc/robot/commands/ResetGrimpeur.java new file mode 100644 index 0000000..b4e6978 --- /dev/null +++ b/src/main/java/frc/robot/commands/ResetGrimpeur.java @@ -0,0 +1,39 @@ +// 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.Command; +import frc.robot.subsystems.Grimpeur; + +/* 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 ResetGrimpeur extends Command { + private Grimpeur grimpeur; + /** Creates a new ResetGrimpeur. */ + public ResetGrimpeur(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() { + grimpeur.reset(); + } + + // 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/Grimpeur.java b/src/main/java/frc/robot/subsystems/Grimpeur.java index d8c06d5..759c4b3 100644 --- a/src/main/java/frc/robot/subsystems/Grimpeur.java +++ b/src/main/java/frc/robot/subsystems/Grimpeur.java @@ -8,14 +8,19 @@ import com.revrobotics.spark.SparkMax; import com.revrobotics.spark.SparkLowLevel.MotorType; 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 { /** Creates a new Grimpeur. */ - public Grimpeur() {} + ShuffleboardTab teb = Shuffleboard.getTab("teb"); + public Grimpeur() { + teb.addBoolean("limit grimpeur", this::stop); + teb.addDouble("encodeur grimpeur", this::encodeur); + } final SparkMax grimpeur = new SparkMax(21,MotorType.kBrushless); - final DigitalInput limit1 = new DigitalInput(3); + final DigitalInput limit1 = new DigitalInput(2); public void grimpe(double vitesse){ grimpeur.set(vitesse); }