AnsweredAssumed Answered

ADXL345 Self test

Question asked by meir.mardechayev@phnx.co.il on Apr 19, 2015
Latest reply on May 4, 2015 by venkat

Hello,

One of my customer uses Digital Accelerometer ADXL345 of Analog Devices.

We would like to implement the self-test for ADXL345 in our SW according to its data sheet. We use the full resolution of ADXL345 (13 bits, -16 to +16g).

 

We understood, that according to the “Self-test” chapter of datasheet, the Table 15 of X, Y and Z limits should be used for results estimation.

 

The “Using self-test” explains how to use it:

A) We need to measure acceleration results with axis offsets 0 and self-test mode OFF - A st_off

B) We need to measure acceleration results with axis offsets 0 and self-test mode ON   - A st_on

 

The difference between B and A results is our test value, that we compare with axis limits from Table 15

A st_change = A st_on – A st_off

Test passed if: AXIS LIMIT MINIMUM < A st_change < AXIS LIMIT MAXIMUM

(all limits and results are in ADXL units).

 

 

The 1-st question:

 

We performed tests and

- obtained results after sending to ADXL345 the setup with axis offsets 0 and self-test mode ON   - A st_on

- obtained results after sending to ADXL345 the setup with axis offsets 0 and self-test mode OFF - A st_off

 

We noticed, that the difference A st_change is affected only on the VERTICAL axis of ADXL345(has the G) and only on the VERTICAL axis we have the results meet the test logic.

 

The question: Is it correct ? Is test relevant only for currently VERTICAL axis ?

 

 

 

 

The 2-nd question:

 

How we should consider the positive or negative SIGN of  A st_on and A st_off when we calculate the difference ?

If we calculate the difference considering the results sign, the A st_change could be out of its limits.

 

Example of real tests made by us:

 

Y axis of ADXL345 is VERTICAL axis and directed UP.

 

A st_on = - 2

A st_off = 256(approximately 1G in ADXL345 units)

 

A st_change = -2 - 256 = -258

 

According to Table 15:

Y AXIS LIMIT MINIMUM  =   -540

Y AXIS LIMIT MAXIMUM =   -50

 

-500 < -258 < -50  - TEST PASSED

 

 

Y axis of ADXL345 is VERTICAL axis and directed DOWN.

 

A st_on = 5

A st_off = -256(approximately -1G in ADXL345 units)

 

A st_change = 5 - (- 256) = +261

 

According to Table 15:

Y AXIS LIMIT MINIMUM  =   -540

Y AXIS LIMIT MAXIMUM =   -50

 

TEST FAILED

 

 

The question: Is it correct to take the sign of results under consideration ? May be we should use the ABLOLUTE values  in calculations ?


Thanks,

Meir

Outcomes