Posted by Jordi Muñoz on November 4, 2009 at 2:00pm
Hi there, finally is here and includes many improvements thanks to Doug Weibel. Try it out! here.-Coordinate system has been corrected.-The gyros are now in order X,Y and Z.-Extra LED status, including no yaw correction (Yellow), GPS fix (Blue) and Gyro saturation (Red).-Improved Ground Station, with Labview 8.5 files and executable for windows.I also add some boards to the stock here. I have to increase a little bit the price because i'm really getting nothing. Also the demand is so high that i can't keep them stocked (more demand = higher price)...Thank you a lot for your support!
I've been reviewing the code and I've found some typos and clarifications, I'll PM Chris Anderson?
Specifically, from first principals and data sheets gyro gain should be about 1.033 a/d counds per deg per sec.
The code has:
#define Gyro_Gain 2.5 //2.5Gyro gain
#define Gyro_Scaled(x) x*((Gyro_Gain*PI)/360)//Return the scaled ADC raw data of the gyro in radians for second
2.5 is about 2x too much, yet the conversion on the next line PI/360 should be (2*PI/360) or (PI/180)
So the factor of 2 gets fixed alas the conversions are misleading....
Also it would be really nice to modify the code (I have my version on a differnt platform compiling but not yet tested properly) if the A/D channels were #define
Really stupid question... what are the licesnse restrictions on the code, the code says Creative commons, but which one?
There are like six creative commons licenses.
The source is released. There are currently two versions of the IMU available, one flat and one with daughterboards. Firmware is available here - http://code.google.com/p/ardu-imu/downloads/list
I'm Paul the father, Paul the son does the plumbing, welding and fabrication, I do the electronics and software....
Son also does programming for a living, but its more of Python, MySql, Web kind, I'm CTO and a founder at www.NetBurner.com so I'm the embedded "C" guy on the team.
The input options on the current board are pretty limited. You would need to get the compass input in through I2C.
Yaw is (resolved) at all speeds but gyro drift correction only occurs when in motion and the algorithm is set up for aircraft which move along their "fuselage' axis. The basic technology and algorithm can be adapted for helicopter use. To do so I would start by reading Bill P's paper on DCM as well as the other works he cites, one of which is relevant to heli's
Also, you may want to check out what is already commercially available. I haven't really looked myself, but know there are systems on the market, GyroBot for example, that are in use by the RC heli community.
You're "hovering vehicle" is very cool. You probably already knew that - LOL
Can this IMU take a 3d magnetic input or a compass so one can use it for a hovering vehicle?
IE from reading these comments it does not resolve Yaw until speed = 1m/sec with a GPS.
This was done with a Microstrain MEMS IMU and 10Hz Hemisphere (and later 20 hz Trimble) GPS
I want to try and build a low cost Helicopter autopilot /assistant using this technology. The IMU I'm curretly flying on the helicopter version of this is around $1.5K
Giles, he have indeed answered that before but the simple answer is no. We will eventually release such an autopilot but this one is intended as a standalone IMU/AHRS to use with your own projects.
Comments
Specifically, from first principals and data sheets gyro gain should be about 1.033 a/d counds per deg per sec.
The code has:
#define Gyro_Gain 2.5 //2.5Gyro gain
#define Gyro_Scaled(x) x*((Gyro_Gain*PI)/360)//Return the scaled ADC raw data of the gyro in radians for second
2.5 is about 2x too much, yet the conversion on the next line PI/360 should be (2*PI/360) or (PI/180)
So the factor of 2 gets fixed alas the conversions are misleading....
Also it would be really nice to modify the code (I have my version on a differnt platform compiling but not yet tested properly) if the A/D channels were #define
#define CH_AZ (3)
#define CH_AX (6)
#define CH_AY (7)
#define CH_YR (2)
#define CH_XR (1)
#define CH_ZR (0)
BTW, I am a RC heli guy too, so would be open to collaboration, although my plate of projects is a little full :)
There are like six creative commons licenses.
The source is released. There are currently two versions of the IMU available, one flat and one with daughterboards. Firmware is available here - http://code.google.com/p/ardu-imu/downloads/list
http://www.sparkfun.com/commerce/product_info.php?products_id=9371
or
HMC5843 3 axis I2C Magnetic compass module. Is the source code for the IMU released, or just the concepts in the papers....
Son also does programming for a living, but its more of Python, MySql, Web kind, I'm CTO and a founder at www.NetBurner.com so I'm the embedded "C" guy on the team.
The input options on the current board are pretty limited. You would need to get the compass input in through I2C.
Yaw is (resolved) at all speeds but gyro drift correction only occurs when in motion and the algorithm is set up for aircraft which move along their "fuselage' axis. The basic technology and algorithm can be adapted for helicopter use. To do so I would start by reading Bill P's paper on DCM as well as the other works he cites, one of which is relevant to heli's
Also, you may want to check out what is already commercially available. I haven't really looked myself, but know there are systems on the market, GyroBot for example, that are in use by the RC heli community.
You're "hovering vehicle" is very cool. You probably already knew that - LOL
IE from reading these comments it does not resolve Yaw until speed = 1m/sec with a GPS.
See my Hovering vehicle here:
https://www.youtube.com/watch?v=8UJDxp2gv3o
This was done with a Microstrain MEMS IMU and 10Hz Hemisphere (and later 20 hz Trimble) GPS
I want to try and build a low cost Helicopter autopilot /assistant using this technology. The IMU I'm curretly flying on the helicopter version of this is around $1.5K