Vous êtes sur la page 1sur 82

CERN Organisation Europenne pour e la Recherche Nuclaire e F-01631 CERN Cedex France http://www.cern.

ch/

Kvin Raymond e IUT Annecy Dpartement GEII e Anne 2007 e

Rapport de Stage Mesure dune temprature e avec prcision et transmission e par liaison sans l

Ma tres de stage Javier Serrano (Chef de section) Philippe Nouchi

Enseignants Jean-Louis Jorda Marcel Peyret

Remerciements
Tout dabord, jexprime ma profonde gratitude envers Javier SERRANO pour mavoir pris en stage, ainsi qu` Philippe NOUCHI sans qui il aurait t plus difa ee cile dentrer au CERN. Bien sr, je les remercie galement pour leurs nombreux u e conseils. Ils mont permis dorganiser mon travail dun point de vue professionnel. Je me dois galement de remercier Nicolas DE METZ-NOBLAT, un administrae teur qui sest occup de la rinstallation de mon syst`me et Christine GAYRAUD e e e pour le suivi des direntes commandes. e Jadresse aussi mes remerciements aux autres coll`gues pour la bonne ambiance e et les quelques conseils toujours bienvenus. ` Plus particuli`rement ` Matthieu CATTIN et Olivier BARRIERE pour la rae a e lisation du prototype. Merci ` Paul KENNERLEY pour sa prcieuse aide angloa e phone. Cest un rel plaisir de travailler dans une telle quipe. e e

Note
Ce projet est ralis ` base e e a de Pic 18F2550 mais peut facilement tre adapt pour dautres e e microcontrleurs. De plus, o A ce rapport a t rdig en L TEX ee e e en accord avec le monde du logiciel libre. Ce langage tant compil, il pere e met galement une mise en page de qualit e e et normalise. Je vous recommande dailleurs e A la classe Beamer de L TEX permettant de raliser rapidement des prsentations e e et des transparents de tr`s grandes e qualits. La connaissance e sacquiert par lexprience, e tout le reste nest que de linformation - Albert Einstein

Sommaire
Introduction 1 Le CERN 1.1 Prsentation . . . . . . . . e 1.2 Situation actuelle . . . . . 1.3 Groupe AB-CO . . . . . . 1.3.1 Salle de Contrle . o 1.3.2 Section AB-CO-HT 1 2 2 3 4 5 5 6 7 7 8 11 11 11 13 13 13 14 16 16 17

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

2 Les outils de dveloppements e 2.1 Schma et Circuit imprim . e e 2.1.1 KiCaD . . . . . . . . 2.1.2 gEDA . . . . . . . . 2.2 Les Microcontrleurs . . . . o 2.2.1 Les PIC sous Linux . 2.2.2 Piklab . . . . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

3 Mesure dune temprature e 3.1 Choix dun capteur . . . . . . 3.1.1 Capteurs actifs . . . . 3.1.2 Capteurs passifs . . . . 3.2 Pt100 : Circuit conditionneur 3.2.1 Les circuits intgrs . . e e 3.2.2 Un circuit adapt . . . e

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

4 Transmission sans l 22 4.1 Choix du protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4.2 Le module Xbee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5 LUSB 24 5.1 Human Interface Device . . . . . . . . . . . . . . . . . . . . . . . . 24 5.2 Exploitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 6 Impressions personnelles Conclusion Glossaire Bibliographie 26 27 28 29

iii

Annexes
A Tables Pt100 B Calcul dincertitude B.1 Donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e B.2 Les tapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 1 4 4 4

C Cartes 10 C.1 Emetteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 C.2 Rcepteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 e

Article Connexe
Utilisation de gEDA pour la Conception lectronique Assiste par Ordinateur. e e Utilisation de Piklab pour programmer les PIC sous Linux avec lICD2. Utilisation de la carte Pt100 et Xbee. Page 20 des annexes.

iv

Table des gures


1.1 2.1 3.1 3.2 3.3 Organisation des acclrateurs . . . . . . . . . . . . . . . . . . . . . ee Synoptique de la suite gEDA . . . . . . . . . . . . . . . . . . . . . . Structure interne de lADT70 . . . . . . . . . . . . . . . . . . . . . Source de courant stable . . . . . . . . . . . . . . . . . . . . . . . . Pont de Wheatstone . . . . . . . . . . . . . . . . . . . . . . . . . . 3 9 17 18 19 3 11 15

A.1 Table Pt100 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.1 Schma Emetteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . e C.2 Schma Rcepteur . . . . . . . . . . . . . . . . . . . . . . . . . . . e e

Introduction
Gnralits e e e
Etudiant en deuxi`me anne ` lInstitut Universitaire et Technologique (IUT) e e a dAnnecy en Gnie Electrique et Informatique Industrielle (GEII), jai t amen e ee e a e ` raliser un stage dune dizaine de semaines pour dcouvrir le monde industriel e et un domaine dactivits. Je lai eectu au sein du CERN du 2 avril au 22 juin e e 2007. Ce stage a t une opportunit pour moi de travailler dans un centre de ee e recherche. Le but tant non pas le prot mais lavance scientique, cela cre une e e e relle motivation. e Cest dans ce cadre que jai mis en pratique mes connaissances acquises ces derni`res annes, mais galement appris ` madapter pour optimiser et non plus e e e a appliquer pour raliser. e

Cahier des charges


Ne sagissant pas dune tche critique, javais pour but de raliser un projet a e pouvant facilement tre repris pour mieux ladapter aux besoins du CERN. e Il consiste en deux cartes : lune mesurant la temprature avec le plus de pre e cision possible (0,1 C), la seconde recevant les tempratures pour les enregistrer e sur un ordinateur qui devra les traiter. La carte de mesure de temprature devant e tre alimente par une pile (9V), sa consommation doit tre minimale. Ces deux e e e cartes doivent tre en liaison sans l avec une porte raisonnable. e e Le choix du capteur est libre, tout en respectant la prcision sur une plage e mesure de 0 C ` +30 C. Le protocole utilis pour la transmission sans l est libre a e mais doit tre able et dune faible consommation. Pour ce qui est de la rception e e sur lordinateur, le protocole est galement libre. e Il doit tre possible davoir plusieurs satellites (carte de mesure pour la tempe e rature) ` divers endroits mettant les informations vers lordinateur. a e Une contrainte plus restrictive est dexplorer le monde du logiciel libre. Pour ce qui est de la ralisation de la carte et du dveloppement logiciel, jai explor ce e e e domaine sur une machine GNU/Linux. Cela ma galement permis de me familiariser avec Linux. e

Apr`s avoir prsent le CERN, nous nous intresserons ` mon activit de stae e e e a e giaire ainsi quaux travaux raliss, et enn nous ferons le bilan de ce stage avant e e de conclure sur sa globalit. e
a Kvin Raymond e -1Rapport de Stage

1
1.1

Le CERN
Prsentation e

Le Centre Europen pour la Recherche Nuclaire (CERN) est lun des plus e e prestigieux centre de recherche fondamentale au monde. Cr en 1954 pour rassembler les plus grands chercheurs Europens, il est linee e vestigateur de grandes technologies telles que le World Wide Web ou la supraconductivit. La Cryognie est galement un domaine dans lequel le CERN inove. e e e Le CERN est devenu lOrganisation Europenne pour la Recherche Nuclaire. e e Le but tant de fournir les outils dont les physiciens du monde entier ont besoin. e Ceci par des acclrateurs de particules associs ` leurs dtecteurs, ils annalysent ee e a e les collisions entre les particules lmentaires. ee La mise en commun des donnes ` exploiter par les physiciens du monde ene a tier est le point de dpart du dveloppement dInternet. Maintenant, un nouveau e e syst`me se met en place : la Grille. e La grille nous permet de combiner la puissance de centres de calculs scientiques o` quils soient, pour fournir la ressource informatique la plus puissante u que puisse orir le monde indique Ian Bird, chef du dploiement de la grille au e CERN. Grce au rseau de bres optiques, il ny aura pas de temps de latence a e pour les transferts de donnes entre ordinateurs. e Cette infrastructure permettra de traiter les 14 ptaoctets gnrs chaque ane e ee ne par le nouvel acclrateur (LHC). Cela quivaut ` plus de vingt millions de e ee e a cdroms. Il est prvu pour tre oprationnel n 2007. Pour exploiter toutes ces e e e e e donnes, il faut une puissance de calcul quivalente ` 70 000 ordinateurs persone e a nels, les plus rapides de lpoque actuelle. e Ce laboratoire europen pour la physique des particules sest ouvert ` beaucoup e a de pays. Ses Etats membres sont les suivants : Allemagne, Autriche, Belgique, Danemark, Espagne, Finlande, France, Gr`ce, Hongrie, Italie, Norv`ge, Pays- Bas, e e Pologne, Portugal, la Rpublique slovaque, la Rpublique tch`que, Royaume-Uni, e e e Su`de et Suisse. La Fdration de Russie, Isral, la Turquie, la Yougoslavie (le e e e e statut dobservateur est suspendu apr`s lembargo de lONU, juin 1992), la Come mission des Communauts europennes et lUNESCO ont le statut dobservateur. e e

a Kvin Raymond e

-2-

Rapport de Stage

1.2. SITUATION ACTUELLE

1.2

Situation actuelle

Pour acclrer les particules, il existe des acclrateurs linaires et circulaires. ee ee e ` A technologie gale, plus ils sont longs, plus ils sont puissants. Cest pourquoi le e CERN dispose de quatre acclrateurs circulaires et quelques acclrateurs linee ee e raires. Ces derniers servent ` lancer les particules dans un premier acclrateur de a ee particules circulaire, pour que sa vitesse et son nergie augmentent. Le faisceau e de particules eectue quelques tours, de plus en plus rapidement. Une fois atteint lnergie limite de lacclrateur, il est inject dans lacclrateur suivant. Ainsi, e ee e ee en cascadant plusieurs acclrateurs, le faisceau pourra atteindre une nergie de ee e 1 7 TeV ` 0,999 999 991 fois la vitesse de la lumi`re ! En acclrant deux faisceaux a e ee a ` sens contraires, une nergie de 14 TeV sera donc disponible. e Il y a principalement trois acclrateurs circulaires : ee Le PS pour Proton Synchrotron am`ne les particules ` 25 GeV. Ensuite le SPS e a (Super Proton Synchrotron) produit une nergie de 450 GeV. Pour enn aboutir e au LHC et ses 7 TeV. Les particules acclres peuvent tre des protons et des ee e e ` lheure actuelle, lnergie maximale anti-protons. Mais aussi des ions de plomb. A e atteinte dans un acclrateur de particules est de 2 TeV (collisionneur proton antiee proton install au laboratoire Fermilab pr`s de Chicago). e e

Fig. 1.1 Organisation des acclrateurs ee

Lancien plus grand acclerateur du CERN, le LEP a t enti`rement dmont. e ee e e e Actuellement, le montage du nouveau est bientt achev. Il sagit du LHC, pour o e Large Hadron Collider, lentreprise scientique la plus ambitieuse que le monde nait jamais connue. Il va permettre des collisions frontales de faisceaux de protons a ` une nergie de 14 Tev (contre seulement 200 GeV pour le LEP et ses faisceaux e
1

1 Electron-Volt correspond ` 1,602 176 53 1019 Joules a a Kvin Raymond e -3Rapport de Stage

1.3. GROUPE AB-CO

dlectrons). En eet, la masse dun proton est presque deux-mille fois plus lee e ve que celle dun lectron. Ce qui augmente considrablement son nergie. Il est e e e e compos de 1 200 aimants bipolaires supraconducteurs de 15 m de long, produie sant un champ magntique de 8,4 Teslas. Sy ajoute 500 aimants quadripolaires e supraconducteurs dont le but est de refocaliser les faisceaux pour mieux contrler o les collisions. Les collisions sont programmes pour tre produites ` des zones spciques e e a e dans lacclrateur. L` sont situs les dirents dtecteurs, organiss par expee a e e e e e riences. Tous sont uniques, ils sont conus dans le but de satisfaire les exigences c exprimentales. Par exemple, le puits ATLAS sur le LHC est compos dun dtece e e teur de 22 m de haut, de 44 m de long pour un poids de 7 000 tonnes. Celui-ci enfoui ` pr`s de 100 m de profondeur, au niveau de lacclrateur. a e ee Pas moins de 7 000 scientiques duniversits et de laboratoires du monde ene tier sen serviront pour apporter des rponses aux questions les plus fondamentales e de la science. Pour augmenter ainsi la puissance tout en gardant lanneau dune mme cire confrence (27 km) il leur faut plonger les aimants dans un bain dhlium liquide. e e De cette mani`re ils atteignent des tempratures de refroidissement de lordre de e e 1.9 K (soit environ -271 C). Cest ainsi que le secteur 7-8 (un huiti`me de lacce e lrateur) a atteint une temprature infrieure ` celle de lespace intersidral le 10 e e e a e avril 2007. Cest la plus grande installation supraconductrice du monde. De plus, tous les supraconducteurs sont plongs dans de lazote liquide. e

Le CERN, avec plus de 3 000 employs et pr`s du double lt, est une tr`s e e ee e grande organisation. Il est Divis en plusieurs dpartements, les dirents domaines e e e dactivits sont regroups par expriences (CMS2 , ATLAS . . .) ou par comptences. e e e e 3 4 Par exemple HR ou AB . Mon stage sest droul chez AB-CO-HT (Accelerator and Beams Control e e Hardware and Timing).

1.3

Groupe AB-CO

Au sein du dpartement AB, le groupe AB-CO soccupe de la partie contrle e o de lacclrateur. Une nouvelle salle vient dtre inaugure. Elle centralise les opee e e e rations de tous les acclrateurs. ee
2 3

Compact Muon Solenoid Ressources Humaines 4 Faisceaux et Acclrateurs ee

a Kvin Raymond e

-4-

Rapport de Stage

1.3. GROUPE AB-CO

1.3.1

Salle de Contrle o

Le contrle du bon droulement des oprations o e e seectue en continu. Le cot de linstallation du LHC est actuellement u de 2 100 Millions deuros. Toute perte du faisceau engendrerait des dommages irrversibles sur les aie mants ` cots levs et plusieurs mois dinterruption a u e e pour rparations. Pour les particules ayant pratiquee ment la vitesse de la lumi`re, il faut tre tr`s prcis pour synchroniser toutes ces e e e e oprations. La section AB-CO-HT sen charge. e

1.3.2

Section AB-CO-HT

