"Proportional Navigation" Missile Guidance System

Hi there!
So a couple of months ago I worked on “Proportional Navigation”, a missile guidance system used for the AIM-9 missile system. The project itself took more than I expected, mostly due to studying the different forms of ProNav. I would also like to thank Addmix for the help, he guided me in the right direction and helped me so much!

So I categorized these videos by a navigational constant N, which is used to tell the onboard computer how much to multiply the turn rate. N is usually set as a whole number from 2-5. It does somewhat affect intercept time.
In blue is the Missile, in Red is the target (could be an aircraft or something)

N = 3

N = 4

N=5

And here I give the target a bit of angular velocity, to imitate an evasion manoeuvre. Here I set it to N=4.

:slight_smile:

7 Likes

hello, i’ve been trying to implement my own pronav system but i’ve been struggling a lot

how exactly is acceleration command applied to the missile?

Hi there!

So practically, many people mis-interpret the accceleration command. The acceleration command tells the onboard autopilot how much force is required to create a collision triangle (how much force is needed to set the missile on the path of a collision). It is the autopilots job to then turn the control panels (fins) to meet that command.
These are the control panels btw


Control panels work by bending the air around them. Since we dont really wanna simulate air, or create an entire autopilot, the acceleration command is kinda useless. What we wanna know is: how much in degrees do we have to turn the missile?

Thankfully, theres an equation for that. Basically, the usual PN law you see is this one:

Turns out, Vp is a scaling factor, meaning what it does is turn the angular LOS Rate from degrees into km/h, which is what is needed by the autopilot. (This isnt completely correct, but its an easy way to think about it).

And, since we dont need the acceleration command, we can just remove the Vp term. So, we end up with:

Where Y-dot is the necessary missile angular change to strike the target in the future. Meaning if you just add y-dot to your missile’s orientation, you’re missile will track the target!

I dont exactly change the missiles orientation, instead I use an angular velocity instance, with some other calculations.

So, to shorten up this thinf, you dont need the acceleration command, as its used for the complex onboard autopilot that needs to account for air turbulence, air pressure, etc.. All you need is to find how much your missile has to turn in degrees.

Now, believe me, I know this is wierd and complex, but if you have any questions, go ahead and ask.

As a final word, pronav is largely misunderstood. All its doing is saying, if the line-of-sight angle is changing, the missile needs to change orientation PROPORTIONALLY. If it isnt changing, the missile is bound to collide with the target!

Heres a video that explains the whole thing: