Just a resend of a failed posting from earlier:
I (Steve Hosgood) wrote:

Anders Gidenstam wrote:

On Tue, 13 Feb 2007, Holger Wirtz wrote:

I know that exact
range answers are depending from more parameters than only the output
power... What I need is a simple number which should describe the
maximum range og a COM1. For example 5 km? oder 20 km???

Hi,

I think VHF transmissions are mostly limited to line of sight unless something unusual is going on..


You're right, Anders though the tricky bit is modeling the interactions between radios fitted in different classes of 'plane. Which is what I believe Holger is trying to do here.

I'm not an expert either - expect at least three more people to pounce on my maths below :-)
Here goes anyway....

It might be easiest to use an analog of real world parameters to get this sort of thing working right. Transmitters are typically rated in watts, receiver sensitivity is typically given in uV. The power received by a receiver is proportional to the power of the transmitter and inversely proportional to the square of the distance. The *voltage* received (which is what you want to know) is proportional to the square-root of that, i.e proportional to the square root of the transmitter power and inversely proportional to the distance itself. I think.

So, Holger, if you arrange that all "radio transmission" packets in FG/MP carry the transmitter's wattage and the location of the source, you can work out the straight-line distance from yourself (call it 'd'), and then do something like:

    pkt = get_packet();
d = sqrt(sqr(my_x - pkt->x) + sqr(my_y - pkt->y) + sqr(my_alt - pkt->alt));

    if (sqrt(pkt->transmitter_power)/d < my_receiver_sensitivity)
          /* I can't hear this guy */
          chuck_packet(pkt);
    else
          decode_packet(pkt);

This sort of thing would maybe allow ATC (who might have more sensitive radios) to hear people that the local Cessna pilots can't hear. And that might be quite realistic.

To improve things, you might like to make sure that the straight-line distance 'd' between yourself and the transmitter does not get close to ground. You'd have to factor in curvature of the earth and any mountains if you wanted to get it right. If the straight line gets within a couple of wavelengths of ground, you start getting attenuation and multipath distortion and all sorts of stuff(*). For a first cut, ignore all that and just use 'd'!

Notice also how you could arrange to degrade packets if they get received very close to your receiver's sensitivity (you could add noise, distortion etc) which again would add to realism. My code suggestion above just models an unrealistic sharp cutoff when the signal gets too weak, but IIRC aviation radio is AM deliberately because that's *not* how AM radio behaves as it nears the sensitivity limit.

Steve.



(*) The BBC (amongst others) have done a load of work in this area to do with predicting service-areas of radio and TV transmitters. Some of it is on the net.


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Flightgear-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to