Herramienta para estimar la máxima tasa de muestreo de un conversor ADC en microcontroladores avanzados de 8 bits

Como resultado de una ponencia en el X Congreso Internacional De Electrónica Control y Telecomunicaciones (Noviembre 14 de 2014) en la Facultad Tecnológica de la Universidad Distrital Francisco José de Caldas, comparto aquí algunos aportes del artículo sobre la investigación realizada, conjuntamente  con mi esposa.  El tema fue también desarrollado como material de clase del curso de Microcontroladores hace algunos semestres.   Este antecedente puede consultarse aquí y está en permanente actualización.

Slide1

La presentación utilizada en la ponencia está disponible AQUI

Actualmente la ubicuidad y necesidad de interconexión y control remoto de todo tipo de dispositivos, tanto digitales como analógicos e híbridos, ofrecen un importante campo de investigación y desarrollo para la ingeniería moderna.  Esta tendencia se conoce hoy como el Internet de las Cosas (Internet of Things, IoT), en la que sensar y medir con exactitud y precisión  todo tipo de magnitudes y variables dinámicas  del mundo real (en particular audio, imagen y video)  son los principales aspectos a considerar en el diseño de muchos de los actuales sistemas empotrados (embedded systems).  Los subsistemas conversores analógico a digital (analog to digital converter ADC) del tipo Registro de Aproximaciones Sucesivas (SAR), que están disponibles en la mayoría de los microcontroladores (microcontroller unit, MCU) de 8 bits modernos, poseen características que frecuentemente son tanto subutilizadas como sobreestimadas por la falta de conocimiento y comprensión adecuada  del proceso que se lleva acabo al interior de estos dispositivos, pero también por el desconocimiento de sus características, ventajas y limitaciones.   Aspectos del ADC como su resolución, tasa de muestreo, errores de cuantificación o linealidad,  así como el número de señales analógicas que pueden ser adquiridas, pueden llegar incluso a ser criterios determinantes para seleccionar un dispositivo MCU particular, además de otras típicas consideraciones de ingeniería para sistemas empotrados como  son: el costo, la velocidad, el consumo de energía, la conectividad, los tipos de herramientas de desarrollo, repositorios de código y soporte disponibles.

Se desarrolló un programa en una hoja electrónica, luego de una revisión detallada de  las principales consideraciones teóricas y prácticas  detrás del diseño de la tasa óptima de muestreo de un sistema de adquisición de datos con MCU para señales analógicas que cambian rápidamente en el tiempo (p.e. audio), a partir del estudio de caso  del módulo ADC de las MCU avanzadas de 8 bits, PIC18F de Microchip Technnology.  Se caracterizan los parámetros importantes del sistema de muestreo y retención S/H. Se pueden contrastar los resultados con las MCU de generación anterior, PIC16F87x, ya que se cuenta con una hoja electrónica para cada una de las familias de PIC micros.

Figura3HerrWebColor

 

La hoja electrónica puede accederse  en línea haciendo clic AQUI.   Para poder editar los valores debe realizar una copia del documento y guardarla en su propio google drive.

También puede descargar la herramienta haciendo clic aquí: CalculoTsampleAD, para ser utilizada sin conexión a Internet con LibreOffice o MS Office.

Luego de revisar el material técnico y académico disponible y de utilizar la herramienta para estimar las tasas de muestreo comparativas de los PIC16F87XA, 18Fx55x y 18(L)F2X/45K50 se encuentran conclusiones interesantes:

La configuración por defecto de un módulo ADC de las MCU de 8 bits de gamas medias o avanzadas de Microchip permite cómodamente el muestreo y captura de señales de voltaje cuya máxima componente de frecuencia oscile aproximadamente entre 1.5 y 4.8 kHz (según gama y dispositivo), con un factor de sobre muestreo de 8 (hasta 16 muestras por período) (Kester, 2008).  Incluso para análisis de calidad de la red de suministro de potencia eléctrica (amplitud y fase), la resolución del ADC y la tasa de muestreo son compromisos para asegurar la precisión de los instrumentos de medición (Kuhlmann y otros, 2007).Dado que estas MCU no poseen arquitectura ni conjunto de instrucciones orientados a DSP, el procesamiento que pueden realizar sobre los datos capturados en tiempo real puede ser limitado, sin embargo, debido a la disponibilidad de un módulo de comunicación USB 2.0 en algunos de estos dispositivos,  los datos adquiridos pueden ser transmitidos eficientemente a una computadora para realizar todo tipo de análisis posteriores.  El estudiar y optimizar el proceso de adquisición de datos en los módulos ADC de estas MCU permitió predecir aumentos en las tasas de muestreo entre el 10% y 90%, según la gama de MCU, las especificaciones técnicas suministradas por Microchip y las condiciones de operación de los dispositivos.  El análisis de los datos estimados teóricamente revela algunas marcadas diferencias entre especificaciones técnicas del sistema de muestreo y retención S/H de las MCU más recientes y las de generación inmediatamente anterior, que desfavorece apreciablemente a las más modernas y obliga a preguntarse si el costo inferior de los dispositivos modernos necesariamente está asociado con desempeños inferiores en algunos de sus módulos, o si existen errores en la transcripción de los parámetros en el manual técnico de estos nuevos dispositivos que ameritan su verificación en pruebas estrictas de laboratorio.  Aumentar la velocidad de operación de la MCU no necesariamente  aumenta la tasa de muestreo e incluso bajo ciertas circunstancias puede  reducirla.   El poder determinar si la aplicación requiere menos bits significativos en los resultados () que los que posee como resolución el ADC (n) permite ajustar los algoritmos del proceso para aumentar la tasa de muestreo reajustando tanto el tiempo de conversión como de adquisición. La correcta implementación de la optimización de la tasa de muestreo finalmente depende de un adecuado proceso de codificación  o programación que se fundamenta tanto en el conocimiento de los datos técnicos que el fabricante suministra en los manuales para sus MCU, como en la destreza para producir un algoritmo preciso que represente todas las recomendaciones, condiciones y secuencias que suministra Microchip sobre el uso correcto de dichos datos.  Por lo tanto el programador debe conocer las debilidades y oportunidades que posee cada MCU de acuerdo a las especificaciones técnicas de cada uno de los módulos que ayuden a resolver algún problema particular de la ingeniería, manejando siempre las mejores relaciones de conveniencia entre los diferentes conjuntos de variables del problema.

Deja un comentario