There hasbeen increasing discussion of application of the UAV Dev Board IMU approach to CCPM RC Helicopters. Bill and I thought it would be useful to start a thread on this specific topic and see what interest there might be.

My particular interest is to initially implement a stabilization system on my TREX 450SE Heli. Loftier goals of AP with RTL and WPs may well follow.

If you are interested in something similar, please post and describe your interests. Perhaps we can help Bill on some of the CCPM-specific issues.

 

Note:  The Heli and Quad discussions have been moved to:

http://groups.google.com/group/UAVHeliBoard?hl=en

 

With the code and documentation at:

http://code.google.com/p/matrixpilotheli/wiki/TopLevel?tm=6

 

John

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

Join diydrones

Email me when people reply –

Replies

  • Hello everyone,

    I'm trying to use the board for a VTOL model application and I'm addressing this Helicopter discussion thread because of need of stable hovering I need to achieve first.

     

    The DCM algorithm and the board themselves seem to be more than helpful, thanks everyone involved but, in practice, there is a big limitation I encounter:

     

    My idea of achieving stable hovering is to get the absolute acceleration of the model regardless of it's attitude (taking out the gravity component obtained through the DCM algorithm) and sending the X and Y axis absolute accelerations to PID controllers that would keep the model stable (even in windy conditions, etc.).

     

    The code looks like:

        // gravity measured in the frame of reference of the ground
        fractional gravity[] = { 0 , 0 , GRAVITY } ;
         
        // gravity measured in the frame of reference of the plane
        fractional gravity_p_ref[] = { 0 , 0 , 0 } ;
       
        // gravity component in the plane reference
        fractional abs_acceleration_p[3] = { 0 , 0 , 0 } ;
       
        fractional rmat_transpose[] = {RMAX, 0, 0, 0, RMAX, 0, 0, 0, RMAX} ;
       
        read_accel() ; // to update gplane (acc vector)
       
        setDSPLibInUse(true) ;

        MatrixTranspose(3, 3, rmat_transpose, rmat ) ;
        // get the gravity component in the plane frame of reference:
        MatrixMultiply( 3 , 3 , 1 , gravity_p_ref , rmat_transpose , gravity ) ;   
        // substract the gravity component from the accelerometer readings:
        VectorSubtract( 3 , abs_acceleration_p , gplane , gravity_p_ref ) ;
        // project the absolute acceleration of the plane frame of reference to the the ground frame of reference:
        MatrixMultiply( 3 , 3 , 1 , absolute_acceleration , rmat, abs_acceleration_p) ;   

     

    The success:

    It really works: I play with the board and, regardless of the attitude, the absolute_acceleration shows something only if the position of the board changes, not the attitude.

     

    The problem:

    after few attitude changes followed by steady position, the absolute_acceleration converges very slowly to 0 and this would be a killer for achieving a good hovering. (this slow convergence is in fact visible in any component of the rmat, etc.)

     

    The question:

    Is there a solution to that by using:

    1. Much better sensors (high precision accelerometers like SCA3000 , lower drift gyros, etc.)

    2. Tuning of the algorithm for this particular case where tha acelerometers mesures mostly gravity (I've tried to play a little with  KPROLLPITCH and KIROLLPITCH but couldn't get a difference)

    3. Anything else inertial based or I need to move to Optical Flow stabilization (Parrot like)

     

    Note: I've also tried the PNI SpacePoint which is Kalman filter based but that's even slower.

     

    Thanks and Regards,
    Dragos

  • I have not been posting to this blog recently since we now have a Google Group dedicated to UAV Dev Board Heli applications at:

    http://groups.google.com/group/UAVHeliBoard?hl=en

    If you are interested, please sign up.

    We have a working version of MatrixPilot for Helicopters that stabilizes Pitch and roll, with Yaw stabilization coming soon. There is also a roadmap posted that describes the added capabilities we intend to impliment.

    Best,
    John
  • Hi John,

    I am starting a UAV Heli project and have been looking around the web for stabilizing the Heli. I am starting to learn about this board, and believe that this would be helpful in my project. My first goal is to get my T-Rex 600 to hover and stabilize. I will have some IR sensors below the chopper for auto take off and auto land. So one of my first goals will be to get the T-Rex 600 to take off, hover for some time and then land in a click of a button. I would like to then move on to doing simple tasks such as a follow the line application. I can have the Heli follow a walk path for some distance, turn around then land. I am very interested in autonomous robots that use stereo vision. As a hobby, I find RC-Helicopters very fun, so putting both interests together has me very interested in autonomous Heli.

    Let me know how I can help.

    Vijay
  • As promised, I have posted a progress report on the application of the UAV DevBoard to a CCPM helicopter. The report describes work Bill and I have done with the Red Board on a TREX 450SE. We are not there yet, but hopefully this gets folks started and capitalize on all the offers of help in developing this.

    The new thread is here.
  • The UAV Dev Board has gyros, accelerometers and GPS. The basic idea is that DCM
    uses the gyros for the main source of yaw and pitch orientation information, with drift
    adjustments coming from the GPS and the accelerometers.
  • Hi all, new to the diy drones pages.

    I have been reading these forums with interest over the last year or so, i am an engineer and would love to try and start to build, help, develope with some of the guys here. I have been flying heli's for a long time and can hover on the spot in a gale :) thats not showing off, its just that i can install a system in one of my machines and test it. if it all goes wrong i can still bring the bird back as long as i have control on my sticks. I am going to purchase the uav dev baord and have a go myself. i understand this would be a long journey, but then learning to fly wasnt easy :),

    Anyway if any guys in my area would like to get to together and have a go to build a system, then i have heli's with ccpm or without. I am up for putting in the hours and have a local club field for testing.

    I hope i have put this in the right forum, if not then please say and i will delete it.
  • Hello all,
    I am working on developing a stabilization controller for a Heli. Nothing too great to report yet, but the results are promising. The part that I think everyone is getting hung up on is sensor fusion. Anyone want to track: http://heli.selfip.com

    Andrew
  • Does anyone have direct experience using the Analog Devices ADXRS401 gyros or LISY300AL gyros on a Heli? Both are used in Bill's Dev Board (Red and Green versions). There seems to be a feeling that the cheaper LISY gyros do not work with the vibrations seen with Helis,

    Here is a thread that discusses the issue

    John
  • Hello John,

    I am following the Ardupilot project, and have an Easyglider equiped with board, GPS and FMA sensors.
    I am following another project led by Mikro for his Mikroquad and later Aeroquad (actualy experiencing problems getting it to work with my Futaba/Assan 2.4 radio)
    I would be very interested in finding an open source GPS driven alternative to my Helicommand, so roll your sleeves ;-)

    Thanks for starting this long expected thread :-)
  • T3
    John,
    Just in case you missed it, this board looks like it would be well suited for helicopters.
    Bill
This reply was deleted.

Activity