Report to my friend Shura (Alex). (Translation as it was promised)
Ok Alex - this is a situation – the magnetometer – yesterday (all my troubles seemed so far away…) got from it accuracy 0.3 degree with capability to increase accuracy to any desired precision (first luck in last month). For sure in the magnetometer exists error related to a different measurements on different axis, but this error can be corrected by calibration, on big paper sheet I just marked angles – taped magnetometer to a wooden cube (yes, I am still playing with a wooden cubes – the are not magnetic) with long aluminum ruler, do measurement on each axis and corrections hammered directly into a (flash memory) table.
Magnetometer allowed to confirm (surprise!) latitude of aVancouver– yesterday on my uneven table 18.1 degrees matched perfectly (angle btw horizon and direction of a magnetic field’s vector).
Model of a (earth) magnetic field is simple – some cos() – sin() functions and somewhere (already forget where – in saved spreadsheet) something divided in half. Loaded yesterday (year 1977) FORTRAN’s programs by Nikolai Tzigankov. He made nice model of Earth magnetic field including influence of a solar wind on far distances from the earth. Needs to convert code to C, and adapt it to my simulator/tra-calculator. This for sure will take a time (no less a week), conversion takes no longer then hour(s), but needs to be careful with default names of integer/float variables, and mostly time spend on each line verification.
About “gyro navigation device” == “my shame” == “not finished” – one week ago understood what needs to do (or may be just foolish-ing myself that understood) – after magnetometer calibrations and implementing (magnetic) model plan-b for software == 2 second on a orbit == 16 km == vector of a magnetic field can change 0.3 degree – the same error will be in the magnetometer – for one second confirmed error is 0.3 (for 2 seconds it will be 0.15-0.2 degree ), then gyro’s readings corrected by temperature calibration, that will give: (a) gyro angles, (b) magnetometers angles, (c) difference in angles by gyro, (d) difference in angles by magnetometer. (a) + (b) flying independently against each other, but if (d) is less 0.3 on all axis then (c) is a correction’s value. On my microprocessor with 500 bytes can be perfectly implemented (c) and (d) without losing single bit – 2000 readings == 32K, dividing (like in a school) by logarithms and arctan(sqrt()) from Bradis table (school’s technology proved faster 100 times). Correction on magnetometer axis’s readings is in flash table too. I think it can be fit into 1MB (1.20$). if (not) then 1.81$ (4MB) will be suitable;
Difference in gyro implementation for rover – instead of a magnetometer it will be accelerometer – all software is the same.
Difference in gyro implementation for a ground station == zero (it is possible to use magnetometer + gyro + accelerometer to demonstrate effective trick == detection of earth rotation with a device totally not capable to so – trick will be nice but it is extra == does not worth spend time on it).
I thought that I was loosing time (and time is not my friend for today), but after careful examination Boris Chertok’s book I found that story about Luna9 has had similar problems/questions – 1 second (1/60 degree) error == 200km error on the moon, gyro, not enough power for a gyro, burned devices at tests, power station does not work, absence of telemetry out of a ground stations, orientation using sun-earth-moon, gyro does not get enough time to reach precision because of a power limitation, earth’s image was on a corner of sensor, failed deadlines, lost money and etc. One of a sample “bug” reported by Boris – after lost probe was found that one department (hundreds of people assigned to do trajectory calculation) understood “clockwise” direction totally opposite the understanding by another department. Only 14th attempt was successful.