Elektor N°405 - Mars 2012
Elektor N°405 - Mars 2012
Elektor N°405 - Mars 2012
www.elektor.fr
radio logicielle
générateur de signal
ultra précis avec ATtiny
Modules ZigBeeTM Cordon d’interface USB < > GPIB Modules CUBLOC et PICBASIC Boîtiers d’interface LabJack
Modèles pilotables via Fiable, performant et Plate-formes microcon- Interfaces profession-
commandes AT ou en- économique. Permet le trôlées ultra performan- nelles pour PC permet-
tièrement programma- pilotage d’un équipe- tes utilisables via une tant de disposer d’en-
bles pour un fonction- ment GPIB ou le rappa- programmation en lan- trées/sorties tout ou rien
nement autonome. Kits triement de copies gage Basic évolué. Do- et d’entrées de conver-
de développement et d’écran via un logiciel cumentation entière- sion analogique/ numé-
platines d’évaluation d’émutation de traceur ment en Français. Prise rique via un port USB
A partir de 20 € disponibles A partir de 179 € open source. A partir de 19 € en main immédiate. A partir de 109 € ou Ethernet.
Modules mbed et LPCXpresso Afficheurs graphiques 4D Systems Plate-forme FOXG20 Module CMUcam3
Plate-formes microcon- Afficheurs graphiques Système microcontrôlé Plate-forme sur base
trôlées sur coeur ARMTM couleurs TFT ou OLED avec Linux embarqué. LPC2106 avec caméra
32 bits à architecture avec ou sans dalle Coeur ARM9TM AtmelTM vidéo pour acquisition
Cortex-M3. Nombreux tactile, pilotables via AT91SAM9G20. Nom- et traitement numérique
périphériques intégrés: des commandes ASCII breux périphériques permettant la recon-
I2CTM, SPITM, UART, ou programmables pour intégrés: I2CTM, SPITM, naissance de couleurs
CAN, ADC, PWM, DAC, fonctionner en mode UART, PWM, USB, et le suivi d’objet en
A partir de 24 € USB, Ethernet... A partir de 28 € autonome. A partir de 167 € Ethernet... A partir de 150 € temps réel.
Kits d’évaluation FPGA Modules de restitutions sonores Programmateurs de composants Modules BluetoothTM
Kits d’évaluation, cor- Modules et platines per- Modèles économiques Dispos sous la forme de
dons JTAG et platines mettant l’enregistrement et modèles profession- clef USB ou série ou de
de test pour dévelop- et la restitution de fi- nels capables de sup- modules OEM avec an-
pement sur FPGA chiers sonores mono porter plus de 57830 tenne intégrée ou sortie
XilinxTM Spartan-3TM, ou stéréo. Pilotage via composants. Avec pour antenne externe.
Spartan-6TM, Virtex-IITM, entrées logiques ou port supports ZIF ou câble Pour transmission de
Virtex-5TM. Tarif spécial série. Dispo avec ou ISP. Nombreux adap- données ou de signaux
A partir de 71 € éducation nationnal. A partir de 12 € sans ampli. audio. A partir de 16 € tateurs optionnels. A partir de 26 € audios.
Modules FEZ / GHI electronics Interfaces CAN Kits d’évaluation Mikroelektronika Modules et TAG RFID
Plate-formes microcon- Petits modules d’inter- Kits d’évaluations, pro- Tags, platines de test et
trôlées sur base ARMTM faces CAN < > USB ou grammateur/debuger et modules OEM pour dé-
programmables sous CAN < > Série vous compilateurs pour mi- veloppement d’appli-
environnement .NET permettant de piloter crocontrôleurs PIC / cations RFID techno.
Micro FrameworkTM. des dispositifs CAN dsPIC30/33 / PIC24 / 125 KHz ou 13,56 MHz
Gestion I2CTM, CAN, depuis un PC via PIC32MX / AVR / 8051 UniqueTM, MifareTM,
USB, Ethernet, l’échange de données / PSoC / ARM et bases HitagTM, I-Code SLITM,
A partir de 37 € UART,One WireTM... A partir de 96 € au format ASCII. A partir de 32 € GPS / GSM. A partir de 2 € Q5TM, etc...
Modules GSM / GPRS Module de reconnaissance vocale Interfaces TCP/IP < > Série Télécommandes radio
Terminal en boîtier prêt Modules OEM prêt à Modèles en boîtier prêt Modèles 1 à 4 canaux à
à l’emploi et modules l’emploi et modules à l’emploi ou sous la modulation AM ou FM.
OEM pour transmission OEM microcontrôlés forme de modules OEM Portée 10 à 300 m.
GSM / GPRS. Utilisa- programmables per- permettant de disposer Codage par dip ou en
tion simple via com- mettant le développe- d’une conversion trans- mode anti-scanner.
mandes AT. Kit d’éva- ment d’applications de parente de type Récepteurs à sorties
luation, platines de test reconnaissance vocale TCP/IP < > série ou relais configurables en
A partir de 44 € et antennes GSM. A partir de 47 € mono ou multi-locuteurs A partir de 21 € WLAN < > série A partir de 49 € mode M/A ou impul.
Modules de transmission vidéo Serveurs Web Modems radio longue portée Capteurs divers
Modules radio multi- Modules OEM et boî- Modems radio longue Sélection inégalée de
canaux OEM pour tiers prêt à l’emploi portée (1 à 5 Km) en capteurs: infrarouge,
transmission vidéo et intégrant un serveur bande 868 Mhz pour ultrason, magnétique,
audio (stéréo) en bande web paramétrable transmission de don- accéléromètre, gyros-
2,4 Ghz ou 5,8 Ghz. permettant de piloter nées (RS232 / RS485), cope, pluie, niveau
Antennes omnidirec- des sorties, de lire l’état transmission de signaux d’eau, humidité, baro-
tionnelles, directives et logique d’entrées et la tout ou rien, signaux métrique, force, tempé-
A partir de 15 € antennes patch. A partir de 53 € valeur d’entrées A/N. A partir de 234 € analogiques (4-20 mA). A partir de 3,23 € rature, potentiométrique
LEXTRONIC - 36/40 rue du Gal de Gaulle - 94510 La Queue en Brie - Tél.: 01.45.76.83.88 - Fax: 01.45.76.81.41 - [email protected]
Frais de port en sus de 8 € pour expédition en France Métropolitaine) Tarifs indiqués en TTC
Toutes les marques, les technologies, les procédés, les références et appellations commerciales des produits citées dans cette page appartiennent à leur Propriétaire et Fabricant respectif
édito
Ha ha ha !
... c’est sympa de lâcher cinq minutes 6 De vous à nous : Le réseau Elektor
votre tablette tactile et/ou votre super Informations légales
téléphone pour lire Elektor sur papier, mais
je doute que l’édito en soit la partie la plus 8 De vous à nous : courrier des lecteurs
intéressante. Encore que, on s’y amuse Retour étonnant sur les LED fantômes
parfois... J’ai reçu de la Ville de Paris une déjà évoqués en sept. et en nov. 2011.
invitation à participer à une campagne de
sensibilisation sur le thème : 10 Infos & actualité
« Abus d’écrans chez les adolescents ? » Nouveaux produits
à destination, je cite, « des professionnels
de la prévention, des parents et des 12 2,4 GHz : porteuse polymorphe
adolescents ». Je ne suis plus adolescent, Wi-Fi, Bluetooth, four à micro-ondes…
mais l’abus d’écran, je connais. nous utilisons tous les jours sans y penser
Sujet bateau. Écoutez ce pathétique appel : des appareils qui tutoient des fréquences
« Les écrans étant omniprésents dans notre de l’ordre de 2,4 GHz.
quotidien... gna gna gna... phénomène de
société... gna gna... réponses éducatives 18 Android + Bluetooth + Arduino
appropriées... gna gna gna »). Paradoxale Un modèle bon marché de téléphone
campagne appuyée sur « une série de 5 Android peut faire une somptueuse
petits films (5 mn) proposée dans un DVD » télécommande pour un circuit à micro-
: pour parler d’abus d’écrans, on ne trouve contrôleur. Il suffit d’une platine Arduino
et d’une application Bluetooth.
donc rien de mieux que de le faire sur des
écrans.
24 Retour aux sources (3)
Or tout le monde sait − mais c’est
tellement plus confortable quand on Le comportement de votre transistor est
inscrit dans les courbes caractéristiques,
l’oublie − qu’un écran, comme son nom
mais quoi de plus formateur que de
l’indique, est fait pour masquer. mettre la main à la... patte ?
Même « intelligent », il cache au moins
autant qu’il montre.
30 Indicateur de charge
Conformément à sa vocation, Elektor pour génératrice de secours
s’obstine à révéler ce qu’ils cachent, en Aucun réseau électrique n’est à l’abri d’un
aplanissant le chemin pour aller voir aléa météorologique, aucune génératrice
derrière, et découvrir ce qu’on peut tirer de secours n’est à l’abri d’une surcharge.
soi-même de ces écrans et de leur tentante
tactilité. Ce numéro est placé sous le signe 34 Radio logicielle avec AVR (1)
du quadruple A dont on nous serine qu’il L’ATtiny en générateur de signal ultra pré-
sanctionne des valeurs sûres : Android, cis pour SDR. Ceci est le premier article
AndroPOD, Arduino. Pour Android, Elektor d’une série consacrée à la SDR.
n’est pas à la traîne, mais pour l’Arduino,
longtemps considéré à tort dans la maison 42 Protégeons l’USB
comme un jouet pour artistes, pas sérieux L’interface USB est robuste, mais il y a des
donc, il était temps qu’on y vienne. Alors précautions à prendre, notamment en
on met les bouchées doubles. Et pour matière de limitation du courant sur la
l’AndroPOD, l’aventure vient seulement de ligne d’alimentation +5 V.
commencer.
Vous craignez que j’aie oublié le 4e A ? 43 LABOratoire
Celui de l’AVR peut-être ? • Le cavalier à trois pattes de l’AndroPOD
Non, je pensais à une valeur plus sûre • Alim. découp. ch. filt. DC
encore, et même inépuisable : l’avenir.
• Histoire(s) de prises
• Polarité des LED CMS
• Un câble pour le bus
Denis Meyer
4 03-2012 elektor
35e année
SOMMAIRE Mars 2012
No 405
Les contrôleurs AVR d’Atmel sont très demandés, notamment parce que leurs
62 Cap sur l’avionique :
outils de développement sont gratuits. Ces processeurs conviennent aussi Recyclons un instrument de vol
pour le traitement du signal numérique, nous allons le voir dans cette série
Un Horizontal Situation Indicator, fringant
d’articles. Même les débutants suivront sans peine, l’information de base y est instrument d’avionique, est un chef-
expliquée simplement. Fidèle à la tradition elektorienne, l’expérimental sera au d’œuvre d’électromécanique.
cœur de l’action. Pour le matériel à construire soi-même, Elektor pense à votre
confort et vous en propose une platine. Quant au logiciel, comme toujours, le 68 Platino dans la peau d’Arduino
code source est disponible sur notre site. Platino est compatible avec Arduino, mais
Arduino n’est pas entièrement compa-
tible avec (tous les microcontrôleurs
qu’accepte) Platino.
Comme vous peut-être, l’auteur passe ses journées dans l’électronique, mais 75 Attaque bit à bit
les merveilles mécaniques le fascinent aussi. Dans un entrepôt de surplus il est du module USB FTDI
tombé sur un Horizontal Situation Indicator, fringant instrument d’avionique, et Conception électrique et logiciel d’une
n’a pas résisté à ce chef-d’œuvre d’électromécanique : il l’a dépiauté, examiné serrure électronique sans clé.
sous toutes les coutures et analysé sa construction et ses fonctions.
Embarquement immédiat, décollage vertical. 78 Consonant : préamplificateur de
haute qualité (1978)
Ça commence mal, mais ça finit bien.
Cet article décrit la conception électrique et les conditions logicielles d’une ser-
86 Avant-première
rure électronique sans clé, composée d’un pavé numérique, d’un affichage à
Pendant que vous lirez ce numéro, nous
cristaux liquides, des contacts d’un relais pour déverrouiller la porte et d’une
préparons celui d’avril. Si vous avez des
interface USB. Même si cet article plonge dans les entrailles du circuit intégré idées pour les suivants, n’hésitez pas à les
FT2232H de FTDI et son mode bit à bit, la technique est compréhensible sans partager.
connaissance approfondie de l’USB ni le recours à un microcontrôleur !
elektor 03-2012 5
elektor
Notre équipe
Rédacteur en chef : Denis Meyer ([email protected]) Directeur éditorial : Wisse Hettinga
Rédaction internationale : Harry Baggen, Thijs Beckers, Eduardo Corral, Jens Nickel, Clemens Valens
Laboratoire : Christian Vossen (resp.), Thijs Beckers, Ton Giesberts, Luc Lemmens, Raymond Vermeulen, Jan Visser
Graphistes : Giel Dols, Jeanine Opreij, Mart Schroijen Secrétaire de rédaction : Hedwig Hennekens
Ont coopéré à ce numéro : Antoine Authier, Jean-Paul Brodier, Robert Grignard, Hervé Moreau, Kévin Petit, NN
Nos réseaux
35ème année, n°405 mars 2012 Banque ABN AMRO : Paris DROITS D’AUTEUR : © 2012 Elektor International Media B.V.
ISSN 0181-7450 Dépôt légal : février 2012 IBAN : FR76 1873 9000 0100 2007 9702 603 Toute reproduction ou représentation intégrale ou partielle, par
CPPAP 1113 U 83713 BIC : ABNAFRPP quelque procédé que ce soit, des pages publiées dans la présente
publication, faite sans l’autorisation de l’éditeur est illicite et constitue
ELEKTOR / PUBLITRONIC SARL
c/o Regus Roissy CDG - 1, rue de la Haye - BP 12910 une contrefaçon. Seules sont autorisées, d’une part, les reproductions
FR - 95731 Roissy CDG Cedex - France strictement réservées à l’usage privé du copiste et non destinées à une
Tél. : (+33) 01.49.19.26.19 - Fax : (+33) 01.49.19.22.37 utilisation collective, et, d’autre part, les analyses et courtes citations
www.elektor.fr justifiées par le caractère scientifique ou d’information de l’oeuvre
6 03-2012 elektor
elektor
Nos adhérents
Nous
avons 275132 adhérents
dans 83 pays
Nos annonceurs
Beta Layout Lextronic
www.beta-layout.com . . . . . . . . . . . . . . . . . . .71 www.lextronic.fr . . . . . . . . . . . . . . . . . . . . . . 2
Eurocircuits MikroElektronika
www.elektorpcbservice.com . . . . . . . . . . . . . . .61 www.mikroe.com . . . . . . . . . . . . . . . . . . . . . 33
Jackaltac Schaeffer AG
www.jackaltac.com . . . . . . . . . . . . . . . . . . . .11 www.schaeffer-ag.de . . . . . . . . . . . . . . . . . . . 71
dans laquelle elles sont incorporées (Loi du 11 mars 1957 -art. 40 et 41 schémas n’implique aucune responsabilité de la part de la Société édi- Elektor est édité par Elektor International Media B.V.
et Code Pénal art. 425). trice. La Société éditrice n’est pas tenue de renvoyer des articles qui Siège social : Allee 1 - 6141 AV Limbricht, Pays-Bas
Certains circuits, dispositifs, composants, etc. décrits dans cette revue lui parviennent sans demande de sa part et qu’elle n’accepte pas pour
peuvent bénéficier de droits propres aux brevets; la Société éditrice publication. Si la Société éditrice accepte pour publication un article
Imprimé aux Pays-Bas par Senefelder Misset – Doetinchem
n’accepte aucune responsabilité du fait de l’absence de mention à ce qui lui est envoyé, elle est en droit de l’amender et/ou de le faire amen-
sujet. Conformément à l’art. 30 de la Loi sur les Brevets, les circuits der à ses frais; la Société éditrice est de même en droit de traduire et/
Distribué en France par M.L.P. et en Belgique par A.M.P.
et schémas publiés dans Elektor ne peuvent être réalisés que dans ou de faire traduire un article et de l’utiliser pour ses autres éditions et
des buts privés ou scientifiques et non commerciaux. L’utilisation des activités, contre la rémunération en usage chez elle.
elektor 03-2012 7
COURRIER DES LECTEURS
8 03-2012 elektor
COURRIER DES LECTEURS
pu remplacer, car réservés à la haute La réponse de Bert van Dam, Le bus arrive
tension. Deux ampoules m’ont intrigué, l’auteur du livre : Elektor n°396, juin 2011
car rien ne semblait mort, mais après Il existe des centaines de microcontrôleurs PIC. J’ai cru comprendre en lisant les articles
dessoudage des composants j’ai trouvé Tous ne sont pas compatibles avec le langage sur «le bus arrive» qu’il existe une liste de
pour l’une un condo marqué 2,2 nF alors de programmation JAL gratuit. C’est pourquoi diffusion. Mais je ne l’ai jamais trouvée.
que je mesure 11 nF, et l’autre marqué 3,3 j’ai composé une bibliothèque qui exploite plei- Existe-t-elle uniquement en allemand ?
nF mais sur lequel j’ai mesuré 10 nF. Après nement les possibilités des microcontrôleurs (L’auteur, Jens Nickel est allemand, je pense)
remplacement par des composants de PIC les plus courants, et facilite les migrations Le bus RS485 d’Elektor ne répond pas
valeur correcte, ces lampes fonctionnent (liste complète dans le chap. 12 du livre). au standard TIA-EIA-RS485 en ce qui
à nouveau. La capacité qui a augmenté Puisque Microchip, fabricant du 12C509, concerne la polarité des signaux A et B.
m’intrigue, car ces capas apparaissaient déconseille l’utilisation de ce composant Mais c’est tout à fait normal, il existe
intactes et sont placées aux bornes désormais obsolète, je recommande le 12F675, deux normes à ce sujet. La vraie, et celle
réservées pour les tubes au starter. plus rapide et compatible avec JAL, doté d’une de facto de Texas Instruments (suivie
En résumé, sur dix lampes, cinq mémoire flash et de fonctions supplémen- par d’autres fabricants d’ailleurs) Voir
fonctionnent à nouveau. Le manque taires. Pour programmer le 12F675, il faut http://en.wikipedia.org/wiki/RS-485 ,
de fiabilité de ces ampoules serait dû un programmeur flash, tel que le Wisp648 chapitre «Signs of common mistakes»
en grande partie à des composants recommandé dans le livre. ou la référence 6 dans cette même
électroniques sous-dimensionnés ou de page Wikipedia. Attention donc si vous
bas de gamme. Une précision d’Elektor : ce conseil bien inten- connectez d’autres produits du commerce
tionné ne répond que partiellement à la ques- sur du RS485 comme j’en ai fait plusieurs
tion. On ne saurait évidemment en vouloir à JAL fois l’expérience, notamment avec des
Programmation des PIC 12C509 de ne pas être compatible avec tous les PIC, il y produits de B&B Electronics.
J’ai en ma possession des PIC 12C509 et je en a tellement. Peut-être que parmi les lecteurs Il manque les pull-up et pull-down de bus
souhaiterais les programmer. Mais je ne d’Elektor quelqu’un saura comment adapter (voir http://www.bb-elec.com/bb-elec/
trouve pas de fichier dans la bibliothèque JAL à votre micro. C’est la mission du forum literature/tech/485appnote.pdf page 18),
de JAL. d’Elektor, utilisez-le pour ça. mais attention, le pull-up doit se trouver
entre A et le +5V, et le pull-down entre B
et la masse.
Raymond Ranwez
elektor 03-2012 9
INFO & ACTUALITÉS
10 03-2012 elektor
INFO & ACTUALITÉS
Mieux compter les combine la précision à court terme et la plastique, industrie agroalimentaire…), les
linéarité d’un compteur de coulombs et organismes de contrôle, les laboratoires
coulombs augmente la la stabilité à long terme d’une jauge à et l’enseignement ou encore dans les
durée des batteries Li+ mesure de tension. Cet algorithme effectue hôpitaux.
continuellement de petites corrections, Ils assurent deux fonctions principales : la
et évite ainsi les brusques corrections simulation et la mesure. Le C.A 1621 permet
opérées par les algorithmes traditionnels la calibration de sondes thermocouples (J,
de comptage de coulombs. K, T, E, R, S, B, N). Sa plage de mesure et de
Comme l’algorithme réduit la sensibilité simulation de température est de -250 °C
aux erreurs de décalage du convertisseur à +1 800 °C et sa plage de mesure et de
a na l o g i q u e / n u m é r i q u e d e m es u r e simulation millivolt va de -10 à 100 mV. Le
de courant, le circuit peut utiliser une C.A 1623 sert pour la calibration de sonde
plus petite résistance de mesure sans résistive Pt10, Pt50, Pt100, Pt200, Pt500,
compromettre la précision de l’estimation Pt1000, Pt1000 (JIS) avec une plage de
de l’état de charge de la batterie. mesure et de simulation de température
Le MAX17047 est capable de donner de -200 °C à +800 °C et une plage de
l’alarme si la température de la batterie est mesure et simulation de résistance de 0 à
Les jauges traditionnelles pour batteries Li+ anormale, contribuant à la sécurité et à la 3 200 Ω. Enfin, le C.A 1631 est adapté pour
sont montées dans la batterie et nécessitent durée de vie du système. Enfin, il prévient la calibration de signaux de processus en
le support de nombreux composants aussi le système quand la batterie est tension et courant. Il mesure et délivre une
discrets. Pour estimer la capacité de insérée ou enlevée, et gère en même temps tension continue de 0 à 20 V (± 0,02 %) ou
batterie restante, les jauges s’appuient la séquence de démarrage / d’arrêt. il mesure et délivre une boucle de courant
sur des compteurs de coulombs. Ces (110703-7) www.maxim-ic.com/ModelGauge continu de 0 à 24 mA (0,015 %).
dispositifs posent un problème à cause de (110713-1)
petites erreurs de décalage de conversion www.chauvin-arnoux.com
analogique/numérique qui s’accumulent
indéfiniment. Une résistance de mesure
de grande taille et coûteuse est nécessaire
pour corriger ces dérives. De plus, la
batterie doit passer régulièrement par les Calibrateurs compétitifs,
états batterie pleine, vide et veille. compacts et précis
D e r é centes ava n c é es o nt p er m i s
d’implémenter la jauge du côté système, Pour générer, simuler et mesurer avec
au lieu de l’insérer dans la batterie. Si cette une grande précision tous les signaux bas
approche réduit le coût de l’application, niveaux rencontrés dans l’industrie, Chauvin
elle a peu d’effet sur la surface de carte, Arnoux commercialise une nouvelle
car il est toujours nécessaire d’utiliser une gamme composée de trois instrument :
grande résistance. C.A 1621, C.A 1623 et C.A 1631. Il s’agit
Finalement, les algorithmes de correction des instruments tout terrain compacts
des dérives actuellement disponibles ont et robustes avec une prise en main aisée
des effets secondaires indésirables. Ils et un grand afficheur qui offre une bonne
introduisent de brusques sauts de l’état lisibilité en toute circonstance. Alimentés
de charge dû au fait que les algorithmes par piles, ils sont indépendants et offrent
s’appuient sur la mesure de la tension de une autonomie appréciable.
la batterie en état de veille, puis font une Le champ d’application de ces instruments
correction en se basant sur la relation entre est large, ils conviennent aux besoins des
la tension de circuit ouvert de la batterie et ingénieurs, techniciens et installateurs
l’état de charge de la batterie. de multiples secteurs d’activité comme
La nouvelle technique ModelGauge m3 de le chauffage et climatisation, l’industrie
Maxime utilisée par le circuit MAX17047 de transformation (chimie, pétrochimie,
Publicité
elektor 03-2012 11
vie pratique
2,4 GHz :
porteuse polymorphe
Une fréquence très fréquentée
Frank Bigrat (France)
RFID
bénéfices.
12 03-2012 elektor
vie pratique
Tableau 1 – La bande ISM est réservée aux applications Industrielles, Scientifiques et Médicales.
Gamme de fréquences Fréquence centrale Disponibilité
6,765 – 6,795 MHz 6,780 MHz Selon réglementations locales en vigueur
13,553 – 13,567 MHz 13,560 MHz
26,957 – 27,283 MHz 27,120 MHz Pas d’informations particulières communiquées
40,66 – 40,70 MHz 40,68 MHz
433,05 – 434,79 MHz 433,92 MHz Pas d’informations particulières communiquées
902 – 928 MHz 915 MHz États-Unis, Groenland et certaines îles du Pacifique uniquement
2.400 – 2,500 GHz 2,450 GHz
5,725 – 5,875 GHz 5,800 GHz Pas d’informations particulières communiquées.
24 – 24,25 GHz 24,125 GHz
61 – 61,5 GHz 61,25 GHz Selon réglementations locales en vigueur
122 – 123 GHz 122,5 GHz Selon réglementations locales en vigueur
244 – 246 GHz 245 GHz Selon réglementations locales en vigueur
Percy Spencer alors qu’il travaillait à proximité d’un radar en tion commerciale des produits, on préfère les noms plus évocateurs
activité. En effet, la fréquence de 2,45 GHz permet d’agiter les et plus attractifs. L’origine du 2,4 GHz remonte à 1947 et l’invention
molécules d’eau et ainsi de réchauffer les aliments. du four à micro-ondes (voir plus haut) : La Federal Communications
• Aéromodélisme : Quand il arrive sur un terrain, un pilote de Commission, organisme américain de certification et de validation
modèle réduit d’avion se préoccupe toujours de la question de de tous les périphériques qui émettent des ondes électromagné-
l’occupation éventuelle de « sa » fréquence par d’autres pilotes. tiques, a décidé d’attribuer la bande des 2,4 GHz aux appareils de
Seul un partage équitable du temps de vol permet d’éviter le communication sans fil.
crash des avions ; un problème que l’auteur de ces lignes ne
connaît que trop bien. Dans ce contexte, la technologie des Techniques de transmission : DSSS et FHSS
2,4 GHz est intéressante, car elle permet de s’affranchir de ces À l’évocation des bénéfices de la technologie des 2,4 GHz pour l’aé-
problèmes de fréquence. Les fabricants les plus connus, Futaba, romodélisme, on se pose aussitôt la question de savoir comment
Graupner, Spektrum, Multiplex… ont bien compris l’avantage des font les appareils qui émettent sur une même fréquence pour ne
techniques de transmission numérique et proposent une large pas se perturber les uns les autres.
gamme de modèles d’émetteurs et de récepteurs en 2,4 GHz. La réponse est (assez) simple : on fait appel à la technique de l’éta-
Certains fabricants proposent même sur leur matériel, en plus lement de spectre (Spread Spectrum) dans laquelle le domaine de
elektor 03-2012 13
vie pratique
14 03-2012 elektor
vie pratique
Modulation du signal
Associée à l’étalement de spectre, on module le signal avec une
technique bien connue des électroniciens : la modulation de phase
ou PSK pour Phase Shift Keying. Dans ce type de modulation, on
modifie la phase à l’origine φ d’un signal sinusoïdal
(donné par l’équation U ( t ) = Uˆ ⋅ sin ( 2 ⋅ π ⋅ f ⋅ t + φ ) ), selon
que l’on veut transmettre un 1 ou un 0. Faisons le choix arbitraire
d’avoir φ = 0 lorsque l’on transmet un 1 et φ = π lorsque l’on trans-
met un 0, le signal modulé aura l’allure donnée par la figure 12.
Les MMIC
Figure 9 – Le spectre du signal d’étalement.
Arrivés à ce point, nous devons nous poser une autre question :
comment transmettre efficacement des signaux à une fréquence
aussi élevée que 2,4 GHz quand on sait que la bande passante des
composants courants n’est que de quelques centaines de MHz ?
Cette prouesse n’est possible que depuis l’apparition des circuits
intégrés monolithiques hyperfréquence, appelés MMIC (prononcez
MIMIC) pour Monolithic Micro-Wave Integrated Circuits.
Comme leur nom ne l’indique pas, ce sont des circuits intégrés à
base d’arséniure de gallium (GaAs), un semi-conducteur aux carac-
téristiques électriques bien meilleures que celles du silicium habi-
tuellement utilisé, qui leur permettent de fonctionner à des fré-
quences comprises entre 300 MHz et 300 GHz et de réaliser toutes
les fonctions indispensables à une chaîne de transmission radio
(mixage de fréquence, amplification de puissance, amplification
faible bruit…).
Il est également possible de créer des MMIC à base de phosphore
d’indium (InP). Ce semi-conducteur aux caractéristiques électriques
encore meilleures que celles de l’arséniure de gallium permet de Figure 10 – Le spectre du signal transmis après étalement.
elektor 03-2012 15
vie pratique
16 03-2012 elektor
Microcontrollers
Nouveaux microcontrôleurs 8 bits avec logique configurable
intégrée dans des boîtiers de 6 à 20 broches
Digital Signal
Controllers
Analog
Memory
RF & Wireless
Grâce aux nouveaux microcontrôleurs 8 bits PIC10F/LF32X et PIC12/16F/ Outils de dévelOppement
LF150X de Microchip, il est possible d’ajouter des fonctionnalités, réduire la pOur un démarrage rapide
taille et diminuer les coûts et la consommation énergétique de vos systèmes
destinés à des produits peu coûteux ou jetables, intégrant des cellules logiques
configurables (CLC), un générateur de formes d’ondes complémentaires (CWG) et
un oscillateur à commande numérique (NCO).
Kit de développement lab
grâce aux cellules logiques configurables ClC, la configuration logicielle de logique piCdemtm - dm163045
combinatoire et séquentielle est possible, ce qui permet d’ajouter des fonctionnalités, de
diminuer le nombre de composants externes et de réduire la taille du code. par ailleurs,
le générateur de formes d’ondes complémentaires CWg permet une meilleure efficacité
en commutation pour de nombreux périphériques, tandis que l’oscillateur à commande
plateforme d‘évaluation « F1 »
numérique nCO autorise la commande de la fréquence linéaire et une meilleure piC16F193X - dm164130-1
résolution pour des applications du type générateur de signaux sonores et commande
de ballasts d’éclairage.
Pour tout savoir sur les microcontrôleurs PIC® à faible nombre de broche intégrant des
périphériques nouvelle génération, rendez-vous sur : www.microchip.com/get/eunew8bit
www.microchip.com
Le nom et le logo de Microchip ainsi que HI-TECH C, MPLAB et PIC sont des marques déposées de Microchip Technology Incorporated aux États-Unis et dans d’autres pays. mTouch, PICDEM, PICkit et REAL ICE sont des
marques commerciales de Microchip Technology Inc. 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.
©2011 Microchip Technology Inc. Tous droits réservés. DS30629A. ME293AFra/10.11
commuter par arduino et android
Rares sont les systèmes de commande à microcontrôleur dépour- et nous avons aussi développé un petit adaptateur spécialement
vus d’interface utilisateur : il y a forcément des boutons-poussoirs pour ce projet.
ou des encodeurs rotatifs, des LED et souvent un afficheur à cristaux Elektor a déjà publié des articles à propos du matériel à ajouter pour
liquides. Et pourquoi se priverait-on d’un écran tactile ? Ou d’une réaliser la fonction Bluetooth (en septembre 2004 et janvier 2010).
télécommande omnidirectionnelle ? Parce que ce serait du luxe, Un autre article de juin 2011 a décrit la programmation d’une carte
donc forcément cher ? Parce qu’on recule devant le travail pour réa- à microcontrôleur Android, et en décembre 2011, une commande
liser de tels circuits ? On aurait tort. Une belle interface avec télé- Android par la sortie audio. Nous vous recommandons la (re)lecture
commande n’est ni onéreuse ni difficile à programmer. Vous dispo- de ces articles.
sez probablement déjà d’un ordiphone ou smartphone, avec Blue-
tooth : ce sera votre base. Certaines cartes à microcontrôleur sont De nombreux lecteurs sont ferrés sur la programmation des micro-
équipées d’origine de la fonction Bluetooth ; pour d’autres, il existe contrôleurs, mais pas nécessairement sur celle d’un téléphone.
des adaptateurs ou shields. Nous avons utilisé pour cet article une Aussi aborderons nous brièvement la première, mais approfondi-
petite platine Arduino avec son adaptateur Bluetooth (environ 15 €) rons la programmation sous Android, depuis le téléchargement du
18 03-2012 elektor
commuter par arduino et android
VCC
Arduino Board
R2
VCC RE2.A
1 G5V-2 D2
560R
R1 16 1N4148
RE1 K4 K8
1 G5V-2 D1
560R
VCC LED2
K5 K1 8 8
AREF
logiciel jusqu’à la mise au point des différentes compo- RST
1 1
16 1N4148
T1 7 7
GND
R6
santes d’une interface. Avec ces informations, vous serez 3.3V
2 2
LED1
4k7
6 6
D13
3 3 5 5
en mesure ensuite de la personnaliser avec le micro 5V
4 4 T2 BC547B 4 4
D12
GND D11
contrôleur de votre choix. Le code source des applications GND
5 5 R5 3 3
D10
6 6 4k7 2 2
décrites ici, tant pour le microcontrôleur que pour le télé- Vin
R4 1 1
D9
BC547B D8
phone, est disponible au téléchargement [1]. 100R
R3
T3
560R
Matériel et logiciel du microcontrôleur LED3
BS170
On installe sur la platine Arduino un adaptateur Bluetooth. VCC
Il communique par l’interface UART. On peut, en BASCOM,
au moyen d’instructions telles que input et print, échanger S1
K3 K7
avec la platine Arduino des commandes et des résultats R8
8 8
1k D7
K6 K2
de mesure. R7 7 7
D6
1 1 6 6
Pour ce projet, nous avons donc conçu un adaptateur A0 D5
10k
2 2 5 5
A1 D4
simple, avec quelques LED et des relais sur les sorties A2
3 3
R9
4 4
D3
4 4 3 3
numériques, un FET sur la sortie MLI analogique, un A3
5 5
1k
2 2
D2
A4 D1
interrupteur pour une entrée numérique et une thermi- A5
6 6 RE2.B
8 9
RE1.B 1 1
D0
stance CTN comme capteur analogique. La figure 1 vous 4 13
PWM
NTC
6 11
et capteurs. NTC
120075 - 11
Explorons la structure du programme en BASCOM 6k8
(listage 1).
On vérifie dans une boucle si un caractère est arrivé. Si
l’Arduino reçoit un R, la sortie D11 s’active, la LED1 s’al- Figure 1. Le schéma de l’adaptateur avec ses LED et relais, une CTN, un
lume et le relais RE1 travaille. Si c’est un r qui entre, la bouton-poussoir, une sortie MLI avec FET et un témoin à LED.
LED1 s’éteint et RE1 est mis au repos. Il en va de même
pour la sortie D13 sur laquelle sont branchés la seconde
LED et le relais, sauf que ceux-ci réagissent aux commandes O et o. cette valeur est utilisée pour la commande de la sortie MLI. Le FET
Après réception avec Input d’un P, comme dans PWM, une valeur T3 peut débiter 0,5 A sous 60 V. La LED3 fournit une indication du
est attendue (suivie par un code de fin de ligne « r/n/ »), après quoi taux de modulation.
Figure 2.
1
Divers :
K1, K2 = embase à 6 broches Le tracé des pistes est arrangé pour que
les connecteurs s’adaptent au standard de
4
elektor 03-2012 19
commuter par arduino et android
Par ailleurs, au cours de chaque cycle, deux valeurs sont mesurées USB pour votre téléphone. Ceux-ci vous permettront ultérieure-
et imprimées. Il s’agit de celle du capteur NTC R9 sous la forme ment de télécharger des applications, à moins que vous ne les
T;adc(0);t et celle de l’entrée D7 à laquelle est relié le poussoir possédiez déjà sur votre PC si vous pratiquez l’échange par USB
S1 : G pour un 1 et g pour un 0. La communication se déroule à avec votre téléphone, de photos, de musique, etc.
9 600 bauds, après quoi une courte pause, ici entre 30 et 40 ms, 3. Téléchargez du même site le plugin ADT pour Eclipse et retenez le
est nécessaire. nom du répertoire où vous l’aurez placé.
4. Comme environnement de développement (IDE), on utilise Eclipse
Quels logiciels utiliser ? Classic 3.6.2 [4]. Le plugin le plus récent au moment d’écrire ces
Pour la programmation d’une application sur téléphone Android, on lignes est l’ADT12, incompatible avec Eclipse 3.7.
trouve des logiciels gratuits. 5. Après l’installation d’Eclipse, il faut installer les plugin Android en
1. On programme en langage Java, avec le kit de développement suivant Help|Install new software|Archive. Choisissez le fichier ZIP
Java JDK disponible sur le site d’Oracle [2]. de l’ADT et appelez-le Android plugin.
2. On trouve le kit de développement de logiciel SDK pour Android Passez ensuite dans Windows|Preferences et cherchez le fichier
sur un site [3] qui propose aussi de nombreuses informations sur extrait d’Android SDK (sous-répertoire de Tools).
la programmation, des fichiers d’aide et également des pilotes Allez alors dans Windows|Android SDK and AVD Manager et choi-
20 03-2012 elektor
commuter par arduino et android
Bluetoothinterface
Programmer une fonction qui, par Bluetooth, trouve un autre appa-
reil Bluetooth, prend contact avec lui puis échange des messages,
est une tâche ardue. Par chance, un exemple en est fourni avec l’An-
droid SDK. Malheureusement, il semble qu’il ne fonctionne pas avec
de nombreux appareils Bluetooth. On trouve sur la toile un rempla-
çant pour l’un des fichiers, BluetoothRfcommClient.java, qui
peut résoudre le problème après adaptation des déclarations [5] [6].
Vous pouvez alors utiliser le projet pour personnaliser l’interface.
Après le lancement d’Eclipse, on peut réaliser un nouveau projet à
l’aide de File|New|Android project| en se servant éventuellement
d’un exemple, mais dans ce cas, il existe déjà dans l’espace de tra-
vail un projet que nous voulons importer. C’est ce qu’on fait avec
File|Import..|Existing Projects in Workspace. N’oubliez pas de cocher
Copy projects into workspace, sinon vous en perdrez l’original. Entrez
alors dans le répertoire où vous avez placé le projet téléchargé Figure 3. La création des fichiers dans le projet
Bluetoothinterface. d’interface Bluetooth.
Dans l’arborescence de ce projet, vous allez découvrir que différents
fichiers .java et .xml sont déjà présents (fig. 3).
Ceux qui nous importent sont le programme principal Bluetooth-
Chat.java, l’interface pour le téléphone main.xml et la déclaration (Radiogroup orientation horizontal).
des variables dans l’interface strings.xml La valeur de l’entrée analogique s’affiche au moyen d’une barre de
progression horizontale (Style Horizontal) et un textview, ainsi que
Réalisation de l’interface sous forme graphique (image View).
D’un double-clic sur main.xml, on fait apparaître l’interface sur le La sortie MLI (PWM) avec le FET se commande par une glissière
téléphone (fig. 4). Il est aisé, au moyen des onglets sous l’inter- (SeekBar).
face, de passer rapidement de l’interface elle-même au code pro-
duit automatiquement.
La disposition horizontale prédéfinie de l’interface reprend, entre
autres, une liste des appareils Bluetooth détectés, un éditeur de
texte pour les sessions de chat et un bouton pour expédier du texte.
Pour en faciliter la mise en place, il sera souvent plus commode de
faire glisser directement un nouveau composant vers la fenêtre Out-
line. Si vous modifiez les dimensions en les faisant glisser sur l’écran
alors que le signe décimal du PC est la virgule plutôt que le point,
vous risquez d’obtenir un message d’erreur. Vous devrez alors, dans
le fichier main.xml remplacer la virgule par un point.
Lors de la création d’un bouton-poussoir ou d’un bouton radio, pour
définir la procédure à exécuter quand on cliquera dessus, donnez le
nom de cette procédure dans la propriété On click.
elektor 03-2012 21
commuter par arduino et android
Figure 5. Choisissez Connect a device –Secure, après quoi vous private CheckBox chkD13, chkD11,chkDIM;
pourrez sélectionner l’un des appareils déjà appariés. Vous (Si, dans le programme, les propriétés de la boîte
pouvez aussi rechercher des appareils déclarés détectables. Pour à cocher sont lues ou écrites, il faut que la
l’appariement (unique), vous devez fournir un code, 0000 ou 1234, variable soit déclarée))
par exemple.
chkD13 = (CheckBox) findViewById(R.id.chkD13);
(Lors de la procédure ‘onCreate’ le lien est
Nous n’avons encore rien programmé, pourtant nous pouvons déjà établi entre le nom dans main.xml (l’écran layout)
voir à quoi l’interface va ressembler. Il y a aussi une possibilité de et le nom dans le programme)
simulation sur le PC, avec un téléphone virtuel à l’écran, mais ceci
ne permet pas de simuler le Bluetooth. public void chkD13Click(View view){
Reliez à présent par un câble USB votre téléphone au PC et sélection- if (chkD13.isChecked()==true)
nez le dossier de projet correspondant, cliquez du bouton droit de sendMessage(“O”); else sendMessage(“o”);
la souris et choisissez Run As..|Android Application. L’application est }
compilée puis transférée sur votre téléphone.
Si l’émetteur Bluetooth est allumé, vous recevrez toutes les informa- La procédure elle-même est très simple. Selon qu’il y a ou non une
tions, qui s’afficheront sur votre téléphone. coche, c’est un O ou un o qui est envoyé pour que le microcontrô-
Essayez aussi, en communiquant avec une clé Bluetooth sur un PC, leur exécute l’instruction qui met dans l’état voulu la LED2 et le
de faire envoyer et recevoir des données via un programme de ter- relais 2.
minal ; dans ce programme, p. ex. Hyperterminal ou Advanced Serial
Le code pour envoyer la valeur qui correspond à la position de la
barre de progression, au moment où elle est libérée, est un peu plus
compliqué. Dès que vous commencez à le rédiger, l’aide Quick fix
vous signale les fautes et la plus grande partie du code sera produite
automatiquement. Elle ajoute aussi automatiquement à la déclara-
tion implements OnSeekBarChangeListener.
22 03-2012 elektor
commuter par arduino et android
elektor 03-2012 23
INITIATION
L’électronique devient-elle trop complexe pour vous ? Restez branché, cette série d’articles nous ramène
aux fondamentaux. En mesurant ici différentes grandeurs caractéristiques d’un transistor, vous verrez
qu’un simple multimètre analogique peut rendre votre transistor très bavard.
Le comportement de votre transistor est rant de base IB, le courant de collecteur IC, rants de base IB et de collecteur IC pourra
inscrit dans les courbes caractéristiques la tension base-émetteur UBE, et la tension être déduite de la valeur des tensions et des
données par sa fiche technique. Étudiez-les, collecteur-émetteur UCE. Si pour faire ces résistances présentes.
c’est instructif, mais quoi de plus formateur mesures on ne dispose que d’un seul mul-
que de mettre la main à la... patte ? L’inti- timètre, plutôt que de passer constam- Sur le montage de la figure 1, modifiez la
mité physique complète l’intimité théo- ment sur cet appareil du mode voltmètre tension d’entrée à l’aide du potentiomètre.
rique. Mesurez vous-même vos transistors, au mode ampèremètre, il est commode de Choisissez des valeurs intermédiaires entre
vous ne les comprendrez que mieux. ne l’utiliser qu’en voltmètre et de ne mesu- 0 V et 5 V. Pour chacune d’entre elles, mesu-
Les grandeurs intéressantes sont le cou- rer que des tensions ; l’intensité des cou- rez et notez les tensions U1 à U4. À partir
6
6 UCE
IC IC [V]
[mA] [mA]
4,5 5
5
4
4 4
3,5
3
3 3
2,5
2
3 3
1,5
1 3
3
0,5
0 0
0 200 400 600 UB 800 0 1 2 3 4 IB 5 0
[mV] [µA] 0 1 2 3 4 5 UIN 6
[V]
Figure 2. Le courant de base en fonction de Figure 3. L’intensité du courant de Figure 4. La tension de sortie comme
la tension base-émetteur. collecteur dépend du courant de base. fonction de la tension d’entrée.
24 03-2012 elektor
INITIATION
I=0 I C = 100mA
C
C C C C
N N N + 6V
B P B B I B = 1mA B
B P P
N + 0,6V N
N
E E E E
E
9 10 11
Connectez ensuite une seconde source de courant entre la base et l’émetteur en reliant la base au pôle plus de la source. Sa tension devra
être inférieure à 0,6 V pour que seul un faible courant traverse la diode base-émetteur. Un courant plus intense circule maintenant entre
l’émetteur et le collecteur. L’explication tient à l’extrême minceur de la base, une qualité essentielle au bon fonctionnement d’un transistor.
Les porteurs de charge de type N sont en effet soumis au fort champ électrique de la jonction base-collecteur dès qu’ils pénètrent dans
la base. La plupart de ces porteurs sont entraînés vers le collecteur. Seuls un pour cent de ceux quittant l’émetteur atteignent la base
(figure 11). Le courant de collecteur est donc quelque cent fois plus intense que le courant de base. Et vous comprenez maintenant pourquoi
ce courant est commandé par la tension base-émetteur ou, dit autrement, par le courant de base. Les électrons se déplacent de l’émetteur
vers le collecteur, mais en pratique on parle d’un courant allant du collecteur à l’émetteur pour rester en accord avec le sens conventionnel du
courant (du plus vers le moins).
de ces valeurs, calculez la valeur des deux du multimètre (10 MΩ) prélève-t-elle une rant de collecteur croît d’abord en même
courants et du gain ß. Le tableau montre les petite partie du courant de base lors de la temps que le courant de base, avant de
résultats obtenus avec un BC547B et trois mesure de U2. Les erreurs de mesure sont s’infléchir au moment d’atteindre 5 mA ;
multimètres numériques reliés à U1, U2 et normales. Une fois l’ensemble des sources le transistor est dit saturé lorsque le cou-
U3. La grandeur U4 a été calculée à partir de d’erreur et des tolérances (y compris celles rant de collecteur n’augmente plus. Si
U3, puis l’intensité des courants et le gain. des résistances) prises en compte, le gain les 5 mA ne sont pas atteints, c’est que la
maximal de notre transistor approcherait résistance de collecteur limite le courant à
Conseils pratiques 200. Essayez avec le vôtre, peut-être trou- 5 mA (5 V / 1 kΩ = 5 mA). Le transistor se
Comment procéder ? Il est pratique de verez-vous un gain supérieur. comporte comme un interrupteur « à peu
démarrer avec un courant de collecteur près » fermé : il subsiste entre collecteur et
de 0,1 mA (U4 = 0,1 V), puis de doubler ce Qu’elle soit faite avec un papier et un émetteur une tension résiduelle d’un peu
courant à chaque nouvelle mesure (U4 vau- crayon ou le tableur d’un PC, une représen- plus de 0,1 V.
dra donc successivement 0,1 V, 0,2 V, 0,4 V, tation graphique des données de mesure
0,8 V, etc), jusqu’à ce qu’il n’augmente facilite leur interprétation. Voici ce que Remarquez aussi que la pente est plus faible
plus. Vos mesures devraient suivre une loi nous avons obtenu : (et donc le gain d’autant moins élevé)
de variation intéressante : aux erreurs de La courbe de la figure 2 (IC en fonction de du côté des très petits courants. Le gain
mesure près, le courant de collecteur est UB) est similaire à la caractéristique expo- diminue en effet légèrement pour de très
multiplié par 2 chaque fois que le courant nentielle d’une diode au silicium : coude petits et très grands courants de collecteur,
de base double. L’accroissement corres- vers 0,6 V, puis montée en flèche (expo- effet amplifié par une insidieuse erreur de
pondant de la tension base-émetteur est nentielle) du courant. Que nous dit-elle mesure : lors de la mesure de U2 circule
constant : environ 20 mV. d’autre ? Par exemple que le courant de un petit courant de mesure qui, lorsque
base – et avec lui le courant de collecteur les intensités mesurées sont petites, fait
Le gain en courant est donné par le rap- – n’était pas encore mesurable lorsque la paraître le courant de base plus grand qu’il
port IC / IB. D’après le tableau, sa valeur tension de la base valait 400 mV. D’où l’on n’est en réalité.
maximale est d’environ 180. Or, en théo- retiendra que la plage utile de cette tension
rie, nous aurions dû atteindre un facteur de base se situe pour l’essentiel entre 0,6 V La figure 4 montre la tension de sortie (UCE)
d’amplification d’au moins 200. Comment et 0,7 V. en fonction de la tension d’entrée (U1 + U2)
expliquer cet écart ? Par la présence de La figure 3 (IC en fonction de UB) montre définie par la position du curseur du poten-
sources d’erreur. Ainsi la résistance interne qu’en première approximation le cou- tiomètre. L’interprétation est immédiate :
elektor 03-2012 25
INITIATION
+5V
1k
une tension d’entrée plus élevée entraîne logiques à aiguille resteront votre meilleur
une tension de sortie plus petite. La raison oeil pour lire rapidement un résultat, sur-
en est tout aussi claire : lorsque le courant tout lorsqu’il s’agit de tester des compo-
220k
de collecteur augmente, la chute de ten- sants ou de localiser des pannes.
sion aux bornes de la résistance de collec-
teur s’accroît. V = 100...400 Les multimètres analogiques simples pos-
sèdent en général un ou plusieurs calibres
Contre-réaction pour la mesure des résistances. Des mains
Comment dimensionner son montage exercées sauront les utiliser aussi pour
lorsque le gain en courant n’est pas connu Figure 5. Polarisation mesurer transistors, diodes ou autres
avec précision ? Rien de plus simple dans le par contre-réaction. condensateurs. Les piles de ces appareils
cas d’un étage de commutation. Il ne sont souvent utilisées que
suffit de choisir un courant de base par la fonction ohmmètre.
pour lequel le circuit fonctionnera Le principe de la mesure
encore avec le plus petit gain en de résistance repose sur la
courant possible. Dans le doute, mesure d’un courant à ten-
augmentez le courant de base : le sion constante, d’où il résulte
Rm
circuit sera adapté à tous les tran- que l’échelle d’un ohmmètre
sistors d’un type donné. A analogique n’est pas linéaire.
Pour compenser l’usure de la
L’affaire est tout autre lorsqu’il pile, la déviation maximale
s’agit d’amplifier une grandeur de l’aiguille, qui correspond à
analogique. Un courant de base une résistance nulle, doit être
trop fort nous jouerait ici de mau- alignée sur le zéro de l’échelle
vais tours, car le transistor ne tar- Figure 6. Schéma de principe graduée à l’aide du potentio-
d’un ohmmètre analogique.
derait pas à entrer en régime de mètre de tarage de l’appareil
saturation. L’idéal, le plus souvent, (figure 6). L’autre extrémité
est un courant de collecteur d’in- de l’échelle graduée corres-
tensité moyenne, qui pourra alors pond à des grandeurs infinies.
15mA
être augmentée ou diminuée.
70 Ω
Pour obtenir une telle marge de En fonction ohmmètre, le
10mA
manœuvre même avec des tran- circuit de mesure interne
sistors aux caractéristiques diffé- d’un multimètre analogique
5mA
rentes, on emploie une configura- 640 Ω inverse la polarité des pointes
5800 Ω
tion appelée la contre-réaction. On 0
de touche par rapport à la
l’obtient en reliant la résistance de 0 200mV 400mV 600mV 800mV polarité indiquée pour les
base non pas à l’alimentation, mais modes voltmètre ou ampère-
au collecteur (figure 5). Un tran- mètre : le pôle plus corres-
sistor caractérisé par un gain élevé Figure 7. Résistance en continu d’une diode au silicium pond donc à la borne moins
produira alors une chute de tension avec différents courants de mesure. de l’appareil. Souvenez-vous
plus grande aux bornes de la résis- de cette inversion lorsque
tance de collecteur. La tension de vous utilisez un tel ohmmètre
collecteur chutera, et avec elle le pour vérifier des diodes ou des
courant de base. Inversement, les transistors.
transistors à gain faible seront tra-
versés par un courant de base de Lorsque vous vérifiez des
plus forte intensité. Au final, cette diodes, gardez aussi à l’esprit
A
stratégie convient pour tous les qu’il est impossible d’attri-
transistors. buer à une jonction une valeur
1. B-E 2. C-B 3. C-E 4. C-E de résistance constante. La
La fonction ohmmètre valeur indiquée par l’appareil
S’ils ne font pas jeu égal avec les de mesure dépend du courant
multimètres numériques en termes de mesure, et donc du calibre
de précision, les instruments ana- Figure 8. Des mesures sous toutes les coutures. sélectionné. Être limité par les
26 03-2012 elektor
INITIATION
Testeur de transistor
Un microcontrôleur doté d’un convertisseur A/N peut faire un excellent appareil de mesure. Prenons l’exemple d’un testeur de transistor.
Dans ce cas, la mission du microcontrôleur est simple : déterminer le gain en courant. Un ATtiny13 saura s’en acquitter. Le résultat peut être
transmis à un PC par liaison série puis affiché sur un terminal.
Le schéma de principe de la figure 12 est simple. Seule la tension de collecteur est mesurée. La présence d’une contre-réaction permet de
mesurer des gains en courant très différents les uns des autres.
‚Transistor tester
$regfile = „attiny13.dat“ 1k
RXD
RS232
$crystal = 1200000 GND PC
$hwstack = 8 +5V
$swstack = 4 ' 16
$framesize = 4
VCC PB2 PB1 PB0
U1
1k
ATtiny13
Dim UC As Word
Dim U1 As Word RES PB3 PB4 GND
Dim U2 As Word
100k
Dim I1 As Word 100n
U2 NPN
Dim I2 As Word
Dim V As Word
12
Config Adc = Single , Prescaler = Auto
Start Adc
RXD
1k
Open „comb.1:9600,8,n,1,INVERTED“ For Output As #1 RS232
GND PC
+5V
Do
UC = Getadc(3) ' PB3=ADC3 -> UC = 0..1023
U1 = 51150 - UC
RES PB3 PB4 GND
I1 = U1 ' 1 k
I2 = U2 / 100 ' 100 k
V = I1 / I2
Print #1 , V ' --> RXD
100n
Waitms 1000 PNP
100k
Loop
End 13
Le programme calcule les chutes de tension U1 et U2 aux bornes des résistances de collecteur et de base. Le courant de collecteur I1 et le
courant de base I2 sont déduits de ces valeurs. Le gain en courant est donné par I1 / I2. Les variables ont été déclarées comme entiers de type
Word pour que le programme puisse s’exécuter dans la petite mémoire de l’ATtiny. Il ne peut se produire ni débordement ni perte de préci-
sion due à des résultats intermédiaires trop petits.
Ce même programme permet également de mesurer des transistors de type PNP, mais vous devrez les connecter selon le schéma de la
figure 13.
elektor 03-2012 27
INITIATION
2k2
et vous constaterez que la position de l’ai- transistor ? En voici un doté d’une résistance de collec-
guille ne change qu’à peine. Ce qui s’ex- teur de 2,2 kΩ et d’une résistance de base de 470 kΩ
plique par la caractéristique exponentielle reliée au collecteur ; la tension de sortie est notée UCE. 5V
des diodes. Chaque calibre indiquera donc
470k
une résistance différente ; la déviation de
l’aiguille sera en revanche similaire puisque 1) Vous mesurez UCE = 2,8 V. Quel est le gain ? U CE
28 03-2012 elektor
Bientôt!
Le défi
Énergie Verte
RL78
Renesas a fait l’impossible pour réduire au strict
minimum la consommation des microcontrôleurs
de sa famille RL78, qui offrent jusqu’à 41 DMIPS
(millions d’instructions par seconde) à 32 MHz, au
sein d’un remarquable écosystème de matériel, de
logiciel et de fournisseurs tiers. Ces processeurs
polyvalents sont au cœur d’une plateforme à faible consommation,
idéale pour les applications embarquées à 8 ou 16 bits les plus
exigeantes.
Renesas s’associe à Circuit Cellar et à Elektor pour vous inviter dans
l’univers de l’énergie verte : autour du contrôleur RL78 et de la chaîne
d’outils IAR, concevez une application remarquable par sa faible
consommation. Ne laissez pas échapper cette chance de remporter
un des lots d’une valeur totale de 20.000$ en espèces!
www.circuitcellar.com/RenesasRL78Challenge
test & mesure
Indicateur de charge
pour
génératrice de secours
Alimentation domestique
sans coupure
Aucun réseau électrique n’est à l’abri d’un aléa météorologique.
Et aucune génératrice de secours n’est à l’abri d’une surcharge.
Grâce à cet indicateur de charge, votre foyer ou votre résidence
secondaire sera toujours correctement alimenté en électricité.
Chuck Hansen (États-Unis) ratrice, mais il est situé au sous-sol, et je voulais connaître depuis
l’étage la charge absorbée pour mieux estimer le moment de ravi-
tailler la génératrice.
Au nord-est des États-Unis, où j’habite, des tempêtes de pluie ver-
glaçante et des cyclones entraînent de graves pannes de courant. Fonctionnement
J’ai donc acheté une génératrice de secours portative, de 2500 W Le tableau de transfert peut être câblé pour la distribution améri-
et d’une capacité de surtension de 2800 W. Elle peut alimenter four, caine en monophasé 3 fils (120-0-120 VCA), ou pour l’alimentation
réfrigérateur, chauffe-eau, ainsi que prises et éclairages de plusieurs de la génératrice monophasée (120 VAC) en branchant en parallèle
pièces. Mon électricien avait installé un tableau secondaire de trans- les deux barres omnibus. Les indicateurs du tableau de transfert
fert d’alimentation de 60 A pouvant relier nos charges au réseau sont hors service lorsque le commutateur de transfert est relié au
public ou à une source CA additionnelle. Ce tableau possède huit tableau électrique principal.
disjoncteurs, et deux indicateurs de charge gradués de 0 à 2500 W Pour garantir la compatibilité avec les éléments de réglage élec-
qui auraient permis de mesurer la puissance fournie par la géné- tronique de nos appareils, j’ai choisi une génératrice qui associe
une génératrice à aimant permanent haute tension à un onduleur
à signal sinusoïdal monophasé. Elle réduit son nombre de tr/min
en mode « économie », et repasse à plein régime lorsque la charge
l’exige.
Pour relier la sortie de la génératrice à la maison, je me suis servi
d’un câble d’alimentation de 4,6 m et 8 mm 2, ainsi que d’un
connecteur quart-de-tour utilisé pour alimenter un camping-car
en 30 A monophasé.
J’ai acheté sur eBay un transformateur de courant (TC) de rapport
150/1, homologué UL et CE, donc conforme à nos codes locaux.
Mon électricien a passé à travers le noyau du TC les deux câbles
bleus qui alimentent les huit disjoncteurs du tableau de transfert, et
ce de façon additive (figure 1). L’intensité du courant secondaire est
égale à celle du primaire divisée par le rapport de transformation, ici
150. La puissance nominale du TC est de 5 VA. Il peut donc produire
sans saturation une tension secondaire efficace théorique d’environ
31 Veff (charge de 200 Ω) avec la surcharge admissible nominale de
23,33 A de la génératrice. C’est plus que suffisant pour l’indicateur
Figure 1. Logement du TC dans le tableau de transfert. de charge distant.
30 03-2012 elektor
test & mesure
redresseur/limiteur de surtension
R1 Rcal
100n
1R50
D2 D4
1W mA
4x STPS2150 1N5907
Publicité
LabWorX 1
Mastering the I²C Bus
Nouveau livre d’Elektor en anglais
Le livre « Mastering the I²C Bus » est le premier opus de la nouvelle collection LabWorX.
Il vous emmène explorer le bus I²C (Inter Integrated Circuit) et ses applications.
Outre le protocole du bus (événements, adressage, synchronisation…), l’auteur
s’intéresse également aux applications pratiques et à la conception d’un système entier
à bus I²C. En effet il propose un pilote I²C en pseudo-code, c’est-à-dire dans un langage
de programmation imaginaire que tout programmeur pourra transposer dans son langage
préféré, ainsi que des F.A.Q. sur le matériel et le protocole.
NO
UV
Les catégories de puces compatibles I²C les plus courantes sont traitées en détail EA
(entrées/sorties parallèles, contrôleurs LED & LCD, convertisseurs A/N & N/A, mémoires U
EEPROM…).
Grâce aux seize mini-circuits (labsticks) proposés en complément du livre, le développe- 248 pages
ment d’un prototype sera rapide. La « sonde I²C » permet notamment de commander diffé- Format 17 x 23,5 cm
rents composants I²C depuis un PC (via un port USB). Tous les exemples de programme ISBN 978-0-905705-98-9
et les logiciels pour PC nécessaires peuvent être téléchargés de la page internet réservée 34,50 €
à LabWorX.
www.elektor.fr/e-choppe
elektor 03-2012 31
test & mesure
I1
240V
60Hz vers le tableau secondaire/ I1
I2 commutateurs de transfert 230V vers le tableau secondaire/
50Hz commutateurs de transfert
I2
110736 - 12
110736 - 13
32 03-2012 elektor
Software defined radio
Martin Ossmann
Les contrôleurs
AVR d’Atmel sont très
demandés, notamment parce que
leurs outils de développement sont gratuits.
Ces processeurs conviennent aussi pour le traitement
du signal numérique, nous allons le voir dans cette série d’articles.
Même les débutants suivront sans peine, l’information de base y est
expliquée simplement. Fidèle à la tradition elektorienne, l’expérimental sera au cœur de
l’action. Pour le matériel à construire soi-même, Elektor pense à votre confort et vous en
propose une platine. Quant au logiciel, comme toujours, le code source est disponible sur
notre site. En avant pour un générateur de signaux et bien davantage !
34 03-2012 elektor
Software defined radio
AVR
Au cours de cette nouvelle série d’articles, nous ne nous limite-
(1)
rons pas à produire des signaux. C’est certes le rôle de la première
platine présentée ici, équipée d’un ATtiny2313, d’un oscillateur à
20 MHz et d’un convertisseur numérique/analogique (N/A) à réseau
R-2R ; mais nous irons aussi à la chasse aux signaux radio, avec une
deuxième platine, pour former un récepteur numérique SDR, une
radio logicielle. Sur cette première carte, une interface RS232, un
afficheur à cristaux liquides ainsi qu’un VCXO à 20 MHz, à coupler
précis pour SDR plus tard à un standard de référence. La troisième platine sera une
antenne ferrite active. Tout le logiciel a été rédigé avec le compi-
lateur WINAVR-GCC en AVR-Studio. Le code source en C ainsi que
les réglages des fusibles et le code hexadécimal sont sur le site
d’Elektor.
La série se veut résolument expérimentale, avec des générateurs de
sinusoïdes et d’ondes carrées, un voltmètre RMS, des recherches
sur la modulation en fréquence, en amplitude et en phase, sur les
filtres FIR et IIR, des expériences de transmission de données sans fil
autant que sur la réception des signaux de DCF77, ceux des stations
météo en RTTY, de différents émetteurs de la BBC en grandes ondes
et encore bien d’autres explorations. Suivez le guide !
Commençons par un conseil : pour certaines de ces expériences, il
faudra proscrire tout éclairage à lampes économiques genre fluo-
compacte, dont l’alimentation à découpage perturbe la réception
en grandes ondes. Alors pendant vos sessions de radio, éteignez-les
et éclairez-vous à la bougie !
elektor 03-2012 35
Software defined radio
K7
VCC
2 1
4 3
6 5
VCC
ISP6
4 3
JP2
6 5 JP1, on peut choisir une alimentation
CLK-SEL 8 7
20.000MHz par l’USB quand l’appareil en a besoin,
10 9
R18 ce qui épargne un adaptateur secteur
20k
K2 ISP R17 supplémentaire.
EXT-CLK
10k
VCC C1 R16 des composants conventionnels sur la
20k
R15 platine (fig. 2) est facile. En plus du géné-
100n
20 rateur d’horloge, il convient d’installer
RESET
MISO
MOSI
SCK
EXT
10k
VCC
5 R14 aussi le processeur dans un support.
+5VUSB PA0(XTAL1)
4 IC1 20k Attention à l’orientation correcte des
PA1(XTAL2) R13
1
PA2(RESET)
ATTINY2313
connecteurs de programmation K6 et
10k
+5V 19
PB7(SCL/PCINT7) K7. Lors de la programmation, qui peut
BOB-FT232R
TX 2 18 R12
PD0(RXD) PB6(DO/PCINT6)
RX 3 17 20k s’effectuer p. ex. à l’aide du petit USB-
PD1(TXD) PB5(DI/PCINT5) R11
GND 6
PD2(CKOUT/INT0) PB4(OC1B/PCINT4)
16 AVR-Prog [2] d’Elektor, n’oubliez pas les
10k
7 15
PD3(INT1) PB3(OC1A/PCINT3) fusibles de bits de configuration. Dans ce
8 14 R10
9
PD4(T0) PB2(OC0A/PCINT2)
13 20k but, les fusibles et les options du compi-
PD5(OC0B) PB1(AIN1/PCINT1) R9
11
PD6(ICP) PB0(AIN0/PCINT0)
12 lateur apparaissent dans le code source.
10k
D1
PWD-SEL
1k
10k
20k
1k
10n
l’échantillon (fig. 3). Nous appellerons
RESET PWM-LF SQUARE SINE
S[k] l’échantillon de rang k. Si p[k] est
100180 - 11 la phase correspondante, nous aurons :
S[k] = sin(p[k])
36 03-2012 elektor
Software defined radio
Divers :
S1 = bouton poussoir (micro)
K4, K5 = embase à 2 picots (2,54 mm)
JP3 = embase à 2 picots (2,54 mm)
avec cavalier
JP1, JP2 = embase à 3 picots (2,54 mm) Figure 2. La platine est disponible en kit
avec cavalier avec tous les composants.
r-Bits/sample
sin(x)
X
n-Bits/sample
m-Bits
Figure 3. L’échantillonnage d’un signal sinusoïdal. Figure 4. Le schéma du générateur de sinus DDS.
elektor 03-2012 37
Software defined radio
Listing 1
ISR(TIMER1_OVF_vect) {
PORTD |= _BV(4) ; // start signalize timing
PORTB=pgm_read_byte( SIN8+(DDSp>>24)) ; // fetch and output sine-sample
DDSp += DDSd ; // advance DDS phase DDSp by DDSd
PORTD &= ~ _BV(4) ; // end signalize timing
}
Listing 2
loop:
add DDSphase0,DDSdelta0 // 1 LSB of 32 bit DDS adder
adc DDSphase1,DDSdelta1 // 1
adc DDSphase2,DDSdelta2 // 1
adc ZL ,DDSdelta3 // 1 MSB is in ZL as pointer
lpm R0,Z // 3 access sine-table
out PORTB,R0 // 1 out to R-2R DAC at PORTB
brtc loop // 2 (1) loop until T-flag set by interrupt routine
// 10 cycles in total for one loop
38 03-2012 elektor
Software defined radio
Publicité
elektor 03-2012 39
Software defined radio
Listing 3
uint32_t DDS24 ; // DDDS phase, 24 bits used
volatile uint32_t dDDS24 ; // delta for DDS
uint16_t TOP1 ; // integer part of divider for PWM
ISR(TIMER1_OVF_vect) {
PORTD |= _BV(4) ;
DDS24 += dDDS24 ; // advance DDS phase
if (DDS24 & 0x1000000UL ) { // check bit 24 for overflow
ICR1 =TOP1 ; // on overflow PWM width = TOP1+1
}
else {
ICR1 =TOP1-1 ; // else PWM width = TOP1
} ;
DDS24 &=0xffffffUL ; // make DDS24 24 bits again
PORTD &= ~ _BV(4) ;
}
C’est pourquoi notre générateur dispose aussi d’une entrée exté- 10,333333… nous choisirons le diviseur 11 avec un rapport de « pro-
rieure pour une horloge à 20 MHz. Dans un prochain article, je décri- babilité » p=0,33333…, et dans les autres cas N=10.
rai une horloge qui, à partir d’un émetteur étalon, délivrera une Mais comment réaliser cela en pratique ? Il nous faudrait une procé-
référence ultra précise de 20 MHz, pour produire des fréquences dure qui dise quand il faut diviser par N et quand par N+1.
(sinus) d’une grande précision.
C’est ici que le générateur DDS à m bits nous vient en aide. Avec
Accord de circuits résonants un m fort grand, nous pourrons effectuer des opérations très pré-
Dans la suite de cette série d’articles, nous allons, toujours à l’aide cises. Nous devons pour cela accéder au report (ou dépassement)
d’un microcontrôleur AVR, recevoir et exploiter des transmissions de l’accumulateur de phase. Le rapport p sous lequel l’accumulateur
de données dans la gamme des grandes ondes : DCF à 77,5 kHz, de phase d’un DDS à m bits génère un report est exactement de
France Inter à 162 kHz, BBC à 198 kHz, etc. La plupart du temps,
on utilise une antenne ferrite. Pour l’accorder, on peut fort bien p = DDSd / 2m
mettre à profit notre générateur de sinus. On lui fait alimenter le
circuit de la figure 8 et puis on règle le condensateur variable pour et il est possible de le régler avec grande précision par la variable
atteindre le maximum. DDSd. Nous pouvons ainsi utiliser le report pour inciter le tempori-
La différence de phase entre tension de sortie Uout et tension d’entrée sateur à diviser soit par N, soit par N+1.
Uin peut nous servir à déterminer si la fréquence de résonance du cir- Avec p.ex. une horloge à 20 MHz pour produire un signal à la fré-
cuit oscillant est plus haute ou plus basse que la fréquence du signal quence de 77,5 kHz, il faudra diviser par
sinusoïdal qui lui est appliqué. Si la phase de Uout est en avance sur
Uin, c’est que la fréquence du signal est plus basse que celle de réso- 20 000 / 77,5 = 258,0645161…
nance du circuit oscillant. Inversement, si Uout est en retard sur Uin, la
fréquence du signal est plus haute que celle de résonance du circuit Cela signifie qu’il faut basculer entre N=258 et N=259 et cela dans
oscillant. En cas de résonance, Uin et Uout sont en phase. le rapport p = 0,0645161… Avec un DDS à 24 bits, on obtient
Dans le circuit de l’exemple, les valeurs des composants sont don- DDSd = p x 224 = 1 082 401. Le listage 3 est une routine de service
nées pour une résonance à 125 kHz. Comme bobine L1, c’est une d’interruption du temporisateur qui illustre cette idée.
self à noyau en pot qui est employée. Nous utiliserons ce circuit
plus tard pour produire des signaux de test à 125 kHz. Le conden- Le signal rectangulaire résultant saute de part et d’autre de l’os-
sateur variable sert à régler la résonance du circuit oscillant sur cillation idéale, mais la moyenne correspond exactement à ce que
125 kHz. Comme signal d’entrée, on peut aussi bien recourir à nous voulions.
l’onde de notre convertisseur N/A via K3 qu’au signal rectangu- Le temps d’exécution de la routine complète, latence comprise,
laire de la sortie MLI K4. est d’environ 6 µs, nous pouvons donc produire de cette manière
des fréquences jusqu’à 160 kHz. Une routine écrite en assem-
Onde carrée MLI avec diviseur fractionnaire bleur nous permettrait d’aller encore plus haut. Comme le géné-
Venons-en à une autre application du principe DDS. Avec un tem- rateur d’ondes rectangulaires est d’un usage simple, il nous sera
porisateur à sortie MLI qui produit un signal rectangulaire, on ne aisé de le commander par un terminal. Le code source [3] s’appelle
peut en principe obtenir qu’une fréquence qui résulte de la divi- EXP-SquareGenerator-DDS-T1INT-V01.c.
sion de la première par un nombre entier. Si N est le diviseur et fCLK
la fréquence d’horloge, la nouvelle fréquence engendrée sera f= Le principe du diviseur fractionnaire connaît encore bien d’autres
fCLK/N. Mais si nous faisons varier alternativement le diviseur, par applications. Il permet entre autres de dériver de l’horloge d’un
exemple entre N et N+1, nous produirons aussi des fréquences inter- processeur un taux d’échantillonnage quelconque et même de le
médiaires. Supposons un diviseur qui alterne N et N+1, on divisera changer ensuite, si nécessaire, à l’aide d’une boucle à phase asser-
finalement en moyenne par N+0,5. Et si nous voulons diviser par vie (PLL).
40 03-2012 elektor
Software defined radio
Uin R1 Uout
100k
L1
C2
C1
R2
10k 1n5 500p
1mH
Le générateur FM
En soi le générateur d’ondes rectangulaires n’est peut-être pas telle-
ment intéressant, mais comme le processeur n’est pas encore saturé
par la gestion de la MLI, il lui reste du temps pour faire varier dyna-
miquement la fréquence. Et voilà notre générateur à modulation Figure 8. L’accord d’un circuit oscillant.
de fréquence !
Le service météorologique fédéral allemand [4] émet sur la fré-
quence de 147,3 kHz en modulation par déplacement de fréquence
(FSK Frequency-Shift Keying) des bulletins météo, mais à destination
de radiotélétypes (RTTY, téléscripteur radio). Nous construirons plus
tard un récepteur pour ces services radio. Pour essayer et accorder
ce récepteur, un signal de test est bien utile. C’est facile à faire avec
le diviseur fractionnaire et la MLI. En se guidant sur le débit binaire
des données, on effectue des sauts de fréquence.
Programmons d’abord notre émetteur de test pour une fréquence
porteuse de f = 125 kHz. Pour fabriquer un sinus avec un signal rec-
tangulaire, utilisons le circuit de la figure 8. Nous connaissons déjà la
routine d’interruption pour le générateur d’ondes carrées fraction-
naires. La routine supplémentaire SendBit (listage 4) nous servira à
émettre chacun des bits.
elektor 03-2012 41
info & composants
TPD2EUSB30ADRTR NCP380LSN05AAT1G
Cette puce est parfaite pour l’écrêtage sur les lignes de données. Pour la limitation de courant, j’ai trouvé cette puce dont le prix
Hormis son nom impossible à retenir par cœur, est de moitié inférieur à celui de produits comparables ! Le dessin
elle n’a rien de particulier et même son prix est reprend le circuit pour vos hôtes USB. Il m’a semblé intéressant d’en
modéré. Si, il y a sa taille, bien sûr : à peine faire l’essai du côté secondaire, pour le cas où, selon la loi de Mur-
1 x 1 mm ! Même sur une petite platine, elle phy, il lui arriverait de consommer trop de courant dans le projet
s’installera sans difficulté entre deux concerné. Si un circuit dispose de la double possibilité de s’alimen-
lignes de données. Le fabri- ter par l’USB et sur une source externe, la puce se déconnecte dès
cant affirme qu’elle peut que la tension de sortie dépasse de 100 mV celle d’entrée. Pour
s’utiliser sur des lignes l’USB, il est pratique d’utiliser la variante dont la limite de 500 mA
TPD2EUSB30ADRTR différentielles à haute est intégrée. Autre avantage : cette puce offre également une pro-
fréquence comme des tection contre la DES. Et ce n’est pas tout, elle démarre et s’arrête
D-
USB3.0, SATA, PCIe, etc. en douceur, ce qui est spécialement utile au moment de la
1 mm
D– D+ GND
D’autres puces en font déconnexion. La résistance interne en conduction n’est que de
D+
sans doute autant, mais 70 mΩ, alors que sur les fusibles, elle peut se situer dix fois plus
GND 1 mm elles déforment davan- haut. En condition de surchauffe, la puce est automatiquement
tage le signal. Intéres- débranchée, même si la tension d’entrée est trop basse. Toutes ces
sant aussi : cet intégré se situations d’erreur sont signalées par une broche drapeau. Ce genre
passe de Vbus. C’est pratique, puisque sur certaines applications, de puces peut se révéler très utile.
il n’y a pas de Vbus disponible. Avec une tension de claquage aussi
USB Data
basse que 4,5 V, les appareils sous 3,3 V sont étroitement proté- USB INPUT
USB Port
gés. En revanche, cette puce n’est pas utilisable sur des lignes qui 5V
Rfault
IN OUT VBUS
D+
100k
NCP380
acheminent des tensions plus élevées que 3,3 V ; celles-ci se font FLAG
1u
D-
GND
FLAG
physiquement les lignes. En tout cas, vos lignes seront protégées OUT 1 5 IN IN 1 6 OUT
contre la DES jusqu’à plus et moins 8 kV et le signal n’en subira GND 2 GND 2 5 ILIM *
qu’une influence minimale, de quoi éviter pas mal de soucis. FLAG 3 4 EN EN 3 4 FLAG
TSOP-5 TSOP-6
42 03-2012 elektor
Le cavalier à trois pattes
de l’AndroPOD
À première vue, il en a bien quatre, mais voyons voir…
Position DEBUG
Antoine Authier (Elektor Lab)
L’AndroPOD est notre interface de commande d’un téléphone solution… cavalière et surtout dangereuse, car, avec le grand
Android pour communiquer avec d’autres circuits. Une de ses nombre de configurations possibles, une mauvaise manipu-
caractéristiques remarquables est la variété des sources d’ali- lation par manque de concentration mènerait tôt ou tard au
mentation possibles : USB device, UART, module de débogage, pire… La solution est venue quand, apitoyé par le labyrinthe
module RS-485. Une telle flexibilité implique un défi pour le de cavaliers dans lequel il me voyait perdu, mon collègue Ton
concepteur : comment éviter tout conflit d’alimentation sans m’a suggéré ingénument : « c’est pas un peu exagéré, quand
recourir à de coûteux composants mécaniques ? D’ailleurs après même ? ». Sans attendre ma réponse, il ajoutait : « et pourquoi
un long butinage des catalogues de distributeurs et après avoir pas les mettre en étoile… ? »
discuté avec mes amis chinois, force a été de constater qu’il Eureka. Cool. Génial. Élémentaire, mon cher Ton ! En effet, cette
n’est pas facile, voire impossible, de trouver un mignon petit configuration, a priori un peu exotique, interdit les connexions
interrupteur à glissière à quatre positions qui résisterait à disons multiples et n’autorise jamais la sélection que d’une seule
500 mA, voire 1 A. source à la fois pour alimenter le montage.
Ces questions m’ont incité à réfléchir encore plus que d’habi-
tude lors de la conception du circuit imprimé, afin que le pro- Amusez-vous bien avec l’AndroPOD.
jet reste pratique, facile à utiliser et accessible à tous. La multi- Antoine (merci Ton !)
plication des cavaliers, composants certes robustes, serait une (120076)
LABOratoire
elektor 03-2012 43
Alim. découp. ch. filt. DC*
Raymond Vermeulen (Labo Elektor) une large plage de fréquences. Ce qui n’arrange rien quand on
sait que les perturbations causées par les hautes fréquences du
Ah les convertisseurs DC/DC, souvent utiles, parfois indispen- bruit de l’alimentation sont plus fortes que celles que causent
sables. Et quel rendement la plupart du temps ! Comme je suis les composantes à basse fréquence.
les traces des vrais pros, j’en utilise de plus en plus. Pour élargir le spectre filtré, on monte en parallèle plusieurs
L’autre jour, je travaillais sur un circuit alimenté par piles pour condensateurs de valeurs différentes. Dans notre cas, l’unique
lequel il m’en fallait un très efficace. J’étais le nez dans le guidon, condensateur de 10 µF gagnerait à se voir adjoindre en paral-
en train de calculer le condensateur réservoir, quand je me suis lèle un modèle de 100 nF, doté de préférence de bonnes carac-
souvenu de mes cours téristiques en HF, p.
sur les filtres passifs ex. un condensateur
et les alimentations à 0 céramique X5R à
découpage. faible résistance série :
- 10
Contrairement à ainsi, l’atténuation des
celle des régulateurs - 20 ondulations porte sur
linéaires de la véné- l’ensemble du spectre
- 30
rable série LM78xx, susceptible de pertur-
IMP [dB]
Histoire(s) de prises
LABOratoire
Pour alimenter sa rubrique Rétronique, mon collègue Jan Bui- Passons en revue cette robuste connectique d’un autre âge.
ting se jette sur toutes sortes de bidules décatis qu’il chine le Y reconnaissez-vous quelque chose de familier ?
dimanche matin aux puces, avec un penchant pour les vieilles
radios Philips. Récemment, Jan m’a exhibé sa collection de prises La plupart de ces prises ou embases sont polarisées, et munies
anciennes. Trop jeune pour avoir été témoin de leur utilisation, d’un détrompeur mécanique contre les mauvais branchements.
44 03-2012 elektor
1. Prise pour haut-parleurs de radio des années 50 avec contact 8. Prise avec contact central pour antenne VHF sur câble plat
central empêchant le branchement dans une prise secteur 240 Ω.
220 V. Voir aussi 4 ci-dessous.
9. Comme 8, mais avec des contacts arrondis et sans contact
2. Prise solide à trois contacts avec verrouillage. Dimensionnée central.
pour les forts courants ou les tensions élevées. Utilisée pour des
haut-parleurs, éventuellement aussi sous une tension de 100 V. 10. Prise pour antenne TV VHF/UHF sur câble plat 240 Ω. Remar-
quez les contacts asymétriques. Utilisation exacte inconnue.
3. Adaptateur Philips DIN vers IEC à 5 voies, pour tourne-disque,
doté de cinq contacts plaqués argent (nettoyés avec une brosse 11. Comme 8. Polarisé (comment ?). Sûrement pour antenne ;
en fibre de verre). Objet rare. utilisation exacte inconnue.
elektor 03-2012 45
J’ai donc décidé de les souder au pif, en espérant secrètement que j’ai pu rencontrer sur les spécimens trouvés au labo :
que la chance serait de mon côté. Une chance sur deux. Confor- bandes, points, rectangles et flèches en tous genres, parfois
mément à la loi de Murphy, évidemment, mes deux LED étaient combinés.
dans le mauvais sens. Je les dessoude puis les ressoude dans
le bon sens, vaguement contrarié de ne pas maîtriser tous les Ma conclusion :
détails de mon circuit. L’affaire aurait pu en rester là si je n’avais n’ hésitez pas à jeter un coup d’œil attentif à la fiche technique
pas fini par remarquer, dans la fiche technique de ces LED, qu’un de vos composants ou utilisez un petit montage de test. C’est
marquage est bel et bien prévu (je m’en doutais), même sur des l’évidence même pour les pros, mais le conseil ne sera peut-être
composants en boîtier 0603. pas inutile pour les autres. Et il les réconciliera éventuellement
avec ces diables de petits composants.
Un symbole quelconque au dos de la LED en repère l’anode ou (120145 - trad. Kévin PETIT)
la cathode. Personne ne se préoccupe d’un standard et chaque
fabricant y va de son petit dessin. Voyez la variété de repères
[2], reliés à un smartphone dans le rôle du troisième larron. À trentaine de mètres disponibles. Notre séance a été filmée [4].
l’un des deux nœuds, nous avons connecté une simple photo- Le bus Elektor repasse le mois prochain. Soyez au rendez-vous.
résistance dont les valeurs, acheminées par le câble, étaient affi-
chées sur l’écran du téléphone Android. (120198)
En fouillant dans les stocks du labo, nous avons mis la main sur
un premier rouleau de câble de type KROSCHU Schaltflex CY Style [1] www.elektor.fr/110258
2571 [3] à dix conducteurs, dont une paire torsadée. Nous avons [2] www.elektor.fr/110405
procédé à deux essais : d’abord avec un seul conducteur pour [3] www.kroschu-cable.de/documents/downloads/Schaltflex%20
chacune des quatre lignes de notre bus : données A et B, 12 V, 2008-07-08%20%5Be%5D.pdf
GND ; puis avec la paire torsadée pour A et B, comme le recom-
[4] www.youtube.com/watch?v=rbDSTXNARmw
mande d’ailleurs le standard RS-485. Le rouleau faisait 36 m :
46 03-2012 elektor
ASTUCES DE CONCEPTION
Adaptateurs DIP
pour programmateurs in situ
Alain Litt (France)
Un thermomètre relatif
Loïc Marty F5UBZ (France)
INTERIEUR EXTERIEUR
R1 NTC1
10k
-
très peu de composants et qui est utile M1
0
-35uA +35uA P1
à la maison. Il s’agit d’un thermomètre 230V
230V R3
22k
12V
différentiel qui indique à l’aide d’un 100mA
R2
100k
(suivant galva) NTC2
10k
-
de température entre l’intérieur d’une
habitation et l’extérieur. À quoi ça sert ? 120019 - 11
Les extravagances météorologiques
deviennent de plus en plus fréquentes. Il n’est
pas rare qu’en automne et même en hiver, (gradué ±35 μA, transformé en ±35 degrés) microampères ne perturbe pas trop la
certains jours, la température extérieure est quand même proche de la réalité mesure. On peut étalonner ce thermomètre
dépasse la température à l’intérieur de malgré la non-linéarité des CTN. par exemple avec un congélateur et la
l’habitation. On peut alors couper le chauffage Le schéma est simple, il s’agit du principe température ambiante pour obtenir des
et ouvrir grand les fenêtres pour faire entrer du pont de Wheatstone. À l’équilibre des indications tout à fait satisfaisantes et
un peu de chaleur dans la maison. En été, températures, le potentiel au point milieu représentatives. Un adaptateur secteur à
c’est souvent l’inverse, et on peut fera rentrer entre les deux CTN est égal au potentiel trois sous permet d’alimenter tout ce petit
de l’air frais. Il est amusant de constater qu’au entre les deux résistances de 10kΩ : l’aiguille monde. On trouve des indicateurs à zéro
point d’équilibre des températures, il fait aussi est en position centrale. Si par exemple la central par exemple chez Selectronic.
chaud dedans que dehors. C’est notamment température extérieure est inférieure à celle Bon amusement. Si vous trouvez d’autres
ce point que ce thermomètre affiche. de dedans, la valeur de la CTN externe sera applications intéressantes et originales pour
Il faut donc considérer ce montage comme supérieure à celle de dedans et le potentiel un tel indicateur, veuillez nous en informer.
un indicateur et non pas comme un au point milieu des deux CTN est inférieur (120019)
appareil de mesure étalonné. Néanmoins, au potentiel du point milieu des deux
au regard des relevés comparatifs avec résistances : l’aiguille dévie vers la gauche. Lien :
deux vrais thermomètres, l’indicateur L’utilisation d’un galvanomètre de quelques Site de l’auteur : www.f5ubz.fr
elektor 03-2012 47
Circuits des lecteurs
Jean-Pierre Redouté
2k2
L1
T2
performances. 80p C3 K1
C6
L5
* R
22n
Rappelons le schéma (figure 1) et le plan 3
de gravure du circuit (figure 2). La photo 200p * L4
* P1
E
T1
C
BC557B
T3
48 03-2012 elektor
Circuits des lecteurs
reau de ferrite (figure 4). Il se monte en lieu circuit. Puis sans brancher d’écouteur, les valeurs des résistances et le bon état des
et place du bobinage GO dans le récepteur connecter la pile avec un milliampère- semi-conducteurs.
d’origine sans autre modification. mètre en série : la consommation doit être
Toutefois l’écoute de signaux très faibles, nettement inférieure à 1 mA ; dans le cas Réaction : si les connexions du cadre sont
provenant d’émetteurs éloignés, néces- contraire, rechercher le composant défec- raccordées dans le bon ordre (L4/P1, D1,
site un réglage de réaction très proche de tueux ou le court-circuit responsable de la masse, C7) et si la capacité de C7 est suffi-
l’oscillation ; le réglage montre alors un surconsommation en mesurant sur chaque sante, le circuit ne doit pas osciller quand
manque de progressivité très gênant. Ce résistance la tension entre les extrémités P1 est au minimum (côté D1 C1) et osciller
défaut a été corrigé par une résistance R4 (rappel : résistance en kΩ x courant en mA quand il est au maximum ; pour le vérifier,
placée en série avec C7. = tension en V). régler P1 au minimum ; on doit entendre
Pour compenser, la valeur de C7 a été aug- un léger souffle dans l’écouteur ; augmen-
mentée (sur le prototype, R4 = 100 kΩ, Polarisation : la pile étant raccordée nor- ter P1 : arrivé à une certaine valeur on doit
et C7 est une « queue de cochon » d’une malement, brancher le milliampèremètre à entendre un net cloc et le souffle dispa-
dizaine de centimètres). la place de l’écouteur ou en série avec lui et raît presque. Notons que s’il est possible
Pour l’écoute d’émetteurs proches, la taille régler l’ajustable P2 pour obtenir 1 mA (cou- d’écouter une émission en réglant C6 et
du récepteur peut être réduite en utilisant rant collecteur de T2). l’orientation du cadre, la vérification est
un barreau plus court ; dans ce cas, il faut encore plus facile : le niveau sonore aug-
augmenter le nombre de spires (environ Vérifier que les tensions entre base et émet- mente avec la rotation de P1 jusqu’au point
80 spires pour un barreau raccourci à 5 cm). teur de chaque transistor sont voisines de de début d’oscillation où apparaissent un
0,6 V et que la diode est polarisée dans le sifflement puis, si on insiste, le cloc et le
Mise au point sens passant (D positif par rapport à Z). Si silence. Pour cet essai, il est intéressant
Avant toute mise sous tension, vérifier le le réglage est impossible, vérifier la conti- d’utiliser pour C7 une valeur trop élevée
câblage, les polarités, l’absence de court- nuité des liaisons, l’absence de court-circuit, (10 à 15 cm devraient suffire).
elektor 03-2012 49
Circuits des lecteurs
Calage en fréquence : en construisant soi- Comment caler son récepteur quand on spires ; dans le cas contraire, il faut l’aug-
même son cadre, on n’a pas forcément la ne possède ni fréquencemètre, ni oscillos- menter ou ajouter un petit condensateur en
chance d’obtenir directement la couverture cope, ni grid-dip ? On va se servir du phéno- parallèle sur C6.
exacte de la gamme d’ondes recherchée : mène décrit dans le paragraphe précédent.
l’inductance dépend du type de ferrite, des Quand notre récepteur entre en oscillation, Réglage du taux de réaction : la partie
dimensions et du nombre de spires et de il se comporte comme un émetteur de très utile de la course de P1 est entre le mini-
leur agencement ; et pour un bobinage en faible puissance et son sifflement peut être mum et le point où commence l’oscilla-
vrac, la valeur de la capacité parasite n’est capté par un autre récepteur s’il en est très tion ; pour une plus grande souplesse de
pas du tout négligeable, et est à peu près proche. Cet autre récepteur étant réglé sur réglage, il est donc intéressant de repous-
imprévisible. une fréquence connue, on tourne lente- ser ce point vers le maximum de P1. Pour
Les petits condensateurs ajustables à vis ment la commande de C6 ; le passage sur la cela, il suffit de se mettre à l’écoute d’une
situés à l’arrière du condensateur variable même fréquence provoquera dans le haut- émission faible, et de raccourcir peu à peu
C6 donnent une petite possibilité de rattra- parleur un pi-ou-itt caractéristique ; il suffit C7 jusqu’à ce qu’il soit possible de régler
page ; une autre possibilité plus importante alors de répéter l’opération pour plusieurs P1 au maximum ; veiller à ce que la pince
est offerte par le déplacement des bobines valeurs de fréquence. Si on a France-Inter, coupante ne crée pas de bavures qui court-
sur le barreau. mais pas RTL, il faut réduire le nombre de circuiteraient C7 !
Informations complémentaires
Pourquoi une bobine de couplage ? vaut que 200 pF ! La parade ? Diviser la bobine en plusieurs galettes ;
Nous n’entrerons pas dans des détails théoriques, mais il faut rete- d’une part, la capacité de chaque galette est inférieure à celle de la
nir qu’un transistor bipolaire (contrairement à un FET) présente une bobine monobloc, d’autre part, les galettes étant câblées en série, la
impédance d’entrée faible quand il fonctionne en mode émetteur capacité globale est égale à la capacité unitaire divisée par le nombre
commun (c’est-à-dire émetteur au 0 V). de galettes.
Quand le circuit L1/C6 est accordé sur une émission, il constitue pour Effet intéressant : Le condensateur en fils torsadés dit « queue de
elle une forte impédance : la tension est obtenue avec un très faible cochon ».
courant ; si on y raccorde une faible impédance, elle se comportera Exemple pratique : prendre environ 40 cm de fil émaillé de 0,45 mm
presque comme un court-circuit et la tension diminuera énormé- de diamètre, bloquer les deux extrémités côte à côte dans un étau,
ment. En revanche si on ajoute une bobine L2, couplée par induction passer un crayon dans la boucle, maintenir les fils tendus d’une main
à L1 et comportant un nombre de spires beaucoup plus petit, on dis- et tourner le crayon de l’autre, comme pour remonter l’hélice d’un
pose entre ses bornes d’un courant plus élevé (sous une tension plus avion à moteur caoutchouc, resserrer les torsions jusqu’à environ
faible) beaucoup mieux adapté à l’entrée du transistor. une par mm, terminer par un léger coup pour bien tendre ; enlever
Dans ce récepteur, L2 est également nécessaire pour une autre raison : le crayon et couper la petite boucle : on obtient une double torsade
On cherche à obtenir une réaction positive sur l’étage d’entrée, c’est- d’environ 16 cm dont la capacité mesurée vaut 40 pF environ.
à-dire ajouter au signal d’entrée une petite fraction du signal amplifié,
définie par C7 et R4. Si elle était directement appliquée à la base de Bobinage du cadre
T1, elle serait soustraite ; L2 sert à inverser le signal.
Il faut bien reconnaître que notre montage fait un peu bricolage avec
son assemblage par élastiques de bureau ! Néanmoins, le récepteur a
Capacité parasite effectué plusieurs voyages y compris deux expéditions postales sans
Dès que l’on met en présence deux conducteurs, on constitue un problème.
condensateur (même si sa capacité est très faible). On est ici dans le cas le plus simple : le bobinage à spires jointives ;
Effet gênant : Les spires adjacentes d’une bobine présentent une très percer à 10 ou 15 mm d’une extrémité un trou dans le tube isolant
faible capacité ; pour un bobinage à spires jointives, l’inconvénient avec une miniperceuse ; passer dans ce trou depuis l’extérieur une
est généralement minime ; mais s’il faut des centaines de spires, ce longueur de fil émaillé suffisante pour pouvoir ensuite atteindre la
mode de bobinage est incommode et encombrant, ce qui conduit à cosse ; enrouler L1 en tournant le tube de la main droite (pour les droi-
superposer les spires, donc augmenter la capacité qui peut atteindre tiers) par l’extrémité opposée au trou, et en utilisant la main gauche
des dizaines voire des centaines de pF. Très ennuyeux quand le CV ne pour tenir le tube, bloquer le fil qui doit toujours rester tendu, et avec
50 03-2012 elektor
Circuits des lecteurs
Réglage du filtre optionnel : si nécessaire, [1] Récepteur grandes ondes à faible Bibliographie :
c’est-à-dire si un émetteur puissant et/ou consommation, Sir Douglas Hall | Simplicity and sensitivity
proche gêne la réception des autres (sinon Elektor, janvier 2012, p. 14 with 2 transistors | The radio constructor
on peut le désactiver en court-circuitant www.elektor.fr/110721 | avril 1964 | l’ancêtre au germanium
L4 ou même ne pas installer L4, L5 et C8),
se mettre à l’écoute d’une émission gênée [2] www.elektor.fr/120105 G. Short | Silicon Transistor reflex TRF |
et ajuster C8 au moyen d’un tournevis iso- The radio constructor | janvier 1968 |
lant pour atténuer le plus possible l’émis- l’origine d’une multitude de variantes
sion indésirable. Si l’extrémité du tournevis
C.Sinclair | Slimline | The radio constructor
est métallique, elle doit être éloignée de
| septembre 1963 | réaction par retour
la main par plusieurs cm d’isolant sinon le
réglage sera faussé par sa capacité parasite capacitif sur le circuit d’accord
dite « effet de main ». R. Haig | Practical radio circuits | Everyday
practical electronics | juin 2003 | filtre
Bonne écoute ! coupe-bande et réglage unique HF + BF
(120105) + réaction
le pouce tasser chaque spire contre la précédente ; les spires doivent dans un oscillateur dont on mesure la fréquence avec un oscilloscope
être côte à côte sans chevauchement ; deux spires avant la fin, percer ou un fréquencemètre (figure 5). Ici nous ne pourrons pas échap-
un trou dans le tube. Les quatre trous devront être alignés le long de per aux mathématiques : si on nomme F la fréquence de l’oscillateur
l’axe du tube de façon que tous les fils intérieurs passent le long du en MHz, C la capacité du condensateur en pF, et L l’inductance de la
méplat du barreau de ferrite. Couper le fil en gar- bobine en µH, ces trois valeurs sont liées par la
dant une longueur suffisante, le passer dans le relation : (159/F)² = L x C
+6V
trou et le sortir du tube côté gauche. Si possible, Exemple numérique : L = 4,7 mH = 4700 µH
mesurer l’inductance de L1 (provisoirement en P
et C = 10 nF = 10000 pF correspondent à
position sur le barreau de ferrite) et corriger le 10k F = 0,023MHz = 23 kHz
R
nombre de spires si nécessaire (et, sans oublier
La valeur de 10 nF a été choisie pour deux
2k2
elektor 03-2012 51
Flowcode 5 pour concevo
Flowcode 5 est l’un des langages de program-
mation graphique pour microcontrôleurs (PIC,
AVR, ARM et dsPIC/PIC24) les plus avancés au
monde. Son avantage principal est de permettre
la création de systèmes électroniques et robo-
tiques complexes même si l’on manque encore
d’expérience.
Flowcode est utilisé :
• dans l’enseignement, pour initier les étudiants à
la programmation
• dans l’industrie, autant pour le prototypage
rapide que pour des projets d’envergure
… en électronique
Les E-blocks sont des circuits électroniques compacts,
correspondant chacun à une fonction autonome comme
on les trouve dans les circuits embarqués. Il en existe
une quarantaine, dont la complexité va croissant, depuis
le simple afficheur à LED jusqu’au circuits de program-
mation, aux modules Bluetooth ou TCP/IP.
Les E-blocks peuvent être assemblés aisément pour
élaborer des systèmes propices à l’apprentissage par
l’expérimentation. Ils conviennent aussi pour le proto-
typage rapide de systèmes complexes. L’ensemble est
complété efficacement par une gamme étendue et sans
cesse renouvelée de logiciels puissants, et de capteurs
variés.
... en robotique
Formula Flowcode Buggy est le nom d’un petit robot
mobile remarquable par son rapport performances/prix.
Ce véhicule fournit aussi bien un support adéquat
pour l’apprentissage de la robotique, qu’une plate-
forme idéale pour des compétitions de robotique.
Loin d’être un jouet, ce robot programmable par l’USB,
est doté d’une détection de ligne, de capteurs de proxi-
mité, de 8 LED incorporées, d’un capteur sonore, d’un haut-
parleur et du connecteur d’extension E-blocks. Ce véhicule se prête
à de nombreux exercices de robotique depuis la simple détection de ligne
jusqu’à l’analyse de labyrinthe. Le connecteur d’extension E-blocks autorise
l’adjonction d’afficheurs, ou de modules Bluetooth, ZigBee ou d’un GPS.
AndroPOD (2)
Interface utilisateur : la souplesse HTML
Marier vos circuits électroniques avec un smartphone pour qu’ ils soient heureux et aient beaucoup
d’enfants ? Vous en rêvez, AndroPOD le fait. Les entrailles de notre interface sérielle pour téléphone ou
tablette Android ont été disséquées le mois dernier. Vous avez apprécié la simplicité de son installation ?
Vous aimerez son interface utilisateur écrite en HTML, souple, téléchargeable gratuitement, et vous la
personnaliserez puisque son code source est ouvert. Tous à la noce de l’AndroPOD, épisode II.
C’est incontournable : pour commander une électronique depuis tion des octets via l’interface série). Ses développeurs ont à cet effet
votre smartphone, il faut une application Android dotée d’une inter- créé la classe Java AndroPODConnection. Vous pouvez la téléchar-
face utilisateur. Comment implanter cette interface ? Comment la ger depuis [5] et la lier à vos projets Android (voir Tutoriel). L’étape
personnaliser ? Le puissant cadre d’applications Android et le lan- suivante est la construction de l’interface utilisateur à partir des élé-
gage de programmation Java sont sans doute les réponses auxquels ments d’interface graphique Android tels que boîtes de dialogue,
penseront d’abord les développeurs. Programmer sous Android boutons, etc. La structure d’une application AndroPOD est décrite
n’est toutefois pas évident. Pour le débutant, la courbe d’appren- dans l’encadré. Vous pouvez utiliser son code source comme point
tissage est plutôt raide. L’effort sera payant, ne serait-ce que pour de départ de vos propres développements.
bien comprendre les projets Android de plus en plus souvent pro-
posés par Elektor. Pour vous aider, l’un des développeurs de l’inter- Smartphones et PC : même commande
face AndroPOD, Bernhard Wörndl-Aichriedler [1], étudiant à l’uni- Voici une autre approche : créer l’interface utilisateur à l’aide des
versité de Hagenberg, en Autriche, a écrit une courte introduction à langages HTML et JavaScript. Écrire une page HTML à l’aide des élé-
Android [2]. Vous pouvez aussi consulter la documentation de réfé- ments du langage et programmer une commande en JavaScript ne
rence du SDK d’Android [3], en particulier le guide d’installation de relève pas du tour de force intellectuel. L’interface sera donc plus
l’EDI Eclipse [4] et de son extension ADT pour Android. rapidement créée et sera, en outre, indépendante du système d’ex-
La première chose à faire au démarrage d’un nouveau projet Android ploitation. Elle pourra donc être utilisée sur un smartphone Android
est d’implanter les fonctions de base d’AndroPOD (envoi et récep- ou toute autre plate-forme PC. Le recours à une interface série
54 03-2012 elektor
MiCROcontrÔleUr
ANDROID-APP
HTML/JS:
USER INTERFACE
101
adaptée reste bien sûr indispensable (par exemple le convertisseur 233
IN
USB/RS485 d’Elektor [6]).
Les pages HTML créées s’affichent en théorie directement dans OUT
USB
le navigateur de l’appareil Android. Pour des raisons de sécurité, ANDROPOD
un navigateur standard ne peut toutefois pas recevoir ni envoyer
d’octets sur une interface sérielle. AndroPOD a donc besoin d’un Smartphone 120097-13
navigateur spécial qui puisse à la fois servir d’interface utilisateur
HTML et se charger de la communication via l’interface série (fig. 1).
Nous l’avons écrit, baptisé ElektorBusBrowserForAndroPOD, et même Figure 1. Notre application Android affiche une page HTML. Vous
publié sur l’Android Market de Google. Vous n’avez plus qu’à le télé- n’aurez que quelques éléments à modifier pour afficher la vôtre.
charger et à l’installer sur un smartphone ou une tablette. L’exécu-
table .apk (l’équivalent sous PC d’un .exe) et le code source sont
également disponibles sur le site Elektor. Cette application est déjà
installée si vous avez construit le matériel d’essai du premier article
[7], mais nous vous recommandons d’effectuer sa mise à jour. BIT MODE 00
Il suffit ensuite de charger sur le téléphone les pages créées par BYTE 7 6 5 4 3 2 1 0
l’application. Aucune difficulté ici, mais voyons d’abord la structure 0 1 0 1 0 1 0 1 0
d’une telle page HTML. 1 0 0 0 0 0 0 0 0 = 00 hex
2
3 ADDRESS RECEIVER
Messages simples 4 ID
Notre application Android envoie et reçoit des paquets de données 5 ADDRESS SENDER
(des messages) de 16 octets, construits conformément au protocole 6 CHANNEL0
0H
7 0L
ElektorMessageProtocol [6]. Le débit est de 9600 bauds, d’emblée 8 1H
compatible avec nombre de futurs projets Elektor. Ce protocole a CHANNEL1
9 1L
été développé pour le bus ElektorBus [8], mais n’est en aucun cas A 2H
CHANNEL2
restreint au matériel ElektorBus ni même à RS-485. L’application B 2L
C 3H
fonctionne également lorsque les octets sont lus et envoyés par CHANNEL3
D 3L
le connecteur mini-DIN ou les barrettes. Précisons bien que dans E
CRC
ce cas il est impératif de désactiver le pilote RS-485 par retrait du F
cavalier JP4 ! 120097 - 14
Dans le cas le plus simple, un message ElektorMessage possède la Figure 2. Structure d’un ElektorMessage ;
structure suivante (voir aussi la figure 2) : sa longueur est fixée à 16 octets.
elektor 03-2012 55
MiCROcontrÔleUr
USER APPLICATION
APPLICATION PROTOCOL
JSBUS REC SEND PART PART PART
Figure 4. À deux octets de données correspond un intervalle La variable part.Numvalue contient toujours la valeur de mesure
de valeurs comprises entre -1023 et 1023, suffisant pour de reçue (de -1023 à 1023). Un aperçu de toutes les fonctions de la
nombreuses applications. bibliothèque JSBus ainsi que d'autres informations sont donnés en
[9].
Les pages du site d’Elektor associées au projet ElektorBus offrent
en téléchargement différents programmes de démonstration pour
Interval microcontrôleurs AVR. Inutile donc de réinventer le boulier, adap-
DIRECTMODE 2 2 10 2 2
120097 - 17
tez plutôt le code disponible à vos projets. Nous publierons dans
le courant de l'année d'autres programmes pour microcontrôleurs
compatibles avec le protocole décrit.
Figure 5. Le mode DirectMode évite les collisions de messages pour
les communications de type 1:1.
… et émission
Supposons que depuis notre portable nous voulions commander
deux LED situées sur les canaux Channel1 et Channel2. Nous utilise-
rons la fonction JavaScript suivante :
(p. ex. de V à mV), le paramétrage des valeurs de consigne, l’affi-
chage des valeurs limites inférieures et supérieures, plus quelques function SwitchLed(LedStatus1,LedStatus2)
compléments des verbes « mesurer, commander, régler ». Les futurs {
projets Elektor (dont un multimètre) l’utiliseront et, comme nous var parts = InitParts();
le montrerons prochainement avec l’exemple d’une carte de cir- parts = SetValue(parts, 10, 1, 1, 0,
cuit alimentée en 230 V, ce protocole peut bien sûr commander le LedStatus1);
matériel d’ElektorBus. parts = SetValue(parts, 10, 1, 2, 0,
LedStatus2);
Dans un message (soit huit octets de données utiles), ce sont SendParts(parts, true);
jusqu’à quatre valeurs de mesures (−1023 à 1023) qui peuvent être }
transmises simultanément sur quatre canaux (channels), chaque
valeur occupant alors deux octets (fig. 4). La bibliothèque JavaScript Les variables LEDStatus1/2 doivent être affectées des valeurs 0
sépare en quatre unités (parts) le paquet de 8 octets qu’elle reçoit. (hors tension) ou 1 (sous tension). Le code crée d’abord un tableau
Ces quatre unités contiendront par exemple les quatre valeurs d’une vide d’éléments appelés parts (les parties du message). Ces élé-
certaine mesure. La bibliothèque appelle ensuite la routine JavaS- ments parts contiennent chacun la valeur de mise hors ou sous ten-
cript ProcessPart{...} qui traitera chacune d’entre elles. Pour insérer sion des LED à transporter sur les deux canaux. Ils sont ensuite com-
comme il se doit cette fonction dans une page HTML, il suffit d’y binés, puis la fonction SendParts les envoie dans un seul message.
ajouter ces lignes : La fonction SwitchLed peut être appelée de trois façons : avec un
56 03-2012 elektor
MiCROcontrÔleUr
SetScheduler(SCHEDULER_
DIRECTMODE,0,0,0,0,0,0,0,0);
mètres. Le 10 ne doit pas être oublié puisque le smartphone Android
Il est également possible de lancer cette commande avec un bou- a aussi son mot à dire.
ton HTML. Nous l’avons appelé « Activer le DirectMode » dans l’ins-
truction suivante : Démo
Concrétisons cette approche plutôt théorique à l’aide d’une petite
<BUTTON Type=’button’ onclick=’javascript: application. Le « nœud expérimental » du projet ElektorBus [6] pour-
SetScheduler(SCHEDULER_ rait servir de matériel d’essai. Autre cobaye possible : un PC relié
DIRECTMODE,0,0,0,0,0,0,0,0) ‘ >Activer le à l’interface AndroPOD, par exemple via le convertisseur USB/TTL
DirectMode</BUTTON> BOB-FT232 [5] (fig. 6). Le fichier zip téléchargeable contient l’exé-
cutable ElektorBusElectronicsSimulator.exe [5]. Ce programme sera
La syntaxe des langages HTML et JavaScript est facile à assimiler. Le l’interlocuteur de notre mobile puisqu’il peut envoyer et recevoir
lien [9] convaincra les débutants. des messages. Nous lui ferons endosser le rôle d’un appareil de
mesure et le représenterons à l’aide d’une page HTML. Placez le
Le mode HybridMode, lui, est adapté à la communication entre plu- dossier UIBus (à télécharger depuis [5]) sur le Bureau de Windows
sieurs participants d’un même bus. Dans ce mode, un superviseur pour que le programme PC puisse trouver la page HTML. Reste à
(scheduler) attribue des temps de parole aux nœuds du bus. L’appli- transférer cette page ainsi que la bibliothèque JavaScript JSBus.txt
cation Android en contient un. Prenons l’exemple d’une interface dans le téléphone. L’application recherche les deux fichiers dans
AndroPOD reliée à un bus RS-485 avec deux participants appelés 1 le dossier ElektorBusBrowser de la carte SD (ce comportement par
et 2. La commande suivante lance le superviseur et lui communique défaut peut être modifié via le menu de configuration). Très bien,
l’adresse de tous les nœuds à prendre en compte : mais comment envoyer là-bas nos fichiers ?
elektor 03-2012 57
MiCROcontrÔleUr
Essai
Figure 7. Le programme PC simule une électronique Nous sommes prêts à lancer l’application Android et le programme
de mesure externe. PC. Commençons par le second. Notre simulateur d’appareil de
58 03-2012 elektor
MiCROcontrÔleUr
mesure s’ouvre dans une grande fenêtre (fig. 7). Le bon port COM sens, nous devons tout d’abord
(virtuel) doit être sélectionné avant d’appuyer sur Connect. activer le mode DirectMode. Nous
avons placé le bouton correspon-
Le programme représente un capteur qui transmet régulièrement dant dans l’interface HTML car la
des valeurs. Ce serait p. ex. un compteur électrique. Le bouton Start résolution d’écran d’un portable
de l’interface HTML envoie les valeurs relevées. Le bouton HTML est inférieure à celle d’un PC. Les
Toggle simule l’allumage et l’extinction d’une LED de contrôle. boutons On et Off de l’interface
Essayez. Les valeurs s’affichent sur l’interface Master du smartphone Master servent à définir ou initiali-
(fig. 8). Avez-vous remarqué le léger retard à l’affichage de la LED de ser l’état de la LED de contrôle du
contrôle ? Un changement d’état de la LED n’est en effet pas envoyé capteur. Jouons avec. Observez
immédiatement, mais uniquement lorsqu’une nouvelle valeur de bien la réaction de la LED lorsque
mesure quitte le PC. L’état de la LED et les valeurs de mesure sont vous appuyez sur l’un ou l’autre.
transmises à l’intérieur d’un message sur différents canaux. Son comportement ne vous aura
pas surpris si vous avez été atten- Figure 8. Capture d’écran
Nous aimerions maintenant que le maître renvoie quelque chose au tif : le smartphone n’envoie pas le d’une commande sur
capteur. Avant de pouvoir transmettre des messages dans l’autre changement d’état de la LED tant smartphone.
à la page HTML/JavaScript en cours d’affichage (voir [9] pour en Autre méthode d’importance pour AndroPOD, StartRea-
savoir plus sur InCommand et OutCommand). Un développeur qui derThread. Nous la décrivons ci-dessous.
souhaite une distribution différente des octets dans un message
adaptera cette classe en conséquence.
La méthode onCreate de la classe AndroPODElektorBusBrow-
ser (ou de l’activité que vous avez programmée) est appelée au
La classe AndroPODElektorBusBrowser gère l’affichage des démarrage de l’application. La ligne de code AndroPODTranscei-
données reçues, et reçoit en outre les données utilisateur qui dé- ver.Resume active le Transceiver (émetteur-récepteur) de la classe
clenchent l’envoi de messages. Ces deux opérations se produisent AndroPODElektorBusTransceiver. La méthode Resume(...)
dans une page HTML pour conserver l’indépendance de la plate- ouvre d’abord un ServerSocket sur le port 1337. Une autre thread est
forme vantée dans l’article. AndroPODElektorBusBrowser veille ensuite démarré. Le code de la méthode run(…) de la classe An-
seulement à ce que cette page HTML soit affichée dans un compo- droPODElektorBusTransceiver est alors exécuté. Il est contenu
sant Android du type WebView. Les messages reçus (plus précisé- dans une boucle infinie qui vérifie en permanence s’il existe une
ment la chaîne qui en résulte) sont transmis à HTML/Javascript via connexion vers l’interface AndroPOD, et l’établit si elle n’existe
la méthode In(...) . C’est à l’inverse JavaScript, intégré dans la pas. C’est grâce à ce thread que l’application en cours peut insérer
page HTML, qui passe une chaîne à la méthode Out() lorsqu’un l’interface.
message doit être envoyé. Le superviseur (scheduler) est lui aussi im- Placée à la fin de la routine d’initialisation onCreate, la ligne de
planté dans cette classe. La méthode Out(...) n’envoie donc pas code StartReaderThread(); démarre le thread de lecture pro-
directement le message mais le tamponne. Le message n’est trans- prement dit. Le code correspondant est lui aussi inclus dans une
mis que sur autorisation du superviseur (le mode DirectMode fait ex- méthode run(), quelques lignes plus bas. Sa boucle while est
ception). Une partie de la classe est dédiée au protocole ElektorBus. exécutée tant que la connexion à l’interface est établie. La ligne
L’ensemble du code à partir de la méthode OnCreate vous intéres- ReceivedMessage = AndroPODTransceiver.ReceivePac-
sera si vous souhaitez créer votre propre application. La classe est ket(); lit les 16 octets suivants (à partir du bit de départ AAhex). Le
en effet une activité Android, plus précisément une activité appelée paquet peut ensuite être traité. Ajoutons pour être complet que le
au démarrage de l’application (pour ainsi dire sa fenêtre principale). superviseur a lui aussi son propre thread.
Les experts d’Android savent qu’en plus de onCreate (initialisa-
Certes la technique vous semblera peut-être moins directe que
tion), les méthodes OnStop, OnPause et onResume doivent être
la communication par tam-tam, mais envoyer un message reste
modifiées ; ces trois méthodes contiennent respectivement le code
dans le fond assez simple : il suffit d’appeler AndroPODTrans-
à exécuter lorsque vous quittez l’application, lorsque vous reprenez
ceiver.TransmitPacket(…) (avec comme paramètre un
une activité précédemment interrompue, et lorsque l’application
AndroPODElektorBusCommand)
repasse au premier plan.
elektor 03-2012 59
MiCROcontrÔleUr
qu’un nouveau message (avec la Dans une application réelle, le contenu de certains messages pour-
valeur de mesure et l’ancien état rait être critique et leur perte tout autant. Un tel programme devrait
de la LED de contrôle) n’a pas été donc comporter un mécanisme de confirmation d’envoi/réception
reçu du PC. Cet expédient est la pour parer à tout dysfonctionnement possible. Les protocoles Elek-
garantie d’un bus libre. torMessageProtocol et ApplicationProtocol offrent à cet effet plusieurs
solutions [8].
Essayons maintenant la fonc-
tion SMS. Nous nous servirons
d’un second mobile auquel nous Perspectives
enverrons un SMS d’alarme. Nous Complexe au premier abord, cette approche basée sur HTML pré-
Figure 9. Paramétrage de devons au préalable communi- sente de gros avantages. Là où programmer une interface utilisa-
notre App. quer son numéro à l’application. teur Android en Java exigerait temps et concentration, écrire une
Le paramétrage se fait dans Set- page HTML/JavaScript se fait pour ainsi dire le coude à la portière,
tings, un menu que nous avons sans parler de l’indépendance de la plate-forme ainsi créée (puisque
déjà utilisé dans le précédent la même interface pourra être utilisée sur smartphone et sur PC).
article [7]. Pour y accéder, appuyez sur l’icône de menu qui se trouve Ajoutons que HTML a actuellement le vent en poupe. Attendez-vous
en bas à gauche de l’écran de l’Android, puis cliquez sur Settings. d’ailleurs à ce que de plus en plus de programmes PC associés à des
Nous pouvons régler trois paramètres (fig. 9) : projets Elektor soient lancés depuis un navigateur !
• Le dossier dans lequel l’application recherche les fichiers HTML Le prochain numéro présentera une « platine d’installation » équipée
et JavaScript. de deux relais, de deux entrées, et d’un micrologiciel compatible
• Un numéro SMS par défaut. ElektorBus. Elle permettra de commander des éclairages et d’autres
• L’adresse ElektorMessage du smartphone Android récepteurs depuis un smartphone Android. Vous aimez envoyer des
(préréglée sur 10). messages d’état à vos amis ? Vous pourrez bientôt en envoyer à vos
ampoules. D’autres projets sont en préparation, notamment dans
Le changement de ces paramètres provoque dans de très rares cas le domaine de la mesure.
le blocage de l’application. Redémarrez-la si cela vous arrive. (120097 - trad. Hervé Moreau)
Une fois le numéro saisi, cliquez sur le bouton Alarm du programme
PC pour déclencher la fonction SMS. Un « 1 », qui signale une alarme [1] www.xdevelop.at
du capteur, sera transmis par le prochain message envoyé via le
[2] www.xdevelop.at/#category=projects&subcategory=1&anchor=6
canal Channel2 encore libre.
La ligne JavaScript suivante, contenue dans la page HTML affichée [3] http://developer.Android.com/sdk/installing.html
sur le mobile, déclenche l’envoi du SMS : [4] www.eclipse.org/downloads/
[5] www.elektor.fr/120097
SendSMS(“1“, “Alarme Capteur !“);
[6] www.elektor.fr/110258
Le paramètre 1 signifie que le SMS est envoyé au numéro par [7] www.elektor.fr/110405
défaut ; vous pouvez toutefois entrer un numéro de téléphone
[8] www.elektor.com/elektorbus
quelconque.
[9] www.elektor.fr/110517
Le programme PC permet de voir le code source des deux pages [10] www.elektor.fr/110708
HTML utilisées. Celle qui représente une électronique de mesure
[11] http://developer.Android.com/guide/index.html
s’appelle SimIndex, celle qui s’affiche sur le smartphone se nomme
Index. Choisissez l’une d’entre elles dans le menu déroulant rouge [12] „Learning Android”, Marko Gargenta, O’Reilly:
clair, puis cliquez sur Source pour en voir le code. http://shop.oreilly.com/product/0636920010883.do
60 03-2012 elektor
Présentation par Eurocircuits
PCB proto – service rapide à prix très attractifs dédié aux bureaux d’études
• 1 ou 2 C.I. en 2, 3, 5 ou 7 jours ouvrés
• Contrôle complet du dossier, finition comprenant 2 vernis épargne verts et une sérigraphie blanche –
Isolements/conducteurs >/= 150µm
• 1 C.I. 100 x 80mm en 7 jours - 2 faces 46,49 € - 4 couches 94,41 €
• 2 C.I. 100 x 80mm en 7 jours - 2 faces 36.47 € pièce - 4 couches 73.89 € pièce
Prix avec TVA Française de19.6% transport non compris
IMS pool – C.I. à haute dissipassion thermique pour application de puissance (LED, conversion d’énergie, …)
• C.I. 1 face sur semelle métallique (SMI) – Isolements/conducteurs >/= 200µm
• Cuivre 35µm avec isolant 75µm sur semelle en aluminium 1.5mm
• A partir de 3 jours ouvrés
www.elektorPCBservice.com
DÉMONTER
Dans un article [2] de février 2010, Elektor a déjà évoqué l’entre- par exemple, ou alors sur un gyrocompas de navigation, ici un com-
pôt de surplus [1] d’où vient mon Horizontal Situation Indicator [3] pas de route. Pour présenter l’information dans le cockpit, il faut
ou indicateur de position horizontale. C’est une combinaison d’ins- un système qui prolonge artificiellement l’axe mécanique, et on
truments qui rassemble les affichages du VOR, VHF Omnidirectio- utilise un CX, un synchro-transmetteur. Il possède au stator trois
nal Range, relèvement magnétique par rapport à un émetteur VHF enroulements décalés chacun de 120 degrés, qui forment le côté
connu, de l’Instrument Landing System, aide à l’atterrissage, et du secondaire. Le primaire est constitué d’un bobinage fixé sur l’axe qui
Height Indicator, indicateur d’altitude. tourne, le rotor (cf. figure 2 à gauche). Celui-ci est alimenté par un
Devant un tel appareil, on se demande s’il est possible d’en faire
quelque chose d’utile. C’est ce que cet article va expliquer : sur
quelles techniques repose cet instrument, comment animer soi-
même les différents indicateurs. Pourquoi ne pas le coupler à un
simulateur de vol, par exemple, ou s’en faire une horloge HSI pour
le bureau ou une salle de réunion ? Pour admirer le résultat, mettez
le cap sur YouTube, j’y ai posté une vidéo [4].
Synchros et moteurs
En regardant à l’intérieur de l’appareil par l’arrière (figure 1), on
découvre la multiplicité de ses composants électromécaniques. Il y a
là des parties à couvercle bleu et d’autres avec une capsule de métal
nu. Les pièces bleues sont des composants du fabricant de matériel
aérospatial et d’avionique Muirhead [5], sur lesquels il est indiqué
que trois fils conduisent au côté primaire et deux vers le secondaire.
Ces renseignements donnent à penser qu’il s’agit de ce qu’on
appelle des synchros [5] ou résolveurs. On en trouve d’ailleurs une
belle description en suivant les liens [6] et [7]. Les synchros, on
les utilise normalement pour capter une information angulaire et
la transmettre à un instrument d’affichage. On imagine bien que
c’est le genre d’indication que l’on peut trouver sur une boussole, Figure 1. Coup d’œil de l’arrière sur les moteurs et synchros du HSI.
62 03-2012 elektor
REMONTER
signal sinusoïdal à 400 Hz que l’on peut noter : UR(t) = Û sin(2pt 400).
Dans les trois bobines secondaires, la tension induite dépend alors R1
S1
de l’angle q (thêta) qui traduit la position actuelle de l’axe du rotor. Rotor Stator S1
R1
Ce qui peut se noter comme suit : 400 Hz triphasé
R2
S2
S3
R2 S2
US1(t) = Û sin(q) sin(2pt 400) Axe
S3
Synchro-transmetteur CX
US2(t) = Û sin(q + 120°) sin(2pt 400)
jusqu’à ce que B soit égal à A. Et voilà comment tournent les diffé- sin(2 pi f t - 60º) sin(2 pi f t - 60º)
Axe : angle B
rentes aiguilles dans notre HSI.
47n
par modulation de largeur d’impulsion (MLI) sur un processeur. Nous
en avons pris un dont la fréquence d’horloge est de 20 MHz et qui peut
fournir de la MLI rapide avec une résolution de 8 bits. La fréquence du
signal MLI est alors de 20 MHz divisée par 256, soit 78,125 kHz, ce qui
est très rapide par rapport à 400 Hz. Comme fréquence d’interruption,
nous avons choisi 36×400 Hz, ce qui divise 20 MHz par 1 389. À chaque Figure 5. Filtre passe-bas et amplificateur pour le signal à 400 Hz.
elektor 03-2012 63
DÉMONTER
+24V
BD678
4k7
10R
HSdrive
100u
BS170 50V
10R
LSdrive
2k2
BD677
interruption, on envoie une nouvelle valeur de sinus ou de cosinus au quatre d’entre eux conduisent au générateur de tachymétrie. On
générateur MLI. Le signal MLI doit encore traverser un filtre passe-bas et trouve encore trois autres bobinages à propos d’un desquels on lit
être amplifié pour pouvoir exciter les enroulements du CT. La figure 5 « REF 26 V 400c/s ». Il faudra donc le brancher sur du 26 V à 400 Hz.
présente le schéma de l’un des deux canaux. Pas simple de dénicher des informations sur le raccordement de ce
genre de moteurs, mais finalement, nous avons quand même trouvé
La mesure de phase des documents [8].
Sous quel angle se trouve l’axe mécanique ? Pour le calculer, déter- Manifestement, il s’agit d’un moteur à induit en cloche dit drag-
minons la phase du signal du rotor. Appliquons-le au convertis- cup [9] et d’une génératrice de tachymétrie. L’induit du moteur est
seur A/N que nous allons consulter avec la même routine d’inter- construit comme sur un moteur asynchrone, mais le flux magné-
ruption que celle qui produit la MLI, donc pour obtenir 400×36 = tique ne tourne pas à l’intérieur de l’induit. Le stator est fait d’un
14 400 échantillons par seconde. Une période correspond ainsi à enroulement dit de référence alimenté en permanence par du
36 valeurs, lesquelles définissent la phase aussi bien que dans le dis- 400 Hz. Un bobinage double est placé à angle droit avec lui. Si on
criminateur d’un récepteur SDR (la radio logicielle). Ensuite, pour lui applique un signal à 400 Hz déphasé de 90 degrés par rapport à
déterminer l’angle, les composantes sinus et cosinus en quadrature la bobine de référence, l’induit pivote. Le sens de rotation change
de phase sont extraites du signal. avec la polarité. Le bobinage est réalisé en deux parties pour faciliter
De cette façon, on peut obtenir les angles des différentes aiguilles la construction du circuit d’asservissement.
de notre HSI et utiliser ces informations dans des circuits d’asservis- La figure 7 représente schématiquement l’agencement d’un tel
sement pour les faire virer vers la position souhaitée. moteur. L’induit en forme de cloche tourne à l’intérieur d’un noyau de
fer. Les deux enroulements placés à l’extérieur produisent le champ
Aux commandes des moteurs tournant [10] comme dans un moteur asynchrone à deux phases.
Exercice suivant : faire tourner les moteurs, dont il ne sort pas moins En faisant ses petites expériences, on s’aperçoit que le moteur
de 10 câbles (chacun). Comme on peut le déduire des inscriptions, tourne aussi quand la tension n’est pas sinusoïdale, mais tout bête-
Fer
Rotor
Bobinages
64 03-2012 elektor
REMONTER
SFH610-4
1k
BC560
100R
4k7 R R
ment rectangulaire. Il suffirait alors de construire un simple circuit Indicateur de course CDI
en demi-pont comme à la figure 9. Comme c’est le contrôleur qui L’afficheur pour le VOR (relèvement magnétique sur balise VHF)
distille les signaux de commande, on lui a demandé de laisser un est un CDI (Course Deviation Indicator). Il s’agit d’une aiguille qui
temps mort entre les impulsions de niveau haut et de niveau bas, oscille vers la gauche ou la droite pour donner l’ampleur de la
de manière à empêcher les deux Darlington d’être conducteurs en déviation par rapport au cap choisi. Techniquement, le CDI se
même temps. sert d’un instrument à cadre mobile. Pour obtenir des courants
Il faut alors deux demi-ponts de ce modèle-là, comme le montre la positifs et négatifs, nous avons réalisé le circuit dont la figure 11
figure 11, pour alimenter un moteur. Son régime peut être réglé vous présente le schéma. Pour une MLI de rapport cyclique égal
par déphasage. à 50 %, le pont est à l’équilibre et le CDI se positionne au milieu.
Selon que le rapport cyclique sera plus grand ou plus petit, le CDI
Génératrice tachymètre penchera à gauche ou à droite. Un potentiomètre d’ajustage per-
Il est aussi intéressant de savoir comment ça marche, une géné- met de régler la sensibilité.
ratrice de tachymétrie. Celle-ci se compose d’une « bobine excita-
trice » soumise à un signal sinusoïdal à 400 Hz. Tournée à 90 degrés, Indication To/From
il y a une bobine de capteur dans laquelle aucune tension n’est L’indicateur de sens « vers ou d’où » du VOR est aussi réalisé avec
induite quand le moteur est à l’arrêt. Dans le champ, on retrouve un instrument à cadre mobile, commandé toutefois en numérique.
un induit en court-circuit comme dans la partie de moteur de la On reprend le schéma de la figure 11 et on recommence, mais
figure 7. Si ce rotor se met à tourner, on pourrait dire qu’il attire le ici, on peut utiliser une sortie à trois états plutôt que de la MLI. Si
champ d’excitation. Du coup, la symétrie est rompue et, dans le la sortie est à haute impédance, le courant fourni est nul et ni le
capteur à bobine, une tension décolle, proportionnelle à la vitesse triangle TO ni le triangle FROM n’apparaissent. Envoyez un 0 ou
de rotation. Comme il n’y a pas de balais, l’engin est particulière- un 1 à la sortie, vous activerez alors l’un des deux triangles, dans
ment endurant. l’ordre TO ou FROM.
+5V
+24V +24V
R2
400 Hz 400 Hz
Moteur
MLI
R1
Instrument Réglage
R3
GND
Figure 11. Comment piloter un moteur biphasé. Figure 12. Montage en pont pour attaquer un galvanomètre du CDI.
elektor 03-2012 65
DÉMONTER
Tampon
24 V Passe-bas
Synchro
Clapets Aiguille
CDI
Instrument
Figure 13. Synoptique : un ATmega644 cadencé à 20 MHz dispose en outre des temporisateurs et du convertisseur A/N nécessaires.
Quoi d’autre comme afficheur ? Avec de faibles courants, un photocoupleur à grand gain suffira.
Le HSI dispose encore de quelques autres moyens d’affichage que Pour des courants un plus élevés, on se sert d’un BS170 comme élé-
l’on actionne par de simples électroaimants, par exemple les clapets vateur de niveau et d’un BC560 comme commutateur. C’est chaque
rouges visibles sur la première photo de cet article. Plusieurs de ces fois la résistance R qui limite le courant.
éléments ont parfois une masse commune et demandent plus de
12 V. Pour les mettre en oeuvre, on utilisera les circuits tampons de En finale
la figure 10. Cette volée de circuits proposés vous permet à présent de piloter
à distance le HSI complet. La photo ci-contre montre mon proto
sur platine perforée (fig.14). Elle rend bien l’ambiance joyeusement
expérimentale de mon projet. J’espère qu’elle donnera à de nom-
breux lecteurs l’envie d’aborder ce terrain encore largement inex-
ploré. L’électronique d’aujourd’hui, associée au goût de la récupé-
ration, procure encore bien des surprises et des satisfactions à celui
qui persévère. À vous maintenant de réaliser votre propre cockpit de
simulateur avec de vrais instruments d’aéronautique.
Bon vol !
(110756 - trad. Robert Grignard)
Liens :
[1] www.helmut-singer.de
[2] www.elektor.fr/090287
[3] http://en.wikipedia.org/wiki/Horizontal_situation_indicator
[4] www.youtube.com/user/ossimodding
[5] www.muirheadaerospace.com/motion-technology/synchros.html
[6] http://en.wikipedia.org/wiki/Synchro ou
http://aviatechno.info/syn_tdr.php.html
[7] www.ddc-web.com/documents/synhdbk.pdf
[8] www.hnsa.org/doc/neets/mod15.pdf
[9] www.google.com/patents (US-Patent 3641376)
[10] http://books.google.fr/books/about/A_Textbook_of_Electrical_
Machines.html, de R. K. Rajput, page A-5)
Figure 14. La platine d’expérimentation.
66 03-2012 elektor
Abonnez-vous à la meilleure revue
américaine sur les microcontrôleurs
et leurs applications !
La formule d’abonnement
qui vous conviendra est sur
www.elektor.com/cc-subs
12 parutions par an
Édition numérique (PDF) : 38 $
Édition imprimée : 63 $
Les deux éditions : 90 $
platino
Cet article de synthèse exhaustif fait sauter un verrou : la dépendance de l’environnement vis-à-vis du matériel. Il donne accès
à la facilité de programmation conférée par l’environnement Arduino sans la contrainte d’un matériel directement compatible.
Il servira de référence et fera gagner un temps fou à quiconque souhaite se lancer dans une adaptation d’Arduino pour son matériel.
68 03-2012 elektor
platino
1 uno.name=Arduino Uno
2 uno.upload.protocol=arduino
3 uno.upload.maximum_size=32256
Le dossier variants est apparu avec Arduino 1.0. Il facilite la défi- 4 uno.upload.speed=115200
nition de plusieurs cartes qui ont beaucoup en commun. Dans 5 uno.bootloader.low_fuses=0xff
le cas de Platino, nous pourrons définir deux variantes, une pour 6 uno.bootloader.high_fuses=0xde
Platino avec un micro à 28 pattes et une pour Platino avec un micro 7 uno.bootloader.extended_fuses=0x05
à 40 pattes. Chaque variante possède son propre sous-dossier 8 uno.bootloader.path=optiboot
contenant le fichier pins_arduino.h qui se trouvait dans le dos- 9 uno.bootloader.file=optiboot_atmega328.hex
sier cores des précédentes versions. Si besoin est, vous pourrez y 10 uno.bootloader.unlock_bits=0x3F
ajouter d’autres fichiers changeant avec les variantes. 11 uno.bootloader.lock_bits=0x0F
Effacez le fichier programmers.txt ; vous n’en aurez besoin 12 uno.build.mcu=atmega328p
que si vous souhaitez définir votre propre programmateur. Si vous 13 uno.build.f_cpu=16000000L
le conservez sans le modifier, il y aura des doublons dans le menu 14 uno.build.core=arduino
Tools->Programmer de l’EDI. 15 uno.build.variant=standard
Enfin, le fichier boards.txt contient les informations dont l’EDI a
besoin pour utiliser les bons dossiers, protocoles, etc. en fonction du
matériel sélectionné. Les cartes décrites dans ce fichier apparaissent munication Arduino (tant qu’avrdude sait comment le gérer), tel
dans le menu Tools->Board d’où elles peuvent être sélectionnées. que Wiring par exemple.
Éditons ce fichier avant de modifier les autres. La ligne 12 permet de préciser le micro présent sur la carte. Notez
qu’il y a des types différents disponibles pour les AVR de type P.
boards.txt C’est important : l’identifiant n’est pas le même que pour ceux qui
Ce fichier définit les cartes connues de l’EDI. Il doit être édité afin ne sont pas de type P. Le suffixe optionnel « A » n’a aucun effet.
que votre matériel soit reconnu. Pour ce faire, ouvrez-le dans un La ligne 13 donne la fréquence de l’oscillateur utilisé en Hz ; cette
simple éditeur de texte tel que Bloc-note. Vous y verrez une liste de valeur correspond à la fréquence du quartz et est nécessaire pour
blocs comme celui du listing 1 (sans numéros de lignes). les fonctions timer et UART d’Arduino. Si vous souhaitez savoir où
Effacez tous les blocs sauf celui qui correspond à votre matériel. Si elle est utilisée, cherchez F_CPU dans les fichiers.
vous n’effacez pas les blocs non modifiés, il y aura des doublons Les fichiers core devront se trouver dans le sous-répertoire du dos-
dans le menu Tools->Boards. sier hardware donné à la ligne 14 (ici : arduino-1.0\hardware\
Toutes les lignes du listing 1 commencent par uno. Il s’agit d’un arduino). La ligne 15 précise le sous-dossier du dossier variants
identifiant pour la carte, unique parmi tous les fichiers boards.txt qui contiendra le fichier pins_arduino.h pour votre carte.
présents dans l’installation. L’EDI ne reconnaît qu’une des cartes qui Ces deux dernières lignes peuvent pointer n’importe où, ce qui per-
partagent un même identifiant. met d’utiliser pour votre carte les fichiers core d’une autre. Il s’agit
L’ordre des lignes n’a pas d’importance. des liens dont je parlais plus haut.
La ligne 1 contient l’étiquette name qui définit le nom de la carte tel
qu’il apparaît dans l’EDI. Utilisez un nom explicite ; je ne connais pas
la limite en nombre de caractères, mais il y en a certainement une, Listing 2. Description d’une carte Platino équipée d’un
donc n’abusez pas non plus. ATmega164p. Les deux dernières lignes permettent que
Les lignes 2 & 4 (upload.protocol et upload.speed) décrivent s’assurer que les bons fichiers core seront utilisés.
des paramètres passés à avrdude, le programmateur utilisé en stan-
dard. Arduino 1.0 en inclut la dernière version qui supporte le pro- platino164p.name=Platino 164p(a) @ 16 MHz
tocole arduino. Les versions incluses précédemment ne connais- platino164p.upload.protocol=arduino
saient pas ce protocole ; il fallait utiliser stk500 à la place. platino164p.upload.maximum_size=15872
La ligne 3 définit la mémoire maximale disponible pour une appli- platino164p.upload.speed=115200
cation utilisateur. Elle est calculée en soustrayant la taille du boot- platino164p.bootloader.low_fuses=0xff
loader de la taille mémoire totale. Ici, le micro possède 32 Ko et le platino164p.bootloader.high_fuses=0xdc
bootloader occupe 512 octets, ce qui nous donne un maximum de platino164p.bootloader.extended_fuses=0xfd
32,256 octets. platino164p.bootloader.path=optiboot
Les lignes 5 à 11 décrivent le bootloader et comment le charger platino164p.bootloader.file=optiboot_
depuis l’EDI (Tools->Burn Bootloader). Ce ne sont que des para- platino164p.hex
mètres pour avrdude. Les fusibles et paramètres de verrouillage platino164p.bootloader.unlock_bits=0x3f
dépendent bien entendu du micro que l’on souhaite programmer. platino164p.bootloader.lock_bits=0x0f
Le fichier bootloader nommé à la ligne 9 doit se trouver dans le platino164p.build.mcu=atmega164p
sous-dossier du dossier bootloaders précisé à la ligne 8. Si vous platino164p.build.f_cpu=16000000L
ne souhaitez pas programmer le bootloader depuis l’EDI, tous ces platino164p.build.core=platino
paramètres peuvent être bidons. Vous pourrez également préciser platino164p.build.variant=ATmegaXX4
un bootloader qui n’est pas compatible avec le protocole de com-
elektor 03-2012 69
platino
votre carte, cela fait beaucoup, mais, en fait, peu d’entre eux sont à
modifier. Pour Platino, j’ai préféré mettre les réels ajouts dans des
fichiers à part et n’ai eu à modifier que quatre fichiers (de ma copie
de cores). Voici mes modifications :
Arduino.h
Ce fichier est inclus par beaucoup d’autres fichiers du noyau et
Figure 1. Extrait du fichier wiring_analog.c, montrant une bibliothèques, ce qui en fait l’endroit idéal pour ajouter des liens
modification de code pour le portage de Platino. vers votre code. J’ai écrit mes fonctions Platino en C++ et j’ai donc
ajouté un #include «Platino.h» à la liste en fin de fichier, juste
en dessous de #ifdef __cplusplus.
Le Listing 2 est une adaptation du listing 1 pour une carte Platino J’ai aussi dû définir les références de tensions INTERNAL1V1 et
équipée d’un ATmega164p. J’ai fait de même pour toutes les confi- INTERNAL2V56 pour les micros à 40 pattes sélectionnés par un
gurations auxquelles j’ai pensé, ce qui donne un total de 16 cartes #elif defined(ATMEGA_X4). La macro ATMEGA_X4 est définie
dans l’EDI. La variante utilisée est ATmegaXX4 (micros à 40 pattes), dans le fichier devices.h créé par moi et inclus au début du fichier.
j’ai aussi créé une variante ATmegaXX8 pour les micros à 28 pattes.
70 03-2012 elektor
Publicité
exemple fonctionne avec Platino – mais cela rend le portage plus
compliqué avec plus de chemins à surveiller. J’ai préféré intégrer Pochoir CMS gratuit
tions. Étant donné que Platino est compatible avec plusieurs AVR
en plusieurs versions, les #ifdef ont tendance à devenir longs.
J’ai par conséquent décidé de créer deux groupes, un groupe pour
Appel Gratuit : FR 0800 90 33 30
les micros à 40 pattes (ATMEGA_X4) et un pour ceux à 28 pattes [email protected]
(ATMEGA_X8). Les nouveaux micros s’ajoutent ici.
Platino.cpp & h
Pour rendre les périphériques Platino faciles d’accès, j’ai créé un
objet Platino pratique sous la forme d’une classe. Créez une instance
de cette classe et vous aurez accès à tous les périphériques Platino.
Il s’agit en fait d’un wrapper (n.d.t :programme d’encapsulation)
pour les classes gérant les périphériques, mais un qui sait gérer les
cavaliers de configuration de Platino. J’en reparlerai.
elektor 03-2012 71
platino
Sympa, hein ?
La ligne 3 mérite quelques explications. Il s’agit d’un appel à la
fonction de cadencement de l’encodeur rotatif n°2, qui met à jour
counter dans le même temps. Lorsque cette fonction renvoie une
valeur non-nulle, counter a changé. Comme l’indique le commen-
taire, il faudra appeler cette fonction souvent sous peine de rater
des événements.
Bien sûr toutes les fonctions publiques des classes telles que Liqui-
dLCD seront utilisables dans votre programme tant que vous n’ou-
bliez pas de les préfixer avec « platino point » ( platino.).
72 03-2012 elektor
Allez au bout
idées!
de vos
chipKIT™: marque déposée de Microchip Technology Inc Max32™: marque déposée de Digilent, Inc
INFOs
Concours RS
DesignSpark ChipKIT™
Ian Bromley (Royaume-Uni)
Dans son dernier mois, le concours de conception d’applications économes en énergie DesignSpark
chipKIT™ a déjà permis de voir des projets inattendus et novateurs mais il reste ouvert... si vous êtes rapide...
Le concours touche à sa fin et il ne vous reste que quelques semaines l’orientation en plongée et un GPS pour déterminer la position
pour tenter de gagner un prix. Lancé dans la bonne humeur en absolue en surface. Le propulseur à ballast, qui utilise les variations
novembre dernier, il vise à encourager les ingénieurs, étudiants de la flottabilité, et les actionneurs de contrôle du tangage et
et autres amateurs à innover dans le domaine des économies du roulis se chargent des déplacements. Ajoutez à ça un capteur
d’énergie, tout en surveillant l’empreinte écologique. Il y a 10.000 $ à transfert de charges pour mesurer la conductivité de l’eau, la
à gagner, dont un premier prix de 5.000 $. À l’apogée du concours, température et la profondeur et les données enregistrées dans la
les participants auront certainement bien avancé leur projet basé mémoire flash permettent de dresser un profil caractérisé de la
sur la plateforme compatible Arduino de Digilent, j’ai nommé le salinité.
chipKIT™ Max32™. Autre projet intéressant : un système de contrôle de l’arrosage
Basée sur un microcontrôleur PIC32 de Microchip, elle permet et des nutriments pour la culture hydroponique. Il surveillera les
aux développeurs d’intégrer facilement et à moindre coût de conditions climatiques et déterminera les besoins des plantes,
l’électronique dans leurs projets. Le matériel est compatible avec économisant eau et produits chimiques. La plupart des fermes
les cartes d’extensions (shields) 3,3V et les applications Arduino hydroponiques utilisent des régimes d’alimentation constants, sans
et peut-être utilisé avec une version modifiée de l’EDI Arduino ; à prise en compte des conditions environnementales, les économies
vous les programmes d’exemple, bibliothèques et références du sont donc quasi assurées.
monde Arduino ! Enfin, un « jardin intelligent » permettant de contrôler la croissance
d’une plante avec une intervention humaine minimale, et combinant
Certains ont toutefois eu quelques problèmes, surtout avec les les sources d’énergie renouvelables, comme l’énergie solaire, à la
pilotes USB et la connexion des cartes aux PC. Voici quelques faible consommation de la carte pour réduire significativement
conseils qui devraient être utiles aux nouveaux participants : primo, l’empreinte écologique. Le système embarquera divers capteurs
les pilotes pour une large gamme de puces FTDI, fournis dans la d’humidité, température ou luminosité et des actionneurs tels
bibliothèque d’outils de l’EDI open source multiplateforme MPIDE, qu’une pompe d’irrigation. Modulaire, il pourra être étendu, par
devraient régler la plupart des problèmes de connexion ; deuxio, si exemple en ajoutant du Bluetooth pour les notifications utilisateur ;
vous faites partie des rares personnes à avoir des problèmes avec une idée que nous adorerions voir se développer cette année, à
Windows 7, utilisez le mode « XP » si possible. l’heure du tout internet...
Pour nous mettre en bouche, détaillons quelques exemples de ce
que vous pourrez trouver sur le site de la communauté en ligne Inutile de dire qu’il ne s’agit que de trois des nombreux projets en
DesignSpark www.designspark.com. cours de développement.
Les propositions couvrent des domaines aussi variés que la Les projets seront jugés sur l’efficacité énergétique et la qualité de
domotique, le contrôle ou la surveillance de charge de panneaux conception du circuit imprimé de la carte d’extension. Les copies
solaires ou d’éoliennes. Certains projets sont plus exotiques, comme sont à rendre le 27 mars 2012 et les gagnants seront annoncés
le contrôleur de planeur sous-marin autonome, ou l’afficheur de en avril.
consommation instantanée en km/l. Pratique pour conduire « éco » (120188 - trad. Kévin PETIT)
avec une vieille voiture.
Le planeur est très intéressant, la méthode de propulsion employée
consomme peu et lui confère une très bonne autonomie. Une carte Détails et inscription sur :
d’extension, en cours de développement, se chargera de l’interface chipkitchallenge.com.
avec les capteurs et actionneurs. Il y aura un accéléromètre,
un gyroscope et un magnétomètre, tous trois sur 3 axes, pour
Ian Bromley, ingénieur marketing technique chez RS, dirige le projet logiciel DesignSpark PCB.
Avant RS, Ian a travaillé comme consultant en support technique chez Texas Instruments, en plus
du travail d’ingénieur de terrain (FAE) commencé immédiatement après l’obtention, en 1994, de
son diplôme en d’ingénierie en microélectronique.
74 03-2012 elektor
MicroprocessEUrs
Cet article décrit l a conception électrique et les conditions logicielles d’une serrure électronique sans
clé, composée d’un pavé numérique, d’un affichage à cristaux liquides, des contacts d’un relais pour
déverrouiller la porte et d’une interface USB. Même si cet article plonge dans les entrailles du circuit
intégré FT2232H de FTDI et son mode bit à bit, la technique est compréhensible sans connaissance
approfondie de l’USB ni le recours à un microcontrôleur !
Je supposerai pour commencer que le lec- DLP-USB1232H pour faciliter l’assemblage), (au moyen de la fonction FT_Write()) n’appa-
teur s’est déjà un peu familiarisé avec la le mode Bit-Bang peut être activé. Le code raissent pas instantanément sur les broches
gamme de circuits intégrés USB de FTDI — source en VC++ de ce projet peut être télé- de sortie. Au lieu de cela, les données appa-
faciles à utiliser — avant de se pencher sur chargé de la page [2]. La commande D2XX raissent à une cadence de mise à jour prédé-
quelques-unes de leurs caractéristiques les pour activer le mode Bit-Bang est finie. Si la cadence de mise à jour (ou le débit
moins connues. Si vous n’avez jamais été
en contact jusqu’ici avec ces composants, FT_STATUS status =FT_SetBitMode(m_ftHandle, 0x01, 0x01)
mon conseil est de potasser leurs caractéris-
tiques et applications à l’aide de quelques- La « poignée » (handle) est renvoyée par la en bauds) est de 9600 et que vous envoyez
unes de mes publications précédentes [1]. commande d’ouverture du port, le deu- plusieurs octets de données à la fois, chaque
Pour revenir à ce projet, tout le logiciel uti- xième paramètre indique quelles lignes sont octet apparaîtra automatiquement sur les
lisateur résidera dans une seule applica- des entrées et sorties, le troisième précise le lignes de sortie — un à la fois — toutes les
tion sur le PC hôte, et les seuls circuits inté- niveau logique initial des lignes configurées 104 µs jusqu’à ce que le dernier soit passé.
grés seront le FT2232H et quelques portes en sorties. Les puces USB de FTDI ont toujours été
logiques simples. Le module FTDI utilisé est Pour lire le niveau logique des lignes confi- capables de fonctionner ainsi. Toutefois,
en vente chez DigiKey, Mouser Electronics et gurées en entrées, il faudrait utiliser la fonc- c’est seulement depuis l’apparition de
autres distributeurs FTDI. tion FT_GetBitMode (m_ftHandle, &data). Le leurs nouvelles puces à grande vitesse que
paramètre data désigne l’état actuel des la cadence de mise à jour peut être com-
Principes du Bit-Banging entrées. Le point important à retenir est que mandée précisément et que huit flux sériels
Une fois les pilotes USB installés sur le PC et cette fonction envoie l’état instantané des simultanés peuvent être produits avec un
le port ouvert au module USB (j’ai utilisé le entrées. Inversement, les données écrites débit en bauds précis pour attaquer des
elektor 03-2012 75
MicroprocessEUrs
récepteurs sériels avec un débit stable. Par des données en retour ; c’est parfait pour Une seule variable à huit bits
exemple, le code suivant fixera la cadence notre projet puisque nous ne faisons que L’application de l’hôte suit toutes les entrées
de mise à jour pour le débit requis par le piloter un afficheur LCD (Crystalfontz Ame- et sorties, y compris le flux de données vers
module LCD et l’interface TTL que j’utilise rica réf. CFA632-YFB-KS) avec des don- l’afficheur, avec une seule variable à huit
dans ce projet : nées sérielles aux niveaux TTL et que nous bits. Pour lire l’état logique d’une ligne d’E/S
div = 0x8c30;//35888 décimal pour 19200 bauds vers le LCD avec une erreur de 0,6%
status = FT_SetDivisor(m_ftHandle, div);
Remarquez que les données sérielles peu- n’avons que faire de données en retour. configurée en entrée, vous devez appeler la
vent seulement être émises à une cadence Maintenant que nous avons accès à huit fonction FT_GetBitMode() et appliquer un
définie. Malheureusement, aucune réponse lignes d’entrées-sorties capables de débi- masque aux données reçues de façon à voir
sérielle ne peut être lue sur une ligne ter des données sérielles à la cadence dési- un bit unique. Pour changer l’état logique
d’entrée. Il faudrait utiliser le deuxième rée, la plate-forme matérielle est prête pour d’une sortie, vous commencerez par mettre
canal du circuit intégré USB pour recevoir notre projet. à jour l’état du bit visé dans la variable à huit
+5V
LCD1 CFA-632
1 MOD1 18 DB0
GND DB0
DB2 2 17 DB4 VCC 2
DB2 DB4 U4.A
DB7 3 16 DB1 DB7 1
DB7 DB1 3 DATA 4
DB5 4 15 2 1
DB5 RXF
DB3 5 14 GND 1
DB3 TXE
6 13 DB6
PWREN DB6
7 12 Afficheur LCD à interface sérielle TTL
+5V SIWUA WR
8 11
EXTVCC RD +5V +5V
9 10
D2 PORTVCC GND
R1 C1 MMBT3904 RE1 4 9
1
DB0
360R
100n
USB 12
Q4 5 3 8 10 J1
5 3
DB6 VCC 2
1 Q1 D1
D U2 R3 1
4
Q 470R
U4.C SN74LVC
DB3
DB2
DB1
2
DB5 9 C 1G79 R2
8 MMBT3904
S1 S2 S3 10 1 GND
360R
1 2 3 DB7
+5V
S4 S5 S6
MMBT3904 BZ1
+5V
4 5 6 DB6
S7 S8 S9 Q2
U4.D Q3
13 C3 14 C2
7 8 9 DB5 DB4 12 1
11
U4 U4 = 74HCT32/SO
100n R4 7 100n U4.B
S10 S11 S12 MMBT3904 4
6
1
10k
ENTER 0 CLEAR
DB4
110561 - 11
Figure 1 - Attaqué de façon adéquate en mode bit à bit, le module DLP-USB1232H devient l’élément actif d’une serrure codée.
76 03-2012 elektor
MicroprocessEUrs
Publicité
elektor 03-2012 77
Consonant : préamplificateur
de haute qualité (1978)
Jan Buiting (Elektor UK/US Editorial) un circuit imprimé grand comme ça [à en juger par ses gestes, il
devait bien faire 30 cm] pour élargir l’image stéréophonique. Je ne
me souviens plus du nom de l’appareil, mais quel circuit !». Wisse
Mon évocation nostalgique de ce mois commence par un épisode est un bleu, sa mémoire elektorienne ne remonte qu’à une demi-
assez récent de la vie d’Elektor, à savoir la dernière journée Elektor- douzaine d’années ; il a donc bafouillé quelque chose et s’en est tiré
Live! L’histoire démarre lors de notre grand raout annuel tenu en par une pirouette comme le font les interviouveurs.
novembre 2011, mais elle remonte à l’année 1978 qui est celle de Plus tard, pour le montage de cet entretien vidéo, nous avons évi-
la naissance d’Elektor en France. demment cherché à mettre un nom sur ce projet oublié. Il retrou-
L’invité de prestige de l’édition 2011 d’Elektor Live! était un ponte verait un lustre inattendu puisqu’il existait encore dans la mémoire
de Philips, M. Henk van Houten. C’est un peu comme si, en France, d’un personnage si important qu’on n’imaginait même pas qu’il ait
Elektor invitait le patron de Thales ou d’Alcatel. Le PDG de Philips jamais lu un article d’Elektor. Il a fallu la mémoire encyclopédique de
Research est arrivé à l’heure, cela mérite une mention, pour hono- notre collègue Harry pour faire le rapprochement entre cette fonc-
rer de sa présence l’Evoluon, fleuron de l’architecture d’avant-garde tion d’élargisseur de l’image stéréophonique et le préamplificateur
néerlandaise des années 60, quand les mots Philips et Hollande de 1978 au nom embarrassant : Consonant.
étaient encore synonymes. L’immeuble qui tient du château d’eau L’anecdote en serait restée là si je n’avais pas rapporté sur mon
et de la soucoupe volante mérite votre attention. bureau un prototype du Consonant, retrouvé dans les combles, avec
À la grande surprise des deux hôtes elektoriens chargés de rece- son étonnant circuit imprimé de grande largeur, monté derrière la
voir M. van Houten, celui-ci les entreprit sur des sujets terre-à-terre, face avant de l’appareil. En découvrant cette antiquité, mes jeunes
comme le soudage des composants, l’isolation des 2N3055 sur leurs collègues férus d’audio vintage me pressèrent de questions du
radiateurs et le perçage, alors qu’eux avaient préparé pour lui des genre : « on dirait un Sanyo ou un Kenwood ou Sony des années 80,
sujets de conversation de haut vol, comme la macro-économie de non? ». Il n’en fallait pas plus pour en faire le sujet de ma rubrique.
l’électronique, avec le jargon financier de rigueur. Dans son entre- L’article sur le Consonant, beau comme un sou neuf, a été publié sur
tien [1] avec notre directeur éditorial Wisse Hettinga, l’étonnant pas moins de dix pages du numéro d’été anglais de cette année-là,
Henk évoque ses années de pratique active de l’électronique, mais au milieu de l’habituelle mitraille estivale, et en France dans l’édition
ne retrouve plus le nom d’un « vieux circuit audio d’Elektor avec spéciale numérotée 5-6.
Rétronique est une rubrique mensuelle s’intéressant à l’électronique du siècle dernier y compris des montages de légende décrits dans Elektor. Nous
sommes ouverts à toutes les contributions et suggestions. N’hésitez pas à nous envoyer un Email à : [email protected], sujet : Rétronique Elektor.
78 03-2012 elektor
Le nom de Consonant s’inscrit dans une tradition de la nomenclature
des années 1970 qui, pour dénommer les appareils, puisait volon-
tiers dans le vocabulaire musical : Crescendo, Prelude, Stentor, Fidelio
(non, celui-là n’est pas un enfant d’Elektor) etc. Ce nom reste une
jolie trouvaille qui recèle d’ailleurs quelques subtilités inattendues.
En français comme en anglais, la consonance est le contraire de la
dissonance. L’étymologie est latine, avec le préfixe con-, qui signifie
« avec », et le verbe sonare qui signifie résonner. Plus prosaïquement,
mais toujours dans le domaine du sonore, la consonne est aussi la relevés de mesure, effectués avec du matériel Bruel & Kjaer, s’il vous
compagne de la voyelle, celle qui sonne plaît (on ne se mouchait pas du pied au labo d’Elektor en ce temps-
avec. Or en haute-fidélité, on cherche pré- là). Nos lecteurs apprécieront le schéma du Consonant repris ici pour
cisément à éviter tout ce qui pourrait son- le plaisir de la nostalgie et de la gloriole, avec les spécifications.
ner avec la musique : surtout pas de bruit, Revenons à nos moutons, ou plus précisément à ce fameux élargis-
de souffle, de ronflement, ni de parasites seur d’image stéréo par lequel tout a recommencé. Une image élar-
RTL ou DeutscheWelle… qui dépareraient gie passait pour souhaitable à cette époque, notamment pour don-
le signal audio que l’on veut pur.
Hormis cette note de lyrisme dans le
nom de l’appareil, il n’y a aucune trace
de vocabulaire musical dans l’article de
1978 :
Les principales considérations qui ont pré-
sidé à l’étude du Consonant ont été :
• La comparaison des performances et
possibilités offertes avec celles four-
nies par les meilleures réalisations du
commerce,
• La simplicité de la construction et
l’utilisation de composants facilement
disponibles,
• La disposition logique et claire des
organes de réglage, rendant l’utilisation
facile.
elektor 03-2012 79
sion d’éloignement entre les deux voies stéréophoniques et l’élar-
gissement de l’image perçue par l’auditeur, conformément au
canon esthétique de ces années-là. L’effet avait déjà été décrit dans
le numéro 1 de l’édition française d’Elektor, page 36.
À la fin des années 70, il était encore de bon ton de construire soi-
même à bon prix sa chaîne haute-fidélité — et d’en être fier. Même
en anglais les mots nerd et geek n’existaient pas, et hobbyist n’était
pas une insulte. Le fait d’implanter tous les composants, y compris
les organes de commande, sur le même circuit imprimé passait
pour une innovation remarquable : plus de fil de câblage, moins de
parasites, moins de bruit. Comme chaque médaille a son revers, il a
fallu isoler soigneusement le corps des potentiomètres de la façade
métallique afin d’éviter les boucles de masse. Ce détail n’avait pas
été mentionné dans l’article initial, mais il apparaît à la fin de l’ar-
ticle de l’édition française, postérieure de quelques mois.
Pour éviter la coupure inévitable entre une page de gauche et une
page de droite au mitan du magazine, on a pris soin de publier le
majestueux circuit imprimé (370 x 90 mm) sur les pages centrales,
car elles appartiennent au même cahier et sont les seules à ne pas
souffrir de décalage. Idem pour le plan d’implantation des compo-
sants et la face avant. Dans ces années-là, de très nombreux lec-
teurs gravaient encore eux-mêmes leurs circuits imprimés, et nom-
breux sont ceux qui n’ont pas hésité à détacher les pages centrales
de leur précieux magazine pour transférer le dessin des pistes sur
une plaque cuivrée.
Le Consonant photographié ci-contre n’a pas remarché dès la mise
sous tension ; il m’a fallu refaire deux soudures, sur un condensateur
au tantale et sur un régulateur de tension. Et puis il s’est réveillé de
son long sommeil. Dans le même coffret, on trouve un Preconso-
nant, préamplificateur pour disque microsillon, publié dans le pre-
mier numéro d’Elektor.
80 03-2012 elektor
RÉCRÉATION
Hexadoku
Casse-tête pour électroniciens
Combien de grilles Hexadoku différentes de 16 x 16 chiffres est-il possible de composer?
Nous l’ignorons et ne craignons pas pour l’instant d’épuiser toutes ces possibilités. En voici une
nouvelle, que vous ne devriez n’avoir encore vue nulle part. Remplissez-la et envoyez-nous votre
solution. Vous gagnerez peut-être l’un des quatre chèques-cadeaux Elektor mis en jeu.
Les instructions de ce jeu sont simples. Une grille Hexadoku est chaque rangée, colonne et carré de 4 x 4 cases (délimités par un filet
composée de chiffres du système hexadécimal, de 0 à F. Du tout cuit gras). Certains chiffres, déjà placés dans la grille, en définissent la
pour les électroniciens et les programmeurs ! Remplissez le diagramme situation de départ. Si vous trouvez la solution de ce casse-tête, vous
de 16 x 16 cases de telle façon que tous les chiffres hexadécimaux de pouvez gagner un chèque-cadeau. Inutile de nous envoyer toute la
0 à F (0 à 9 et A à F) n’apparaissent qu’une seule et unique fois dans grille, il suffit de nous envoyer la série de chiffres sur fond grisé.
Les gagnants
La solution de l’Hexadoku du nº 403 (janvier) est : 43ADE
Le gagnant du chèque-cadeau Elektor d’une valeur de 100 € est : Christian Klems de Nijkerk (Pays-Bas).
Les 3 chèques-cadeaux Elektor d’une valeur de 50 € chacun vont à : Antje Völksch. de Bayreuth (Allemagne),
Raúl Elguezabal Martínez, de Barakaldo – Vizcaya (Espagne) et Marc Herzog, de Luxembourg (Luxembourg).
Bravo à tous et félicitations aux gagnants !
6 B 7 A 3 0 8 9 1 5 D C 2 4 E F
8 C 9 E 6 B 4 F 2 0 A 7 3 D 5 1
F D 1 2 7 5 A C 3 4 9 E 8 0 6 B
0 5 3 4 D E 1 2 6 8 B F 7 9 A C
7 F D 0 E C B 5 8 2 4 A 1 3 9 6
4 A 6 8 2 3 0 1 C 9 F B E 5 D 7
C 3 B 1 4 6 9 7 E D 0 5 A 8 F 2
9 E 2 5 8 A F D 7 1 6 3 B C 0 4
A 0 C F 5 7 2 E 4 3 8 9 6 B 1 D
D 6 E 3 F 1 C B 0 A 5 2 4 7 8 9
B 1 8 9 0 4 3 A D E 7 6 C F 2 5
2 4 5 7 9 8 D 6 B F C 1 0 E 3 A
3 7 0 6 A F 5 4 9 B 2 8 D 1 C E
E 8 A C B 9 7 0 F 6 1 D 5 2 4 3
1 9 4 D C 2 6 3 5 7 E 0 F A B 8
5 2 F B 1 D E 8 A C 3 4 9 6 7 0
Tout recours est exclu de même que le sont, de ce jeu, les personnels d’Elektor International Media B.V. et leur famille. Un seul gagnant par foyer.
elektor 03-2012 81
e-CHOPPE LIVRES
Morceaux choisis
La bibliothèque des PHOTOVOLTAÏQUE
L’électronique
pour les débutants
Par où commencer pour débuter en élec-
livres
256 pages • 14 x 21 cm • ISBN 978-2-86661-182-8 • 32,50 o 317 pages • ISBN 978-2-86661-180-4 • 39,50 o
82 03-2012 elektor
23 projets ludiques et instructifs Initiation et maîtrise par l’expérimentation Les microcontrôleurs au service de
à construire soi-même 50 applications des l’écologie
Informations
35 projets d’initiation en C avec la carte
mbed NXP LPC 17688 complémentaires Mes premiers pas !
Microcontrôleurs Électronique
et gamme complète
RISC 32 bits logique & numérique
sur notre site Regardez les appareils actuels : on y trouve
à architecture ARM essentiellement des puces, des microcon-
La plate-forme mbed et son micro-
contrôleur ARM, le NXP LPC1768, sont
www.elektor.fr trôleurs, des dispositifs logiques program-
mables, etc. Les circuits intégrés simples,
conçus pour l’informatique en nuage comme le 4000 ou le 4093, y sont plus ra-
ou cloud computing qui révolutionne res. Se familiariser avec de tels circuits reste
le développement de logiciel : aucune Elektor / Publitronic SARL pourtant la porte d’entrée idéale du mon-
installation de logiciel spécifique, il suffit 1, rue de la Haye de de la logique. Car c’est d’opérateurs,
d’un navigateur et d’un port USB. Vous BP 12910 de bascules bistables et de compteurs
programmerez et stockerez vos résul- 95731 Roissy CDG Cedex que sont faits les montages numériques
tats sur l’internet, et y accéderez depuis Tél. : +33 (0)1.49.19.26.19 même les plus complexes. L’apprentissage
n’importe quel PC, où que vous vous trou- Fax : +33 (0)1.49.19.22.37 des notions fondamentales est plus facile
livres
viez. Dans ce livre, il est question aussi lorsqu’il s’accompagne de travaux pra-
@ : [email protected]
bien du langage C, des bibliothèques tiques ; c’est pourquoi ce livre est associé à
mbed, d’exemples de programmes que un kit d’initiation réunissant une plaquette
du traitement de signaux analogiques, d’expérimentation universelle et tous les
de capteurs, de moteurs etc. composants requis.
232 pages • ISBN 978-2-86661-178-1 • 39,50 o 156 pages • ISBN 978-2-86661-175-0 • 29,50 o
elektor 03-2012 83
e-CHOPPE CD & DVD-ROM, KITS & MODULES
cd & dvd-rom
Convertisseur
USB/RS485
kits & modules
(Elektor juin 2011)
Passerelle USB/série
Le convertisseur USB/RS485 établit la
Les articles de la série populaire BOB-FT232R connexion entre un port USB de votre
Elektor-CC2-AVR réunis sur CD-ROM ordinateur (portable) et un bus RS485
(Elektor septembre 2011)
CD ATM18 Collection à deux fils. Un bornier à vis assure une
Ce convertisseur USB/serie vous surpren- connexion facile et fiable du bus RS485.
Voici la compilation sur CD-ROM de la sé-
dra d’abord par sa taille : pas plus grande Grâce au populaire circuit intégré FT232L
rie populaire Elektor-CC2-AVR, soit plus
que l’embout moule d’un câble USB ! Il et ses pilotes de FTDI le convertisseur
de 25 projets autour de la carte ATM18,
vous epatera aussi parce qu’il est pratique, fonctionne non seulement avec toutes
les logiciels associés, les typons (PDF)
rapide a mettre en oeuvre, reutilisable, les versions actuelles de Windows, mais
et des informations complémentaires.
multi plate-forme (Windows, Linux, etc.) aussi avec Windows CE, Windows Mobile,
Le tout est complété par un cours com-
et pas trop cher pour autant. Linux et Mac OS X.
plet de programmation BASCOM-AVR
en 6 leçons. Platine montée et testée Platine montée et testée
84 03-2012 elektor
F405 mars 2012 €
vos favoris
références disponibles
livres
110687-41 ..... Microcontrôleur programmé Pico C-Plus Intelligence artificielle
(ATtiny2313-20PU) ................................................... 4,95
110687-42 ..... Microcontrôleur programmé Pico C-Super
4 ISBN 978-2-86661-179-8 ......................42,50 o
Commutation RS-485
L’ElektorBus se prête parfaitement à des applications pratiques, par exemple dans le domaine
de la domotique, pour interconnecter des circuits de mesure, de commande et de régulation.
C’est dans cet esprit que nous publierons un module de commande de domotique pour l’Elek-
torBus, équipé de deux relais, d’un microcontrôleur ATmega88 et d’un pilote de ligne RS-485.
Ce module permettra de commuter des charges sous 230 V. Deux entrées du contrôleur sont
reliées à un bornier auquel il est facile de connecter des interrupteurs ou des poussoirs. Bien
entendu, le logiciel de commande de ce module sera compatible avec l’ElektorBus.
86 03-2012 elektor
DÉFI QUOTIDIEN N°1 : LA RAPIDITÉ
V1
12 V U1 C3
10nF
– C4
R4
270kΩ
+ 741 100nF 5%
V2
C3
10nF
12 V
©2012 National Instruments. Tous droits réservés. LabVIEW, National Instruments, NI, et ni.com sont des marques de National Instruments.
Les autres noms de produits et de sociétés mentionnés sont les marques ou les noms de leurs propriétaires respectifs. 04458