[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3916)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3916)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4792: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3916)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4793: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3916)
AutoQuad Forum • View topic - Help need for mixing table

Help need for mixing table

Ground Stations and utilities for Windows, Linux, Android, & others

Help need for mixing table

Postby DUKE40 » Sun May 05, 2013 6:41 am

Hi,

I have a Quadrocopter with unevenly distributed motors on the pitch, means my front motors are much nearer than the rear motors as the arms are wider open for FPV.
Here a picture of it:
uploadfromtaptalk1367698132645.jpg
uploadfromtaptalk1367698132645.jpg (98.21 KiB) Viewed 13440 times


Now from all I have read in the documentation the sum of the motor output on all axis should be 0, but my frame would require less output power for pitch on the front motors than on the rear motors. But this would result in a sum for pitch being unequal 0.
Or should the solution be, that I move the AQ back on the frame, which would:
* place the AQ more to the CG
* place the AQ in a position where QuadX mixing table would be 90% OK

Thanks for any advise.
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Re: Help need for mixing table

Postby Max » Sun May 05, 2013 7:26 am

If you can figure out where the center of that thing is supposed to be, that's where you need to place your AQ and CoG. I mean the center of the virtual circle that touches all the motors at their center point. My drawing could be off a bit.

quad-center.png
quad-center.png (104.37 KiB) Viewed 13436 times


Not sure about the final mix table once the FC is properly positioned. Quad X might work fine. If you post the exact locations of the motors along the diameter of the "virtual circle," or at least some measurements so it can be figured out, I can run those numbers through the config tool we have and see what it comes up with.

-Max
Max
 
Posts: 2814
Joined: Mon Aug 13, 2012 9:45 pm
Location: Near Ithaca, NY, USA

Re: Help need for mixing table

Postby DUKE40 » Sun May 05, 2013 4:16 pm

Hi Max,

thanks for the hints about where the AQ should be positioned. I have already calculated the center of the virtual circle, you were quite right on your picture.
Now I will try to provide some measurements:
The circle has a diameter of 58cm => motors are 29cm from the CG away.
The front motors are 11,5 cm in front of the ?pitch? axis
The rear motors are 19,5 cm behind the ?pitch? axis
The front motors are 52cm away from each other, means 26cm from the ?roll? axis away
The rear motors are 43cm away from each other , means 21,5cm from the ?roll? axis
Hope this helps you for calculating using your config tool. By the way, is this config tool public or it is only available to the AQ team?

If you need any further measurment, let me know I will try to measure them and provide them.

Thanks in advance for your support.

Best regards,
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Re: Help need for mixing table

Postby LPR » Sun May 05, 2013 4:45 pm

Duke

Here's a link to another quad like yours.

viewtopic.php?f=36&t=2279

Larry
LPR
 
Posts: 1323
Joined: Tue Jun 26, 2012 1:29 pm
Location: MN, USA

Re: Help need for mixing table

Postby simon » Sun May 05, 2013 7:48 pm

Here is a link with mathematical explenation and method for calculating mixing tables:

There is also a set of commands for Octave software for auto-calculation of the mixing table.
(Btilde = round(256*Btilde) should be changed to Btilde = round(100*Btilde) for AQ).

If You don't want to install Octave, there are some online Moore-Penrose Pseudoinverse calculators that may be helpful.
simon
 
Posts: 26
Joined: Thu Mar 28, 2013 2:51 pm
Location: Krakow, Poland

Re: Help need for mixing table

Postby DUKE40 » Mon May 06, 2013 6:16 am

Hi,

I used the information provided by simon, but the results look quite strange to me:
-100 100 83
100 100 -83
100 -170 100
-100 -170 -100

Could someone double check this?

Thanks and best regards,
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Re: Help need for mixing table

Postby Max » Mon May 06, 2013 7:47 am

Yeah that doesn't seem right.

To answer your earlier question, all the motor mixes in QGC were generated using the "L1Tool", which is part of the AQ ground tools (SVN trunk/ground). I just updated the repo with the latest version. Check the help output and xml files for examples... unfortunately that's pretty much all the docs there are ATM.

-Max
Max
 
Posts: 2814
Joined: Mon Aug 13, 2012 9:45 pm
Location: Near Ithaca, NY, USA

Re: Help need for mixing table

Postby DUKE40 » Mon May 06, 2013 5:42 pm

This was what I entered in Octave:
A = [
-0.26 0.26 0.215 -0.215
0.115 0.115 -0.195 -0.195
0.1 -0.1 0.1 -0.1
];

B = pinv(A)

m = max(B)

[nrow,ncol] = size(B)

for i=1:ncol
Btilde(:,i) = B(:,i)/m(i);
end

Btilde = round(100*Btilde)

I have now downloaded the AQ Ground Tools, and will compile them and then give it a try with L1Tool.
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Re: Help need for mixing table

Postby DUKE40 » Mon May 06, 2013 6:22 pm

Compiling the ground Tools runs into an error:
uke40@mail:~/autoquad-read-only/ground$ make
g++ -o ../build/loader -g -O3 ../build/loader.o ../build/serial.o ../build/stmbootloader.o
g++ -o ../build/telemetryDump -g -O3 ../build/telemetryDump.o ../build/serial.o
g++ -c -g -O3 logDump.c -o ../build/logDump.o -I. -DHAS_PLPLOT
logDump.c:22:28: error: plplot/plplot.h: Datei oder Verzeichnis nicht gefunden
In file included from logDump.c:19:

I could not find the file plplot.h neither in the Ground Tools, nor in the mavlink or qgroundcontrol repository.
Where do I find this fiel and all other necessary files?
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Re: Help need for mixing table

Postby DUKE40 » Mon May 06, 2013 6:28 pm

OK, found it is part of the Debian repository. I have installed it and now I get to the next compiling error:
duke40@mail:~/autoquad-read-only/ground$ make
g++ -o ../build/loader -g -O3 ../build/loader.o ../build/serial.o ../build/stmbootloader.o
g++ -o ../build/telemetryDump -g -O3 ../build/telemetryDump.o ../build/serial.o
g++ -c -g -O3 logDump.c -o ../build/logDump.o -I. -DHAS_PLPLOT
In file included from logDump.c:19:
logDump.h:211: error: expected constructor, destructor, or type conversion before ‘*’ token
logDump.h:212: error: expected constructor, destructor, or type conversion before ‘*’ token
logDump.c: In function ‘void logDumpPlotInit(int)’:
logDump.c:1240: error: ‘xVals’ was not declared in this scope
logDump.c:1241: error: ‘yVals’ was not declared in this scope
logDump.c: In function ‘int main(int, char**)’:
logDump.c:1430: error: ‘yVals’ was not declared in this scope
logDump.c:1433: error: ‘xVals’ was not declared in this scope
logDump.c:1433: error: ‘yVals’ was not declared in this scope
make: *** [../build/logDump.o] Fehler 1

Some wrong version of any additional tool?
plplot is 5.9.5-4
Best regards,
Image
DUKE40
 
Posts: 364
Joined: Tue Mar 26, 2013 9:49 pm

Next

Return to AQ Software

Who is online

Users browsing this forum: No registered users and 6 guests

cron