Remote SDR – Chaine d’Ă©mission

Ci-après la prĂ©sentation d’un Ă©metteur BLU Ă  base de SDR (Software Defined Radio) pilotable Ă  distance sur votre rĂ©seau local, par un navigateur internet (Chrome). Il est le pendant du rĂ©cepteur BLU distant dĂ©crit dans cet article.

C’est une solution intĂ©ressante lorsque l’antenne d’émission doit ĂŞtre installĂ© loin de votre local radio. N’oubliez pas que le fonctionnement Ă  distance d’une station de radio amateur via QO-100 n’est autorisĂ© que si la station appartient Ă  l’opĂ©rateur lui-mĂŞme et est exploitĂ©e Ă  son propre emplacement. Il doit toujours avoir un contrĂ´le total sur la station et en particulier pouvoir l’Ă©teindre immĂ©diatement si, par exemple, des interfĂ©rences se produisent.

Matériel

Pour la partie matĂ©riel , l’ensemble comprend principalement:

  • un SDR, le HackRF One, capable d’émettre
  • un nano ordinateur comme l’Orange Pi PC2 H5 ou l’Orange PI One Plus sous ARMBIAN

Dans le cadre d’une adaptation aux Ă©missions vers le satellite QO-100 / Es’hail-2, on a la configuration ci-dessous. NĂ©anmoins, on peut l’utiliser pour d’autres bandes amateur Ă  condition d’adapter la chaĂ®ne de filtrage et d’amplification. Pour la mise au point, on peut Ă©mettre Ă  faible niveau sans les amplificateurs de sortie sur 2M et s’écouter avec un autre transceiver.

On rajoute en sortie du SDR un filtre de bande 2.4 GHz, 2 amplificateurs linéaires bas niveau (SPF5189Z, gain de 8 à 11 dB) et un amplificateur normalement destiné au WIFI (EP-AB003) qui doit délivrer autour de 3 à 4W.

Le nano processeur de traitement est un modèle de la famille Orange PI. Il ressemble au Raspberry PI. J’ai testĂ© le traitement proposĂ© avec un Orange PI PC2 H5 et un Orange PI One Plus H6. C’est ce dernier que j’utilise quotidiennement, on le trouve pour moins de 30€ en chine (Ebay ou Aliexpress). Ces 2 processeurs sont des 4 cĹ“urs 64 bits. Ils sont chargĂ©s Ă  50% avec la chaĂ®ne d’Ă©mission proposĂ©e ci-après. Ce sont les mĂŞmes que j’utilise sur le rĂ©cepteur BLU distant.

Logiciel

Pour la partie logiciel nous avons:

  • un traitement du signal avec GNU-Radio en python2
  • un simple serveur web en python3
  • 2 petits modules en python3 d’interface entre GNU-Radio et les websockets d’échanges des donnĂ©es vers le navigateur web du PC ou de la tablette distante
  • Le logiciel de visualisation et de gĂ©nĂ©ration audio « Remote SDR » Ă©crit en HTML et Javascript pour piloter l’ensemble Ă  distance depuis un navigateur Web comme Chrome.
ChaĂ®ne fonctionnelle d’Ă©mission

Traitement du Signal

L’ensemble du traitement est rĂ©alisĂ© par le logiciel « GNU Radio ». Il dispose d’un Ă©diteur graphique « Gnuradio-companion » qui facilite la tâche car il fourni tous les blocs de traitement pour faire un Ă©metteur sans Ă©crire une ligne de code. C’est presque un jeu d’enfant…. L’installation de GNU Radio est dĂ©crite ici. Le fichier source du graphique de traitement est disponible sur Github F1ATB/Remote-SDR.

Blocs fonctionnels de la chaĂ®ne d’Ă©mission sur Gnuradio-companion

Traitement AUDIO

