Atmel Inertial Two (ATAVRSBIN2) + arduino?

Has anybody managed to use this sensor board with arduino?

  • 3 Axis Magnetometer from Honeywell (HMC5883L)
  • 3 Axis Accelerometer from Kionix (KXTF9)
  • 3 Axis Gyroscope from InvenSense (IMU-3000)
  • All sensors interface via I2C Port

It seems that the Invensense's MotionApps is pretty hard to implement for another platform than Atmel UC3-A3 Xplained. Also the MotionApps does not support 9-dof filtering, so that is pretty useless at the moment.

So is it possible to read the sensor values with Arduino and filter the data? Has anybody used that Atmel's board instead of Spark fun's IMU fusion board?

 

Here is the example code how to read sensor values from Spark Fun's board: http://www.hobbytronics.co.uk/arduino-adxl345-imu3000 (IMU-3000)

And how to read the mag sensor: http://sfecdn.s3.amazonaws.com/datasheets/Sensors/Magneto/HMC5883.pde (HMC5883L, direct link!)

Also the KXTF9 was somewhere.. but I prefer to use it like in Spark Fun's example (through the IMU-3000).

 

Also I would like to use FreeIMU (or similiar) for filtering the results. All I want is a quaternion output of current attitude. So how to add ATAVRSBIN2 for arduino?

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • So, I have been playing with this puppy and have a number of observations.

    There appear to be at least two versions of this board.  The manual show a picture of one labeled Rev 3 and I have Rev 6.  The main difference between them is that accelerometer is in a different orientation.  On Rev 6 it has the same x/y/z orientation as the other sensors.  On Rev 3, it's rotated 90 degrees clockwise.  The manual is correct with respect to Rev 6 but the picture they have is of a Rev 3.

    The KXTF9 is a seriously noisy device (at least mine is).  Heavy filtering is required. Mine needs some output offset trimming (about 8%).  It seems to be fairly usable.  It looks like on chip filtering doesn't work.  All I get are zeros and no amount of playing with the filtering options changes that.  Other people have reported this problem as well.  

    The IMU3000 is a sweet device.  rock steady, almost no noise, requires no trimming and appears to have no bad habits.  When it's quiescent it reports exactly 0 on all 3 axis.  If only all sensor were this well behaved.

    The Honeywell HMC5883L is pretty weird.  Maybe the one I got is messed up.  It seems to have a huge offset (50% or greater) plus it appears to have a serious misalignment.  The chip itself looks to be sitting correctly on the board (level and square with the edge) but the values don't seem to coincide with the obvious orientations of the board.  I need to play with it more, though.

    I've modified Markus' arduino code to work with a Java/Processing program I wrote to display the sensor values in strip charts.  I'll make it available to anyone that wants it.  I'd prefer not to post here because the forum software eats shift signs.

    Phil


  • I've been looking at the data stream from the kionix accelerometer and it seems really noisy.  It could be the way I hooked up the ATAVRSBIN2 (60 cm ribbon cable to solderless breadboard to arduino) but I suspect that's not the problem.  I have it weighted down on a solid desk and it shows a lot of noise.  I haven't done a rigorous experiment but it looks like around 6-7 LSBs of noise.  Given that it is a 12 bit acc, that seems kind of high to me.  other accs I've played with haven't been nearly this noisy even with a breadboard environment.  I checked the 'SBIN2 VCC with my scope and it looked pretty solid.

    The IMU 3000 output shows about 3-4 LSBs of noise (on a 16 bit result).  Significantly solid.   I can only conclude that the Kionix acc isn't that good.

  • If you look at the code for the IMU fusion board, it's pretty easy to understand how the accelerometer is handled. It should be pretty straight forward to change that code to support the Kionix accelerometer. Just change the initialization to match the one needed by that accelerometer then push everything into my FreeIMU library...

This reply was deleted.

Activity