sensor accelerometer and gyroscope: sparkfun vs chinese version
AS
Posts: 149
in Propeller 1
Hello!
I want to build a monowheel vehicle, I buy some years ago two accelerometer: Memsic 2125 Dual-axis and H48C Tri-Axis, are great to measure angles if the vehicle is stationary , I need a Gyroscope too for that.
I saw that Parallax have a great price to Gyroscope Module 3-Axis.
At this moment I was thinking about buy something like (https://www.sparkfun.com/products/10121) and I see that the chinese version is much more cheaper (http://www.ebay.com/itm/IMU-Digital-Combo-Board-6-Degrees-of-Freedom-6DOF-ITG3200-ADXL345-Helicoper-/270968365840?hash=item3f16f92310:g:XSoAAOSwiuZTz1PQ#shpCntId).
At this moment I think I will give a chance to the chinese sensor :P But I really want to hear yours opinions about that. I can use the same code to the sparkfun sensor and the chinese version?
Thanks a lot!
I want to build a monowheel vehicle, I buy some years ago two accelerometer: Memsic 2125 Dual-axis and H48C Tri-Axis, are great to measure angles if the vehicle is stationary , I need a Gyroscope too for that.
I saw that Parallax have a great price to Gyroscope Module 3-Axis.
At this moment I was thinking about buy something like (https://www.sparkfun.com/products/10121) and I see that the chinese version is much more cheaper (http://www.ebay.com/itm/IMU-Digital-Combo-Board-6-Degrees-of-Freedom-6DOF-ITG3200-ADXL345-Helicoper-/270968365840?hash=item3f16f92310:g:XSoAAOSwiuZTz1PQ#shpCntId).
At this moment I think I will give a chance to the chinese sensor :P But I really want to hear yours opinions about that. I can use the same code to the sparkfun sensor and the chinese version?
Thanks a lot!
Comments
How about a BOSCH BN0055 9 DOF IMU from Adafruit? Giro, accelerometer and compass all in one. With the great benefit that they have put the required sensor fusion software into the chip so you don't need to write or find that yourself. It just outputs an orientation in 3D space directly.
https://learn.adafruit.com/adafruit-bno055-absolute-orientation-sensor/overview
https://learn.adafruit.com/adafruit-bno055-absolute-orientation-sensor/device-calibration
I use the Adafruit MinIMU v3 ... plug and play except for the coding part. They are now selling v5. Straight SPIN with some floating point got me to 30 Hz updates.
I think I will try the chinese solution, thanks kwinn, I think exactly the same about this sensor. When it arrives I will say something. (more than a month :P from China to Portugal)
Heater., the BOSCH BN0055 9 DOF IMU from Adafruit is great, thanks a lot, I really want to buy this sensor.
I only have an issue with adafruit to buy from Europe (Portugal), the shipping cost :P
PaulRowntree, thanks a lot, the MiniIMU sugestion is great and with good price. The issue is the same I pay more to shipping costs than for the sensor :P, I will look for it in ebay.
You can get the calibration offsets from one calibration and then reuse them on subsequent reboots. The calibration values will change with the environment. Unless used in a controlled environment, old values will become unreliable.
Old values will become unreliable? Oh no!! From all sensors? accelerometer and gyroscope?
I´m thinking in a button to calibration!? any other sugestion?
Thanks!
It seems that having done it once you can extract the calibration data and send it back next time you power the device. Calibration only has to be done once.
It also seems that the thing is usable without calibration.
I guess it depends on how demanding your application is.
Here is a good article on a few of the sensor fusion chips, and some comparisons - https://github.com/kriswiner/MPU-6050/wiki/Hardware-Sensor-Fusion-Solutions
Fusion aside, since the Elev-8 V3 flight controller code is available, I don't think it would take much to use the same sensors on that flight controller and modify the code to work with a 6 DOF gyro/accel combo to make a balance bot.
At this moment I think I will need only the accelerometer and the gyroscope, I thought that xanadu says: the values could change with the temperature or something else. With some sensors I can have this issue but not with the accelerometer and the gyroscope!? great!!
When I say you can use them without calibration I mean you're essentially returning arbitrary values accurately. So you could measure 20 degrees of tilt no problem. On a balance bot the perfectly upright position cannot be arbitrary, it needs to be perpendicular to the surface of the earth.
An accelerometer cannot tell the difference between acceleration and gravity.
Edit: ...
OK. If you happen to know you are stationary. You can assume whatever acceleration is registered is due to gravity.
Then when you are moving you can subtract that gravitational component from whatever your acceleration is measured to be.
In short, I have no idea how that chip might do it
Presumably there is a way to tell it to offset the accelerometer readings to be zero when it is stationary.
IMU's principally use the gyro readings to maintain orientation, and use the accelerometer only for drift correction. If you take the average of all your accelerometer readings over 10 seconds, the non-gravity forces will mostly cancel each other out, and what you're left with is just gravity.
The Elev8 FC actually uses the oriented force readings (minus gravity) to estimate altitude, and then uses the barometer to correct the integration drift, so it's computing the same data as the Bosch sensor, but at 250hz instead of 100hz (though I'm not computing heading with the compass yet).
The chinese version is working great!!
Question:
Which sensor (acellerometer and gyroscope) is used in the Elev8?
I was looking to this source:
https://github.com/parallaxinc/Flight-Controller
Is possible use C or SPIN, great!!
How to apply this code to this sensor.
http://www.ebay.com/itm/270968365840?_trksid=p2060353.m2749.l2649&ssPageName=STRK:MEBIDX:IT
I using this code:
https://github.com/simondlevy/FreeSixIMU2 - with Arduino
Is working very good!!
I will try it with Propeller with PropWare.
The issue with this code is that It do not apply any filter:
http://obex.parallax.com/object/514
I will try apply this sensor (with Kalman filter) to Propeller I´m looking for the easy solution!!? any sugestion?!
I think this is a good information:
http://www.pieter-jan.com/node/11
LSM9DS1 IMU (3D accelerometer, 3D gyroscope, 3D magnetometer)