mercredi 30 mars 2011

SPE5: C'est reparti...

Le moins que l'on puisse dire de la Sagem SPE5 est qu'il s'agit d'une machine robuste bien que bruyante. Robuste à condition toutefois de prendre soin de respecter les consignes d'entretien, et de démontage. J'ai ainsi cru pouvoir me dispenser de démonter le chariot, le perforateur, la corbeille pour enfin extraire le système de traduction et remplacer l'électro-aimant coupé. Mais non, rien à faire, celui-ci ne peut être extrait sans risque pour la fragile mécanique sans respecter toutes les étapes indiquées dans la notice.

Je ne peux que recommander d'opérer sur une grande surface, de disposer de clefs Allen de très très bonne qualité, d'un disque à scier au cas où une vis résisterait - la loi de Murphy est là pour confirmer que ce sera le cas - et de nombreux récipients pour recevoir les différentes pièces au fur et à mesure du démontage. Un appareil photo numérique sera bien utile pour repérer la position de certains éléments.
Il faut compter quatre bonnes heures pour mener à bien cette opération la toute première fois, le temps de comprendre la notice de démontage, de desserrer ces foutues vis six-pans creux, d'extraire chaque sous-ensemble dont en particulier la perforatrice, de réparer l'électro-aimant, de vérifier le bon fonctionnement du mécanisme de libération de chacune des barres de sélection avant remontage, de remonter, et ... de trouver d'où peut bien provenir la pièce qui reste sur la table quand tout est remonté !


Je m'y suis mis à 20h15 pour finir à minuit largement passé mais avec la joie d'avoir une machine de nouveau fonctionnelle. Il me restera à fixer le groupe d'impression pour l'instant juste posé sur les silentblocs, à tendre la courroie, et pourquoi pas, si j'en trouve le temps, à vérifier ses performances à l'aide d'un équipement de test spécialisé.
Je pourrais ensuite installer un interrupteur général, celui-ci étant, dans le cas de cette série de machines, installé sur le coffret de liaison externe.
Et pour la suite... il me reste une SP5R (machine réceptrice donc sans clavier) à redémarrer et surtout à trouver encore un peu de place pour entreposer tous ces équipements.

lundi 28 mars 2011

SPE5: Panne du décodeur mécanique

Le télétype SAGEM SPE5A pour lequel j'ai réalisé dernièrement une alimentation -48V s'est avéré ne pas fonctionner correctement. J'ai donc décidé de jeter un oeil ce soir pour identifier l'origine du problème et voir s'il m'était possible d'y remédier rapidement.

Les symptômes sont les suivants:
1- la sélection Chiffre/Lettre n'est pas fonctionnelle: la corbeille ne se déplace pas,
2- le caractère imprimé ne correspond pas à la touche frappée.

Ces problèmes peuvent avoir pour deux origines: un défaut dans le système de décodage électronique (bascule non fonctionnelle) ou dans le système de traduction mécanique (électro-aimant coupé). La levée de doute est rapide, il suffit d'observer le changement de position des barres de sélection lors de la frappe de deux caractères dont le code est inverse l'un de l'autre, typiquement les caractères 'R' et 'Y'. Dans le cas présent, la barre N°2 reste immobile. La lettre 'Y' est correctement retranscrite, la lettre 'R' ne l'est pas. Ce défaut explique aussi le problème de la sélection Chiffre/Lettre.
Il peut être intéressant d'expliquer ici le mécanisme utilisé par cette machine pour transcrire un code constitué de 5 moments (5 bits en langage moderne) reçus en série et imprimer celui-ci.


Sur le plan mécanique, la tarduction est effectuée par le biais de cinq barres parallèles pouvant prendre deux positions. Un ressort placé sous chaque barre tend à ramener celle-ci sur la gauche en position de repos. En début de cycle, un système mécanique arme l'ensemble des barres en les déplaçant d'un cran sur la droite pour faire verrouiller chacune d'elle en position active par le biais d'un crochet. Chacun des 5 crochets est  commandé par un électroaimant dont l'activation libère la barre associée qui retrouve alors sa position de repos.
Chaque barre est divisée en 32 sections pouvant comporter une encoche ou un plein. Le lecteur attentif l'aura compris, chaque barre encode par sa position finale l'un des cinq moments du code Baudot, et une seule des 32 (2^5) sections verra les cinq barres présenter simultanément une encoche dans le même alignement. Cet alignement permet de sélectionner l'un des 26 leviers de frappe du symbole représenté par ce code, les autres positions étant utilisées pour manœuvrer des fonctions annexes, dont le déplacement de la corbeille Chiffre/Lettre.

