Merge remote-tracking branch 'origin/master'

This commit is contained in:
SpencerPiha
2022-09-02 19:57:54 -05:00
50 changed files with 1050 additions and 1676 deletions

View File

@@ -15,6 +15,10 @@
apply from: '../build.common.gradle'
apply from: '../build.dependencies.gradle'
android {
namespace = 'org.firstinspires.ftc.teamcode'
}
dependencies {
implementation project(':FtcRobotController')
annotationProcessor files('lib/OpModeAnnotationProcessor.jar')

View File

@@ -6,7 +6,6 @@
<!-- The package name here determines the package for your R class and your BuildConfig class -->
<manifest
package="org.firstinspires.ftc.teamcode"
xmlns:android="http://schemas.android.com/apk/res/android">
<application/>
</manifest>

View File

@@ -232,6 +232,4 @@ public abstract class CyberarmState implements Runnable {
public String progressBar(int width, double percentCompleted) {
return progressBar(width, percentCompleted, "=", " ");
}
public abstract void exac();
}

View File

@@ -1,117 +1,112 @@
package org.timecrafters.minibots.cyberarm.states;
import com.qualcomm.robotcore.hardware.Gamepad;
import org.cyberarm.engine.V2.CyberarmState;
import org.timecrafters.minibots.cyberarm.MecanumMinibot;
public class MecanumMinibotTeleOpState extends CyberarmState {
private final MecanumMinibot robot;
private float speed;
public MecanumMinibotTeleOpState(MecanumMinibot robot) {
this.robot = robot;
}
@Override
public void exec() {
/* ............................................................................ drive */
speed = 1.0f - engine.gamepad1.left_trigger;
if (engine.gamepad1.y) {
robot.driveAll(speed);
} else if (engine.gamepad1.a) {
robot.driveAll(-speed);
} else if (engine.gamepad1.x) {
robot.driveStrafe(MecanumMinibot.STRAFE_LEFT, speed);
} else if (engine.gamepad1.b) {
robot.driveStrafe(MecanumMinibot.STRAFE_RIGHT, speed);
} else if (engine.gamepad1.left_bumper) {
robot.driveTurn(MecanumMinibot.TURN_LEFT, speed);
} else if (engine.gamepad1.right_bumper) {
robot.driveTurn(MecanumMinibot.TURN_RIGHT, speed);
} else {
robot.driveStop();
}
/* ............................................................................ elevator */
if(engine.gamepad1.dpad_up ||
engine.gamepad2.y){
robot.pServoElevate.setPower(1.0);
}
else if(engine.gamepad1.dpad_down ||
engine.gamepad2.a){
robot.pServoElevate.setPower(-1.0);
}
else{
robot.pServoElevate.setPower((0.0));
}
/* ............................................................................ arch */
if(Math.abs(engine.gamepad1.left_stick_y)>0.1 ||
Math.abs(engine.gamepad2.left_stick_y)>0.1){
robot.pServoArch.setPower(engine.gamepad1.left_stick_y + engine.gamepad2.left_stick_y);
}
else{
robot.pServoArch.setPower((0.0));
}
/* ............................................................................ rotate */
if(engine.gamepad1.dpad_right ||
engine.gamepad2.dpad_right){ // up position
robot.pServoRotate.setPosition(0.0);
}
if(engine.gamepad1.dpad_left ||
engine.gamepad2.dpad_left){ // down position
robot.pServoRotate.setPosition(0.70);
}
/* ............................................................................ grab */
if(engine.gamepad1.left_stick_x>0.5 || engine.gamepad1.right_stick_x<-0.5 ||
engine.gamepad2.x){ // in
robot.pServoGrab.setPosition(0.9);
}
if(engine.gamepad1.back ||
engine.gamepad2.back){ // small out
robot.pServoGrab.setPosition(0.50);
}
if(engine.gamepad1.right_stick_x>0.5 || engine.gamepad1.right_stick_x>0.5 ||
engine.gamepad2.b){ // big out
robot.pServoGrab.setPosition(0.0);
}
/* ............................................................................ carousel */
if(Math.abs(engine.gamepad1.left_trigger)>0.1){
robot.pServoCarousel.setPower(engine.gamepad1.left_trigger);
}
else if(Math.abs(engine.gamepad1.right_trigger)>0.1){
robot.pServoCarousel.setPower(-engine.gamepad1.right_trigger);
}
else{
robot.pServoCarousel.setPower((0.0));
}
}
@Override
public void buttonDown(Gamepad gamepad, String button) {
super.buttonDown(gamepad, button);
}
@Override
public void buttonUp(Gamepad gamepad, String button) {
super.buttonUp(gamepad, button);
}
@Override
public void exac() {
}
@Override
public void telemetry() {
engine.telemetry.addData("speed", speed);
}
}
package org.timecrafters.minibots.cyberarm.states;
import com.qualcomm.robotcore.hardware.Gamepad;
import org.cyberarm.engine.V2.CyberarmState;
import org.timecrafters.minibots.cyberarm.MecanumMinibot;
public class MecanumMinibotTeleOpState extends CyberarmState {
private final MecanumMinibot robot;
private float speed;
public MecanumMinibotTeleOpState(MecanumMinibot robot) {
this.robot = robot;
}
@Override
public void exec() {
/* ............................................................................ drive */
speed = 1.0f - engine.gamepad1.left_trigger;
if (engine.gamepad1.y) {
robot.driveAll(speed);
} else if (engine.gamepad1.a) {
robot.driveAll(-speed);
} else if (engine.gamepad1.x) {
robot.driveStrafe(MecanumMinibot.STRAFE_LEFT, speed);
} else if (engine.gamepad1.b) {
robot.driveStrafe(MecanumMinibot.STRAFE_RIGHT, speed);
} else if (engine.gamepad1.left_bumper) {
robot.driveTurn(MecanumMinibot.TURN_LEFT, speed);
} else if (engine.gamepad1.right_bumper) {
robot.driveTurn(MecanumMinibot.TURN_RIGHT, speed);
} else {
robot.driveStop();
}
/* ............................................................................ elevator */
if(engine.gamepad1.dpad_up ||
engine.gamepad2.y){
robot.pServoElevate.setPower(1.0);
}
else if(engine.gamepad1.dpad_down ||
engine.gamepad2.a){
robot.pServoElevate.setPower(-1.0);
}
else{
robot.pServoElevate.setPower((0.0));
}
/* ............................................................................ arch */
if(Math.abs(engine.gamepad1.left_stick_y)>0.1 ||
Math.abs(engine.gamepad2.left_stick_y)>0.1){
robot.pServoArch.setPower(engine.gamepad1.left_stick_y + engine.gamepad2.left_stick_y);
}
else{
robot.pServoArch.setPower((0.0));
}
/* ............................................................................ rotate */
if(engine.gamepad1.dpad_right ||
engine.gamepad2.dpad_right){ // up position
robot.pServoRotate.setPosition(0.0);
}
if(engine.gamepad1.dpad_left ||
engine.gamepad2.dpad_left){ // down position
robot.pServoRotate.setPosition(0.70);
}
/* ............................................................................ grab */
if(engine.gamepad1.left_stick_x>0.5 || engine.gamepad1.right_stick_x<-0.5 ||
engine.gamepad2.x){ // in
robot.pServoGrab.setPosition(0.9);
}
if(engine.gamepad1.back ||
engine.gamepad2.back){ // small out
robot.pServoGrab.setPosition(0.50);
}
if(engine.gamepad1.right_stick_x>0.5 || engine.gamepad1.right_stick_x>0.5 ||
engine.gamepad2.b){ // big out
robot.pServoGrab.setPosition(0.0);
}
/* ............................................................................ carousel */
if(Math.abs(engine.gamepad1.left_trigger)>0.1){
robot.pServoCarousel.setPower(engine.gamepad1.left_trigger);
}
else if(Math.abs(engine.gamepad1.right_trigger)>0.1){
robot.pServoCarousel.setPower(-engine.gamepad1.right_trigger);
}
else{
robot.pServoCarousel.setPower((0.0));
}
}
@Override
public void buttonDown(Gamepad gamepad, String button) {
super.buttonDown(gamepad, button);
}
@Override
public void buttonUp(Gamepad gamepad, String button) {
super.buttonUp(gamepad, button);
}
@Override
public void telemetry() {
engine.telemetry.addData("speed", speed);
}
}

View File

@@ -1,85 +1,79 @@
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() {
}
}
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);
}
}
}

