Interesting question for you clever people.
Should there be a ratio of external compass height to frame size. As in assuming a Carbon Fibber frame the larger the body the higher the compass has to be to have an angle of ‘view’ to magnetic north. OK not explaining very well so a diagram.
Ok diagrams are crap and not to scale but should illustrate my meaning.
The red line represents the magnetic field. I know magnetic field does not look anything like this.
Or is this just total nonsense?
Not sure what you mean by “have an angle of ‘view’ to magnetic north”.
The Earth generates a magnetic field that is present and can be measured at any point in space and doesn’t depend on the “angle of view”, just like the gravitational field does not depend on field of view and any object is subject to it irrespective of position or orientation.
The MEMs magnetic sensors used on drones will measure the three component of the field irrespective of angle of view.
So just like one can figure out where “down” is by following the trajectory of any dropped object due to gravitational force, one can figure out heading and magnetic North from magnetometer readings irrespective of angle of view.
Btw, what does matter though is any additional magnetic field induced by on-board currents like those between battery and motors, this will introduce errors in the measurement of the “Earth only” magnetic field which is the one we want for orientation. Hence the use of masts to host the mag when it’s not on the flight controller, or the physical separation from EM sources of the flight controller containing the mag when it is onboard. This may help: http://ardupilot.org/copter/docs/common-magnetic-interference.html
Hi Oliver, My explanation was very poor however you managed to answer my question.
The reason I asked was we have built a large rig. The chassis plates are carbon fibre and are 1000mmx470mm and we are having serious magnetic issues.
The gig crashed and looking at the log, just seconds before take-off the Pixhawk thought the rig yawed 180o. Which it did not. I’m trying to work out what happened still.