Dudas sobre ADC Arduino Mega

Buenas noches!
Estoy realizando un proyecto de un data logger de 10 canales con Arduino (más concretamente, Arduino MEGA + shield SD CARD). Los valores a leer son puramente eléctricos (corriente y tensión) pero varían de +10V/A a -10V/A (con una resolución 4 cifras significativas y muestreo cada 250 ms) y esto entiendo que es un problema para el conversor A-D ya que este solo lee valores positivos (al menos eso he deducido). Para solucionarlo he pensado en sumarle una tensión de +10V a la señal de entrada, para así eliminar la parte negativa quedando el rango de medición entre 20 V/A - 0 y poner un divisor de tensión para atacar el pin analógico con una señal más próxima a los 5-0 V requeridos. El problema o duda que tengo son:

  • Realmente el Arduino no puede leer y registrar valores negativos?
  • Los datos que al final se procesaran con Excel deben ser los valores reales (sin el + 10V), que sería mejor:
  1. Restar el +10 V en el propio programa del Arduino (no sé cómo) y guardar los valores ya reales en la SD?
  2. Restar el +10 V al pasar los valores con comas al Excel?
    Muchas gracias.

yo haria la opcion 1.
como? pues vas bien encaminado.
si quieres leer de -10 a 10 tendrias que hacer dos cosas

  • mediante un divisor de tensión pasar a -2.5 y 2.5
  • meterle un offset de 2.5V positivos
    de esta forma cuando arduino lea en el pin analogico:
    lectura pin - voltage leido - voltage sin offset - voltage sin divisor de tension.
    0 = 0V = -2.5 = -10V
    512= 2.5v = 0v = 0v
    1023 = 5v = 2.5v = 10v

Ha sido un dia largo, igual me he colado en algun numero, pero creo que la idea queda clara.

Este esquema puede servir?