Le Timing permet de synchroniser toutes les oprations au sein du CERN, pour e ainsi tre de plus en plus prcis. Puisquil faut 90 s aux particules pour eectuer e e ces 27 km, les quipements lectroniques doivent tre tr`s rapides. e e e e Toutes les oprations sont gres par des horloges atomiques au Csium (ou e ee e 14 Bohrium) avec une prcision de 10 e secondes. La rfrence de lheure UTC (Uniee versal Time Coordinated) est prise par GPS pour la reproduire localement. De cette mani`re, le CERN reste synchronis mme en perdant le signal GPS. Avec e e e une drive infrieure ` 1 ns par jour. e e a Cela permet galement de lancer des expriences de plus grandes envergures, e e par exemple avec Rome. En eet, le CERN met des neutrino en Italie pour une e autre exprience en physique des particules. Il est important que les deux sites aient e la mme heure pour tre certains de recevoir les particules mises par le CERN et e e e non venues de lespace. Llectronique tant de plus en plus prcise, elle devient de plus en plus sene e e sible ` la temprature. Une mesure prcise de la temprature prsente donc un a e e e e avantage pour viter un certain nombre de perturbations. Notamment la drive e e thermique des horloges atomiques qui serait plus faible avec un meilleur contrle o de temprature. e

a Kvin Raymond e

-5-

Rapport de Stage

Les outils de dveloppements e

Windows associ aux logiciels propritaires est une bonne solution pour dmare e e rer simplement en CAO (Conception lectronique Assiste par Ordinateur) ou la e e programmation des microcontrleurs. Hormis le cot des licences, le probl`me est o u e le bridage de ces logiciels. On les utilise comme ils sont conus. Cest-`-dire quauc a cune amlioration nest possible. e La solution est de passer aux logiciels libres qui eux sont gratuits et non brids. De ce fait, si une fonctionnalit lui manque, il nous est e e possible de la rajouter ou den faire la demande. Cest pourquoi on arrive ` trouver des logiciels gratuits et tr`s volus. Dans ce domaine a e e e qui est celui du logiciel libre, il existe de nombreux logiciels pour un lectronicien. e Tant au niveau CAO que programmation des microcontrleurs, les possibilits ne o e cessent dvoluer. e Logiciel libre se dit dun logiciel donnant le droit ` toute personne en possa e dant une copie de lutiliser et de le redistribuer librement, voire de le modier. On retrouve en gnral ces logiciels avec une license copyleft ( ). e e

Cependant les logiciels libres les plus apprcis font partie du projet GNU e e (GNUs Not Unix). Il sagit en fait de la FSF (Free Software Fundation). Tout logiciel de ce projet est bas sur quatre principales liberts : e e Libert 1 : La libert dexcuter le programme pour tous les usages. e e e Libert 2 : La libert dtudier le fonctionnement du programme. e e e Libert 3 : La libert de redistribuer des copies. e e Libert 4 : La libert damliorer le programme. e e e Avec lacc`s au code source, il est ais damliorer le proe e e gramme : cest ce qui encourage la cration dune commue naut de dveloppeurs visant ` amliorer le logiciel. Ce mode e e a e de distribution encourage galement la concurrence, ce qui e am`ne ` un dveloppement de plus en plus pouss pour ainsi e a e e aboutir ` un projet utile et fonctionnel. a

a Kvin Raymond e

-6-

Rapport de Stage

2.1. SCHEMA ET CIRCUIT IMPRIME

2.1

Schma et Circuit imprim e e

e Parmi la multitude doutils Open Source1 permettant de dessiner un schma et un circuit imprim, les plus connus et les plus utiliss sont KiCad et gEDA. e e

2.1.1

KiCaD

KiCaD est une suite open source (GPL) pour la ralisation de schmas lectroe e e niques et de circuits imprims programms par Jean-Pierre Charras. GPL signie e e General Public License. Cela ressemble fortement au projet GNU (ou GNU GPL). Cette suite comprend cinq programmes : m Eeschema, lditeur de schma et de symboles, e e m PcbNew, un outil de dessins de circuits imprims et de cration deme e preintes, m Gerbview, un gnrateur de chier GERBER (documents de phototraages), e e c m Cvpcb, pour choisir les empreintes de chaque composant (ou symbole), m Kicad, le gestionnaire de projets. KiCaD est une suite tr`s conviviale facile ` prendre en main. Un des ses points e a forts est son aide accessible directement dans la barre doutils avec de nombreuses captures dcran. Il existe beaucoup de chiers de langue dont la principale est e le Franais. Egalement disponible en Anglais, Portugais et Espagnol il sagit dun c outil ` la porte de tous. a e e Ecrits en C++ et bass sur WXWIDGETS2 ces dirents logiciels sont multie plateformes, cest-`-dire quils tournent sur Macintosh, GNU/Linux et Unix, Wina dows. Les librairies existantes sont insusantes, mais il est ais den crer. De plus il y e e a la possibilit de gnrer une reprsentation de la carte en 3Dimension ` laide de e e e e a Wings3D. KiCaD g`re le circuit imprim sur douze couches. Par ailleurs, il existe e e un moyen dimporter des librairies dOrcad. En ce qui concerne son installation sous windows, cela ne devrait pas poser de probl`me, il existe mme une version ne ncessitant pas dinstallation (pour les e e e disques amovibles notamment). Pour Linux tout dpend de la distribution. Le plus e simple est dessayer avec les paquets synaptic. Penser ` mettre ` jour la liste avant de commencer linstallation (choisir en a a fonction du syst`me . . .) : e $ sudo yum update $ sudo yum install kicad
1 2

$ sudo apt-get update $ sudo apt-get install kicad

Open Source signie Logiciel Libre Logiciel libre aidant ` la cration dinterface multi-plateformes a e a Kvin Raymond e -7-

Rapport de Stage

2.1. SCHEMA ET CIRCUIT IMPRIME

Si les paquets ncessaires sont introuvables (ce qui serait tonnant vu la populae e rit de cette suite logicielle), tlcharger les chiers binaires de la derni`re version e ee e e e sur ce site : ftp://iut-tice.ujf-grenoble.fr/cao/. Suivre la procdure habituelle (dcompresser larchive puis lancer kicad se trouvant dans kicad/linux/). Toute la ` documentation ncessaire est disponible dans larchive. A noter quil est prfrable e ee de lextraire dans /usr/local/, et deectuer un chmod -R 644 /usr/local/kicad/library puis chmod -R 644 /usr/local/kicad/modules pour donner les droits dacc`s aux librairies, aux utilisateurs normaux. e Les direntes librairies disponibles le sont sur http://www.kicadlib. e org/ Eeschema est loutil qui nous met en conance avec KiCaD. Sa convivialit e assure une prise en main rapide. En premi`re approche ce qui peut perturber est e le dplacement des composants. En eet, lorsque lon dplace un composant, ses e e connexions ne suivent pas. Il est donc impossible de vrier une bonne connexion e sans excuter le script ncessaire. Nanmoins cela reste une suite de bonne qualit, e e e e utilise par exemple pour lenseignement. e Pour plus dinformations : http://www.lis.inpg.fr/realise au lis/kicad/, le site ociel. http://kicadlib.org/Fichiers/Tutorial Kicad FR.pdf, pour un tutoriel tr`s complet. e http://tech.groups.yahoo.com/group/kicad-users/, pour le forum. Le deuxi`me outil permettant de concevoir des cartes lectroniques est gEDA. Il e e est la rfrence sous Linux. une vritable communaut de programmeurs y travaille. ee e e De plus, il inclut un logiciel de simulation.

2.1.2

gEDA

gEDA pour GNU Electronic Design Automation est une suite de logiciels CAO et de simulation sous Linux, destine tant au prototypage que pour la production. e Les sources sont galement distribues, ce qui en fait un projet tr`s rguli`rement e e e e e mis ` jour. En contre-partie il faut noter que beaucoup de tutoriaux sont dpasss. a e e Il faut donc faire la part des choses en prfrant lire seulement celles de gschem ee et Pcb. Lors de la cration de la netlist par exemple, des conseils aviss sont donns. e e e Cette suite doutils est principalement compose de : e m gschem, lditeur de schmas et de symboles, e e m gnetlist, un translateur vers dautres utilitaires, m Pcb, un outil de dessins de circuits imprims et de cration dempreintes, e e m ngspice, un clone de spice avec des fonctions tendues, e m gnucap, un simulateur original avec compilateur de mod`les, e m geda, le gestionnaire de projet (non actuel).

a Kvin Raymond e

-8-

Rapport de Stage

2.1. SCHEMA ET CIRCUIT IMPRIME

Attention ` lutilisation de geda, le gestionnaire de projet. Il na pas suivi lvoa e lution des autres programmes, il est donc prfrable de ne pas lutiliser. Un terminal ee sut pour relier les dirents outils. e Comment linstaller ? La derni`re version de gEDA e ncessite python 2.5 ou suprieur. Il est possible que e e gEDA ainsi que toutes ses dpendances soient dans e les dpts de votre distribution (donc mme tape e o e e que pour KiCaD, voir page 7, section 2.1.1) ; mais ce ne sera peut-tre pas la dere ni`re version. Pour cette suite en constante volution, il est important davoir la e e version la plus ` jour, pour viter certains bogues. a e Une autre possibilit est de tlcharger limage iso du CD. Elle inclut la derni`re e ee e version de tous les programmes, ainsi que les dpendances ncessaires. Voir dans la e e partie download du site ociel : http://www.geda.seul.org/. La solution la plus simple est de monter le cd sur un lecteur virtuel. Tr`s simple sous linux. e

$ sudo mount -oloop <image>.iso /mnt

Pour poursuivre linstallation laide ncessaire se trouve sur le CD. En ce qui e concerne les tutoriaux, attention ` bien lire les derni`res versions. a e Une fois linstallation termine, il faut avoir le synoptique de la suite logicielle e en tte pour commencer une carte (gure 2.1). e

Fig. 2.1 Synoptique de la suite gEDA

Tout commence avec gschem. Une fois le schma ralis et vri avec le contre e e e e o leur DRC, il faut crer la netlist. Grenum sert ` assigner une rfrence ` tous les e a ee a
a Kvin Raymond e -9Rapport de Stage

2.1. SCHEMA ET CIRCUIT IMPRIME

composants, ce qui peut tre ralis automatiquement avec gschem. De mme gate e e e trib permet dassigner des empreintes aux composants, mais il est plus vident au e dbut de le faire sous gschem. gsch2pcb permet de crer la netlist et le chier *.pcb. e e Pcb permet de placer les composants et de router les connexions gnres par la e ee netlist. Enn, les chiers Gerber ou PostScript sont exports par Pcb. e gschem gschem est un logiciel permettant de rapidement crer des schmas une fois e e passe la phase dapprentissage. Il existe une multitude de raccourcis clavier. e Une fois gschem ouvert (commande gschem ), vous verrez une interface simple dutilisation. Seulement quelques icnes sont dans la barre des tches. Poso a sibilit dajouter des composants, de crer des ls de connexions voir mme des bus e e e de donnes. Pour tourner les composants ou toutes autres tches utiles, il est bien e a plus rapide de se servir des raccourcis clavier. Le seul inconvnient notable de gschem est la fonction undo . Lorsque lon e annule les derni`res oprations, le zoom est pris en compte. Cette fonction nest e e pas vraiment pratique . . . Ensuite vient la ralisation du Printed Circuit Board, ou PCB. e Pcb Pcb est un outil tr`s performant mais ncessitant un temps e e dadaptation non ngligeable. Une fois toutes les r`gles de routages e e rgles, la ralisation de PCB est rendue extrmement rapide. e e e e Cependant nous pouvons dplorer le manque de fonctions dans e la barre doutils. Mais le dveloppement actuel prvilgie la performance. Encore e e e une fois, beaucoup de raccourcis clavier sont disponibles. Avec Pcb, dun clic nous pouvons exporter la carte en chier Gerber, png, ps, eps . . . Conclusion sur gEDA Une des plus grandes richesses de gEDA est le traitement des donnes entre les e dirents programmes. Tous les chiers sont en ASCII ce qui les rend tr`s facile e e a ` manipuler. Il est donc possible de crer des scripts pour automatiser les tches e a rbarbatives. Habituellement le Perl est utilis pour cela. e e Une fois en main, gEDA est ` la fois simple et rapide ` utiliser. De plus beaucoup a a e de librairies sont disponibles sur http://www.gedasymbols.org/. Il est galement possible de demander sur la liste des geda-user si ce composant est disponible. Pour
a Kvin Raymond e - 10 -

Rapport de Stage

2.2. LES MICROCONTROLEURS

` cela voir http://geda.seul.org/mailinglist/index.html.A noter quil existe deux sortes de librairies : les Oldlib (librairies m4) et les newlib. Lune adapte ` la cration e a e textuelle, lautre graphique. Se reporter ` larticle connexe (page 20) pour plus de a dtails. e gEDA est donc une suite tr`s compl`te. Sa principale dicult de prise en main e e e repose sur le fait que les tutoriaux ne sont pas ` jour. Il faut prfrer laide de Pcb. a ee Nanmoins cela reste une suite pour les concepteurs ne souhaitant pas se proce e cuper dune license payante et souhaitant un travail de professionnel. Pour obtenir ce rsultat il faut bien entendu y passer un peu de temps, mais qui sera largee ment rcompens par la suite en ecacit. De plus, il y a rellement une grande e e e e biblioth`que de composants rapidement utilisables. Cela peut surprendre au dbut e e denregistrer des empreintes avec lditeur de texte, mais rien nest plus facile que e de copier, voire modier du texte. Pour de plus amples explications sur lutilisation et la prise en main de gEDA, lire larticle connexe joint ` ce rapport a (page 20 des annexes).

Pour continuer dans la mme ligne, nous allons maintenant explorer le dome e maine de la programmation des microcontrleurs sous Linux. o

2.2

Les Microcontrleurs o

Pour raliser une carte modulable, jai dcid de la baser sur un microcontrleur. e e e o Il doit grer les entres analogiques pour la sonde et une interface srie pour le e e e module sans-ls. Ne connaissant que les PIC de chez MICROCHIP, jai choisi le PIC18F2550, qui permet galement la liaison Universal Srial Bus (USB). e e

2.2.1

Les PIC sous Linux

Il existe beaucoup de possibilits. Sur le site suivant http://forum.microchip. e com/tm.aspx?m=123533 plusieurs solutions sont repertories. e Actuellement, la meilleure solution est dutiliser lditeur Piklab, le fruit dune e collaboration entre les programmeurs de Pikdev et dautres logiciels libres..

2.2.2

Piklab

