From 82caa36322606bee72f9999cf0a60fa2679f4373 Mon Sep 17 00:00:00 2001 From: OlivierDubois Date: Wed, 24 Jan 2024 19:34:02 -0500 Subject: [PATCH 1/5] 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 2/5] 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; + } +} From 378a553f4cb4887e6ec5f08afa247ea73a0713d5 Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Thu, 25 Jan 2024 19:01:45 -0500 Subject: [PATCH 3/5] a --- src/main/{ => java/frc/robot}/LimelightHelpers.java | 0 src/main/java/frc/robot/subsystem/Limelight.java | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) rename src/main/{ => java/frc/robot}/LimelightHelpers.java (100%) diff --git a/src/main/LimelightHelpers.java b/src/main/java/frc/robot/LimelightHelpers.java similarity index 100% rename from src/main/LimelightHelpers.java rename to src/main/java/frc/robot/LimelightHelpers.java diff --git a/src/main/java/frc/robot/subsystem/Limelight.java b/src/main/java/frc/robot/subsystem/Limelight.java index ab82165..cd51219 100644 --- a/src/main/java/frc/robot/subsystem/Limelight.java +++ b/src/main/java/frc/robot/subsystem/Limelight.java @@ -5,11 +5,12 @@ package frc.robot.subsystem; import edu.wpi.first.wpilibj2.command.SubsystemBase; +import frc.robot.LimelightHelpers; public class Limelight extends SubsystemBase { /** Creates a new Limelight. */ public Limelight() { - + LimelightHelpers.getTV(getName()); } From 7d716d857411872717a250acd4dbda8168c1762f Mon Sep 17 00:00:00 2001 From: Antoine PerreaultE Date: Thu, 25 Jan 2024 20:05:20 -0500 Subject: [PATCH 4/5] dfsg --- src/main/java/frc/robot/RobotContainer.java | 6 +++++- src/main/java/frc/robot/subsystem/Limelight.java | 11 +++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/main/java/frc/robot/RobotContainer.java b/src/main/java/frc/robot/RobotContainer.java index b22c47b..7303389 100644 --- a/src/main/java/frc/robot/RobotContainer.java +++ b/src/main/java/frc/robot/RobotContainer.java @@ -45,7 +45,11 @@ public class RobotContainer { },drive)); } - private void configureBindings() {} + private void configureBindings() { + + + + } public Command getAutonomousCommand() { return Commands.print("No autonomous command configured"); diff --git a/src/main/java/frc/robot/subsystem/Limelight.java b/src/main/java/frc/robot/subsystem/Limelight.java index cd51219..e26d582 100644 --- a/src/main/java/frc/robot/subsystem/Limelight.java +++ b/src/main/java/frc/robot/subsystem/Limelight.java @@ -4,14 +4,21 @@ package frc.robot.subsystem; +import edu.wpi.first.networktables.NetworkTableInstance; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.LimelightHelpers; + public class Limelight extends SubsystemBase { /** Creates a new Limelight. */ public Limelight() { - LimelightHelpers.getTV(getName()); - } + + boolean tv = LimelightHelpers.getTV("No_name"); + + double tx = LimelightHelpers.getTX("No_name"); + double ty = LimelightHelpers.getTY("No_name"); + double ta = LimelightHelpers.getTA("No_name"); +} @Override From 1d6fe9fc3c53269fd64970462316ba91023dd2b4 Mon Sep 17 00:00:00 2001 From: OlivierDubois Date: Thu, 25 Jan 2024 20:06:27 -0500 Subject: [PATCH 5/5] Lancer --- src/main/java/frc/robot/command/Lancer.java | 18 ++++++++++++++++-- .../java/frc/robot/subsystem/Accumulateur.java | 12 +++++++++--- src/main/java/frc/robot/subsystem/Lanceur.java | 10 +++++----- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/src/main/java/frc/robot/command/Lancer.java b/src/main/java/frc/robot/command/Lancer.java index feea8c0..804f019 100644 --- a/src/main/java/frc/robot/command/Lancer.java +++ b/src/main/java/frc/robot/command/Lancer.java @@ -4,12 +4,22 @@ package frc.robot.command; +import com.revrobotics.CANSparkMax; + import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.subsystem.Accumulateur; +import frc.robot.subsystem.Lanceur; public class Lancer extends Command { /** Creates a new Lanceur. */ + + private Lanceur lancer; + private Lanceur lancer2; + private Lanceur lancer3; + private Lanceur lancer4; public Lancer() { // Use addRequirements() here to declare subsystem dependencies. + addRequirements(lancer,lancer2,lancer3,lancer4); } // Called when the command is initially scheduled. @@ -18,11 +28,15 @@ public class Lancer extends Command { // Called every time the scheduler runs while the command is scheduled. @Override - public void execute() {} + public void execute() { + lancer.lancer(0.3); + } // Called once the command ends or is interrupted. @Override - public void end(boolean interrupted) {} + public void end(boolean interrupted) { + lancer.lancer(0); + } // Returns true when the command should end. @Override diff --git a/src/main/java/frc/robot/subsystem/Accumulateur.java b/src/main/java/frc/robot/subsystem/Accumulateur.java index 9c51357..2ae3c97 100644 --- a/src/main/java/frc/robot/subsystem/Accumulateur.java +++ b/src/main/java/frc/robot/subsystem/Accumulateur.java @@ -9,14 +9,18 @@ import com.ctre.phoenix.motorcontrol.can.WPI_TalonSRX; import edu.wpi.first.wpilibj.DigitalInput; import edu.wpi.first.wpilibj2.command.SubsystemBase; import frc.robot.Constants; +import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard;import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab; +import edu.wpi.first.wpilibj.shuffleboard.BuiltInLayouts; +import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardLayout; public class Accumulateur extends SubsystemBase { /** Creates a new Accumulateur. */ - + ShuffleboardTab dashboard = Shuffleboard.getTab("dashboard"); 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 limitacc = new DigitalInput(Constants.limitacc); + public void Deaccumuler(double vitesse){ Moteuracc2.set(vitesse); } @@ -27,7 +31,9 @@ public class Accumulateur extends SubsystemBase { public boolean limitswitch(){ return limitacc.get(); } - public Accumulateur() {} + public Accumulateur() { + dashboard.addBoolean("limitacc", this::limitswitch); + } public void Accumuler(double vitesse){ Moteuracc.set(vitesse); Moteuracc2.set(vitesse); diff --git a/src/main/java/frc/robot/subsystem/Lanceur.java b/src/main/java/frc/robot/subsystem/Lanceur.java index 260f263..7ae2c2c 100644 --- a/src/main/java/frc/robot/subsystem/Lanceur.java +++ b/src/main/java/frc/robot/subsystem/Lanceur.java @@ -18,13 +18,13 @@ public class Lanceur extends SubsystemBase { public Lanceur() {} final CANSparkMax lancer = new CANSparkMax(Constants.lanceur, MotorType.kBrushless); final CANSparkMax lancer2 = new CANSparkMax(Constants.lancer2, MotorType.kBrushless); - final CANSparkMax lancer3 = new CANSparkMax(Constants.lanceur, MotorType.kBrushless); - final CANSparkMax lancer4 = new CANSparkMax(Constants.lancer2, MotorType.kBrushless); + final CANSparkMax lancer3 = new CANSparkMax(Constants.lancer3, MotorType.kBrushless); + final CANSparkMax lancer4 = new CANSparkMax(Constants.lancer4, MotorType.kBrushless); - public void lancer(double vitesse){ - lancer.set(vitesse); + public void lancer(double vitesse){ + lancer.set(vitesse); } - public void lanceur(){ + public void lanceur(){ lancer2.follow(lancer); lancer3.follow(lancer); lancer4.follow(lancer);