mirror of
https://github.com/TimeCrafters/CenterStage
synced 2025-12-15 16:52:35 +00:00
Pizza bot autonomous, only wants to veer right no matter what I say, any ideas?
This commit is contained in:
@@ -2,6 +2,7 @@ package org.timecrafters.CenterStage.Autonomous.Engines;
|
||||
|
||||
import com.qualcomm.robotcore.eventloop.opmode.Autonomous;
|
||||
|
||||
import org.timecrafters.CenterStage.Autonomous.States.SodiPizzaAutoArmState;
|
||||
import org.timecrafters.CenterStage.Autonomous.States.SodiPizzaAutoDriveState;
|
||||
|
||||
import dev.cyberarm.engine.V2.CyberarmEngine;
|
||||
@@ -11,5 +12,6 @@ public class SodiPizzaAutoRedRightEngine extends CyberarmEngine {
|
||||
@Override
|
||||
public void setup() {
|
||||
addState(new SodiPizzaAutoDriveState());
|
||||
addState(new SodiPizzaAutoArmState());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package org.timecrafters.CenterStage.Autonomous.States;
|
||||
|
||||
import org.timecrafters.CenterStage.Common.SodiPizzaMinibotObject;
|
||||
|
||||
import dev.cyberarm.engine.V2.CyberarmState;
|
||||
|
||||
public class SodiPizzaAutoArmState extends CyberarmState {
|
||||
|
||||
private SodiPizzaMinibotObject robot;
|
||||
private String groupName, actionName;
|
||||
|
||||
public void SodiPizzaAutoDriveState() {
|
||||
groupName = " ";
|
||||
actionName = " ";
|
||||
robot = new SodiPizzaMinibotObject();
|
||||
robot.setup();
|
||||
}
|
||||
@Override
|
||||
public void exec() {
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
package org.timecrafters.CenterStage.Autonomous.States;
|
||||
|
||||
import com.qualcomm.robotcore.hardware.DcMotor;
|
||||
|
||||
import org.timecrafters.CenterStage.Common.SodiPizzaMinibotObject;
|
||||
|
||||
import dev.cyberarm.engine.V2.CyberarmState;
|
||||
@@ -7,6 +9,7 @@ import dev.cyberarm.engine.V2.CyberarmState;
|
||||
public class SodiPizzaAutoDriveState extends CyberarmState{
|
||||
final private SodiPizzaMinibotObject robot;
|
||||
final private String groupName, actionName;
|
||||
private long lastMoveTime;
|
||||
|
||||
public SodiPizzaAutoDriveState() {
|
||||
groupName = " ";
|
||||
@@ -15,22 +18,56 @@ public class SodiPizzaAutoDriveState extends CyberarmState{
|
||||
robot.setup();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void start() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void telemetry() {
|
||||
engine.telemetry.addData("Target Ticks?", robot.leftFront.getTargetPosition());
|
||||
engine.telemetry.addData("Current Ticks?", robot.leftFront.getCurrentPosition());
|
||||
engine.telemetry.addData("Ticks Needed?", robot.leftFront.getTargetPosition() -
|
||||
robot.leftFront.getCurrentPosition());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exec() {
|
||||
robot.flDrive.setTargetPosition(2800);
|
||||
if (robot.flDrive.getCurrentPosition() < robot.flDrive.getTargetPosition()) {
|
||||
robot.flDrive.setPower(0.75);
|
||||
robot.frDrive.setPower(0.75);
|
||||
robot.blDrive.setPower(0.75);
|
||||
robot.brDrive.setPower(0.75);
|
||||
} else {
|
||||
robot.flDrive.setPower(0);
|
||||
robot.frDrive.setPower(0);
|
||||
robot.blDrive.setPower(0);
|
||||
robot.brDrive.setPower(0);
|
||||
|
||||
if (robot.leftFront.getCurrentPosition() < 1000) {
|
||||
|
||||
robot.leftFront.setTargetPosition(1000);
|
||||
robot.leftBack.setTargetPosition(1000);
|
||||
robot.rightFront.setTargetPosition(1000);
|
||||
robot.rightBack.setTargetPosition(1000);
|
||||
|
||||
robot.leftFront.setPower(0.5);
|
||||
robot.rightFront.setPower(0.5);
|
||||
robot.leftBack.setPower(0.5);
|
||||
robot.rightBack.setPower(0.5);
|
||||
|
||||
}
|
||||
if (robot.flDrive.getPower() == 0 && robot.flDrive.getCurrentPosition() >= robot.flDrive.getTargetPosition()) {
|
||||
setHasFinished(true);
|
||||
}
|
||||
|
||||
if (robot.leftFront.getCurrentPosition() < 1250 && robot.leftFront.getCurrentPosition() >= 1000 &&
|
||||
robot.rightBack.getCurrentPosition() > 750) {
|
||||
robot.leftFront.setPower(0.5);
|
||||
robot.leftBack.setPower(0.5);
|
||||
robot.rightFront.setPower(-0.5);
|
||||
robot.rightBack.setPower(-0.5);
|
||||
|
||||
robot.leftFront.setTargetPosition(1250);
|
||||
robot.leftBack.setTargetPosition(1250);
|
||||
robot.rightFront.setTargetPosition(750);
|
||||
robot.rightBack.setTargetPosition(750);
|
||||
}
|
||||
|
||||
|
||||
if (robot.leftFront.getCurrentPosition() >= 1250 && robot.rightBack.getCurrentPosition() <= 750) {
|
||||
robot.leftFront.setPower(0);
|
||||
robot.rightFront.setPower(0);
|
||||
robot.leftBack.setPower(0);
|
||||
robot.rightBack.setPower(0);
|
||||
setHasFinished(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package org.timecrafters.CenterStage.Autonomous.States;
|
||||
|
||||
import org.timecrafters.CenterStage.Common.SodiPizzaMinibotObject;
|
||||
|
||||
import dev.cyberarm.engine.V2.CyberarmState;
|
||||
|
||||
public class SodiPizzaWheelTest extends CyberarmState {
|
||||
private SodiPizzaMinibotObject robot;
|
||||
private String groupName, actionName;
|
||||
|
||||
public SodiPizzaWheelTest() {
|
||||
groupName = " ";
|
||||
actionName = " ";
|
||||
robot = new SodiPizzaMinibotObject();
|
||||
robot.setup();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void exec() {
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package org.timecrafters.CenterStage.Common;
|
||||
|
||||
import com.qualcomm.robotcore.hardware.DcMotor;
|
||||
import com.qualcomm.robotcore.hardware.DcMotorSimple;
|
||||
import com.qualcomm.robotcore.hardware.HardwareMap;
|
||||
import com.qualcomm.robotcore.hardware.IMU;
|
||||
import com.qualcomm.robotcore.hardware.Servo;
|
||||
@@ -13,8 +14,8 @@ import dev.cyberarm.engine.V2.CyberarmEngine;
|
||||
public class SodiPizzaMinibotObject extends Robot {
|
||||
|
||||
public HardwareMap hardwareMap;
|
||||
public DcMotor flDrive, frDrive, blDrive, brDrive;
|
||||
public Servo shoulder, hand;
|
||||
public DcMotor leftFront, rightFront, leftBack, rightBack;
|
||||
public Servo shoulder, gripper;
|
||||
public IMU imu;
|
||||
private String string;
|
||||
|
||||
@@ -42,14 +43,29 @@ public class SodiPizzaMinibotObject extends Robot {
|
||||
this.hardwareMap = CyberarmEngine.instance.hardwareMap;
|
||||
|
||||
//Motor defining
|
||||
flDrive = engine.hardwareMap.dcMotor.get("FL Drive");
|
||||
frDrive = engine.hardwareMap.dcMotor.get("FR Drive");
|
||||
blDrive = engine.hardwareMap.dcMotor.get("BL Drive");
|
||||
brDrive = engine.hardwareMap.dcMotor.get("BR Drive");
|
||||
leftFront = engine.hardwareMap.dcMotor.get("leftFront");
|
||||
rightFront = engine.hardwareMap.dcMotor.get("rightFront");
|
||||
leftBack = engine.hardwareMap.dcMotor.get("leftBack");
|
||||
rightBack = engine.hardwareMap.dcMotor.get("rightBack");
|
||||
|
||||
leftFront.setDirection(DcMotorSimple.Direction.FORWARD);
|
||||
leftBack.setDirection(DcMotorSimple.Direction.FORWARD);
|
||||
rightFront.setDirection(DcMotorSimple.Direction.REVERSE);
|
||||
rightBack.setDirection(DcMotorSimple.Direction.REVERSE);
|
||||
|
||||
leftFront.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
rightFront.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
leftBack.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
rightBack.setMode(DcMotor.RunMode.STOP_AND_RESET_ENCODER);
|
||||
|
||||
leftFront.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
rightFront.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
leftBack.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
rightBack.setMode(DcMotor.RunMode.RUN_USING_ENCODER);
|
||||
|
||||
//Servo Defining
|
||||
shoulder = engine.hardwareMap.servo.get("Shoulder");
|
||||
hand = engine.hardwareMap.servo.get("Hand");
|
||||
shoulder = engine.hardwareMap.servo.get("arm");
|
||||
gripper = engine.hardwareMap.servo.get("gripper");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user