Récepteurs à première FI basse – Partie 3

Après tout ce qu’on a dit sur les performances supposées meilleures des récepteurs à première FI basses (en tous cas pour un budget et un usage amateur), il faut toutefois y apporter une petite nuance. Tout le monde ne tirera pas réellement profit du Dynamic range étendu de ces postes. Si vous n’avez qu’une antenne filaire, si vous n’êtes pas fondus de contests, si vous préférez les bandes WARC ou si 90% de votre trafic est en local, tout poste récent devrait vous donner satisfaction. Suivant l’usage, un FT-450, un TS-480 ou un IC-7200 offrent un format pratique, des fonctionnalités riches et un prix tout à fait correct sans négliger l’aspect performances. Le marché de l’occasion est aussi plein de bonnes affaires avec des FT-990 ou FT-1000D (pour ne citer que Yaesu) qui se négocient à des prix corrects, sont aisés à utiliser comme postes fixes et sont encore loués par de nombreux DXeurs de pointe.

Aussi, ne regardez les défauts de jeunesse du poste que vous convoitez. Une grosse avancée des équipements actuels (initiée par Elecraft il me semble) est la possibilité de mettre à jour leur logiciel interne de façon simple. Tous les constructeurs, grands ou petits, corrigent régulièrement les défauts mineurs de leurs postes. Parfois les mises à jour sont même beaucoup plus profondes et touchent même es algorithmes de traitement du signal dans le DSP. Prenons l’exemple du Ten-Tec Eagle, celui-ci semble souffrir d’un traitement du signal de Réduction du Bruit (NR ou Noise Reduction) très peu efficace. Quand on sait que sur d’autres postes que le Jupiter leur algorithme est tout à fait performant, il ne fait pas de doutes que le défaut sera corrigé.

Que regarder réellement pour faire un juste choix alors. Passons sur ce que les postes savent tous bien faire aujourd’hui (sensibilité, stabilité, puissance d’émission, compresseur, mémoires, manipulateur électronique…) et attardons nous sur les défauts souvent tus des équipements actuels. Tout d’abord, la corollaire d’une bonne résistance aux signaux forts se situe dans la qualité du circuit d’AGC. En effet, le but d’un contrôle automatique du gain est justement d’augmenter la plage de dynamique réellement utilisable. Dans les postes modernes elle est complexe car elle doit d’une part s’assurer que le convertisseur analogique-numérique de la dernière FI soit toujours dans la bonne plage d’exploitation et aussi garantir le confort d’écoute. Les récepteurs à DSP sur la FI comportent souvent une AGC à 2, 3 ou 4 niveaux (AGC analogique, AGC avant le filtrage numérique, AGC pour la BF…). La première génération de postes à DSP sur la FI souffrait d’un trou dans l’attaque de l’AGC ce qui pouvait causer de forts désagrément. Aujourd’hui tout semble résolu. De plus la plupart des postes disposent de 3 niveaux d’AGC (rapide, moyenne, lente) parfois paramétrables en attaque et délai et même totalement désactivable (à proscrire car le CAN saturerait très vite). Les derniers postes sortis ne semblent plus souffrir de défauts. Ensuite, point important mais souvent négligé la qualité de la BF. A quoi cela sert d’avoir un récepteur très sensible et filtrant parfaitement les signaux indésirables si la partie audio vient ajouter des sifflements ou des distorsions. Pour les longues périodes d’utilisation, ce défaut sera plus fatiguant que 10dB de moins dans le Dynamic Range. Dans la même veine, l’ergonomie n’est pas à négliger. Personnellement, même si j’apprécie toujours mon FT-100 qui me gratifie de DX et de new-ones régulièrement, je suis écoeuré de son ergonomie “par menu” qui oblige à appuyer sur 10 touches pour faire certaines opérations récurrentes en cours de trafic.

