Will Coffey
  • Male
  • Perth, WA
  • Australia
Share Twitter
  • Blog Posts
  • Discussions (20)
  • Groups
  • Photos
  • Photo Albums
  • Videos

Will Coffey's Discussions

Lack of Serial Ports

Started this discussion. Last reply by tais Apr 8, 2010. 5 Replies

ArduIMU Binary Message Problem

Started this discussion. Last reply by Will Coffey Mar 12, 2010. 4 Replies

ArduIMU bug?

Started this discussion. Last reply by Will Coffey Mar 12, 2010. 15 Replies

 

Will Coffey's Page

Latest Activity

Will Coffey commented on Chris Anderson's blog post Testing GPS vs. Pressure Sensor Altitude
"Oh, I am using a standard patch antenna on the GPS just in case people were wondering. http://www.sparkfun.com/commerce/product_info.php?products_id=177"
Aug 12, 2010
Will Coffey commented on Chris Anderson's blog post Testing GPS vs. Pressure Sensor Altitude
"I have done testing on this as well for anyone who is interested in the performance of a Venus GPS at 10Hz vs an SCP100 Baro. I found the GPS was very unreliable when it first locks on and when it is stationary. "
Aug 12, 2010
tais replied to Will Coffey's discussion Lack of Serial Ports
"you can make a software UART if you want.take two general purpose in/out pins and create a program in assembly or in C.with this way you can make many of UARTs in a MCU"
Apr 8, 2010
Will Coffey replied to Will Coffey's discussion Lack of Serial Ports
"Hey guys, been away from the computer for a while. Thanks for your input. Ive decided to order in an ET-STM32 Stamp micro. I realise that I could go with the Mega but this micro comes with 16 12Bit ADC's,a few DAC's, 5 USARTS and heaps of…"
Mar 18, 2010
Marc Daniels replied to Will Coffey's discussion Lack of Serial Ports
"Ardupilot Mega? 4 UARTS. Have mine working with ArduIMU, XBee and OpenLog with no probs."
Mar 17, 2010
Petr Hubacek replied to Will Coffey's discussion Lack of Serial Ports
"Try Pete Burnight's code, he has already existing post about this. post: "I2c GPS frees up Serial Port" good luck"
Mar 17, 2010
Jacob replied to Will Coffey's discussion Lack of Serial Ports
"What about using I2C between the arduinoes? The ArduIMU already has the wire.h library installed. No clue if it will work"
Mar 17, 2010
Will Coffey posted a discussion

Lack of Serial Ports

Hi guys,I finally have my IMU up and running and outputting all the data I could ever possible want at 50Hz. The next step for me is the autopilot side of things. Currently the IMU outputs its data over standard UART. This means that my other micro (Arduino nano) must have at least 1 UART which it does. The problem is that I require long distance two way communication and I also want to design around a Spektrum satellite receiver which also communicates over a serial interface. This means that…See More
Mar 16, 2010
Will Coffey replied to Will Coffey's discussion ArduIMU bug?
"Good to hear its sorted."
Mar 12, 2010

Developer
Ryan Beall replied to Will Coffey's discussion ArduIMU bug?
"Yeah, that's what it was... Vref was default. Swapped it out and worked fine...Funny how I spun myself into the ground with that one! ha"
Mar 12, 2010
Will Coffey replied to Will Coffey's discussion ArduIMU bug?
"Did you try changing the reference voltage? 1.3volts still seems a bit high doesn't it. Are you using ArduIMU Flat or the older version which uses different gyros?"
Mar 12, 2010
Will Coffey replied to Will Coffey's discussion ArduIMU Binary Message Problem
"ok, Thanks guys. It's all coming together."
Mar 12, 2010

3D Robotics
Chris Anderson replied to Will Coffey's discussion ArduIMU bug?
"Ryan, just a note of praise and thanks for you, too. This sort of rapid diagnostics and problem solving is SO impressive to see, and all of us reading along are getting an education, too. Many, many thanks for all you do here!"
Mar 12, 2010

