dimanche 30 juin 2019

TSF et 32 bits : Condensateur variable

Pour ré-utiliser le condensateur variable (CV) de la TSF, une solution simple est de mesurer la fréquence d'un oscillateur ajusté par le CV.
Pour sa simplicité, j'ai choisi un oscillateur réalisé avec un trigger de Schmitt.

Cahier des charges.

Il ne s'agit pas de réaliser un capacimètre ni même un fréquencemètre.
Le but est d'obtenir une valeur stable dépendant de la position de l'indicateur de la TSF, avec une résolution suffisante pour pouvoir distinguer des positions proches de ~1 mm sur l'ensemble de la plage.
La mesure stable doit s'effectuer en un temps court (<1s) pour que le changement de station soit réactif.

Théorie.

Comme je suis radin économe aventureux, je me demande si je peux réaliser un oscillateur avec deux broches gpio du contrôleur.
L'idée est de programmer le gpio d'entrée pour générer une interruption à chaque changement d'état (both-edge) sur gpio-in et d'inverser gpio-out.

Naturellement ça ne fonctionnera que si on vérifie deux premiers points :

- Le code est-il assez rapide ?

Après une rapide recherche sur les maigres documentations de l'OrangePi, je pense que maintenir de façon logicielle (interruptions) un signal de plusieurs dizaines de Khz serait assez hasardeux sur un système linux classique. À la moindre interruption ratée, l'oscillateur va s'arrêter.

Je ne jette pas le OPi, mais je donne pour l'instant la priorité au Wrover.

- Un gpio en entrée peut-il se comporter en trigger de Schmitt ?

La doc de l'ESP32 indique les seuils L(ow) et H(igh) de gpio : 0,25 Vdd et 0,75 Vdd (où Vdd est la tension d'alimentation du circuit, soit 3,3V).
Avec une résistance ajustable et une ligne de code, j'ai constaté que les entrées ne sont PAS des Schmitt : Vers 0,4 Vdd on a une lecture aléatoire / instable de 0 ou 1.
Même avec 3 gpio et des résistances de réaction / contre-réaction je n'arrive pas à un fonctionnement stable.

Place au CD4093.

J'abandonne l'idée d'un oscillateur logiciel. On trouve des circuits comportant de 1 à 6 trigger de Schmitt inverseurs, comme le CD40106 ou le CD4093.
J'utilisais déjà le 4093 dans les années 80, ce circuit  coûte moins de 1€ et ça ne va pas beaucoup compliquer le montage.
Sur l'ESP on peut utiliser des gpio(s) comme compteurs d'impulsions. Avec un des timers je peux obtenir le compte sur une période donnée. C'est gagné ?


Premier essai.

De mon dernier passage à Loches j'ai rapporté un condensateur variable, j'avais ressorti un fer à souder pour y coller deux fils.
Il s'agit comme souvent d'un CV double (2 "cages" étaient nécessaires dans beaucoup de TSF).
J'ai eu la (mauvaise ?) idée de les relier en parallèle, parce qu'ainsi la plage de valeur est plus large et on peut espérer une plus grande résolution de mesure.

Quelques lignes de code et je compte les impulsions sur une période de 1 s. J'affiche la valeur échantillonnée sur le "serial monitor" du Mac.

La valeur "swing" un peu, sans un fréquencemètre  je ne sais pas si ce swing vient de l'oscillateur (le 4093 est alimenté en 3,3V, c'est un peu juste) ou de mon code.
En faisant une moyenne sur des mesures plus courtes (10 mesures de 50 ms par ex.) je devrais pouvoir avoir une valeur stable.

La relation position/fréquence n'est pas linéaire : La fréquence évolue lentement au début (condensateur fermé = forte valeur C = fréquence basse), puis de plus en plus rapidement quand on "ouvre".
C'est  normal car - la moitié - de ce condensateur double est à lames en demi-cercle plein (à droite sur la photo) : Un modèle "Variation Linéaire de la Capacité" (en apprendre plus ici).

Avec un condensateur VLC, la capacité est proportionnelle à la position.
Sur un oscillateur à trigger de Schmitt, la période est proportionnelle à la capacité.
Comme fréquence = 1/période, la fréquence varie suivant une courbe.

