Locked-on: verifying controls for aircraft tracking Chun Kai Ling, Daniel Wong 15-824 Logical Foundations of Cyber-Physical Systems
Motivation • Tracking : Orienting the radar to keep the beam continuously on the aircraft • Goal : Design a controller for a ground-based aircraft radar to track an aircraft • Civilian : monitor uncooperative planes (hijacked, trespassing) • Military : track aircraft for ground-based air defence 2 of 34
Related work • Controllers • Jesurum. In the spotlight. CPS VV Grand Prix, 2017. ( Model incorrect, potentially vacuous ) • Davis, Wise. Safe robot follow-the-leader in the plane, CPS Grand Prix, 2014. ( Weaker assumptions : follower can instantaneously set its velocity) • Dynamics • Jeannin, Ghorbal, Kouskoulas, Schmidt, Gardner, Mitsch, Platzer. A formally veri fj ed hybrid system for safe advisories in the next-generation airborne collision avoidance system 3 of 34
Modelling the real world x : location on horizon - 747 cruising altitude = 35,000 ft (12 km) - F-16 optimal combat altitude 30-40,000 ft (9.1-12 km) y : altitude - Say y varies by up to 10,000 ft (3 km) z : straight-line distance from radar to aircraft - Say z is XX km We model the (x, y) dimensions θ 1 , θ 2 : radar elevation and bearing 4 of 34
Modelling the real world x : location on horizon - 747 cruising altitude = 35,000 ft (12 km) - F-16 optimal combat altitude 30-40,000 ft (9.1-12 km) y : altitude - Say y varies by up to 10,000 ft (3 km) z : straight-line distance from radar to aircraft - Say z is XX km We model the (x, y) dimensions Assumption: z >> y (allowing the use of small-angle approx. for the controller’s beam) θ 1 , θ 2 : radar elevation and bearing 5 of 34
2D model Pencil-beam radar R: radius of pencil beam x c : controller’s location (center of radar beam) on horizon x ac : aircraft’s location on horizon y c : controller’s altitude y ac : aircraft’s altitude 6 of 34
1D model We will fj rst show the proof for the 1D case, and then how to extend it to 2D Pencil-beam radar R: radius of pencil beam x c : controller’s location (center of radar beam) on horizon x ac : aircraft’s location on horizon 7 of 34
Model • Assumption: we know aircraft’s position, velocity (from Doppler e ff ect) • Assumption: we model the aircraft as a point mass • Safety : if the aircraft starts o ff within the beam and velocity is not too high, it will remain within the beam | x aircraft - x controller |< R , radar beam radius 8 of 34
Simpli fj cations • These assumptions are made for ease of illustration, and may be removed with little to no trouble • The target has a velocity of 0 and is not accelerating • The tracker is initially centered at the target with a velocity v 0 > 0 9 of 34
Problem v 0 v 0 Run 1 Run 2 Run 3 of tracker Time Time VelRcity VelRcity T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 0 0 v 3 v 3 v 2 v 2 v 1 v 1 Actual time at which Maximum Reaction Time controller takes control 10 of 34
Problem v 0 v 0 Run 1 Run 2 Run 3 of tracker Goal: bound displacement as duration increases, and when reaction time T is nondeterministic Time Time VelRcity VelRcity T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 0 0 v 3 v 3 v 2 v 2 v 1 v 1 Actual time at which Maximum Reaction Time controller takes control 11 of 34
A failed controller Runaway displacement v 0 , v 2 , v 4 v 0 , v 2 , v 4 VelRcity VelRcity 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 τ 5 τ 5 5un 1 v 1 , v 3 , v 5 v 1 , v 3 , v 5 Time Time 5un 2 5un 3 5un 4 − v 0 − v 0 5un 5 5un 6 DiVplDcement (AreD) 12 of 34 of 34
[A] A simple controller • Intuition: pretend that reaction time is exactly T • Assign acceleration such that velocity = 0 after control cycle • Set acceleration = -(velocity/T) • Achieves velocity = 0 after one cycle What if reaction time could be less than T? • What if reaction time could be less than T? • 0 is a lower bound on displacement • What about an upper bound? 13 of 34
v 0 v 0 Run 1 [A] A simple controller Run 2 Run 3 Run 4 BRund Bound Blue curve is exponentially decaying VelRcity VelRcity → fj nite area under curve v 1 v 1 Upper bound (in velocity and area) on solid lines v 2 v 2 v 3 v 3 v 4 v 4 0 0 τ 1 τ 1 T T τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 14 of 34 of 34
v 0 v 0 Run 1 [A] A simple controller Run 2 Run 3 Run 4 BRund Bound Blue curve is exponentially decaying VelRcity VelRcity → fj nite area under curve v 1 v 1 Upper bound (in velocity and area) on solid lines v 2 v 2 v 3 v 3 v 4 v 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 15 of 34 of 34
v 0 v 0 Run 1 [A] A simple controller Run 2 Run 3 Run 4 BRund Bound Blue curve is exponentially decaying VelRcity VelRcity → fj nite area under curve v 1 v 1 Upper bound (in velocity and area) on solid lines v 2 v 2 v 3 v 3 v 4 v 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 16 of 34 of 34
v 0 v 0 Run 1 [A] A simple controller Run 2 Run 3 Run 4 BRund Bound Blue curve is exponentially decaying VelRcity VelRcity → fj nite area under curve v 1 v 1 Upper bound (in velocity and area) on solid lines v 2 v 2 v 3 v 3 v 4 v 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 17 of 34 of 34
v 0 v 0 Run 1 [A] A simple controller Run 2 Run 3 Run 4 BRund Bound Blue curve is exponentially decaying VelRcity VelRcity → fj nite area under curve v 1 v 1 Upper bound (in velocity and area) on solid lines v 2 v 2 v 3 v 3 v 4 v 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 18 of 34 of 34
[A] also works for known, constant aircraft acceleration Use relative displacement, velocities and acceleration v 4 v 4 Known, constant Bound v 0 v 0 acceleration v 3 v 3 v 1 v 1 VelRcity VelRcity v 2 v 2 BRund Run 1 Area between piecewise linear graph Run 2 Run 3 and blue line remains bounded Run 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 19 of 34 of 34
[A] also works for known, constant aircraft acceleration Use relative displacement, velocities and acceleration v 4 v 4 Known, constant Bound v 0 v 0 acceleration v 3 v 3 v 1 v 1 VelRcity VelRcity v 2 v 2 KnRwn CRnVtant Acc Run 1 Area between piecewise linear graph Run 2 Run 3 and blue line remains bounded Run 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 20 of 34 of 34
[A] also works for known, constant aircraft acceleration Use relative displacement, velocities and acceleration v 4 v 4 Known, constant Bound v 0 v 0 acceleration v 3 v 3 v 1 v 1 VelRcity VelRcity v 2 v 2 KnRwn CRnVtant Acc Run 1 Area between piecewise linear graph Run 2 Run 3 and blue line remains bounded Run 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 21 of 34 of 34
[A] also works for known, constant aircraft acceleration Use relative displacement, velocities and acceleration v 4 v 4 Known, constant Bound v 0 v 0 acceleration v 3 v 3 v 1 v 1 VelRcity VelRcity v 2 v 2 KnRwn CRnVtant Acc Run 1 Area between piecewise linear graph Run 2 Run 3 and blue line remains bounded Run 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 22 of 34 of 34
[A] also works for known, constant aircraft acceleration Use relative displacement, velocities and acceleration v 4 v 4 Known, constant Bound v 0 v 0 acceleration v 3 v 3 v 1 v 1 VelRcity VelRcity v 2 v 2 KnRwn CRnVtant Acc Run 1 Area between piecewise linear graph Run 2 Run 3 and blue line remains bounded Run 4 0 0 T T τ 1 τ 1 τ 2 τ 2 τ 3 τ 3 τ 4 τ 4 Time Time 23 of 34 of 34
[B] Another simple controller • Pretend reaction time is v 0 exactly T Velocity 0 • Select acceleration such that displacement is unchanged, but sign of velocity is fm ipped − v 0 • Set acc := - 2 * velocity / T DiVplDcement • Velocity oscillates in sign 0 • Displacement oscillates Bounded in magnitude T 0 2 T 3 T Time 24 of 34
Velocity-Displacement Space Velocity v 0 v 0 Run 1 Start: Run 2 displacement = 0, velocity = v 0 Displacement 0 0 − v 0 − v 0 25 of 34 of 34
Velocity-Displacement Space Velocity v 0 v 0 ODE runs until T Run 1 (maximum reaction time) Start: Run 2 displacement = 0, velocity = v 0 Displacement 0 0 − v 0 − v 0 25 of 34 of 34
Velocity-Displacement Space Velocity Each coloured line is v 0 v 0 ODE runs until T one control cycle Run 1 (maximum reaction time) Start: Run 2 displacement = 0, velocity = v 0 Displacement 0 0 − v 0 − v 0 25 of 34 of 34
Velocity-Displacement Space Velocity Each coloured line is v 0 v 0 ODE runs until T one control cycle Run 1 (maximum reaction time) Start: Run 2 displacement = 0, velocity = v 0 Displacement 0 0 What happens when actual run time < T? − v 0 − v 0 25 of 34 of 34
Velocity (v) dv dx = 2 v 0 v 0 Run 1 T Run 2 Run 3 Run 4 Displacement (x) 0 0 − v 0 − v 0 26 of 34 of 34
Velocity (v) Curves do not dv dx = 2 v 0 v 0 Run 1 form an outer bound T Run 2 Run 3 Run 4 Displacement (x) 0 0 − v 0 − v 0 26 of 34 of 34
Velocity (v) Curves do not dv dx = 2 v 0 v 0 Run 1 form an outer bound T Run 2 Run 3 Run 4 Displacement (x) 0 0 But the diamonds do! Each has the same aspect − v 0 − v 0 ratio with gradient 2/ T , independent of v and x 26 of 34 of 34
Recommend
More recommend