Salto de frecuencia 900MHz - Mitigación del ruido del piso y diseño de algoritmos

2

He construido unos pocos sistemas de RF de frecuencia fija baremetal y estoy trabajando en un producto de salto de frecuencia de largo alcance con un ARM Cortex M3. ¡Así que tenemos algunos caballos de fuerza aquí!

Tengo el salto compatible con TX FCC Parte 15.247 a través de 60 canales y utilizando una señal de banda extremadamente estrecha para cumplir con los requisitos de nuestra gama. El tiempo promedio de mensajes es de 190 ms (~ 50 ms de preámbulo, 140 ms de sincronización de palabra + paquete).

El mercado de productos es Estados Unidos, por lo que se está haciendo todo lo posible para cumplir con las normas de la FCC.

Es un sistema extraño porque el objetivo es simplemente entregar un solo paquete y aprovechar el aumento del límite de transmisión.

Si el sistema estuviera más lleno de ráfagas, simplemente comenzaría a saltar el canal 1 y pasaría por todos los 60. Pero tenemos un requisito de latencia muy estricto.

Necesitamos que el sistema responda dentro de 300 ms de una transmisión. Si hacemos un bucle a través de los 60 canales, eso toma casi 10 segundos. Si cambiamos la velocidad de bits, no alcanzaremos nuestra distancia.

Tengo el ciclo de RX ~ 800us por canal para un escaneo asíncrono de los 60 canales, tomando una lectura de RSSI y deteniéndome en el canal más fuerte.

En mi escritorio, recibo alrededor del 80% de los paquetes.

Hice algunas excavaciones más, y parece que estoy recibiendo mucho ruido ambiental en el rango de 900MHz que hace que mi detector se dispare.

Agregué un límite de RSSI, y eso mejoró el sistema a aproximadamente el 90% de los paquetes.

Pero esto es simplemente en mi escritorio! Por mi experiencia, sé que este sistema no va a ir muy lejos, esta señal de banda estrecha se integra rápidamente en el piso de ruido, pero de alguna manera el receptor es tan sensible que llega bastante lejos (800 metros).