Developer
Ryan Beall replied to Will Coffey's discussion ArduIMU bug?
"I found my problem. It is because I'm referencing 5 volts so 268 ~~ 1.3 volts... huh?"
Mar 12, 2010

Developer
Ryan Beall replied to Will Coffey's discussion ArduIMU Binary Message Problem
"afirmative, signed values"
Mar 12, 2010
Will Coffey replied to Will Coffey's discussion ArduIMU Binary Message Problem
"Hi Doug, I though that two bytes were able to represent numbers up to 65,535? my rates dont exceed 600degrees per sec so 600*100= 60,000 which is less than 65,535. Or is my problem that it is a signed number? does this mean only numbers between…"
Mar 12, 2010

Profile Information

About Me:
I am a 4th yeah Mechatronics Student at Curtin University

Comment Wall (2 comments)

At 2:43pm on August 13, 2009, William Premerlani said…
Will,

In answer to your question, I am sorry, if you want to run the DCM algorithm, you will need three gyros. There is no way to get around it.

If you want to get away with fewer gyros, you can do that, but you will need to use a different algorithm.

When I started out in this hobby, I was using a board that had a yaw gyro and a pitch gyro, without a roll gyro. It also had a GPS and a 2 axis accelerometer. I was able to achieve control and navigation of a Gentle Lady without any problem, using complementary filter.

I think it is going to be difficult for you to control yaw without a yaw gyro, using GPS alone, unless you use a GPS with a high update rate, such as a uBlox. The problem with a GPS with a 1 Hz update rate is that the control yaw control loop will go unstable if you turn the gain up, and the wind will blow your plane away if the gain is too low.

However, the situation you propose is different from the one that I tried, since you are proposing a roll gyro. Maybe it would work. But if I were using only two gyros, I would use yaw and pitch.

You know, you could buy the UAV DevBoard for $150, a PICkit2 programmer from Microchip for $40, and an EM406A GPS from SparkFun for $60. That is only $60 over your budget.

Best regards,
Bill

---------------------------------------------------------------------------------------------------------

Here is Will's question:

Thankyou so much for your help that really clears things up for me. I have just one other question for you. Is it possible to implement the DCM on only the Pitch and Yaw axis? The reason I ask is that one of my goals in developing this device is to keep the cost below $200. I felt that I could achieve satisfactory turns with only pitch and roll data coming from the IMU and the Yaw being updated once a second from the GPS. The extra gyro is going to blow my budget :) What are your thoughts on this.
At 2:32pm on October 28, 2009, William Premerlani said…
Will,

Jordi is using the DCM algorithm, based on Robert Mahoney's ideas.

The DCM algorithm maintains the 9 elements of the direction cosine matrix that represent the rotational orientation of the plane with respect to the ground. The basic idea of the method is:

1. Perform direct numerical integration of the nonlinear differential equations that relate the time rate of change of the 9 direction cosines to the 9 direction cosines and the roll, pitch, and yaw rates measured by gyros in the frame of reference of the plane.

2. Adjust the 9 elements of the matrix to enforce the orthogonality relationships that the rows and columns of the matrix must satisfy.

3. Use nonlinear complementary filters to compensate for gyro drift using accelerometer and GPS information.

There are no singularities in the computations in the DCM algorithm.

You can express all control and navigation computations in terms of the 9 direction cosines, but some folks prefer working in terms of Euler angles, so Jordi computes Euler angles from the direction cosines.

Regarding the difference between the DCM algorithm and a linear complementary filter, the DCM algorithm is much more accurate in all orientations, since it explicitly represents the nonlinearities of the rotation group at all stages of the computations.

For the theory of the DCM algorithm, take a look at Mahoney's papers or this summary.

Best regards,
Bill Premerlani

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

Join DIY Drones

 
 
 

Social Networking

Contests

Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.

A list of all T3 contests is here

Advertisement

© 2013   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service