samedi 16 février 2008

Prise de contact...

Après avoir regardé la vidéo de présentation par K7AGE sur youTube et joué un peu avec kpsk (et gpsk31), est venue l'idée d'en savoir un peu plus...

Le PSK31 est une technique de modulation utilisée par les radioamateurs pour 'chater' sur les ondes. Une porteuse audio est modulée/démodulée en phase (PSK = Phase Shit Keying) à environ 31 bits/seconde sur un 'bête' PC qui communique avec une radio via une 'carte son' standard.

Il est possible d'écouter des échanges avec un simple 'transistor' pour peu qu'il permette de capter les ondes courtes. Par exemple, sur mon 'Yacht Boy 80' de Grundig...

Les sources du programme 'kpsk' sont disponibles, un article détaille la technique utilisée et il existe de nombreux autres articles et programmes sur Internet; tout devrait être en place pour expérimenter un peu de traitement du signal...

Après deux ans sans avancer d'un pouce, voilà que je m'y remets (un peu)...

Après avoir joué un peu avec des FFT pour générer un code Parsons ici, je me suis demandé ce que cela donnerait sur un fichier audio de démonstration sur Wikipédia... Je l'ai d'abord transformé en fichier .raw (unsigned char; 8k samples/sec) avec

$ sox PSK31_sample.ogg -r 8k -b 8 -e unsigned -c 1 PSK31-8ku8.raw

Je calcule les I/Q par une succession de FFT sur 256 échantillons et j'obtiens bien un diagramme de constellation correspondant à une modulation QPSK comme indiqué dans la description du fichier sonore. 256 x 1/8000 seconde = 32 ms, c'est exactement la durée d'un symbole de PSK31 (31.25 bauds).



Ce qui est encourageant... Maintenant, si je décale ma fenêtre de 256 échantillons, cela devient moins net, passe par quelque chose qui ressemble à du 16-QAM avant de revenir à du QPSK...

Et, je ne sais pas encore très bien comment positionner ma fenêtre (sur quel critère) ni comment faire correspondre un couple I/Q à un nombre binaire 0..3. Pour le positionnement de la fenêtre, il semble qu'elle est bien positionnée quand le module (sqrt(I²+Q²)) est maximum.

...À suivre, donc.