On 01-11-2008 at 20:16, Anonymous wrote:
Dear STM32 users,
I'm looking to use a IDG300 and ADXL330 mems sensors from ADI ( Analog devices) with direct connection to STM32 12-bits ADC channels. I was just wondering what filtering I need (as in low pass or high pass) and what the cut off frequencies should be. If also I need to oversample the ADC measurements by averaging to get more effective bits and reduce Noise.
I am using it on a platform for roll, pitch, and tilt measurements for R&D Research in Robotics.
Any ideas ? If you have any other handy information or similar designs it would also be much appreciated.
On 02-11-2008 at 01:42, Anonymous wrote:
You can't direct connect an ADLX330 (or any analog accelerometer) to the STM32 12 bit A/D input unless you can live with huge errors. The source impedance is the problem.
STM32 A/D has +/- 1uA leakage current
ADLX330 has 32000 ohm source impedance
so V = IR = 1uA * 32000 ohm = +/- 32000uVolts Error
1 bit of a 12 bit A/D at 3V reference is 1/2^12*3 = 732uVolts
+/- 32000/732 = +/- 43 counts of error = about 6 bits of error
so your 12 bit A/D becomes a 6 bit A/D!
You need an op amp to bring down the source impedance below 100 ohms if you want 12 bits of accuracy, you can buy the ADXL with buffers
On 03-11-2008 at 23:19, Anonymous wrote:
How are you verifying you have more then 6 bits of accuracy? 6 bits is still 1 out of 64, it's not bad. Are you calibrating it out? That is possible. Also, you may be lucky to a have part with low leakage current.
Anyway, the 32000 uV is not constant, because the leakage current is not constant, it's +/- 1uAmp, it's varies part to part and temperature. One part may be -1ua, another .5uA, another 1 uA, as temperature rises it changes.
There are two separate issues, the sampling time and leakage current, they are unrelated, table 58 only addresses the sampling time to charge up the sampling cap to the voltage at the pin input. Leakage current causes Vain to be different then pin voltage because of the voltage drop across the source impedance (see figure 52).
It's very strengh, you are writing. There is no need for using any buffer or OpAmp. I'm using ADXL330 with STM32 with direct connection to ADC, and I didn't observe any huge errors. Even if there is any erros produced by this leakage current, it only constant offset. This 32000uVolts you calculated is added to ADXL330 output signal, it's not noise. When you are using ADC, the source impedance influences only on signal bandwith. When impedance rise up, you have to use longer sampling time(to achieve the same error level), and this makes bandwith smaller.
For detalis, look at STM32F103xC STM32F103xD user manual, page 99, table 58.
On 03-11-2008 at 15:46, Anonymous wrote:
Just curious, how do the accelerometers from ST compare to the ones mentioned? (12bit ones with digital interface for instance)
In simple aplication with accelerometer, this 32mV offset has no affect on overrral results and could be passed over.
Retrieving data ...