
first commit
steering_header.h
- Committer:
- aalawfi
- Date:
- 2021-11-06
- Revision:
- 25:8bd029d58251
- Parent:
- 24:7bf492bf50f4
- Child:
- 26:54ce9f642477
File content as of revision 25:8bd029d58251:
/* Include libraries, IO pins */ #include "cmath" #include <algorithm> // std::min, std::max #define M_PI 3.14159265359f #define MAX_TURN_ANGLE M_PI/4 #define MIN_TURN_ANGLE -M_PI/4 #define SERVO_MOTOR_FREQ 50.0f #define CENTER_DUTY_CYCLE 0.075f #define REF 0.000 //in meters float KP = 5.5;//1.2 // 1.5 #define KI_STEERING 1.2//4.1985 float KD= 0.2;//0.05003 #define TIME_DERIVATIVE 1 //0.1 // was 0.08 #define TIME_INTEGRAL 1 //0.5 // 0.4 #define TI_STEERING 0.01 // in seconds #define SEN_DIFF_TO_DIST 3.5216 #define BITS 4 //Construct the Ticker to call the steering control system at a set rate // INPUT PINS AnalogIn left_distance_sensor(PTB1); AnalogIn right_distance_sensor(PTB0); // PWM out PwmOut servo_motor_pwm(PTD4); // Digital outs DigitalOut seg1[BITS]={PTC17, PTA16,PTA17,PTE31}; // insert pin numbers //Interrupt In InterruptIn left_landmark_sensor(PTD6); InterruptIn right_landmark_sensor(PTD7); // Tickers volatile bool steering_enabled = true; Ticker steering_control_ticker; int counter=0; int lap=0;