Using the IMU as a yaw source without ExternalNav

Hi all,

I’m looking at both compass-less and gps-less operations on Copter, and would be interested in thoughts about using the IMU as the sole source of yaw. I am aware of the ExternalNav option as a yaw source for the EKF, but wanted to ask about the viabilty of just using the IMU on its own.

My system uses a companion computer to send SET_ATTITUDE_TARGETmessages, and the vehicle only ever requires a relative bearing to compute the body messages.

So internally, my route calculation would say at a given speed, yaw +2° for the first leg, then yaw -4° for the next leg and so on.

I appreciate IMUs on standard FCs aren’t great, but I was wondering what sort of performance I might be able to expect and how long before drift would become an issue?

I was also wondering about just forking ArduPilot source directly, “spoofing” North, and then using the IMU to give a yaw bearing.

Any thoughts much appreciated.

Cheers,

~N

I saw someone on Discord with a repo for IMU only navigation. Don’t know how performant it is. Anyway that work will probably interest you

1 Like

Use search for Dead Reckoning. Quite a bit of work has been reported using an expensive IMU so that would be best case..

1 Like

With a magnetometer heading can be reasonably stable. I would be more worried about the rest of attitude estimate, especially with sustained forward flight without drag and wind estimates.

How do you mean Dave? Could you elaborate?

Use that in the search box in the upper right, It will take you to some comprehensive posts about Dead Reckoning.

1 Like

So if I went down this route there would be no magnetometer or GPS on board. At the moment I’m looking at using the angular rates returned from the Attitude Quaternion message as my source