Compare commits
2 Commits
d73da286ed
...
873095e865
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
873095e865 | ||
|
|
a142290bd5 |
@@ -93,6 +93,7 @@ public class RobotContainer {
|
|||||||
.withRotationalRate(MathUtil.applyDeadband(-manette.getRightX()*Math.abs(-manette.getRightX())*MaxAngularRate, 0.05))
|
.withRotationalRate(MathUtil.applyDeadband(-manette.getRightX()*Math.abs(-manette.getRightX())*MaxAngularRate, 0.05))
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
manette.povUp().whileTrue(new LancerAuto(lanceur));
|
||||||
manette.a().whileTrue(new Lancer(lanceur,limeLight3G,balayeuse,led));
|
manette.a().whileTrue(new Lancer(lanceur,limeLight3G,balayeuse,led));
|
||||||
manette.y().whileTrue(new ModeOposer(lanceur, balayeuse));
|
manette.y().whileTrue(new ModeOposer(lanceur, balayeuse));
|
||||||
manette.x().whileTrue(new LancerBaseVitesse(lanceur, limeLight3, balayeuse, led));
|
manette.x().whileTrue(new LancerBaseVitesse(lanceur, limeLight3, balayeuse, led));
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ public class Aspirer extends Command {
|
|||||||
}
|
}
|
||||||
if(moyenneAmp < balayeuse.AmpMax()){
|
if(moyenneAmp < balayeuse.AmpMax()){
|
||||||
timer.reset();
|
timer.reset();
|
||||||
balayeuse.Balayer(0.5);
|
balayeuse.Balayer(-0.5);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
balayeuse.Balayer(0);
|
balayeuse.Balayer(0);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ public class DescendreGrimpeur extends Command {
|
|||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
if(!grimpeur.Limit()){
|
if(!grimpeur.Limit()){
|
||||||
grimpeur.Grimper(-0.2);
|
grimpeur.Grimper(-0.3);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
grimpeur.Reset();
|
grimpeur.Reset();
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ public class Lancer extends Command {
|
|||||||
// Called when the command is initially scheduled.
|
// Called when the command is initially scheduled.
|
||||||
@Override
|
@Override
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
pidController = new PIDController(0, 0,0, 0);
|
pidController = new PIDController(1, 0,0, 0);
|
||||||
timer.reset();
|
timer.reset();
|
||||||
timer.start();
|
timer.start();
|
||||||
temp = lanceur.Amp();
|
temp = lanceur.Amp();
|
||||||
@@ -45,10 +45,14 @@ public class Lancer extends Command {
|
|||||||
// Called every time the scheduler runs while the command is scheduled.
|
// Called every time the scheduler runs while the command is scheduled.
|
||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
|
double botx = 0;
|
||||||
|
double boty = 0;
|
||||||
double[] BotPose = new double[6];
|
double[] BotPose = new double[6];
|
||||||
|
if(limeLight3G.getV()){
|
||||||
BotPose = limeLight3G.getBotPoseBlue();
|
BotPose = limeLight3G.getBotPoseBlue();
|
||||||
double botx = BotPose[0];
|
botx = BotPose[0];
|
||||||
double boty = BotPose[1];
|
boty = BotPose[1];
|
||||||
|
}
|
||||||
int nbFois = 0;
|
int nbFois = 0;
|
||||||
|
|
||||||
double moyenneAmp = 0;
|
double moyenneAmp = 0;
|
||||||
@@ -62,21 +66,25 @@ public class Lancer extends Command {
|
|||||||
moyenneAmp += balayeuse.Amp() / nbFois;
|
moyenneAmp += balayeuse.Amp() / nbFois;
|
||||||
temp = balayeuse.Amp();
|
temp = balayeuse.Amp();
|
||||||
}
|
}
|
||||||
if(moyenneAmp > lanceur.AmpBas() && nbFois > 10){
|
// if(moyenneAmp > lanceur.AmpBas() && nbFois > 10){
|
||||||
timer.reset();
|
timer.reset();
|
||||||
balayeuse.Balayer(0.5);
|
balayeuse.Balayer(-0.5);
|
||||||
led.Jaune2();
|
// led.Jaune2();
|
||||||
}
|
// }
|
||||||
else{
|
// else{
|
||||||
|
|
||||||
|
double vitesse = 0.5;
|
||||||
|
if(limeLight3G.getV()){
|
||||||
//pythagore |
|
//pythagore |
|
||||||
// \/
|
// \/
|
||||||
double vitesse = Math.sqrt(Math.pow(Math.abs(4.625594-botx), 2) + Math.pow(Math.abs(4.034536-boty), 2));
|
vitesse = Math.sqrt(Math.pow(Math.abs(4.625594-botx), 2) + Math.pow(Math.abs(4.034536-boty), 2));
|
||||||
double output = pidController.calculate(lanceur.Vitesse(),vitesse);
|
}
|
||||||
|
double output = vitesse; /*pidController.calculate(lanceur.Vitesse(),vitesse);*/
|
||||||
lanceur.Lancer(output);
|
lanceur.Lancer(output);
|
||||||
if(lanceur.Vitesse() >= vitesse){
|
if(lanceur.Vitesse() >= vitesse){
|
||||||
lanceur.Demeler(0.5);
|
lanceur.Demeler(0.5);
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ public class LancerBaseVitesse extends Command {
|
|||||||
// Called when the command is initially scheduled.
|
// Called when the command is initially scheduled.
|
||||||
@Override
|
@Override
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
pidController = new PIDController(0, 0,0, 0);
|
pidController = new PIDController(1, 0,0, 0);
|
||||||
timer.reset();
|
timer.reset();
|
||||||
timer.start();
|
timer.start();
|
||||||
temp = lanceur.Amp();
|
temp = lanceur.Amp();
|
||||||
@@ -46,32 +46,32 @@ public class LancerBaseVitesse extends Command {
|
|||||||
// Called every time the scheduler runs while the command is scheduled.
|
// Called every time the scheduler runs while the command is scheduled.
|
||||||
@Override
|
@Override
|
||||||
public void execute() {
|
public void execute() {
|
||||||
int nbFois = 0;
|
// int nbFois = 0;
|
||||||
|
|
||||||
double moyenneAmp = 0;
|
// double moyenneAmp = 0;
|
||||||
if(timer.get() < 3){
|
// if(timer.get() < 3){
|
||||||
nbFois++;
|
// nbFois++;
|
||||||
moyenneAmp += balayeuse.Amp() / nbFois;
|
// moyenneAmp += balayeuse.Amp() / nbFois;
|
||||||
}
|
// }
|
||||||
else{
|
// else{
|
||||||
nbFois++;
|
// nbFois++;
|
||||||
moyenneAmp -= temp;
|
// moyenneAmp -= temp;
|
||||||
moyenneAmp += balayeuse.Amp() / nbFois;
|
// moyenneAmp += balayeuse.Amp() / nbFois;
|
||||||
temp = balayeuse.Amp();
|
// temp = balayeuse.Amp();
|
||||||
}
|
// }
|
||||||
if(moyenneAmp > 30 && nbFois > 10){
|
// if(moyenneAmp > 30 && nbFois > 10){
|
||||||
timer.reset();
|
// timer.reset();
|
||||||
balayeuse.Balayer(0.5);
|
// balayeuse.Balayer(0.5);
|
||||||
led.Jaune2();
|
// led.Jaune2();
|
||||||
}
|
// }
|
||||||
else{
|
// else{
|
||||||
double vitesse = 0.4;
|
double vitesse = 0.4;
|
||||||
double output = pidController.calculate(lanceur.Vitesse(),vitesse);
|
double output = pidController.calculate(lanceur.Vitesse(),vitesse);
|
||||||
lanceur.Lancer(output);
|
lanceur.Lancer(output);
|
||||||
if(lanceur.Vitesse() >= vitesse){
|
if(lanceur.Vitesse() >= vitesse){
|
||||||
lanceur.Demeler(0.5);
|
lanceur.Demeler(0.5);
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ public class MonterGrimpeur extends Command {
|
|||||||
public void execute() {
|
public void execute() {
|
||||||
|
|
||||||
if(Math.abs(grimpeur.Position()) < grimpeur.PositionFinal()){
|
if(Math.abs(grimpeur.Position()) < grimpeur.PositionFinal()){
|
||||||
grimpeur.Grimper(0.2);
|
grimpeur.Grimper(0.3);
|
||||||
System.out.println("monte");
|
System.out.println("monte");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public class Grimpeur extends SubsystemBase {
|
|||||||
SparkMaxConfig slaveConfig = new SparkMaxConfig();
|
SparkMaxConfig slaveConfig = new SparkMaxConfig();
|
||||||
DigitalInput limit = new DigitalInput(0);
|
DigitalInput limit = new DigitalInput(0);
|
||||||
private GenericEntry EncodeurGrimpeur =
|
private GenericEntry EncodeurGrimpeur =
|
||||||
teb.add("Position haut grimpeur", 10).getEntry();
|
teb.add("Position haut grimpeur", 105).getEntry();
|
||||||
public void Grimper(double vitesse){
|
public void Grimper(double vitesse){
|
||||||
grimpeur1.set(vitesse);
|
grimpeur1.set(vitesse);
|
||||||
grimpeur2.set(vitesse);
|
grimpeur2.set(vitesse);
|
||||||
@@ -36,7 +36,7 @@ public class Grimpeur extends SubsystemBase {
|
|||||||
return limit.get();
|
return limit.get();
|
||||||
}
|
}
|
||||||
public double PositionFinal(){
|
public double PositionFinal(){
|
||||||
return EncodeurGrimpeur.getDouble(10);
|
return EncodeurGrimpeur.getDouble(105);
|
||||||
}
|
}
|
||||||
/** Creates a new Grimpeur. */
|
/** Creates a new Grimpeur. */
|
||||||
public Grimpeur() {
|
public Grimpeur() {
|
||||||
|
|||||||
@@ -18,12 +18,12 @@ public class Lanceur extends SubsystemBase {
|
|||||||
SparkFlex moteur2 = new SparkFlex(18, MotorType.kBrushless);
|
SparkFlex moteur2 = new SparkFlex(18, MotorType.kBrushless);
|
||||||
SparkFlex Demeleur = new SparkFlex(19, MotorType.kBrushless);
|
SparkFlex Demeleur = new SparkFlex(19, MotorType.kBrushless);
|
||||||
GenericEntry vitesse =
|
GenericEntry vitesse =
|
||||||
teb.add("vitesse lanceur",100).getEntry();
|
teb.add("vitesse lanceur",0.5).getEntry();
|
||||||
GenericEntry AmpLanceur =
|
GenericEntry AmpLanceur =
|
||||||
teb.add("ampérage lanceur",30).getEntry();
|
teb.add("ampérage lanceur",30).getEntry();
|
||||||
public void Lancer(double vitesse){
|
public void Lancer(double vitesse){
|
||||||
moteur1.set(vitesse);
|
// moteur1.set(-vitesse);
|
||||||
moteur2.set(-vitesse);
|
moteur2.set(vitesse);
|
||||||
}
|
}
|
||||||
public void Demeler(double vitesse){
|
public void Demeler(double vitesse){
|
||||||
Demeleur.set(vitesse);
|
Demeleur.set(vitesse);
|
||||||
@@ -38,7 +38,7 @@ public class Lanceur extends SubsystemBase {
|
|||||||
return AmpLanceur.getDouble(30);
|
return AmpLanceur.getDouble(30);
|
||||||
}
|
}
|
||||||
public double vitesseDemander(){
|
public double vitesseDemander(){
|
||||||
return vitesse.getDouble(100);
|
return vitesse.getDouble(0.5);
|
||||||
}
|
}
|
||||||
/** Creates a new Lanceur. */
|
/** Creates a new Lanceur. */
|
||||||
public Lanceur() {
|
public Lanceur() {
|
||||||
|
|||||||
Reference in New Issue
Block a user