Mais comme l'autre moitié de ce condensateur est constituée de lames profilées (visibles en bas à gauche), j'ai surement déformé la courbe en reliant les deux condensateurs en // . On va vérifier ça lors des essais.

Linéariser.

Chaque web-radio sera mémorisée dans l'ESP en regard d'une fréquence de l'oscillateur (avec une tolérance sur une petite zone, on verra ça plus tard).
Si j'utilise directement la valeur mesurée (non linéaire), il sera difficile - d'un côté - de retrouver une "station" enregistrée car un tout petit déplacement du bouton produira un grand déplacement de valeur.
Si je compense avec une division importante, de l'autre côté le réglage deviendra trop "mou".

Donc je vais utiliser K/n (où n est le nombre d'impulsions comptées pendant une durée fixe - ma "pseudo fréquence" -, et K une constante), pour retrouver une valeur proportionnelle à la position de l'indicateur.

J'ai marqué le pignon d'entrainement du CV et relevé grossièrement la "fréquence" (courbe bleue) à 9 positions. À gauche le condensateur est fermé (C élevé -> f faible); Vers la droite on ouvre le condensateur, la fréquence augmente de plus en plus rapidement,


En orange, les valeurs prévues après linéarisation (calculées pour l'instant par Excel).
On va dire que c'est une ligne droite.

Tolérance...

Il faut des valeurs suffisamment "fines" (= une plage de valeurs large) pour pouvoir attribuer une station à un emplacement précis de l'aiguille.
Sur certains gros postes l'aiguille peut avoir une course de 40 cm, donc pour une précision de 1 mm il faudrait une plage d'au moins 400 valeurs discrètes.
Personne ne va mémoriser 400 web-radios sur une seule gamme, je peux donc ajouter une tolérance autour de la valeur mémorisée.
Par ex., si une station est mémorisée pour la valeur 100, elle sera sélectionnée pour la zone 99...101.
Sur notre "gros poste" il restera possible de régler une station en face d'une marque du cadran à 1 mm près, mais l'écart entre deux stations devra être au minimum de 3 mm.

...et œil magique ?

Le nec plus ultra serait d'afficher la précision de la position (la distance de l'aiguille par rapport à la station la plus proche) en réutilisant l'œil magique du poste. Ceci sera peut-être l'objet d'un prochain "POC".


À suivre :

Je passe de la rédaction de ce blog à l'écriture de 'C' pour l'ESP32.
Et puisque j'utilise maintenant un oscillateur externe, je vais également me pencher sur les possibilités de comptage d'impulsions et de timers avec le OrangePi.


samedi 29 juin 2019

TSF et 32 bits : Préambule.

Cela fait longtemps que je n'ai rien écrit (ni soudé), mais après l'installation d'un tableau électrique à Loches, j'ai eu envie de distractions "basse tension".

Même en l'absence d'atelier, je peux avancer sur un des sujets en cours : Redonner de la voix à de vieilles radios à lampes.
J'ai déjà abordé le sujet du dilemme entre restauration et transformation, ce ne sera pas le cas ici.

Aujourd'hui j'explore les options, avec toujours comme but de conserver au maximum le fonctionnement, l'esthétique et les composants d'origine :
  • marche/arrêt; volume;
  • graves/aigus;
  • gammes;
  • œil magique;
  • mais surtout : sélections des stations.
  • et pour un coût humain et matériel minimal.
L'AM étant en voie de disparition, je m'oriente vers une diffusion de web-radios, cela peut être confié à un pico-ordinateur genre Raspberry-Pi ou même à un micro-contrôleur comme l'ESP32.

Le Lego™ de l'électronicien.

Pour pouvoir avancer sans fer à souder ni oscilloscope (quoique... j'ai des amis et la chance, voir plus bas), j'ai acheté un petit ensemble "breadboard + quelques composants" ...


... ainsi qu'un "OrangePi" et un "Wrover" pour tester les deux plateformes.

OrangePi Zero.

OrangePi Zero
Le OrangePi est un ersatz chinois du pico-ordinateur RaspberryPi, plus performant (à modèles comparables) mais moins cher.
Le fonctionnement sous Linux permet l'utilisation des nombreux programmes déjà existants, mais il est plus difficile de faire de la "haute vitesse" sur les interfaces gpio (General Purpose Input/Output).
On verra prochainement pourquoi on va plutôt continuer l'expérimentation avec le Wrover.

ESP32 Wrover.

ESP32 Wrover

La carte "Wrover" comporte un ESP32 : Un micro-contrôleur, un genre de "super-arduino" en 32 bits, avec du wifi, du bluetooth et suffisamment de ressources pour faire de l'internet. Ici on est libre de piloter les interfaces "à fond", mais la programmation est plus ardue. Par ex., il n'y a pas de système de fichiers.

Astuce et grosse ficelle.

Tous les montages que j'ai vu sur internet utilisent des interfaces à base de boutons, claviers ou encodeurs, d'écran lcd ou de leds.
Pas de ça dans mes TSF ! Il est temps d'inventer.

Dans une radio ancienne, la sélection de station s'effectue grâce à un condensateur variable.

Condensateur variable
La rotation est souvent assurée par une ficelle qui entraine l'aiguille de l'indicateur via des galets, des enrouleurs, des ressorts de tension, etc.


Y substituer un autre dispositif (encodeur ou potentiomètre) serait non seulement dommage, mais une galère en terme de mécanique :

  • Un encodeur produit des impulsions (+1, +1...+ ou -1, -1...) dont le décompte doit être mémorisé. Si on tourne le bouton alors que l'appareil est hors-tension, on va perdre la position absolue de l'aiguille et décaler toutes les stations.
  • Un potentiomètre peut fournir une tension absolue - mesurée par un gpio configuré en entrée analogique -. Ça devrait faire l'affaire, mais il faudrait s'assurer que le déplacement de bout-en-bout de l'aiguille couvre une large plage du potentiomètre (10 tours) pour avoir une bonne exploitation.
    Je ne jette pas cette idée, mais le challenge reste pour l'instant d'utiliser le CV.

Donc mon premier "POC" (proof of concept = démonstration de concept) sera d'essayer d'exploiter un condensateur variable - typiquement analogique - avec un micro-contrôleur - plutôt numérique -.

Des amis et de la chance.

Alors que je pensais commencer mes bricolages sans oscilloscope, mon ami Ken me téléphone :

- Tu serais intéressé par la récupération d'un Tektronix que mon entreprise met à la retraite(*) ?

- Laisse moi réfléchir....
Comme ça, c'est un Tektronix 2220 en parfait état ? Avec son capot, sa poche contenant la doc et 3 sondes dans leur sachets d'origine avec tous les accessoires ?
C'est bien parce qu'il va me servir immédiatement que je veux bien t'en débarrasser à titre gratuit, mais tu me l'apportes à domicile.

Tektronix 2220 : 30 ans passés.
C'est vrai ça, je suis trop sympa.
Merci Ken.



(*) Salauds de jeunes scopes en plastique avec leurs lcd couleur, qui chassent les vieux tubes !
C'est gros comme un grille-pain, ça frime avec 4 voies, 50 mesures, des tonnes de mémoire, de l'analyse numérique, ça remplace 6 ou 7 appareils volumineux, ça ... ça ...

Dis, Ken, t'aurais pas aussi un MSO5000 qui traîne ? Je pourrais faire un effort pour t'en débarrasser.


vendredi 8 mars 2019

C'est du propre !

Rien de neuf, mais deux courtes histoires un peu anciennes pour Michel et Moctar.

"Le mieux est l'ennemi du bien".

Je ne tenais pas vraiment ce blog à l'époque, mea culpa pour les photos moches.



J'ai hérité de Michel un générateur "Hameg HM8150" et de Moctar un oscilloscope "Tektronix 2236".

Que ça (re)fonctionne n'est jamais suffisant.
J'aime les objets bien restaurés, un bon nettoyage ne pouvait pas faire de mal. Si ? Si.

Tektronix 2236 : Les écrits restent ?

L'oscilloscope avait une panne (plus de synchro). Je l'ai sauvé en changeant un circuit intégré CA3102E totalement obsolète, que j'ai quand même trouvé à St Quentin Radio.
Ce qui confirme qu'il ne faut pas jeter les vieux composants.


Les plastiques du Tektro - utilisé pendant probablement plus de 20 ans, - étaient bien encrassés. Démontage quasi complet, intérieur, extérieur, contacts, connecteurs, plastiques, etc.


Comme toujours, j'ai mis chaque petite pièce plastique à tremper dans de l'eau tiède additionnée d'un peu de dégraissant industriel.

Et tout de suite des saletés sont remontées à la surface.
Des saletés ? Si seulement...

Parmi les pièces se trouvaient les trois boutons avec la jupe en plastique transparent. Sur le bouton "H", pas de pb.
Mais sur les deux boutons "V", les nombres sont écrits sur la jupe, pas sur la façade. Et ce qui remontait à la surface, c'était le lettrage...

Pour réparer ça, j'ai dû :
- trouver du papier "décalcomanie" transparent (utilisé en modélisme) et le fixateur adéquat.
- recréer le lettrage au plus proche avec Illustrator (merci Yukié).
- imprimer, recommencer car l'encre "pigments" de mon Epson n'était pas compatible.
- coller et protéger avec du vernis.
- remonter les boutons avec une rondelle de calage pour éviter les frottements sur la façade.


Deux jours de boulot.

Hameg HM8150 : Double clic

Le générateur nécessitait le changement d'une résistance ajustable. Facile puisque Michel m'avait indiqué quoi faire, schéma fourni !


Mais j'ai trouvé un autre problème : Quelquefois l'appareil "plantait" (tous les boutons devenant inactifs), et même le débrancher ne changeait rien : Il se rallumait toujours planté.

La solution la plus simple que j'ai trouvé ? Débrancher la pile pendant quelques secondes (appareil éteint).
Comme ça ne fait qu'effacer la ram, ça ressemble bien à un bug logiciel.
J'ai ajouté un bouton à l'arrière qui déconnecte la pile et fait un court-circuit à sa place pour vider le condensateur dans la résistance de 1K : Ç'est rustique mais ça fonctionne.


On n'est jamais à l'abri d'un coup de bol.

J'en ai profité pour remplacer la pile bouton soudée, j'ai mis deux "AA".
Et naturellement,  depuis cette adaptation, plus aucun plantage malgré plusieurs heures d'utilisation.
Je ne sais pas pourquoi, mais je ne vais pas me plaindre.

So far, so good.

Puis j'ai décidé de tout nettoyer "à neuf", dont la façade et les touches en caoutchouc translucide : Eau tiède et savon. J'avais déjà fait ça plusieurs fois sur des claviers souples, sans aucun problème.
Ce type de clavier fonctionne grâce à  une pastille de peinture conductrice au graphite au dos de chaque touche souple, qui fait un contact amorti entre deux pistes de circuit imprimé.

Errare humanum est...

Mais là, au remontage, les touches ne fonctionnent plus ? Il faut appuyer assez fort dessus et certaines sont carrément h.s.
La cause ? Sur ce clavier particulier, la peinture conductrice n'a pas apprécié l'eau.
En nettoyant sans précautions le côté face, j'ai bousillé le côté pile.

... internetum diabolicum

N'ayant pas de peinture conductrice, dans l'impatience j'ai suivi des conseils trouvés sur internet(*) : Coller une pastille d'aluminium pour remplacer la peinture.
J'ai donc collé de l'alu de cuisine sur du double face fin, fait des disques avec un emporte-pièces et collé un disque au dos de chaque touche, sur la pastille noire.


Et ça fonctionne tellement bien que quand on appuie sur certaines touches, le contact métal/métal (sans l'amorti du caoutchouc) crée des parasites (bounce) interprétés comme plusieurs appuis : Ça fait off/on/off.

Et m...
Deux heures de travail à coller des confettis de 2mm pour ça.
Bon. l'appareil est utilisable (faut appuyer vite sur certains boutons), mais je ne peux pas en rester là.
Je vais acheter de la peinture conductrice (ça existe en stylo, justement pour... réparer les claviers !) et restaurer ce générateur que je compte bien pouvoir utiliser encore longtemps.


(*) si c'est sur internet c'est que c'est vrai, non ?




Conclusion :
Si vous suivez sans réfléchir les premiers conseils trouvés sur internet, ne vous étonnez pas des mauvaises surprises.
Surtout si les conseils viennent de ce blog.



dimanche 3 mars 2019

La résistance s'organise

Toujours pas de restauration par faute d'atelier, alors pour ne pas perdre la main, je révise(*) mon code des couleurs.

J'ai récemment récupéré - entre autres -, plus de 30 Kg de composants anciens en vrac dans une caisse, dont un grand nombre de résistances de toutes puissances.
Moins par besoin de ranger, que par curiosité de ce qui se cache dans chaque strate de cette boîte, j'ai gratté la surface. Et quand on gratte... on ne peut plus s'arrêter.

Sur cette photo, j'ai déjà "pioché" sur 1/3 du tas.

J'ai commencé à ranger les résistances à anneaux de couleur. Pourquoi ? On peut lire la valeur d'un coup d'œil, pas besoin de retourner chaque composant dans tous les sens.
Tout le reste va directement dans une autre caisse, à trier plus tard.

ici une résistance de puissance de précision (0,5%), à faible coefficient de température.
Mais aussi des transistors à 82,40 Francs. C'est ça le NOS.


Hormis quelques valeurs bâtardes (3 KΩ ?), les résistances appartiennent toutes à la série "E12". J'ai disposé 7 lignes (7 décades) de 12 casiers (12 valeurs par décade) sur une table, soit 84 valeurs de 1 Ω à 8,2 MΩ : Trop pour placer chaque résistance une par une dans la bonne boîte.

Par chance, les anciens tiroirs ont été vidés un par un et je peux localiser quelques paquets de composants identiques.


Certaines résistances sont encore attachées aux bandes de papier des rouleaux de distribution, ça facilite la "pêche".

Mais beaucoup sont en vrac, j'en attrape délicatement quelques pincées pour les trier sur un plateau.
Premier tri dans 12 casiers intermédiaires à portée de main, selon les couleurs des 2 premiers anneaux.
Quand un des 12 casiers déborde, je le vide sur le plateau et je trie les 7 valeurs distinctes.
Quand un des 84 casier déborde, je range les mêmes modèles (il y'a plusieurs puissances / tailles par valeur) dans des sachets en plastique.


On m'a demandé plusieurs fois : "Tu va utiliser tout ça ?"
Bien sûr que non, mais j'ai déjà dépanné un ami de quelques valeurs dont il avait besoin.
Et c'est bien le but de ce blog : Éviter que des objets finissent à la poubelle s'ils peuvent encore servir.

Quand-même...
Entre ça et le reste de l'inventaire en cours (j'ai dépassé le millier de lampes NOS), j'ai de quoi ouvrir un magasin rétro ou un musée. À suivre ?



(*) Le code des couleurs c'est comme le vélo, ça ne s'oublie pas. Et c'est moins fatiguant.


vendredi 4 janvier 2019

L'œil était dans la tombe.

Et il n'était pas le seul.

À Loches, Jean-Marc était à la recherche d'une lampe pour restaurer une ancienne "TSF" de famille, il a eu mon contact grâce à Joachim.

Plus précisément, il cherchait l' "œil magique" (ici l'article wikipedia ou un autre article ici) de ce poste : Un indicateur lumineux à mi-chemin entre la lampe et le tube cathodique, dont le motif varie en fonction de la puissance de réception.

Alors comme je n'ai pas commencé à installer un nouvel atelier à la maison, je ne peux résister au plaisir de participer, même de loin, à une restauration.

Cartons pleins.

N'ayant encore rencontré aucun de ces tubes - assez recherchés - dans mon début d'inventaire des lampes "NOS"(*), j'ai fouillé dans les tas de lampes en vrac.
Des dizaines de boîtes, des centaines de lampes dont plusieurs où le marquage est effacé. Heureusement, un œil magique se reconnait facilement.
Œil magique ©electrautopsyŒil magique ©electrautopsy

J'en ai trouvé quelques-uns, dont deux exemplaires d'un modèle équivalent à celui recherché.

Donc Jean-Marc est venu avec son poste, et malgré le fait que les condensateurs n'avaient pas été remplacés, on a pris le risque de le brancher pour tester ces deux tubes.

Verdict : Si le second a brillé faiblement - l'alimentation non restaurée en étant peut-être la cause -, le premier était grillé.

Vous avez dit bizarre ?

On en profite pour regarder l'état du poste, et ce n'est pas très clair :

Ce poste RTA CS45 possède un jeu de lampes assez inhabituel, et son schéma semble introuvable.
On trouve des documents avec des listes de lampes différentes, qui ne correspondent pas exactement à celles présentes.

Mais pire : Le poste possède un seul condensateur double (alimentation), mais les deux ont été reliés près de la carcasse ?. Il n'y a visiblement PAS d'autre condensateur sur l'alimentation, ce qui est pourtant le cas sur tous les postes ou schémas que j'ai observés.

mea-culpa : Dans le feu de l'action je n'ai pas pris de photos.
Je suis mono-tâche comme un vieux bon Z80.

Mais même ainsi le poste capte quelques stations, et sans le schéma il est prudent de commencer la restauration en respectant cette configuration.

En continuant à fouiller j'ai trouvé une poignée d'autres lampes du poste, mais malheureusement pas la finale 6AQ5 qui est brûlante au bout de quelques secondes.

Cristal Grandin ©electrautopsy

Parce que les fleurs c'est périssable,

j'vous ai apporté une radio.

Jean-Marc m'a donné une ce qu'il reste d'un poste "Cristal Grandin" (modèle à identifier), sauvé de la déchèterie de Loches.
On peut toujours en récupérer les lampes, le transformateur ou même l'énorme haut-parleur, pour sauver d'autres postes plus "présentables".

Cristal Grandin ©electrautopsy©electrautopsy

Il semble complet, une autre option serait de le refaire fonctionner dans un boîtier transparent, juste pour la curiosité.
Ce châssis rejoint la trentaine d'appareils sur lesquels je vais travailler.

Conclusion temporaire.

La révélation de cette courte histoire ?
Parmi le grand nombre de lampes que je viens de récupérer, celles "en vrac" sont possiblement déjà utilisées, voire H.S.
Même si j'avais un lampemètre, les tester nécessiterait un temps considérable.
Je ne me risquerai donc pas à les proposer à quelqu'un, même si certaines références ne se trouvent pas dans le stock de pourtant plusieurs milliers de boîtes intactes.

Le bon côté ?
Avec pas mal de travail de la part de Jean-Marc, sa radio va retrouver la voix et la "vue".

Mais surtout, j'ai fait la connaissance de quelqu'un sympathique, assez motivé et doué pour se lancer dans une restauration.

Et comme Jean-Marc a des compétences sur le travail "au tour" ou en ébénisterie que je suis loin de posséder, nul doute qu'on se re-croisera à Loches et sur ce blog.

En attendant,

pour Jean Marc, voici déjà quelques informations quelquefois contradictoires, qui pourraient pourtant être utiles :

D'après doctsf et walkingitaly ou encore tsf-radio, la lampe de sortie serait une EL84.
Mais d'après radiomuseum, c'est bien une 6AQ5 (=EL90)

Je pense que les schémas les plus proches seraient Schneider - Atout - 3V ou Schneider - Rhapsodie 3V , la seule différence se situant sur l'entrée P.U.

Enfin, le très bon site http://www.radioman33.com/ , dont la page "brancher-un-poste-a-lampes" permet de se remémorer les quelques règles qu'on ne va pas respecter.



(*) NOS : "New Old Stock" = Pièces détachées ou matériel ancien souvent obsolètes, dont la production a souvent cessé, non utilisés et quelquefois dans leurs emballages d'origine.
Ce terme est notamment employé pour d'anciens composants électroniques, dont les tubes (lampes).

Même lorsqu'un équivalent "moderne" est produit (ex. lampes Russes), le véritable amateur préfèrera l'original dans sa boîte jaunie... et n'osera pas l'utiliser.

Je suis de ceux-là.


mardi 1 janvier 2019

Bonne année 2019 !

Bonne année à mes milliers de lecteurs !

Et oui, vu le nombre de publications vraiment en rapport avec le sujet théorique de ce blog en 2018, j'ai préféré choisir le thème de l'auto-dérision pour 2019.

Le prochain article sera peut-être consacré à la pose d'un tableau électrique, avec l'excuse de restaurer l'usage de mon lave-linge.

Les bonnes résolutions,

c'est bien, mais il faut rester réaliste.

J'espère commencer à installer un nouvel atelier à Loches, mais ce sera du temporaire, pour de petits bricolages.
Poser un fer à souder, un scope.
Déballer quelques outils.
Commencer par réparer le pistolet à dessouder.

Mais le plus probable, c'est que je continue l'inventaire des lampes et quelques résistances :


Et un an, ça va être un peu juste pour vider ne serait-ce que cette caisse.