Courbe de sélectivité composite Orion II Ten-Tec (http://capheda NULL.files NULL.wordpress NULL.com/2011/07/bruit-de-phase-orionii NULL.png)On a beaucoup parlé du bruit de phase, c’est un élément déterminant des performances du récepteur et de l’émetteur. Toutefois peu d’efforts sont réellement faits par les constructeurs. On peut toutefois citer l’exemple positif de l’Orion II de Ten-Tec, qui bien que datant d’il y a plus de 5 ans offre un circuit down-conversion très résistant aux signaux forts et un oscillateur local très propre dans son récepteur principal. Le récepteur secondaire est lui à couverture général et moins bien doté. Le graphe ci-contre est issue de son banc d’essai par G3SJX pour RadCom paru en Août 2006, le trait plein montre que le bruit de phase est excellent, même si le FT-5000 doit faire mieux de 10dB aujourd’hui et le TS-590s mieux de 20dB pour son récepteur à première FI basse.

Par ailleurs il ne faut négliger l’aspect émission. La forme de l’attaque du signal en CW est importante pour garantir la meilleure efficacité en terme d’émission. Une attaque trop rapide va étaler le spectre à l’émission et envoyer de la puissance inutilement à plusieurs kiloHertz à côté de la fréquence utile. Le circuit d’ALC est souvent considéré comme problématique. Au moins la moitié des postes de la dernière décennie ont soit une ALC trop agressive qui limite inutilement la puissance transmise et compresse trop fortement le signal créant encore une fois un étalement du spectre transmis. L’ALC peut aussi se mettre à osciller… Dernier problème touchant par exemple le TS-590 ou l’IC-7410 (sans parler des FT-840, IC-706…) et un pic de puissance lors du passage en émission. Même avec une puissance réduite à 60W pour accommoder un amplificateur linéaire legal-limit de 1,5kW (Alpha 9500 par exemple), le transceiver envoie pendant un temps bref toute la puissance (100w) ou plus. Les effets peuvent aller de la simple mis en sécurité de l’amplificateur à une destruction progressive du tube ou des transistors. Dernier point, le niveau des signaux d’intermodulation du troisième ordre ou plus en émission est aussi à surveiller sur les postes utilisant un dernier étage à 13,8V (contrairement à ceux à 40V ou plus). Encore une fois la puissance serait inutilement transmise là où il ne faut pas et surtout vous allez perturber du monde sur une large plage de fréquence…

Les revues parue dans les magazines restent néanmoins de très bonnes références, mais il faut savoir lire entre les lignes et ne pas négliger les petits caractères. Personnellement, je trouve que les revues de l’ARRL publiées dans QST sont parfois subjectives et que certaines mesures sont biaisées (mesure du Dynamic Range qui ne prend pas en compte la limitation par le bruit de phase) pour gonfler un peu les chiffres. Je leur préfère celles du magazine RadCom de la RSGB qui sont généralement l’oeuvre de Peter Hart de G3SJX. Elles ont l’inconvénient d’être faites sur un matériel prêté par les constructeurs et non acheté au hasard dans le commerce comme chez QST. Par contre je trouve que Peter est plus objectif, plus proche de la réalité du terrain et surtout n’hésite pas à comparer les produits et les marques entre elles (ce que vous ne verrez jamais dans un QST récent).

Maintenant je pense que vous attendez une conclusion… et bien je n’en ferais pas dans l’immédiat. Par contre tout vous paraîtra plus clair quand je rentrerai de ma petite semaine de vacances en famille à Singapour. Je vous raconterai ce que j’ai ramené dans mes valises, et pourquoi j’ai fait tout le cheminement de recherche que je viens de vous relater.

Récepteurs à première FI basse – Partie 2

En fait la première FI basse n’avait pas vraiment été abandonnée. Le constructeur américain Ten-Tec a continué à produire d’excellents postes sur ce schéma, sans couverture générale. Son compatriote Elecraft a produit les K1, KX1 et K2 qui ont remis au goût du jour l’idée qu’un amateur pouvait monter un transceiver en kit avec des performances comparables (voire meilleures) que ceux du commerce. Tout ces équipements avaient un point commun : d’excellentes performances en terme de résistances aux signaux forts proches (close-in dynamic range). L’avénement de la Radio Logicielle (SDR) avec des récepteurs à conversion directe (numérisation sur une FI VLF) et même à conversion numérique directe a encore enfoncé le clou sur le point des performances. Après avoir remporté la bataille de la sensibilité (défaut des premiers récepteurs à conversion directe), celle de la sélectivité (défaut des récepteurs à double conversion) on s’engageait dans celle de l’IPO3 (point d’interception du troisième ordre).

C’est vrai que ces derniers années nos bandes sont parfois encombrées les jours de concours. Les stations utilisant plus d’un kiloWatt et des antennes directives à plus de 3 éléments ne sont pas rares. Il est donc parfois difficile de trouver une place entre deux signaux forts et entendre la station lointaine arrivant S2-S3 autour de big-guns arrivant S9+20dB avec des splatters ou des “key-clicks” sur toute la bande est un calvaire. Ca commençait à faire un peu désordre, les gros matous du DX se tournaient vers le transceiver d’une petite boîte américaine au lieu d’acheter les derniers postes à 10.000$ des trois japonais.

Quel est le problème? Il est d’une part technique : il est plus simple et donc moins coûteux de produire un filtre étroit (disons moins de 3KHz) à une fréquence intermédiaire basse (disons 10MHz) que le même filtre en VHF. Si on regarde les postes de l’époque des FT-1000, les premiers filtres vraiment sélectifs sont sur la deuxième FI (celle à 10MHz). Ce qui veut dire qu’un signal fort à tout le loisir de saturer le premier étage (amplificateur, mélangeur…) et de créer de beaux produits d’intermodulation. Les constructeurs ont donc trouvé la solution d’ajouter le roofing-filter (filtre de toiture) sur la première FI (celle en VHF). Pour les postes haut de gamme, ceux qui sont à plus de 5000$, on a le budget pour faire des filtres étroits (6 pôles minimum) de 15KHz, 6KHz et 3KHz. Faire plus étroit (500Hz ou moins pour la télégraphie) n’est possible techniquement qu’à des coûts bien trop élevé. C’est là où les postes à FI basse brillent : ils peuvent embarquer des filtres 1,8KHz pour la BLU étroite ou 300Hz pour la CW étroite sans devoir casser la tirelire. C’est la raison technico-économique : pour un usage amateur, la down-conversion est plus appropriée. Un autre effet négatif de la up-conversion, c’est que pour produire un oscillateur local en VHF il faut souvent multiplier l’OL principal. Si le circuit est du type PLL il souffre d’un bruit de phase non-négligeable, et le faut d’ajouter un étage mélangeur en plus dégrade encore plus les caractéristiques dit de mélange réciproque (le vrai signal est noyé dans des signaux “fantômes”). Avec une FI basse, on peut même utiliser un DDS à des coûts raisonnables pour produire les différents signaux nécessaires, réduisant encore plus le bruit de phase.

Schéma fonctionnel du récepteur de l'IC-7700 (http://capheda NULL.files NULL.wordpress NULL.com/2011/07/schc3a9ma_ic-7700 NULL.png)La deuxième raison c’est que les revues techniques les plus lues se sont focalisées sur cet aspect là des performances car il est un des plus facile à démontrer à l’utilisateur. Contrairement au problème du mélange réciproque assez pernicieux ou celui aussi grave de la pureté spectrale à l’émission (intermodulations dans les amplis transistorisés à FET basse tension) qui ne gêne pas la station propriétaire de l’équipement mais les autres, les qualités de résistance aux signaux forts d’un poste saute à la figure les jours de concours. En particulier si on lit les bancs d’essais parus dans QST de l’ARRL, tout est fait pour mettre en avant les chiffres d’IMD et d’IPO3 en réception. Les autres mesures sont faites, mais rarement mises en avant comme défauts, et pis, dernièrement les méthodologies de mesures ont été revues pour masquer certains défauts. Quand Icom (ou un autre) met un bon filtre de toiture dans l’IC-7700, ça se voit tout de suite en première page avec un chiffre qui perce le plafond du graphe. par contre qu’il ne soigne pas le bruit de phase de son OL ou la linéarité de son amplificateur final en émission, il faut lire les petites lettres… De même pour la SDR, si le Flex-3000 est reconnu comme un excellent récepteur, son ergonomie réelle, ses problèmes de latence en particulier en télégraphie et la pureté de son signal en émission ne font pas que des heureux.

Pourtant il est tout à fait possible de produire un récepteur à triple changement de fréquence qui soit aussi performant ou mieux. C’est ce qui se fait dans le monde professionnel car la couverture générale est une nécessité. Contrairement aux radioamateurs disposant d’allocations de fréquences figées ou presque, le large panel des professionnels ne permet de savoir par avance pour quelle fréquence construire un équipement. Quand on regarde l’étude paru dans QST du XK2100 offert par Ulrich Rohde DJ2LR (de Rohde & Schwarz) à W1AW, on voit ce qu’un récepteur conçu sans compromis ou presque peu faire. Cornell Drentea de KW7CD au travers de son prototype Star-10 décrit dans QEX l’explique clairement : les solutions sont connues mais coûteuses. Son livre “Modern Communications Receiver Design and Technology (http://www NULL.amazon NULL.com/gp/product/1596933097/ref=as_li_tf_tl?ie=UTF8&tag=leschroniquhe-20&linkCode=as2&camp=217145&creative=399369&creativeASIN=1596933097)” revient plus en détail sur les technologies actuelles pour obtenir les meilleures performances en réception. L’utilisation à profusion du DSP a quelque peu changé la donne mais les contraintes restent les mêmes. Entre autres, l’obtention des meilleures performances en terme de mélange réciproque passe par un oscillateur local fonctionnant dans le haut des UHF ou les micro-ondes (1GHz est assez facile à réaliser) que l’on divise ensuite pour obtenir les signaux requis. La norme aujourd’hui reste le contraire : un OL bas (les DDS sont peu onéreux) que l’on multiplie.

Si la sélectivité sur les signaux peu espacés continue à s’améliorer, les mesures et surtout l’utilité réelle à en tirer seront de plus en plus “limitées par le bruit”. A noter qu’à ce jeu le TS-590s de Kenwood s’en tire plutôt bien malgré un design non optimal (synthèse directe par le DDS mais multiplication pour obtenir l’OL de la première FI du RX2). L’IC-7200 qui a fait le même choix ne peut en dire autant…

Que regarder alors quand on choisi un émetteur-récepteur pour les bandes amateurs ? Pour le savoir, vous devrez attendre demain…

Récepteurs à première FI basse – Partie 1

Schéma en bloc du récepteur du Kenwood TS-590 (http://capheda NULL.files NULL.wordpress NULL.com/2011/07/ts-590_block_diagram NULL.jpg)Oh non, je ne compte pas faire un cours magistral sur la technique de la down-conversion. D’autres l’ont déjà fait bien mieux que moi. Je veux juste ici vous résumer mes dernières lectures et les échanges que j’ai pu avoir sur internet avec quelques OM très pédagogues comme Cornell de KW7CD (concepteur du Star 10) ou Rob de NC0B (Rédacteur d’un classement des performances des transceivers amateurs (http://www NULL.sherweng NULL.com/table NULL.html)).

Tout d’abord, cette architecture de récepteur où la première fréquence intermédiaire est basse (autour de 10MHz) était celle utilisée pendant longtemps dans les postes à double changement de fréquence. Elle permettait de s’absoudre des problèmes rencontrés dans les postes à conversion directe et offre des performances globales de haut niveau. Elle présentait toutefois deux inconvénients majeurs : une couverture générale impossible et un choix de la FI délicat pour conserver une plage de fonctionnement VFO optimale et une réjection d’image satisfaisante (on y reviendra). Les postes d’alors étaient “segmentés” et les plus performants comportaient plusieurs VFO dédié à telle ou telle bande. Sur la plupart des émetteurs-récepteurs QRP en kit actuels, c’est encore l’architecture de choix. Si les postes sont monobandes, le choix de la FI peut se faire sans compromis et on obtient des performances de premier rang pour un coût faible et une simplicité de mise en oeuvre appréciables. Le choix de la FI est primordial. Prenons un exemple : vous voulez recevoir du 14MHz, vous choisissez une FI à 10,7MHz (très courant) et un VFO autour de 3,3MHz (facile à faire). Après mélange, vous allez aussi recevoir la fréquence image de 7,4MHz. Vous mettez en entrée du poste un filtre passe-bande centré sur 14MHz pour ne favoriser que cette fréquence et vous vous estimez satisfait. Le problème c’est que sur 7,4MHz sont présents de nombreux émetteurs de radiodiffusion très très puissants, et votre malheureux filtre même réalisé avec le plus grand soin va faire que les signaux de ces émetteurs couvriront la station portable sur une île du Pacifique que vous essayez de faire sortir du bruit. La réjection des fréquences images d’alors était entre 40 et 60dB pour les meilleurs…

Avec l’avénement des circuits transistorisés (Solid-State) et de la PLL, faire un poste à triple changement de fréquence avec une première FI située dans les VHF (typiquement autour de 40MHz puis dans les années 90, 70MHz), résolvait ce problème. La FI étant haute et le VFO agile sur une large plage, une couverture générale était possible et la réjection des fréquences images excellente (supérieure à 90dB). C’est ce qu’on fait les trois (disons 4 avec JRC) gros constructeurs japonais pendant presque 3 décennies et ce qui a produit d’excellents récepteurs. Comme illustration à cet article, je vous met le schéma fonctionnel du récepteur du TS-590 de Kenwood qui comporte en fait 2 circuits : un avec FI basse et un avec FI haute, cela montre bien la différence entre les deux.

Alors pourquoi cet effet de mode de la down-conversion ces quelques dernières années? Pourquoi le K3 d’Elecraft, le FT-5000DX de Yaesu, le TS-590s de Kenwood ou le T-599 Eagle de Ten-Tec comportent-ils tous un récepteur à première FI basse ? C’est mieux diront les plus pressés. En fait la réponse n’est pas si simple. Les vraies raisons sont autant technico-économiques que purement marketing. Je vous dit tout dans un prochain article à venir bientôt… (ouah… de la sueur, de l’argent, du suspens… mieux qu’à la télé)

Bitx – 17 : et maintenant JT65

J’ai continué mes petits essais pour vérifier que tout fonctionnait bien avec Fldigi (http://www NULL.w1hkj NULL.com/) (en PSK31) et JT65-HF (http://sourceforge NULL.net/projects/jt65-hf/files/). Je compte aussi essayer PSKMail (http://www NULL.pskmail NULL.org/) mais le serveur le plus proche est en Australie et ça risque de rendre difficile une utilisation réelle en situation d’urgence.

Premier appel avec 2W (pour une meilleure linéarité) sur 14,070 MHz et réponse immédiate de YC8AHH. Ok c’est du local pour moi mais en début d’après-midi il ne faut pas rêver faire mieux. Les signaux étaient forts sur mon OCF-Dipole et ça m’a permis de valider que le Bitx gérait bien cette situation aussi. De plus, il y a 95% de chances que ce soit la situation qui prévaudra en cas de besoin : contact avec une station proche (Indonésie, Philippines, Thaïlande, Chine, Inde, Japon…) et transmission d’emails pour rassurer les familles. QSO très courtois (comme toujours avec les YB) et validation des objectifs.

Station entendues en JT65 par XV4Y (http://capheda NULL.files NULL.wordpress NULL.com/2011/07/pskreporter NULL.jpg)Un peu plus tard vers 19h (heure locale), je profite que le petit dort et le plus grand regarde la télé pour faire un essai rapide en JT65. Le but c’était de vérifier que le logiciel tournait et qu’il recevait quelque chose. J’ai été vite fixé : 4 stations étaient entendues dont LU8EX situé à mon antipode ou presque (16000km environ). J’essaye de répondre en hésitant un peu car c’est mon premier QSO avec ce mode et tout se déroule sans anicroche aucune! On échange même nos conditions de trafic : 2W et un OCF-Dipole pour moi et 25W et une Yagi 3 élément pour lui. J’ai du attendre plus d’un an pour réussir un QSO avec l’Argentine en BLU et ça a été du sport, mais là JT65 rend les choses presque dégoûtantes de facilité. J’ai enchaîné avec quelques QSO avec des stations proches qui m’appelait et ensuite c’était l’heure de lire une histoire à Paul…

Deux essais concluants, et en particulier pour LU8EX d’une part je n’étais pas sur la verticale mais sur l’OCF-Dipole qui est bien plus basse, et je pense même que la puissance transmise était inférieure à 1W… JT65 est très performant, certes, mais le Bitx s’avère une fois de plus une architecture bien née! Un dernier mot sur les “modes digitaux” : c’est sympa de faire un QSO avec un équipement qu’on a réalisé soit même et d’essayer de nouveaux modes, mais franchement, rester assis devant l’écran à voir les indicatifs défiler ne me branche plus trop…

BitX – 16 : Essais en WSPR

Ca fait un petit moment que j’avais entrepris de modifier mon Bitx20 version 3 pour l’utiliser sur les modes numériques. La principale raison étant qu’avec 5W en SSB il y a peu de choses à faire ici autour, et que la même puissance en PSK31 est suffisante pour faire de bons DX. Une autre raison c’est qu’en situation d’urgence, une station Bitx et micro-ordinateur portable peut-être facilement installée et alimentée sur un onduleur sans même nécessiter le groupe électrogène. Les modes numériques permettent facilement de mettre en place des système de transmission de messages à caractère d’urgence (type NBEMS) (http://www NULL.arrl NULL.org/nbems) et sont plus adaptés pour envoyer des numéros de téléphone, adresses e-mail, etc qui peuvent être utile pour rassurer les familles au cas où un gros typhon viendrait nous isoler du reste de la planète.

A part disposer d’un VFO stable (merci le Si570) pas de besoins particuliers aux modes numériques par rapport à la BLU. Les seules modifications nécessaires étaient :

  • L’ajout d’un atténuateur sur la partie BF réception car le niveau était trop haut pour l’entrée micro du Dell Mini 9. Afin de pouvoir continuer à utiliser le Bitx en écoute, l’atténuateur est commutable.
  • L’ajout d’un potentiomètre de “gain micro” pour régler finement le niveau de modulation.
  • L’ajout d’un système de commutation émission/réception de type VOX pour remplacer la PTT du micro et ne pas nécessiter d’interface particulière avec le PC. Pour ce dernier circuit je me suis inspiré d’un schéma de KH6TY (http://qrz NULL.com/db/kh6ty) publié dans QST en 2009.

En fait tout était fait depuis plusieurs mois et fonctionnait plutôt bien en réception. Par contre en émission j’étais confronté à un problème de ronflette et de sons indésirables. Rien d’insurmontable, mais le temps libre à y consacrer étant mince, les choses avançait lentement.

Premier problème : mauvaise isolation entre canaux droite et gauche de la carte son du Mini9. Je ne sais pas exactement l’origine du problème en fait. Toujours est-il que je voulais utiliser le canal droit pour envoyer un son constant afin de déclencher le VOX et transmettre le signal BF utile sur le canal gauche. Ca fonctionnait, mais je me retrouvais avec un signal 1000Hz sur ma BF… La solution a été de faire déclencher le VOX sur le signal utile. Ca élimine la possibilité d’utiliser la CW audio, mais finalement d’autres modes sont peut-être aussi pratiques.

Deuxième problème : ronflette présente sur la BF transmise. Là c’était du à une erreur de ma part. J’ai voulu réutiliser une platine potentiomètre déjà présente dans le boîtier du lecteur VCD qui héberge mon transceiver (initialement les potentiomètre de micro pour le karaoké). L’erreur c’est que l’autre potentiomètre est utilisé pour piloter la varicap du filtre BF à MAX293 et que les deux potentiomètres partagent une masse commune! J’aurai pu essayer de découpler, de mettre des inductances, etc… mais le mieux c’était de mettre un potar indépendant pour le gain micro.

Session courte WSPR avec le Bitx20 (http://blog NULL.qscope NULL.org/2011/07/wspr_bitx NULL.jpg)Maintenant tout fonctionne bien, et hier j’ai pu faire mes premiers vrais essais avec WSPR sur 20 mètres. Bien qu’il ait été un peu tôt dans la soirée pour une bonne propagation, les 3W que je faisais cracher au BitX m’ont permis d’être entendu en Norvège, Finland et Australie. Par contre en réception je n’ai été capable d’entendre que des stations australiennes. Peut-être que quelques réglages patients sont nécessaires pour optimiser les performances du Bitx, mais le principal soucis venait du PC portable qui a planté 3 fois sous Windows XP. Après la webcam et la batterie qui ont rendu l’âme c’est le disque SSD qui fait des erreurs et crash la machine, les hauts-parleurs déconnent aussi. Conclusion : pour les situation d’urgence ne comptez pas sur Dell!

La prochaine étape c’est de faire des essais avec Fldigi en PSK31 et aussi en JT65 que je n’ai pas encore eu l’occasion d’essayer.

Balise CW à base de micro-contrôleur Arduino

Ca fait un petit moment que je pensais écrire une suite à l’article de vulgarisation autour de la platine Arduino que j’avais fait pour Radioamateur Magazine. Je ne présente plus le concept Arduino si ce n’est en disant que c’est une plateforme complète (matériel, IDE, librairies…) qui permet de développer simplement et rapidement des circuit autour de micro-contrôleurs Atmel MegaAVR.

Balise CW à partir d'une platine Arduino Nano (http://capheda NULL.files NULL.wordpress NULL.com/2011/06/100_3005 NULL.jpg)Je voulais montrer une application simple de l’usage d’un micro-contrôlleur dans le cadre d’une activité radioamateur. Sans partir dans l’accès à des circuits externes comme un écran LCD qui tout en restant simple alourdissent le code et limite la compréhension pour le débutant, il restait peu de possibilités pratiques : un manipulateur Iambic ou une balise CW. Finalement c’est sur le deuxième projet que je me suis reporté sur le deuxième car j’avais un besoin propre pour des essais de propagation sur 80m et 40m que je veux faire en automne.

En avant-première voici le code (très simple) et une photo du montage. A noter que pour le codage de l’alphabet Morse je me suis inspiré du code fait par Hans G0UPL et Steve G0XAR pour le contrôleur de la balise QRSS (http://www NULL.hanssummers NULL.com/qrsskeyer NULL.html). C’est de loin le plus élégant et le plus efficace que j’ai vu. Une description complète et didactique accompagnée d’un code dûment commenté suivra dans un prochain numéro de Radioamateur Magazine dès que j’aurai eu le temps d’écrire un article au propre…

// Balise CW Arduino
// Vitesse variable par potentiomètre entrée A0, commande transistor pin D12 et LED pin D13
// 29/06/2011 par Yannick DEVOS XV4Y
// Codage de l'alphabet par Hans Summers G0UPL et Stephen Farthing G0XAR

// Définition de l'alphabet sous forme binaire
// 0 = dot, 1 = dash
const int A	=	0b11111001;
const int B	=	0b11101000;
const int C	=	0b11101010;
const int D	=	0b11110100;
const int E	=	0b11111100;
const int F	=	0b11100010;
const int G	=	0b11110110;
const int H	=	0b11100000;
const int I	=	0b11111000;
const int J	=	0b11100111;
const int K	=	0b11110101;
const int L	=	0b11100100;
const int M	=	0b11111011;
const int N	=	0b11111010;
const int O	=	0b11110111;
const int P	=	0b11100110;
const int Q	=	0b11101101;
const int R	=	0b11110010;
const int S	=	0b11110000;
const int T	=	0b11111101;
const int U	=	0b11110001;
const int V	=	0b11100001;
const int W	=	0b11110011;
const int X	=	0b11101001;
const int Y	=	0b11101011;
const int Z	=	0b11101100;
const int _SPC	=       0b11101111;
const int _0	=	0b11011111;
const int _1	=	0b11001111;
const int _2	=	0b11000111;
const int _3	=	0b11000011;
const int _4	=	0b11000001;
const int _5	=	0b11000000;
const int _6	=	0b11010000;
const int _7	=	0b11011000;
const int _8	=	0b11011100;
const int _9	=	0b11011110;
const int _BRK	 =      0b11010010;
const int _WAIT  =	0b10000000;

// Format du message : 1er nombre = longueur, Caractères utilisent les constantes pour une équivalence binaire
const int msg[] = {26, X, V, _4, Y, _BRK, B, _SPC, X, V, _4, Y, _BRK, B, _SPC, _1, _0, W, _SPC, P, S, E, _SPC, R, P, T, _WAIT};

const long intervalle = 60000; // (60 secondes ou 1 minute entre chaque transmission)

// Déclaration et initilisation des variables
byte msgIndex = 1;
byte inc_bit = 8;
byte character = _SPC;
boolean start = false;

int vitesse = 100;

byte key = 0;
byte etat = 0;
long dern_trans = 0;
long maintenant = 0;

void setup()  { 
  // on declare les pattes 12 (transistor) & 13 (LED intégrée) comme sorties
  pinMode(12, OUTPUT);
  pinMode(13, OUTPUT);
} 

void loop()  { 

  msgIndex = 1;

  while (msgIndex < msg[0]+1) {
    vitesse = 50 + round(analogRead(A0)/8);

    character = msg[msgIndex];

    inc_bit = 8;

    if (character == _SPC) {
        delay (9*vitesse); //
        inc_bit = 0;
    }
    if (character == _WAIT) {
        while (maintenant < (dern_trans + intervalle)) {
          maintenant = millis();
          delay (100);
        };
        dern_trans = millis();
        inc_bit = 0;
    }

    while (inc_bit) {

      etat = bitRead(character,inc_bit-1);

      if (start) {
        if (etat)
          key=3;
        else
          key=1;

        while (key) {
          digitalWrite(12, HIGH);
          digitalWrite(13, HIGH);
          delay (vitesse);
          key--;
        }

        digitalWrite(12, LOW);
        digitalWrite(13, LOW);
        delay (vitesse);
      }

      if (!etat && !start) start=true;

      inc_bit--;

    }
    delay (2*vitesse);

    start = false;
    msgIndex++;

  }

}