mirror of
https://github.com/TimeCrafters/CenterStage
synced 2025-12-15 08:42:35 +00:00
Minibot drive test:Added stop and reset encoder on all motors, need to work on game strategy
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package org.timecrafters.CenterStage.Autonomous.States;
|
||||
|
||||
import com.arcrobotics.ftclib.hardware.motors.Motor;
|
||||
import com.qualcomm.robotcore.hardware.DcMotor;
|
||||
import com.qualcomm.robotcore.hardware.DcMotorSimple;
|
||||
import com.qualcomm.robotcore.hardware.Servo;
|
||||
@@ -28,15 +29,23 @@ public class ProtoBotStateSodi extends CyberarmState {
|
||||
engine.telemetry.addData("Front Right Power", robot.frDrive.motor.getPower());
|
||||
engine.telemetry.addData("Back Left Power", robot.blDrive.motor.getPower());
|
||||
engine.telemetry.addData("Back Right Power", robot.brDrive.motor.getPower());
|
||||
engine.telemetry.addData("FL Position",robot.flDrive.motor.getCurrentPosition());
|
||||
engine.telemetry.addData("Test Sequence", testSequence);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void start() {
|
||||
testSequence = 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init() {
|
||||
robot.flDrive.motor.setPower(0);
|
||||
robot.frDrive.motor.setPower(0);
|
||||
robot.blDrive.motor.setPower(0);
|
||||
robot.brDrive.motor.setPower(0);
|
||||
|
||||
// robot.liftMotor.motor.setPower(0);
|
||||
//
|
||||
// robot.grabJaw.setPosition(0);
|
||||
@@ -47,7 +56,7 @@ public class ProtoBotStateSodi extends CyberarmState {
|
||||
// robot.dropJaw.setPosition(0);
|
||||
|
||||
lastTimeChecked = System.currentTimeMillis();
|
||||
testSequence = 0;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -63,37 +72,27 @@ public class ProtoBotStateSodi extends CyberarmState {
|
||||
testSequence = 1;
|
||||
}
|
||||
|
||||
switch (testSequence) {
|
||||
case 1:
|
||||
|
||||
robot.flDrive.motor.setTargetPosition(500);
|
||||
robot.frDrive.motor.setTargetPosition(500);
|
||||
robot.blDrive.motor.setTargetPosition(500);
|
||||
robot.brDrive.motor.setTargetPosition(500);
|
||||
|
||||
if (robot.flDrive.motor.getCurrentPosition() < robot.flDrive.motor.getTargetPosition() - 50) {
|
||||
robot.flDrive.motor.setPower(0.5 * (robot.flDrive.motor.getTargetPosition() - robot.flDrive.motor.getCurrentPosition()));
|
||||
robot.frDrive.motor.setPower(0.5 * (robot.frDrive.motor.getTargetPosition() - robot.frDrive.motor.getCurrentPosition()));
|
||||
robot.blDrive.motor.setPower(0.5 * (robot.blDrive.motor.getTargetPosition() - robot.blDrive.motor.getCurrentPosition()));
|
||||
robot.brDrive.motor.setPower(0.5 * (robot.brDrive.motor.getTargetPosition() - robot.brDrive.motor.getCurrentPosition()));
|
||||
}
|
||||
else if (robot.flDrive.motor.getCurrentPosition() < robot.flDrive.motor.getTargetPosition() + 50 ||
|
||||
robot.flDrive.motor.getCurrentPosition() > robot.flDrive.motor.getTargetPosition() - 50) {
|
||||
|
||||
robot.flDrive.motor.setPower(0);
|
||||
robot.frDrive.motor.setPower(0);
|
||||
robot.blDrive.motor.setPower(0);
|
||||
robot.brDrive.motor.setPower(0);
|
||||
|
||||
// testSequence = 2;
|
||||
}
|
||||
|
||||
break;
|
||||
// case 2:
|
||||
|
||||
if (testSequence == 1) {
|
||||
robot.flDrive.motor.setTargetPosition(1000);
|
||||
robot.frDrive.motor.setTargetPosition(1000);
|
||||
robot.blDrive.motor.setTargetPosition(1000);
|
||||
robot.brDrive.motor.setTargetPosition(1000);
|
||||
|
||||
if (robot.flDrive.motor.getCurrentPosition() < robot.flDrive.motor.getTargetPosition() - 50) {
|
||||
robot.flDrive.motor.setPower(0.5 * (robot.flDrive.motor.getTargetPosition() - robot.flDrive.motor.getCurrentPosition()));
|
||||
robot.frDrive.motor.setPower(0.5 * (robot.frDrive.motor.getTargetPosition() - robot.frDrive.motor.getCurrentPosition()));
|
||||
robot.blDrive.motor.setPower(0.5 * (robot.blDrive.motor.getTargetPosition() - robot.blDrive.motor.getCurrentPosition()));
|
||||
robot.brDrive.motor.setPower(0.5 * (robot.brDrive.motor.getTargetPosition() - robot.brDrive.motor.getCurrentPosition()));
|
||||
} else if (robot.flDrive.motor.getCurrentPosition() < robot.flDrive.motor.getTargetPosition() + 50 ||
|
||||
robot.flDrive.motor.getCurrentPosition() > robot.flDrive.motor.getTargetPosition() - 50) {
|
||||
|
||||
robot.flDrive.motor.setPower(0);
|
||||
robot.frDrive.motor.setPower(0);
|
||||
robot.blDrive.motor.setPower(0);
|
||||
robot.brDrive.motor.setPower(0);
|
||||
|
||||
testSequence = 2;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -52,11 +52,16 @@ public class ProtoBotSodi extends Robot {
|
||||
blDrive = new MotorEx(hardwareMap, "BackLeft");
|
||||
// liftMotor = new MotorEx(hardwareMap, "Lift");
|
||||
|
||||
// flDrive.motor.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
|
||||
// frDrive.motor.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
|
||||
// blDrive.motor.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
|
||||
// brDrive.motor.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
|
||||
// liftMotor.motor.setMode(DcMotor.RunMode.RUN_WITHOUT_ENCODER);
|
||||
|
||||
flDrive.motor.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
frDrive.motor.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
blDrive.motor.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
brDrive.motor.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
flDrive.motor.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
frDrive.motor.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
blDrive.motor.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
brDrive.motor.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
// liftMotor.motor.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
|
||||
flDrive.motor.setDirection(FORWARD);
|
||||
// frDrive.motor.setDirection(REVERSE);
|
||||
|
||||
Reference in New Issue
Block a user