This project is still under construction and update progress, and includes details explanation. Please check the repository regularly for some updates
A Master of Engineering Academic Project:
-
Guide you to understand surface vessel modelling, model-based and learning-based controllers design, and environmental distubances modelling
-
MATLAB code to simulate the control system to perform the infinite loop path following
-
Requirements for the trajectory tracking simulation:
-
MATLAB 2020a later
-
- Problem statement
- USV modelling
- Controller design
- Linear Extended Kalman Filter
- Environmental disturbances
-
Design, simulate, as well as possibly build and test, an autonomous water buoy that uses GPS and on-board motors to perform tracking
designed trajectories in the presence of environmental disturbances including wind and wave.
-
Software programming in MATLAB was used to simulate and test the design of the USV control system
-
The project is assumed to be operated under the general condition of a slight sea state generated by statistical algorithms such that
simulation results are presented to analyze how the vessel can overcome disturbance challenges.
-
Heron M300 acts as the main USV platform adapted to software simulation.
-
A twin-hull and pontoon-style vessel for aquatic research.
-
Heron M300 is assumed to mitigate the heave, pitch, and roll response of the payload tray when the Heron M300 performs tasks on the
water surface for simplifying system identification.
-
Seven proposed controllers are designed to evaluate the tracking performance whatever the environmental distubances exist.
-
Model-based controllers are briefly presented below and please refer to the code in details.
-
Learning-based controllers are showed in the code section to explain more details.
-
For simplicity, the Linear EKF is presented as the main estimator based on the vessel system states or poses
-
The linear EKF is acceptable in the project to create a guidance system for the path tracking task and estimate the vessel poses by filtering
sensors noise and a basic estimation algorithm
-
In the reality for robot localization, the Heron vessel observes the vessel states from its proprioceptive sensors and carries out waypoint
navigation for the path following.
-
Wind and wave are two major sources to disturb the route tracking behaviour in the project
-
The raw wind and wave data by the andom walk algorithm
-
Animation results without the disturbances are shown each of
controllers.md
files. -
If you are intersted in the path following performances under the distubances, please download the code with MSS and
GP packages and have fun with them! -
Detailed statistical data including RMSE and maximum distance errors is not shown in this repository. Please drop me an email for the PDF
report version. -
Thruster force control is not perfectly presented due to excessive force outputs of PID, NMP, and GPMPC_FBL controllers at the beginning,
and further gain tunning task is needed to approach to the real-world testing.