Sur le plan électronique, chaque moment (bit) est échantillonné sur la ligne puis stocké dans une bascule électronique, laquelle commande l'électro-aimant associé à barre encodant ce bit.

On comprend alors aisément qu'un défaut dans l'un des cinq électro-aimants puisse générer une erreur de traduction. La vérification de la continuité de ces derniers sur le connecteur de raccordement confirme mes craintes, l'électro-aimant pilotant la seconde barre est coupé. Il me faut alors dégager le système de traduction pour accéder à celui-ci.

Murphy aidant, la coupure n'est pas située sur la connexion la plus accessible, celle qui termine le bobinage, m'amenant à devoir délicatement dégager l'autre connexion. Celle-ci me reste dans les mains, le fil de cuivre étant rompu au niveau de la soudure. Une observation sous la loupe montre des traces de corrosion quelques millimètres après la soudure. Un problème déjà rencontré sur des bobinages en fils fins dont je pense qu'il est provoqué par l'utilisation d'un flux décapant sur le vernis du fil émaillé qui, non neutralisé, fini par corroder le cuivre.
Commence alors un travail de précision effectué sous la loupe visant extraire, à l'aide d'une aiguille très fine, une longueur suffisante du fil du bobinage sans rien abimer d'autre. Un travail facilité, avouons le, par l'espace réservé lors du bobinage pour le passage de fils de raccordement. L'électro-aimant ainsi réparé subit plusieurs séquences de mise sous tension successives avec succès.
Je connais désormais le défaut, et je sais qu'il est possible d'y remédier avec un peu de chance et beaucoup de patience. Ces machines pourront donc encore fonctionner de longues années...
La soirée de demain sera consacrée au démontage/remontage du traducteur puis au test de la machine.

mardi 22 mars 2011

Software: VoIP ou Streaming audio

Pour écouter mes récepteurs à distance, j'ai développé il y a de cela quelques années RxIAX, une application Windows qui permet d'interfacer une carte son avec un serveur VoIP Asterisk via le protocole IAX2. Chaque récepteur est connecté à une carte son pilotée par une instance de cette application. Un numéro d'extension téléphonique est attribué à chacune de ces instances, lesquelles peuvent être configurées pour soit répondre automatiquement sur appel entrant, et donc mettre en communication le correspondant avec le récepteur associé, soit se connecter sur un serveur Asterisk au démarrage, auquel cas il est possible d'inscrire l'instance dans une salle de conférence autorisant ainsi l'écoute depuis plusieurs points.
La configuration mise en place à l'époque, et toujours active, est illustrée sur le synoptique précédent. Outre sa fonction première, l'application RxIAX permet d'enregistrer le flux audio au format MP3 en identifiant et en horodatant chaque segment. Elle permet aussi de télécommander le récepteur associé par le biais de codes DTMF envoyés depuis le clavier du téléphone ou du logiciel VoIP. Bien que parfaitement fonctionnelle, cette plate-forme requiert une infrastructure complexe - dont un serveur Asterisk - et nécessite d'utiliser un équipement d'accès spécifique, un téléphone ou une application VoIP. Elle impose par ailleurs une configuration dédiée de l'équipement de filtrage bien que l'usage du protocole IAX2 (transport UDP et port fixe) simplifie quelque peu cette configuration.

Une alternative que j'avais étudié à l'époque consistait à utiliser une application clef en main dans le domaine de la téléphonie, avec notamment Skype, ou de la diffusion sonore. Les essais effectués à l'époque avec Skype, TeamSpeak puis avec quelques serveurs de 'streaming' ne m'avaient pas convaincus: accès unitaire dans le cas de Skype, qualité de la diffusion avec TeamSpeak et complexité de la mise en oeuvre des
encodeurs avec les applications de streaming Open Source.

Les choses ont bien évolué en quatre ans avec notamment l'apparition de services de diffusion multimédia gratuits tel le service 'justin.tv'. Service gratuit, certes mais posant quelques problèmes de temps de latence sans parler du délai généré l'annonce publicitaire présentée à la connexion. Mes recherches m'ont conduit à tester différents services, différentes applications jusqu'à trouver il y a peu l'application presque idéale quoique commerciale: BroadWave Streaming Audio Server.