He pensado en promediar el nivel de ruido que podría ayudar (elija su promedio móvil simple o un microcontrolador más amigable [soy más que un chico de 8 bits, así que tengo que ver si el M3 realmente necesita un MCU amigable esquema).

El sistema mecánico realmente es una unidad es TX, y una es el RX. Así que realmente no he digerido un esquema de retransmisión todavía. El tiempo de latencia probablemente tampoco funcionaría desde la perspectiva del usuario.

¿Alguien ha abordado un esquema de salto de frecuencia como este? ¿Alguna idea de cómo mitigar la cantidad de ruido de 900 MHz por ahí pero aún así podemos transmitir nuestra señal?

    
pregunta Leroy105

2 respuestas

1

Puede enviar un paquete corto en una frecuencia de baliza una vez por segundo aproximadamente y saltar a través de las otras 59 frecuencias con carga útil en un horario predeterminado. El paquete de baliza corta tiene la posición actual en la secuencia de salto.

Si desea implementar un sistema "cognitivo", puede mirar el piso de ruido en todas las frecuencias del transceptor principal y enviar una máscara que indique qué frecuencias se utilizarán en la secuencia de salto en el marco de la baliza (necesitará más de 60 frecuencias totales para que pueda omitir canales de alto ruido).

Este esquema requiere el uso de una sola frecuencia de baliza invariable, pero puede diseñar que el sistema tenga balizas secundarias en una frecuencia variable en la secuencia de salto. Esto le dará un segundo de bloqueo, ya que los transceptores remotos están conectados a la red y no habrá una latencia adicional para transmitir una vez que haya adquirido la secuencia.

Si tiene varios transceptores y necesita asignar intervalos de tiempo para la transmisión remota, tendrá que diseñar esto en su protocolo. Si proporciona información en su pregunta sobre el número de transceptores, la frecuencia de los paquetes, etc., puedo refinar esta respuesta a su situación particular.

Si ocasionalmente está enviando un solo paquete desde / entre una gran cantidad de estaciones remotas, LORA es probablemente una mejor solución que construir algo desde cero. LORA tiene un presupuesto de enlace extremadamente alto, por lo que probablemente podrá cumplir con sus objetivos de alcance sin sobrepasar el umbral regulatorio de 250 mW y usar PA externas en sus transceptores. En un entorno suburbano (piso con mucho ruido), alcanzamos un rango de 1 milla (LOS) con transceptores LORA Semtech sin PA externo (pero con una antena decente en cada extremo). Tenga en cuenta que algunos de los tableros LORA chinos son terribles (en su mayoría cristales de baja tolerancia, pero también generalmente mal diseñados para RF).

    
respondido por el Dean Franks
1

Cálculo rápido:

Pérdida de la trayectoria de espacio libre en f = 900 MHz para d = 1 km en dB:

\ begin {align} a (d, f) & = 20 \ log_ {10} (d) + 20 \ log_ {10} (f) +20 \ log_ {10} \ frac {4 \ pi} {c} \\ &erio; = 20 \ log_ {10} (10 ^ 3) + 20 \ log_ {10} (9 \ cdot10 ^ 8) +20 \ log_ {10} \ frac {4 \ pi} {3 \ cdot10 ^ 8} \\ & = 60 + 160 +20 \ log_ {10} 9 +20 \ log_ {10} \ frac {4 \ pi} {3} - 160 \\ & \ aproximadamente 92 \ end {align}

Compare las sensibilidades de los transceptores OOK menos espartánicos que el SX1211; Algo así como GFSK es mucho más inteligente que OOK, porque la probabilidad de detección y la falsa alarma simplemente no están de su lado cuando utiliza OOK en un canal AWGN con incertidumbre sobre el piso de ruido. Mucho, mucho menos incluso en un canal de Rayleigh.

Por lo tanto, la solución aquí realmente no es una estimación inteligente del piso de ruido: está usando algo menos propenso al ruido que OOK.

Como dijo que está contento de tener un ARM Cortex-M3 a mano, hice una revisión rápida de los "sospechosos habituales" cuando se trata de producir MCU ARM con interfaz de RF integrada.

SILabs tiene la interesante familia Flex Gecko:

enlace

que puede hablar varias bandas a la vez, pero en realidad, solo nos preocupamos por 900 MHz, ¿verdad? (Si ejecuta los mismos números que antes para 2.4 GHz, notará que incluso podría usar that si tiene más de 0 dBm de potencia de TX, y sí lo tiene con estos chips).

Entonces, ¿qué prometen para 900 MHz?

  

-126.2 dBm @ 600 bps, GFSK, 916 MHz

Se parece mucho a tu aplicación, ¿verdad?

Entonces, ¿eso funciona en nuestro escenario?

Bien, consultemos la hoja de datos (p. 54) sobre TX poderes:

  

Potencia de transmisión máxima

     
  • PAVDD conectado directamente a una fuente de alimentación externa de 3.3V, 20 dBm de salida: \ $ POUT_ \ text {max, mínimo especificado} = 18 \, \ text {dBm} \ $
  •   
  • PAVDD conectado a la salida DC-DC, configuración de potencia de salida de 14 dBm: \ $ POUT_ \ text {max, mínimo especificado} = 12.6 \, \ text {dBm} \ $
  •   

Entonces, porque estamos malhumorados y sabemos que la combinación de circuitos es más agotadora de lo que debería ser, simplemente decimos: Ok, emitimos 10 dBm.

Con una potencia de TX de 10 dBm (creo que puedes hacer mucho sin saltar, pero no estoy en FCC-land), aún recibirías -82 dBm.

Eso es (-82) - (- 126) dB = 44 dB por encima de la sensibilidad.

Llamaría a eso un buffer confiable contra el desvanecimiento.

Por lo tanto, cancele sus esfuerzos saltando. Simplemente use un microcontrolador ARM que integre el frontend y pueda hacer un poco más que OOK.

    
respondido por el Marcus Müller

Lea otras preguntas en las etiquetas