Quad Question - Minimum Thrust & KF

General discussions on the Gluon-project that don't fit elsewhere. If required, I will create more subforums.

Moderator: lukasz

Quad Question - Minimum Thrust & KF

Postby pizza » Wed Oct 06, 2010 4:58 am

Dear Tom/fellow quad makers,

I am testing 2 parallel motors are once and attempting to balance them like a seesaw, while fixing the other two(not running). My quad weights 1.2kg. At max throttle, i do not think the two motors are able to lift the whole quad.

I would like to find out their mechanical differences and minimum thrust/throttle% to lift off ground before doing PID control of pitch roll and yaw(magnetometer-assisted).

Currently i have no means of measuring thrust. Do you guys measure that?

My Kalman filter tuning isn't quite successful by trial-and-error. I do have scilab(free open source alternative to matlab). what do you guys usually do?
is it something like this:
rotate quad by hand to some degrees(say +/-45deg) and log data, after which, tune in matlab offline. fix R arbitrarily first and try to tune Qs. is the Q of accelerometer is usually bigger than gyro.
3 parameters of infinite combinations i don't really know how to do it.
what is our filter curve supposed to converge to? the accelerometer pitch roll? or perhaps converge to the innovation of KF.

most importantly, how long does tuning take? do you take into account motor vibrations or shut off the motor while tuning?

Thanks!
pizza
 
Posts: 39
Joined: Wed Jan 27, 2010 2:33 am

Re: Quad Question - Minimum Thrust & KF

Postby Mitch » Wed Oct 06, 2010 1:12 pm

Hi Pizza,

You've posted a whole bunch of questions all mixed together. Hopefully, this is what you're looking for.

I've treated the kalman filter and the vehicle stability as two separate problems. For the seesaw stability, you can't really do anything with the motors and pid unless you know what the angle is and what you want the angle to be.

First get the filter parameters set so it works reasonably well on the bench in static tests without the motors. The KF should converge to the actual state of the parameter you are modeling. If you take, for example, a single axis (see saw) the filter state estimate should converge to the angular displacement of the see saw (and maybe the actual gyro offset if you are including that parameter as part of the state vector). You will need to be able to compare the actual state with the estimated state to tune gains. Look at some other code for rough estimates of gain parameters. Then change one parameter at a time and see what effect that has on how the state estimate converges to the actual state. That's exactly why I've posted real time displays (such as the attitude indicators) to exhibit both sets of data at the same time.

I've posted this before but here is my methodology for full three axis and magnetometer

Link


Example gains as used in the demo above are available in the code here http://gluonpilot.com/forum/viewtopic.php?f=6&t=105

For quad (and vtol and hovering airplanes) stability, you will need significantly more thrust than the weight of the vehicle because the motors have to accelerate and decelerate for yaw and roll control. A reasonable guesstimate is a two to one thrust to weight ratio. Short of measuring thrust and weight, use hardware that others have had success with or look for data online where others have measured the thrust of motor prop combinations to get an idea of what kind of thrust you might expect. Hope this answers some of the questions.
User avatar
Mitch
 
Posts: 118
Joined: Sat Dec 05, 2009 1:59 pm
Location: Florida, USA

Re: Quad Question - Minimum Thrust & KF

Postby pizza » Wed Oct 06, 2010 2:56 pm

Thanks Mitch,

how do we find out the actual state? I thought we're estimating the state with kalman filter because we do not know what is the actual state.
pizza
 
Posts: 39
Joined: Wed Jan 27, 2010 2:33 am

Re: Quad Question - Minimum Thrust & KF

Postby Mitch » Wed Oct 06, 2010 3:47 pm

In application we won't know the actual state and the estimated state is the best we have. For development, and until we have the KF converging to valid numbers, we would like to know the actual state to see how the KF estimate is converging. The easiest way is to use the accelerometer measurements and calculate the angle (using the known gravity vector and euler angles). These numbers will only be valid when the seesaw is not moving but we can watch how the KF follows the movement to the static positions.

Slightly off topic - while I was working on quad PID loops I wanted a very fast, high resolution angle measurement to watch the pid response. I considered measuring the tilt angle (actual state) on the bench using a potentiometer.
User avatar
Mitch
 
Posts: 118
Joined: Sat Dec 05, 2009 1:59 pm
Location: Florida, USA

Re: Quad Question - Minimum Thrust & KF

Postby pizza » Thu Oct 07, 2010 11:08 am

i still do not know the minimum thrust to lift the quad off the ground, guess will have to trial-an-error by setting some limits in the pid control loop.

Ok, so in other words rely on the accelerometer for actual state?

The kalman filter which i'm using is from tom's old website - similar to the tilt.c from rotomotion, as I find it easiest to understand.
I tried tuning the KF parameters in scilab. i noticed that R is at most 0.01 for my sparkfun 5dof/quadrotor system, else there will be severe overshoot. R tends to make the curve smoother but further from actual state.

Qangle and Q gyro cannot be smaller than 2 decimal points, else it will go haywire. I tried to choose a combination which makes curve smooth and not jagged, but I still cannot reduce motor vibration to a much extent.

by the way blue = accelerometer pink = kalman
kalmanfiltered vibration rejection.jpg
kalmanfiltered vibration rejection.jpg (42.88 KiB) Viewed 7259 times

kalmanfiltered roll.jpg
kalmanfiltered roll.jpg (55.31 KiB) Viewed 7259 times

hmm how do you use a potentiometer for tilt angle measurement?
pizza
 
Posts: 39
Joined: Wed Jan 27, 2010 2:33 am


Return to General

Who is online

Users browsing this forum: No registered users and 23 guests

cron