View File

@@ -0,0 +1,14 @@
package org.timecrafters.testing.engine;
import com.qualcomm.robotcore.eventloop.opmode.TeleOp;
import org.cyberarm.engine.V2.CyberarmEngine;
import org.timecrafters.testing.states.SodiState;
@TeleOp(name = "Wheel")
public class SodiEngine extends CyberarmEngine {
@Override
public void setup() {
addState(new SodiState());
}
}

View File

@@ -0,0 +1,52 @@
package org.timecrafters.testing.states;
import com.qualcomm.robotcore.hardware.CRServo;
import com.qualcomm.robotcore.hardware.DcMotor;
import com.qualcomm.robotcore.hardware.Servo;
import org.cyberarm.engine.V2.CyberarmState;
public class SodiState extends CyberarmState {
CRServo Wheel, Rack;
DcMotor ForePort, ForeStar, HindPort, HindStar;
Servo Zygo;
@Override
public void init() {
super.init();
Wheel=engine.hardwareMap.crservo.get("Wheel");
Rack=engine.hardwareMap.crservo.get("Rack");
ForePort=engine.hardwareMap.dcMotor.get("ForePort");
ForeStar=engine.hardwareMap.dcMotor.get("ForeStar");
HindPort=engine.hardwareMap.dcMotor.get("HindPort");
HindStar=engine.hardwareMap.dcMotor.get("HindStar");
Zygo=engine.hardwareMap.servo.get("Zygo");
}
@Override
public void exec() {
if (engine.gamepad1.x) {
Wheel.setPower(1.0);
} else if(engine.gamepad1.b) {
Wheel.setPower(-1.0);
} else {
Wheel.setPower(0);
}
if (engine.gamepad1.y) {
Rack.setPower(1.0);
} else if(engine.gamepad1.a) {
Rack.setPower(-1.0);
} else {
Rack.setPower(0);
}
ForePort.setPower(engine.gamepad1.left_stick_y * 1);
HindPort.setPower(engine.gamepad1.left_stick_y * 1);
ForeStar.setPower(engine.gamepad1.right_stick_y * 1);
HindStar.setPower(engine.gamepad1.right_stick_y * 1);
if (engine.gamepad1.left_bumper) {
Zygo.setPosition(1.0);
} else {
Zygo.setPosition(0);
}
}
}