From f6062ce58e40e2933aed4c6b58c04f0b5c80c42e Mon Sep 17 00:00:00 2001 From: ary Date: Fri, 8 Sep 2023 17:02:20 -0400 Subject: [PATCH] horrible code thisi s bad and terrible and bad code, do not use this literally whoever wrote this does not deserve to live --- RELENTLESS/include/globals.hpp | 14 +++++++++++++- RELENTLESS/src/globals.cpp | 22 +++++++++++++++++++++- RELENTLESS/src/main.cpp | 16 +++++----------- 3 files changed, 39 insertions(+), 13 deletions(-) diff --git a/RELENTLESS/include/globals.hpp b/RELENTLESS/include/globals.hpp index 53f0ddf..1fdb856 100644 --- a/RELENTLESS/include/globals.hpp +++ b/RELENTLESS/include/globals.hpp @@ -3,5 +3,17 @@ #include "lemlib/api.hpp" namespace globals { - extern Controller controller; + extern std::shared_ptr controller; + + extern okapi::Motor motor_fl; + extern okapi::Motor motor_ml; + extern okapi::Motor motor_bl; + extern okapi::Motor motor_fr; + extern okapi::Motor motor_mr; + extern okapi::Motor motor_br; + + extern std::shared_ptr leftDrive; + extern std::shared_ptr rightDrive; + + extern std::shared_ptr chassis; } \ No newline at end of file diff --git a/RELENTLESS/src/globals.cpp b/RELENTLESS/src/globals.cpp index 7d88e9a..2c3baba 100644 --- a/RELENTLESS/src/globals.cpp +++ b/RELENTLESS/src/globals.cpp @@ -1,9 +1,29 @@ #include "globals.hpp" namespace globals { - Controller controller(ControllerId::master); + std::shared_ptr controller(new Controller(ControllerId::master)); // Chassis + okapi::Motor motor_fl(1, false, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + okapi::Motor motor_ml(2, false, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + okapi::Motor motor_bl(3, false, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + okapi::Motor motor_fr(4, true, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + okapi::Motor motor_mr(5, true, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + okapi::Motor motor_br(6, true, AbstractMotor::gearset::blue, AbstractMotor::encoderUnits::degrees); + + std::shared_ptr left_drive(new MotorGroup({motor_fl, motor_ml, motor_bl})); + std::shared_ptr right_drive(new MotorGroup({motor_fr, motor_mr, motor_br})); + + std::shared_ptr chassis = + ChassisControllerBuilder() + .withMotors(left_drive, right_drive) + .withDimensions({AbstractMotor::gearset::blue, 1.5}, {{3.25_in, 28_cm}, 300 * 1.5}) + .withGains( + {0.45, 0, 5}, + {11, 0, 20}, + {0.001, 0, 0.0001} + ) + .build(); // Electronics / Pneumatics / Sensors diff --git a/RELENTLESS/src/main.cpp b/RELENTLESS/src/main.cpp index e5cce7a..685f2c9 100644 --- a/RELENTLESS/src/main.cpp +++ b/RELENTLESS/src/main.cpp @@ -1,5 +1,8 @@ #include "main.h" #include "lemlib/api.hpp" +#include "globals.hpp" + +using namespace globals; /** * A callback function for LLEMU's center button. @@ -75,19 +78,10 @@ void autonomous() {} * task, not resume it from where it left off. */ void opcontrol() { - pros::Controller master(pros::E_CONTROLLER_MASTER); - pros::Motor left_mtr(1); - pros::Motor right_mtr(2); while (true) { - pros::lcd::print(0, "%d %d %d", (pros::lcd::read_buttons() & LCD_BTN_LEFT) >> 2, - (pros::lcd::read_buttons() & LCD_BTN_CENTER) >> 1, - (pros::lcd::read_buttons() & LCD_BTN_RIGHT) >> 0); - int left = master.get_analog(ANALOG_LEFT_Y); - int right = master.get_analog(ANALOG_RIGHT_Y); - - left_mtr = left; - right_mtr = right; + double leftX = globals::controller->getAnalog(ControllerAnalog::leftX); + double leftY = globals::controller->getAnalog(ControllerAnalog::leftY); pros::delay(20); }