Update ftc2024_autonome_api.java

ça fonctionne
This commit is contained in:
Zelina974 2024-03-10 17:04:53 +01:00 committed by GitHub
parent 2af007c7de
commit a426d6d40a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,6 +1,6 @@
package org.firstinspires.ftc.teamcode; package org.firstinspires.ftc.teamcode;
import fr.werobot.ftc2024.robotcontrol.FTC2024WeRobotControl; //a tester car pas sur que ça fonctionne //import FTC2024WeRobotControl; //a tester car pas sur que ça fonctionne
import com.qualcomm.robotcore.eventloop.opmode.LinearOpMode; import com.qualcomm.robotcore.eventloop.opmode.LinearOpMode;
@ -21,146 +21,122 @@ import com.qualcomm.robotcore.util.ElapsedTime;
@Autonomous @Autonomous
public class ftc2024_autonome_api extends LinearOpMode { public class Ftc2024_autonome_api extends LinearOpMode {
public String autonomous_mode; public String autonomous_mode;
public DcMotor lm; public DcMotor lm;
public DcMotor rm; public DcMotor rm;
public DcMotor harvestmotor; public DcMotor harvestmotor;
public IMU imu; public IMU imu;
public YawPitchRollAngle robotOrientation;
@Override @Override
public void runOpMode() { public void runOpMode() {
lm = hardwareMap.get(DcMotor.class, "blm"); lm = hardwareMap.get(DcMotor.class, "blm");
rm = hardwareMap.get(DcMotor.class, "brm"); rm = hardwareMap.get(DcMotor.class, "brm");
harvestmotor = hardwareMap.get(DcMotor.class, "flm"); harvestmotor = hardwareMap.get(DcMotor.class, "flm");
rm.setDirection(DcMotor.Direction.REVERSE); rm.setDirection(DcMotor.Direction.REVERSE);
imu = hardwareMap.get(IMU.class, "imu"); imu = hardwareMap.get(IMU.class, "imu");
imu.initialize( imu.initialize(
new IMU.Parameters( new IMU.Parameters(
new RevHubOrientationOnRobot( new RevHubOrientationOnRobot(
RevHubOrientationOnRobot.LogoFacingDirection.UP, RevHubOrientationOnRobot.LogoFacingDirection.UP,
RevHubOrientationOnRobot.UsbFacingDirection.FORWARD RevHubOrientationOnRobot.UsbFacingDirection.FORWARD
) )
) )
); );
imu.resetYaw(); imu.resetYaw();
// YawPitchRollAngle robotOrientation; // FTC2024WeRobotControl à besoin de robotOrientation comme variable de Parent (donc de cette classe actuelle), n'est il pas posible de définir robotOrientation dans la classe? YawPitchRollAngles robotOrientation;
FTC2024WeRobotControl robot = FTC2024WeRobotControl(this); FTC2024WeRobotControl robot = new FTC2024WeRobotControl(this);
autonomous_mode = "b4d";
telemetry.addData("wait for start","");
telemetry.update();
waitForStart(); waitForStart();
robotOrientation = imu.getYawPitchRollAngles(); telemetry.addData("started","");
telemetry.update();
robotOrientation = imu.getRobotYawPitchRollAngles();
if(opModeIsActive()){
/*
* autonomous_mode differents possibles values respect the next scheme:
* team_color_shortcode + start_line_index + direct_or_no
*
* team_color_shortcode = "b" for blue & "r" for red
* start_line_index = 4 or 2 see competition manual appendix B Tile location plan
* direct_or_no = "d" to direct go to pixel deliver zone or "n" to harvest pixels before to go in deliver zone
*
* default is "b4d"
*/
switch (autonomous_mode){
case ("b4d"):
telemetry.addData("cas b4d lancé","");
telemetry.update();
robot.forward(0.5);
robot.rotate(-90.0);
robot.forward(1.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
telemetry.addData("fin de b4d","");
telemetry.update();
break;
case ("b2d"):
telemetry.addData("cas b2d lancé","");
telemetry.update();
robot.forward(0.5);
robot.rotate(-90.0);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
telemetry.addData("fin de b2d","");
telemetry.update();
break;
case ("r4d"):
telemetry.addData("cas r4d lancé","");
telemetry.update();
robot.forward(0.5);
robot.rotate(90.0);
robot.forward(1.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
telemetry.addData("fin de r4d","");
telemetry.update();
break;
case ("r2d"):
telemetry.addData("cas r2d lancé","");
telemetry.update();
robot.forward(0.5);
robot.rotate(90.0);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
telemetry.addData("fin de r2d","");
telemetry.update();
break;
if(opModeIsRunning()){ case ("b4n"):
/*
* autonomous_mode differents possibles values respect the next scheme: break;
* team_color_shortcode + start_line_index + direct_or_no case ("b2n"):
*
* team_color_shortcode = "b" for blue & "r" for red break;
* start_line_index = 4 or 2 see competition manual appendix B Tile location plan case ("r4n"):
* direct_or_no = "d" to direct go to pixel deliver zone or "n" to harvest pixels before to go in deliver zone
* break;
* default is "b4d" case ("r2n"):
*/
switch (autonomous_mode){ break;
default: default:
robot.forward(0.5); break;
robot.rotate((-90)); }
robot.forward(1.5); }
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("b2d"):
robot.forward(0.5);
robot.rotate((-90));
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("r4d"):
robot.forward(0.5);
robot.rotate(90);
robot.forward(1.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("r2d"):
robot.forward(0.5);
robot.rotate(90);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("b4n"):
robot.forward(1.5);
robot.rotate(90);
robot.harvest();
robot.forward(3);
robot.harvest(0);
robot.rotate(180);
robot.forward(1);
robot.rotate(-90);
robot.forward(1);
robot.rotate(90);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("b2n"):
robot.forward(1.5);
robot.rotate(90);
robot.harvest();
robot.forward(1);
robot.harvest(0);
robot.rotate(180);
robot.forward(1);
robot.rotate(-90);
robot.forward(1);
robot.rotate(90);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("r4n"):
robot.forward(1.5);
robot.rotate(-90);
robot.harvest();
robot.forward(3);
robot.harvest(0);
robot.rotate(180);
robot.forward(1);
robot.rotate(90);
robot.forward(1);
robot.rotate(-90);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
break;
case ("r2n"):
robot.forward(1.5);
robot.rotate(-90);
robot.harvest();
robot.forward(1);
robot.harvest(0);
robot.rotate(180);
robot.forward(1);
robot.rotate(90);
robot.forward(1);
robot.rotate(-90);
robot.forward(2.5);
robot.harvest(-1);
robot.backward(1);
robot.harvest(0);
}
}
} }
} }