Idéale car d'un encombrement minimaliste - tant en mémoire qu'à l'écran - tout en offrant toutes les fonctions attendues: pilotage de plusieurs cartes sons, gestion de plusieurs streams - un par carte son, serveur Web embarqué, enregistrement des flux et fonctionnement autonome. Cerise sur le gâteau, l'éditeur offre la possibilité d'utiliser gratuitement son application à la seule condition que l'usager référence l'éditeur sur son site Web.

La mise en oeuvre est quasi-immédiate, la seule difficulté résidant dans le paramètrage du routeur d'accès. L'application BroadWave Streaming Server coexiste par ailleurs parfaitement avec les autres applications dédiées qui utilisent elles-aussi les mêmes cartes sons: RxIAX, EasyPal ou encore Wx2Img.
Le rêve avec cependant un problème inhérent à la diffusion de flux audio, celui de la latence et de la mise en mémoire cache, problème qui n'existe pas avec un protocole de VoIP comme IAX2. Avec cette application, la mémoire tampon représente entre 12s et 18s de flux audio. Il n'est pas possible de suivre une transmission en temps réel.
Le port TCP/88 est utilisé par défaut pour accéder au serveur de streaming mais il parfaitement possible de reconfigurer celui-ci. Attention toutefois, l'ouverture d'un tel accès peut mettre le système hôte en péril en cas de faille de sécurité ou de bogue exploitable dans le serveur WEB embarqué dans cette application. Ce risque pourra être minimisé en limitant les accès sur le routeur d'entrée aux seules machines distantes autorisée.

samedi 19 mars 2011

RxControl: Version 1.5.6 disponible

Une nouvelle version de mon logiciel de contrôle à distance de récepteur, RxControl, est disponible. Cela faisait deux ans que je ne l'avais pas fait évoluer mais le développement de la seconde version de IRCMon, le système d'acquisition de surveillance IRC m'a conduit à devoir ajouter quelques nouvelles fonctions dans ReceiverCtl, la librairie qui contient toutes les fonctionnalités de gestion. J'ai donc profité de cette occasion pour corriger quelques bogues résiduels mais surtout pour intégrer les fonctions de commande du récepteur Collins HF-2050.


Une évolution fonctionnelle qui n'a pas posé de grandes difficultés une fois le problème de la connection du récepteur résolu. L'interface RS232 du HF2050 utilise en effet une entrée différentielle, le signal de transmission série en provenance du contrôleur devant distribué sur la broche 2 (Receive Data) mais aussi sur la broche 14 (Receive Return). Pour une utilisation conforme à la norme, cette dernière devra être connectée à la masse du signal - sur la broche 7 ou sur la broche 15 adjacente par exemple. Le manuel de ce récepteur n'indique rien à ce propos, et il m'a fallu engager une rétro-analyse du circuit pour remonter au circuit de conversion - un 78LS120 - pour comprendre l'origine du problème.

La version 1.5.6 gère désormais les récepteurs suivants:
- JRC NRD535,
- Thomson CSF TRC241, TRC243, TRC294 et TRC294A,
- Nardeux T.264,
- Racal RA-1792 et RA-6790,
- Rohde et Schwarz EK085,
- Collins HF2050.

Cette application minimaliste permet de piloter jusqu'à huit récepteurs, identiques ou non, et ceci simultanément à partir d'un seul tableau de bord. Il faudra cependant disposer des interfaces de communication ad hoc - liaisons séries directes ou via un adaptateur USB, et d'un processeur suffisamment performant pour gérer tous les évenements. Ces récepteurs pourront être contrôlés indépendamments, ou à partir d'un récepteur maître, toutes les modifications étant alors immédiatement répercutées sur les autres.

mardi 8 mars 2011

IRCMon: Une nouvelle version disponible prochainement

