← All projects

Simulation / ROS 2 port

Robotics Project

Cooperative multi-target tracking with mobile sensors, from MATLAB simulation toward ROS 2.

  • MATLAB
  • Python
  • ROS 2
  • Extended Kalman filters
  • State machines

How can a group of mobile sensors keep tracking multiple moving targets as those targets move out of individual sensors’ range?

This project explores that question through a reconfigurable wireless sensor network. It combines target estimation, sensor coordination, and proactive handover, with a MATLAB simulation baseline and an ongoing port to ROS 2.

Estimation and coordination

The MATLAB simulation uses finite-state machines to manage sensor roles, Extended Kalman Filters to estimate target motion, and interception logic to recruit additional sensors when tracking loss is predicted. Scenario runs produce event logs and traces for examining how the system behaves.

The wider design investigates distributed bidding and joint interceptor assignment, particularly the conflicts that arise when several targets need the same sensor.

Toward ROS 2

The ROS 2 implementation includes a target simulator, configurable sensor agents, range-gated noisy measurements, per-target Extended Kalman Filters, and sensor movement. The documented baseline uses 25 mobile sensors and supports up to three targets.

The ROS 2 port is currently at the estimation and sensor-movement stage. Distributed handover, expanded conflict resolution, and later visualization and hardware integration are subsequent milestones.

Further reading

The repository includes a final report and simulation recordings. I’ll use this page to add my own explanation of the coordination problem, the design decisions, and what changes when moving from a MATLAB simulation into a message-based robotics system.