Il sagit dun environnement de developpement adapt au PIC et dsPIC. Il e remplace MPLAB, lditeur de Microchip (pour Windows). On lui spcie le come e pilateur.Les principaux sont la suite gputils pour lassembleur, SDCC et C18 pour le C. C18 est le compilateur propritaire de Microchip. Il tourne sous Wine (outil e
a Kvin Raymond e - 11 Rapport de Stage

2.2. LES MICROCONTROLEURS

permettant dexcuter des programmes Windows sous Linux). Il y a galement Pic e e C (Lite) pour la programmation en C. Le simulateur disponible est GPSim. Simple mais puissant.Pour ce qui est des programmateurs supports, cest en constante e volution. Divers par liaison srie, parall`les, USB (ICD2). Le Pickit2 etc.Pour e e e les debugger, lICD2 (pour In Circuit Debugger 2) est support. Avec plusieurs e chargeurs damorage, ou Boot loader (Tiny, Pickit2, Picdem). Toute la docuc mentation se trouve sur http://piklab.sourceforge.net/. ICD2 Microchip Jai choisi lIn Circuit Debugger 2 de Microchip pour programmer. Cest une solution rapide ` mettre en oeuvre, et puissante. La communication par USB ou a port srie est supporte sous linux. Il faut simplement installer le package pour la e e reconnaissance USB. Package disponible ici : http://kevin.raymond.free.fr/ Stage/icd2prog-0.3.0.tar.gz. Il est galement possible dinstaller MPLAB avec Wine. Il fonctionne ` mere a veille et les messages derreurs sont plus explicites que sous windows. Pour ce qui est du compilateur, jai choisi SDCC. SDCC Small Device C Compiler est un compilateur C sous linux adapt aux PIC. Il e est port sous Windows et il sagit comme de Piklab dun logiciel libre. e Les sources crites avec SDCC sont donc portables. Beaucoup de PIC sont supe ports, voir sur le site ociel la liste des PIC non supports . http://sdcc.sourceforge. e e net/. Loptimisation du code fonctionne correctement. Piklab associ ` SDCC et lICD2 rend la programmation des PIC beaucoup e a plus facile et conviviale que sous Windows. Malgr` que Pilab soit encore en version e beta, cet environnement est plus stable que MPLAB. De plus tout est conu pour dvelopper rapidement. La console est intgre, c e e e tout les rapports sont ` porte de clic et les messages de rponses au debugger sont a e e tr`s clairs. Alors que sous Windows nous sommes simplement informs que la carte e e ou le debugger sont dfectueux, sous cet environnement nous savons que le PIC e dtect nest pas le bon, mais quil est programmable (sous rserve dventuelles e e e e erreurs). Pour des exemples de programmes raliss avec SDCC, voir : e e http://www.luga.de/Angebote/Vortraege/Linux USB/Linux USB.pdf en allemand ; http://www.nutsvolts.com/%7Edownloads/USB.zip un exemple tr`s complet ; e http://swenmac.homeip.net:8080/lab3 sdcc.tgz un autre exemple.

a Kvin Raymond e

- 12 -

Rapport de Stage

3
3.1

Mesure dune temprature e


