Collision Detection Simulator — Swept-Path Clearance & Obstacle Inflation Interactive

Interactive collision-detection laboratory: route a circular robot around a column and test the swept path against an inflated obstacle.

← Robotics Labs
About this tool — how it works & FAQOpen ▾Close ▴

About the Collision Detection Simulator

This simulator drives a circular mobile robot along a two-segment route past a round column. It compares the moment of physical contact with a swept-path test that checks the entire route against an obstacle inflated by the robot's radius. Move the waypoint to turn a collision course into a clear route.

What the simulator shows

• A circular robot footprint, a column obstacle, the inflated obstacle boundary, the planned polyline with its waypoint and a first-contact marker. • Controls for waypoint lateral offset (0-1.5 m), robot footprint radius (0.15-0.45 m), column radius (0.2-0.6 m), travel speed (0.2-0.8 m/s) and a stop-at-first-contact option. • Readouts for current surface clearance, minimum route clearance, whether the entire route is collision-free, distance traveled and whether the robot is currently in contact. • Experiments for a direct collision course (first contact at 1.25 m along the route) and for clearing the column by moving the waypoint.

Why inflate the obstacle

Testing a moving disk against a circle is equivalent to testing the disk's center point against a larger circle: Rinflated = Rrobot + Robstacle. Clearance is the center-to-obstacle distance minus the inflated radius. For each route segment the closest point uses a clamped projection, and the first-contact position solves |a + u(b - a)|² = Rinflated². Checking only the start and end points would miss an obstacle in between, which is why the lab evaluates the whole segment.

Model boundaries

The geometry is two-dimensional disk versus circle with exact segment tests. There is no orientation-dependent footprint, dynamics, sensing uncertainty or stopping-distance model. Stopping at contact is an ideal detection response, not a safety-rated collision-avoidance controller.

Frequently asked questions

Why check the whole path instead of just the start and end?

A route can begin and end in free space while passing straight through an obstacle in the middle. The lab checks the minimum distance along each segment, so it catches collisions the endpoints would hide.

What does inflating the obstacle mean?

The obstacle radius is increased by the robot's radius so the robot can be treated as a single center point. The robot touches the original column exactly when its center touches the inflated boundary.

How is the first-contact point found?

The lab solves for where the center path reaches the inflated radius, |a + u(b - a)|² = Rinflated², along each segment, and takes the earliest valid intersection.

Is this a path planner or safety system?

No. It detects collisions for a given route and lets you adjust the waypoint yourself. It has no global planner, braking model or safety rating.

Related tools & guides