← Back to all projects

Waypoint Tracking and Control of an Autonomous Surface Vessel

Institution: IIT Madras
Timeline: 2024–2025
Status: Completed

Designed and deployed a full autonomy stack for a surface vessel; from 6-DoF maneuvering dynamics simulation through state estimation and control, all the way to hardware validation on a physical ASV testbed using ROS.

ROS Python Extended Kalman Filter PID Control Line-of-Sight Guidance 6-DoF Dynamics

Key Results

6-DoF
Maneuvering dynamics model
EKF
State estimation pipeline
Hardware
Validated on physical ASV

Problem & Motivation

Autonomous surface vessels need to reliably follow planned routes in the presence of ocean currents, wind disturbances, and sensor noise. This project tackled the full pipeline: modeling the vessel's dynamics, estimating its state from noisy sensors, and controlling it to track a sequence of waypoints autonomously.

System Architecture

The autonomy stack comprised four tightly integrated layers:

Dynamics Modeling

The 6-DoF vessel model captures the coupled hydrodynamic forces acting on the hull. This includes added mass effects, nonlinear damping, and restoring forces. The model was parameterized for the specific ASV hull geometry and validated against known maneuvering test data.

State Estimation & Control

The Extended Kalman Filter was designed to handle the nonlinear dynamics while fusing multiple sensor modalities. GPS provided position updates at lower frequency, while IMU data gave high-rate orientation and acceleration measurements.

The PID heading controller was tuned for the specific vessel dynamics, balancing responsiveness against overshoot. The Integral LoS guidance law handles waypoint switching and compensates for steady-state cross-track errors caused by currents.

Hardware Deployment

The entire stack was deployed on the physical ASV using ROS. Nodes were structured for modularity: separate packages for sensing, estimation, control, and guidance, communicating via ROS topics. The system was validated in real water conditions with GPS-based ground truth.

What I Learned

This was my first end-to-end autonomous system: from mathematical modeling through real-world deployment. The biggest lessons were about the gap between simulation and hardware, i.e., sensor noise, communication latency, and environmental disturbances that no simulation perfectly captures. Debugging a control system on water, where you can't just pause and inspect, taught me a lot about designing for robustness.

Next Project
Hydrofoil System — Design, Optimization & Active Control →