??? 10/08/10 16:24 Modified: 10/08/10 17:25 Read: times |
#178994 - ADXL335 Problem |
Dear Forum,
I'm trying to obtain the tilt in degrees using the 3 axis method from the ADXL 335 as shown in page 6 of this application note for the time being: http://www.analog.com/static/im...N-1057.pdf I can calculate the angle in degrees of all 3 axis separately in the classical way correctly. The two axis method is also proving to be correct. Unfortunately I need to implement the 3 axis method but haven't succeeded yet. Edit: When I used the 2 axis method I did obtain a total of 1G (0.96 to be precise) acceleration when I placed the X axis side on the table and didn't move the accelerometer. (i.e. Sqrt(Ax^2 + Ay^2) ). On the other hand when I placed the accelerometer flat on the surface of the table I obtained around 1.35G when adding up the X, Y and Z accelerations vectorialy (i.e. Sqrt(Ax^2 + Ay^2 + Az^2)). This is wrong. I mean according to all application notes I should be obtaining a total of 1G. I think I'm missing something when it comes to calibrate the Z axis correctly. What I did is take the maximum and minimum voltage output on the Z axis at +1 and -1G and divided the result by 2 to obtain the sensitivity. Then divided Ax - Axoffset by this sensitivity. Axoffset is the voltage I read on the Z axis when I placed the accelerometer flat on the table. Ax is the voltage of the accelerometer x axis at any time. I calibrated both X and Y axis successfully with this method. Is this also correct for the Z axis? Edit: Problem partially solved. I'm obtaining the correct X axis values in one quadrant using the 3 axis method. I guess the next step is considering which quadrant the accelerometer is positioned depending on the signed value of the Z and X axis. I'll let you know...but first a little break. Thanks in advance for any help Kai P.S Be aware that I have posted this thread in a separate forum (sparkfun.com), but no one seems to be able to help. I'm resorting to good old 8052.com since I have found great help around here in the past. Thanks again. |