08.05.2018 Views

Elektor Electronics 2018 01 02 469

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

les circuits partiels correspondants dans les schémas compris<br />

dans le paquet à télécharger [2].<br />

Au kit de développement LaunchPad (figure 10) sont joints<br />

deux contrôleurs MSP430 avec jusqu’à 16 Ko de flash,<br />

512 octets de RAM, une horloge à 16 MHz et des périphériques<br />

intégrés tels qu’un CA/N à 8 canaux de 10 bits, un temporisateur,<br />

des interfaces sérielles (UART, I2C, SPI) et plus encore.<br />

Sur la carte, on trouve en outre une prise DIP à 14/20 contacts,<br />

des boutons, des LED et des possibilités de connecter un large<br />

éventail de modules aux fonctions supplémentaires (sans-fil,<br />

affcheur), ainsi qu’un câble USB de programmation. Si votre<br />

enregistreur du chauffage n’est pas en service, vous pourrez<br />

encore réaliser de belles expériences avec le LaunchPad !<br />

Le micrologiciel a été réalisé avec Energia [3], un EDI Arduino<br />

basé sur la plateforme de prototypage rapide pour le LaunchPad<br />

de Texas Instruments. On y trouve de nombreuses bibliothèques<br />

intégrées toutes prêtes pour simplifier la rédaction du logiciel.<br />

Le code source en C est bien ordonné, on peut facilement le<br />

modifier et l’étendre, par exemple pour éditer ou formater<br />

les résultats de mesure et les adapter à d’autres logiciels que<br />

le programme de visualisation utilisé. Dans le dossier téléchargé,<br />

vous trouverez deux versions du micrologiciel, l’une<br />

pour Energia 16 dans lequel le projet a été initié, l’autre pour la<br />

plateforme actuelle Energia 18. Le code C pour Energia 18 est<br />

actualisé, mais il reste tout de même lieu d’apporter quelques<br />

modifications pour que la plateforme puisse reconnaître le<br />

microcontrôleur MSP430G2553. Tout cela est décrit dans les<br />

commentaires du programme.<br />

Figure 7. La carte numérique au format européen.<br />

ISO1541, un isolateur bidirectionnel pour I²C, tandis que pour<br />

la tension d’alimentation, c’est un tampon push-pull SN65<strong>01</strong><br />

qui transfère l’énergie vers la sortie en passant par un transformateur.<br />

La figure 9 montre le schéma en détail, un régulateur<br />

fixe LP2985-5.0 stabilise la tension à 5,0 V pour la partie<br />

analogique. C’est la tension de +5 V de l’interface USB qui<br />

sert à alimenter le reste du circuit du côté « froid ». Il ne faut<br />

donc pas d’autre source et la liaison entre le PC et la carte de<br />

mesure se résume au câble USB.<br />

De cette manière, il y a une séparation fiable entre toutes les<br />

entrées et l’interface USB. En cas d’anomalie éventuelle du côté<br />

des entrées, l’utilisateur et son PC sont protégés à coup sûr.<br />

Le contrôleur et son micrologiciel<br />

Au vu du circuit imprimé, il est clair que la partie qui concerne<br />

le contrôleur (en haut sur la figure 6) est parfaitement isolée.<br />

Comme contrôleur, j’ai choisi un module de développement<br />

tout fait et très bon marché, le LaunchPad MSP-EXP430G2 [1]<br />

de Texas Instruments, à enficher simplement sur la carte analogique.<br />

Ce module est conçu pour le développement avec<br />

des contrôleurs à faible consommation et bas coût de la série<br />

MSP430G2x, et en boîtier DIP, s’il vous plaît ! Il y a autour<br />

du connecteur du module plusieurs composants de protection<br />

contre les surtensions ainsi que des composants de découplage<br />

et des voyants qui ne seront pas évoqués ici. Vous trouverez<br />

Le logiciel lui-même a une structure très simple. Après la définition<br />

et l’initialisation des E/S, du bus et de l’interface USB, le<br />

contrôleur teste le cavalier du port 2 (il est sous le LaunchPad,<br />

donc pas visible sur la photo). Ce cavalier matérialise le choix<br />

de la durée entre deux prises de mesure, par exemple toutes les<br />

cinq ou dix secondes sur un système lent comme une chaudière.<br />

Ensuite, dans la boucle principale, le microcontrôleur relève en<br />

séquence les données brutes du CA/N et de l’extension d’E/S.<br />

On utilise la variable channel dans les branches switch-case<br />

pour différencier les différents registres et adresses I²C. Le<br />

logiciel prend en considération les trois CA/N, mais un seul<br />

extenseur d’E/S à l’adresse 0x74. Si vous voulez mettre en<br />

jeu d’autres extenseurs d’E/S, vous devrez dupliquer le fragment<br />

équivalent et y incorporer les adresses de chacun d’eux.<br />

Les valeurs sont alors converties et délivrées sur le port sériel,<br />

qui apparaît sous forme d’un port COM sur le PC. Les valeurs<br />

analogiques sont présentées en nombres entiers de millivolts,<br />

les entrées numériques sous forme de 1 ou de 0. On envoie<br />

d’abord les douze valeurs analogiques, puis les seize numériques.<br />

Les valeurs sont chaque fois séparées par une barre<br />

oblique et à la fin de la collection, on va à la ligne.<br />

La représentation des données sur PC s’effectue avec le logiciel<br />

traceur de courbe RealView de la société Abacom [4]. Ce<br />

logiciel est très souple et facile à associer à des montages personnels.<br />

C’est lui aussi qui s’occupe de convertir les millivolts<br />

en températures, grâce aux formules qu’il contient.<br />

Conclusion<br />

Le système d’enregistrement de données présenté ici remplit<br />

son offce depuis de nombreux mois sans diffculté. En outre<br />

il a été d’une aide décisive pour optimiser les réglages de la<br />

98 janvier/février <strong>2<strong>01</strong>8</strong> www.elektormagazine.fr<br />

vu sur www.frboard.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!