Path planning and control

Real-time Implementation of a non-linear MPC controller for highway lane merger using Raspberry Pi and ROS platform

This research project focused on the highway merger on scaled down, RC car. The project is aimed to demonstrate non-linear model predictive controller which is highly optimized multiple shooting algorithm can be used in real time to control the vehicle and perform the lane merger, even be used in the co-operative environment.

The sensor used to localize the RC car is IMU, who's data is filtered comprised by the Butterworth low pass 6th order filter, band discrimination, moving window approach and appropriately tuning the IMU with integration constants.

RC car's actuator System, sensor, and the controller is entirely modular. This is developed using ROS architecture. The nodes communicate with each other in real time and in the latest message can also be queued which leads to no data loss approach. ROS also allows the different languages to work together which is a distinct advantage here where the optimized MPC controller is in C/C++ but the IMU and motor and steering driver is in python. This adds an edge of usability of the python with speed of C++ running as a controller.

Future Scope: The ROS architecture and well-optimized controller makes this framework highly modular where any sensor and sensor fusion algorithm can be implemented. This non-linear mpc controller can also be used in an aerial vehicle.

Personal contribution: I have contributed to the project by constructing ROS odes for sensors, actuators, and control. Also, I have assisted in optimizing the noisy signal from the IMU. I am working in varying the gains and weights of the controller according to the test scenario.