
first commit
Diff: driving.h
- Revision:
- 30:ab358e8a9e6a
- Parent:
- 28:1c2eb25d624e
- Child:
- 31:d570f957e083
--- a/driving.h Fri Nov 19 20:27:56 2021 +0000 +++ b/driving.h Fri Nov 19 22:53:54 2021 +0000 @@ -17,6 +17,8 @@ #define speedSensorScalar 2.5f #define battDividerScalar 4.2; +#define constSpeed = 0.17; + AnalogIn pot1(PTB2); //was PTB0 // Motor Left is PTE20 // Motor right is pte 21 @@ -55,8 +57,11 @@ float controllerOutputRight = 0; float x; +Timer t; + bool clampLeft = false; bool clampRight = false; +bool override = false; bool brakeLeftBool = false; bool brakeRightBool = false; @@ -71,14 +76,14 @@ are_brakes_activated = true; brakeLeft = 1; brakeRight = 1; - errorAreaRight = 0.0; - errorAreaLeft = 0.0; - + // errorAreaRight = 0.0; + // errorAreaLeft = 0.0; }; -void _steering(void){ +void _tempBraking(void){ } + /* Always set duty cycle to zero (disabling the motor), unless the motor is enabled (motor_enabled = true); @@ -95,27 +100,59 @@ //_steering(); if(motor_enabled == true) { - if(counter == 0 && lap == 0 ) + if(lap == 0) { - setpointLeft = 0.17; - setpointRight = 0.17; + setpointLeft = 0.15; + setpointRight = 0.15; } - else if(counter == 0 && lap == 3 ) + else if (counter == 0 & lap == 1) + { + setpointLeft = 0.3; //0.4 is too fast on sraightaway + setpointRight = 0.3; //0.25 is good + } + else if (counter == 1 & lap == 1) { - setpointLeft = 0.17; - setpointRight = 0.17; + setpointLeft = 0.2; + setpointRight = 0.2; + enable_brakes(); //uncomment out to brake on big turn + t.start(); + if (t.read_ms() > 400) + { + disable_brakes(); + t.stop(); + } + } + else if (counter == 4 & lap == 1) + { + setpointLeft = 0.2; + setpointRight = 0.2; } - else if(counter !=0 && lap == 3 ) + + else if(counter == 5 && lap == 1) { - setpointLeft = 0.17; - setpointRight = 0.17; - + setpointLeft = 0.2; + setpointRight = 0.2; } - else + else if (lap >= 2) { - setpointLeft = 0.17; - setpointRight = 0.17; + setpointLeft = 0.15; + setpointRight = 0.15; } + + else { + setpointLeft = 0.2; + setpointRight = 0.2; + } + + + + + + + + + + // setpointLeft = 0.1; // setpointRight = 0.1; //--- Calculate Error --- @@ -189,7 +226,7 @@ - //--- set motors to calculated output --- + //--- set motors to calculated output --- motorLeft.write(dutyCycleLeft); // 0.2 For debugging motorRight.write(dutyCycleRight);