diff --git a/robot_controller/constants.h b/robot_controller/constants.h index 6a5970d..1b01356 100644 --- a/robot_controller/constants.h +++ b/robot_controller/constants.h @@ -1,11 +1,11 @@ #pragma once const float ACCEL_LIMIT = 5.0; // cm/s/s -const float VEL_LIMIT = 10.0; // cm/s +const float VEL_LIMIT = 16.0; // cm/s const float BACKLASH_RIGHT = 0.0; // degrees const float BACKLASH_LEFT = 0.0; // degrees -const float WHEEL_DIAMETER = 9.25; // cm -const float WHEEL_TO_WHEEL = 10.0; // cm +const float WHEEL_DIAMETER = 10.25; // cm +const float WHEEL_TO_WHEEL = 9.0; // cm // centimeters per second to rpm const float CMS_RPM = 60.0 / (PI*WHEEL_DIAMETER); @@ -13,9 +13,9 @@ const float CMS_RPM = 60.0 / (PI*WHEEL_DIAMETER); // degrees to centimeters const float DEG_CM = (PI*WHEEL_DIAMETER) / 360.0; -const float FORWARD_DISTANCE = 100.0; // cm +const float FORWARD_DISTANCE = 10.0; // cm const float TURN_AMOUNT = 180.0; // degrees -const float TURN_DISTANCE = (TURN_AMOUNT / 360.0) * WHEEL_TO_WHEEL * PI * 0.5; +const float TURN_DISTANCE = (TURN_AMOUNT / 360.0) * WHEEL_TO_WHEEL * PI; const float RETURN_DISTANCE = 100.0; // cm const float FF_ACCEL = 0.7; // motor acceleration feedforward diff --git a/robot_controller/robot_controller.ino b/robot_controller/robot_controller.ino index c40ff6c..19e4061 100644 --- a/robot_controller/robot_controller.ino +++ b/robot_controller/robot_controller.ino @@ -68,11 +68,10 @@ void loop() { setpoint = trapezoidal_planner(&forward, time); break; case TURN: - setpoint = trapezoidal_planner(&forward, time); + setpoint = trapezoidal_planner(&turn, time); break; } - float turnsig = (robot_state == TURN ? 1.0 : -1.0); // direction of travel for right motor // position PI controller