Rich Weaver
  • Blog Posts
  • Discussions (15)
  • Groups
  • Photos
  • Photo Albums
  • Videos

Rich Weaver's Discussions

New category of glider

Started this discussion. Last reply by Bill Porter Mar 13, 2010. 4 Replies


Rich Weaver's Page

Comment Wall (2 comments)

At 7:37am on November 22, 2009, Noth666 said…
Hi Rich,
I have since abandoned that project for now, simply since the actual OSD function on the unit does not seem to work with PAL video at all. I got no real support from TechFX for this other than 'uh, I tested it to work before I sent it' which needless to say does nor help me.
The unit itself is rather well made but I have not bothered to do any programming on it since the OSD function was what I wanted to integrate, so now I am making my own ARM based controller. If you are planning to use multiple cameras I have also made video switching units for this now :), if youre interested drop me a mail.
At 5:26pm on February 11, 2010,
William Premerlani
Hi Rich,
You asked:
"I would like to convert to engineering units for pitch, roll, and yaw from the UDB. With the following set to #define SERIAL_OUTPUT_FORMAT SERIAL_DEBUG

I get the following.

lat: 424741637, long: -838084017, alt: 23208
rmat: -10192, 11476, 5734, -12630, -10258, -1926, 2240, -5618, 15226

So do I use the following equations from Paul

/* Euler angles from DCM */
/* ===================== */
/* atan2(rmat31,rmat11) */
Yaw = atan2(rmat[3],rmat[0]);

/* -asin(rmat31) */
Pitch = -asin(rmat[6]);

/* atan2(rmat32,rmat33) */
Roll = atan2(rmat[7],rmat[8]);

I know I need to scale rmat so for Yaw would I do the following:

Yaw = atan2(-12630/16384, -10192/16384)
Roll = atan2(-5618/16384, 15226/16384)

Is a rmat value of 16384 equal to 180 degrees? Sorry for all the questions."

Here is a link to most of the answers.

MatrixPilot now includes an ArduStation format telemetry option, in the code that is available under the versioning repository.

Go to the project home, and click on the Source tab.

The direction cosines can be converted to Euler angles without using arcsin, so the conversion can be done without considering the scaling. In MatrixPilot, we do the conversions with three calls to a CORDIC based rectangular to polar conversion.

You do not need to consider scaling for atan2(). You do need to consider it for arcsin(). In which case you just need to know that the cosine of 0, which is 1.0, is represented as 16384.

Best regards,

You need to be a member of DIY Drones to add comments!

Join DIY Drones



Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service