T3
If you have a UAV DevBoard, and are anxious to do some flying with it, you should skip the GentleNav firmware and wait for MatrixNav, it is almost done, and will perform a couple of orders of magnitude better than GentleNav.GentleNav was originally developed for my previous board, which used the ET312 GPS, 2 gyros, and 2 accelerometers. The algorithm was rather simple, but worked well enough and I used it for several years.This season I decided to design a better board to use 3 gyros and 3 accelerometers to improve performance. Recently, I have been working with Paul Bizard on a "direction cosine matrix" approach to estimating orientation. It shows great promise, and is almost done.In the meantime, I thought that owners of the new board would want something to fly with, so I ported the GentleNav firmware from my previous board to the new one. Today was the first day I actually flew it, up until now I have been doing bench testing.Well, GentleNav does not work as well on the new board as it did on the old board. I traced the problem to the EM-406. It turns out that the dynamic response of the EM-406 is not nearly as good as that of the ET312. It takes the EM-406 around 15 seconds to respond to a 90 degree turn, while the ET312 responds almost instantly. Because of this large dynamic time lag, the GentleNav firmware is not stable in the return-to-launch mode.I could probably experiment with the feedback gains and get GentleNav to work with the EM-406, but since MatrixNav is almost done, I have decided to declare GentleNav to be obsolete and to focus my time on finishing MatrixNav, which should be available in a few days, a couple of weeks at the most. MatrixNav will completely resolve the issue with the dynamic delay, since it uses mainly the gyros rather than the GPS for direction information. The direction cosine matrix algorithm has a convenient way to compensate for GPS delay. MatrixNav is almost done, but I want to perform extensive flight testing before releasing it.So I suggest you wait for MatrixNav before using your UAV DevBoard in flight. Of course, if you do not want to wait, you are welcome to experiment with GentleNav, but I do not recommend it.In the meantime, you might want to try the roll-pitch-yaw demo to gauge what the performance of MatrixNav might be.Bill Premerlani
E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • I need help building a transformation matrix from NED to ENU. I have to multiply roll * pitch * yaw. I've been trying to figure this out but this isn't my area of expertise. Can someone please assist me with this problem?

    Thanks in advance,
    Michelle
  • Thanks Bill

    I can see the link now and downloaded the document...great work! I have already gone thru all of your code on the demo and think I can work my way around it. Will order the hardware upon my return...looking forward to getting it to work on my airplane and heli (with mods).
  • 3D Robotics
    We've had problems with a few posts in the past that went author-only after an edit, even though they said they were visible by all. The best way to check to see if a post is okay is to log out and see if you can still read it. If a post has been causing this problem, it's probably worth going through that check after every edit.

    BTW, the post is now visible to me. Go figure...
  • T3
    Chris,
    The post's rights are set for everyone.
    I just discovered that sometime I cannot access the link either. It seems to come and go.
    Bill
  • 3D Robotics
    Bill,

    The link is indeed broken. Please check and see if the post's rights accidentally got set to Author only or Friends only.
  • T3
    John,

    In case you still cannot access the blog, and would like to know what it said, I will repeat it here:

    Successful flight testing of MatrixNav is complete. MatrixNav is open source C firmware for the UAV DevBoard that provides pitch stabilization and return to launch functions for inherently stable aircraft that are controlled by rudder and elevator. MatrixNav is built on top of a method for integrating gyro signals into orientation information called direction-cosine-matrix (DCM). Flight tested firmware and documentation are available.

    A dozen test flights were made with an electric powered Gentle Lady under the following conditions:

    1. Both calm and windy conditions.
    2. Powered and gliding.
    3. Return to launch with the plane pointing away, toward, or perpendicular to me.
    4. Circling behavior under RTL control after the plane crosses the launch point.
    5. Hand launch in both manual and pitch stabilized modes.
    6. Landings with pitch stabilization turned on.

    MatrixNav completely solves an issue that I wrestled with in previous versions of my firmware: gyro cross coupling during a banked turn. If you attempt to use a pitch gyro signal to stabilize the pitch of a plane, it will measure a portion of the turn rate of the plane during a banked turn, and will cause the plane to dive into a turn if the bank angle is too great. The use of direction cosines eliminates the cross coupling and makes it simple to achieve a level turn at any bank angle.

    Furthermore, since MatrixNav relies mostly on gyros, not accelerometers, I was finally able to turn on pitch stabilization during hand launch.

    I added a feature to give the plane a kick during return to launch: you can program in the return to launch pitch angle. By deliberately pitching the nose down a bit, you can increase the return speed to better penetrate the wind.

    MatrixNav is intended for you to either use as-is, or to serve as the starting point for your own projects. So if you have a UAV DevBoard and want to use it to do some flying of an inherently stable plane, you will definitely want to try out MatrixNav.

    Bill Premerlani
  • T3
    John,
    The link to the blog entry worked for me just now. If it still is not working for you, here is the code and documentation for MatrixNav.
    Bill
  • I see a new entry on the blog list "MatrixNav is released" but the link is broken...is it just me?
  • OK good...yeah can't remember the last time I had to use transform groups since grad school.
    I eagerly await the code!
This reply was deleted.