ENCICLOPEDIA DE RADIOELECTRÓNICA E INGENIERÍA ELÉCTRICA Nuevos modos en el medidor combinado. Enciclopedia de radioelectrónica e ingeniería eléctrica. Enciclopedia de radioelectrónica e ingeniería eléctrica. / Tecnología de medición Durante el funcionamiento del dispositivo combinado [1] se mejoró significativamente su programa de microcontrolador. La nueva versión 2.03 de este programa proporciona al usuario, además de los ya existentes, modos de medición de la frecuencia de la señal de entrada y un barrido único en el analizador lógico. Las nuevas funciones se implementaron exclusivamente en software, no fue necesario realizar cambios en el hardware del dispositivo. El modo de barrido único se proporcionó desde el principio en el osciloscopio del instrumento, pero el autor no lo implementó en el analizador lógico, aunque allí no es menos útil. Esta omisión ha sido corregida en la nueva versión del programa del microcontrolador. Ahora podemos decir que el analizador lógico, como el osciloscopio del dispositivo, tiene dos modos de escaneo: regular y único. Son casi idénticos con dos excepciones. Primero, el analizador lógico no mide el voltaje de la señal de entrada. Esta operación no tiene sentido aquí, ya que se examinan las señales de niveles lógicos estándar. En segundo lugar, la información adicional que se muestra en la pantalla sobre la posición del marco de información en el eje de tiempo en el modo analizador lógico no se superpone al área de los oscilogramas y no interfiere con su observación. Por lo tanto, desactivarlo no se implementó por considerarlo innecesario. En la Fig. 1 se muestra un ejemplo de una imagen en la pantalla del indicador en el modo de escaneo único del analizador lógico. XNUMX.
Desde el modo de escaneo normal del analizador, se ingresa a este modo presionando la tecla "5". En él operan las siguientes teclas de control: "4": mueva el marco hacia la izquierda (al comienzo del búfer); "5": deje de moverse a lo largo de los conteos de señales; "6": mueva el marco hacia la derecha (hasta el final del búfer); "0" - selección del paso de movimiento (conteo o marco); "D" - salir del modo de barrido único. No se proporciona una descripción completa del modo de barrido único, ya que se describe completamente en [2] en relación con un osciloscopio. En cuanto al modo de medición de frecuencia, el microcontrolador de la familia ATxmega permite implementar varias de sus opciones. Junto con el clásico cálculo del número de períodos de la señal medida por unidad de tiempo, los temporizadores-contadores de este microcontrolador son capaces de medir directamente el período de repetición del pulso de la señal de entrada, lo que facilita el cálculo de su frecuencia de repetición. La ventaja de este método es el corto tiempo de medición, pero la precisión aceptable se mantiene sólo hasta una frecuencia que no exceda varias decenas de kilohercios. En este sentido, la frecuencia de la señal en el dispositivo se mide utilizando el método clásico mencionado anteriormente. Su principio es simple. Un temporizador-contador forma un intervalo de tiempo de medición, el segundo cuenta los pulsos de la señal de entrada durante este intervalo. Si la duración del intervalo de medición es de 1 s, entonces el número acumulado durante este tiempo en el segundo contador es la frecuencia de la señal en hercios. Sin embargo, existen dificultades para implementar este método. En primer lugar, todos los contadores temporizadores del microcontrolador de la familia ATxmega [3] son de 16 bits. Esto significa que la frecuencia máxima medida correctamente por dicho contador está limitada por el desbordamiento de su registro de conteo y es igual a 216 - 1 = 65535 Hz. Claramente esto no es suficiente, dado que los elementos del microcontrolador funcionan hasta una frecuencia de 32 MHz. La forma más sencilla de aumentar la frecuencia máxima medida es reducir el intervalo de medición. Por ejemplo, reducirlo cuatro veces conducirá a un aumento de cuatro veces en el valor máximo de la frecuencia medida. Al mismo tiempo, la discreción de su medición aumentará en la misma cantidad, porque cada pulso “pesará” cuatro veces más. Por tanto, este camino no es práctico. Es posible lograr un aumento en la frecuencia máxima medida sin aumentar la resolución de medición solo aumentando la profundidad de bits del contador de pulsos de la señal de entrada. La arquitectura del microcontrolador ATxmega brinda esta oportunidad al permitir conectar varios contadores temporizadores en serie. Para obtener un contador de 32 bits, simplemente combine dos contadores temporizadores de 16 bits. El desbordamiento de un contador de 32 bits por segundo solo puede ocurrir a una frecuencia de 2 - 1 = 4294967295 Hz, por lo que el límite superior de la frecuencia medida en este caso está limitado solo por las propiedades de frecuencia de los elementos del microcontrolador y es igual a 32 Megahercio. En segundo lugar, es necesario "llevar" la señal de entrada desde la línea del puerto al temporizador-contador y obligar a este último a contar los pulsos en un amplio rango de tasas de repetición. En tercer lugar, es necesario garantizar el funcionamiento estrictamente sincrónico de todos los elementos del microcontrolador involucrados en el proceso de conteo, independientemente del funcionamiento de sus otros componentes, para evitar varios tipos de fallas de conteo impredecibles. Una maravillosa herramienta disponible en la familia de microcontroladores ATxmega ayudará a superar estas dificultades: el sistema de eventos [4]. Con su ayuda se pueden generar todas las señales necesarias para el funcionamiento y transportarlas desde la fuente al receptor con el mínimo retardo posible y, muy importante, estable. El diagrama funcional del frecuencímetro implementado en el dispositivo considerado se muestra en la Fig. 2. El hardware del puerto de E/S permite analizar el estado de cada una de sus líneas y generar eventos si cambian. Por ejemplo, genere eventos para cada flanco ascendente o descendente de la señal de entrada. Los contadores temporizadores son capaces de contar no sólo los pulsos del reloj interno del microcontrolador, sino también señales de eventos. A partir de esto queda claro cómo se organiza el recuento de los pulsos de la señal de entrada.
La señal se suministra a la línea PF3, que se configura como entrada y genera eventos en función de diferencias de señal crecientes (un evento por cada período). El contador temporizador TCC1 funciona en modo contador para eventos entregados a través del canal 3 del enrutador de eventos. También genera y envía eventos de desbordamiento (OVF) de su registro de conteo de 4 bits al canal 16 del enrutador. Se cuentan mediante un contador temporizador TCD1, configurado para funcionar en el modo de un contador de eventos de 16 bits entregado a través del canal 4. Una vez por segundo, al final de la señal del intervalo de conteo generada por el temporizador-contador TCF0, configurado para contar los pulsos del sincronizador del microcontrolador, el programa "pega" los resultados de los contadores TCC1 y TCD1 en una palabra de 32 bits y asigna su valor a una variable. Luego reinicia todos los contadores temporizadores, iniciando un nuevo ciclo de medición de frecuencia. Funciones clave en el modo de medición de frecuencia
Se deben considerar las principales fuentes de error de medición de frecuencia: 1. Inexactitud al configurar la frecuencia del reloj del microcontrolador, como resultado de lo cual la duración real del intervalo de medición difiere de un segundo. Este error tiene dos componentes: sistemático y aleatorio. El componente sistemático es el resultado de la desigualdad entre la frecuencia de reloj promedio real y el valor nominal. Es permanente y puede compensarse. Cómo hacer esto se discutirá a continuación. El componente aleatorio del error surge debido a las fluctuaciones en la frecuencia del generador de reloj. Hay bastantes factores que le dan origen. Se trata de inestabilidad y pulsaciones de la tensión de alimentación, ruido intrínseco de los elementos del generador, influencia de la temperatura, etc. En dispositivos de alta gama, para minimizar los efectos nocivos de tales factores, se utiliza una amplia gama de medidas, incluida la térmica. Estabilización y protección contra vibraciones del generador de reloj. Sin embargo, este tipo de error sólo puede reducirse, no eliminarse por completo. En la copia original del dispositivo no supera el ± 0,001%. Esto significa que se mide una frecuencia de 5 MHz con un error de ±50 Hz. 2. Error de muestreo del resultado de la medición. Esto resulta familiar para cualquiera que haya trabajado alguna vez con algún instrumento de medición digital. El origen de este error se explica en los gráficos de la Fig. 3. Dependiendo de la posición relativa de los límites del intervalo de medición en el eje del tiempo y de los cambios en la señal medida registrada por el contador, el resultado del conteo puede diferir en uno. Por ejemplo, en el caso que se muestra en la figura, se pueden contar 6 o 7 pulsos con una frecuencia de repetición real de aproximadamente 6,6 Hz (con un intervalo de conteo de 1 s). Este efecto persiste en cualquier relación entre la frecuencia medida y el intervalo de conteo. Cuando una medición se repite muchas veces, el dígito menos significativo de su resultado “salta” uno de un ciclo a otro. La magnitud relativa de este error aumenta en proporción inversa a la frecuencia medida. Por ejemplo, se medirá una frecuencia de alrededor de 100 Hz con un error relativo promedio de ±0,5%. En frecuencias de varios megahercios y superiores, el error de muestreo puede despreciarse. Aquí prevalece el componente aleatorio de la duración del intervalo de medición.
El bloque de programa que realiza mediciones de frecuencia fue desarrollado, como todo el programa, en el sistema de desarrollo de programas BASCOM AVR. Al ingresar al modo frecuencímetro, el programa configura adecuadamente los elementos de la estructura interna del microcontrolador involucrados en la medición de frecuencia: - la línea PF3, a la que se recibe la señal de entrada, está configurada como una entrada que genera eventos en función del aumento de las caídas de señal, y el canal 3 del enrutador de eventos está configurado para transmitir señales sobre estos eventos: Puertof_pin3ctrl=1 Evsys_ch3mux=&B01111011 - configura el temporizador-contador TCF0 para generar un intervalo de medida de 1 s de duración: config Tcf0=Normal,Preescala=7 Tcf0_per=31249 - configura el temporizador-contador TCC1 para contar los eventos que llegan por el canal 3 del enrutador desde la línea PF3: configuración Tcc1=Normal Tcc1_ctrla=&B00001011 Tcc1_ctrld=&B00001011 y el canal 4 del enrutador, para transmitir señales sobre el desbordamiento del temporizador-contador TCC1: Evsys_ch4mux=&B11001000 - configura el temporizador-contador para contar los eventos provenientes del canal 4 del enrutador: configuración Tcd1=Normal Tcd1_ctrla=&w00001100 Tcd1_ctrld=&w00011100 Como resultado, los contadores temporizadores TCC1 y TCD1 forman un único contador de 32 bits. Ahora el sistema está listo para contar los períodos de la señal medida. Además, ya está en marcha, ya que cada uno de los dispositivos considerados comienza a funcionar inmediatamente después de la inicialización. Pero para obtener el resultado correcto, es necesario empezar a contar los eventos desde cero al comienzo del intervalo de medición. Por lo tanto, el ciclo de medición debe comenzar reiniciando simultáneamente los tres contadores-cronómetros involucrados en el mismo. Es especialmente importante vincular al inicio del intervalo de medición (el momento de reiniciar el temporizador TCF0) el momento de reiniciar el temporizador-contador TCC1, que opera a la velocidad más alta. La cuestión de vincular estrictamente el momento de reiniciar el temporizador-contador TCD1 con el comienzo del intervalo de medición no es tan urgente. El primer evento que tendrá que contar se producirá sólo cuando el temporizador-contador TCC1 se desborde. Aunque el microcontrolador tiene la capacidad de reiniciar simultáneamente varios temporizadores, esto se implementa únicamente a través del sistema de eventos. No es posible utilizarlo en el caso que nos ocupa, ya que el temporizador-contador TCC1 está configurado para recibir señales de eventos del canal 3 y no puede recibir señales de eventos de otros canales sin una reconfiguración. Por lo tanto, sólo el procesador puede emitir un comando de reinicio a los contadores temporizadores, y sólo uno a la vez. El ciclo de medición de frecuencia consta de dos etapas: la medición en sí y la formación de su resultado. La fase de medición se describe mediante las siguientes cinco líneas de programa: Tcf0_ctrlfset=&B00001000 Tcc1_ctrlfset=&B00001000 Tcd1_ctrlfset=&B00001000 Bitwait Tcf0_intflags.0, Establecer Evsys_ch3mux=&B00000000 Las primeras tres líneas de este fragmento reinician los contadores del temporizador en el orden TCF0, TCC1, TCD1. Por lo tanto, el temporizador-contador TCC1 comienza a contar eventos no al comienzo del intervalo de medición contado por el temporizador-contador TCF0, sino con un retraso Δt1 en relación con este momento (Fig. 4). Es igual a la duración de la operación de reinicio del procesador del contador temporizador TCC1. Luego, con el mismo retraso, el procesador reinicia el temporizador-contador TCD1, después de lo cual comienza a esperar el final del intervalo de medición. Cuando llegue este momento, el temporizador-contador TCF0 establecerá el indicador de solicitud de interrupción de desbordamiento en el bit cero del registro TCF0_JNTFLAGS.
Habiendo detectado esta bandera, el procesador debe prohibir que el contador-temporizador TCC1 cuente más eventos (períodos de la señal medida). Esto se puede hacer de diferentes maneras. En nuestro caso, la última operación de la fase de medición es simplemente deshabilitar el canal 3 del enrutador de eventos. Para esta operación necesita tiempo Δt2 (Fig. 4), durante el cual continúa el cómputo de períodos. Si t2 ≠Δt1, la duración real de los eventos de conteo (mediciones de frecuencia) difiere en Δt2 - Δt1 A partir de la duración dada del intervalo de medición, esto da lugar a otro componente del error de medición. Para eliminarlo es necesario igualar estos retrasos. Sin embargo, en un programa escrito en un lenguaje de alto nivel (incluido BASCOM AVR), es difícil determinar los valores exactos de su duración, ya que el programador no conoce el algoritmo para traducir las construcciones del lenguaje utilizadas en comandos de máquina. Por lo tanto, en un programa real, los fragmentos que reinician el temporizador-contador TCC!, así como también registran el final del intervalo de medición y detienen TCC!, están escritos en lenguaje ensamblador y se toman medidas para asegurar la misma duración de ejecución. de estos fragmentos. Esto logra la igualdad Δt2 = Δt1 y, en consecuencia, la igualdad de la duración real del intervalo de medición con la dada. A continuación, consideraremos el método implementado en el dispositivo para eliminar el error sistemático asociado con la desigualdad de la frecuencia del reloj del microcontrolador con respecto al valor nominal. Como se señaló anteriormente, la consecuencia de tal discrepancia es la desviación de la duración del intervalo de medición del valor requerido de 1 s y la desviación proporcional del valor de frecuencia medido del real. En primer lugar, se debe medir esta desviación. Para hacer esto, necesitará un generador de señal estándar con una frecuencia de varios megahercios o un conjunto de cualquier generador suficientemente estable y un medidor de frecuencia estándar. La señal del generador se suministra a las tomas 8 y 3 (común) del conector X5 del dispositivo. Los códigos del archivo Osc-Volt-2_03.hex adjunto al artículo se cargan en la memoria del programa del microcontrolador del dispositivo. Después de encenderlo, el dispositivo cambia al modo frecuencímetro y se mide la frecuencia del generador de referencia. La medición debe repetirse de 10 a 20 veces, después de lo cual se debe calcular el valor de frecuencia promedio medido F.modificado. El factor de corrección se calcula mediante la fórmula. k=farr/Fmodificado, donde Farr - frecuencia del generador de referencia. Para ingresar el coeficiente K en el programa, necesita encontrar la línea comentada en el archivo Osc-Volt-2_03.bas (el texto fuente del programa) compensación: 'Temp2=Temp2*1.000004 Está etiquetado como Compensación: para que sea más fácil de encontrar. Debe descomentarse y el multiplicador 1.000004 (este valor es válido para la copia del dispositivo del autor) debe reemplazarse con el valor encontrado del factor de corrección K. Después de esto, es necesario compilar el programa corregido y cargar los códigos. desde el archivo HEX resultante a la memoria de programa del microcontrolador. Como ya se mencionó, la señal cuya frecuencia se desea medir se suministra al conector 8 del conector X5 del dispositivo, desde donde se suministra a la entrada PF3 del microcontrolador. Está claro que el microcontrolador es capaz de percibir correctamente sólo una señal cuyos niveles corresponden a los aceptados en la lógica de tres o cinco voltios. Para medir la frecuencia de señales de otras formas (por ejemplo, sinusoidales), se requiere un modelador adicional. Se obtienen buenos resultados utilizando la sonda comparadora descrita en [5]. Se puede conectar al conector X5 del dispositivo. ¡Solo necesitas enviar desde el tablero A! dispositivo para liberar la ranura 2 de este conector con tensión +5 o +3,3 V para alimentar la sonda (está operativa en cualquiera de los valores de tensión especificados). Conecte la sonda según el diagrama mostrado en la Fig. 5.
La vista de pantalla del indicador del instrumento en el modo de contador de frecuencia se muestra en la fig. 6.
A este modo se ingresa desde el modo normal del analizador lógico presionando la tecla "LA". Cambie el dispositivo del modo frecuencímetro a otros modos presionando las siguientes teclas: "OS" - al modo de osciloscopio; "LA" - al modo de analizador lógico; "GN" - en el modo generador de señal. El programa del microcontrolador se puede descargar desde ftp://ftp.radio.ru/pub/2015/09/combi2-03.zip. Literatura
Autor: A. Savchenko Ver otros artículos sección Tecnología de medición. Lee y escribe útil comentarios sobre este artículo. Últimas noticias de ciencia y tecnología, nueva electrónica: Una nueva forma de controlar y manipular señales ópticas
05.05.2024 Teclado Primium Séneca
05.05.2024 Inaugurado el observatorio astronómico más alto del mundo
04.05.2024
Otras noticias interesantes: ▪ Ecos de un antiguo terremoto ▪ Comunicación óptica energéticamente eficiente ▪ Fermiones de Majorana encontrados en ditellurida de uranio ▪ Cuero artificial estirable impreso en 3D ▪ Crean seda de araña usando bacterias fotosintéticas Feed de noticias de ciencia y tecnología, nueva electrónica
Materiales interesantes de la Biblioteca Técnica Libre: ▪ sección del sitio Transferencia de datos. Selección de artículos ▪ El lenguaje del artículo se le da a un diplomático para ocultar sus pensamientos. expresión popular ▪ artículo Instructor del centro de formación. Descripción del trabajo ▪ artículo Meterse en el ojo de una aguja. Secreto de enfoque
Deja tu comentario en este artículo: Todos los idiomas de esta página Hogar | Biblioteca | Artículos | Mapa del sitio | Revisiones del sitio www.diagrama.com.ua |