Home▸Deep Ocean & Underwater World▸2D Active Sonar — Ping Propagation & Echo Ranging

📡 2D Active Sonar — Ping Propagation & Echo Ranging

A real 2D active-sonar simulator: watch each ping expand as a true circular wavefront at 1500 m/s, reflect off objects with real round-trip timing, and read the computed range and bearing off a PPI-style scope.

Deep Ocean & Underwater World2DModerate60 FPS📱 Mobile-adapted💧 Water⇄ 3D version
2d-sonar ↗ Open standalone

About This Simulation

What It Demonstrates

Unlike a rotating-beam sonar sweep, this scope models the physical propagation of sound. A ping fired at t₀ expands as a real circular wavefront, radius(t) = c·(t−t₀), at c = 1,500 m/s in seawater. The instant that radius reaches an object's true range, the object re-radiates its own expanding wavefront; when that return wave reaches range 0 (the ship), a contact is logged from the measured round-trip time trt: R = c·trt/2. Echo strength falls off with the real inverse-square spreading loss over the total path length 2R, so faint or distant targets can drop below the detection threshold.

How to Use

Press Ping (or enable Auto-ping) and watch the cyan wavefront expand outward. Where it crosses an object, a second, orange wavefront grows outward from that object — the echo. When the orange ring reaches the ship, a yellow contact blip appears and a row is added to the Contact Log comparing the computed range/bearing to the actual placement. Time scale slows propagation for study; Ping power raises the source level and therefore the maximum detection range.

Verifying the Physics

Toggle "Show actual positions" to overlay the true object locations as dim grey markers. Because range and bearing are derived purely from wavefront-crossing times and directions, a correctly modelled simulation places every yellow contact blip exactly on top of its grey marker — the Contact Log's Δ column reports that error directly, and it stays at (or extremely near) zero.

⚙ Under the hood

A real 2D top-down active-sonar simulator: each ping expands as a genuine circular wavefront at 1500 m/s, reflects off objects with real distance-based echo timing, and a PPI-style scope reports range and bearing computed from the actual round-trip time, verified live against the true object placement.

underwatersonaracousticswavefrontecho rangingspreading loss2d

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)