Le signal audio du microphone du PC ou de la tablette est dans un premier temps filtrĂ© par un traitement en Javascript au niveau du client web pour abaisser la frĂ©quence Ă©chantillonnage afin de rĂ©duire le dĂ©bit Ă  transmettre. Les signaux audios en BLU Ă©tant infĂ©rieurs Ă  4 kHz, la frĂ©quence d’Ă©chantillonnage choisie vers l’Orange PI est de 10 kHz ce qui est suffisant pour respecter le ThĂ©orème de Shannon. Chaque Ă©chantillon est dĂ©fini sur 16 bits par 2 octets transmis par le protocole rĂ©seau websocket sur le port 8005. Pour accĂ©der au module de traitement de GNU-RADIO, un petit module en python3 prend les Ă©chantillons sur le port 8005 et les passe en UDP sur le port 9005.

ChaĂ®ne de traitement de l’audio du microphone

Les Ă©chantillons entiers sur 16 bits sont convertis en flottants puis une transformĂ©e de Hilbert permet la gĂ©nĂ©ration d’un signal rĂ©el et d’un signal imaginaire en quadrature de phase (dĂ©phasage de 90°). On sĂ©pare la partie rĂ©el et la partie imaginaire afin de faire tournĂ©e la phase de 180° ou pas d’une voie en multipliant par -1 ou 1. Cela permet de prĂ©parer la gĂ©nĂ©ration d’un signal en BLI (bande latĂ©rale infĂ©rieure) ou BLS (bande latĂ©rale supĂ©rieure). En sortie on recombine les 2 voies pour retrouver un signal complexe.

Traitement HF

Le signal audio complexe est ensuite filtré pour éliminer la bande non souhaitée:

  • BLI: -2800 Hz Ă  -200 Hz
  • BLS: +200 Hz Ă  +2800 Hz

Pour avoir un spectre propre en Ă©mission, il est obligatoire de faire travailler le HackRF One avec une frĂ©quence d’Ă©chantillonnage en entrĂ©e de plus de 2 MHz. Ici j’ai choisi 2.4MHz comme sur le rĂ©cepteur dĂ©crit par ailleurs.

Vu que l’audio est Ă©chantillonnĂ©e Ă  10kHz, on a un filtre interpolateur avec un rapport de 240 pour atteindre les 2.4 MHz. Le bloc Osmocom Sink permet de passer le flux audio et les paramètres au SDR, HackRF One.

Envoi des commandes

Pour piloter le SDR et le traitement du signal dans GNU Radio il faut recevoir un certains nombres de paramètres du client web distant. La liaison se fait par un websocket sur le port 8004 de l’Orange PI. A nouveau un petit module en Python3 convertit les messages websocket vers une interface XMLRPC sur le port 9004 qui permet de les passer Ă  GNU Radio. Ce module est identique Ă  celui utilisĂ© sur le rĂ©cepteur avec d’autres numĂ©ros de port.

SECURITE EMISSION

IL est impĂ©ratif de mettre en place un dispositif pour Ă©viter des Ă©missions non dĂ©sirĂ©es en cas de plantage du rĂ©seau, de l’orange pi etc….qui ne permettrait pas de passer les commandes.

Sécurité Emission
2 relais pour l’alimentation des amplificateurs

Le module en Python3 qui reçoit les Ă©chantillons audio par paquets de 512 octets fait changer d’Ă©tat la pin 26 du GPIO pour un Orange Pi One Plus (voir dĂ©tail ici), la pin 26 d’un Raspberry Pi 4 ou d’un Orange pi zero 2 (depuis Remote SDR V3) , Ă  chaque rĂ©ception d’une trame. Cela crĂ©e un signal alternatif carrĂ© (0v,3.3v) que l’on passe par une capacitĂ© de 4.7uF Ă  un dispositif redresseur diode et transistor de commutation comme un 2n2222. A chaque demi alternance, les relais sur le collecteur sont actionnĂ©s et maintenus par le condensateur de 47uF Ă  470uF jusqu’Ă  la demi-alternance suivante. Ces relais commutent l’alimentation en 12v de l’amplificateur WIFI de sortie de l’émetteur et le 5v des pre-amplificateurs . Ainsi, si les trames audios sont reçues l’alimentation des amplificateurs est Ă©tablie. Si les trames n’arrivent plus ou que le système est plantĂ©, pin 26 en position haute ou basse, l’alimentation est coupĂ©e.

