Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
le form www.elektormagazine.fr
el
nouv
nWatch
un système de développement
au poignet
CN/A audio pour RPi
lecteur audio sur réseau
avec Volumio
www.microchip.com/EUPIC18FK40
Le nom et le logo de Microchip, le logo Microchip, MPLAB et PIC sont des marques déposées de Microchip Technology Incorporated aux États-Unis et dans d’autres pays. Toutes les autres marques commerciales ci-dessus
mentionnées sont respectivement la propriété des sociétés concernées. © 2017 Microchip Technology Inc. Tous droits réservés. DS30010138A. MEC2125Fre05/17
40ème année,
n° 466 – juillet/août 2017
ISSN 0181-7450
Dépôt légal : juin 2017
CPPAP 1113 U 83713
Directeur de la publication : Donatus Akkermans
Fax : (+33) 01.49.19.22.37 Cette conversation est extraite du film de science-fiction Elysium de Neill
Blomkamp, sorti en 2013.
www.elektor.fr | www.elektormagazine.fr
Je me suis souvenue de cette scène en parcourant il y a quelques jours un salon de
Banque ABN AMRO : Paris
robotique. Pratiquement un stand sur deux proposait un « robot semi-humanoïde
IBAN : FR76 1873 9000 0100 2007 9702 603
BIC : ABNAFRPP d’aide à la personne ». Leurs créateurs vantaient les mérites de leur progéniture :
faciliter la vie quotidienne des personnes âgées, accueillir les clients d’un hôtel, vous
Publicité : renseigner dans un lieu public, vous guider dans un musée, vous conseiller dans le
Margriet Debeij choix de vêtements dans un magasin...
Tél. : 02 41/955 09 174
Fax : 02 41/955 09 013 Un robot dans une cabine d’essayage ? Et quoi encore ?
Gsm : (+49) 170 550 539 6 J’ai reculé lorsque l’un de ces engins s’est adressé à moi (très poliment) !
margriet.debeij@eimworld.com
Et vous, êtes-vous prêt à confier la garde de vos enfants à un humanoïde ? Ainsi
DROITS D’AUTEUR : que celle de vos vieux parents ?
© 2017 Elektor International Media B.V.
Voilà de quoi méditer pendant la pause estivale.
Toute reproduction ou représentation intégrale ou
partielle, par quelque procédé que ce soit, des pages
publiées dans la présente publication, faite sans Bonnes vacances à toutes et tous !
l’autorisation de l’éditeur est illicite et constitue une
contrefaçon. Seules sont autorisées, d’une part, les Mariline Thiebaut-Brodier
reproductions strictement réservées à l’usage privé du
copiste et non destinées à une utilisation collective, et,
d’autre part, les analyses et courtes citations justifiées
par le caractère scientifique ou d’information de l’oeuvre
dans laquelle elles sont incorporées (Loi du 11 mars 1957
-art. 40 et 41 et Code Pénal art. 425).
Certains circuits, dispositifs, composants, etc. décrits
dans cette revue peuvent bénéficier de droits propres
aux brevets; la Société éditrice n’accepte aucune
responsabilité du fait de l’absence de mention à ce sujet.
Conformément à l’art. 30 de la Loi sur les Brevets, les Notre équipe
circuits et schémas publiés dans Elektor ne peuvent être Rédactrice en chef : Mariline Thiebaut-Brodier (redaction@elektor.fr)
réalisés que dans des buts privés ou scientifiques et
Rédaction internationale : Thijs Beckers, Jan Buiting, Jens Nickel
non commerciaux. L’utilisation des schémas n’implique
aucune responsabilité de la part de la Société éditrice. Laboratoire : Ton Giesberts, Luc Lemmens,
La Société éditrice n’est pas tenue de renvoyer des Clemens Valens (responsable), Jan Visser
articles qui lui parviennent sans demande de sa part
Coordination : Hedwig Hennekens
et qu’elle n’accepte pas pour publication. Si la Société
éditrice accepte pour publication un article qui lui est Ont coopéré à ce numéro : Patrick Bechler, Yves Georges, Robert Grignard,
envoyé, elle est en droit de l’amender et/ou de le faire Denis Lafourcade, Guy Matt, Jean-Louis Mehren,
amender à ses frais; la Société éditrice est de même en Denis Meyer, Helmut Müller, Kévin Petit, Xavier Pfaff,
droit de traduire et/ou de faire traduire un article et de
Guy Raedersdorf, Alexandre Roy
l’utiliser pour ses autres éditions et activités, contre la
rémunération en usage chez elle. Service de la clientèle : Cindy Tijssen
www.elektormagazine.fr juillet/août 3
ce mois-ci
40e année – nº 466
juillet/août 2017
33 agenda juillet 2017
59 vol tous azimuts
piloté par Clemens Valens
22
68 projet 2.0
corrections, mises à jour et courrier des
lecteurs
79 optocoupleurs
drôle de composant n°31
70
85 Q & R (presque) tout ce que vous avez
toujours voulu savoir sur...
les composants en astronautique carte DSP à FPGA pour
100 Rétronique
oscilloscopes Tektronix 556 et 565
SDR à bande étroite
à deux faisceaux émetteur-récepteur
126 questions d’éthique complètement programmable
qui invitez-vous chez vous ?
Voici une carte de traitement du signal numérique basée sur un FPGA
128 l’e-choppe d’Elektor qui comporte tout le nécessaire pour réaliser le travail en bande de base
des modes traditionnels à bande rétrécie, comme SSB, radiotélégraphie
130 Zenerdoku (CW) et modulation d’amplitude (AM). Elle apporte une solution à de
casse-tête pour elektorniciens nombreuses difficultés et limitations rencontrées avec les plateformes
SDR simples.
en coulisse
29 trucs et astuces
Appareil-photo numérique en guise de
générateur de mire
38 le bus I²C
2e partie : le bus en action
44
44 des circuits vraiment imprimés
imprimante de carte/four à refusion Voltera
V-One
sur la scène : les projets
88 mutation de l’ESP8266
découvrons l’ESP32 avec l’EDI d’Arduino
14 gradateur à deux bornes
94 l’électronique dans l’espace commande de LED, lampes et chauffages
la recherche spatiale pour tous
18 atténuateur HF commutable
99 bruits de labo niveaux de signal précis par atténuation
« le menu, s’il vous plaît ! » réglable
pour Raspberry Pi
essorez-la à fond
80 MicroPython et PyBoard
de la LED qui clignote … au serveur web qui
fait clignoter une LED
88
mutation
espionnez l’éther
www.elektormagazine.fr juillet/août 5
concevoir un circuit imprimé ?
pas si facile !
de l’art de placer des pistes
Même si une approche aussi naïve peut marcher pour des mon- Intégration dans le système
tages simples, de faible puissance et à basse fréquence, c’est La première étape – généralement ignorée – implique d’étu-
une erreur. Les montages simples ont aussi besoin de bons CI. dier comment intégrer la carte dans le système. Quelle forme
Non seulement les bons CI font que le montage fonctionne et lui donner ? Où placer les trous de fixation ? Combien ? Et les
est fiable, mais ils limitent aussi au maximum les problèmes câbles et fils de et vers la carte ? D’où viennent-ils, où vont-
de CEM, ils ont des points de test pour l’assemblage et la ils ? Y a-t-il une hauteur limite ? D’éventuels problèmes de
réparation et ils sont faciles à intégrer dans le montage final. chaleur ? Comment interagit l’utilisateur avec la carte ? Y a-t-il
Parce qu’une carte de CI est un composant à part entière du des câbles à brancher ? À l’avant, à l’arrière, sur un côté ?
système, elle doit être de même qualité que les autres com- Codeur rotatif ou boutons-poussoirs ? Afficheur ? LED ? Des
posants. La conception d’un CI n’est pas destinée à plaire à problèmes potentiels avec le matériau du boîtier ? Oh oui – un
son concepteur ; elle doit plaire à son utilisateur final, quel autre aspect secondaire – l’alimentation électrique ?
qu’il soit (fig. 1). Même si le système se limite à votre montage fixé dans un
Dans ce qui suit, j’utilise des acronymes et du jargon. boîtier, avant de concevoir le CI, choisissez un boîtier adéquat
Référez-vous au Glossaire plus loin dans cet article pour mieux et adaptez la taille et la forme du CI à celui-ci.
comprendre le texte. De plus, malgré sa longueur, cet article À moins d’exceller dans le travail du métal, du bois et du plas-
est loin d’être complet. La conception de CI est tout simple- tique, ou de disposer de machines à commande numérique et
ment un sujet trop vaste pour être traité intégralement ici. de découpe laser, limitez au maximum la partie mécanique.
Pour beaucoup, concevoir un circuit imprimé (CI) n’est qu’un détail ou une tâche
secondaire. Une fois le montage soigneusement testé, ils l’implantent sans trop
réfléchir sur une carte pour le rendre plus facile à déplacer et ne pas avoir de fils qui
se débranchent ou de composants qui tombent. Comme ils ont tort…
Fabrication de la carte
Autre question importante : comment est fabriquée la carte ?
Gravure à la maison ? Êtes-vous à l’aise avec ça ? Sinon, évi-
tez les vias et restez en simple face. Les cartes double-face
exigent un parfait alignement des films du dessus et du des-
sous, et les vias métallisés peuvent demander un gros travail,
surtout s’ils sont nombreux. Ceci dit, beaucoup obtiennent de
très bons résultats à la maison avec des cartes double-face ;
c’est surtout une affaire de savoir-faire et d’expérience.
Vous devriez éviter les plans de masse et autres aplats cuivrés,
car vous n’avez pas de masque de soudure pour éviter les ponts
de soudure. Trouver et couper des courts-circuits presque invi-
sibles n’est pas non plus un travail agréable. Pourquoi ne pas
élargir les pistes pour éviter qu’elles ne soient rongées par le Figure 1. Votre carte peut être réalisée dans une usine comme celle-
liquide de gravure ? Pour éviter les ponts de cuivre, ne mettez pas ci, quelque part très loin de votre point de vue. Donc, pour avoir les
les pistes trop proches les unes des autres. Mettez des pastilles meilleures chances de succès, concevez-la de façon à ce qu’elle puisse
plus grandes si vous n’êtes pas trop bon en perçage (fig. 2). être faite avec le moins d’explications possible.
www.elektormagazine.fr juillet/août 7
de groupage qui combinent votre projet avec ceux d’autres
clients sur une carte de grande dimension sont largement
présents sur l’internet. Comme les prix et délais de livraison
varient beaucoup, comparez plusieurs fournisseurs. Les prix
dépendent surtout de la surface de la carte, de sa classe, du
nombre de couches et du délai de fabrication, et l’ajout d’op-
tions augmentera le prix. Certains services permettent de sup-
primer des options, d’autres non et vous pouvez finir avec des
caractéristiques inutiles pour vous. Les services de groupage
délocalisés semblent attractifs, mais les délais de livraison ne
sont pas toujours respectés et les colis peuvent se perdre.
Certains services proposent un prix par carte incluant le port,
d’autres facturent la préparation et/ou les coûts d’outillage.
Figure 2. Un panneau gravé à domicile avec beaucoup de trous restant à Généralement il n’y a aucune raison de dessiner un CI aussi
percer et de découpes à faire. Est-ce que cela vaut réellement la peine de petit que possible. Il sera moins cher à produire, mais la carte
faire ça vous-même ? sera plus difficile à router, plus compliquée à intégrer et encore
plus à réparer.
Un mot sur le fraisage : quelquefois un fraisage non circu-
Une fraiseuse à CI a des exigences similaires, mais à moins laire est nécessaire pour ajuster une pièce ou pour accéder
que vous ne soyez un très bon graveur, elle a une meilleure à quelque chose. Malheureusement il faudra encore un autre
précision. La densité des pistes peut être supérieure, mais pas outil de fraisage, ce qui augmentera sans doute le prix de la
trop non plus. Si le fraisage est trop profond, des pistes peuvent carte. Certains fabricants n’ajoutent pas de coûts si le foret
disparaître. À l’inverse, si le fraisage n’est pas assez profond, de fraisage est le même que celui utilisé pour le contour de la
des courts-circuits peuvent se créer. Si la carte n’est pas plate, carte. Le fraisage peut ne pas être aussi détaillé et précis que
les deux problèmes peuvent survenir simultanément. N’oubliez souhaité, alors avant de fraiser des formes, vérifiez auprès du
pas non plus que contrairement à la gravure, le fraisage laisse fabricant ce qui est possible ou pas.
le cuivre inutilisé sur la carte. Ceci rend le soudage plus difficile
(là encore, pas de masque de soudure), mais peut aussi créer Placement des composants
des situations dangereuses avec des montages connectés à Les composants ne peuvent pas être mis n’importe où ou n’im-
des hautes tensions (réseau CA) parce que les distances entre porte comment, même quand le circuit vous permet ce luxe
pistes ne sont plus respectées. Ceci peut aussi poser problème virtuel. Pour faciliter le montage, la vérification et la réparation,
pour les montages avec des entrées à haute impédance. On les composants doivent être disposés en lignes et colonnes, et
peut fraiser le cuivre inutilisé, mais cela allonge le temps de orientés uniformément. Cela paraît inutile si vous assemblez
fabrication de la carte. vous-même, mais cela vous facilitera la vie, de même qu’aux
Vous pouvez fraiser manuellement une carte avec un outil de professionnels de l’assemblage/réparation des cartes.
type Dremel ou avec des embouts de fraisage adaptés comme Pour des raisons électriques, les composants doivent – en géné-
ces forets arrondis qu’utilise votre dentiste. Comme lui/elle, ral – être placés aussi proche que possible les uns des autres.
entraînement et habileté sont nécessaires pour obtenir des Bien sûr, il y a bien d’autres critères à prendre en compte ici,
résultats sans effort. comme les chemins de retour de courant, éviter la diaphonie et
Ensuite il y a, bien sûr, la voie professionnelle. Les services autres couplages inductifs ou capacitifs non désirés, etc. Bref,
Métallisé : recouvert avec un matériau Plan : grande surface de cuivre ; nommé plan TMS : Technologie de Montage en Surface, pour
conducteur d’alimentation si connecté à la masse ou à la les composants dont les contacts ne sont pas
Mil : un millième de pouce tension d’alimentation insérés dans des trous
Millimètre : un millième de mètre Pochoir : masque pour appliquer la pâte à Top : couche supérieure de la pile de la carte,
Mire : marque spéciale sur un film, masque, souder sur un CI nommée aussi côté composant
carte, panneau, etc., pour aider l’alignement Push and shove : router une piste en poussant Trace : voir Piste
avec des caméras, pochoirs, machines, entre et écartant les éléments environnants du CI TTT : Technologie à Trou Traversant pour les
eux, etc. pour créer suffisamment d’espace pour la composants dont les contacts sont insérés
OAR : Outer Annular Ring, anneau annulaire nouvelle piste dans des trous
externe Réseau : connexion volontaire entre deux ou Via : trou métallisé connectant des pistes entre
Pastille : élément de CI pour connecter une plusieurs contacts deux ou plusieurs couches différentes
broche Réserve : protection contre la soudure ; voir Via stitching : utilisation de multiples vias pour
Pierre Tombale (effet) : relevage partiel ou Masque de soudure connecter un élément de cuivre sur une
total d’un CMS à deux contacts pendant la Routage : transformation des réseaux en pistes couche à un autre élément sur une autre
refusion Sérigraphie : couche non conductrice couche ; souvent utilisé pour conduire la
Pile : empilage ordonné de couches de symboles graphiques et de texte, chaleur ou sur les cartes haute fréquence
Piste : connexion entre deux ou plusieurs habituellement blanche, nommé aussi
contacts sur un CI impression des composants
www.elektormagazine.fr juillet/août 9
Figure 4. Une sélection de pastilles traversantes disponibles dans Eagle, Figure 5. Pastilles effilées dans Eagle, créées avec le script goutte d’eau
outil répandu de conception de CI. (ULP).
borne. Consultez la fiche technique du composant pour l’em- ce qui rend le soudage difficile. Pour éviter la dissipation de
preinte ou plage d’accueil à utiliser. chaleur, les pastilles peuvent être connectées avec des pistes
Les pastilles traversantes présentent de multiples formes étroites – appelées rayons ou thermiques, d’habitude quatre
(fig. 4). Les pastilles carrées sont souvent employées pour – au cuivre environnant (c’est là que l’anneau interne « Inner
indiquer la broche 1 d’un composant tel un connecteur. Les Annular Ring », IAR, apparaît). Lorsqu’on fait de la soudure à
pastilles octogonales sont répandues, mais les rondes sont refusion (c.-à-d. dans un four), le problème est moindre parce
mieux, car elles maximisent la surface de cuivre (bon pour que toute la carte est chauffée à la même température. Ainsi il
la tenue mécanique comme pour la dissipation thermique), n’y a d’habitude pas de véritable raison d’utiliser les techniques
tout en minimisant la place requise pour respecter les règles de frein thermique pour les composants CMS qui seront soudés
d’espacement. dans un four. Toutefois, l’effet « pierre tombale » – le relevage
Il existe aussi des pastilles effilées ou en goutte d’eau, où partiel ou complet d’un composant CMS pendant la refusion
la pastille se fond progressivement dans la piste connectée – peut survenir quand la masse thermique est très différente
(fig. 5). En plus de donner une touche rétro à la carte, elles des deux côtés d’un petit composant à deux bornes (résistance
procurent des liaisons pastille-piste plus solides. C’est impor- ou condensateur). Un frein thermique règle ce problème. Les
tant pour les cartes qui doivent pouvoir être courbées, comme vias n’ont presque jamais besoin de frein thermique, car, en
les CI souples. Tous les outils de conception de CI ne peuvent général, ils ne sont pas soudés.
pas le faire.
Ensuite il y a le frein thermique (fig. 6). Si un contact d’un Les trous
composant est soudé à une piste très épaisse ou à un aplat de Les pastilles ont souvent des trous dedans – les vias aussi.
cuivre, le cuivre entourant la pastille peut absorber la chaleur, Les trous de fixation peuvent ne pas être métallisés ; les trous
www.elektormagazine.fr juillet/août 11
Marquages et impression de composants
Essayez de mettre des annotations pour tous les contours de
composants et assurez-vous qu’ils demeurent visibles après le
montage. J’aime orienter les annotations dans le même sens
que les composants, en lignes et colonnes (voir aussi figure 3).
Indiquez la broche 1 sur tous les connecteurs, barrettes, et
tous les composants où elle n’est pas clairement identifiable.
Marquez aussi la polarité de tous les composants polarisés
comme les condensateurs et les diodes (fig. 8).
Évitez les marquages sous les composants CMS, en particulier
ceux à deux plots, car cela rend leur assise bancale et peut
conduire à l’effet « pierre tombale ».
Gardez le texte lisible et utilisez des étiquettes pour guider
Figure 8. Pas d’annotations de composants, uniquement le marquage de
l’utilisateur quand c’est utile. Notez que les ouvertures dans le
la broche 1, pistes avec toutes sortes d’angles et vias en goutte d’eau.
Une fois que vous savez ce que vous faites, c’est une pratique répandue masque de soudure sont d’habitude légèrement plus grandes
d’être tolérant avec la bonne pratique. que les pastilles, et que chaque sérigraphie traversant ces
ouvertures est coupée, donc assurez-vous que le texte ne les
chevauche pas. Mettez un texte lisible sur toutes les couches
L’utilisation d’un plan d’alimentation ou d’aplats de cuivre (habi- pour éviter un retournement accidentel d’une couche. Étique-
tuel pour la masse) économisera beaucoup de travail et sera bon tez ou numérotez les couches pour garantir qu’elles seront
du point de vue CEM. Cependant, attention quand vous utilisez empilées dans le bon ordre. Donnez à la carte un nom ou un
plusieurs plans d’alimentation, en particulier proches des bords numéro unique et n’oubliez pas d’indiquer sa version.
de la carte et des trous de fixation où des objets métalliques Si le dessous de la carte peut aussi être sérigraphié, faites-le.
et vis d’assemblage pourraient créer des courts-circuits invo- Les cartes FLTM n’ont pas de sérigraphie en général, mais
lontaires entre les plans. Finissez toujours par une vérification cela ne signifie pas que vous devez oublier le texte et le mar-
des règles électriques (ERC) pour vous assurer que tous les quage de polarité ; vous pouvez aussi écrire sur les couches
courts-circuits et circuits ouverts ont été corrigés. de cuivre. Ainsi, quand c’est possible, placez des marquages
Quand vous utilisez un plan ou un aplat pour un réseau, ne et du texte tout en faisant attention à leur taille pour éviter
routez pas ce réseau, mais laisser l’aplat de cuivre le faire qu’ils ne soient perdus pendant la gravure.
pour vous. Attention aux connexions très fines, comme invo-
lontaires, entre des sections de plan, qui peuvent être rongées Test
et couper la continuité du plan. De tels plans sont inadaptés Prévoyez des points de test accessibles. Si possible faites que
pour la gravure à domicile. Pour empêcher cela, commencez le montage produise des signaux de test utiles. Les broches
avec un espacement large pour les aplats de cuivre et voyez des composants ne doivent pas servir de points de test, car une
si le cuivre s’étale partout. Déplacez les pistes et les vias pour sonde de test appuyée contre une broche peut provisoirement
améliorer l’écoulement du cuivre. Quand vous êtes satisfait de « réparer » un mauvais joint de soudure, feignant une bonne
l’aplat, diminuez l’espacement. connexion, mauvaise le reste du temps. Les vias peuvent être
Notez que les plans ont une influence sur la distribution du utiles pour le test manuel, mais seulement quand ils sont lais-
cuivre de la carte. Quand le cuivre n’est pas réparti réguliè- sés ouverts dans le masque de soudure.
rement, la gravure peut devenir irrégulière, et entraîner une
répartition irrégulière de l’épaisseur du cuivre pouvant courber C’est tout ?
le CI aux températures extrêmes (comme dans les applica- Après la lecture de ce long article, vous pourriez penser que
tions automobiles). vous en savez beaucoup sur la conception des CI, alors qu’en
réalité nous n’avons qu’effleuré le sujet. Nous n’avons pas
Appliquez les règles de conception parlé, pour ne citer que cela, des chemins de retour de cou-
Utilisez la vérification des règles de conception (DRC) et des rant, des plans de masse multiples, de la gestion de la chaleur
règles électriques (ERC) pour vous assurer que tous les élé- pendant le soudage et en fonctionnement, de la conformité
ments du CI les respectent. De bonnes règles de conception avec la CEM, du traitement des signaux haute fréquence, du
aident à éviter que des pistes ne se chevauchent ou passent dessin des empreintes, etc.
trop près des bords de la carte, à trouver des diamètres de La conception de CI est un vaste thème qui combine la chimie,
perçage et espacements incorrects, et bien plus. Utilisez-les ! la physique, l’électronique, la mécanique et l’automatisation. Il
Lorsque vous pensez que la carte est prête, assurez-vous que est plutôt amusant de découvrir que beaucoup d’aspects de la
tous les réseaux sont bien connectés. Ne laissez pas d’avertis- conception de CI n’ont jamais vraiment été étudiés en détail et
sements ni d’erreurs, même s’ils sont acceptables pour vous sont simplement fondés sur du bon sens et des hypothèses. Vous
parce qu’ils pourraient perturber la personne qui héritera du trouverez sur l’internet beaucoup de discussions sur la concep-
projet – ou vous-même lorsque vous le redécouvrirez six mois tion des CI, donc dans le doute, demandez autour de vous.
plus tard. Si vous devez tolérer un avertissement, documen- Remerciements à Malte Fischer pour ses conseils utiles.
tez pourquoi. Si possible changez la règle de conception qui (160397 – version française : Denis Lafourcade)
vous gêne pour le faire disparaître, mais assurez-vous que la
Lien
nouvelle règle est acceptable pour votre application, de même
que pour votre fabricant de carte. [1] www.elektormagazine.fr/160397
Elektor, c'est bien plus qu'un simple magazine. C'est une communauté d'électroniciens, du débutant
au professionnel, désireux d'apprendre, de concevoir et de partager une électronique qui étonne.
Boutique en ligne d'Elektor : la caverne d’Ali Magazine Elektor : six numéros par an
Baba des électroniciens ! 10 % de remise d’électronique inédite (projets, bancs d’essais,
permanente pour les membres GREEN et GOLD. cours, trucs et astuces, actualité…).
www.elektor.fr www.elektormagazine.fr
facebook.com/ElektorFR twitter.com/Elektor
PROJET DU LABO
Caractéristiques
• 2 versions : CA ou CC
Michael A. Shustov (Russie) et • Pas besoin de fil supplémentaire
Andrey M. Shustov (Allemagne) • Pas besoin d’Arduino
Par le passé, les rhéostats (aujourd’hui aussi appelés potentiomètres) étaient connectés en série avec
une charge pour régler l’intensité du courant à travers la charge. Bien que simple, cette technique a
des inconvénients.
tat chauffe, ce qui produit des pertes. Les gradateurs qui pilotent l’intensité
De plus, régler l’intensité du flux lumi- des sources lumineuses sont habituel-
E DIMMER
neux de diodes électroluminescentes lement connectés en parallèle avec l’ali-
(LED) avec un rhéostat est quasiment mentation, ce sont des appareils à trois
impossible, à cause de la caractéristique bornes. Deux bornes sont connectées à
courant-tension non linéaire des LED. La
modulation de largeur d’impulsion (MLI)
est meilleure et plus efficace pour faire Figure 1. Le gradateur est en série
copyright
varier en douceur l’intensité d’appareils avec la/les LED et ne nécessite que deux fils.
K2
Æ connaisseur
1N4148 1N4148
2
expert
L–
4 8
RES VCC 1
6 T1 L+
THR
7
IC1
3
R3
LED
Environ 2 h
DIS OUT 2k2
2 LMC555
TRIG RFP12N10L K3
CV GND 2 V+
C1
5
C3
1 Fer à souder,
1
V– du bon sens
2n2 1n
VDC
160380 - 11
copyright
15 €
l’alimentation tandis que la troisième est pilote le MOSFET de puissance T1 qui de R5 réduira aussi le courant minimal.
connectée à la charge. Ces gradateurs « allume » et « éteint » la charge (LED) Un interrupteur peut être connecté à K1
ne peuvent pas prendre la place d’un suivant le signal MLI. Le signal MLI a une pour éteindre complètement le gradateur.
interrupteur bipolaire, car ils doivent fréquence approximative de 6 kHz, trop
être raccordés à un 3e fil d’alimentation. rapide pour que l’œil humain le perçoive. Gradateur alimenté sur secteur
Notre gradateur à deux bornes lui (fig. 1) Le ratio impulsion/repos ou rapport cycli- (CA)
peut remplacer un interrupteur et être que est ajusté avec le potentiomètre P1. Il est bien sûr possible d’adapter le gra-
connecté en série avec une charge (LED, Les résistances R1 et R2 déterminent les dateur pour l’utiliser avec une source
lampes ou éléments chauffants). Contrai- valeurs minimale et maximale de la lar- alternative comme le 230 V CA du sec-
rement à un interrupteur, le gradateur geur d’impulsion. Jusqu’ici le gradateur teur disponible dans les maisons de nom-
permet d’ajuster le courant de charge est un régulateur shunt à trois bornes breux pays à travers le monde (ça fonc-
de presque 0 à env. 97 % de sa valeur standard. L’astuce pour se débarrasser tionnera aussi avec du 115 V CA). Il faut
maximale. Lorsque le gradateur est réglé d’un bornier, c’est d’alimenter la charge franchir deux obstacles pour cela :
sur son minimum, il circule quand même et le circuit avec la même source. Quand • Trouver un transistor de puissance
un courant de très faible intensité à tra- T1 est bloqué, on charge C2 via R4 et qui résiste à des hautes tensions
vers la charge. LED1. La diode zener D3 limite la tension • Convertir la tension CA en tension
Un inconvénient des gradateurs à deux à 3,6 V. La LED1 sert de témoin de fonc- CC.
ou trois bornes est la consommation tionnement et permet aussi de trouver Le second point nécessite de l’attention.
résiduelle de courant, toutefois elle est plus facilement le gradateur dans le noir. Redresser la tension secteur ne suffit pas,
insignifiante comparée à celle quand la Le transistor T1 peut supporter jusqu’à les grosses charges comme les ampoules
charge est alimentée. 100 V et conduire 12 A, mais pas en à incandescence scintilleront, ce qui rend
Les gradateurs décrits ci-dessous même temps (le circuit imprimé ne sup- le filtrage obligatoire. De plus, la ten-
peuvent être utilisés avec des appareils porte que 2,5 A !). D’après sa feuille sion redressée du secteur vaut environ
d’éclairage domestiques, des thermostats de caractéristiques, il peut dissiper 325 V (163 V pour une tension secteur de
ou encore des éclairages secondaires ou jusqu’à 60 W et il doit être monté sur 115 VCA), ce qui est trop élevé pour des
de secours. un dissipateur adapté quand il doit sup- ampoules domestiques standard (néan-
porter plus de 1 W. R4 détermine la ten- moins, il est possible de monter en série
Gradateur à deux bornes sion d’alimentation maximale, ici 20 V. plusieurs ampoules identiques de tension
alimenté en CC Avec les valeurs données dans le schéma, inférieure). À cause de ces limitations
Le cœur du gradateur (fig. 2) est un bon nous mesurons un courant de repos pratiques, ce qui suit n’est là que pour
vieux temporisateur 555 dans sa ver- de 3,5 mA (c’est-à-dire quand le rapport illustrer nos propos ; nous vous décon-
sion CMOS basse consommation, appe- cyclique est de 0%). C’est un courant seillons de l’utiliser dans la vraie vie.
lée LMC555CN. Il est câblé en géné- suffisant pour que certaines LED s’allu- La figure 3 montre la version 230 V CA
rateur d’impulsions à rapport cyclique ment de façon notoire. Réduire la valeur du gradateur. Le changement le plus
variable, un circuit bien connu, rien de de R2 de 75-100 Ω devrait améliorer la notable est l’ajout du redresseur (D4-
nouveau sous le soleil. La sortie d’IC1 situation. De plus, augmenter la valeur D7) et du filtre d’alimentation constitué
www.elektormagazine.fr juillet/août 15
MAX MIN
LED1
K1
P1 R2 R4 R5
2
330R 15k 15k L–
47k 2W 2W
R1 lin. 1
L+
D3
1k8
C2
LOAD
D1 D2 4u7
BZXC79C3V6
1N4148 1N4148 D4 D5
230VAC
4 8
VCC
1N4007 1N4007
RES
6 K2
THR T1
IC1 R3 1
7 3 C4 C5 C6 V
DIS OUT 100R
2 LMC555 2
TRIG 100u 100u 100u V
BU323Z 350V 350V 350V
CV GND
D6 D7
LINE
5 1
C1 C3
160380 - 12
copyright
Figure 3. Ce circuit gradateur est dangereux et risque de vous tuer. Ne le regardez pas trop longtemps !
de C4, C5 et C6. Nous avons aussi ajouté sible pour l’œil humain. Pour de plus Darlington BU323Z au lieu du MOSFET.
un symbole de risque mortel (tête de grosses charges, il faut augmenter les Ce transistor est conçu pour commuter
mort & tibias) : ce circuit est dangereux ! valeurs de C4 à C6 ; les diminuer pour des charges inductives en 230 V CA et
La capacité de filtrage est réalisée avec de plus petites charges. La taille de ces contient une protection contre les surten-
trois condensateurs séparés, car il est condensateurs n’est pas décisive si la sions. Il peut tenir jusqu’à 150 W (avec
difficile de trouver un gros condensa- charge est un élément chauffant. un dissipateur adapté !). Si vous êtes
teur à un prix abordable. Avec 3× 100 μF En plus des changements visibles du tenté de le remplacer par un modèle plus
(min. 350 V) et une ampoule de 100 W, schéma, il y a aussi quelques modifi- robuste, gardez en tête que les diodes
l’ondulation de la tension de sortie ne cations subtiles. Le transistor T1 est redresseuses D4 à D7 sont conçues pour
dépassera pas 3% (environ). C’est invi- maintenant un transistor de puissance aller jusqu’à 1 A et 3 W.
dans l’e-choppe
ILED = 0,05 А, UT = 3 V, USUP = 325 V. dangereux. Il présente des tensions
Si nous limitons n × ULED à 80% de mortelles et peut vous tuer (ou quelqu’un
USUP, alors n = 104 et R = 1,378 Ω. d’autre) quand il est utilisé sans précau- ª160380-1
La valeur standardisée la plus proche tions adaptées. Ne fabriquez pas ce Circuit imprimé
est 1,5 kΩ. Sa puissance devrait être circuit ! Ne l’utilisez pas non plus (même pour la version CC
supérieure à 3,75 W. La résistance si ce n’est pas vous qui l’avez construit).
www.elektormagazine.fr juillet/août 17
PROJET DE LECTEUR
atténuateur HF
commutable
niveaux de signal précis
par atténuation réglable
Alfred Rosenkränzer (Allemagne)
Si l’on n’a que très rarement affaire à la haute fréquence, il est utile de pouvoir atténuer facilement le niveau
de ces signaux par pas discrets. On peut alors, par exemple, ajuster le niveau de sortie d’un générateur
HF à d’autres valeurs que celles fournies par le réglage du générateur. Un atténuateur est très utile pour le
réglage ou la réparation des récepteurs ainsi que pour les émetteurs. Les atténuateurs professionnels sont
malheureusement très chers, ce qui rend une réalisation personnelle intéressante là où une électronique
coûteuse ne s’impose pas.
www.elektormagazine.fr juillet/août 19
avec une bonne approximation avec
des résistances des séries E. Il faut
donc en tout six inverseurs et (jusqu’à)
6 × 3 × 2 = 36 résistances.
copyright L’atténuation désirée est obtenue en
jouant sur les valeurs des résistances.
Théoriquement, on peut réaliser une
valeur entre 0 dB et l’infini. Dans la pra-
tique, l’atténuation est limitée à 10 dB.
Fig. 2. Configurations de base T et Pi. Les valeurs supérieures sont perturbées
par les effets parasites des composants,
du circuit imprimé et des inverseurs qui
ne sont pas spécialement conçus pour
S1.A S1.B S2.A S2.B S3.A S3.B
les hautes fréquences. La valeur mini-
TP1 R1 R7 R13
TP2 13R7 316R 261R male en pratique est de 1 dB, quoique
R2 R8 R14 des valeurs d’une fraction de dB soient
10R 12R1 26R1
R3 R4 R5 R6 R9 R10 R11 R12 R15 R16 R17 R18 possibles. Si un inverseur est en position
haute, le signal est transmis sans atté-
6810R
1000R
1000R
6810R
8250R
8250R
1470R
1470R
464R
464R
261R
261R
nuation, en position basse, il est atténué.
1 dB copyright 2 dB 4 dB Les valeurs d’atténuation des différents
étages sont indépendantes, car les impé-
dances d’entrée et de sortie sont partout
S4.A S4.B S5.A S5.B S6.A S6.B
les mêmes. Pour mon circuit, j’ai choisi
R19 R25 R31 TP3
les atténuations 1 | 2 | 4 | 8 | 8 | 8 dB,
825R 825R 825R TP4 ce qui permet de régler l’atténuation
R20 R26 R32
56R2 56R2 56R2 totale par pas de 1 dB (environ 10%)
R21 R22 R23 R24 R27 R28 R29 R30 R33 R34 R35 R36 dans le domaine 0 à 31 dB. Ce choix
3160R
3160R
3160R
3160R
3160R
3160R
121R
121R
121R
121R
121R
R12
R15
R16
R17
R18
R21
R22
R23
R24
R27
R28
R29
R30
R33
R34
R35
R36
R11
R3
R4
R5
R6
R9
www.elektormagazine.fr juillet/août 21
PROJET DU LABO
L’offre en lecteurs audio autonomes qui mais pour Elektor nous voulions encore suréchantillonnage (×8). Les caracté-
peuvent être mis sur un réseau est limi- mieux. Nous avons donc décidé de conce- ristiques de ce circuit intégré, fourni en
tée, qui plus est si on souhaite aussi un voir un convertisseur pour le RPi, de la boîtier SSOP (Shrink Small Out-Line pac-
écran tactile. Il y a bien quelques ampli- meilleure qualité possible, et avec des kage) à 28 broches, sont excellentes à
ficateurs de marque, volumineux et au composants irréprochables. tous points de vue : plage dynamique
prix à l’avenant ; en général, ils n’ont pas de 132 dB (9 Veff, mono) et 127 dB (2 Veff,
d’écran tactile pour la commande non Vue d’ensemble stéréo), distorsion de 0,0004%, et sorties
plus. En tout cas, si l’on veut un appareil Les circuits intégrés CN/A de Burr‑Brown en courant symétriques (7,8 mA crête à
compact et portable, ce n’est pas dans (désormais Texas Instruments) restent crête). Il accepte en outre tous les for-
cette voie qu’il faut chercher. sans doute ce qui se fait de mieux, et mats de données connus : standard, jus-
On en est vite réduit à se tourner vers nous les avons déjà utilisés par le passé. tifié à gauche, et – important pour notre
une solution faite maison, et une applica- Nous avons choisi pour ce projet le projet – I²S. L’alimentation de la partie
tion sur la base du Raspberry Pi constitue PCM1794A, un des meilleurs du fabri- numérique du circuit intégré est de 3,3 V,
un bon point de départ. On trouve sur cant ; il s’agit d’un CN/A à 24 bits, qui mais les entrées numériques acceptent
le marché des convertisseurs CN/A de accepte des taux d’échantillonnage de 10 les signaux 5 V. La fiche de caractéris-
bonne qualité pour ce mini-ordinateur, à 200 kHz, et qui comprend un filtre à tiques est disponible sur le site de TI [1].
I/V Stage
DATA
L Autres tensions
Analog Out
LRCK Differential to La tension d’alimentation positive des
RPi3 PCM1794A Single Ended amplis op est fixée à 4,74 V, obtenue à
BCK
/Filter
SCK R partir du 5,2 V via le régulateur linéaire
Analog Out
I/V Stage à très faible bruit IC7, un TPS7A4901. La
valeur de la tension de sortie est fixée
par le diviseur de tension R28/R29 :
PLL
fx6
+5V2 ⎛ R28 ⎞
DAC Vsortie = ⎜ +1⎟ ×1,185V
+3V3 ⎝ R29 ⎠
+7...12VDC Power
Supply
+4V74 I/V Stage
&
- 4V81 Output Filter
La tension de 3,3 V est obtenue via un
copyright régulateur identique, IC9, et le diviseur
de tension R32/R33.
Pour la tension d’alimentation néga-
Figure 1. Schéma de principe du CN/A audio. tive des amplis op, nous avons choisi
un LM27761, un régulateur à décou-
page inverseur à faible bruit. L’inversion
de tension s’effectue par commutation
numérique et 5 V pour la partie analo- Pour l’obtention du 5,2 V, nous avons de condensateurs ; la tension obtenue
gique. Nous pourrions utiliser les tensions choisi le TPS7A4700, un régulateur de est ensuite stabilisée par un régulateur
d’alimentation présentes sur le connec- tension à faible chute : 307 mV pour un linéaire à faible bruit. La valeur de la ten-
teur GPIO du RPi, mais elles sont tel- courant maximal de 1 A. La valeur de la sion est fixée à −4,81 V par le diviseur
lement « polluées » qu’il ne resterait tension de sortie est fixée en reliant cer- de tension R30/R31 :
rien de notre quête du haut de gamme. taines broches à la masse, connectées
Nous avons donc besoin de sources indé- en interne à des résistances ; la tension ⎛ R30 ⎞
Vsortie = − ⎜ +1⎟ ×1,22V
pendantes pour les tensions de 3,3 V régulée minimale est de 1,4 V, égale à ⎝ R31 ⎠
et 5 V ; il est à noter qu’on pourrait alors la valeur de la référence de tension du
alimenter le RPi à partir de la platine circuit. Pour obtenir 5,2 V en sortie, ce Rappelons que ces valeurs inhabituelles
CN/A, mais cela aurait aussi des effets sont les broches 6, 10 et 11 qui sont (±4,5 V est plus courant) ont été calcu-
néfastes sur la qualité finale. L’inconvé- reliées à la masse : lées pour garantir une tension maximale
nient est qu’il faudrait deux connecteurs du signal en sortie, sans déformation,
pour l’alimentation positive, et un troi- de 1 V (0 dB).
sième serait nécessaire pour la tension Vsortie = 1, 4V + 3,2V + 0, 4V + 0,2V = 5,2V L’entrée d’alimentation (via K7) est pro-
négative des amplis op utilisés pour les tégée contre une inversion de polarité par
www.elektormagazine.fr juillet/août 23
+3V3 +3V3 +5V2
L6 IC2, IC3 = LME49720 IC4, IC5 = LME49710
VCC2L
VCC2R
S0 CLK/2
7 5 SCK R22 7 26 7.8mA p-p C1 C9 2n2
CLK FBIN 22R SCK IOUTL-
1 4 BCK R23 6 6n8
S1 ICLK 22R BCK 2
DATA R24 5 25 7.8mA p-p C2 6n8 R17
ICS570BILF 22R DATA IOUTL+
6n8 IC4 6
LRCK R25 4 R8 R10 47R K3
GND 22R LRCK 3
3
360R 1k 360R K1 L
+3V3 1 VCOML
22
6 R2 R9 1
C11
IC1 C21 7
560R
R21 IC2.B 2
5 IC2B 2n2
7x 47k
10uF +5V2
23
1 VCC1
2
3
4
5
6
7
8
MONO
+3V3_RPi +5V_RPi 2 C20 C19 3
CHSL PCM1794A IC3A
3 1 R12
DEM
10u 10u IC3.A 560R
10 2
K5 MUTE 21
1 2 11 VCOMR R3 R11 R13 C15
FMT0
3 4 12 360R 1k 360R
FMT1
5 6 14 18 7.8mA p-p C5 C14 2n2
*RST IOUTR-
7 8 13 6n8
AGND3R
AGND3L
ZERO 2
AGND2
AGND1
9 10 17 7.8mA p-p C6 6n8 R18
1
2
3
4
5
6
7
S1 R19 IOUTR+ 6
11 12 BCK DGND IREF 6n8 R14 R16 IC5 47R K4
BCK H 3
K2 R
270R
13 14 8 20 24 27 19 16 360R 1k 360R
L R20
15 16 6 R4 R15 1
LED1 C16
10k
17 18 7
14
13
12
11
10
9
8
560R
IC3.B 2
19 20 no data 5 IC3B 2n2
21 22
23 24
+5V2 +3V3 +3V3
25 26
27 28 8 1
IN OUT
29 30 C53 C52 5 IC9 R32
31 32
EN C50 copyright
180k
33 34 4u7 4u7 7
TPS7A4901
DNC 10n C49 C48
LRCK 35 36 TEST POINT 2
LRCK FB
37 38 6
NR/SS 1.185V R33
4u7 4u7 +4V74L
39 40 DATA C51 L1
100k
DATA NC GND EPAD +4V74L +4V74L
3 4 9 C30
10n
4u7 C3 C12
K7 >5V7 +5V2 +4V74
8 7
3 PMEG6030EP 100n 100n
R26
1 15 1 8 1 IC2 IC4
IN OUT IN OUT 0R +4V74R C4 C13
2 C58 C57 C56 16 20 C54 C41 C40 5 IC7 R28
L2 4 4
D1 IN OUT EN C38
300k
NC NC GND EPAD
R34 18 100n 100n
1u NC
10n
3 4 9 -4V81L
19 L7 L3
NC
1k
+4V74R +4V74R
TPS7A4700
12 4 -4V81 ACM4520-231-2P-T C32
LED2 0P1V 6P4V2
11 5 R27
0P2V 6P4V1 1 4 C7 C17
10 6 VIN VOUT 0R 4u7
Power 0P4V 3P2V C47 C46 R30
9 8 8 7
0P8V 1P6V 6 IC8 100n 100n
-4V81R IC3 IC5
150k
GND PAD EN
4u7 4u7 7 C8 C18
7 21 C1- C42 L4 4 4
C45 5 –1.22V
VFB
C33 100n 100n
1u 8 LM27761 R31 2u2
3
C1+ CPOUT
4u7
51k
C44 C43
PAD GND -4V81R -4V81R
9 2
4u7 4u7
160198 - 11
la diode Schottky D1, qui n’occasionne cifications I²S originales. Ce signal n’est pourrait croire qu’un signal dont la fré-
que 0,3 V de chute de tension. Le cou- donc pas présent sur le connecteur GPIO, quence d’échantillonnage est de 32 kHz
rant nécessaire dépend de la fréquence et le CN/A doit le produire lui-même. ne peut être reproduit, mais il n’en est
d’échantillonnage, sa valeur est reprise Nous avons pour ce faire ajouté un multi- rien : ça marche très bien.
dans le tableau 2. plicateur à boucle à verrouillage de phase
(PLL), un ICS570BILF (IC6). Ce circuit Un petit souci
Horloge principale intégré dispose d’un tampon sans délai Lors du test de notre CN/A avec des
Pour que la carte CN/A audio fonctionne de propagation, les flancs montants des signaux de 32 ou 24 bits et une fré-
correctement, Raspbian (le système d’ex- signaux d’entrée et de sortie coïncident quence d’échantillonnage entre 32 et
ploitation du RPi) doit être configuré donc parfaitement. 192 kHz, tout fonctionnait parfaitement.
pour un CN/A HiFiBerry. Les signaux I²S Le facteur de multiplication peut être Nous avons cependant rencontré un pro-
(Inter-IC Sound) seront alors disponibles sélectionné entre 0,5 et 32 à l’aide des blème avec des signaux de 16 bits : pas
sur le connecteur d’extension GPIO. Ces entrées à trois états S0 et S1. La plage de signal de sortie ! Pour résumer notre
signaux comprennent un signal d’horloge du signal de sortie va de 10 à 170 MHz. longue investigation : le PCM1794A
continu (SCK) ou horloge bit (BCLK/BCK), Nous avons choisi un facteur de multi- supporte bien les signaux audio de 16
un signal de sélection de mot (WS) ou plication de 6 (S0 et S1 ouvertes), et et 24 bits, mais apparemment pas en
horloge gauche-droite (LRCLK/LRCK), et nous utilisons la sortie CLK 2, qui est mode I²S ; la fiche de caractéristiques
un signal de données série (SD/SDATA). aussi reliée à l’entrée de contre-réaction. n’est pas très claire à ce sujet...
Pour la synchronisation, il faut aussi un Cette configuration offre la plage d’entrée Est-ce que cela signifie que notre lecteur
signal d’horloge principal (master clock), la plus étendue (2,5 à 12,5 MHz) pour n’accepte pas les signaux de 16 bits ?
mais cela n’est pas inclus dans les spé- une plage de sortie de 15 à 75 MHz. On Oui et non... Volumio, du moins la ver-
liste des
composants
www.elektormagazine.fr juillet/août 25
rant de fuite maximal est relativement
élevé, 100 µA. Nous ignorons si ce cou-
rant de fuite peut influencer les réglages
de courant internes du circuit intégré,
nous utilisons donc aussi des conden-
sateurs électrolytiques « ordinaires » :
ESR de 1,06 Ω à 100 kHz, courant de
fuite de 4 µA. On pourra expérimenter
avec divers types de condensateurs, il
y a suffisamment de place sur le circuit
intégré pour cela.
Le filtre de sortie
Les produits de la fréquence d’échantil-
lonnage sont limités par le filtre à suré-
chantillonnage, mais il y a tout de même
des composantes HF présentes en sortie
du CN/A. Pour atténuer ces fréquences,
nous utilisons un filtre de Butterworth
passe-bas du 3e ordre. Les filtres et les
convertisseurs I/V sont imbriqués et bâtis
Figuur 5. Le connecteur GPIO est inséré côté soudure.
autour des amplis op IC2 et IC3. La fré-
quence de coupure est de 64,5 kHz. Une
fréquence de 352,8 kHz, correspondant à
8 fois une fréquence d’échantillonnage de
Tableau 1 : positions de S1 44,1 kHz, est atténuée de plus de 40 dB ;
S1-1 L Désaccentuation 44,1 kHz désactivée pour une fréquence d’échantillonnage de
192 kHz, l’atténuation de l’harmonique 8
S1-2 L Filtre numérique à flanc raide
est supérieure à 80 dB. Le choix de la fré-
S1-3 L Sortie mono
quence de coupure du filtre est toujours
S1-4 L Sortie coupée (mute) un compromis entre une atténuation suf-
S1-5, S1-6 L Mode I2S fisante avec des fréquences d’échantil-
S1-7 H Remise à zéro (reset) désactivée lonnage basses, et la bande passante du
signal audio ; ici, cette bande passante
est tout de même plus de trois fois supé-
rieure au spectre audible.
Les sorties du CN/A sont en courant et
Tableau 2 : courant en fonction de la fréquence d’échantillonnage symétriques, ce qui permettrait l’utilisa-
Fréquence d’échantillonnage Courant (K7) tion d’un filtre externe. Pour notre carte
Pas de données 120 mA audio, les sorties doivent être converties
32 kHz 127,5 mA en tension, et désymétrisées. Les conver-
44,1 kHz 131,7 mA tisseurs I/V sont bâtis autour d’IC2 et
IC3 ; les sorties symétriques d’IC2A/IC2B
48 kHz 133 mA
et IC3A/IC3B sont ensuite désymétrisées
96 kHz 149,5 mA
par IC4 et IC5, qui sont aussi configurés
192 kHz 182,1 mA en filtres passe-bas du 2e ordre. Grâce à
(mesuré avec une alimentation de 8 V, les deux sorties terminées sur 10 kΩ) la combinaison avec les convertisseurs
I/V, nous avons bien finalement des
filtres du 3e ordre (avec une fonction de
transfert de type Butterworth).
Les signaux de sortie sont disponibles
Tableau 3 : distorsion harmonique
sur K1 et K2, via K3 et K4. Les signaux
DHT + bruit
peuvent transiter directement de K3/
Fréquence d’échantillonnage 48 kHz 96 kHz 192 kHz K4 vers K1/K2, ou on peut insérer un
1 kHz B = 22 kHz 0,0008 % 0,0009 % 0,0013 % potentiomètre double comme réglage de
B = 80 kHz 0,0028 % 0,0012 % 0,0014 % volume entre les connecteurs.
7 kHz B = 22 kHz 0,00095 % 0,0011 % 0,0013 % Le circuit intégré CN/A ne permet pas le
réglage du volume. On pourrait utiliser
B = 80 kHz 0,003 % 0,0014 % 0,0016 %
Volumio, mais ce serait au détriment de
DIM
la résolution, et donc de la qualité, ce
50 Hz : 7 kHz = 4:1 0,0014 % 0,002 % 0,0036 %
qui n’est bien entendu pas acceptable.
www.elektormagazine.fr juillet/août 27
dans l’e-choppe
Volumio
Volumio est une distribution Linux à code ouvert (open source) gratuite,
ªréf. 160198-1 :
spécifiquement adaptée à la reproduction musicale. Le logiciel tourne sur de
Circuit imprimé vierge
nombreux appareils, dont les mini-ordinateurs comme le Raspberry Pi. Après
installation, l’appareil cible devient un lecteur audio « sans tête » (headless ªréf. 160198-91 :
Module monté avec écran tactile ;
audiophile music player) ; il faut en effet un autre ordinateur, téléphone ou
les connecteurs doivent être soudés
tablette pour le commander. par l’utilisateur
Ceci est possible grâce à l’interface utilisateur de Volumio, une application web
ªréf. 17631 :
qui tourne sur tout appareil disposant d’un navigateur. L’interface est simple et Raspberry Pi 3, modèle B
intuitive ; elle permet la reproduction de fichiers musicaux. Les communications
entre Volumio et l’application web se font via le réseau local.
Les instructions pour l’installation de Volumio se trouvent sur la page du projet au
labo [2]. Nous avons utilisé la version 1.55 ; la version 2, qui date de décembre
2016, ne supporte pas (encore) l’écran tactile utilisé dans ce projet.
La figure 7 vous montre la commande de Volumio via l’écran tactile (à gauche) et plus haut. La distance entre le connec-
un ordinateur (à droite). teur à 26 broches de l’écran et le circuit
imprimé du CN/A est d’environ 2 mm.
Le résultat final est visible en figures 5
et 6.
Mesures
Nous avons bien entendu soumis notre
CN/A audio à toute une batterie de tests.
Les principaux résultats sont repris aux
tableaux 2 et 3. La position des inter-
rupteurs S1, utilisée pour les mesures,
est résumée dans le tableau 1.
Figure 7. Volumio peut être commandé via l’écran tactile (à gauche), ou un ordinateur
(à droite).
Le courant est proportionnel à la fré-
quence d’échantillonnage, voir tableau 2.
Liens
[1] www.ti.com/lit/ds/symlink/pcm1794a.pdf
[2] www.elektormagazine.fr/labs/audio-dac-for-rpi-networked-audio-player-using-volumio
[3] www.elektormagazine.fr/labs/volume-control-160321-for-raspberry-pi-dac-160198
Vous avez une solution futée pour arranger une bricole… Une façon bien à vous d’utiliser un
composant ou un outil… Vous savez comment résoudre un problème plus facilement ou mieux
qu’avec la solution actuelle… Écrivez-nous – chaque astuce publiée vous rapportera 40 € !
www.elektormagazine.fr juillet/août 29
PROJET DE LECTEUR
BBC micro:bit
pour électroniciens (2)
enregistreur de données et oscilloscope
Burkhard Kainka
GND
3V
Input
micro:bit P2
P1 10k
P0
Fig. 1. Entrée de mesure et sortie du signal. Fig. 2. Un signal carré à 10 Hz. Fig. 3. Le signal filtré.
www.elektormagazine.fr juillet/août 31
ceur représentera alors toujours la pleine
échelle et donnera à l’utilisateur une
vision claire des limites de l’affichage.
La mesure à la figure 4 montre un signal
à 50 Hz avec les parasites typiques que
l’on recueille avec un câble de mesure
non connecté. La mesure dure 30 ms,
car environ 1,5 période sont affichées, ce
qui signifie une fréquence d’échantillon-
nage d’environ 13 kHz avec 400 points de
mesure. Comme la fréquence du signal
MLI a été ajustée à 500 Hz dans ce pro-
Fig. 4. Mesure à fréquence d’échantillonnage Fig. 5. Une dent de scie à 500 Hz. gramme, on peut facilement vérifier
plus élevée. cela avec son propre signal. La figure 5
montre le signal MLI à la sortie d’un
passe-bas de 4,7 kΩ et 100 nF.
Augmentation de la fréquence Mais si l’on souhaite utiliser le traceur,
d’échantillonnage par mise en 500 mesures sont souhaitables. Transmisson sans fil des
cache Cependant il faut savoir que le type int mesures
Si on peut s’affranchir de la durée de la occupe quatre octets dans un système La carte BBC micro:bit est équipée du
transmission série, alors seule la durée à 32 bits. On dispose donc de 400 octets. Bluetooth Low Energy (BLE). On cher-
de la mesure du convertisseur A/N déter- C’est pourquoi nous déclarons char chera en vain une puce spéciale sur la
mine la fréquence d’échantillonnage d[400] qui accaparera 400 octets. Grâce carte, les sections HF sont intégrées au
maximale. On crée donc un tableau de à une division par quatre, les données microcontrôleur. Le circuit nRF51822 de
données, on le remplit avec les mesures, sur dix bits du convertisseur A/N sont Nordic Semiconductor a été développé
et ensuite on le transmet au PC. Mais converties en huit bits, plus économes initialement pour des applications telles
c’est là que commencent les problèmes en place dans la mémoire. que claviers et souris sans fil qui ne néces-
auxquels on n’avait peut-être pas pensé. Désormais seuls 400 octets sont donc sitent pas de longue portée, mais usent
Bien que le contrôleur dispose généreu- sauvegardés et transmis (listage 2). Ne avec parcimonie l’énergie d’une pile. La
sement de RAM, on atteint déjà la limite manquent donc en fait que cent octets micro:bit en tire profit également. On peut
avec un tableau de type int d[100], car pour remplir le traceur. Mais on peut faire alimenter la carte avec une pile de 3 V, et
l’environnement d’exécution (runtime) de de nécessité vertu, et envoyer un en-tête ainsi renoncer au câble USB. Le système
la micro :bit ne laisse plus grand-chose. de zéro octet suivi de 255 octets : le tra- est alors compatible aussi avec des appli-
cations de longue durée avec alimentation
par pile. Les caractéristiques principales
du nRF51822 parlent d’elles-mêmes :
• émetteur-récepteur à 2,4 GHz
• sensibilité de −93 dBm en mode
Bluetooth® Low Energy
• débits de données supportés :
250 kbps, 1 Mbps, 2 Mbps
• puissance d’émission :
−20 à +4 dBm par pas de 4 dB
• puissance d’émission en mode
Whisper : −30 dBm
• réception 13 mA crête, émission
10,5 mA crête (0 dBm)
• réception 9,7 mA crête ; émission
8 mA crête (0 dBm) avec DC/DC
• RSSI (résolution de 1 dB)
• processeur à 32 bits ARM®
Cortex™-M0
• fonctionnement de la mémoire
flash : 275 μA/MHz
• fonctionnement de la RAM :
150 μA/MHz
• Serial Wire Debug (SWD)
Le plus sûr chemin pour trouver un fichier lié à un ◊ 20e congrès international de l’IFAC
article publié est de commencer par repérer les six International Federation of Automatic Control
premiers chiffres de la référence mentionnée en
09 au 14/07 – Toulouse
fin d’article dans le magazine. Prenons par ex. le www.ifac2017.org
« Chargeur de batteries à panneaux solaires » publié
en juillet 2008. Sa référence est 080225-I.
Il suffit maintenant de saisir dans votre navigateur ◊ Salon du véhicule électrique et hybride
l’URL suivant : www.elektormagazine.fr/080225 13 au 16/07 - Val d’Isère
www.salon-vehicule-electrique.com
Vous accéderez automatiquement à la page associée à
cet article avec tous les téléchargements disponibles. Un événement oublié ?
Vous organisez une conférence, un salon… ou bien vous participez à un séminaire ou
La rédaction à votre service. tout autre événement qui aurait sa place ici, partagez cette information avec tous
les lecteurs. Envoyez-nous tous les détails à redaction@elektor.fr.
www.elektormagazine.fr juillet/août 33
ENABLED 1 où il faut remplacer le 1 par
Listage 3. Envoi et réception de datagrammes.
un 0. BLE sera alors désactivé à la pro-
chaine compilation et vous pourrez uti- //Radio Data
liser la version simplifiée MicroBitRadio. #include "MicroBit.h"
Le programme du listage 3 envoie MicroBit uBit;
et reçoit des datagrammes avec des
mesures. Émetteur et récepteur peuvent
donc utiliser le même programme pour void onData(MicroBitEvent e)
s’échanger des données. L’émetteur {
exécute une mesure sur P1 et envoie le ManagedString s = uBit.radio.datagram.recv();
résultat en mV. Le récepteur retransmet uBit.serial.send (s);
par USB les données reçues. Pas de chan- uBit.serial.send (" \r\n");
gement côté PC, le traceur série peut être }
utilisé. Un résultat de mesure est donné
à la figure 7. L’émetteur était alimenté int main()
par pile et se trouvait à 3 m du récep- {
teur. La liaison fonctionne jusqu’à 10 m. uBit.init();
Un condensateur électrolytique de 10 µF uBit.messageBus.listen(MICROBIT_ID_RADIO, MICROBIT_RADIO_EVT_
était connecté à l’entrée analogique P1. DATAGRAM, onData);
Celui-ci s’est lentement chargé par la uBit.radio.enable();
résistance de rappel de 10 MΩ de la char output[16];
carte. On observe des différences par while (1) {
rapport aux courbes de charge usuelles, int u = 3300 * uBit.io.P1.getAnalogValue()/ 1023;
car ce condensateur n’a plus été utilisé itoa (u, output);
depuis longtemps. Dans un tel cas, un uBit.radio.datagram.send(output);
faible courant de fuite circule d’abord, qui uBit.sleep(100);
diminue progressivement. Dans la partie }
droite du diagramme, la tension mesurée }
reste encore nettement inférieure à 1 V
et ne croît que lentement. Liens [4] https://lancaster-university.github.
io/microbit-docs/ubit
[1] www.elektormagazine.fr/160273
Mini-oscilloscope
[5] B. Kainka,
avec afficheur à LED [2] www.elektormagazine.fr/160392
BBC micro:bit Tests Tricks Secrets
Un oscilloscope très simple, c’est toujours [3] https://developer.mbed.org/
Code, CreateSpace 2016
mieux que pas d’oscilloscope du tout,
et parfois il est plus important que l’ap-
pareil soit petit, autonome et pratique.
Listage 4. Utilisation de l’affichage à LED.
Les mesures sont affichées sous forme
graphique sur l’afficheur à 5 × 5 LED //LED-Scope
(listage 4). Il est parfaitement exploi- #include "MicroBit.h"
table même si on est l’heureux posses- MicroBit uBit;
seur d’un appareil plus puissant. C’est int main()
incroyable tout ce qu’on peut observer {
avec un tel oscilloscope. int y;
Le mini-oscilloscope utilise à nouveau le uBit.init();
port 1 comme entrée analogique et en
uBit.io.P0.setAnalogValue(512);
plus le port 0 comme sortie MLI. Avec
uBit.io.P0.setAnalogPeriodUs(500);
une période de 500 µs, on obtient un
uBit.display.enable();
signal de sortie de fréquence 2 kHz. Une
connexion directe à l’entrée de mesure MicroBitImage image(5,5);
montre les limites du convertisseur A/N while (1) {
(fig. 8). La période d’échantillonnage est for(int x = 0; x < 5; x++){
clairement trop grande pour afficher les y = 4- (uBit.io.P1.getAnalogValue()/205);
flancs raides du signal MLI. La fréquence image.setPixelValue(x,y,255);
de coupure de notre simple oscilloscope }
est ainsi de l’ordre de 10 kHz. Cela ne uBit.display.print(image);
suffit pas pour un labo HF, mais ça le sera uBit.sleep(500);
pour bon nombre de mesures simples ou image.clear();
d’expériences.
}
(160392 – version française : Xavier Pfaff)
}
simulateur de
murmure de la mer
un doux bruit
pour vous aider à vous endormir
Sunil Malekar et
Clemens Valens (labo d’Elektor)
Æ débutant
connaisseur
expert
1 h env.
Vous pourriez penser que pour produire favori toutes les huit semaines est notre Fer à souder,
un magazine tel qu’Elektor, il suffit de super-planificatrice multifonctions, petit tournevis,
quelques rédacteurs pour écrire des une héroïne méconnue : Hedwig. Bien lit
articles et d’un ou deux graphistes pour qu’elle ne soit pas une spécialiste de
créer de belles illustrations. Ce n’est l’électronique (« Comment s’appelle
qu’en partie vrai. L’une des principales ce truc bleu ? Un bidule capacitif ? »), 15 € env.
raisons – peut-être la seule – pour Hedwig a un circuit fétiche : le générateur
laquelle vous pouvez lire votre magazine de bruit de la mer. Donc, Hedwig, celui-ci
www.elektormagazine.fr juillet/août 35
R4 +5V
C9
68k 10u
R3 P1
50V
100k C4 R8 R13
R5 P4
D1 D2 500k 2M2
1k2
47u
10k
10 50V
8 6 1M C10 1 IC3
IC2.C R11 2 3 6
9 R6 7 C8 R12 C11
D3 IC2.B 8
1 5
3x 5 R9 1u IC2.A 100k LM386
1M
1N4148 50V
10k
3 10u 2 C13 K2
220u
50V
100k
P2 4 50V
T3 7 47n
R10
R7 R14
500k 100k IC2 = LM324 C12
Speaker
10R
Volume
2k2
P3 P5
OUT
500k BC547C 10k 10u
50V
+5V +5V
+5V
copyright R2 +5V
10k
8
K1
R1 C2 2 +V 7
1 C+ OSC
+5V 68k 4 C5
2 C7 C3 1 IC1 5
D– T1 * T2 10n IC2 FC OUT –5V
3 C1
D+ 11 100u
4 MAX660 6 C6
220u 100n 50V C– LV
4 50V
GND GND
1u
50V 100u
2N3904 3
50V
USB
–5V
140097 - 11
–5V
www.elektormagazine.fr juillet/août 37
le bus I²C
2e partie : le bus en action
Le bus bifilaire I²C, fort apprécié, est parfait pour les
expérimentations et les applications sur Raspberry Pi
et Arduino.
Josef Möllers
SDA
SCL
S B1 B2 BN P
Raspberry Pi, BeagleBone, Arduino, Genuino, ATmega, PIC, du RPi. En particulier, il faut s’assurer qu’un esclave I2C ne
presque tous les PC : à peu près tout ce qu’on trouve aujourd’hui possède pas de résistances de rappel vers le 5 V. Au besoin,
comme outil de calcul sur la paillasse des labos ou des faiseurs il faut les supprimer, elles n’ont de toute façon aucune raison
est équipé d’un ou plusieurs ports I2C. À l’aide d’un capteur de d’être.
température LM75, nous décrivons ici l’utilisation des interfaces Grâce à un environnement confortable, le RPi se prête bien à
I2C du Raspberry Pi, de l’ATmega et de l’Arduino en mode maître la prise en main de nouveaux esclaves, jusqu’alors inconnus.
et, quand c’est possible, en mode esclave. La figure 1 montre le raccordement au RPi d’un LM75 installé
sur une plaque d’essai.
Raspberry Pi
Le Raspberry Pi dispose de deux bus I2C physiques, mais Mode maître
habituellement un seul est utilisable directement. Les Pour pouvoir utiliser le bus I2C du RPi sous Raspbian, il faut
résistances de rappel vers 3,3 V sont déjà présentes et commencer par charger deux pilotes additionnels. Pour cela,
actives en permanence sur le RPi. Les signaux SDA et SCL on lance raspi-config et on sélectionne dans la rubrique
sont présents sur les broches 3 (SDA) et 5 (SCL) du connecteur Advanced Options la sous-rubrique I2C pour activer l’interface
GPIO, opportunément tout près des 3,3 V (broche 1), 5 V et charger les modules du noyau. Autre méthode, on ajoute
(broche 2) et masse (broche 6). Ces broches appartiennent avec l’éditeur de texte les lignes :
au bus I2C 1. On peut donc installer une mini-carte d’extension
pour un capteur de température ou de position, ou bien une i2c-dev
horloge en temps réel, en occupant un minimum de place. i2c-bcm2708
Attention : il est impératif que la tension sur une broche du au fichier /etc/modules.
RPi ne dépasse pas 3,3 V, lui appliquer 5 V peut conduire
à la destruction du RPi ! C’est pourquoi on doit contrôler Après un réamorçage, les deux pilotes (ainsi que d’autres pilotes
soigneusement tout circuit avant de le connecter aux broches éventuellement nécessaires) sont chargés et les liens vers les
Ensuite on sélectionne l’adresse de l’esclave par un appel à Figure 2. i2cdetect découvre le LM75 à l’adresse 48.
www.elektormagazine.fr juillet/août 39
w = bus.read_word_data(address, 0)
print format(w, ‘04x’)
ATmega
Les microcontrôleurs ATmega d’Atmel disposent d’un contrôleur
i2c-1, s’il existe un esclave à l’adresse 0x48 ou si l’échange I2C intégré qui gère le mode standard (100 kHz) ainsi que
de données a réussi. le mode rapide (400 kHz) et qui peut être utilisé en mode
maître, esclave ou combiné. Les ATmega324PB et ATmega328PB
Pour programmer le bus I2C en Python, il faut avoir installé possèdent même deux bus I2C. Dans les exemples suivants,
le paquet Raspbian python-smbus : j’utilise un ATmega88 enfiché sur la platine d’essai à côté du
capteur de température (fig. 3).
sudo apt-get install python-smbus Ici, le mieux est d’utiliser la bibliothèque i2cmaster de Peter
Fleury [1], mais en notant que cette bibliothèque n’active
On peut alors lire la température mesurée par le LM75 : pas les résistances internes de rappel vers le haut. Il faut
donc fournir ces résistances soi-même. Elles apparaissent en
#! /usr/bin/python haut de la figure 3, au niveau de la ligne d’alimentation 5 V.
import smbus La bibliothèque configure le port I2C dans le mode standard
import time (100 kHz). L’accès au capteur LM75 prend alors la forme du
listage 1.
bus = smbus.SMBus(1) Avec la bibliothèque lcdlibrary du même auteur, on peut
address = 0x48 réaliser un thermomètre numérique rien qu’en ajoutant un
afficheur à cristaux liquides. On peut aussi utiliser une carte
d’interface I2C (qui embarque le plus souvent un PCF8574) ou
Listage 1. Boucle principale de lecture du capteur bien directement un afficheur avec une interface I2C intégrée.
LM75. Le contrôleur I2C intégré de la série ATmega n’est pas seulement
# include <i2cmaster.h> capable de fonctionner en mode maître pour gérer des esclaves,
il peut aussi travailler en mode esclave, sous le contrôle d’un
# define LM75 (0x48 << 1) maître. Il peut être maître pour communiquer avec un LM75,
// see datasheet puis esclave pour être lu par un RPi. Utiliser l’ATmega comme
int esclave peut être intéressant dans le cas où celui-ci acquiert
main(void) des données sur ses broches d’entrées-sorties et les soumet
{ à un prétraitement avant de les faire suivre à un RPi.
unsigned char val[2]; Mais ce mode de fonctionnement est plus complexe et en
interaction plus étroite avec le reste du logiciel. La bibliothèque
i2c_init(); disponible en [2] est un bon point de départ puisqu’elle permet
// initialisation I2C d’utiliser le contrôleur I2C des ATmega en esclave.
Le déroulement décrit ci-dessous suit les états décrits dans les
i2c_start(LM75 | I2C_WRITE); feuilles de caractéristiques d’Atmel. Les tableaux correspondants
// addressing to write se trouvent dans chaque feuille de caractéristiques d’Atmel,
i2c_write(0x00); ainsi qu’au chapitre 22.7 du manuel de l’ATmega48/88/168.
// temperature register Pour une meilleure efficacité, l’exécution du code est pilotée par
i2c_rep_start(LM75 | I2C_READ); interruptions. L’unité de contrôle I2C provoque une interruption
// addressing to read dans les conditions suivantes :
val[0] = i2c_read();
// degrees Celsius • après l’émission d’une START condition ou d’une Repeated
val[1] = i2c_read(); Start condition,
// tenth part bit • après l’émission de l’adresse et du bit de lecture/écriture,
i2c_stop(); • après l’envoi d’un octet de données,
// ready • quand l’ATmega a perdu l’arbitrage (lorsqu’il se produit
for(;;); une collision lors de l’envoi d’une START condition ou de
} l’octet d’adresse ou du bit de lecture/écriture),
• quand l’ATmega a reconnu une STOP condition alors qu’il a
ISR(TWI_vect)
Comme les quatre premières {
conditions concernent le mode maître, /*
nous ne nous intéresserons ici qu’aux * These variables need to be preserved across interrupts
quatre dernières. */
L’unité de contrôle I 2 C doit être static unsigned char i2c_idx, /* Index into twi_msg[] */
initialisée avec l’adresse d’esclave i2c_tosend; /* Number of bytes to send */
désirée. On peut ensuite l’activer et
commencer le travail : switch (TWSR & 0xf8)
{
TWAR = (I2C_Slave_Addr << 1); ...
TWCR = _BM(TWEA) | _BM(TWEN) | /*
_BM(TWIE); * RECEIVE Code
* See Table 19-4. Status Codes for Slave Receiver Mode
Il n’y a pas lieu de régler la vitesse * [Page 229]
en mode esclave, étant donné qu’elle */
est imposée par le maître. case 0x60:
Si une interruption se présente, il faut /*
en déterminer la raison. Pour cela, on * Own SLA+W has been received; ACK has been returned
lit le registre d’état TWSR et on exploite * TWDR: No TWDR action
les cinq bits de poids fort. * STA=X STO=0 TWINT=1 TWEA=1
Le listage 2 présente une partie de * Data byte will be received and ACK will be returned
la routine de service de l’interruption */
(ISR) pour l’adressage comme TWCR = (TWCR & ~_BM(TWSTO)) | (_BM(TWINT) | _BM(TWEA));
récepteur, comme émetteur, ainsi i2c_idx = 0;
que pour la STOP condition. break;
Les descriptions et les tableaux des …
feuilles de caractéristiques ATmega case 0xA0:
sont très complets, aussi bien pour /*
l’explication des codes d’état que pour * A STOP condition or repeated START condition has been
les réponses requises du programme * received while still addressed as slave
et les actions matérielles qu’elles * TWDR: No action
provoquent. * TWA=0 STO=0 TWINT=1 TWEA=1
* Switched to the not addressed Slave mode;
Arduino * own SLA will be recognized;
Comme beaucoup de cartes Arduino * GCA will be recognized if TWGCE = "1"
sont basées sur des microcontrôleurs */
de la famille ATmega, toutes les TWCR = (TWCR & ~(_BM(TWSTA) | _BM(TWSTO))) | (_BM(TWINT) | _BM(TWEA));
explications ci-dessus restent en break;
principe valables. Toutefois l’Arduino …
bénéficie d’une bibliothèque souvent case 0xA8:
utilisée et très pratique du nom de /* Own SLA+R has been received; ACK has been returned
Wire. * TWDR: Load data byte
Pour l’Arduino, le raccordement */
est aussi simple que pour le RPi /*
(fig. 4). Selon le type (ou le clone) * The address (register number) has been received,
d’Arduino, il faut prendre garde à ce * Start sending payload
que les broches d’un Arduino alimenté */
en 3,3 V ne soient jamais soumises TWDR = 0x42;
à une tension de 5 V. Donc, mesurez break;
d’abord, connectez ensuite et, le cas }
échéant, supprimez les résistances }
de rappel vers le haut de l’esclave !
www.elektormagazine.fr juillet/août 41
par initialiser la bibliothèque, c’est-à-dire le port I2C :
#include <Wire.h>
void setup() {
Wire.begin();
}
digitalWrite(SDA, 0);
digitalWrite(SCL, 0);
void receive(int n) {
while (n--) {
uint8_t c = Wire.read();
// traitement de c
}
}
www.elektormagazine.fr juillet/août 43
des circuits
vraiment imprimés
imprimante de carte/four à refusion Voltera V-One
Avant, quand on voulait graver soi-même son circuit imprimé, c’était une débauche de produits chimiques.
Il fallait d’abord transférer le dessin du circuit sur un film transparent puis sur la carte par une technique
photographique : insolation-développement-gravure. Et la gravure du cuivre, toujours chimique, était
synonyme de taches et de mauvaises odeurs. Ça pourrait bien changer : la Voltera V-One imprime les pistes,
applique la pâte à souder et peut même souder les composants selon un procédé par refusion.
Tous ces produits chimiques ont fini par détourner de nom- (Printed Circuit Boards ou PCB), on aurait mieux fait de par-
breux concepteurs de la réalisation des cartes de leurs pro- ler de cartes à circuit gravé (Etched Circuit Boards ou ECB).
totypes. Les manipulations fastidieuses commençaient avec Avec son imprimante V-One, il se pourrait bien que la startup
le typon : il fallait déterminer les durées d’exposition et de canadienne Voltera révolutionne la fabrication des circuits impri-
développement de façon empirique. L’idée était de trouver le més et conduise bien plus d’électroniciens à réaliser eux-mêmes
bon compromis entre l’opacité du noir (pistes de cuivre) et la leurs cartes. Une technique en phase avec le 21e siècle, car la
transparence du reste de la surface. Plus le noir était opaque, V-One ne se contente pas d’imprimer les pistes, elle applique
plus les surfaces censées rester transparentes viraient au gris aussi la pâte à souder et peut souder par refusion les compo-
et le cuivre n’était pas complètement attaqué là où il aurait sants placés manuellement.
dû disparaître. À l’inverse, si les zones transparentes restaient
bien claires, le noir n’était pas assez profond et les pistes fines Le matériel
se trouvaient en partie attaquées. La V-One, c’est une imprimante à plat avec une commande à
Une fois le film réalisé de façon satisfaisante, on pouvait enfin trois axes. Elle trouve sa place sans difficulté sur un bureau
graver la platine. Celle-ci était à son tour insolée, développée (fig. 1). La figure 2 présente la réalisation mécanique : un
puis gravée. Normalement, après élimination de la couche de socle accueillant un pont mobile (axe des Y). Le chariot mobile
résine photosensible et résistante à la gravure, des pistes bien (carriage) du pont comporte un logement pour recevoir trois
brillantes apparaissaient. Au lieu de cartes à circuit imprimé outils différents. Ce chariot parcourt l’axe des X. En outre, les
Le logiciel
Le logiciel est une solution complète : calibrage - commande -
impression - instructions vidéo. La dernière partie mérite des
louanges : chaque étape de travail est expliquée au moyen
d’une ou plusieurs courtes vidéos et chaque manipulation est
présentée de manière pratique (fig. 5). Ces vidéos s’enchaînent
et vous aident à reproduire chaque manipulation sur votre
machine. Difficile de faire plus simple et plus clair !
Le logiciel est disponible pour Windows 7 (64 bits) de Microsoft
(ou plus récent) et pour OSX (à partir de la version 10.11).
Une version Linux se fait encore attendre. À l’heure actuelle,
les logiciels sont uniquement téléchargeables : le fabricant a
abandonné les antiques médias optiques. À chaque démar-
rage, le logiciel vérifie la disponibilité éventuelle de mises à
jour. Selon le cas, le logiciel ou le microprogramme de l’im-
primante sont mis à jour. Figure 5. Le logiciel V-One comporte de très bons tutoriels en vidéo.
www.elektormagazine.fr juillet/août 45
Figure 6. La V-One en action : pistes conductrices imprimées. Figure 7. Évolution de la température (consigne et mesure) lors du
séchage de l‘encre.
Prise en main de la V-One male de 8 mil. (~0,2 mm). Si ce dessin n’a pas été imprimé
La Voltera V-One accepte uniquement les fichiers Gerber, mais correctement, il est possible de régler le débit d’encre par logi-
la plupart des programmes de dessin de circuits imprimés ciel et après l’avoir effacé, de l’imprimer à nouveau. D’après le
actuels peuvent exporter dans ce format. Voltera a testé les constructeur, l’encre conductrice et la pâte à souder doivent être
versions Gerber produites par Eagle, Altium, Upverter et KiCad. conservées au réfrigérateur et placées à température ambiante
Les projets d’Elektor sont très souvent assortis de fichiers 30 min avant utilisation. J’ai cependant observé qu’en portant
de ce type à télécharger. Pour pouvoir essayer l’imprimante la durée de mise en température à 2 h, j’obtenais des pistes
immédiatement, Voltera livre toutes les pièces nécessaires à plus uniformes et surtout sans interruption. Si le dessin de test
l’impression d’une carte « Hello World », c’est une délicate est correct, vous n’avez plus qu’à l’essuyer à l’aide de papier
attention. Il s’agit de faire clignoter une LED avec l’inusable absorbant et à nettoyer la platine à l’alcool.
timer NE555 en version CMS. Le dessin du circuit est intégré Le spectacle de l’imprimante au travail a toujours quelque
au logiciel et accessible en sélectionnant un lien particulier chose de fascinant (fig. 6). La tête d’impression ne travaille
dans la fenêtre de dialogue « ouvrir fichier ». pas ligne par ligne dans un mouvement de va-et-vient comme
celle d’une imprimante à jet d’encre. Elle travaille comme celle
Première impression d’un traceur XY en imprimant les pistes entières les unes après
Les cartes de résine époxyde renforcée de fibre de verre de type les autres et termine avec les pastilles.
FR4 conviennent parfaitement comme matériau pour les circuits Si à certains endroits l’impression ne paraît pas bonne (il peut
imprimés. Ma V-One a été livrée avec un jeu de dix plaques de y avoir de nombreuses raisons à cela), il est toujours possible
2 × 3" (50 × 76 mm) et 3 × 4" (76 × 102 mm) ainsi qu’une de choisir des parties à répéter depuis l’écran, le cas échéant
carte d’extension pour Arduino Uno ou Mega. La surface maxi- en retouchant l’apport d’encre.
male d’impression est de 5,5 × 4" (138 × 102 mm). Comme
les traces de graisse cutanée peuvent être préjudiciables, je
nettoie toujours les cartes vierges à l’alcool.
Pour commencer, il faut fixer la carte vierge au milieu du plateau Impression et soudage par refusion
à l’aide de plaques de serrage métalliques. Ensuite, le palpeur automatiques
reconnait le rectangle à l’intérieur duquel le circuit doit être
imprimé. Si le rectangle n’est pas centré sur la platine ou en
dehors des limites de celle-ci, on a tout le loisir de corriger le
positionnement sur l’écran. Cela permet également d’imprimer Séchage de l’encre
plusieurs petites platines sur une même plaque d’époxy pour Une fois l’impression terminée, le processus de séchage (ou
les découper ultérieurement. durcissement) de l’encre encore humide peut commencer. Il
Dès que le positionnement est correct, le palpeur analyse la faut rester très attentif pour ne pas effacer des pistes par inad-
hauteur. Les buses d’application de l’encre conductrice et de la vertance tant que l’encre n’est pas fixée. Pour le séchage, les
pâte à souder sont très fines et très fragiles. Elles ne doivent en plaques de serrage sont permutées et la carte retournée (pistes
aucun cas heurter la surface de la carte, mais elles ne doivent vers le bas) prend place dans les évidements des plaques de
pas non plus la survoler de trop haut, sinon la qualité de l’im- serrage. La surface inférieure de la carte est alors maintenue
pression en souffrirait. à une faible distance au-dessus du plateau.
Une fois l’analyse de hauteur terminée, il faut remplacer le Le séchage est lancé par le logiciel et dure de 40 à 50 min.
palpeur par la tête d’impression contenant l’encre conduc- Pendant ce processus, les valeurs et les courbes de la tempé-
trice. Ensuite, un dessin de test est imprimé : deux lignes rature de consigne et de la température instantanée du sys-
sinueuses sont imprimées ainsi que des traits parallèles, séparés tème de chauffage s’affichent sur l’écran (fig. 7). Les fentes
du minimum de 0,8 mm. Ces pistes ont une épaisseur mini- de guidage du pont virent graduellement à un rouge intense.
À 250 °C, il est formellement déconseillé de toucher l’impri- (Sn62) fonctionne correctement et la SnBiAg1 encore mieux.
mante, les brûlures seraient sévères. Par précaution, j’ai d’ail- Le fil de soudure est si fin qu’il n’est pas fourré. Le flux de sou-
leurs installé ma V-One sur une double épaisseur de carreaux dure (par ex. ChipQuick SMD 291) doit être déposé avant. J’ai
en céramique. Quand les LED repassent au bleu, le système pu me rendre compte que cela demande un peu de pratique.
de chauffage a refroidi et le séchage est terminé. La carte peut
être retirée sans risque. Résumé
La V-One est livrée avec une éponge synthétique spéciale per- Avec la Voltera V-One, la gravure des circuits imprimés va être
mettant de polir les pistes pour garantir des soudures de qua- reléguée au rang d’antiquité. Une fois que vous l’aurez essayée,
lité. La figure 8 montre un circuit imprimé poli. l’électronicien que vous êtes ne voudra plus s’en passer. En
particulier si vous concevez des cartes, c’est un gros avantage
Dépôt de la pâte à souder de ne plus avoir à attendre des jours, voire des semaines que
Avant de commencer à déposer la pâte à souder, il faut fixer les circuits imprimés des prototypes soient livrés. La capacité
à nouveau la carte sur le plateau ; ensuite on doit indiquer à de soudage par refusion est un plus décisif et le soudage des
l’imprimante la position exacte des deux points de référence. CMS devient une routine. Selon le tarif donné par Voltera,
Cela ne pose pas de problème grâce au palpeur et aux fonc- l’imprimante V-One coûte 2 000 € ce qui est assez cher, les
tions logicielles adéquates. Pour finir, il suffit de remplacer le consommables le sont aussi, mais à mon avis cela vaut vrai-
palpeur par la tête d’application de la pâte à souder et de lan- ment le coup.
cer la procédure. (160384 – version française : Yves Georges)
www.elektormagazine.fr juillet/août 47
PROJET DE LECTEUR
nWatch,
un système de développement au poignet
ou comment fabriquer votre montre intelligente
L’objet baptisé nWatch présenté ici est fais une deuxième puis une troisième. Je Il est doté d’un cœur ARM Cortex-M4
une montre intelligente que vous pourrez suis mal parti : je veux créer un appa- cadencé à 168 MHz et possède un DSP
utiliser comme carte de développement reil complexe en très peu de temps. Très et une FPU, 1 Mo de mémoire flash, et
pour microcontrôleur. Au début, ce projet mauvaise idée ! Je passe du temps à une myriade de périphériques. Ce µC a
n’était pas censé être une carte de déve- repenser le schéma et refais la carte été choisi pour plusieurs raisons. Tout
loppement, mais simplement une montre pour réduire le nombre de bogues. Après d’abord, il possède suffisamment de
pour m’aider à tricher aux contrôles de environ deux semaines de correction des ports d’E/S et bus pour y relier toutes
connaissances à l’école dans les matières problèmes, je produis la version finale. les autres puces. Une unité matérielle
qui, à mon humble avis, n’étaient pas Moralité : il faut réfléchir à un projet de gestion de la mémoire est présente ;
pertinentes. Le premier prototype n’était avant de se précipiter sur le dessin du elle est utilisée pour commander le LCD
pas très avancé, mais remplissait sa fonc- schéma ou de la carte. Ce projet m’a et la mémoire SRAM externe (IC10). La
tion. J’ai ensuite commencé à penser à la aussi appris à être patient. MMU rend leur commande beaucoup plus
possibilité de développer un système qui
serait utile et me permettrait d’apprendre
quelque chose, c’est ainsi que j’ai eu l’idée
de fabriquer une montre intelligente uti-
lisable comme carte de développement wake up Accellerometer
button RTC clock Gyroscope Bluetooth
pour microcontrôleur. L’exercice s’est
cependant avéré plus difficile que prévu.
Quand j’ai commencé, je n’avais que des SRAM memory
www.elektormagazine.fr juillet/août 49
S1 S1 +3V3 +3V3 +3V3 +3V3 +3V3 +3V3
SW3 SW3
MAIN CPU MAIN CPU
EXTERNALEXTERNAL
SRAM SRAM NOKIA DISPLAY
NOKIA DISPLAY
S2 S2 C7 C16 C7 C16 C19 C20 C19 C20 R19 L3 R19 L3 MEMORY MEMORY
SW1 SW1 11 33 11 33 3 22 3 22
VDD VDD VDD VDD
1k
1k
D0 6 D0 6
VAUX
VAUX
VIO
VIO
100n 100n 100n 100n100n 100n 100n 100n 10uH 10uH D0 D0
A0 1A0 1 7 D0
7 D0
C21 C21 A0 A0 IO0 IO0 D1 18 D1 18
A1 2A1 2 8 D1
8 D1 D1 D1
SWDIO SWDIO A1 A1 IO1 IO1 D2 8 D2 8 12 RST 12 RST
TP7 TP7 A2 3A2 3 9 D2
9 D2 D2 D2 !RESB !RESB
143
143
108
121
131
144
108
121
131
144
100n 100n A2 A2 IO2 IO2
32
30
39
52
62
72
84
95
25
33
32
30
39
52
62
72
84
95
25
33
SDWCLK SDWCLK D3 17 D3 17
17
17
TP6 TP6 A3 4A3 4 10 D3
10 D3 D3 D3
A3 A3 IO3 IO3
PDRON
VDDA
PDRON
VDDA
D4 9 D4
VDD
VDD
VDD
VDD
VDD
NRST
9
VDD
VDD
VDD
VDD
VDD
VDD
VDD
VDD
VDD
VDD
NRST
VREF+
VREF+
GND_UNK0
GND_UNK1
GND_UNK0
GND_UNK1
45
TOUCH_INT TOUCH_INT 45 48 48 WRB 5 WRB 5
PC5 PC5 PB2 PB2 A12 25A12 25 35 D12
35 D12 WRB WRB
44 44 50 50A6 A6 A12 A12 IO12 IO12 RDB 20 RDB 20
R17 PC4
R17 PC4 PF12 PF12 A13 26A13 26 36 D13
36 D13 RDB RDB
GND
GND
GND
GND
MP3-MOSI 43
MP3-MOSI 43 53 53A7 A7 A13 A13 IO13 IO13
0R PA7
0R PA7 PF13 PF13 A14 27A14 27 37 D14
37 D14
SDIO_D0 SDIO_D098 98 54 54A8 A8 A14 A14 IO14 IO14 4 21 7 16 4 21 7 16
PC8 PC8 PF14 PF14 A15 42A15 42 38 D15
38 D15
SDIO_D1 SDIO_D199
PC9
99
PC9
IC1 IC1 PF15
55
PF15
55A9 A9 A15 A15 IO15 IO15
A16 43A16 43
SDIO_D2 111
SDIO_D2 111 56 56A10 A10 A16 A16
PC10 PC10 PG0 PG0 A17 44A17 CY7C1041DV33
44 CY7C1041DV33 17 WRB17 WRB +3V3 +3V3
SDIO_D3 112
SDIO_D3 112 57 57A11 A11 A17 -10ZSXI
A17 -10ZSXI
WE WE
PC11 PC11 PG1 PG1 A18 28A18 28 41 RDB
41 RDB
SDIO_CMD SDIO_CMD116 116 58 58D4 D4 A18 A18 OE OE
PD2 PD2 PE7 PE7 40 UB
40 UB
SDIO_CLK SDIO_CLK113 113 59 59D5 D5 UB UB 6 8 14 6 8 14
PC12 PC12 PE8 PE8 NE3 6NE3 6 39 LB
39 LB
DRDY- DRDY- 76 60 60D6 CE CE LB LB
VCC
76 D6
VCC
VIO
VIO
IN0
IN0
PB15 PB15 PE9 PE9
MP3_ON MP3_ON75 75 70 SDA
70 SDA GND GND GND GND TOUCH_INT 2TOUCH_INT 2 13 13
PB14 PB14 PB11 PB11 INT INT X+ X+ TP8 TP8
IR_LED IR_LED 74 74 79 79D15 D15 12 34 12 34 SCL 4 SCL
IC11
4
IC11 15 15
PB13 PB13 PD10 PD10 SCLK SCLK Y+ Y+ TP9 TP9
MP3-DREQ MP3-DREQ100 100 80 80A16 A16 SDA 5 SDA STMPE811
5 STMPE81116 16
PA8 PA8 PD11 PD11 SDAT SDAT X– X– TP10 TP10
49
DIVIDE_ON DIVIDE_ON 49 81 81A17 A17 3 3QTR QTR 1 1
PF11 PF11 PD12 PD12
LCD +4V1
LCD +4V1 A0/D0 A0/D0 Y– Y– TP11 TP11
SW2 SW2 73 73 82 82A18 A18
DATAIN
DATAIN
D1 D1
PB12 PB12 PD13 PD13 BACKLIGHT BACKLIGHT
STM32f407
STM32f407 SBR1A40S1 SBR1A40S1
GND
GND
SCL2 SCL2 136 136 87 87A12 A12
CONVERTER CONVERTER L2 L2
IN1
IN2
IN3
IN1
IN2
IN3
PB6 PB6 PG2 PG2
137 137 88 88A13 A13 9 11 10 12 9 711 10 12 7
PB7 PB7 PG3 PG3 C17 C1722uH 22uH
LCD_ON LCD_ON34 34 89 89A14 A14 R4 R14
R4 R14 R16 R16
PA0 PA0 PG4 PG4 2 12 1
D7 D7 63 63 90 90A15 A15
PE10 PE10 PG5 PG5 1u VIN1u SW
VIN SW
TOUCH TOUCH
1k
1k
1k
1k
1k
1k
D8 D8 64 64 91 BRTS
91 BRTS 3 3 LED+ LED+
PE11 PE11 PG6 PG6 OVP OVP CONTROLLER CONTROLLER
D9 D9 65 65 93 BLE_EN
93 BLE_EN 4 IC12
4 IC12
PE12 PE12 PG8 PG8 EN EN
D10 D10 66 66 96 BLE_TX
96 BLE_TX AP5724 AP5724 5 5 LED– LED–
PE13 PE13 PC6 PC6 R2 R2 FB FB
D11 D11 67 67 97 BLE_RX
97 BLE_RX R5 R5 +3V3 +3V3
PE14 PE14 PC7 PC7 GND GND C18 C18
10R
10R
10R
10R
PE15 PE15 PA9 PA9 6 6
R27
R28
R29
R30
R35
R36
R27
R28
R29
R30
R35
R36
D0 D0 85 85 102 SD_ON
102 SD_ON 100n
PD14 PD14 PA10 PA10 100n
D1 D1 86 86 103 DM
103 DM
PD15 PD15 PA11 PA11
1k
1k
1k
1k
1k
1k
1k
1k
1k
D14 D14 78 78 104 104DP BACKLIGHT
DP BACKLIGHT
PD9 PD9 PA12 PA12
D13 D13 77 77 105 SWDIO
105 SWDIO
PD8 PD8 PA13 PA13
R9
R9
SDA2 SDA2 140 140 109 SWCLK
109 SWCLK SD CARD SD CARD
PB9 PB9 PA14 PA14 BATT_BLE BATT_BLE
SCL SCL 69 69 110 MP3-DCS
110 MP3-DCS
0R
0R
PB10 PB10 PA15 PA15 Card SocketCard 4 K1Socket 4 K1
FPC2 FPC2 29 29 114 114D2 D2 2 2
PC3 PC3 PD0 PD0 VDD VDD
MP3-SCK MP3-SCK41 41 115 115D3 D3 VCC VCC SDIO_DO SDIO_DO 7 7
PA5 PA5 PD1 PD1 3 3 18 18 DATA_OUT DATA_OUT
1 1 117 CPU_ON
117 CPU_ON P2.2 IC2P2.2 P0.1IC2 P0.1 SDIO_CMD SDIO_CMD 3 3
PE2 PE2 PD3 PD3 4 4 17 BLE_TX17 BLE_TX DATA_IN DATA_IN
2 2 118 RDB
118 RDB P2.1 P0.2(RX)
P2.1 P0.2(RX) SDIO_CLK SDIO_CLK 5 5
PE3 PE3 PD4 PD4 BLE_RST 5
BLE_RST 5 16 BLE_RX 16 BLE_RX SCLK SCLK
3 3 119 WRB
119 WRB RST RSTP0.3(TX) P0.3(TX) SDIO_D3 SDIO_D3 2 2
PE4 PE4 PD5 PD5 6 6 15 BLE_INT15 BLE_INT CS CS
4 4 123 123 P2.0(EN) P0.4(BCTS)
P2.0(EN) P0.4(BCTS) SDIO_D1 SDIO_D1 8 8
PE5 PE5 PD7 PD7 DAT1 DAT1
SW3 SW3 5 5 124 CSB
124 CSB CC2540-BLE CC2540-BLE SDIO_D2 SDIO_D2 1 1
PE6 PE6 PG9 PG9 7 7 14 BRTS14 BRTS DAT2 DAT2
7 7 125 NE3
125 NE3 P1.7 P0.5(BRTS)
P1.7 P0.5(BRTS)
PC13 PC13 PG10 PG10 8 8 13 13 SD & MMC SD & MMC
8 8 127 127 USB+ USB+ P0.6 P0.6 CARD_DETECT CARD_DETECT CD1 CD1
TP14 TP14 PC14 PC14 PG12 PG12 9 9 12 12 CARD_DETECT CARD_DETECT
9 9 132 132 USB– USB– P0.7 P0.7 CD2 CD2
TP15 TP15 PC15 PC15 PG15 PG15 R18 10 R18 10 11 11 CARD_DETECT CARD_DETECT
A0 A0 10 10 133 133 P1.2 P1.2 P1.1 P1.1
PF0 PF0 PB3 PB3 GND VSS GND GND VSS GND
A1 A1 11 11 134 134 GND GND +3V3 +3V3
1k
1k
VCAP2
VCAP1
VCAP2
10 10 8 8
VSSA
VSSA
C1 C1 SETP SETP
1k
1k
VSS
VSS
VSS
VSS
VSS
VSS
VSS
VSS
VSS
VSS
VSS
VSS
PH0
PH1
PH0
PH1
23
24
71
31
38
51
61
83
94
23
24
71
31
107
120
130
106
107
120
130
106
16
16
C6 C1 C6 C1 C22 9
C22 11 9 11
TP4 TP4
1k
1k
OSC1
OSC2
OSC1
GND
1k
1k
Figure 2. À part quelques résistances et condensateurs, le schéma n’ajoute guère d’information au schéma fonctionnel.
5 7 24 31
5 7 24 31
du processeur était trop petite pour
1 1
CRYSTAL, CRYSTAL, répondre aux besoins en mémoire de la
CVCCO
CVCCO
CVCCO
CVCCO
CVCCO
CVCCO
CVCCO
32 32 15 15 TURN ON TRANSISTOR
TURN ON TRANSISTOR
TEST TEST VCO VCO
AND VOLTAGE
ANDREGULATOR
VOLTAGE REGULATOR bibliothèque graphique STemWin (voir
FOR MP3 DECODER
FOR MP3 DECODER
6 6 33 33
14
IOVCC0
14
IOVCC0 GPIO0
34
GPIO0
34
plus loin). IC10 est utilisée comme tam-
IOVCC1 IOVCC1 GPIO1 GPIO1
SUPPLY SUPPLY
19
IOVCC2
19
IOVCC2 GPIO2
9
GPIO2
9 pon d’écran pour le LCD. Toutes les modi-
38 38 10 10
43
AVCC0
43
AVCC0 GPIO3
36
GPIO3
36 fications de l’écran sont appliquées au
AVCC1 AVCC1 GPIO4 GPIO4
45
AVCC2
45
AVCC2 GPIO5
25
GPIO5
25
tampon stocké dans cette mémoire avant
11 11
GPIO6 GPIO6
MP3-RST MP3-RST 3
RESET
3
RESET GPIO7
12
GPIO7
12 qu’il ne soit transféré dans le tampon de
MP3-CS MP3-CS 23
CS
23 IC14
CS IC14 4 l’afficheur. Nota : cette mémoire n’est
4
MP3-DCS MP3-DCS 13 13 GND0 GND0
DCS DCS 16 16
MP3-SCK MP3-SCK 28
SCLK
28
SCLK
GND1
20
GND1
20
pas aussi rapide que la mémoire interne
MP3-MOSI MP3-MOSI 29 29 GND2 GND2
MP3-MISO MP3-MISO 30
SI
30
SI
GND3
21
GND3
21 du µC ; il faut garder les piles (mémoire
SO SO 22 22
MP3-DREQ MP3-DREQ 8
DREQ
8
DREQ
GND4
35
GND4
35
FreeRTOS, etc.) dans la mémoire interne
GND5 GND5
K3 K3
46 46 37 37 pour que le processeur tourne le plus
LEFT LEFT AGND0 AGND0
39
RIGHT
39
RIGHT AGND1
40
AGND1
40
rapidement possible. La SRAM externe
41 41
VS1053 VS1053
AGND2 AGND2
42
GBUF
42
GBUF AGND3
47
AGND3
47 est reliée au même bus que le LCD et est
R33 R41 R33 R42 R41
1 1
R42 26
RX
26
RX
commandée par le flexible static memory
MIC+/LINE1 MIC+/LINE1 27 27
TX TX controller (FSMC) du µC.
1M
1M
1M
1M
1M
1M
2 2
MIC– MIC– C12 C12
48 48 44 44
C15 C13 C15 C14 C13 LINE2
C14 LINE2 RCAP RCAP
La seconde mémoire externe est la carte
XTALO XTALI
XTALO XTALI 100n 100n
47n 10n 47n 10n 10n 10n 17 18
17 18 SD non volatile K1. La carte SD est facile
R15 R15
SUPPLY SUPPLY
1M 1M à retirer et à relier à un ordinateur ou
T1 T1 +4V1 +4V1 +4V1 +4V1
C5 X1 C5 3 X1 3 C4 C4
R6
0R
R6
0R
un ordiphone pour y charger un fichier
OUT OUT
22p 22p TRI 1 TRI 22p
1 22p
image ou texte ; une conséquence des
R26 R26 +3V3 +3V3
R3 +3V3
R3 +3V3
BSS84 BSS84
0R 0R
débuts de la montre comme outil de
4k7
4k7
+3V3 +3V3 R1 R1
triche. À l’époque, je ne voyais pas com-
16.288 MHz 16.288 MHz
MP3_ON MP3_ON VDD GND VDD GND 0R 0R
ment charger des antisèches autrement
4 2 4 2
qu’en utilisant une carte SD. Cette der-
+3V3 +3V3
nière est reliée par un bus SDIO, bien
BATT BATT plus rapide que le SPI.
VCC VCC
BATT_BLE BATT_BLE R31 R32 R31 R32
VBAT VBAT XI XI
R12 R13 R12 R13 IC9 IC9 X3 X3
L’afficheur
4k7
4k7
WDI
4k7
4k7
WDI
13 8 13
8
C23 C23
4k7
4k7
AF
4k7
4k7
AF
EXTI EXTI XO 32.768 kHz
XO 32.768 kHz
SDA2 24
SDA2
VDD
24
VLOGIC
VDD
20
2n2
VLOGIC
20
2n2 Le ‘n’ de nWatch est dû à l’afficheur, récu-
SDA SDA SDA SDACPOUT CPOUT
SDA SDA R7 R7 SCL2 23
SCL2 23IC8 IC8 péré d’un vieux téléphone Nokia 6300
SCL SCL BATT_BLE BATT_BLE SCL SCL
SCL AB0805 AB0805
SCL NTIRQ 1k
NTIRQ 1k MPU_INT 12
MPU_INT 12 10 10
CLKOUT CLKOUT
R8 R8 1
INT
1
INTREGOUT REGOUT
(fig. 3). Je ne l’ai pas choisi par hasard.
RTC_INT RTC_INT CLKIN CLKOUT
CLKIN C2
CLKOUT C2
FOUT NIRQ2
FOUT 1k
NIRQ2 1k
GND GND
100n
MPU-6050 MPU-6050
100n
Il est pas cher (moins de 5 $), plutôt
6 6 7 7
AUX_DA AUX_CL
AUX_DA AUX_CL
11
FSYNC
11
FSYNCAD0
9
R34
1kAD0
9
R34
1k
facile à commander via son bus parallèle
RTC_INT_OUTRTC_INT_OUT
1k
3k3
SHDN LX
SHDN LX
4uH7 4uH7 BSS123 BSS123
GND GND
D3 D3 C8 BAT_ADC
C8 BAT_ADC
RTC_INT_OUTRTC_INT_OUT 4x 4x 2 2
R25 R25
SBR1A40S1SBR1A40S1
D4 D4 1u 1u
BLE_INT_OUTBLE_INT_OUT
4k7
4k7
R37 R37
CPU_ON CPU_ON
1k 1k
160326 - 11 160326 - 11
www.elektormagazine.fr juillet/août 51
suadé d’utiliser l’afficheur Nokia pour ma un contrôle fin du panneau tactile. Dif-
montre, mais ça ne m’a pas empêché de férents paramètres sont ajustables pour
réaliser un prototype avec un de ces LCD adapter le panneau tactile à l’afficheur.
TFT populaires à base d’ILI9320. À ce Il possède également quelques fonctions
moment, je me dis que l’afficheur serait matérielles intéressantes comme le suivi
plus rapide si j’utilisais un bus à 16 bits de fenêtre ou la mesure de température.
au lieu d’un bus à 8 bits ; en outre la Il peut déclencher une interruption lors
puce de commande ILI9320 intègre plus d’un contact, informant le µC qu’il peut
de fonctions. Cependant, cette expé- lire les coordonnées : pas besoin de lire
rience, bien qu’intéressante, ne m’a pas les registres périodiquement.
satisfait : le LCD possède des angles de
vue pas terribles et ses couleurs sont Rétroéclairage
plutôt pâles. Mon TFT n’est peut-être L’AP5724 de Diodes Inc., IC12, est un
pas le meilleur, mais cette expérience petit convertisseur-élévateur pour LED
m’a décidé à continuer avec l’afficheur blanches en boîtier DFN à six pastilles Figure 4. Grâce à une puce de décodage dédiée,
Nokia. D’accord, ce n’est pas le plus qui commande la luminosité du LCD. la nWatch peut être utilisée en lecteur MP3.
rapide, mais il l’est suffisamment pour Comme c’est un convertisseur-élévateur,
des interfaces utilisateur simples. N’ou- il a besoin de quelques composants
bliez pas que la manière dont l’image de externes : une inductance de puissance Bluetooth Low Energy (BLE)
l’afficheur est dessinée influence égale- (L2), une diode Schottky (D1) et des Le module Bluetooth (IC2) utilisé dans la
ment beaucoup la vitesse. Dessiner pixel condensateurs (C17 & C18). Il est com- nWatch est basé sur la puce Bluetooth LE
par pixel sera beaucoup plus lent que de mandé par un signal MLI depuis le µC. CC2540 de Texas Instruments, et peut
copier de vastes zones à l’aide du Direct Il est capable de piloter jusqu’à six LED, être utilisé pour échanger des données
Memory Access (DMA). Le LCD est relié bien assez pour l’afficheur Nokia qui n’en avec un ordiphone. Cela permet d’affi-
au connecteur K4. a que deux. La résistance R5 détermine cher des notifications ou de mettre à jour
le courant maximal à travers les LED. l’heure et la date depuis le téléphone.
Ajouter un panneau tactile Ce module est un bon compromis entre
Le panneau tactile est un des objectifs Lecteur MP3 prix et dimensions. La portée dépend
principaux du projet. Toutefois, j’ai eu du Dans les deux premiers prototypes, c’est de nombreux facteurs ; il est possible
mal à trouver un modèle qui remplisse le µC qui se charge de la lecture des de la régler en changeant la valeur des
mon cahier des charges et, même si j’ai fichiers musicaux. Un convertisseur N/A registres gérant la puissance de trans-
réussi, avec le recul, je vois ça comme sert à attaquer les oreillettes. Seuls les mission. La portée est plutôt bonne pour
un problème majeur pour la reproducti- fichiers WAV sont lus et tout — lecture une petite antenne sur circuit imprimé. Le
bilité de la nWatch. des fichiers, décodage des en-têtes, module peut réveiller le µC lorsqu’il reçoit
Le premier panneau testé vient d’un etc. — est fait par le logiciel. Lire des des données ; celles-ci seront transmises
téléphone Nokia C3 de 2010. Il convient fichiers MP3 a l’air sympa, mais, comme au µC par un simple lien sériel.
parfaitement pour un LCD de 2,2” N82, je n’aime pas l’idée de décoder par logi- Un problème avec ce module : il
le grand frère presque totalement com- ciel des fichiers MP3, il faut une autre consomme beaucoup plus de courant
patible du Nokia 6300. Malgré sa tech- solution. C’est comme ça que je découvre lorsqu’il est connecté. Mieux vaut donc
nologie résistive, la sensibilité est plu- le fantastique VS1053 de VLSI Solution le déconnecter après chaque échange
tôt bonne. Malheureusement, il est trop (IC14), capable de décoder et jouer dif- et ne le reconnecter que lorsque c’est
grand pour une montre et ne convient férents formats (Ogg Vorbis, MP3, AAC, nécessaire.
pas à l’afficheur 2” Nokia 6300. Après WMA, FLAC et même les fichiers MIDI).
des heures de recherche sur l’internet, Il suffit de lui envoyer les données par Capteurs
je trouve un panneau tactile convenable SPI. Cette puce fournit également des La nWatch est équipée de trois capteurs
sur Aliexpress. Sa taille est parfaite, mais fonctions pour régler le son (volume et de position, choisis pour leur popularité
sa sensibilité pas vraiment impression- tonalité, etc.) et possède un amplifica- dans les cercles amateurs (beaucoup de
nante ; il faut presser assez fort. C’est teur pour casque intégré. Que demander bibliothèques sur l’internet). Il s’agit d’un
le panneau actuel de la nWatch mais je de plus ? Grâce à IC14, tout ce que le ensemble traditionnel : gyroscope, accé-
n’en suis pas satisfait ; je le remplacerai µC a à faire, c’est d’envoyer périodique- léromètre et magnétomètre.
par un panneau capacitif. ment des paquets de données à la puce Les deux premiers sont combinés dans
Les quatre fils du panneau tactile sont décodeuse. IC8, un MPU6050, puce de suivi de mou-
reliés à TP8 à TP11. Le VS1053 est petit et ne nécessite que vement à six axes d’InvenSense. Elle
quelques condensateurs et résistances communique avec le µC via un bus I2C,
Contrôleur de panneau tactile et un résonateur à quartz. Son cœur est et est dotée d’un régulateur de tension
Pour faire l’interface avec le panneau alimenté en 1,8 V (CVDD), d’où l’ajout du LDO (à faible chute) séparé pour l’ali-
tactile résistif, j’ai opté pour le distin- régulateur de tension IC13. Le transis- menter même lorsque le convertisseur
gué STMPE811 de STMicroelectronics tor T1 commande la mise sous tension DC/DC principal est inactif. Nota : cette
(IC11). Capable de communiquer avec du décodeur pour économiser l’énergie. puce contient un processeur de mouve-
le µC par SPI ou I2C (utilisé ici), il pos- La figure 4 montre l’application de lec- ment numérique programmable (DMP). Il
sède beaucoup de registres et permet ture MP3 de la nWatch. est donc possible de changer son micro-
www.elektormagazine.fr juillet/août 53
Figure 5. Pour réduire l’épaisseur de l’ensemble, la Figure 6. Rendu en 3D du boîtier de la montre.
batterie LiPo est placée au-dessus de la puce SRAM.
une montre : chaque millimètre compte. de solution miracle : mesurez avec pré- L’apparence du boîtier est meilleure
Essayez de placer les composants avec cision toutes les dimensions, réalisez un lorsque celui-ci est imprimé avec une
des hauteurs semblables du même côté premier prototype qui ne conviendra pas, faible épaisseur de couche, le pas ver-
de la carte : le composant le plus haut ajustez, et répétez ce processus trois ou tical sera aussi petit que possible. Avec
de chaque côté déterminera la hauteur quatre fois. un pas de 0,2 mm sur l’axe Z, le résul-
totale de la carte. La batterie LiPo est Les montres ne sont pas vraiment des tat est satisfaisant. Mon imprimante 3D
aussi un composant à problèmes. Le objets faciles à concevoir ; elles sont Prusa Mendel Iteration 2 (I2) 3D pos-
mieux, si vous pouvez, c’est de la placer petites et fines. Commencez par dessiner sède une résolution et une stabilité suffi-
dans une encoche fraisée dans la carte. une forme approximative, tout en gar- santes pour créer un boîtier sympa, donc
Lorsque ce n’est pas possible, essayez dant à l’esprit les dimensions de la carte, la plupart des imprimantes 3D devraient
de ne placer que des composants très de la batterie LiPo et du LCD avec pan- convenir ; les composants sont plutôt
plats (résistances, etc.) sur une zone de neau tactile. Ensuite, mesurez, essayez, faciles à imprimer.
la carte. Dans mon cas, je n’ai pas pu jurez sans doute un peu et itérez jusqu’à
éviter de placer la mémoire SRAM sous ce que tout tienne. Construisez votre nWatch
la batterie (fig. 5). Elle ne fait que 1 mm Les composants de la nWatch sont conçus 1. Rassemblez tous les composants
d’épaisseur et c’était le meilleur com- avec Solid Edge (fig. 6). Je voulais une Commencez par rassembler tous les
promis. D’autres composants, comme montre étanche aux projections d’eau, composants, surtout ceux qui sont diffi-
le connecteur jack de 3,5 mm ou l’em- mais c’est trop difficile : les connecteurs ciles à trouver. Vous saurez vite à quoi
base USB, peuvent être montés dans des posent problème, surtout la fente pour vous en tenir. Exception faite du pan-
encoches faites dans la carte. Cela réduit carte SD. J’ai créé un boîtier en deux par- neau tactile, sans doute le plus difficile
aussi l’épaisseur totale. ties, fixées par quatre vis. C’est une bonne à trouver, il y a quelques composants qui
solution, car une fois les vis retirées, l’ac- poseront problème, le connecteur jack
Composants imprimés en 3D cès à la carte principale, la batterie LiPo de 3,5 mm avec broches au milieu est un
L’impression 3D est facile ; ce qui est et le LCD avec panneau tactile est facile. bon exemple. Le mien vient d’une vieille
difficile c’est de créer le modèle. Non Le boîtier de la montre possède deux tablette dont la référence m’échappe ;
seulement l’esthétique doit être agréable fentes rectangulaires pour les boutons. je n’ai pas trouvé de modèle semblable
à l’œil, surtout lorsqu’il s’agit d’une Le bouton de réveil est le plus gros, afin sur l’internet. Ceux que j’ai trouvés ont
montre, mais le circuit imprimé et tous qu’il soit facile à actionner ; il se trouve soit une empreinte un peu différente soit
ses composants doivent aussi tenir dans au-dessus de la jonction avec le bracelet. un boîtier plastique incompatible ou bien
le boîtier. Malheureusement, il n’y a pas Les boutons ont également été imprimés. les deux. Vous pouvez ajuster l’encoche
Figure 7. Plusieurs itérations ont été nécessaires avant d’arriver à la version finale de la nWatch.
www.elektormagazine.fr juillet/août 55
liste des composants
www.elektormagazine.fr juillet/août 57
Figure 10. Android Studio 2.2.3 a été utilisé pour créer une appli Android simple pour communiquer avec la montre.
Lien
Conclusion
Je crois que j’ai atteint mes objectifs [1] www.elektormagazine.fr/160326
initiaux. Le système que j’ai construit
m’a beaucoup appris et m’a permis de
lier programmation, électronique, méca-
dans l’e-choppe
nique, conception et impression 3D. Les
composants sont bon marché, certains
Figure 11. L’appli Android n’a pas (encore) une ont même été récupérés sur de vieux ª160326-1
belle interface, mais elle permet de régler la téléphones (ce qui malheureusement circuit imprimé
date et l’heure de la nWatch en tapotant le rend la montre difficile à reproduire).
bouton Send Data. J’ai appris énormément en résolvant
Arduino Create
Bien que pas encore poussié
reuse, la célèbre plateforme
Arduino évolue de façon asse Codebender, programmer la cart
z spectaculaire. Ces derniers e lui-même sans que l’utili-
mois, l’équipe d’Arduino a men sateur ait besoin de copier à la
é discrètement, en coulisse, main un fichier sur le disque.
un projet de plateforme de déve Pour que ça marche, il faut d’ab
loppement en ligne reposant ord installer un logiciel qui
entièrement sur le nuage : l’Ard permet au navigateur d’accéde
uino Create. Un projet ambi- r à la carte ; ce n’est donc
tieux qui étend le concept du pas complètement transparent,
défunt Codebender jusqu’au mais une fois fait, le reste
niveau de la BBC micro:bit. Les est automatique.
habitués du site Arduino.cc
ont eu accès à cette plateforme Le second objectif est de rend
presque depuis l’origine, mais re le développement d’applica
tions IdO aussi simple que poss -
son existence n’a pas fait l’obj ible par la fourniture gratuite
et de beaucoup de publicité.
À ce stade Arduino Create a deux de services avec des exigence
objectifs principaux. Le pre- s peu élevées (low-threshold)
mier est de complètement supp pour le nuage. Là encore tout
rimer l’installation fastidieuse comme mbed, mais accessible
aux non-spécialistes.
des cartes, outils et bibliothèque
s. L’utilisateur d’Ar- Les partisans du traditionnel Ardu
ino peuvent continuer à uti-
liser l’EDI hors ligne qui leur est
si familier. Toutefois, lors du
téléchargement d’une nouvelle
version sur le
site web, ils noteront qu’Ardui
no Create est
encouragé comme la voie à suiv
re.
Il nous tarde de voir ce que
le futur nous
réserve. Peut-être un Arduino
OS ?
(160404-a)
rds d’obj
8,4 millia
www.elektormagazine.fr juillet/août 59
Électronique et litérature
Pour autant que je sache — mais que sais-je ? — littérature et électronique ne font pas
bon ménage. Bien sûr il y a « Le scandale de la substitution de Darlington » en 1886
avec Sherlock Holmes, mais il a été écrit bien avant que quelqu’un n’ait l’idée du tran-
sistor Darlington (au passage découvert en 1953 et attribué à Sydney Darlington), et
il est donc aussi bien plus ancien que l’idée, certes
mauvaise, d’en substituer un incorrectement. Beau-
coup d’histoires mettent en scène l’électronique et
les technologies de façon spectaculaire, mais elles
n’ont tendance qu’à montrer l’ignorance du sujet
par les auteurs. Imaginez alors ma surprise quand
en lisant récemment un roman policier (Fuzz de Ed
McBain, roman de 1968 de la série 87e District), je me
suis soudain retrouvé devant les schémas d’un circuit
et une explication détaillée et crédible de la façon dont il
était censé fonctionner. Rares sont les illustrations dans
les romans, quelles sont les chances pour qu’il s’agisse
d’un schéma ?
(160404-b)
LM0901A1411090451C, amplificateur
opérationnel (AOP) à circuit dégradé
Composants particuliers
Le LM0901A1411090451C est un AOP à circuit dégradé de macro-puissance, aux caractéristiques médiocres, conçu
pour une dissipation de puissance sans charge de moins de 0,553 W pour Vs = ±1 pV et moins de 200 W pour Vs = ±2 pV. Le
gain en boucle ouverte est supérieur à 0,001k et le courant de polarisation d’entrée typique est de 200 A.
© March 1878, Nominal Semidestructor Corporation
https://goo.gl/jFf75N
(160404-c)
Vous voulez participer ? Envoyez vos commentaires, suggestions, trucs et astuces à labs@elektor.com
www.elektormagazine.fr juillet/août 61
PROJET DE LECTEUR
tirez 5 V
d’une cellule alcaline épuisée
essorez-la à fond
Chaque jour, nous jetons des tonnes de piles alcalines (« sèches ») de 1,5 V supposées vides. Si un appareil
est alimenté par piles, dès qu’elles sont partiellement déchargées, il ne fonctionne plus. Quel gâchis ! C’est
pourquoi j’ai conçu un circuit pour rehausser à 5 V environ la tension d’une cellule épuisée et donc pouvoir
la réutiliser : allumage d’une LED, maintien en fonction d’un petit µC ou alimentation de capteurs peu
énergivores... et ce jusqu’à ce que la pile soit vraiment morte.
150p K1
C4 C2 1 ment Schottky (c.-à-d. à faible chute de
1N4732A 2 5V
33u 2N3906 T2 220u tension) de 1 A. N’utilisez pas de diode
25V T4 25V
1V5 R1 silicium classique 1N400x, car elle fera
10R
perdre de la tension en sortie.
R4 2x R2
2N3904
2N3904 C3 Note : il est possible d’alimenter le circuit
copyright
avec une tension plus élevée, sans dépas-
1k
6k8
100n
ser la tension de sortie ni mettre la charge
E C
en difficulté – le réseau qui règle la tension
150724 - 11 B
de sortie bloquera l’oscillation. Cependant,
respectez certaines limites.
Figure 1. Un convertisseur rehausseur de 5 V pour piles de 1,5 V épuisées. (150724 - version française : Guy Raedersdorf)
Pour savoir ce que valent encore tous ces tubes électroniques de récupération, il me faut un traceur de
caractéristiques, un lampemètre, disions-nous. Disposer d’un « vrai », c’est une utopie, en refaire un avec un
microcontrôleur moderne, c’est plus réaliste. Je peux ainsi mesurer le courant cathodique en fonction de la
tension d’anode pour différents potentiels de grille.
Charles van den Ouweland Vous non plus, vous ne pouvez rien mais avec les lampes de radio, c’est une
(Pays-Bas) jeter ? Nous voici face à des appareils en autre histoire. Les dégâts graves, on les
panne, mais tellement « vintage », avec voit à l’œil nu, les courts-circuits internes,
lesquels nous pourrions faire plaisir à la l’ohmmètre les détecte, mais c’est à peu
famille, aux amis ou aux voisins (trois près tout. Pas très malin de fabriquer tout
catégories qui ne se superposent pas un circuit pour y monter un tube dont
nécessairement), plutôt que de démolir on ne sait même pas s’il est bon. Que
des composants qui pourraient peut-être ferait-on du circuit après ?
encore servir. C’est ainsi que j’ai entassé
au grenier pendant des années des tubes Le Tektronix 570
électroniques apparemment intacts et Si vous n’avez pas de projet en vue avec
qui ne font que s’empoussiérer. ces tubes, rien ne vous empêche de les
Que faire de ces composants récupérés vendre. En trifouillant un peu sur eBay,
sur de vieux appareils ? S’en servir, bien je suis tombé sur un site français qui
sûr, même pour des expériences risquées. propose des tubes accompagnés de leurs
Les condensateurs, résistances, bobines et caractéristiques sur photos prises sur un
Figure 1. C’est ainsi qu’apparaissent les ainsi de suite, on les mesure facilement, vieux Tektronix 570.
caractéristiques produites par le lampemètre. idem pour les transistors et les diodes, Pour tracer ces caractéristiques (fig. 1),
www.elektormagazine.fr juillet/août 63
l’appareil envoie sur le tube à tester diffé-
rentes tensions de grille (0 V, −1 V, −2 V,
etc.) et fait varier la tension d’anode de
zéro à quelques centaines de volts. Sur
l’écran du tube cathodique, on voit alors
le courant de cathode en fonction de
la tension d’anode pour ces différents
potentiels de grille ce qui permet d’en
déduire si le tube est capable de fonc-
tionner dans une application précise.
Ma première idée a été de faire pareil.
Seulement voilà, le Tektro 570 est
devenu depuis un objet de collection.
Même si par chance vous en trouvez un,
il faudra largement ouvrir votre porte-
feuille. En plus, le 570 est un vrai masto-
donte, il mesure 42×33×62 cm et pèse
de l’ordre de 35 kg !
Comme tout électronicien qui se res-
pecte, je me suis dit illico : fais-le toi-
même ! En partant d’un oscilloscope
existant, avec des semi-conducteurs
modernes et un microcontrôleur, ce doit
+5V
IC2 LCD1
+18V 7805T L1
10uH
C5 C6 GR-LCD-100x48 C7 C8 R12
C2 C1
DATA/CMD
10k
ENABLE
LED
R/W
D7
D6
D5
D4
D3
D2
D1
D0
1M
47k
10 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 R16
VCC AVCC +5V +18V
38 40
2k7
PA2(ADC2) PA0(ADC0) R4
37 39
PA3(ADC3) PA1(ADC1)
56k
36 2W
PA4(ADC4) 8 T2
35
PA5(ADC5)
IC1 PD7(OC2)
21
IC4
copyright 34 20
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
PA6(ADC6) PD6(ICP1) 4
33
+5V PA7(ADC7) TIP50
29 PC7
PC7(TOSC2)
ICP 5 28 PC6 +5V 3 DUT
PB4(SS) PC6(TOSC1) 3 –18V T1
1 MOSI 6 27 PC5
PB5(MOSI) PC5(TDI) C3 C4 1
2 MISO 7 26 PC4 IC4.A 5
PB6(MISO) PC4(TDO) 2
3 SCK 8 25 PC3
PB7(SCK) PC3(TMS) 10u 100n MPSA42
4 24 PC2 8
PC2(TCK) R13 R2
5 RST 9 ATMEGA32-P PC1(SDA) 23 PC1 15 7 6 R7
RST 10k 15k
6 19 22 PC0 PC7 1 VDD 16 R3 R1
REFIN
1k
3k3
10 13 7
X1 WR LDAC IC4.B
C9 11 9 6 D1
A/B CS R8 R5
DGND AGND
2x
100R
100n
10k
20 17 R9 R14 D2
RESET 16MHz 1N4007
39k 1k
160356 - 11
100k
1M8
6 7 8
220u
Le schéma VCC IS DC
T1
2W
1
Le circuit est conçu pour effectuer rapi- C5 C2
IC1
SWC D2
2
SWE
dement deux sortes de mesures : 100u 100n MC34063AP 1N4148
IRF740
- des variations de potentiel de grille sous 5
FB TC
3 T2
C6
différentes tensions d’anode ;
GND 47u
R1 R2
- des variations de tension anodique pour 4 C3 BC 400V
557B
6k2
différentes tensions fixes de grille.
10k
470p
Survol du schéma
Le schéma du traceur de caractéristique
est à la figure 3. À gauche, le micro-
contrôleur IC1 est un ATmega32-P. Il
offre beaucoup de lignes d’E/S, est dis-
ponible en boîtier DIP, bon marché, d’au-
tant meilleur qu’il m’en restait quelques-
uns en stock !
À gauche de IC1, on voit le connecteur
de programmation ICP (en circuit) et les
quatre boutons à flèche plus celui de RàZ.
Le bus de données d’une largeur de 8 bits
du microcontrôleur relie d’un côté l’écran
Figure 5. Mon lampemètre tel qu’il a été décrit.
LCD1 et de l’autre, le double convertis-
seur N/A IC3 qui fournit de quoi former
les différentes tensions nécessaires au
tube à tester.
Enfin, à droite, il y a deux amplifica- aussi la tension négative de −18 V, de tension d’entrée dont vous disposez est
teurs opérationnels, celui du haut, IC4.A, manière à délivrer du ±18 V aux deux vraiment trop basse, vous aurez du mal
approvisionne à travers deux transistors amplis op. Nous pouvons supposer que à obtenir une haute tension suffisante.
à haute tension la tension d’anode pour toute paillasse d’électronicien comporte La solution : un doubleur de tension en
le tube à l’essai (DUT), tandis que IC4.B, une alimentation double de laboratoire, sortie.
celui du bas, fournit la tension de grille. nous n’entrerons pas dans les détails à
ce propos. Quelques détails
Alimentation La haute tension, c’est plus compliqué. Le double convertisseur N/A IC2, un
Nul n’ignore que les tubes fonctionnent Pas plus que moi, vous n’avez sans doute AD7302, n’est hélas pas disponible à
d’habitude avec une haute tension qui pas sous la main une alimentation CC prix abordable en version DIP. J’ai donc
peut être très élevée. Le schéma men- réglable à haute tension. J’ai donc dû installé la version CMS de cette puce sur
tionne différentes tensions d’alimenta- trouver une solution. Ce n’est heureu- une petite carte de liaison compatible
tion, voyons d’où elles proviennent. sement pas tellement grave, voyez le avec les plaques d’expérimentation. Mon
C’est un simple 7805T (IC2 de la figure 3) schéma de la figure 4. C’est une appli- lampemètre tient donc facilement sur ce
qui assure, à partir du +18 V d’une ali- cation standard du convertisseur survol- genre de supports.
mentation de laboratoire, l’alimentation teur MC34063AP. La tension d’anode pour l’essai des tubes
en 5 V de l’électronique numérique et J’ai pour ma part récupéré d’une impri- monte tout au plus à 320 V. Pour ce faire,
de l’afficheur. Autant dire que ce 7805 mante Canon Pixma mise au rancart l’ali- l’ampli op IC4.A multiplie par 3,5 la ten-
nécessite un refroidissement suffisant ! mentation dont le convertisseur élévateur sion de la sortie A du CN/A (0 à 5 V).
La même alimentation de labo fournit donne une tension de 32 V. Si jamais, la Le transistor T1 la multiplie encore d’un
www.elektormagazine.fr juillet/août 65
Figure 6. L’onglet de démarrage. Figure 7. Les paramètres de l’anode. Figure 8. Les paramètres de la grille.
Publicité
DÉCOUVRIR CRÉER PARTAGER
ser à l’affichage. Sur oscilloscope, en revanche, les mesures
arrivent très vite sur l’écran pour éviter le scintillement.
Transconductance (T)
Sous cet onglet (fig. 12), on peut mesurer la pente S (mA/V)
du tube (transconductance). On commence par régler la tension
d’anode à sa valeur maximale sous l’onglet A, puis la tension
de grille au maximum aussi, sous l’onglet G. On mesure alors
le courant I1. Ensuite, on baisse d’un niveau la tension de grille
pour mesurer le courant I2. La pente se calcule comme suit :
www.elektormagazine.fr juillet/août 67
projet 2.0
corrections, mises à jour et courrier des lecteurs
e-BoB BL600 (1)
Elektor 03/2015, p. 34 (140270)
Depuis le premier article sur le module Bluetooth à basse énergie
BL600 dans le numéro de mars 2015, son fabricant (Laird) a mis
à jour son logiciel (micrologiciel et bibliothèques). Malheureu-
sement, il semble que les versions précédentes ne soient plus
disponibles. L’exemple proposé dans la série d’articles
de 2015 est basé sur la version 1.5.7.0 révision 5
du micrologiciel et les bibliothèques associées. Il est
possible qu’il ne soit pas compatible avec le nouveau
micrologiciel et les nouvelles bibliothèques.
En tout cas, il est important de n’utiliser que la bibliothèque
associée à un micrologiciel ou une révision donnés. Si vous
obtenez le diagnostic « BL600: Cross Compiler not found », votre micrologiciel et la bibliothèque téléchargée ne sont
pas compatibles. Les commandes AT pour identifier le micrologiciel et la révision du BL600 sont les suivantes (il faut
commencer par connecter le module au PC par une liaison série) :
Voir aussi l’article « eBoB BL600 (2e partie) » (www.elektormagazine.fr/150014) pour plus de détails
+5V sur le micrologiciel. 1
2
JO13/SCK
6
5
2
1
IOREF IO12/MISO
Dans le deuxième paragraphe de cet article, lire « Entrée analogique 2 » au lieu adjust
3V3
de « Entrée analogique 3 »
10k
+5V
P1
100k
amplify
3 5
8 C1
JP2 1 7
IC1.A IC1 = MCP6232 IC1 IC1.B
2 100n 6
4
R2 R3
100k
1k
149014 - 11
Le problème provient du fait que la symétrie de distribution du courant n’est pas conservée au niveau du consommateur.
Un exemple que je connais depuis longtemps concerne les tubes luminescents. Comme le transformateur de ballast est
conçu comme transformateur économiseur, le branchement n’est pas symétrique, c’est-à-dire qu’il dépend si c’est la
phase ou le neutre qui est relié à la base du transformateur. Dans l’un des cas, on observe dans l’obscurité une petite
lueur du tube, qui disparaît dans l’autre cas.
Lothar Freißmann
Le manuel de mon chauffe-eau précédent « Remeha Calenta » mentionnait un paramètre 43 « Détection de la polarité
du réseau ». Après l’activation, on aurait l’affichage d’un code d’erreur en cas de prise de courant mal branchée. Ce qui
est possible en Allemagne et aux Pays-Bas, mais pas en Belgique et en France, où la géométrie des prises de courant
l’interdit. Après retournement de la prise, le code d’erreur SU9 s’affiche : prise branchée à l’envers. Le réglage d’usine
du chauffe-eau mettait le paramètre 43 à 0 : la prise mal banchée n’aurait donc pas été détectée.
Après l’allumage, l’électrode d’allumage est utilisée pour la mesure du courant d’ionisation afin de s’assurer de la bonne
mise à feu. Selon le manuel, le courant d’ionisation ne doit pas dépasser 3 µA. Dès lors, les divers kits d’entretien du
chauffe-eau contiennent préventivement une électrode de rechange. La haute tension est produite par un régulateur à
découpage susceptible de créer davantage de parasites si la prise est mal enfichée. En voilà peut-être un peu trop pour
un si petit courant de mesure sur une électrode presque complètement usée.
Peter van de Meerendonk
www.elektormagazine.fr juillet/août 69
PROJET DU LABO
www.elektormagazine.fr juillet/août 71
Voici une carte de traitement du signal numérique basée sur un FPGA qui comporte tout le nécessaire pour
réaliser le travail en bande de base des modes traditionnels à bande rétrécie, comme SSB, radiotélégraphie
(CW) et modulation d’amplitude (AM). Elle apporte une solution à de nombreuses difficultés et limitations
rencontrées avec les plateformes SDR simples. Capable d’émettre autant que de recevoir, elle réunit les
éléments indispensables à un trancepteur en ondes courtes, VHF, UHF SHF et micro-ondes, elle est idéale
pour toutes les applications radio scientifiques, radioamateurs et autres missions sans fil sérieuses.
Du bon vieux temps… partiellement compensée par des déco- partir de zéro, il est souvent plus facile
Il fut un temps où la technique radio rations numériques comme les afficheurs de mettre en œuvre une chaîne de trai-
focalisait l’attention d’une foule d’ama- couleur. Pourtant, sans se laisser impres- tement de signaux complexes en logique
teurs enthousiastes et d’ingénieurs en sionner par l’apparence et les gadgets, programmable, puisqu’on peut défi-
électronique. Nombre d’entre eux ont pour qui préfère la qualité radiophonique, nir chaque étape indépendamment des
construit leurs propres appareils. Avoir une il est à présent de nouveau possible de se autres. Il serait incommode d’expliquer
licence de radioamateur signifiait qu’on lancer dans une production personnelle. ici ce processus de développement, mais
s’y connaissait en électronique. Avec les tout le code écrit et toutes les informa-
avancées technologiques, les amateurs ont … à la radio logicielle (SDR) tions nécessaires sont à votre disposition
eu plus de mal à suivre et la plupart ont fini Cependant, retourner à la technique ana- gratuitement sur [1].
par acheter des postes tout faits. La crème logique de pointe n’est sans doute pas Malgré toutes ses qualités, la combinai-
des émetteurs-récepteurs des années 80 la meilleure solution, il est plus intéres- son seule de logique programmable et
et 90 faisait appel à de nombreux blocs sant de regarder ce qui se passe dans de CA/N ne donnera jamais une radio.
analogiques complexes, hors d’atteinte des la sphère de la radio logicielle, où la Il lui faut aussi un appareil à radiofré-
amateurs qui auraient voulu les imiter, non majorité du traitement du signal radio quence pour effectuer la conversion de
par manque de connaissances, mais en se fait en numérique et dans le logiciel. fréquence, le filtrage analogique et l’am-
regard du prix et du volume. La puissance actuelle des processeurs et plification. Cette construction fera l’ob-
Les progrès de l’internet ont permis la qualité des convertisseurs d’analogique jet d’une présentation dans une suite de
une nouvelle approche des moyens de à numérique (CA/N) disponibles peut cette série. Un panneau de commande
communication et les trancepteurs du vraiment aider dans la technique SDR. pour la syntonisation de la radio, le
commerce ont commencé à reculer. En Beaucoup d’applications pour électro- réglage de volume, etc. suivra égale-
acceptant des compromis dans le but de niciens enthousiastes et radioamateurs ment. Ces trois ensembles formeront
réduire la taille des radios et leur prix, traitent totalement les signaux numé- alors une radio complète dans un boî-
on couvrait encore un large spectre de risés par logiciel sur PC ou processeur tier adéquat.
fréquences. La baisse des prestations numérique de signal (DSP). Une méthode Notez que le système peut aussi être
essentielles des radios, sélectivité du souple, mais assez peu efficace du fait commandé par un PC branché par l’in-
récepteur et clarté du signal transmis, est que, sans l’aide de multiplicateurs maté- termédiaire d’un adaptateur USB/série
riels et de ce genre de périphériques, le ou un Raspberry Pi qui communique par
traitement du signal requiert énormé- son port I²C ou sériel. Une interface gra-
ment d’opérations. Parmi les plateformes phique écrite en Python est aussi dispo-
infos sur le projet SDR populaires, on en trouve démunies nible pour montrer le fonctionnement.
d’un bon filtrage analogique avant numé-
FPGA DSP SDR
risation, avec une basse résolution du Description du circuit
TX RX CA/N et par conséquent de pauvres pres- La carte DSP à FPGA dispose d’un CA/N
radio amateurs tations spécialement sous de puissantes à 24 bits pour échantillonner à la fré-
interférences. quence intermédiaire en mode récepteur,
débutant Il est préférable de construire en par- un FPGA Cyclone IV pour le traitement du
connaisseur tie antérieure une bonne radio analo- signal, un CN/A à haute vitesse pour l’os-
Æ expert gique avant de recourir au traitement cillateur local et la production du signal
du signal par logique programmable. De à transmettre, une interface audio pour
nos jours, les FPGA sont disponibles à des microphone et haut-parleur, un oscilla-
env. 4 h prix abordables vu le nombre impression- teur très stable à haute précision et une
nant de portes logiques, de mémoires et interface I²C ou UART pour un contrôleur
de blocs multiplicateurs prêts à l’emploi. hôte (fig. 1).
soudage de CMS, C’est vraiment ce qu’il faut pour le trai- Le cerveau de la carte DSP à FPGA est
programmateur JTAG (USB tement de signaux complexes. un FPGA EP4CE10 Cyclone IV d’Intel,
Blaster), Quartus Lite anciennement Altera (IC4). On peut
Faisons-la nous-mêmes configurer cette puce dans pratique-
Daniel a lancé le projet en 2013 en ment n’importe quelle fonction numé-
env. 200 € construisant un prototype et écrivant le rique. Sous la houlette du micrologiciel,
code VHDL pour les blocs DSP. Par rap- les circuits logiques sont configurés
port à un code d’exécution DSP créé à au démarrage à partir d’une mémoire
www.elektormagazine.fr juillet/août 73
74
IRF9321PBF +5V
R19
C34
1k
L14 NM C37 IC14 IC13 IC12 IC11
R21
1k T2 TPS79633DCQ +3V3 TPS79625DCQG4 +2V5D TPS73018DBVT +1V8 LP3891EMR-1.2/NOPB +1V2
K3 R23 K10
MIC C33 C36 22n 2 4 2 4 1 5 7 1
+3V3 +1V8 +3V3 IN OUT IN OUT IN OUT VIN VOUT
47k
5V DC C105 C104 6 2
L15 S/D VOUT
NM R22 1n C38 3
C99 C97 C96 C94 C93 C91 C90 VBIAS C89
EN
GND
GND
NR/FB
EN
GND
GND
NR/FB
EN
GND
NR
100n 47u
copyright
1k C39 C40 C41 C42 C106 C43 R53
R20 0 16V GND GND PAD
1
3
6
5
1
3
6
5
3
2
4
C35 22n
4
5
9
1u 2u2 1u 2u2 1u 2u2 47u 47u
10k
C98 C95 C92
1k
1u 1u 1u 100n 100n 47u 16V 16V
16V
NM
juillet/août 2017
100n 100n 100n
42
33
5
15
12
C31
36 31
MICBIAS CIDI+
AVDD
DVDD
L12 10p 35 30 C100 C101 C108 C109 C110
IOVDD
AVDD1
AVDD2
DRVDD 27
LSP K2 MICI+ CIDI-
C30 34 14
MICI- FSD
28 2u2 2u2 47u 47u 47u
SPKO- 16V 16V 16V
L13 10p 26
SPKO+ 48 +1V2
C32 37 NC +3V3 +2V5D +3V3 +2V5D
LCDAC 8
38 NC
HNSO-
10p 39 23 C65 C66 C67 C68 C69 C70 C71 C72 C102 C107
HNSO+ RESET C53 C54 C55 C56 C57 C58 C59 C60 C61 C62 C63 C64 +5V
40 22
K4 HNSI- MCLK
2u2 100n 2u2 100n 2u2 100n 2u2 100n 47u 47u
3
7
8
7 8 L35 47 17
LINEO+ DOUT LED3
17
26
40
47
56
62
81
93
117
122
130
139
5
29
45
61
78
102
116
134
9 10 L36 1 11 100n
100n 100n C82
www.elektormagazine.fr
HDSI- SCL
VCC
VCC
VCC
L37 2 10 5 100n
HDSI+ SDA ASDI Power
L38 3 9 1 1
16
22
42
47
VCCIO1
VCCIO2
VCCIO3
VCCIO3
VCCIO4
VCCIO4
VCCIO5
VCCIO6
VCCIO7
VCCIO7
VCCIO8
VCCIO8
VCCINT
VCCINT
VCCINT
VCCINT
VCCINT
VCCINT
VCCINT
VCCINT
HDSO- PWRDN nCS IO
L39 4 6 2 144 48
HDSO+ DCLK IO IO, DIFFIO_T1p, (DM1T) MODE AVDD
2 3 143 1 23
GSET
DVDD
DVDD
DATA IO IO, DIFFIO_T1n, (DQ1T) DA13 DB13
VSS
AVSS
AVSS1
AVSS2
IOVSS
TESTP
DVSS
DRVSS2
DRVSS1
R24 6 142 2 24
GND IO, DIFFIO_L1n, (DATA1,ASDO) IO, DIFFIO_T2p, (DQS1T/CQ1T#,DPCLK7) DA12 DB12
6
7
24
43
32
13
16
29
25
7 141 3 25
4
IO, VREFB1N0 IO, DIFFIO_T5p DA11 DB11
27R
+5V +2V5D 8 138 4 26
IO, DIFFIO_L2p, (FLASH_nCE,nCSO) IO, (DATA6) DA10 DB10
L6 R18 10 137 5 27
IO, DIFFIO_L4p, (DQS0L/CQ1L,DPCLK0) IO, (DATA5), (DQ1T) DA9 DB9
10R 11 136 6 IC6 28
C22 IO, DIFFIO_L4n IO, VREFB8N0 DA8 DB8
L1 L2 L3 L4 R17 L7 L8 L9 L10 L11 12 135 7 29
M25P40-VMN6PB DCLK IO, DIFFIO_T8n, (DQ1T) DA7 DB7
C103 C16 100n 13 133 8 30
IO, (DATA0) IO, DIFFIO_T10p, (DATA3), (DQ1T) DA6 DB6
10R
28 132 9 31
IO, DIFFIO_L6n IO, DIFFIO_T10n, (DATA2), (DQ1T) DA5 DB5
47u 100n 30 129 10 32
16V C21 IO, DIFFIO_L8p, (DQS1L/CQ1L#,DPCLK1) IO, DIFFIO_T11p DA4 DB4
C17 C18 C19 C20 L5 C23 C24 C25 C26 C27 C28 C29 31 128 11 33
IO, VREFB2N0 IO, DIFFIO_T11n DA3 DB3
32 127 12 34 R49
10n IO, RUP1 IO, DIFFIO_T12p DA2 DB2
100n 100n 100n 100n 100n 10u 100n 10u 100n 100n 100n 33 126 13 35 L26..L29 = 0805CS-181XGLB
15nH IO, RDN1 IO, DIFFIO_T12n DA1 DB1
100R
27
12
33
6
41
44
38 124 46 1 TR1 4 C83 C84 C85 1
IO, DIFFIO_B1p IO, DIFFIO_T13p IOUTA1
14 39 121 19 R42 2 180nH 180nH
2
DVDD
15 42 120 20 3 6 DAC A
AVDD2
AVDD4
AVDD1
AVDD1
VDRIVE
AVDD2 IO, (DQS1B/CQ1B#,DPCLK2) IO, DIFFIO_T16n, (DQ1T) WRTB/SELECTIQ
IC1 = OPA2374AIDG4 4 63 43 119 18 45 R50 120p 180p 120p
AVDD2 VDRIVE IO, PLL1_CLKOUTp IO, VREFB7N0 CLKA/CLKIQ IOUTA2 100R
24 61 44 115 17 39 K9
5 AVDD3 DB0 IO, PLL1_CLKOUTn IO, RDN4, (DQ1T) WRTA/WRTIQ IOUTB1 100R L28 L29
+2V5A 60 46 114 R51 6 C86 C87 C88 1
7 R12 DB1 IO, VREFB3N0 IO, RUP4, (DQ1T)
3
NM
1k
NM DB5 IO, DIFFIO_B11p BIASJ_A
C1 R1 R3 C7 R8 27p 55 53 110 41 R52 R40 C79
20 DB6 IO, DIFFIO_B11n IO, DIFFIO_T20p, (DQS0T/CQ1T,DPCLK6) BIASJ_B
DGND
DGND
AGND
C9
100R
100n
15
21
38
1k
NM 27p 48 64 100 R56 GPIO4
DB12 IO IO 100R
21 47 65 99 R57 GPIO3
2 VOUTA- DB13 IO, VREFB4N0 IO, DIFFIO_R4p, (CRC_ERROR) 100R
26 46 66 98 R58 GPIO2
+5V 1 18R VIN- DB14 IO, RUP2, (DQ1B) IO, DIFFIO_R4n, (INIT_DONE) 100R
IC1A R13 45 67 15 L22 PTT/GPIO1
3 DB15 IO, RDN2, (DQ1B) TDI
R7 +2V5A 40 68 20 L23
R15 R14 CS IO, DIFFIO_B20n, (DQS0B/CQ1B,DPCLK3) TDO KEY/GPIO0
10 39 69 16 L24 SCL/RxD
+2V5D 100R 10R VREF+ RD/WR IO TCK
330R
C12 38 70 18 L25 SDA/TxD
C13 DRDY IO, DIFFIO_B21p TMS +3V3
47u 37 71 94
16V RESET IO, DIFFIO_B21n MSEL0
R5 10n 9 36 72 96
REFGND SYNC IO, DIFFIO_B22p MSEL1
8 3 73 97 R34 R35 R36 R37 R38 R39
DECAPA MCLK C45 IO MSEL2
10k
+2V5A R25
30 2 74 21 +3V3
1k
1k
1k
C6 K6
17 65 +3V3 75
IC1 RBIAS EP 100p IO
3
100n R6 C14 C15 R16 76 92 1 2
4 4 2 IO, RUP3 CONF_DONE
C5 +5V 77 14 3 4
5
IO, RDN3 nCONFIG
160k
DGND
DGND
DGND
DGND
DGND
DGND
DGND
AGND1
AGND1
AGND2
AGND2
AGND2
AGND2
AGND2
AGND3
AGND3
AGND3
AGND3
AGND4
100n 33p
10k
L16
Figure 2. Si vous oubliez la nuée de filtres passifs, de condensateurs de découplage, de lignes de bus et d’alimentation,
IC8 80 9 5 6
IO, VREFB5N0 nSTATUS
1
7
5
100n
35
42
43
53
62
64
34
13
16
18
28
23
29
31
32
11
100k 83 7 8
C46 IO 88 R44
R26 84 CLK7, DIFFCLK_3n 10k 9 10
100n IO, DIFFIO_R8n 89 R45
85 CLK6, DIFFCLK_3p 10k
IC8, IC9, IC10 = 74AHC1GU04W5-7 PMV65XP IO, DIFFIO_R8p, (DQS1R/CQ1R#,DPCLK4) 90 R46
T1 86 CLK5, DIFFCLK_2n 10k
IO, DIFFIO_R7n, (DEV_OE) 91 R47 +2V5D JTAG
R28 87 CLK4, DIFFCLK_2p 10k
R27 L17 IO, DIFFIO_R7p, (DEV_CLRn)
10k 35 L18
VCCA1
NM
23 107 L19
4
IC7 CLK1, DIFFCLK_0n VCCA2
5
+1V2
C49 R29 24 37 L20
P1 1 Vdd 3 2 4 CLK2, DIFFCLK_1p VCCD_PLL1
Vc 27R 25 109 L21
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
GND
PAD
GNDA2
GNDA1
100p
4
2
10k 100n 100n 100n
100n 100n 100n 100n 100n 100n
ASVTX-09-20.000MHZ-T 150177 - 18
R30 +3V3
L40
10k R32 R33 R48
JP1 JP2 JP3
Ext. clock
10k
5
330R
330R
K5 C51 R31
1 2 4
27R
C52 LED1 LED2
2
3
100p
IC10
100n
applications typiques sont quand même
en ondes courtes (OC), en dessous
de 30 MHz et dans la bande amateurs LPF 32 LPF
de 2 m (144-146/148 MHz).
cos 2x 10 bit
24 bit
Pour la réception des OC, on peut se @ 1.25 MSPS
construire une radio simple comme à la from ADC Audio out
1.25 MHz
OSC Bandwith setting AGC Demod
figure 3. On fait passer le signal d’an- 4
16 bit
@ 25 KSPS
tenne par un filtre passe-bas avant de to Codec
sin
l’amplifier. En le mélangeant avec le
Q RSSI
signal d’un oscillateur local (LO) issu du LPF 32 LPF
CN/A A, on convertit vers 45 MHz, la
fréquence voulue, puis on l’envoie à un 39 KSPS 150177 - 13
www.elektormagazine.fr juillet/août 75
freq. word
signals bandlimited
cos
to 1.6 kHz
Audio Audio
OSC
address ROM data
sinetable
1.7 kHz
sin
Q
Q 150177 - 16
150177 - 14
150177 - 15
Figure 5. Démodulation du signal à modulation Figure 6. Démodulation des signaux à bande Figure 7. Le principe opératoire du DDS. Le
d’amplitude (AM). latérale unique (SSB) et à onde entretenue bloc marqué d’un sigma est l’accumulateur de
(CW). phase.
onde sinusoïdale exactement au quart par 1, 0 et −1 est facile (listage 1). La tâche du bloc suivant, le contrôle
du taux d’échantillonnage et [1, 0,−1, Avec d’autres fréquences, il aurait fallu automatique de gain (AGC), est donc
0, 1,…] une onde cosinusoïdale (iden- mettre en œuvre une table de sinus et de surveiller en permanence la force du
tique à la première séquence, mais déca- des multiplicateurs à 24 bits. signal et de le graduer pour en sortir des
lée d’une position, soit 90 °) ; le signal Dans l’étape suivante, on soumet encore flux de seulement 10 bits à démoduler.
à 312,5 kHz devient un signal en quadra- les deux signaux à un filtre passe-bas. Le bloc AGC fournit aussi l’indication de
ture centré sur 0 Hz. Ces signaux sont Ici, les fréquences de coupure doivent la force du signal reçu (RSSI).
alors transmis à des filtres passe-bas s’adapter au mode opératoire choisi. Vient ensuite le démodulateur. Démodu-
qui les divisent par 32 (simplement en En AM, elles sont à 5 kHz pour une lar- ler un signal AM, c’est en extraire l’am-
éliminant 31 échantillons sur 32) pour geur de bande de 10 kHz. En téléphonie plitude en utilisant le théorème de Pytha-
arriver à un taux voisin de 39 kéch./s. en SSB (bande latérale unique), elles gore pour deux vecteurs orthogonaux :
Ces deux signaux sous-échantillonnés sont aux alentours de 1,6 kHz (bande √(I2+Q2), cf. figure 5. Pour démoduler
contiennent maintenant chacun une passante de 3,2 kHz) et pour la bande la SSB (et le morse), l’opération est hélas
information de 0 à env. 10 kHz ; combi- étroite CW (tout ou rien, code morse), on un peu plus compliquée. On a eu recours
nés, ils représentent l’information qui se ne filtre que quelques centaines de hertz. à la méthode de Weaver [2] [3]. L’idée
situait à ±10 kHz autour de 312,5 kHz Une résolution de 2×24 bits représente de base (fig. 6) est de séparer la largeur
dans le signal d’entrée. encore une énorme quantité de données de bande du signal en deux et de pro-
Si vous doutez de l’explication, sachez à interpréter. Pour en extraire l’infor- duire localement un signal en quadrature
que la formule marche uniquement mation intéressante, à basse fréquence pour le mélanger de
parce que la seconde FI a été choisie donc démoduler, nouveau au milieu de la bande. Choisir
pour être exactement le quart du taux on n’a pas besoin entre la bande latérale supérieure (USB)
d’échantillonnage de 1,25 MHz. C’est de tous ou la bande inférieure (LSB) n’est plus
ce qui permet de constituer ces bits. que l’affaire d’un signe lors de l’addition.
simplement le conver- Le signal audio démodulé passe enfin par
tisseur vers le bas un filtre passe-bas pour retirer toutes
en VHDL, parce les composantes HF de distorsion dans
que multiplier l’AGC ou le démodulateur. Il est alors
ré-échantillonné pour correspondre au
taux voulu par le CODEC audio et y est
envoyé par interface sérielle standard
PCM. Le CODEC audio programmable
peut amplifier et attaquer directement
un HP ou un écouteur.
Les signaux de l’oscillateur local (LO) à
la sortie des deux CN/A sont produits
par deux blocs de synthèse numérique
directe (DDS) dans le FPGA. Ce genre
de synthétiseur consiste en un registre
à accumulation de phase dont la valeur
augmente d’une quantité fixe à chaque
coup de l’horloge à 120 MHz du CN/A,
laquelle provient d’une boucle à phase
asservie (PLL) du FPGA ; l’augmenta-
tion détermine donc la fréquence. La
valeur de l’accumulateur sert d’adresse
www.elektormagazine.fr juillet/août 77
carte adéquate. Pour des essais ou si
l’on préfère un système informatique, un
Raspberry Pi peut faire l’affaire. Pour RPi
ou tout ordinateur sous Linux, il existe
une applet en Python basée sur la suite
graphique GTK qui rend la commande
facile. Sinon, l’applet se connecte à la
carte FPGA par le port sériel. Il y a aussi
un mode d’identification expérimental
qui permet la radiocommande. L’idée
est de mettre en œuvre un serveur sur
un RPi à proximité de la radio et de le
connecter au RPi par l’applet depuis un
ordinateur distant. Avec le pullulement
de parasites d’origine humaine dans
Figure 8. Le prototype construit par l’auteur, il opère en USB à 144 MHz.
les centres urbains et les limitations et
règlements qui y empêchent l’usage de
grandes antennes, la télécommande
Liens intéresse de nombreux radioamateurs
[1] www.elektormagazine.fr/150177 et radioécouteurs d’ondes courtes (SWL).
[2] Donald K. Weaver Jr., « A Third Method of Generation and Detection of Il devrait aussi être possible d’amener
Single-Sideband Signals », www.h4.dion.ne.jp/~ja5fp/weaver.pdf l’audio du FPGA directement sur les ports
PCM/I²S du RPi au lieu de passer par
[3] Daniel Uppström, « Weavers metod för SSB », ESR Resonans 2/2014, http://
l’audio analogique en opération à dis-
resonans.esr.se/ESR_Resonans_2014_2.pdf (en suédois)
tance, reste à en vérifier la faisabilité.
[4] www.elektormagazine.fr/labs/ Un document joint au code source
fpga-dsp-radio-for-narrow-band-communications-150177-i explique comment télécharger l’applet,
[5] https://github.com/ast/dspsdr installer le nécessaire et brancher le RPi
à la carte FPGA.
dans une table de sinus à consulter et Quartus Lite, à télécharger gratuitement Conclusion
cette lecture est transmise au CN/A du site d’Intel/Altera. Si l’EDI complet ne Ce projet est un sérieux point de départ
(fig. 7). Le mot de fréquence pour vous intéresse pas, n’en prenez que les pour les radioamateurs et enthousiastes
le CN/A A qui forme l’oscillateur local applications nécessaires pour la program- qui veulent construire leur radio sans
accordable a une largeur de 25 bits. Cela mation seule. La suite Quartus est dispo- compromis sur les prestations. Nous
correspond à un pas de fréquence de nible tant pour Windows que pour Linux. espérons aussi qu’il incitera des adeptes
120 × 106 / 225 = 3,57 Hz. Il y a en outre du numérique à découvrir le monde de la
un réglage fin qui travaille sur des valeurs Interface de commande radio et du traitement du signal.
fractionnaires pour une résolution finale À l’allumage, le micrologiciel passe de la Il laisse place à de nombreux perfec-
de 0,44 Hz. mémoire de configuration vers le FPGA, tionnements et compléments. S’il suscite
Pour le second LO, qui est à fréquence qu’il faut encore initialiser et commander l’intérêt auprès des lecteurs, nous pro-
fixe pour la conversion entre la première par I²C ou port sériel. Le FPGA ressemble poserons d’autres cartes radio évoluées.
FI et la seconde, le DDS est réalisé à à une puce ordinaire dont on doit régler Le code VHDL pour le FPGA à source
plus basse résolution pour préserver les quelques registres. Tout transit vers le ouverte est disponible sur [5], toute idée
ressources du FPGA, sa précision est FPGA compte cinq octets : deux pour d’ajout ou de perfectionnement est la
d’environ 38 Hz. donner l’adresse du registre destinataire, bienvenue.
les 38 bits restants sont les données de Finalement, la carte est assez généra-
Programmation du FPGA configuration. liste pour servir à d’autres projets centrés
Le micrologiciel compilé pour ce projet On peut lire quelques signaux d’état sur l’utilisation des FPGA en traitement
est disponible dans un fichier de configu- ainsi que la valeur de force du signal numérique du signal.
ration JTAG indirecte (trx.jic) qui confi- reçu (RSSI), mesurée plusieurs fois par (150177 – version française : Robert Grignard)
gure le FPGA en passerelle pour ensuite seconde pour en être informé.
charger la mémoire de configuration Dans les pages [1] [4] et [5] du projet,
par le truchement du FPGA. On le fait vous trouverez une description détaillée
à l’aide d’un câble de téléchargement
USB-Blaster™ de connexion à un PC
de cette interface avec toute la cartogra-
phie des registres, le micrologiciel et son
dans l’é-choppe
par USB pour former une interface JTAG code source dans un dépôt GIT. ª150177-1 : circuit imprimé nu
pour carte DSP à FPGA
pour la carte. Ce genre d’adaptateur ne Une radio indépendante, on la commande
ª150177-91 :
coûte pas cher sur les sites commerciaux d’ordinaire par une carte à µC avec affi-
carte DSP à FPGA prête à l’emploi
populaires. cheur et boutons, comme Platino d’Elek-
Le logiciel à installer sur le PC s’appelle tor. Un prochain article présentera une
petits signaux, mais n’est pas pratique rapidité, moins sensibles aux change-
pour transmettre de l’énergie comme ments de température. Les détecteurs
avec un transformateur d’isolement. La ont également changé, des cellules CdS
zone d’isolement implique aussi que les aux photodiodes et phototransistors.
deux côtés du circuit seront toujours Les photodiodes sont utilisées pour les
isolés, même si l’optocoupleur cesse de interfaces logiques à haute vitesse. Les
fonctionner. Cela rend les optocoupleurs phototransistors sont plus lents et leur
idéaux pour protéger les circuits. courant de sortie est lié à celui de la LED.
L’étendue de la zone entre la source lumi- Une photorésistance est un exemple d’op-
neuse et le récepteur définit la tension tocoupleur linéaire : une variation du cou-
d’isolement : plus la zone est grande, rant dans la lampe (émetteur) entraîne
plus cette tension est élevée. Les com- un changement identique de la résis-
posants qui n’ont besoin que de quelques tance de la cellule CdS (récepteur). Les
kV d’isolement ont typiquement une optocoupleurs numériques, quant à eux,
structure planaire, comme le composant sont faits pour transmettre des signaux
Figure 1. Structures d’optocoupleur [1]. du haut de la figure 1. Le composant binaires et donc optimisés pour la vitesse.
du bas utilise un dôme de silicone où la En fait, certains optocoupleurs, comme
quer à partir de composants discrets et lumière circule horizontalement pour per- ceux de la famille HP 6N137/HPCL2601
des entreprises comme VacTec ont fini mettre la création de zones d’isolement comportent même un circuit additionnel
par les intégrer en un unique composant plus étendues et donc pour atteindre des du côté du détecteur pour augmenter
dans les années soixante. tensions d’isolement plus élevées. encore un peu plus leur vitesse.
En général, un optocoupleur utilise de la Les optocoupleurs utilisaient à l’origine Les optocoupleurs sont utilisés depuis
lumière pour relier des circuits isolés l’un des lampes incandescentes ou au néon longtemps et toujours utiles aujourd’hui,
de l’autre. Cette zone d’isolement per- comme source de lumière, mais ils ont même avec l’apparition des isolateurs à
met au circuit de supporter des surten- rapidement évolué dans les années 70 couplage magnétique et capacitif. J’es-
sions élevées (kV) et du bruit qui, nor- quand les LED sont apparues. Les LED père vous avoir donné un bon aperçu de
malement, détruiraient les composants constituent une grande avancée sur les ces humbles composants.
sensibles. Mais isoler deux parties d’un lampes au néon : meilleures linéarité et (160136 – version française : Kévin Petit)
circuit n’est pas très utile si l’on ne peut
pas faire passer de signal entre les deux ;
c’est pourquoi les optocoupleurs com- Lien
portent d’un côté une source de lumière
[1] https://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Optoisolator_
et de l’autre un détecteur (fig. 1). Cette
topologies_both.svg/220px-Optoisolator_topologies_both.svg.png
structure fonctionne très bien pour les
www.elektormagazine.fr juillet/août 79
PROJET DU LABO
MicroPython et PyBoard
de la LED qui clignote …
au serveur web qui fait clignoter une LED
Le projet Micro Python (initialement ce qu’il en est sorti. Jouons un peu avec le contenu du lecteur détecté et baptisé
écrit en deux mots), pyboard comprise, la pyboard et uPy. PYBFLASH. Le système d’exploitation
a été lancé sur Kickstarter fin 2013 et devrait également détecter un port série.
il a recueilli plus de six fois le montant Prise en main de la pyboard
initial prévu de 15 000 £. La promesse Vous aurez besoin d’une pyboard v1.1 Après avoir ouvert un programme pour
de prendre en charge les modules (PYBv1.1, joliment emballée !), d’un terminal série (Tera Term), il suffit de le
CC3000 (Wi-Fi), WIZ820io (Ethernet) câble micro-USB et d’un ordinateur (j’ai connecter au port de la carte pyboard
et NRF24L01+ (sans fil à faible utilisé un portable sous Windows 10). En et d’appuyer sur une touche pour voir
consommation) n’y est sans doute pas raccordant la carte à l’ordinateur, une l’invite de Python apparaître (fig. 1):
pour rien. Quatre ans plus tard, voyons fenêtre s’ouvre immédiatement et affiche
MicroPython v1.8.2 on 2016-07-13;
PYBv1.1 with STM32F405RG
Type "help()" for more
information.
>>>
>>>
>>> pyb.LED(1).on()
www.elektormagazine.fr juillet/août 81
Comment sortir d’une impasse
Soyez créatif ! Essayez et corrigez vos
erreurs. Si vous arrivez à déstabiliser
le système au point que rien ne semble
plus fonctionner, il y a deux procédures
de secours : le mode protégé et
l’initialisation avec les paramètres
d’usine. En mode protégé (safe mode),
les fichiers boot.py et main.py ne sont
pas exécutés, ce qui vous donne accès
au système de fichiers (le lecteur USB
devrait apparaître). Vous pouvez alors
modifier boot.py et main.py pour corriger
les problèmes. Pour passer en mode
protégé, maintenez le poussoir USR
enfoncé tout en actionnant brièvement
RST. Regardez maintenant les LED ;
quand seule la jaune est allumée,
relâchez USR : la carte est maintenant
en mode protégé.
L’initialisation avec les paramètres par
défaut (factory reset) va un peu plus
loin. Elle supprime tous les fichiers
de l’espace de stockage interne de la
pyboard (et non pas de la carte SD),
et restaure l’état d’origine des fichiers
Figure 3. DfuSe en plein chargement d’un nouveau micrologiciel vers la pyboard.
boot.py, main.py, README.txt et pybcdc.
inf. Pour réinitialiser la carte, utilisez
la même procédure que pour démarrer
boucle. Pour arrêter la boucle et retourner de trois entiers). J’ai obtenu trois lignes en mode protégé, mais quand les LED
à l’invite, appuyez sur Ctrl-C (« interruption par seconde, ce n’est pas très rapide ! changent d’état, relâchez USR quand la
du programme en cours d’exécution »). Le programme n’est pas traduit en langage jaune et la verte sont allumées. La LED
Dès lors, toutes les commandes saisies machine (compilé). Il est interprété au fur jaune clignote trois fois et vous êtes de
pendant l’exécution de la boucle vont à leur et à mesure, cela explique cette lenteur, retour au point de départ : le début de
tour s’exécuter. Mieux vaut être prudent car même s’il n’y a qu’une instruction cet article.
et ne pas entrer n’importe quoi ! (en omettant le while), elle est en réalité Si ces deux méthodes échouent, il y a
très complexe. Il est possible d’améliorer un dernier recours : reprogrammer le
Accéléromètre embarqué sur la les choses en créant des « modules micrologiciel. Pour cela, placez la carte
pyboard figés (frozen modules) », mais cela en mode « mise à jour du micrologiciel »
Voici comment savoir rapidement si sous-entend la compilation complète du (Device Firmware Update, DFU). Il faut
l’accéléromètre embarqué fonctionne microprogramme de la pyboard, ce qui relier la broche P1 au 3,3 V avec un
correctement. sort du cadre de cet article. trombone par ex. avant de réinitialiser
la carte avec le poussoir RST. Pour la
>>> while True: Mon premier programme première mise à jour, vous devrez peut-
... print(pyb.Accel().x(),pyb. Après vous être amusé avec REPL, vous être installer un pilote DFU. Si Windows
Accel().y(),pyb.Accel().z()) vous demanderez sans doute comment ne parvient pas à installer ce pilote,
faire pour ne pas avoir à retaper vos aidez-le un peu. Téléchargez l’archive
La sortie devrait être une liste sans fin de instructions à chaque fois. C’est assez STSW-STM32080 (ou DfuSe Demo)
trois valeurs (axes x, y et z). Secouez la facile. Tout ce qu’il vous faut c’est un chez STMicroelectronics et installez-la.
carte dans tous les sens et vous verrez éditeur de texte. Pointez Windows sur <chemin
ces valeurs changer : La pyboard est accessible comme lecteur d’installation>\STMicroelectronics\
de carte flash. Avec un explorateur de Software\DfuSe v3.0.5\Bin\Driver\ pour
-1 -2 21 fichiers, vous verrez le fichier main.py. qu’il installe le pilote. Si tout s’est bien
-1 -2 20 C’est le fichier Python qui s’exécute à la passé, DfuSe Demo devrait maintenant
-2 -1 20 réinitialisation de la pyboard (matérielle lister la carte (fig. 3).
… à l’aide du poussoir RST ou logicielle par Le site de uPy propose des micrologiciels
Comme précédemment, faites Ctrl-C la commande Ctrl-D). Ouvrez ce fichier à précompilés. Attention : choisissez celui
pour retourner à l’invite. Ce test est l’aide d’un éditeur de texte et ajoutez-y qui correspond à votre carte. Dans la zone
intéressant, car il montre la vitesse vos commandes. Lorsque c’est fait, Upgrade or Verify Action (pas Upload
d’exécution d’une boucle apparemment enregistrez le fichier et réinitialisez la Action) cliquez sur Choose, naviguez
simple (lecture d’un capteur et impression carte pour lancer votre programme. jusqu’au fichier DFU à programmer puis