RFrftools.io
Sensor

Accelerometer Range & Sensitivity

Calculate accelerometer output voltage, ADC resolution, and mg per LSB from sensitivity and full-scale range specifications.

Loading calculator...

Formula

V_out = V_ref/2 ± (S × a)

SSensitivity (mV/g)
aAcceleration (g)

How It Works

An accelerometer converts acceleration into an electrical signal. Analog MEMS accelerometers (e.g., ADXL335) output a voltage proportional to acceleration: V_out = V_ref/2 + S × a, where S is the sensitivity in mV/g, a is acceleration in g, and V_ref/2 is the zero-g output (mid-rail). The sensitivity S comes from the datasheet and depends on the full-scale range: wider ranges have lower sensitivity (fewer mV per g). Digital accelerometers (e.g., MPU-6050, LIS3DH) output digital counts with a configurable scale factor. The resolution in mg/LSB depends on the ADC bit depth and the supply voltage: with N-bit ADC and V_cc supply, the voltage per LSB is V_cc/2^N and the acceleration per LSB is (V_cc/2^N × 1000)/S mg. For example, ADXL335 with S = 300 mV/g, 12-bit ADC, 3.3 V supply gives 3300/4096 = 0.806 mV/LSB, or 0.806/300 = 2.7 mg/LSB. Bandwidth is set by the RC filter on the output pins; a 10 μF capacitor gives ~0.5 Hz bandwidth for seismic applications, while 0.1 μF gives ~50 Hz for vibration measurement.

Worked Example

Problem
The ADXL335 has S = 300 mV/g and a full-scale range of ±3 g. It is powered at 3.3 V and fed into a 10-bit ADC. Find the output voltage at 1 g and resolution in mg/LSB.
Solution
1. Zero-g output: V₀ = 3.3/2 = 1.65 V 2. Output at 1 g: V_out = 1.65 + 0.300 × 1 = 1.95 V 3. ADC counts = 2^10 = 1024; voltage per LSB = 3.3/1024 = 3.22 mV 4. Acceleration per LSB = 3.22 mV / 300 mV/g = 0.01073 g = 10.7 mg/LSB Result: Output is 1.95 V at 1 g with 10.7 mg resolution per ADC step.

Practical Tips

  • Mount the accelerometer with the PCB rigidly attached to the measured structure — any mechanical resonance of the PCB itself will appear as acceleration signal at the resonant frequency.
  • For tilt sensing, use 1–10 Hz bandwidth (large filter cap); for vibration monitoring, use 100 Hz–1 kHz bandwidth; for shock detection, use maximum bandwidth with no filter.
  • Calibrate by measuring the output at ±1 g (horizontal flip) to determine the actual sensitivity and zero-g offset — both vary ±10–15% from the nominal spec.

Common Mistakes

  • Using sensitivity spec from wrong supply voltage — ADXL335 sensitivity varies from 270 to 330 mV/g depending on V_cc; always use the sensitivity corresponding to your supply voltage.
  • Confusing ±g full-scale range with peak-to-peak — ±3 g means the sensor saturates at +3 g and −3 g, giving 6 g peak-to-peak; the full-scale voltage swing is 2 × S × FS_range.
  • Ignoring the output filter bandwidth — leaving the filter capacitor disconnected results in maximum bandwidth (~1.6 kHz for ADXL335) and high noise; add the recommended capacitor for your application bandwidth.

Frequently Asked Questions

Analog accelerometers output a continuous voltage proportional to acceleration and require an external ADC. Digital accelerometers (I²C or SPI output) contain an internal ADC and provide digital counts directly, which simplifies firmware and avoids analog noise from PCB traces. Digital types often include configurable full-scale ranges, FIFO buffers, and interrupt outputs.
The MEMS proof mass displacement for a given acceleration must stay within the physical range of the mechanical structure. For a wider g range, the electrostatic restoring force is increased (reducing displacement per g), which lowers the voltage output per g. A ±2 g sensor is more sensitive but saturates at lower accelerations than a ±16 g sensor.
Apply a high-pass filter with a cutoff frequency below the signals of interest (e.g., 0.5–2 Hz for vibration). In firmware, subtract the moving average or use a DC-blocking IIR filter. For tilt sensing you need to preserve DC; in that case, calibrate and subtract the known zero-g offset instead.

Related Calculators