Detección de fase entre señales de onda cuadrada y sinusoidal

9

Tengo un circuito que tiene una entrada de onda cuadrada digital (generada por PLD, 1.8Vp) y una salida de onda sinusoidal (0.5 - 3.5 Vp). Ambas señales tienen una frecuencia de 100 kHz, sin embargo, la fase es diferente.

¿Cuál es una buena manera de detectar la diferencia de fase entre estas dos señales? ¿Los detectores de fase que he visto hasta ahora son para todas las señales digitales o analógicas? ¿Hay uno para el circuito de señales mixtas como el que tengo?

Actualizar

Conocer la diferencia de fase con 1 grado es suficiente para mi aplicación. Las frecuencias siempre están bloqueadas entre sí y nunca cambian. La onda cuadrada impulsa la electrónica analógica y los análogos producen la onda sinusoidal que tiene una señal modulada por AM. Sin embargo, la amplitud de la señal es muy baja en comparación con la amplitud de la portadora. Debido a la variabilidad de producción, los análogos (incluidos algunos inductores de cuerda manual) tienen una alta variabilidad de unidad a unidad de la fase, y estoy tratando de encontrar un método de autoajuste para el DSP que procese la onda sinusoidal de salida.

udushu
fuente
2
¿Con qué precisión necesita saber la diferencia de fase? ¿Y necesita hacer esto como un experimento único o como parte de la función continua de su circuito? ¿Las dos partes están realmente bloqueadas en frecuencia (o derivan su frecuencia de una referencia común) o son ambas nominalmente a 100 kHz?
El Photon

Respuestas:

11

La detección de fase es la más fácil para las señales digitales; Básicamente es una puerta XOR. Convertiría el seno en una onda cuadrada. Alimente un comparador con el seno en una entrada y el seno promediado (LPF) en el otro, de modo que el comparador dé una onda cuadrada del ciclo de trabajo del 50%. Luego use un detector de fase digital.

stevenvh
fuente
He considerado usar un comparador para hacer una onda sinusoidal a partir de una onda cuadrada, pero el problema es que la amplitud de la onda sinusoidal puede variar dentro del rango de 0.5 a 3.5 V. Esta es una variabilidad de producción y no hay nada que pueda hacer al respecto. Sin embargo, la detección cruzada cero puede ser una solución en ese caso ... Puede valer la pena considerarlo.
udushu
1
@udushu: el promedio de LPF resuelve eso. Se ocupará de la amplitud variable y el desplazamiento de CC.
stevenvh
@stevenvh, no creo que el LPF sea suficiente para garantizar que la amplitud de la señal de entrada no afecte la medición de fase. Los comparadores tienen una propiedad llamada dispersión que significa que el retraso de propagación cambia a medida que cambia la amplitud de entrada. Parece un comparador que puede satisfacer las necesidades de OP de error de fase (aproximadamente 40 ns) sin más compensación, también debería tener una dispersión lo suficientemente baja; pero será importante verificarlo al elegir un comparador para este uso.
El Photon
@ThePhoton: tienes razón, pero OP aún no había mencionado su precisión de 1 ° cuando respondí. OTOH hay comparadores con una dispersión de mucho menos de 100 ps, ​​que es unos pocos órdenes de magnitud mejor que el 1 °.
stevenvh
@ThePhoton: parece que el comparador de cruces por cero es una solución. Gracias a todos por la discusión.
udushu
4

Como dice que tiene un DSP que procesa la onda sinusoidal, puede usar una transformada de Fourier compleja para medir la fase (solo necesita evaluar el DFT a la frecuencia conocida).

En realidad, esto está estrechamente relacionado con lo que Curd sugirió sobre la mezcla: un DFT de punto único es un tipo de mezclador seguido de integradores o filtros de paso bajo. La diferencia es que al hacerlo en el dominio complejo (o usando un mezclador IQ en el analógico) puede determinar el ángulo de la salida compleja. Usando solo los componentes reales o solo un mezclador único, no puede distinguir el plomo del retraso y la sensibilidad de amplitud sería un desafío mayor.

Chris Stratton
fuente
Ojalá pudiera. Eso habría resuelto muchos problemas que estoy teniendo actualmente. Desafortunadamente, el DSP que tengo que usar no tiene la potencia necesaria para hacer DFT en tiempo real en una señal de 100kHz.
udushu
Solo tiene que calcular un intervalo de frecuencia, no los # contenedores normales = # muestras que las personas asocian con una transformación de Fourier. Además, ¿con qué frecuencia tienes que medir la fase? Si no es frecuente, la verdadera pregunta es si su sistema puede muestrear y almacenar a esa velocidad, no si puede procesarlo.
Chris Stratton
El DSP está configurado actualmente para muestrear a 20kHz y solo se está muestreando la señal demodulada, no la portadora de 100kHz. No creo que el humilde dsPIC33 que estoy usando pueda muestrear una señal de 100kHz.
udushu
@udushu una búsqueda rápida sugiere que el dsPIC puede ser capaz de hacer una mega muestra / segundo. Pero si el ancho de banda analógico es suficiente y conoce la frecuencia, también puede sublimar intencionalmente y explotar el aliasing.
Chris Stratton
0

Suponiendo que las amplitudes de ambas señales de entrada son constantes (de lo contrario, un circuito AGC podría hacerlas constantes) puede usar un mezclador (multiplicador) como detector de fase:

Si las señales están en fase, la salida será positiva.
Si las señales están desfasadas 180 °, la salida será negativa.
Para otras diferencias de fase, la salida estará en algún lugar entre esos valores.

Por ejemplo, la detección de fase se menciona en la hoja de datos como una de las aplicaciones del multiplicador analógico IC AD633 .

Cuajada
fuente