mirror of
https://github.com/TimeCrafters/FTC_2022
synced 2025-12-15 22:22:35 +00:00
vexy working
This commit is contained in:
@@ -3,19 +3,17 @@ package org.timecrafters.minibots.cyberarm.engines;
|
|||||||
import com.qualcomm.robotcore.eventloop.opmode.TeleOp;
|
import com.qualcomm.robotcore.eventloop.opmode.TeleOp;
|
||||||
|
|
||||||
import org.cyberarm.engine.V2.CyberarmEngine;
|
import org.cyberarm.engine.V2.CyberarmEngine;
|
||||||
import org.timecrafters.minibots.cyberarm.pickle_minibot;
|
import org.timecrafters.minibots.cyberarm.pickle_minibot_general;
|
||||||
import org.timecrafters.minibots.cyberarm.states.pickle_telescope_state;
|
import org.timecrafters.minibots.cyberarm.states.pickle_teleop_state;
|
||||||
|
|
||||||
@TeleOp (name = "pickle_minibot teleop", group = "minibot")
|
@TeleOp (name = "pickle_minibot teleop", group = "minibot")
|
||||||
public class pickle_engine extends CyberarmEngine {
|
public class pickle_engine extends CyberarmEngine {
|
||||||
pickle_minibot robot;
|
pickle_minibot_general robot;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setup (){
|
public void setup (){
|
||||||
robot = new pickle_minibot(this);
|
robot = new pickle_minibot_general(this);
|
||||||
|
addState(new pickle_teleop_state(robot));
|
||||||
|
|
||||||
addState(new pickle_telescope_state(robot));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
package org.timecrafters.minibots.cyberarm;
|
|
||||||
|
|
||||||
import com.qualcomm.robotcore.hardware.DcMotor;
|
|
||||||
|
|
||||||
import org.cyberarm.engine.V2.CyberarmEngine;
|
|
||||||
|
|
||||||
public class pickle_minibot {
|
|
||||||
private CyberarmEngine engine;
|
|
||||||
|
|
||||||
public DcMotor pLeftFront;
|
|
||||||
|
|
||||||
public pickle_minibot (CyberarmEngine engine){
|
|
||||||
this.engine=engine;
|
|
||||||
|
|
||||||
pLeftFront = engine.hardwareMap.dcMotor.get("frontLeft");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package org.timecrafters.minibots.cyberarm;
|
||||||
|
|
||||||
|
import com.qualcomm.robotcore.hardware.CRServo;
|
||||||
|
import com.qualcomm.robotcore.hardware.DcMotor;
|
||||||
|
import com.qualcomm.robotcore.hardware.Servo;
|
||||||
|
|
||||||
|
import org.cyberarm.engine.V2.CyberarmEngine;
|
||||||
|
|
||||||
|
public class pickle_minibot_general {
|
||||||
|
private CyberarmEngine engine;
|
||||||
|
|
||||||
|
public DcMotor pLeftFront, pRightFront;
|
||||||
|
public DcMotor pLeftBack, pRightBack;
|
||||||
|
public CRServo pServoArch, pServoCarousel, pServoElevate;
|
||||||
|
public Servo pServoRotate, pServoGrab;
|
||||||
|
|
||||||
|
public pickle_minibot_general(CyberarmEngine engine){
|
||||||
|
this.engine=engine;
|
||||||
|
|
||||||
|
pLeftFront = engine.hardwareMap.dcMotor.get("frontLeft");
|
||||||
|
pRightFront = engine.hardwareMap.dcMotor.get("frontRight");
|
||||||
|
pLeftBack = engine.hardwareMap.dcMotor.get("backLeft");
|
||||||
|
pRightBack = engine.hardwareMap.dcMotor.get("backRight");
|
||||||
|
pServoArch = engine.hardwareMap.crservo.get("arch");//dpad up and down
|
||||||
|
pServoCarousel = engine.hardwareMap.crservo.get("carousel");// bumper
|
||||||
|
pServoElevate = engine.hardwareMap.crservo.get("elevate");// left and right dpad
|
||||||
|
pServoRotate = engine.hardwareMap.servo.get("rotate"); // triggers >:(
|
||||||
|
pServoGrab = engine.hardwareMap.servo.get("grab");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
package org.timecrafters.minibots.cyberarm.states;
|
||||||
|
|
||||||
|
import org.cyberarm.engine.V2.CyberarmState;
|
||||||
|
import org.timecrafters.minibots.cyberarm.pickle_minibot_general;
|
||||||
|
|
||||||
|
public class pickle_teleop_state extends CyberarmState {
|
||||||
|
private final pickle_minibot_general robot;
|
||||||
|
public pickle_teleop_state(pickle_minibot_general robot){this.robot = robot;}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void exec() {
|
||||||
|
double dDrivePowerY, dDrivePowerX, dRotatePowerX, dRotatePowerY;
|
||||||
|
dDrivePowerY = engine.gamepad1.left_stick_y;
|
||||||
|
dDrivePowerX = engine.gamepad1.left_stick_x;
|
||||||
|
dRotatePowerY = engine.gamepad1.right_stick_y;
|
||||||
|
dRotatePowerX = engine.gamepad1.right_stick_x;
|
||||||
|
if (dDrivePowerY > .1 || dDrivePowerY < -.1 || dDrivePowerX > .1 || dDrivePowerX < -.1) {
|
||||||
|
robot.pLeftFront.setPower(dDrivePowerY + dDrivePowerX);
|
||||||
|
robot.pRightFront.setPower(dDrivePowerY - dDrivePowerX);
|
||||||
|
robot.pRightBack.setPower(dDrivePowerY + dDrivePowerX);
|
||||||
|
robot.pLeftBack.setPower(dDrivePowerY - dDrivePowerX);
|
||||||
|
}
|
||||||
|
else if ( dRotatePowerY > .1 || dRotatePowerY < -.1 || dRotatePowerX > .1 || dRotatePowerX < -.1){
|
||||||
|
robot.pLeftFront.setPower(dRotatePowerY + dRotatePowerX);
|
||||||
|
robot.pRightFront.setPower(-dRotatePowerY - dRotatePowerX);
|
||||||
|
robot.pRightBack.setPower(-dRotatePowerY - dRotatePowerX);
|
||||||
|
robot.pLeftBack.setPower(dRotatePowerY + dRotatePowerX);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
robot.pLeftFront.setPower(0);
|
||||||
|
robot.pRightFront.setPower(0);
|
||||||
|
robot.pRightBack.setPower(0);
|
||||||
|
robot.pLeftBack.setPower(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (engine.gamepad1.dpad_up){
|
||||||
|
robot.pServoArch.setPower(1);
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (engine.gamepad1.dpad_down){
|
||||||
|
robot.pServoArch.setPower(-1);
|
||||||
|
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
robot.pServoArch.setPower(0);
|
||||||
|
}
|
||||||
|
if (engine.gamepad1.left_bumper){
|
||||||
|
robot.pServoCarousel.setPower(1);
|
||||||
|
}
|
||||||
|
else if (engine.gamepad1.right_bumper) {
|
||||||
|
robot.pServoCarousel.setPower(-1);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
robot.pServoCarousel.setPower(0);
|
||||||
|
}
|
||||||
|
if (engine.gamepad1.dpad_left){
|
||||||
|
robot.pServoElevate.setPower(1);
|
||||||
|
|
||||||
|
}else if (engine.gamepad1.dpad_right){
|
||||||
|
robot.pServoElevate.setPower(-1);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
robot.pServoElevate.setPower(0);
|
||||||
|
}
|
||||||
|
if (engine.gamepad1.left_trigger>.1){
|
||||||
|
robot.pServoRotate.setPosition(.7);// full down
|
||||||
|
}
|
||||||
|
else if (engine.gamepad1.right_trigger>.1){
|
||||||
|
robot.pServoRotate.setPosition(0);//full up
|
||||||
|
|
||||||
|
}if (engine.gamepad1.a){
|
||||||
|
robot.pServoGrab.setPosition(1);
|
||||||
|
|
||||||
|
}else if (engine.gamepad1.b){
|
||||||
|
robot.pServoGrab.setPosition(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void exac() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
package org.timecrafters.minibots.cyberarm.states;
|
|
||||||
|
|
||||||
import org.cyberarm.engine.V2.CyberarmState;
|
|
||||||
import org.timecrafters.minibots.cyberarm.pickle_minibot;
|
|
||||||
|
|
||||||
public class pickle_telescope_state extends CyberarmState {
|
|
||||||
private final pickle_minibot robot;
|
|
||||||
public pickle_telescope_state(pickle_minibot robot){this.robot = robot;}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void exec() {
|
|
||||||
robot.pLeftFront.setPower(1);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void exac() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user