navigation and control of boat

8 views (last 30 days)
Ahmed
Ahmed on 19 Jul 2023
Answered: Anurag on 8 Aug 2023
I am working on a project using MATLAB, in this project I have a simulation of a boat. This boat has a thruster on its left end and a thruster on its right end and these thrusters can be controlled individually by turning them at different speeds, to illustrate this, if both thrusters are turning at the same speed the boat moves forward, but if the left thruster is given a greater value then the boat turns to the left. It is worth noting that the thrusters can be given a negative speed input which implies that the propellers will turn in the opposite direction.
On this boat there is an IMU sensor, this sensor provides me with linear acceleration in all components, angular acceleration in all components and the current orientation of the boat. Additionally I am always able to know the location of my boat in the XY Plane.
The aim is to start at points X1 and Y1, and command the boat to go to points X2 and Y2 autonomously and stop there. The boat is required to take the shortest path possible and arrive as fast as possible.
Given that I have access to all MATLAB toolboxes, can you suggest the best way to tackle this problem and what tools would help in this case

Answers (1)

Anurag
Anurag on 8 Aug 2023
Heres' a high level stratergy to tackle this problem :
  1. Path Planning: Use Robotics System Toolbox for path planning using RRT or A* algorithms to generate a collision-free path.
  2. Control Strategy: Utilize Control System Toolbox to design and implement PID or MPC controllers for precise thruster control along the path.
  3. State Estimation: Process IMU sensor data with filters from Sensor Fusion and Tracking Toolbox like Kalman or complementary filters to estimate boat's state.
  4. Localization: Combine estimated state with XY coordinates using Navigation Toolbox to enhance position accuracy.
  5. Trajectory Tracking: Implement algorithms using Control System Toolbox to ensure the boat accurately follows the desired trajectory.
  6. Obstacle Avoidance: Integrate lidar or camera data using Computer Vision Toolbox or Sensor Fusion and Tracking Toolbox, and employ reactive control techniques from Control System Toolbox to avoid obstacles.
  7. Simulation: Create a simulation environment using Simulink and validate your algorithms.
  8. Tuning: Utilize Optimization Toolbox to fine-tune control and planning parameters for optimal performance.

Products


Release

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!