IRC (Internet Relay Chat) reste un support de diffusion et d'échange remarquable, concurrencé mais jamais encore mis à mal par les autres systèmes de messagerie instantanée développés ces dernières années. Plusieurs canaux d'échanges liés à l'écoute sont diffusés sur divers serveurs IRC, dont en particulier le canal #wunclub sur StarChat.
C'est d'ailleurs ce canal qui m'avait incité voilà maintenant plus de 6 ans à développer 'IRCMon', une application Windows, permettant de collecter automatiquement les informations diffusées sur le canal - fréquences et modes de transmission - mais aussi et surtout de piloter un récepteur à partir des données ainsi collectées. Plus besoin d'entrer manuellement la fréquence venant d'être transmise, le logiciel s'en charge automatiquement !
Quelques temps plus tard, je m'étais attaqué à la réalisation d'un composant logiciel, ou Active/X, implémentant l'intégralité du protocole IRC et donc utilisable dans n'importe quelle application Windows. L'objectif était de faire évoluer l'application 'IRCMon' pour lui faire prendre en charge plusieurs canaux simultanément, et ceci en associant à chacun d'eux un récepteur différent. D'autres projets m'ont conduit à mettre en attente ce développement pendant quelques années avant de le redémarrer dernièrement.
Une première version de l'application 'IRCMon2' fonctionne correctement depuis quelques jours, et sera sous peu disponible sur mon site, le temps de peaufiner les règles d’extraction, et si possible, d'écrire un mode d'emploi minimal.

dimanche 6 mars 2011

SPE5: Alimentation -48V

Fabriquée depuis 1949 par la SAGEM, le TELEX mécanique SP5 a été progressivement remplacé, à partir du début des années 60,  par une machine électromécanique, dite 'SPE5'. Au système mécanique de décodage et d'encodage des caractères de l'alphabet Baudot était substitué un système électronique s'appuyant sur un ensemble de portes et de bascules logiques.

Ces portes et bascules étaient constituées par des diodes et des transistors germanium, dits TGN-A et TGN-B, qui furent remplacés au milieu des années 60, lors de la mise sur le marché du modèle SPE5A, par de classiques transistors silicium, des 2N2907. Avec ce nouveau modèle, la tension d'alimentation des lampes d'éclairage et d'alarme passait aussi de 220V à une tension de sécurité de 24V fournie par un transformateur dédié embarqué dans la machine.

L'électronique de toutes ces machines, à quelques exceptions près dont la version SPE5B, était alimentée en -48V par le biais d'un gros coffret assurant le raccordement sur la liaison PTT, le moteur étant directement alimenté en 110 ou 220V via une prise dédiée sur la machine.

Dans les années 70 et 80, nombre de radio-amateurs ont tiré profit de la présence du transformateur 24V dans les machines SPE5A pour rendre celles-ci autonomes et se débarrasser ainsi de l'encombrant coffret de raccordement totalement inutile s'agissant de transmissions radio.
Je me suis à mon tour attaqué ce week-end à la réalisation d'une telle alimentation pour rendre la vie à une machine SPE5A récupérée dernièrement. Cette alimentation fait appel à un doubleur de tension, dit doubleur de Latour, pour générer la tension nécessaire à la régulation à partir du 24V efficace alternatif fourni par le transformateur. La tension de 67V ainsi délivrée (24Veff*1.41*2) est ensuite stabilisée par un classique montage faisant appel à une diode Zener pilotant un transistor de puissance.
J'ai ici fait le choix d'une stabilisation classique de la ligne positive, cette ligne étant connectée à la masse de l'équipement pour assurer une alimentation en tension négative. Un circuit-imprimé maison supporte l'ensemble des composants.
Une cornière permet de fixer la carte à l'arrière de la machine via deux trous taraudés déja présents sur le chassis moulé de la machine mais non utilisés. Le raccordement de la sortie de l'alimentation se fait sur le pont diviseur présent dans la machine, pont qui fournit le -18V nécessaire à l'électronique, le -48V étant lui utilisé par le relais télégraphique d'émission et les électro-aimants de commande.

On notera le faisceau de fils légèrement cuit par la résistance bobinée qui assure la protection de l'entrée -48V. Après mise sous tension, la machine démarre mais s'avère hélas être en panne, le clavier ne produisant pas tous les codes. Je vais devoir réserver quelques jours lors de mes prochains congés pour dépanner cette machine, et pendant que j'y serai, dépanner le lecteur de bande perforée de ma première machine SPE5A qui ne fonctionne plus depuis quelques mois, et remettre en état une machine lectrice SP5R récupérée dans son jus.
J'ai encore en stock une machine SP5 du début des années 50 et son ensemble lecteur/perforateur externe qui attendent d'être redémarrés. Je ne veux pas cependant risquer de casser quelque chose en redémarrant cette encombrante machine mécanique, qui est dans un superbe état, sans vérification préalable complète ce qui nécessite de disposer de la documentation que je n'ai pas.