Détails de cablage avec 2 relais à logique négative

Attention, une source de plantage du numĂ©rique qui peut faire des dĂ©gâts si on n’a pas mis ce type de coupure, c’est la HF des amplificateurs posĂ©s Ă  cĂ´tĂ© de l’Orange/Raspberry PI et du SDR.

pilotage DE L’EMISSION Ă  distance

Comme dĂ©jĂ  mentionnĂ© le pilotage de l’ensemble se fait Ă  distance dans une page web (chrome) fourni par le mini serveur web en python3 sur l’Orange Pi et le port 8000 (Remote SDR V1 uniquement).

http://adresse_IP_Orange_Pi:8000/remote_sdr.html

Remote SDR

Cette partie en HTML et Javascript appelĂ© « Remote SDR » fera l’objet d’un autre article.

Qualité du signal ÉMIS

Sans avoir fait de mesures prĂ©cises sur la qualitĂ© du signal, j’ai pu observer :

  • si l’on respecte une frĂ©quence d’échantillonnage en entrĂ©e du SDR supĂ©rieure Ă  2 MHz, le signal en sortie est propre. Dans le cas contraire, il y a des repliements de spectre. On peut vĂ©rifier cela en utilisant le rĂ©cepteur dĂ©crit ici.
  • le waterfall observĂ© sur QO-100 est très propre. Les bords de part et d’autre des 2.6kHz de bande sont nets et sans bavure.
  • les reports de modulation sont bons
  • Le TCXO du HackRF One fourni une frĂ©quence bien stable dans le temps.

Transceiver distant

Cet Ă©metteur fait partie d’un transceiver complet pilotable Ă  distance comme prĂ©sentĂ© dans ces articles:

Cet article a 5 commentaires

  1. F4IPK

    Bonjour André,
    Bravo et merci pour vos exposĂ©s sur votre blog. Cela coĂŻncide exactement avec ce que je fais Ă©galement de mon cĂ´tĂ© mais en Ă©tant moins avancĂ©. Je suis arrivĂ© sur votre blog après vous avoir entendu sur QO100 ce jour (avec F1MK) mais vous avez quittĂ© la frĂ©quence avant que je puisse vous appeler. Vous avez parlĂ© de hackrf et cela m’est de suite entrĂ© dans l’oreille car je l’utilise aussi en Ă©mission sur QO100. De mĂŞme j’ai aussi l’Ă©quipement dĂ©crit mais avec un seul prĂ©ampli de 18dB qui sort les 20dBm requis sur le mĂŞme ampli chinois. Je mesure d’ailleurs avec un powermètre (chinois aussi) qu’il sort bien 38dBm +-1dBm alors que beaucoup ne lui donne que 3-4W (?). Bon je vais parcourir votre blog en totalitĂ© et Ă  bientĂ´t sur QO100.
    73 de F4IPK

  2. F4BAD

    Bonjour
    Merci beaucoup pour le partage.Je vais lire de ce pas.
    73 de F4BAD Rémi

  3. C.

    Bonjour F4GHH,
    Pourquoi vous ne connectez pas directement le module SDR directement Ă  l’usb de votre PC ?
    Hormis pour la fonction REMOTE.

    1. F1ATB André

      Toute la partie HF est localisĂ©e près de l’antenne. Mon PC est Ă  40 m dans un bureau loin des antennes. Ainsi pas de HF Ă  transporter dans des coax sur une longue distance.

      Cdlt 73

Répondre à F4IPK Annuler la réponse