It is a humane version for IC382 Rescue Robot student.
- Basic robot movement
- int calculate_MOTOR_PWM(unsigned char percentage); => Robot PWM Calculation
- void robot_forward(int speed); => Robot Control -> Forward
- void robot_stop(void); => Robot Control -> Stop
- void robot_adjust(int motor1_speed, int motor2_speed); => Robot Control -> Adjustable
- MPU6050 with FLC and Kalman Filter
- float trimf(float measurement, float start, float peak, float end); => Fuzzy Logic: triangular membership function
- float Rmf(float measurement, float top, float bottom); => Fuzzy Logic: R membership function
- float Lmf(float measurement, float bottom, float top); => Fuzzy Logic: L membership function
- float trapmf(float measurement, float start,float top_1,float top_2,float end); => Fuzzy Logic: trapezodial membership function
- int raw_FLC(double error); => Raw fuzzy logic controller
- int pitch_FLC(double error); => Pitch fuzzy logic controller
- DMA Receiving and Analyzing GPU Message from NVIDIA Jetson Nano
- void gpu_msg_analyzer(void); => Analyzing GPU message