2 votos

Número mágico en el código ADC Pi

Estoy tratando de medir la temperatura usando PT100. Estoy usando ADC Pi junta para eso. ADC Pi utiliza MCP3424 (pdf datasheet) Convertidores A/D, y en datasheet encontré como calcular el voltaje - es bastante simple -

Input Voltage =  (Output Code) * LSB/PGA

Así que hice una simple aplicación que obtendría el código de salida, calcularía el voltaje, y a partir de ese voltaje calcularía la resistencia. Pero el resultado no era correcto. Así que busqué el códigos de muestra y descubrí que el cálculo es un poco diferente -

voltage = float(
            (raw * (self.__lsb / self.__pga)) * 2.448579823702253) 

No he podido averiguar cuál es el número 2.448579823702253 significa... Supongo que tiene algo que ver con otras partes de la placa, pero no entiendo muy bien de electrónica.

¿Puede alguien explicar qué significa exactamente?

5voto

Daniel Puntos 2699

Según el esquema Hay un divisor de resistencias de 10k--6,8k en el circuito.

6.8k / (6.8k + 10k) = .4047619 1/.4047619 = 2.470588

Otro lugar donde buscar podría ser:

__lsb = float(0.0000078125) # default lsb value for 18 bit 7.8125e-6 * 2^18 = 2.048 // full-scale value? 5V / 2.048 = 2.441406

O tal vez una combinación de esas cosas.

Siento no tener tiempo para analizar toda la hoja de datos, pero ambas cifras se acercan a tu número mágico.

Te animo a que trabajes paso a paso y trates de entenderlo completamente, hasta el punto de que tus resultados coincidan con unos pocos mV. Habrá una respuesta correcta, y te ayudará si llevas la cuenta de tus unidades (mV, LSBs, etc)

Puedes aprender mucho sobre cómo los sistemas digitales se comunican con el mundo real.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X