E,It will make the trig maths easier and more accurate.
E
I have [SIZE=-1][SIZE=-1]Single - 4-byte single precision floating point numbers, 7 digits precision, modified IEEE754 standard
[/SIZE][/SIZE]
Cheers E.
E,It will make the trig maths easier and more accurate.
E
From memory, one of the NMEA data stings that comes out of the GPS module is already nicely formatted and contains the heading (horizontal degrees 0-360) and azimuth (vertical degrees 0-90) of every satellite it is locked to.You mentioned the simulator and BASIC, but not which BASIC?
Calculating distance and/or bearing between points is going to be a pain in the butt (if possible at all) without trigonometry.
The tracker has to cater for other sources other than satellites.From memory, one of the NMEA data stings that comes out of the GPS module is already nicely formatted and contains the heading (horizontal degrees 0-360) and azimuth (vertical degrees 0-90) of every satellite it is locked to.
So if your moving antenna has a motor for horizontal rotation and a motor for vertical rotation you just turn it to the same two numbers.
That's zero math.
-------------------------------------------------------------------
http://www.visualgps.net/visualGPS/default.htm
That freeware above looks ok, and has the circle map showing the satellites position. Not the same freeware I used before but it looks better with more features.![]()
But unless I know my heading, how can I aim anything at anything even if I know the positions of numerous other things?If there were a third GPS receiver (the target and the tracker are the first two) then the tracker could be designed to ignore its own heading, and calculate the azimuth of the target relative to the baseline between the tracker and the third receiver. That baseline would be known in the earth's frame of reference, because you'd know the locations of its endpoints. Or of course, you can always get an electronic compass module to tell you your heading. Even if you want to operate worldwide, you could have a lookup procedure to tell you local magnetic deviation, but if you're just working near home, you can assume it's constant.
But now I'm wondering what the distances involved in this setup are going to be. If a GPS receiver gives you a positioning accuracy of 20 feet or so, it seems inevitable that the angular accuracy you'll get will be better for long distances than for short ones, because the positional uncertainty has less effect. So for points 1000ft apart, being 20ft off each end of the true line would give you an angular error of 40/1000 or 1/25 radian, or about 2 degrees. Maybe that's acceptable, but the shorter the distance, the worse it becomes.
To clarify: (In case I used 'GPS' incorrectly) I use a GPS module to give me test information data.Ahh, I misunderstood. You said; "aim antennas towards the signal, based on GPS ... signals."
I thought you wanted to aim something at a GPS satellite. From a stationary base.
The big problem you are going to have using GPS to aim at something else, from a mobile base, is that you need to know the heading (360' horiz rotation) of your mobile base.
GPS does not know your heading, it calculates it by interpolating two or more position readings AS YOU MOVE horizontally. So you are not going to get any sort of accurate heading of your base unless it is moving in a straight line so the GPS can calculate a heading from multiple position readings in a line. Obviously the more readings, the straighter the road etc the more accurate the heading data becomes over time from averaging.
Do you have a way to deal with this?
It's probably a good idea to explain exactly what this device will do and how it will be used.![]()
See #27, for clarification.If there were a third GPS receiver (the target and the tracker are the first two) then the tracker could be designed to ignore its own heading, and calculate the azimuth of the target relative to the baseline between the tracker and the third receiver. That baseline would be known in the earth's frame of reference, because you'd know the locations of its endpoints. Or of course, you can always get an electronic compass module to tell you your heading. Even if you want to operate worldwide, you could have a lookup procedure to tell you local magnetic deviation, but if you're just working near home, you can assume it's constant.
But now I'm wondering what the distances involved in this setup are going to be. If a GPS receiver gives you a positioning accuracy of 20 feet or so, it seems inevitable that the angular accuracy you'll get will be better for long distances than for short ones, because the positional uncertainty has less effect. So for points 1000ft apart, being 20ft off each end of the true line would give you an angular error of 40/1000 or 1/25 radian, or about 2 degrees. Maybe that's acceptable, but the shorter the distance, the worse it becomes.
Thanks for the extra info, that clears things up....
The Tracker will be stationary, and will be aiming north and levelled. To start, it will need to be aimed at the source. (By sight, calculation etc) then it will read its location sentence in NMEA data form.
...
At the moment 'Always stationary at a known location and precalibrated'.Thanks for the extra info, that clears things up.
Just to make sure, this will always be stationary and at a known lat/long/ele and it's rotation has been precalibrated?
So the entire purpose of the device is that you enter a second lat/long/ele and it points towards the second location?
I think at short ranges you only need basic trig;
You determine horiz distance from the two lat/long values and trig.
Elevation diff is ele1 minus ele2.
Azimuth using trig using horiz distance and ele dif.
Horiz rotation using the two lat/long and trig.
At short distances (local antenna range) you can ignore the curvature of the earth and pretend the earth is flat.
If you get over 10 miles or so you may need to include curvature, but it really depends how accurate you want the aiming. That yagi antenna will be fine within 5 degrees of accurate, which will cover a LONG range before the curvature becomes a problem.
All math/s is 'ouch' to me.Well it looks like you will need to include curvature and geoid information in your calcs. Ouch.
Ground targets "hundreds of miles away" will be well below the horizon, so not much use to try to point at them.
I would also like to know how you will get the current position (lat/long/ele) of a satellite?
(Except GPS sats in view, which as I mentioned before are spat out by the GPS text already as neat heading and elevation numbers so no math is required).
Hi E,hi C,
Trust me , you will require fast Trig maths to resolve the data.
I was designing electronics surveying equipment for many years.
Eric
Ah, the good old Z80! I used a couple of Spectrums to run a photographic lab I built. Happy days.hi C,
I used a Z80A cpu based system, running at 6Mhz, it was able to cope with most maths.
On some of my laser ranger X, Y scanners I had to use 3 , Z80A's for the different functions.
With ship borne GPS a single Z80A was fast enough.
Check this page;...
Regarding your comment "GPS sats in view" when they spit out the data, can you explain how the tracker knows what angles to move to, without any math/s being required, please?
What is fast enough? Doesn't it depend of the speed of the object?Hi E,
Is it possible to design fast enough maths for this? Can you give an estimate of time for each calculation please? The whole tracker will need to be designed around the maths speed.
Cheers, Camerart.
Yes it depends on the speed and distance of the object.What is fast enough? Doesn't it depend of the speed of the object?
I checked the speed of the floating point functions in Oshonsoft Basic.
At 20MHz they take about 10ms / function.
My guess is that calculating the bearing takes about 0.15s.