Una forma simple de determinar la diferencia de fase I / Q (positiva o negativa) sin usar FFT

1

Tengo un sensor Doppler con canales I / Q para detectar objetos en movimiento. Necesito detectar también la dirección de movimiento del objeto. Debido a la potencia limitada y la memoria flash de mi MCU, no puedo pagar las funciones FFT () o atan () o sqrt ().

Para determinar la dirección de movimiento del objeto, es necesario determinar la diferencia de fase entre I y Q (positiva o negativa). Y los siguientes métodos son los que yo conozco:

  1. FFT
  2. x-correlación
  3. atan (I / Q)
  4. busque la pendiente positiva de la señal I y Q y determine el cambio de fase

Los primeros 3 métodos, no puedo pagarlos debido al límite de MCU. El último es muy sensible al ruido.

¿Hay otras formas sencillas de determinar si la diferencia de fase entre I / Q es negativa o positiva?

    
pregunta bienle

2 respuestas

3

'... el último es muy sensible al ruido'

Todos son sensibles al ruido, el filtrado reduce el ruido. Algunos métodos tienen filtrado 'oculto' en ellos. Por ejemplo, FFT procesa una gran cantidad de datos, y luego utiliza solo una bandeja de frecuencia, que es un filtro implícito. Si utiliza datos filtrados para su estimación de búsqueda de pendiente, entonces será más robusto contra el ruido.

Considera esto. Cuando la pendiente en un canal tiene la misma polaridad que el valor del otro, la rotación será en una dirección, y cuando sean de polaridad opuesta, la otra.

¿Cómo determinas si dos valores tienen la misma polaridad? Multiplícalos. Un resultado positivo y ambos son + o ambos -, y viceversa . O haga la lógica XOR en sus signos, lo que sea más rápido para las instrucciones de hardware que tenga a mano.

Intenta esto. Calcule la pendiente I en In por (In-1 - In + 1), multiplique por Q el valor Qn y acumule la respuesta. Repita para ns posteriores tantas veces como sea necesario para reducir su ruido a niveles razonables. El signo del número acumulado indica la polaridad de la rotación.

    
respondido por el Neil_UK
2

Si está generando una señal en la frecuencia de referencia, debería ser fácil generar una señal en cuadratura. Si uno multiplica la señal entrante por la referencia en fase y el tiempo promedia el resultado y, al mismo tiempo, multiplica la señal entrante con la señal de cuadratura y los promedios de tiempo resultantes, se obtendrá un par de señales que se moverán "alrededor de un círculo "cada vez que la señal devuelta gana o pierde un ciclo. Si observa la polaridad del producto en cuadratura cada vez que el producto en fase cambia de polaridad, incrementa un contador cuando la nueva polaridad en fase coincide con la polaridad en cuadratura y disminuye el contador cuando no lo hace, debería obtener un ruido relativamente alto. - recuento resistente (si el ruido hace que se observe un flanco ascendente falso, lo que provoca un incremento falso, la siguiente lectura de la polaridad correcta se verá como un borde descendente, lo que probablemente cause una disminución para cancelar el incremento falso).

    
respondido por el supercat

Lea otras preguntas en las etiquetas