Choix dun capteur
Depuis lpoque de Galile et le premier thermom`tre (bas sur la die e e e latation de certains liquides) en 1593, il y a eu dnormes progr`s dans ce e e domaine. Les capteurs analogiques sont apparus pour remdier ` un proe a bl`me : Comment interfacer un thermom`tre ` mercure sur un syst`me e e a e automatis ? e

Cette mesure tant toujours complexe ` mettre en oeuvre, il existe plusieurs e a solutions. La dmarche habituelle est dutiliser un capteur passif bas sur la vae e riation dune grandeur lectrique en fonction du mesurande, la temprature dans e e notre cas. La prcision et la justesse des mesures sont directement lies au circuit e e conditionneur associ ` de tels capteurs. ea Pour une plus grande simplicit de mise en oeuvre il est possible de sorienter e sur les capteurs actifs, permettant de mesurer une quantit lectronique. ee

3.1.1

Capteurs actifs

Souvent sous la forme de circuits intgrs, ils sont apprcis pour leur simplicit e e e e e de mise en oeuvre et leur faible cot. Ils peuvent dialoguer par liaison srie, sur le u e BUS I2C et bien dautres protocoles encore. Parmi les plus utiliss il y a le DS1620 de chez MAXIM qui transmet par liaison e srie la temprature sur 9 bits. Sa rsolution est de 0,5 C. Les plages de mesures e e e sont de lordre de -10 C ` +80 C. Il existe beaucoup dquivalents, par exemple a e le DS1820. Il y a galement le SMT160-30 de chez SMARTEC qui module le rapport cye clique du signal en sortie selon la temprature. Il sagit de PWM (Modulation ` e a Largeur dImpulsion). Il a une prcision absolue de 0,7 C dans lintervalle -30 C e a ` +100 C. La sortie du capteur, de technologie CMOS, peut tre dporte par un e e e cble jusqu` 20 m`tres. a a e Pour interfacer sur le BUS I2C il y a notamment la sonde DS75 ou DS1621 de chez DALLAS. Le DS75 sur 12 bits permet une rsolution de 0,0625 C pour une e prcision de 2,0 C. Le DS1621 a une rsolution de 0,5 C. Il en existe galee e e ment pour une liaison SPI (Serial Peripheral Interface) comme le DS1722 de chez MAXIM, il a les mmes caractristiques que le DS75. e e

a Kvin Raymond e

- 13 -

Rapport de Stage

3.1. CHOIX DUN CAPTEUR

Il existe aussi des capteurs intgrs du type LM35 ou LM335 de chez NAe e TIONAL SEMICONDUCTOR. Ce type de capteur dlivre un signal qualibr en e e milivolts par degr. Avec un LM35 on ne peut esprer atteindre une prcision sue e e prieure ` 0.25 C. Sa sortie est linaire dans la plage -40 C ` +110 C et vaut e a e a 10.0 mV/ C. Pour la dlit, la moyenne des mesures donne 0.5 C garanti . e e

Les thermocouples font galement parti des capteurs actifs. En eet, le principe e de mesure est bas sur leet Seebeck. Deux ls mtalliques de natures direntes e e e sont relis par deux jonctions. Leet Seebeck cre une Force Electromotrice lie ` e e e a la dirence de temprature entre ces deux jonctions. e e Les thermocouples sont des sondes pouvant mesurer des tempratures allant de e -270 C ` +2320 C. a Leur cot est assez faible sauf pour les tempratures extrmes. u e e Il existe plusieurs types de thermocouples. Ceux ` base de mtaux usuels, de a e mtaux nobles ou de mtaux rfractaires. Il faut les choisir en fonction des gammes e e e de tempratures ainsi que de leur coecient de Seebeck. Ce coecient est directee ment li ` la sensibilit de la sonde. ea e

De nos jours il nen existe pas de plus juste. Que ce soit pour la prcision, e la dlit ou mme de plus grandes plages de mesures, rien ngale les sondes e e e e analogiques.

3.1.2

Capteurs passifs

Il existe deux principaux types de sondes passives. Les thermistances et les rsistances mtalliques. e e Lorsque le faible cot est privilgi par rapport ` la prcision, il est prfrable u e e a e ee dutiliser les thermistances. thermistances Les thermistances sont constitues ` partir doxydes mtalliques semi-conducteurs e a e polycristallins (Mg0, MgAl204, Mn203, Fe304, Ni0 etc.) Ce sont des rsistances e dont la valeur varie en fonction de la temprature. e Il en existe deux types : les thermistances ` Coecient de Temprature Ngatif a e e (CTN), ou celles moins courantes, ` Coecient de Temprature Positif (CTP). a e Les thermistances ont une tr`s grande sensibilit thermique, ce qui rend leur e e utilisation tr`s aise. Un simple tage damplication permet une mesure ` 0,5 C e e e a pr`s, celle-ci pouvant tre amliore avec un amplicateur dinstrumentation. e e e e Un autre intrt est que leur valeur ohmique est leve (suprieur ` 1000 ) ee e e e a ce qui rend ngligeable les ls de liaisons de la sonde. Les points faibles des there mistances sont la drive de leurs caractristiques au cours du temps et dune intere e changeabilit mdiocre. e e

a Kvin Raymond e

- 14 -

Rapport de Stage

3.1. CHOIX DUN CAPTEUR

Lorsquil est ncessaire deectuer des mesures sur une grande plage de tempe e ratures, ou lorsquil faut une plus grande prcision, il est prfrable dutiliser les e ee rsistances mtalliques (ou RTD). e e RTDs et pRTD Les resitances mtalliques (ou Resistance Temperature Detector pour RTD) e sont composes dun l mtallique cylindrique dont la valeur ohmique est relation e e de la temprature. Il sagit de sondes thermorsistives. e e Pour une plus grande sensibilit il faut choisir un mtal ` Coecient de Tempe e a e rature (CTR) lev. Pour une meilleure dlit, le mtal doit tre exempt de tout e e e e e e dfaut structural et doit prsenter une grande rsistance ` la corrosion et ` la pollue e e a a tion. La linarit est galement un point important mais en conit avec la dlit. e e e e e En eet, pour obtenir un mtal linaire il est possible dassocier plusieurs mtaux e e e a ` CTR dirents. Le mtal doit tre tr`s ductile pour permettre un encombrement e e e e rduit. e Le platine est la mati`re la plus adapte ` ce type de sonde. Il peut sobtenir e e a tr`s pur (99,999 %). De plus, il sagit dun matriau tr`s ductile. Les RTDs de e e e platine se nomment Platine Resistance Temperature Detectors (pRTDs). Ces sondes bncient dune grande plage de mesure. Il sen distingue plusieurs e e types. Les Pt100, Pt500, Pt1000 etc. Leur nom est directement li ` leur valeur ohmique ` 0 C. La Pt100 ` une valeur ea a a de 100,00 ` 0,00 C et de 138,51 ` 100,00 C ; la Pt1000 1000,00 ` 0,00 C, . . . a a a

a e A noter que, citation de Wikipedia (http://fr.wikipedia.org/), la sonde ` rsistance de platine dnie par lEIT-90 est la plus labore et permet des mesures e e e de temprature de tr`s hautes exactitudes (voir supplementary informations for e e the realization of the ITS-90, dit par le BIPM, Pavillon de S`vre en 1990) [...] e e e Un tel instrument permet, en montage 4 ls et reli ` un pont de rsistances de ea e type Guidline ou ASL F900, de dtecter des variations de tempratures de lordre e e de 0,1 mili-Kelvin et de rduire les incertitudes en le mettant en oeuvre dans des e cellules points xes de qualit mtrologique ` un ordre de grandeur inme . Pour e e a ce faire il faut utiliser une Pt25. On remarque que les meilleures prcisions sont atteintes avec les PRTDs. La e sonde Pt100 est la plus utilise puiquelle ` la courbe la plus linaire, de plus elle est e a e normalise. Il sagit de la norme DIN 43760 (IEC 751) (confrer ` l annexe A page 1 e e a des annexes). Ce qui rend cette sonde facilement interchangeable. Contrairement aux termistances, elle na pas besoin dtre qualibre. e e Avec les Pt100, il est possible datteindre une prcision de 0,1 C (voir supe e rieure par spculation et une bonne linarisation). e e

Il existe plusieurs classes de Pt100. La classe A est la plus prcise, alors que la e
a Kvin Raymond e - 15 Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

classe B est la moins coteuse. Son temps de rponse est 0,1 seconde. Sa sensibilit u e e 390,4818,52 R = 0, 354 / . statique vaut , soit S = 1050 Elles sont disponibles en trois versions direntes. La version deux ls est la e plus rpandue, mais il est ncessaire de passer ` la version trois (voir quatre) ls e e a pour annuler leet rsistif des ls de connexion. e

Pour exploiter cette sonde il faut utiliser un circuit conditionneur. Il peut tre e ralis par un circuit intgr, ou plusieurs. Tout dpend du signal voulu en sortie, e e e e e de lalimentation disponible, ou de la prcision dsire. e e e

3.2

Pt100 : Circuit conditionneur

Pour exploiter une sonde Pt100 il existe de nombreuses possibilits. Dans tout e les cas, ne pas la faire parcourir par un courant suprieur ` 3 mA pour e a viter lauto-chauement produit par leet Joule. Le constructeur prcoe e e nise un courant de 1 mA.

3.2.1

Les circuits intgrs e e

Avant tout vrier la disponibilit des produits qui vous paraissent idaux. Je e e e suis parti sur un ADT70, il semblait idal pour mon utilisation : mais apr`s la e e ralisation du schma il a fallu passer la commande. Et l`, grosse dception. Il tait e e a e e indisponible. Une vrication rapide sur http://www.analog.com/ ma clairci : This e e product is currently being phased out of production. Not recommended for new c a ee designs. Ce qui en franais correspond ` Production arrte . Ils nous prcisent que pour trouver un produit quivalent il faut regarder dans e e un certain tableau. Personnellement, je nen ai pas trouv. e Nanmoins, en regardant la structure interne de lADT70 on peut se faire une e ide dun premier circuit conditionneur (voir ci-apr`s gure 3.1 page 17). Il est come e pos dune source de courant 1 mA base sur une rfrence de tension 2,5 V. Dun e e ee amplicateur dinstrumentation et dun autre amplicateur pouvant tre branch e e en comparateur pour dtecter un certain seuil de temprature par exemple. e e Le XTR103 convertit la variation de rsistance en variation de courant. Sa e sortie est analogique et comprise entre 4 mA et 20 mA. Son alimentation est unipolaire. Avec lalimentation positive comprise en 9 V et 40 V. Ce circuit peut tre suivi du RCV420, pour convertir la variation de courant (4 e 20 mA) en variation de tension (0 5 V). L Interface Transducteur Universelle (ITU) ou Universal Transducer Interface (UTI) est un convertisseur de signal du capteur en signal horaire, bas sur e un oscillateur priode-module. La sortie est sur 13 bits. il sagit de Modulation e e

a Kvin Raymond e

- 16 -

Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

Fig. 3.1 Structure interne de lADT70 de Largeur dImpulsion (MLI, ou PWM en anglais pour Pulse Width Modulation ). Site internet : http://www.smartec.fr/fr/uti-FR.php. Il a une alimentation unipolaire, mais sa prcision est lg`rement plus faible. e e e Le LTC2433 est un cicuits dialoguant par bus SPI (pour Serial Peripheral Interface). Il a une rsolution de 16 bits et une alimentation unipolaire. e Tous ces circuits ont galement lavantage dtre compenss. Le constructeur e e e nous donne la abilits des mesures et leurs prcisions. De plus, hormis la sonde e e (2, 3, ou 4 ls), ils nont en gnral besoin que dune rsistance pour le gain de e e e lamplicateur.

3.2.2

Un circuit adapt e

Lorsque lon a des contraintes extrieures (alimentation, tempratures, . . .) il e e est plus dicile de trouver un circuit intgr nous convenant. Puisque je suis limit e e e en consommation et en alimentation, jai trouv prfrable de produire mon circuit e ee conditionneur. Pour viter lauto-chauement de la sonde et simplier les calculs par la suite, e e jai dcid de contrler ma sonde en courant. Lutilisation dun pont de Wheatstone e e o sest avr ncessaire pour obtenir une meilleure prcision de mesure. Pour ampliee e e er le signal gnr par le pont de Wheatstone (quelques mV/ C) il faut utiliser e ee un amplicateur dinstrumentation.

Le principe gnral est de recrer lADT70 (confrer gure 3.1 page 17). e e e e Pour la source de courant, plusieurs possibilits sont ` tudier. e ae

a Kvin Raymond e

- 17 -

Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

Source de courant stable Pour raliser une source de courant il y a la solution du transistor ` e a eet de champ (JFET par exemple). Il faut relier la grille ` la source. a Pour le courant dbit, il sagit de IDSS (en gnral de 0,2 ` 5 mA).On e e e e a en trouve sous forme de diodes. Ce sont tout simplement des diodes ` a courant constant. Il est aussi possible den raliser avec une diode zener assoe cie ` un transistor, mais cela introduit de nombreux compoe a sants. Tous susceptibles dtre aects par la temprature. Sur e e e ce schma on trouve Ic = Uz 0,6 . e R Je me suis rabattu sur la solution des amplicateurs oprae tionnels pour ma triser les composantes de dfaut (oset, drive, e e thermique, etc.) et lalimentation. Voir gure 3.2 page 18. Le schma de principe est simple, il faut partir dune source de tension stable e (appell rfrence de tension, do` Vref ). Pour mon application la source de tene ee u sion correspondant le mieux ` mon utilisation est le MCP1525 de Microchip. a Il sagit dune rfrence de tension 2,5 V. Faible bruit, faible drive thermique ee e ( 50 ppm/ C). Le MCP1525 est idal pour les temprature suprieures ` 25 C : e e e a sa sortie est de 2,500 V ` 25,00 C et plus, pour 2,498 ` 0,00 C. Sa qualit se a a e dgrade avec les tempratures ngatives. e e e

Fig. 3.2 Source de courant stable


ref Soit Iref le courant dans R2 , on obtient Iref = R1 . Puisque ma charge est compose dun pont de Wheatstone (confrer gure page 3.3 page 19), en R2 , il e e faut Iref = 2 mA. De cette mani`re la sonde sera parcourue par un courant de e 1 mA. Il faut bien entendu choisir R1 et R2 avec un tr`s faible coecient de tempe e rature. Cest pourquoi jai choisi la rsistance en premier pour ensuite calculer le e courant Iref . Pour choisir un amplicateur oprationnel convenable il faut faire attention ` e a loset dentre et galement ` la drive thermique. Lalimentation nest pas non e e a e plus un point ngligeable. e

a Kvin Raymond e

- 18 -

Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

Il ma paru bon de prendre lOPA335. Il a un oset de 5 V (max), une drive e de 0, 05 V / . Une faible consommation et une alimentation unipolaire.

La charge R2 est donc compose dun pont de Wheatstone pour plus de prcie e sion. Pont de Wheatstone Ce circuit permet de dterminer la rsistance lectrique dun lment situ dans e e e ee e e e une branche du pont. Voir gure 3.3 pour la reprsentation schmatique du pont.

Fig. 3.3 Pont de Wheatstone V0 est la tension ` mesurer. Elle se nomme tension de dsquilibre. En eet, a ee lorsque le pont est ` lquilibre V0 est nulle. Pour une mesure commenant ` 0 C a e c a il est judicieux de placer le pont ` lquilibre pour T = 0 C. Il faut donc choisir les a e rsistances composant le pont ` 100 pour la Pt100. Il faut bien entendu choisir e a des rsistances de prcision ` faible coecient de temprature. e e a e Pour cela jai choisi des rsistances de prcision ` couche mtallique. Le construce e a e teur les certie ` 0,05 % et le vendeur ` 0,1 %. Elles sont ` bruit et coecient de a a a temprature ngligeables (dapr`s le constructeur). e e e

De par sa nature, le pont de Wheatstone introduit une erreur de linarit de e e pendant du nombre dlments variants. Se rfrer ` la gure 3.3 pour comparer. ee ee a Pour viter cette erreur en plus, il faut utiliser deux lments variants. Lorsque le e ee pont est contrl en tension, lerreur de linarit est de 0,5 % pour un lment vaoe e e ee riant. Encore une raison de prfrer la source de courant. De plus les sondes Pt100 ee tant normalises, elles varieront de paire. e e Par calcul on retrouve rapidement la valeur de V0 : En partant du schma ` e a deux lments variant, on a RP t100 = R+R avec R la valeur de la Pt100 ` 0,00 C, ee a

a Kvin Raymond e

- 19 -

Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

soit R = 100, 00 . Les deux branches ayant la mme rsistance quivalente, le courant traversant e e e les deux sondes sera le mme. Soit I le courant fourni par la source de courant et e I le courant traversant une sonde. On a V0 = I (R + R) I R, or I = I . Finalement on trouve, V0 = I R . 2 2 Lquilibre du pont ne variant que de 0,4 mV/ C environ, il est ncessaire e e damplier le signal. Amplicateur Pour viter tout dfaut supplmentaire il faut se servir dun amplicateur dinse e e trumentation. Il est possible den raliser avec trois amplicateurs oprationnels e e mais cela ne convient pas pour une faible consommation et cela ajoute des perturbations. La solution est donc lamplicateur dinstrumentation intgr, avec une alimene e tation unipolaire. Ils ont en gnral un tr`s faible oset dentre et un faible coefe e e e cient de temprature. Il en existe beaucoup, ceux que jai retenu sont le INA122 e et le INA118. Le INA118 est le plus appropri. Avec un oset dentre de 50 V e e pour une variation de 0,5 V/ C.

Son gain tant rglable par une rsistance RG il faut loptimiser pour lentre e e e e analogique 10 bits du PIC18F. La sortie doit donc tre comprise entre 0 et 5 V. e Soit G le gain, le constructeur nous donne la formule suivante : G = 1 + 5010 RG Soit Vs la tension de tortie de lamplicateur, 5 V pour un maximum de 30 C e (soit R = 11, 67 dapr`s lannexe A on obtient un gain G = 334, 33 (confrer e Annexe B. Toujours en annexe, Rg = 150 .

On obtient donc en entre du PIC Vs = 334, 33 I R, soit environ 0,166 V/ C. e 2 Pour calculer la prcision des mesures, se rfrer ` lannexe B (page 4 des annexes). e ee a Interface CAN : exploitation de la sonde Pour exploiter la tension analogique en sortie de lamplicateur dinstrumentation, jai choisi dutiliser le Convertisseur Analogique/Numrique (ou ADC) du e PIC. Sa rsolution est de 10 bits. e Des calculs eectus en annexe B, on retiendra les relations (B.18) et(B.19) , e soit ` entrer dans le calculateur : a

a Kvin Raymond e

- 20 -

Rapport de Stage

3.2. PT100 : CIRCUIT CONDITIONNEUR

T = r = T0 +

A2 + 4B r A 0, 07 2B

(3.1) (3.2) (3.3) (3.4) (3.5) (3.6) (3.7) (3.8) (3.9)

2Vs 0, 0124 GI R A = 3, 9083 103 K 1 B = 5, 775 107 K 2 T0 = 0, 00

G = 425, 53 0, 4255 I = (2, 499 0, 004) mA R = (100 0, 1)

La variable tant Vs . e On obtient une mesure d`le ` 0,1 C (thoriquement), ce qui correspond au e a e cahier des charges. Il ne manque plus qu` pouvoir comparer avec un matriel plus a e performant.

Le code suivant permet de rcuprer la valeur analogique Vs sur AN0 du PIC e e et de la retourner en valeur numrique. e 1 u n s i g n e d c har getTemp ( ) 2 { 3 // Dbut de c o n v e r s i o n e 4 ADCON0bits .GO = 1 ; 5 6 // On a t t e n d l a f i n de l a c o n v e r s i o n 7 w h i l e ( ADCON0bits .GO) ; 8 9 //On r e t o u r n e l e s b i t s de donn es e 10 r e t u r n ADRESH; 11 } Plus grande plage de temprature e Le dfaut de linarit de la sonde se fait sentir pour les tempratures ngatives. e e e e e Il faut compenser lajustement polynomial quadratique standard. Pour cela se rfrer au document Mesure de temprature par thermistance Pt100 ee e / Pt1000 de Thomas Meader. Ce dossier est disponible ` cette adresse : http://lpm.ep.ch/webdav/site/lpm/ a shared/enseignement/divers/060914%20Mesure%20de%20temprature%20Pt100-Pt1000. e pdf

a Kvin Raymond e

- 21 -

Rapport de Stage

4
4.1

Transmission sans l
Choix du protocole

Pour les satellites (carte de mesure de temprature) il est important de ne pas e devoir les connecter par l. En eet, cela permet de les positionner momentane ment ` divers endroits. a Pour ce projet la meilleure solution reste les ondes lectro-magntiques. De e e cette mani`re il est possible de saranchir de certains obstacles. e Il existe principalement trois technologies direntes, toutes exploitant la bande e des micro-ondes, soit 2,4 Ghz : 1. Le WIFI, la rfrence lorsquil faut un dbit important. On le rencontre ee e surtout pour les rseaux ethernet, e 2. Le Bluetooth, utilis principalement pour connecter entre eux plusieurs e priphriques (imprimante, mobile . . .), e e 3. Le ZigBee, faible consommation et porte moyenne, ce protocole devrait e tre la rfrence en domotique. e ee Protocole ZigBee Bluetooth WIFI Norme IEEE 802.15.4 802.15.1 802.11a/b/g Besoins mmoire e 4-32 Kb 250 Kb + 1 Mb + Dure de vie e Annes e Jours Heures Nombre de nuds 65 000+ 7 32 Vitesse de transfert 250 Kb/s 1 Mb/s 11-54-108 Mb/s Porte e 100 m 10-100 m 300 m Le protocole correspondant le mieux est donc le ZigBee : bonne porte, faible e consommation et beaucoup de nuds possibles (nombres de connexions par rseau). e Le Xbee de MAXSTREAM est tr`s simple ` mettre en oeuvre tout en tr`s e a e performant.

4.2

Le module Xbee

Disponible en deux versions (Xbee Pro ou Xbee) il est possible de choisir lantenne. Filaire, externe ou CMS. Pour lutilisation du Xbee Pro en Europe, on se
a Kvin Raymond e - 22 Rapport de Stage

4.2. LE MODULE XBEE

doit de limiter sa puissance dmission ` 10 dBm ce qui est rendu possible par e a programmation. Jai choisi le module Xbee puisque je ne voyais pas lutilit du module Xbee e Pro. Nanmoins, ces deux modules tant interchangeables, cela ne pose pas de proe e bl`me pour une utilisation future. e La consomation du module Xbee infrieure ` 10 A en repos et de 50 mA en e a mission/rception. Idal pour une alimentation par pile. Ses 16 canaux permettent e e e dviter les interfrences. e e Il dispose de plusieurs entres-sorties analogiques. Le principal dialogue avec le e microcontrleur est eectu par liaison srie. La conguration du module se fait o e e par commande AT . Il sagit dun dialogue en cha de caract`res. ne e Il peut tre congur pour recopier ltat de ses entres sur un autre module si e e e e lon conna son adresse, ou mme rmettre ce quil reoit pour les modules les plus t e ee c loigns. Cette possibilit est tr`s avantageuse pour loigner les dirents satellites. e e e e e e Tr`s facile ` exploiter, il est galement simple ` connece a e a ter. Attention cependant, son alimentation est de 3,3 V maximum. Sur vingt broches, seulement quatre sont ncessaires. Il e sagit de DIN et DOUT pour la liaison srie, de Vcc et Gnd e pour lalimentation. Mais avec RTS et CTS il est possible de contrler ltat des tampons dmission et rception. o e e e DTR, RTS et CTS permettent la reprogrammation du rmware. Pour cela il faut le kit de MAXSTREAM. Pour mettre en veille le module, il faut contrler la broche SLEEP. SLEEP RQ o permet de vrier ltat du module. e e Ce module comprend en tout neuf entres analogiques/numriques, avec la pose e sibilit de positionner des rsitances de pull-up en interne. e e Toutes les documentations sont disponibles ici : http://www.maxstream.net/ products/xbee/xbee-oem-rf-module-zigbee.php.

a Kvin Raymond e

- 23 -

Rapport de Stage

LUSB

De nos jours, lUniversal Serial Bus est un bus de donne largement utilis pour e e sa simplicit dutilisation et lalimentation disponible avec un ordinateur. e Il existe plusieurs possibilits en utilisant des PIC : e Le protocole HID, vitesse limite ` 64ko/s, aucun pilote ncessaire, e a e Emulation port COM (CDC) : voir AN956 , sans pilote, USB low-speed, vitesse de 1.5Mb/s, ncessite un pilote, e USB full-speed, vitesse de 12Mb/s, oscillateur 48Mhz minimum, ncessite un e pilote Lmulation du port COM (port srie, protocole RS232) est assez facile ` mettre e e a en oeuvre : elle permet la compatibilit avec danciennes applications PC. Surtout e utilise dans le domaine industriel pour ne pas devoir dvelopper dautre applicae e tions devant grer lUSB, quand les priphriques migrent du RS232 ` lUSB. e e e a La solution USB pour de plus grande vitesse de transfert ncessite la programe mation dun pilote : un programme lourd et complexe ` mettre en uvre. a La solution dune interface HID a donc t retenue pour sa relative simplicit, ee e la vitesse de transmission tant amplement susante pour lapplication dsire. e e e

5.1

Human Interface Device

Le protocole HID (Human Interface Device) est de plus en plus utilis puisque e cest la mani`re la plus simple dutiliser le port USB. Sa seule limitation est la e vitesse de transmission. Cette solution est utilise pour les claviers, les souris, les e manettes de jeux vidos, etc. e LUSB peut nous fournir une alimentation de 5 V limite ` 500 mA. Amplement e a susant pour notre application. Contrairement ` la liaison RS232 et des interfaces srielles similaires o` le fora e u mat des donnes envoyes nest pas dni par dfaut, lUSB est compos de plue e e e e sieurs couches de protocoles imposes. Il sagit dun rseau en jeton. e e Chaque transaction USB consiste dun paquet Jeton (Token) pour savoir si il faut attendre une autre rponse ou poursuivre, dun paquet DATA optionnel e (contenant la charge utile (payload)) et dun paquet dEtat (utilis pour valider e les transactions et pour fournir des moyens de corrections derreurs). Sur le bus USB, cest lhte qui g`re la transmission. Il sagit de lordinateur. Il o e envoie le premier paquet avec le jeton au nouveau priphrique dtect pour quil e e e e

a Kvin Raymond e

- 24 -

Rapport de Stage

5.2. EXPLOITATION

puisse sidentier et ainsi crer la connexion. Pour les communications entre prie e pherique (sans passer par un ordinateur) il ny a pas dhte. Il faut donc travailler o en O-T-G (On-The-Go). LUSB est un bus srie. Il utilise quatre ls isols dont deux sont lalimentation e e (+5V et GND). Les deux restants forment une paire torsade qui vhicule les sie e gnaux en mode direntiel. Il utilise un schma dencodage NRZI (Non Retour ` e e a Zro invers) pour envoyer des donnes. e e e

5.2

Exploitation

Avant de dialoguer avec lhte, le priphrique doit sidentier. Tout pripho e e e e rique USB a un code VID et PID unique pouvant lidentier. Le VID est le Vendor IDentication (pour microchip VID = 0x04D8) et PID est le Product IDentication. A la connexion, le priphrique sidentie et spcie le protocole (volumes des e e e paquets transmis, le dbit, le courant maximum ` dbiter, etc.). e a e La vitesse de la communication ne dpend que de deux param`tres, la taille e e du paquet envoy (maximum 64 octets) et la priode sparant chaque demande e e e du pic ( pooling minimum : une milliseconde). On aura donc 64 ko/s dans les meilleures conditions. La connexion dun nouveau priphrique est dtecte par un changement de e e e e niveau sur les lignes de donnes. En eet, des rsistances de pull-up y sont posie e tionnes pour spcier la vitesse de transmission (interne au PIC). e e Pour le processus dnumration (le priphrique sidentie et lhte lui assigne e e e e o une adresse), voir en fonction du syst`me dexploitation. e Pour linux, voir http://www.linux-usb.org/ et http://www.usbman.com/linuxusb. htm. Dsormais le priphrique est en fonctionnement, lhte demande un pilote pour e e e o le nouveau priphrique dtect. Pour un priphrique HID, le pilote est reconnut e e e e e e automatiquement.

a Kvin Raymond e

- 25 -

Rapport de Stage

Impressions personnelles

Malgr un sujet de prime abord assez simple, la prise en main de gEDA ` pris e a beaucoup de temps. De plus, linstallation de gEDA ` ncssit la rinstallation du a e e e e syst`me. e En eet, Scientique Linux Cern nayant pas Python 2.5, il ` t plus rapide aee de passer sous Fedora Core 6. Plus prcisment, jai commenc ` dcouvrir gEDA plus de trois semaines apr`s e e ea e e mon arrive. Avant jai essay des installations et test KiCaD. Jai galement fait e e e e beaucoup de recherches pour la mesure dune temprature. Ltude ma pris du e e temps, avant que jorganise mes recherches dune autre mani`re. e Ne mattendant pas ` ce que gEDA soit si long ` prendre en main, jy ai aussi a a pass beaucoup de temps. L` encore jai chang ma mthode de recherche pour e a e e ne plus suivre les tutoriaux sur la suite mais bien sur les divers programmes qui eux-mme voluent tr`s vite. e e e Cependant, en suivant les bons conseils et sans partir sur de mauvaises pistes, cette suite nest pas si dicile ` prendre en main. Pour ce faire, jai rdig larticle a e e connexe ` ce rapport. a Certain composants commands mi-avril tant encore en attentes, arriv mie e e juin la vritable programmation na pas encore dbut. De ce fait, le projet na pu e e e arriver ` son terme. a Nanmoins jai beaucoup appris durant ce stage, tant au niveau professionnel e que personnel. Dun point de vue personnel, je vais dnitivement me tourner vers Linux pour e la conception lectronique. Ayant pass presque trois mois sous Linux, jai nore e e mment progress dans ladministration dun syst`me UNIX. e e e Professionnellement, jai dcouvert le domaine de ltude et de la recherche. e e Etant un univers passionnant, je me dois de continuer mes tudes pour esprer e e laborer et optimiser par la suite. e De part ce que jai appris et ralis durant ce stage, cest sans aucun regret que e e je recommencerais un tel projet. Merci lquipe AB-CO-HT ! e

a Kvin Raymond e

- 26 -

Rapport de Stage

Conclusion
Au cours de cette tude, nous avons abord plusieurs th`mes. e e e Dornavant nous savons de quelle mani`re accder ` la Conception lectronique e e e a e Assist par Ordinateur et la programmation des microcontrleurs sous linux. Tous e o les programmes utiliss tant gratuits, cela augmente les chances que ce projet soit e e repris pour une utilisation future. Pour ce qui est du projet en lui-mme, les cartes tant ralises il sagit surtout e e e e maintenant de dvelopper correctement les dirents programmes pour permettre e e la communication sans l et la liaison USB. Toutes les rfrences cites au cours de ee e ce projet lont t dans cette optique. En suivant ces quelques liens, il est possible ee de trouver de bons exemples que ce soit sur lUSB ou sur le Xbee. La prcision des mesures obtenue tant susante thoriquement, il surait de e e e vrier la justesse des mesures avec un lment plus prcis. Cependant, la sonde e ee e devrait tre assez d`le. Pour mieux contrler lincertitude des mesures, je vous e e o propose de reprendre mes calculs eectus en annexe B pour remplacer les le ee ments imprcis. e Dans la continuit du projet, il pourrait tre avis de monitorer les temprae e e e tures, avec par exemple cacti (bas sur RRD-tools). e Comme chez CMS : http://cmsdoc.cern.ch/cmscluster/newcacti/graph image.php? action=view&local graph id=18&rra id=1. En ce qui concerne la consommation de la carte de mesure, les tests restent encore ` eectuer (il manque encore la rception de certains composants), nanmoins a e e elle ne devrait pas consommer plus de 2 mA lors des mesures. Et une dizaine de mico-Amp`res au repos, cest ` dire 80 % du temps. e a

a Kvin Raymond e

- 27 -

Rapport de Stage

Glossaire
Ductile Se dit dun matriau capable de se de e former plastiquement sans se rompre. Justesse Qualit du capteur pour donner des e indications gales au mesurande. e Kynaptic Gestionnaire de paquet pour KDE. Linarit Sensibilit du capteur, indpendante e e e e du mesurande. Mesurande Grandeur physique ` mesurer a (temprature, pressions, . . .). e Netlist Liste des ls de connexions entre composants. Fidlit Laptitude dun capteur ` donner des e e a indications identiques pour une mme valeur de e mesurande. Finesse Aptitude du capteur ` fournir une a grandeur mesure sans la modier par sa pre e sence. Prcision Pour un capteur, aptitude ` donner e a une indication proche de la vraie valeur. Rapidit Temps de rponse, lie ` la frquence e e e a e propre du capteur. Rsolution La plus petite valeur de mesurande e que le capteur peut dtecter. e Synaptic Gestionnaire de paquet sous Linux (Debian), voir aussi Kynaptic.

Les acronymes
CAN Convertisseur Analogique Numrique e CAO Conception Assist par Ordinateur e GPS Global Positioning System HID Human Interface Device ICD(2) In Circuit Debugger (2) JFET Junction Field Eect Transistor PIC Nom des Microcontrleurs conus par Mio c crochip PCB Printed Circuit Board SDCC Small Device C Compileur USB Universal Serial Bus

a Kvin Raymond e

- 28 -

Rapport de Stage

Bibliographie
http://press.web.cern.ch/, toutes les nouvelles du CERN, toutes les donnes et dates e importantes. http://fr.wikipedia.org/, diverses dnitions. e http://www.iut-lannion.fr/LEMEN/MPDOC/CMMEST/mtherres.htm, mesure de temprature. e http://aviatechno.free.fr/thermo/rtd03.php,mesure de temprature. e http://perso.orange.fr/michel.hubin/physique/elec/chap aop2.htm, divers schmas lece e troniques. http://forums.futura-sciences.com/forum40.html, un forum avec des sujets interrse sants sur la Pt100. http://www.planete-sciences.org/forums/, forum tr`s intressant sur lutilisation du e e module Xbee. Voir section Robotique. http://www.jereyleblanc.org/energy/xbee.htm, sources pour les commandes AT du module Xbee. http://www.todopic.com.ar/foros/index.php?topic=16393.0;topicseen, un bon exemple sur lutilisation du module Xbee. http://www.totofweb.net/, un beau projet avec le module Xbee. http://itp.nyu.edu/raf275/meshnetworking/XBee/XBee rmware upgrade.html, des explications sur la mise ` jour du module Xbee ( upgrading rmware ). a http://pic18fusb.online.fr/, les PIC pour lUSB en HID. http://www.analog.com/UploadedFiles/Associated Docs/49470200sscsect2.PDF, un dossier tr`s intressant en rapport avec le pont de Wheatstone et la Pt100. Dommage e e que je ne lai trouv qu` la n, il ma permis de vri mon schma, puisquil est e a e e e reproduit ` lidentique (page 11 gure 2.12). a http://lpm.ep.ch/webdav/site/lpm/shared/enseignement/divers/060914%20Mesure% 20de%20temprature%20Pt100-Pt1000.pdf, un dossier permettant dajuster lerreur e de lajustement quadratique standard pour les tempratures ngatives de la Pt100 e e (et Pt1000). http://fr.wikipedia.org/wiki/Pt100 pour une sonde encore plus prcise. e http://aviatechno.free.fr/thermo/rtd03.ph des explications sur la linarit de la Pt100. e e

a Kvin Raymond e

- 29 -

Rapport de Stage

Annexes

a Kvin Raymond e

- 30 -

Rapport de Stage

Tables Pt100

Table de rsistivit de la Pt100 (valeur ` multiplier par 10 pour avoir la e e a table de la Pt1000)

Selon ITS-90/DIN EN 60751 Units : T en C et R en e


C -200.00 -190.00 -180.00 -170.00 -160.00 -150.00 -140.00 -130.00 -120.00 -110.00 -100.00 -90.00 -80.00 -70.00 -60.00 -50.00 -40.00 -30.00 -20.00 -10.00 0.00 C 0.00 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00 110.00 120.00 130.00

0 18.52 22.83 27.10 31.34 35.54 39.72 43.88 48.00 52.11 56.19 60.26 64.30 68.33 72.33 76.33 80.31 84.27 88.22 92.16 96.09 100.00 0 100.00 103.90 107.79 111.67 115.54 119.40 123.24 127.08 130.90 134.71 138.51 142.29 146.07 149.83

1 22.40 26.67 30.91 35.12 39.31 43.46 47.59 51.70 55.79 59.85 63.90 67.92 71.93 75.93 79.91 83.87 87.83 91.77 95.69 99.61 1 100.39 104.29 108.18 112.06 115.93 119.78 123.63 127.46 131.28 135.09 138.88 142.67 146.44 150.21

2 21.97 26.24 30.49 34.70 38.89 43.05 47.18 51.29 55.38 59.44 63.49 67.52 71.53 75.53 79.51 83.48 87.43 91.37 95.30 99.22 2 100.78 104.68 108.57 112.45 116.31 120.17 124.01 127.84 131.66 135.47 139.26 143.05 146.82 150.58

3 21.54 25.82 30.07 34.28 38.47 42.63 46.77 50.88 54.97 59.04 63.09 67.12 71.13 75.13 79.11 83.08 87.04 90.98 94.91 98.83 3 101.17 105.07 108.96 112.83 116.70 120.55 124.39 128.22 132.04 135.85 139.64 143.43 147.20 150.96

4 21.11 25.39 29.64 33.86 38.05 42.22 46.36 50.47 54.56 58.63 62.68 66.72 70.73 74.73 78.72 82.69 86.64 90.59 94.52 98.44 4 101.56 105.46 109.35 113.22 117.08 120.94 124.78 128.61 132.42 136.23 140.02 143.80 147.57 151.33

5 20.68 24.97 29.22 33.44 37.64 41.80 45.94 50.06 54.15 58.23 62.28 66.31 70.33 74.33 78.32 82.29 86.25 90.19 94.12 98.04 5 101.95 105.85 109.73 113.61 117.47 121.32 125.16 128.99 132.80 136.61 140.40 144.18 147.95 151.71

6 20.25 24.54 28.80 33.02 37.22 41.39 45.53 49.65 53.75 57.82 61.88 65.91 69.93 73.93 77.92 81.89 85.85 89.80 93.73 97.65 6 102.34 106.24 110.12 114.00 117.86 121.71 125.54 129.37 133.18 136.99 140.78 144.56 148.33 152.08

7 19.82 24.11 28.37 32.60 36.80 40.97 45.12 49.24 53.34 57.41 61.47 65.51 69.53 73.53 77.52 81.50 85.46 89.40 93.34 97.26 7 102.73 106.63 110.51 114.38 118.24 122.09 125.93 129.75 133.57 137.37 141.16 144.94 148.70 152.46

8 19.38 23.68 27.95 32.18 36.38 40.56 44.70 48.83 52.93 57.01 61.07 65.11 69.13 73.13 77.12 81.10 85.06 89.01 92.95 96.87 8 103.12 107.02 110.90 114.77 118.63 122.47 126.31 130.13 133.95 137.75 141.54 145.31 149.08 152.83

9 18.95 23.25 27.52 31.76 35.96 40.14 44.29 48.42 52.52 56.60 60.66 64.70 68.73 72.73 76.73 80.70 84.67 88.62 92.55 96.48 9 103.51 107.40 111.29 115.15 119.01 122.86 126.69 130.52 134.33 138.13 141.91 145.69 149.46 153.21

C -200.00 -190.00 -180.00 -170.00 -160.00 -150.00 -140.00 -130.00 -120.00 -110.00 -100.00 -90.00 -80.00 -70.00 -60.00 -50.00 -40.00 -30.00 -20.00 -10.00 0.00 C 0.00 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00 110.00 120.00 130.00

a Kvin Raymond e

-1-

Rapport de Stage

140.00 150.00 160.00 170.00 180.00 190.00 C 200.00 210.00 220.00 230.00 240.00 250.00 260.00 270.00 280.00 290.00 300.00 310.00 320.00 330.00 340.00 350.00 360.00 370.00 380.00 390.00 C 400.00 410.00 420.00 430.00 440.00 450.00 460.00 470.00 480.00 490.00 500.00 510.00 520.00 530.00 540.00 550.00 560.00 570.00 580.00 590.00

153.58 157.33 161.05 164.77 168.48 172.17 0 175.86 179.53 183.19 186.84 190.47 194.10 197.71 201.31 204.90 208.48 212.05 215.61 219.15 222.68 226.21 229.72 233.21 236.70 240.18 243.64 0 247.09 250.53 253.96 257.38 260.78 264.18 267.56 270.93 274.29 277.64 280.98 284.30 287.62 290.92 294.21 297.49 300.75 304.01 307.25 310.49

153.96 157.70 161.43 165.14 168.85 172.54 1 176.22 179.89 183.55 187.20 190.84 194.46 198.07 201.67 205.26 208.84 212.41 215.96 219.51 223.04 226.56 230.07 233.56 237.05 240.52 243.99 1 247.44 250.88 254.30 257.72 261.12 264.52 267.90 271.27 274.63 277.98 281.31 284.63 287.95 291.25 294.54 297.81 301.08 304.34 307.58 310.81

154.33 158.07 161.80 165.51 169.22 172.91 2 176.59 180.26 183.92 187.56 191.20 194.82 198.43 202.03 205.62 209.20 212.76 216.32 219.86 223.39 226.91 230.42 233.91 237.40 240.87 244.33 2 247.78 251.22 254.65 258.06 261.46 264.86 268.24 271.61 274.96 278.31 281.64 284.97 288.28 291.58 294.86 298.14 301.41 304.66 307.90 311.13

154.71 158.45 162.17 165.89 169.59 173.28 3 176.96 180.63 184.28 187.93 191.56 195.18 198.79 202.39 205.98 209.56 213.12 216.67 220.21 223.74 227.26 230.77 234.26 237.74 241.22 244.68 3 248.13 251.56 254.99 258.40 261.80 265.20 268.57 271.94 275.30 278.64 281.98 285.30 288.61 291.91 295.19 298.47 301.73 304.98 308.23 311.45

155.08 158.82 162.54 166.26 169.96 173.65 4 177.33 180.99 184.65 188.29 191.92 195.55 199.15 202.75 206.34 209.91 213.48 217.03 220.57 224.09 227.61 231.12 234.61 238.09 241.56 245.02 4 248.47 251.91 255.33 258.74 262.14 265.53 268.91 272.28 275.63 278.98 282.31 285.63 288.94 292.24 295.52 298.80 302.06 305.31 308.55 311.78

155.46 159.19 162.91 166.63 170.33 174.02 5 177.69 181.36 185.01 188.66 192.29 195.91 199.51 203.11 206.70 210.27 213.83 217.38 220.92 224.45 227.96 231.47 234.96 238.44 241.91 245.37 5 248.81 252.25 255.67 259.08 262.48 265.87 269.25 272.61 275.97 279.31 282.64 285.96 289.27 292.56 295.85 299.12 302.38 305.63 308.87 312.10

155.83 159.56 163.29 167.00 170.70 174.38 6 178.06 181.72 185.38 189.02 192.65 196.27 199.87 203.47 207.05 210.63 214.19 217.74 221.27 224.80 228.31 231.82 235.31 238.79 242.26 245.71 6 249.16 252.59 256.01 259.42 262.82 266.21 269.59 272.95 276.30 279.64 282.97 286.29 289.60 292.89 296.18 299.45 302.71 305.96 309.20 312.42

156.20 159.94 163.66 167.37 171.07 174.75 7 178.43 182.09 185.74 189.38 193.01 196.63 200.23 203.83 207.41 210.98 214.54 218.09 221.63 225.15 228.66 232.17 235.66 239.13 242.60 246.06 7 249.50 252.93 256.35 259.76 263.16 266.55 269.92 273.29 276.64 279.98 283.31 286.62 289.93 293.22 296.50 299.78 303.03 306.28 309.52 312.74

156.58 160.31 164.03 167.74 171.43 175.12 8 178.79 182.46 186.11 189.75 193.37 196.99 200.59 204.19 207.77 211.34 214.90 218.44 221.98 225.50 229.02 232.52 236.00 239.48 242.95 246.40 8 249.85 253.28 256.70 260.10 263.50 266.89 270.26 273.62 276.97 280.31 283.64 286.95 290.26 293.55 296.83 300.10 303.36 306.61 309.84 313.06

156.95 160.68 164.40 168.11 171.80 175.49 9 179.16 182.82 186.47 190.11 193.74 197.35 200.95 204.55 208.13 211.70 215.25 218.80 222.33 225.85 229.37 232.87 236.35 239.83 243.29 246.75 9 250.19 253.62 257.04 260.44 263.84 267.22 270.60 273.96 277.31 280.64 283.97 287.29 290.59 293.88 297.16 300.43 303.69 306.93 310.16 313.39

140.00 150.00 160.00 170.00 180.00 190.00 C 200.00 210.00 220.00 230.00 240.00 250.00 260.00 270.00 280.00 290.00 300.00 310.00 320.00 330.00 340.00 350.00 360.00 370.00 380.00 390.00 C 400.00 410.00 420.00 430.00 440.00 450.00 460.00 470.00 480.00 490.00 500.00 510.00 520.00 530.00 540.00 550.00 560.00 570.00 580.00 590.00

a Kvin Raymond e

-2-

Rapport de Stage

C 600.00 610.00 620.00 630.00 640.00 650.00 660.00 670.00 680.00 690.00 700.00 710.00 720.00 730.00 740.00 750.00 760.00 770.00 780.00 790.00 800.00 810.00 820.00 830.00 840.00 850.00 C

0 313.71 316.92 320.12 323.30 326.48 329.64 332.79 335.93 339.06 342.18 345.28 348.38 351.46 354.53 357.59 360.64 363.67 366.70 369.71 372.71 375.70 378.68 381.65 384.60 387.55 390.48 0

1 314.03 317.24 320.43 323.62 326.79 329.96 333.11 336.25 339.37 342.49 345.59 348.69 351.77 354.84 357.90 360.94 363.98 367.00 370.01 373.01 376.00 378.98 381.95 384.90 387.84 1

2 314.35 317.56 320.75 323.94 327.11 330.27 333.42 336.56 339.69 342.80 345.90 348.99 352.08 355.14 358.20 361.25 364.28 367.30 370.31 373.31 376.30 379.28 382.24 385.19 388.14 2

3 314.67 317.88 321.07 324.26 327.43 330.59 333.74 336.87 340.00 343.11 346.21 349.30 352.38 355.45 358.51 361.55 364.58 367.60 370.61 373.61 376.60 379.57 382.54 385.49 388.43 3

4 314.99 318.20 321.39 324.57 327.74 330.90 334.05 337.18 340.31 343.42 346.52 349.61 352.69 355.76 358.81 361.85 364.89 367.91 370.91 373.91 376.90 379.87 382.83 385.78 388.72 4

5 315.31 318.52 321.71 324.89 328.06 331.22 334.36 337.50 340.62 343.73 346.83 349.92 353.00 356.06 359.12 362.16 365.19 368.21 371.21 374.21 377.19 380.17 383.13 386.08 389.02 5

6 315.64 318.84 322.03 325.21 328.38 331.53 334.68 337.81 340.93 344.04 347.14 350.23 353.30 356.37 359.42 362.46 365.49 368.51 371.51 374.51 377.49 380.46 383.42 386.37 389.31 6

7 315.96 319.16 322.35 325.53 328.69 331.85 334.99 338.12 341.24 344.35 347.45 350.54 353.61 356.67 359.72 362.76 365.79 368.81 371.81 374.81 377.79 380.76 383.72 386.67 389.60 7

8 316.28 319.48 322.67 325.84 329.01 332.16 335.31 338.44 341.56 344.66 347.76 350.84 353.92 356.98 360.03 363.07 366.10 369.11 372.11 375.11 378.09 381.06 384.01 386.96 389.90 8

9 316.60 319.80 322.98 326.16 329.32 332.48 335.62 338.75 341.87 344.97 348.07 351.15 354.22 357.28 360.33 363.37 366.40 369.41 372.41 375.41 378.39 381.35 384.31 387.25 390.19 9

C 600.00 610.00 620.00 630.00 640.00 650.00 660.00 670.00 680.00 690.00 700.00 710.00 720.00 730.00 740.00 750.00 760.00 770.00 780.00 790.00 800.00 810.00 820.00 830.00 840.00 850.00 C

Fig. A.1 Table Pt100

a Kvin Raymond e

-3-

Rapport de Stage

Calcul dincertitude

Ici nous allons eectuer en dtail les calculs dincertitude pour estimer la prcie e sion de la cha de mesure. Ceci dans le but de conna lincertitudes des mesures ne tre de tempratures envoyes par le PIC. Les calculs seraient allgs en utilisant les e e e e drives logarithmiques, mais jai prfr nutiliser quune seule mthode. e e eee e

B.1

Donnes e

Les documentations constructeurs nous donnent : Rs = 1 k 0, 1% ; R = 100 0, 1% ; RP t100 = (R0 + R) ` 0, 01%. Pour la suite on choisira R0 = R pour avoir R0 ` a a 0, 1% et R ` 0, 01% ; a Pour une temprature suprieure ` = 0 , on ` 2, 498 V Vref 2, 500 V . e e a a LOPA335 a++++ un oset dentre de 5 V et lamplicateur dinstrumentation e (INA118) un oset de 50 V ; Rg la rsistance de gain, est ` 0,1%. e a

Soit T la temprature et T0 la temprature de rfrence (0,00 C dans notre e e ee cas). Pour les calculs dincertitudes pour le cas le plus dfavorable, on choisit la e temprature la plus loigne, = 30 . e e e

B.2

Les tapes e

Incertitude absolue de Vref


Vref = Vref Vref Vref = (2, 499 0, 001) V (B.1)

Incertitude absolue sur Rs , R et R


Rs = (Rs 0, 1%) . Soit : Rs = (1000 1) De mme on trouve e R = (100 0, 1)
a Kvin Raymond e -4-

(B.2)

(B.3)
Rapport de Stage

Pour calculer lincertitude sur R on choisira le cas le plus dfavorable, cest-`-dire e a la plus grande variation ` mesurer. Pour R() = 11, 67 . a Do` R = (R() 0, 01%) = 0, 0012 . Finalement, u R = (R 0, 001) (B.4)

Incertitude absolue sur I


On a I =
Vref Rs

dI =

I 1 Vref I dVref + dRs = dVref 2 dRs Vref Rs Rs Rs

On en dduit lincertitude relative I : e I = Application numrique :I = e 1 Vref Rs Vref + 2 Rs Rs


1 100

0, 001 +

2,499 1002

1. Do` : u (B.5)

I = (2, 499 0, 004) mA

Incertitude absolue sur V0


Soient VA et VB tels que V0 = VA VB et I le courant traversant une sonde. Il faut avant tout dterminer I . e Incertitude sur I
2R+R I = I 4R+2R = I 2

= 1, 2495. Do` la direntielle suivante : u e dI I I dI I 1 I = 1, 7A = 2 = (B.6)

I = (1, 250 0, 002) mA Incertitude sur VA On a VA = I R VA VA dI + dR I R = RdI + I dR = |R|I + |I |R


-5-

dVA = VA
a Kvin Raymond e

Rapport de Stage

VA = 0, 325 mV Incertitude sur VB On a VB = I 2R + R (2R + R)2 (2R + R) = I 4R + 2R 4R + 2R

(B.7)

dVB =

VB VB VB dI + dR + dR I R R (8R + 4R)(4R + 2R) 4(2R + R)2 (2R + R)2 dI + I dR + = 4R + 2R (4R + 2R)2 (4R + 2R)(4R + 2R) 2(2R + R)2 dR I (4R + 2R)2 (2R + R)2 1 16R2 8R2 dR + I dR dI + I = 2 4R + 2R (4R + 2R) 2

Pour un cas gnral on obtient donc : e e VB =


(2R+R)2 4R+R

I + I 16R 8R2 R + (4R+2R)

1 2

(B.8)

Dans notre tude, nous allons prendre le cas le plus dfavorable, cest-`-dire e e a T = . Soit R = 11, 67 . Application numrique : e VB (R()) = 1, 157 mV Incertitude sur V0 En reprenant le calcul ralis dans le rapport (page 20) on a : e e V0 = Et pour lincertitude, V0 = VA + VB = 1, 482 mV Do` u V0 = ( I R 1, 482 103 ) V 2 (B.10) I R 2 (B.9)

a Kvin Raymond e

-6-

Rapport de Stage

Incertitude absolue sur Vs


Gain Soit Vs le signal disponible en sortie de lamplicateur dinstrumentation, et Rg sa rsistance de gain ` 0,1%. La dtermination de Rg est issue de la formule e a e disponible dans la documentation constructeur (voir ci-dessous) pour une pleine chelle (0 V5 V). e Rg = (150 0, 15) (B.11) On a 50 103 [] = 334, 33 Rg 200 103 G dRg = dRg dG = 2 Rg Rg G = 1+ G = Soit G = 334, 33 0, 3333 Calcul de lincertitude sur Vs (B.12) 50 103 Rg = 0, 3333 2 Rg

Vs = V0 G Vs Vs dVs = dV0 + dG = GdV0 + V0 dG V0 G Vs () = G V0 + V0 G Application numrique pour T = :Vs = 0, 5003 V . On en dduit donc que e e les 5 V doset de lINA118 sont ngligeables. e Vs = (G
I 2

R 0, 5003) V

(B.13)

Calcul nal
Des calculs prcdents, on trouve (avec lincertitude valable pour une plage e e 030 C) : I Vs = G R 0, 5003 V (B.14) 2

Les tables (annexe A) donnent la rsistance standard RP t100 de la Pt100 ` la e a temprature T , pour une rsistance nominale R0 = 100, 00 Ohm ` la temprature e e a e de rfrence T0 = 0 . Dpendance pouvant tre approxime par la relation : ee e e e

a Kvin Raymond e

-7-

Rapport de Stage

RP t100 = R0 (1 + A T + B T 2 ), o` : T = T T0 . Avec A = 3, 9083 u 3 1 7 2 10 K et B = 5, 775 10 K . Ce qui donne pour dterminer la temprae e 2 u ture : T = T0 + A +4BrA , o` 2B r= RP t100 1 R0 (B.15)

Or on a R0 = R et RP t100 = R + R. Notre variable tant Vs , la tension e disponible en entre du PIC, il ne faut obtenir que Vs pour calculer la temprature. e e On lobtient par la relation (B.14). Soit, R = do` : u R 2Vs R + R 1= = R R GI R r r r r dVs + dG + dI + dR Vs G I R 2 dG dI dR + + dVs 2Vs GI R G2 I R G I 2 R G I R 2 2 G I R dG dI dR dVs 2 + + GI R 2 G2 I R G I 2 R G I R 2 2 G I R Vs + R + + 2 GI R GR I R R 2Vs GI

r = dr = = = r =

Soit lapplication numrique pour le cas le plus dfavorable : r = 0, 0124 e e Finalement on obtient :

T = T0 + Avec r=
2Vs GIR

A2 +4BrA 2B

(B.16)

0, 0124

(B.17)

Incertitude nale
On reprend r = pour calculer lincertitude sur T : A2 + 4B r A T = T0 + 2B 1 T 1 4B dT = dr = dr = dr r 2B 2 A2 + 4B r A2 + 4B r 1 T = r A2 + 4B r
R() R

Application numrique :T = 0, 066 e


a Kvin Raymond e

-8-

Rapport de Stage

Rsultat e

Thoriquement, on obtient une mesure d`le ` 0,1 C (avec une marge de e e a 0,03 C). Avec pour relations :

T = r = T0 +

A2 + 4B r A 0, 07 2B

(B.18) (B.19) (B.20) (B.21) (B.22)

2Vs 0, 0124 GI R A = 3, 9083 103 K 1 B = 5, 775 107 K 2 T0 = 0, 00

Avec pour le circuit prsent : e e G = 425, 53 0, 4255 I = (2, 499 0, 004) mA R = (100 0, 1) (B.23) (B.24) (B.25)

a Kvin Raymond e

-9-

Rapport de Stage

C
C.1

Cartes
Emetteur

Vous trouverez page suivante le schma de la carte mettrice. Celle qui mesure la e e temprature. Pour un soucis de consommation, plusieurs rgulateurs avec Enable e e ont t utiliss pour pouvoir couper lalimentation de tout ce qui est inutile ` ee e a certain moment. Puis les pages suivantes sont directement tire du chier PostScript export par e e Pcb. Il sagit des typons de la carte mettrice. e

C.2

Rcepteur e

Ensuite vous trouverez le schma de la carte rcepteur. Bien remarquer le e e condensateur de 470 nF. Cest par lui quest x le potentiel 3,3 V pour xer e la vitesse de transmission sur la liaison USB. Puis les typons de la carte rcepteur exports par Pcb. 3 feuilles parmis 12 e e (masque, trou de perage, . . .) c

a Kvin Raymond e

- 10 -

Rapport de Stage

a Kvin Raymond e

- 11 -

Rapport de Stage

(null), back (mirrored), scale = 1:1.000 /user/kraymond/Emetteur.pcb

a Kvin Raymond e

- 12 -

Rapport de Stage

(null), front, scale = 1:1.000 /user/kraymond/Emetteur.pcb

a Kvin Raymond e

- 13 -

Rapport de Stage

(null), frontassembly, scale = 1:1.000 /user/kraymond/Emetteur.pcb

a Kvin Raymond e

- 14 -

Rapport de Stage

a Kvin Raymond e

- 15 -

Rapport de Stage

(null), back (mirrored), scale = 1:1.000 /user/kraymond/Recepteur.pcb

a Kvin Raymond e

- 16 -

Rapport de Stage

(null), front, scale = 1:1.000 /user/kraymond/Recepteur.pcb

a Kvin Raymond e

- 17 -

Rapport de Stage

(null), frontassembly, scale = 1:1.000 /user/kraymond/Recepteur.pcb

a Kvin Raymond e

- 18 -

Rapport de Stage

Article Connexe

a Kvin Raymond e

- 19 -

Rapport de Stage

Kevin Raymond Anne 2007 e

Utilisation de gEDA, suite libre de CAO Programmation des PIC sous Linux Utilisation de la carte Mesure de temprature e

Rsum : e e Article destin ` aider ` ea a prendre en main la suite de CAO gEDA, Piklab pour programmer les PIC sous linux et quelques notes sur lutilisation de la carte pour mesurer les tempratures. e

Table des mati`res e


Introduction 1 gEDA 1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 gschem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Pcb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 4 6 8

2 Programmation des PIC sous linux 13 2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3 Acquisition dune temprature e 14 3.1 Principe de fonctionnement des cartes . . . . . . . . . . . . . . 14 3.2 Le module Xbee . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.3 Le programme . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 A Cartes 18 A.1 Emetteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 A.2 Rcepteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 e

Introduction
Cet article est destin ` favoriser la prise en main de gEDA, suite libre de ea Conception lectronique Assist par Ordinateur. Ce nest en aucun cas une e e documentation susante, il a pour but de complter les articles rdigs par e e e les concepteurs. Nous verrons galement de quelle mani`re programmer les PIC (microe e contrleurs de chez Microchip) sous Linux en C. o Finalement nous tudierons les cartes lectroniques permettant la mesure e e dune temprature avec les sondes Pt100. e

1 GEDA

gEDA

Les logiciels de Conception lectronique Assist par Ordinateur (CAO) e e propritaires sont une bonne solution pour dbuter rapidement et obtenir e e simplement des cartes exploitables. Mais ne serait-il pas plus souhaitable dutiliser un outil compl`tement e personnalisable avec lequel on nobtient tr`s rapidement des cartes au rendu e professionel ? Ceci est possible grce aux logiciels libres. gEDA en est idal a e pour la CAO. Cest un outil en plein dveloppement mais dores et dj` e ea volu. e e De nombreuses librairies sont disponibles et il est tr`s rapide den ajouter. e Il en existe deux mcanismes. Le premier appel Oldlib pcblib ou e e biblioth`que M4 dpend du langage macro M4. Les empreintes sont gne e e e res ` la vole. A utiliser pour creer rapidement des familles dempreintes. Le e a e ` deuxi`me mcanisme est appel Newlib . Ce sont les empreintes que lon e e e peut crer graphiquement avec Pcb, ou avec un diteur de texte (code ASCII). e e gEDA pour GPL Electronic Design Automation est une suite Open Source permettant la cration de schmas, la simulation et la ralisation du Printed e e e Circuit Board (PCB). Cette suite doutils est principalement compose de : e - gschem, lditeur de schmas et de symboles, e e - gnetlist, un translateur vers dautres utilitaires, - PCB, un outil de dessins de circuits imprims et de cration deme e preintes, - ngspice, un clone de spice avec des fonctions tendues, e - gnucap, un simulateur original avec compilateur de mod`les, e - geda, le gestionnaire de projet (non actuel). Attention ` lutilisation de geda le gestionnaire de projet. Il na pas suivi a lvolution des autres programmes, il est donc prfrable de ne pas lutiliser. e ee Un terminal sut pour relier les dirents outils. e

1.1

Installation

Avant tout il faut linstaller. La derni`re version de gEDA ncessite pye e thon 2.5 ou suprieur. Il est possible que gEDA, ainsi que toutes ses de e pendances, soit dans les dpts de votre distribution (voir par exemple avec e o Synaptic). Mais ce ne sera peut-tre pas la derni`re version. Pour cette suite e e 4

1.1 Installation

1 GEDA

en constante volution il est important davoir la derni`re version, pour viter e e e certains bogues. Une autre possibilit est de tlcharger limage iso du CD. Elle inclut la e ee derni`re version de tous les programmes. Ainsi que les dpendances ncese e e saires. Voir dans la partie download du site ociel : http://www.geda.seul. org/. La solution la plus simple est de monter le cd sur un lecteur virtuel. Tr`s simple sous linux. e

$ sudo mount -oloop <image>.iso /mnt

Pour poursuivre linstallation laide ncessaire se trouve sur le CD. En ce e qui concerne les tutoriaux, attention ` bien lire les derni`res versions. a e Une fois linstallation termine, il faut avoir le synoptique de la suite e logicielle en tte pour commencer une carte. e

Fig. 1 Synoptique de la suite gEDA

Tout commence avec gschem. Une fois le schma ralis et vri avec le e e e e e contrleur DRC il faut crer la netliste. Grenum sert ` assigner une rfrence o e a ee 5

1.2 gschem

1 GEDA

a ` tous les composants. Ce qui peut tre ralis automatiquement avec gschem. e e e De mme gattrib permet dassigner des empreintes aux composants. Mais il e est plus vident au dbut de le faire sous gschem. gsch2pcb permet de crer e e e la netlist et le chier *.pcb. Pcb permet de placer les composants et de router les connexions gnres par la netlist. Enn, les chiers Gerber sont exports e ee e par Pcb.

1.2

gschem

Il est conseill de crer un dossier de projet, car de nombreux chiers see e ront crs. Une fois gschem ouvert (commande gschem ), vous verrez une ee interface simple dutilisation : seulement quelques icnes sont dans la barre o doutils. Possibilit dajouter des composants, de crer des ls de connexion e e voire des bus de donnes. Pour tourner les composants ou toute autre tche e a utile, il est bien plus rapide de se servir des raccourcis. En vue de simplier la gnration de la netlist, veuillez ` bien renseigner e e a au minimum trois champs importants pour gschem. Double-cliquer sur un composant pour ouvrir ses proprits. En gnral ee e e le champ device et refdes est rempli. Le champ de loin le plus important est footprint, il permet de spcier quelle empreinte prendre pour ce compoe sant. Nimporte quel symbole (ou composant) peut appeler nimporte quelle empreinte. Cela permet de crer une seule empreinte pour plusieurs compoe sants. Ils seront direncis sous Pcb par leur identiant device et refdes. e e Une fois les composants ajouts, il est possible de renseigner automatiquee ment tous les champs refdes par Attributs -> Annotation automatique . Les champs slot et numslot permettent de spcier le numro de la porte e e lorsquil y en a plusieurs par bo tier. Lors de la cration de symboles il faut spcier le champ pintype pour e e que le vricateur derreurs (DRC) puisse vrier les erreurs de connexions. e e Les direntes options pour ce champ sont io pour une entre-sortie, e e pas pour une broche passive, in pour une entre, out pour une e sortie et pwr pour une alimentation. Pour spcier les broches non connectes il faut ajouter le symbole de non e e connexion. Il se trouve dans share/gEDA/sym/misc/. Pour lancer le vricateur derreurs (ou DRC), le code est le suivant : e

$ gnetlist -g drc2 text.sch -o drc output.txt 6

1.2 gschem le rsultat de DRC est visible dans le chier drc output.txt. e

1 GEDA

Personnellement, je trouve plus simple de lire le rsultat directement dans e la console :


$ gnetlist -g drc2 text -o - Si vous rencontrez une erreur du type Checking slots . . . ERROR : Reference U5 : Slot out of range (1). slotnumber = 1 Vous avez srement une empreinte avec un nom nissant par une minusu cule. Ce qui est interprt comme le numro dune porte logique ` lintrieur ee e a e dun composant. Sil ne sagit pas dune erreur il est possible de passer outre en spciant le champ numslot ` 0. e a La netlist est cre en mme temps que le rapport du DRC, il faut donc e e maintenant invoquer gsch2pcb pour commencer le routage.

$ gsch2pcb -v text.sch Loption verbose (-v) est facultative, mais permet de suivre les direntes e erreurs dues principalement ` des empreintes introuvables. La double option a verbose ($ gsch2pcb -v -v text.sch) permet de voir tous les chiers scanns e pour trouver les direntes empreintes. Lorsquil ny a plus derreurs, il faut e passer sur Pcb. Le chier text.pcb est cr par gsch2pcb. Il faut maintenant ee louvrir avec Pcb. Je prcise que les principales dmarches ` suivre sont rappeles par gsch2pcb e e a e a ` la n du rapport. Lors dune premi`re excution on peut lire par exemple : e e Next step : 1. Run pcb on your le test.pcb. You will nd all your footprints in a bundle ready for you to place or disperse with Select -> Disperse all elements in PCB. 2. From within PCB, select File -> Load netlist le and select test.net to load the netlist. 3. From within PCB, enter :ExecuteFile(test.cmd) Lors dune mise ` jour (le chier test.pcb existe dj`) dautres conseils a ea apparaissent : 7

1.3 Pcb

1 GEDA

Next steps : 1. Run pcb on your le test.pcb. 2. From within PCB, select File -> Load layout data to paste buer and select test.new.pcb to load the new footprints into your existing layout. 3. From within PCB, select File -> Load netlist le and select test.net to load the updated netlist. 4. From within PCB, enter :ExecuteFile(test.cmd) Dans tous les cas la prochaine tape est Pcb. e

1.3

Pcb

Je conseille douvrir directement Pcb par un autre terminal puisque le programme retourne un certain nombre derreurs (notamment unknown action pour une commande $ tout en tant dans e inconnue) . Procder par pcb test.pcb e le rpertoire du projet. e Pcb ouvre automatiquement une fentre de log qui retourne les direntes e e actions de lutilisateur prises en compte par le programme. Une fois le chier test.pcb ouvert il faut rorganiser les composants (See lect -> Disperse all elements). Il ne reste plus qu` importer la netlist (File a > Load netlist le). Ensuite lancer le chier test.cmd par linvite de com mande (le raccourci pour cette action est [ :]). ExecuteFile(test.cmd) . Puis remettre ` jour. Action possible par la touche de raccourci [O]. Si les ls de a connexions (ratsnet) ne sont pas visibles, activer loption en cliquant sur le bouton ratsnet (` gauche). a Pour mettre ` jour le PCB si un changement doit apa para (modication sous gschem des connexions ou tre composants par exemple), lancer le DRC pour vrie er et rgnrer la netlist, ce qui a pour eet de crer e e e e un chier test.pcb.new. Ouvrir ce chier par File -> Load layout-data to past buer . Recharger la netlist, lancer la commande ExecuteFile(test.cmd) et ractualiser les ls de connexions ([O]). e

1.3 Pcb

1 GEDA

Pour une prise en main assez rapide de Pcb :


Dans la barre doutils verticale (sur la gauche) il est possible de slece tionner lachage des plans, via, pistes etc. Par dfaut il existe plusieurs e couches avec une couleur pour chaque signal (alimentation, donnes . . .). Il e est possible de modier ces options par File -> Preference . En dessous sont reprsents les outils de dessins. Line pour les pistes, e e polygon pour les plans de masses par exemple, LOCK pour vrouiller un e composant. Utile par exemple pour les plans ou les gros composants, cela vite de le slectionner alors que lont visait une piste. Loutil THRM permet e e rapidement dajouter ou denlever des freins thermiques aux pastilles. Pour dplacer un composant avec ses pistes (ou ratsnet), le clic souris e sut. Parfois il est prfrable de dplacer un composant sans ses connexions. ee e Pour cela il faut le slectionner (clic souris) puis le dplacer par un autre clic e e souris. Plusieurs actions sont disponibles par [shift]+Clic droit. Notamment supprimer lensemble de la slection. La touche [Shift] lors dun trac de piste e e sert ` modier la position de langle. Tr`s pratique ! a e Pour une mesure rapide [CTRL]+[M] r-aecte lorigine (les mesures sont e en haut ` droite). Pour avoir la vue de la face de dessous il sut de presser a la touche [TAB]. Alors que [B] permet de passer le composant dune face ` a lautre. [U] pour Undo (annuler) et [Shift]+[R] pour Redo (restaurer). [Q] permet de modier lapparence des pastilles (rondes ou carres).[D] e permet dacher rapidement le numro des broches et [shift]+[D] en donne e lapperu. c [O] qui permet de ractualiser les connexions est souvent utilise de mme e e e que [F] qui permet de mettre en surbrillance les connexions directes. [S] et [shift]+[S] servent ` modier la taille des pastilles, pistes, etc. a [V] permet davoir une vue globale de la carte. Pour le reste des raccourcis utiliss, voir dans Window -> Key References . e Attention ` bien activer loption Settings -> New lines, arcs clear poa ` e lygon si vous devez faire un plan de masse ou autre par la suite. A dfaut vous retrouverez toutes vos pistes court-circuites par le plan. Attention cela e pose probl`me pour les freins thermiques. Citation : ` consommer avec e a modration . e Cependant il est toujours possible dactiver loption ` la n, un travail a assez rbarbatif. Dans les tutoriaux on peut trouver la commande :chane gejoin(selected) pour changer loption sur toutes les pistes slectionnes, e e mais cela navait aucun eet sur ma version. Dcouvert par le unknown ace 9

1.3 Pcb

1 GEDA

tion retourn dans le terminal. La touche raccourci pour le mme rsultat e e e est [shift]+[J]. Il est possible de modier la clearance des pistes (espace vide entre la piste et le plan) par la touche [K] (et [shift]+[K]). Lorsque vous avez le programme en main, il est tr`s rapide de router ses e cartes puisque le logiciel permet dun clic de copier des lments dans un ee tampon (lments prcdemment crs). On peut donc avoir ` porte de clic ee e e ee a e des dessins souvent utiles (logo, empreinte de frein thermique, etc.)

Crer des empreintes (Footprint) : e


Partir dun lment existant est le plus rapide. Il est possible (et tr`s utile, ee e pour vrication notamment) de crer des empreintes directement sur notre e e PCB. Pour ce faire, ouvrir le gestionnaire de librairie par Window -> library . Ajouter le composant le plus ressemblant. Le slectionner pour ensuite le coe pier dans le buer ([CTRL]+[X]). Maintenant il faut le convertir en pi`ce : e Buer -> Convert buer to pieces . Coller cette pi`ce. e [N] permet de numroter les broches. Une fois toutes les modications efe fectues, copier la pi`ce dans le buer puis Buer -> Convert buer to elee e ments pour enn lenregistrer Buer -> Save buer to File . Noter que les pastilles carres sont obtenues par des lignes et ensuite e modies avec la touche [Q] (une fois converties en lment). e ee Attention, si le nom des empreintes contient une minuscule comme dernier caract`re, elle sera considre comme une porte e e e ` lintrieure dun autre composant (souvent nomme a, b, c . . .) a e e Elles seront ignores. Il faut mettre un chire ou une majuscule. e Pour plus dinformations : http://ronja.twibright.com/guidelines/footprints.php, pour une plus grande explication sur la cration dempreintes graphiques (par Pcb). e http://www.brorson.com/gEDA/land patterns 20050129.pdf, un tutoriel pour dessiner ses empreintes ` la main, avec un diteur de texte. a e Une fois le PCB termin, dun clic on peut exporter la carte en chier e Gerber, png, ps, eps . . . Une des plus grandes richesses de gEDA est le traitement des donnes e entre les dirents programmes. Tous les chiers sont en ASCII ce qui les e rend tr`s facile ` manipuler. Il est donc possible de se crer des scripts pour e a e automatiser des tches rbarbatives. Habituellement le Perl est utilis pour a e e 10

1.3 Pcb cela. Voici les scripts distribus par gEDA : e

1 GEDA

1. John Luciani poss`de un large ventail de scripts disponibles sur son e e site we (http://www.luciani.org/). Dans cette collection, des scripts sont inclus pour gnrer des empreintes, notamment Footgen. e e 2. David Rowe poss`de des scripts pour mettre ` jour des lments de e a ee mme quajouter/supprimer des chiers PCB les uns des autres sur e son site web (http://www.rowetel.com/perl4pcb.html). 3. Stuart Brorson a crit un script simple qui gn`re des empreintes pour e e e deux ponts thermiques passifs en SMD. Un tarball gzipp est disponible e a ` http://www.brorson.com/gEDA/Smtgen.pl.gz. Une fois en main, gEDA est ` la fois simple et rapide ` utiliser. De plus a a beaucoup de librairies sont disponibles sur http://www.gedasymbols.org/. Il est galement possible de demander sur la liste des geda-user si ce compoe sant est disponible. Pour cela voir http://geda.seul.org/mailinglist/index.html. Pour la recherche de librairies, suivre les liens prcdemment cits ou e e e http://www.gedasymbols.org/. On en apprend galement beaucoup sur e http://www.geda.seul.org/wiki/geda:usage.fr. Sur divers sites internet on trouve des tutoriaux pour gEDA, mais en gnral ils ne sont pas ` jour. Tout le probl`me est l`. Les plus intrese e a e a e sants sont les tutoriaux des logiciels et non de la suite. Eux sont ` jour. Je a pense par exemple au tutorial de Pcb disponible sur http://pcb.sourceforge. net/manual.html. Pour comprendre un peu mieux la gestion dun projet sous gEDA il peut tre utile de lire le tutorial en Franais disponible l` : http: e c a e //www.iznogood-factory.org/pub/gEDA/tutorialfr.html. Il nest pas bas sur la derni`re version, car certaines congurations ont chang. Sur ce site (http:// e e ofset.sourceforge.net/freeduc/book/book 29.html) est disponible un exemple rapide de prise en main de Pcb. En lisant plusieurs tutoriaux dont la version nest plus ` jour, il est plus simple de voir ce qui est toujours dactualit. a e Pour une aide ` la cration dempreinte, voir : http://www.iznogood-factory. a e org/pub/gEDA/land patterns fr.pdf. Ce qui peut perturber au dbut cest la profusion de raccourcis. Tant e pour gschem que pour Pcb. Attention ` ne pas tester toutes les touches sans a vrier au risque de voir plus tard que la grille a t modie, que le pas nest e ee e plus en inch mais en millim`tres, etc. A noter galement que les racourcis sont e e dirents suivant les programmes. e Le seul inconvnient notable de gschem est la fonction undo . Lorsque e 11

1.3 Pcb lon annule les derni`res oprations, le zoom est pris en compte. e e

1 GEDA

gEDA est donc une suite tr`s compl`te. Sa principale dicult de prise e e e en main repose sur le fait que les tutoriaux ne sont pas ` jour. Il faut prfrer a ee laide de Pcb. Nanmoins cela reste une suite pour les concepteurs ne souhaitant pas e se proccuper dune license payante et souhaitant un travail de professione nel. Pour obtenir ce rsultat il faut bien entendu y passer un peu de temps, e mais qui sera largement rcompens par la suite en ecacit. De plus, il y e e e a rellement une grande biblioth`que de composants rapidement utilisables. e e Cela peut surprendre au dbut denregistrer des empreintes avec lditeur de e e texte, mais rien nest plus facile que de copier, voire modier du texte.

12

2 PROGRAMMATION DES PIC SOUS LINUX

Programmation des PIC sous linux

MPLAB, lenvironnement distribu par Microchip, est disponible sous e Windows. Pour linux, la possibilit est dutiliser Wine, mais il est prfrable e ee dutiliser les logiciels libres quand ceux-ci sont performants. Cest le cas de Piklab, auquel on int`gre le compilateur, le crateur de e e lien, le simulateur, le debugger, etc.

2.1

Installation

Egalement disponible dans la plupart des dpts, la derni`re version est e o e a ee ` tlcharger sur http://piklab.sourceforge.net/download.php. Pour la programmation des PIC, le langage utilis pour ce projet est e le C. Small Device C compiler est un outil libre et performant. Egalement disponible sous Windows, il permet de partager plus facilement les sources et donc de trouver des exemples utilisables. La derni`re version de SDCC est disponible l` : http://sdcc.sourceforge. e a net/index.php#Download. Le programmateur utilis est le In Circuit Debugger 2 de chez Microchip. e Il permet en plus de la programmation par port srie ou USB dutiliser la e fonction debugger. Pour lutiliser il faut installer un package supplmentaire (icd2prog). Une e version est disponible ici : http://kevin.raymond.free.fr/Stage/icd2prog-0.3.0. tar.gz. Suivant les dpendances, il peut ne pas tre reconnu. Une simple inse e tallation de MPLAB sous Wine r`glera le probl`me. e e

2.2

Utilisation

Sous Piklab, lors de la cration dun nouveau projet, il faut spcier le e e compilateur et le programmateur. Par dfaut beaucoup sont proposs. Nous e e utiliserons SDCC avec lICD2. Pour lICD2 il ne faut pas activer loption Low voltage programmation. Si tout ce passe bien, une fois connect un rapport avec les direntes e e tensions est ach. Exemple : e Vpp du programmateur = 12.4613 V Vdd de la cible = 5.00224 V Vpp de la cible = 12.4613 V Etant tr`s intuitif, cet environnement est tr`s rapide ` prendre en main. e e a 13

3 ACQUISITION DUNE TEMPERATURE

3
3.1

Acquisition dune temprature e


Principe de fonctionnement des cartes

Le syst`me est bas sur deux cartes direntes. Lune mesurant la tempe e e e rature ` une frquence variable et lautre les recevants pour les transmettre a e a ` un ordinateur. La liaison entre ces deux cartes est sans-ls (voir 3.2) et la gestion de lalimentation est importante pour se module autonome. La mesure dune temprature est eectue pour plus de prcision avec e e e une rsistance mtallique de platine, une Pt100. e e Le schma est le suivant : e

Fig. 2 Circuit conditionneur La source de courant est base sur lamplicateur OPA335, avec en entre e e une rfrence de tension de 2,5 V (MCP1525). Tous les lments apparaissant ee ee sur ce schma doivent tre au maximum indpendants de la temprature. Les e e e e rsistances sont choisies avec une prcision dau moins 0,1 %. e e 14

3.2 Le module Xbee

3 ACQUISITION DUNE TEMPERATURE

Les rsistances du pont de Wheatstone sont de 100,00 Ohm pour avoir e un quilibre ` 0,00 C. Il est compos de deux lments variants (des Pt100) e a e ee pour avoir une erreur de linarit nulle. e e La carte mettrice est compose de quatre rgulateurs. Le premier est e e e un rgulateur 5 V pour alimenter le PIC. Il est suivi dun rgulateur 3,3 V e e pour alimenter le module Xbee. Ce dernier rgulateur dispose dune broche e de validation contrle par le PIC. De cette mani`re, le PIC dvide ou non oe e e daliment le module Xbee. En parall`le est positionn un rgulateur 5 V ddi ` lalimentation des e e e e ea amplicateurs unipolaires pour la mesure de temprature. Lui aussi dispose e dune entre de validation connect au PIC. Il est suivi de la rfrence de e e ee tension 2,5 V. En arrtant ce rgulateur 5 V, le PIC dcide dteindre toute e e e e la cha de mesure. ne De part cette alimentation, en quelques instants seulement il ne reste plus que le PIC daliment. Celui-ci disposant dune fonction veille , lors dune e attente de mesure, la consommation est minime. De lordre de quelque dizaines de micro-volts. Sur les direntes cartes, beaucoup dentres/sorties du module Xbee ont e e t connectes. Ceci simplement pour une utilisation future. ee e Dindispensable il ny a pour linstant que les broches suivantes : DIN et DOUT pour la liaison srie et les commandes AT, contrlant le module ; e o RTS et CTS pour contrler les tampons dmission et de rception ; SLEEP o e e permettant de mettre en veille le module, associe ` SLEEP RQ pour vrier e a e ltat du module. e En ce qui concerne lutilisation ` proprement parler, linterrupteur permet a de couper lalimentation et le bouton poussoir ` eectuer un Reset du PIC. a Les led pourrons avoir une utilit suivant la programmation. e Le schma ainsi que les typons sont disponibles en annexe. e

3.2

Le module Xbee

Il sagit dun module Zigbee dvelopp par MAXSTREAM. Il a lavantage e e dtre contrl par commandes AT en liaison srie. La reprogrammation du e oe e rmware seectue par le programme X-CTU et la liaison srie du module. e Prvoir les connexions de CTS, DTR et RTS. e Sa simplicit dutilisation est base sur le fait que le microcontrleur diae e o logue par liaison srie. Les modules se reconnaissent ds la mise en route, e e 15

3.3 Le programme

3 ACQUISITION DUNE TEMPERATURE

ce qui permet de commencer tr`s rapidement ` tudier le fonctionnement en e ae dtail. Il est possible dassigner des adresses aux dirents modules, avec un e e dialogue bidirectionnel sur plusieurs cannaux. Il est possible damliorer la carte pour pouvoir reprogrammer le PIC e par le module Xbee. De cette mani`re il serait possible de reprogrammer e toutes les cartes en rseau tr`s rapidement. Un domaine dj` explor par e e ea e des utilisateurs sur le forum :http://www.planete-sciences.org/forums/ section robotique.

3.3

Le programme

Le signal Vs fonction de la temprature, issue de lamplicateur, est e connect ` la broche RA0 du PIC. Elle est congure en entre analogique ea e e (AN0). Pour rcuprer la valeur de Vs , il sut deectuer ces quelques lignes : e e 1 u n s i g n e d c har getTemp ( ) 2 { 3 // Dbut de c o n v e r s i o n e 4 ADCON0bits .GO = 1 ; 5 6 // On a t t e n d l a f i n de l a c o n v e r s i o n 7 w h i l e ( ADCON0bits .GO) ; 8 9 // On r e t o u r n e l e s b i t s de donn es e 10 r e t u r n ADRESH; 11 }

16

3.3 Le programme

3 ACQUISITION DUNE TEMPERATURE

Le calcul de la temprature seectue par les relations suivantes : e T = r = T0 + A2 + 4B r A 0, 07 C 2B

(1) (2) (3) (4) (5) (6) (7) (8) (9)

2Vs 0, 0124 GI R A = 3, 9083 103 K 1 B = 5, 775 107 K 2 T0 = 0, 00 C G = 425, 53 0, 4255 I = (2, 499 0, 004) mA R = (100 0, 1)

La suite concernant lutilisation des modules Xbee et de la liaison USB reste ` rediger. Cependant, sur internet beaucoup dexemples sont dispona nibles.

17

A CARTES

A
A.1

Cartes
Emetteur

Vous trouverez page suivante le schma de la carte mettrice. Celle qui e e mesure la temprature. Pour un soucis de consommation, plusieurs rgulae e teurs avec Enable ont t utiliss pour pouvoir couper lalimentation de ee e tout ce qui est inutile ` certain moment. a Puis les pages suivantes sont directement tire du chier PostScript exe port par Pcb. Il sagit des typons de la carte mettrice. e e

A.2

Rcepteur e

Ensuite vous trouverez le schma de la carte rcepteur. Bien remarquer e e le condensateur de 470 nF. Cest par lui quest x le potentiel 3,3 V pour e xer la vitesse de transmission sur la liaison USB. Puis les typons de la carte rcepteur exports par Pcb. 3 feuilles parmis e e 12 (masque, trou de perage, . . .) c

18

A.2 Rcepteur e

A CARTES

19

20
(null), back (mirrored), scale = 1:1.000 /user/kraymond/Emetteur.pcb

21
(null), front, scale = 1:1.000 /user/kraymond/Emetteur.pcb

22
(null), frontassembly, scale = 1:1.000 /user/kraymond/Emetteur.pcb

A.2 Rcepteur e

A CARTES

23

24
(null), back (mirrored), scale = 1:1.000 /user/kraymond/Recepteur.pcb

25
(null), front, scale = 1:1.000 /user/kraymond/Recepteur.pcb

26
(null), frontassembly, scale = 1:1.000 /user/kraymond/Recepteur.pcb

CERN Organisation Europenne pour e la Recherche Nuclaire e F-01631 CERN Cedex France http://www.cern.ch/

Kvin Raymond e IUT Annecy Dpartement GEII e Anne 2007 e

Rsum e e
Mesure dune temprature avec prcision et transmission par liaison sans l e e Dans cette tude, nous abordons la mesure dune temprature ambiante avec prcision. e e e Apr`s avoir dcrit le fonctionnement globale dune telle mesure et des direntes possibie e e lits de mises en uvre, nous tudierons le dfaut de la cha de mesure et lincertitude e e e ne introduite. Ceci passe par lutilisation des logiciels libres de Conception lectronique Assist par e e Ordinateur et de programation des microcontrleurs, ainsi que par lutilisation de divers o protocoles comme le ZigBee ou lUSB. Pour une plus grande portabilit, ltude est ralise dans un environnement GNU/Lie e e e nux. Mots-cls : Mesure de temprature, RTD, PRTD, Pt100, ZigBee, Xbee, USB, PIC, GNU, e e Linux.

Abstract
High precision measurement of temperature and wireless transmission of measurement results. This report explores various possibilities for measuring high precision temperature, focusing on circuit conditioning. It discusses various tools such as PIC programation, Electronic Design automation tool, as well as protocols such as USB and Zigbee solutions. The entire study is based on the GNU/Linux platform. Keywords : Temperature sensor, RTD, PRTD, Pt100, ZigBee, Xbee, USB, PIC, GNU, Linux.

Rapport disponible : http://kevin.raymond.free.fr/Stage/rapport/RapportKR.pdf