CELCIUS
GSEA 2 - Mars 2016 -
Encadré par : M.Aimad EL MOURABIT
Réalisé par : ENNEBET Mohammed
TALIB Karim
GUEDIRA Mohammed
Conception des Systèmes Electroniques Mars 2016
2
Sommaire :
I. INTRODUCTION GENERALE……………………………………………………….….3
1-1. CONTEXTE DU PROJET, OBJECTIFS ET MOTIVATION ….……….3
1-2. APPEL D’OFFRE…………………………………………………………………..4
II. METHODOLOGIE DE GESTION DU PROJET…………………………..…..……5
2-1. OBJECTIF DU PROJET………………………………………………………....6
2-2. PARTIES PRENANTES………………………………………………..……….6
2-3. PRODUCT BREAKDOWN STRUCTURE…………………………………6
2-4. WORK BREAKDOWN STRUCTURE………………………………………7
2-5. DIAGRAMME DE GANTT…………………………………………………….7
III. ELABORATION DU SYSTEME……………………………………….……………..…8
3-1. SCHEMA DU MONTAGE …………………………………………….….....8
3-2. SOLUTION PROPOSEE………………….………………….………………...9
3-3. INTERFACE GRAPHIQUE EN C#………………………………………..13
IV. REALISATION DU SYSTEME………………………………………………………..23
4-1. LE FLOT DE CONCEPTION DES MICROSYSTEMES : UN APERCU
THEORIQUE GENERAL…………………………………………………………………23
4-2. SCHEMA ORCAD……………………………………………………………..…25
4-3. LAYOUT…………………………………………………………………………….26
4-4. LA TECHNOLOGIE IMPRIMEE………………………………..…………..28
V. CONCLUSION …………………………………………………………………………..31
Conception des Systèmes Electroniques Mars 2016
3
I. INTRODUCTION GENERALE
Les systèmes d’acquisition de données sont devenus, de nos jours un élément
clé pour l’avenir de l’industrie, bien qu’ils reposent sur des critères de sélection
(au niveau grandeur mesurée : Température, bruit, etc.) et exigences (Système
temps réel, utilisation à proximité du point de mesure, enregistrement de
données); ils sont aujourd’hui beaucoup plus autonome, intelligent et facile à
configurer.
1-1. CONTEXTE DU PROJET, OBJECTIFS ET MOTIVATION
Le semestre précédant était pour nous, un semestre où nous avons acquis des
connaissances non sans importance au niveau conception des systèmes
électroniques, la démarche suivie par notre encadrant, consistait à nous
orienter vers un apprentissage, non seulement basé sur l’échange mais aussi,
nécessitant de l’autonomie pour pouvoir construire le profil d’un bon
électronicien.
De l’électronique combinatoire, à la théorie séquentielle, nous avions
l’opportunité d’étudier des systèmes vus en intégralité, et faisions leur
simulation comportementale sur l’outil de CAO, dont le choix s’est présenté
comme étant le plus judicieux, ceci nous a permis de bâtir de nouveaux
concepts, dont le plus primordiale était de comprendre que le but ultime de la
conception est de produire le dessin des masques d’un circuit qui est
fonctionnellement équivalent à ses spécifications initiales. Cette conception,
est initialement descendante, c’est-à dire que, conservant la fonctionnalité,
respectant des objectifs décidés au niveau supérieur (Timing, consommation,
surface) et obéissant à certaines contraintes physiques, elle doit passer d’un
niveau d’abstraction à un autre plus bas.
Conception des Systèmes Electroniques Mars 2016
4
Il nous a été, par la suite, important de travailler sur des systèmes
microprogrammés, pour appréhender la relation de passage (câblé,
microprogrammé), ceci s’est manifesté par des applications pratiques, dont
l’intérêt était aussi de découvrir des IDE (mikroC), et se disposer d’un amas de
connaissances pour le projet présent.
C’est dans ce contexte que s’inscrit le projet que nous présentons (CELSIUS),
qui, de par sa simplicité, se décrit comme une application dans laquelle nous
allons investir, temps et effort. Nous tenons donc à remercier notre encadrant
pour cette opportunité.
Nous espérons, lors de ce projet, se confronter à la pratique, découvrir un
nouvel aspect de la conception en électronique et aboutir à une bonne
réalisation du système en question afin de répondre aux spécifications conçues
dans le cahier de charges.
1-2. APPEL D’OFFRE
Conception des Systèmes Electroniques Mars 2016
5
II. METHODOLOGIE DE GESTION DU PROJET
Et si la gestion de projet n’existait pas…
Définition : Un projet est un ensemble d’activités à réaliser en vue d’un
objectif défini, en temps et budget maîtrisés.
De cette définition, il est primordial de rappeler que tout projet passe par des
étapes structurant sa conduite et gestion, nous allons les expliciter dans le
chapitre présent :
Conception des Systèmes Electroniques Mars 2016
6
2-1. OBJECTIF DU PORJET :
Conception et réalisation d’un système d’acquisition numérique de
température, sur une carte électronique, avec interface de communication
développée en C#.
2-2. PARTIES PRENANTES
Maîtres d’œuvre :
TALIB Karim – Elève ingénieur en Systèmes Electroniques
GUEDIRA Mohammed – Elève ingénieur en Systèmes Electroniques
ENNEBET Mohammed – Elève ingénieur en Systèmes Electroniques
Maître d’ouvrage :
La société ENSAT
2-3. PRODUCT BREAKDOWN STRUCTURE
Afin d’avoir une vision hiérarchique et modulaire du produit demandé, et dans
l’optique de répartir les tâches entre les acteurs concernés par ce projet, une
décomposition arborescente du produit en éléments fins s’avère capitale.
Figure 0: Product Breakdown Structure
Système d’acquisition de
température
Acquisition et contrôle
de température
Interfaçage avec PC Dépassement du seuil Capteur pluviométrique
intégré au système
LM35
LCD
LED seuil normal
Communication
RS232
MAX 232
LED d’alerte
PIC16F877A
Empreinte
Layout
Transistor
2N2222
Conception des Systèmes Electroniques Mars 2016
7
2-4. WORK BREAKDOWN STRUCTURE
Le WBS répond à « quoi faire », c’est-à-dire la décomposition arborescente
des tâches à effectuer.
1
Figure 1 : Work Breakdown Structure
2-5. DIAGRAMME DE GANTT
Nous nous sommes mis d’accord sur le planning montré ci-dessous, et avons
établi le diagramme de Gantt suivant :
Figure 2 : Diagramme de Gantt
Système d’acquisition de
température
Montage sur ISIS Code sur MikroC Interface C# Schéma ORCAD Gestion du projet
Layout
Impression du
circuit
Tests sur
maquette
Conception des Systèmes Electroniques Mars 2016
8
III. ELABORATION DU SYSTEME
Cette partie se propose de mettre en lumière la réalisation du prototype
proposé, nous présenterons dans un premier temps le schéma de
design/simulation sous ISIS, nous détaillerons dans une deuxième partie la
solution proposée pour répondre aux fonctionnalités prescrites dans le cahier
de charge, puis, nous nous intéresserons à expliciter la partie interfaçage avec
PC, dans laquelle nous présenterons l’application CELSIUS développée en C#.
3-1. SCHEMA DU MONTAGE
Figure 3 : Design du système sous ISIS Proteus
Le design comporte :
Un microcontrôleur 16F877A
Un afficheur LCD 16 caractères x2 lignes
Conception des Systèmes Electroniques Mars 2016
9
Un circuit intégré MAX232 pour adapter les signaux issus du PIC à la
machine
Un capteur de température LM35
Un quartz de fréquence 16MHz
Un connecteur RS232 (connexion entre le matériel et l’interface C#)
Un transistor 2N2222, connecté à la broche RD5 du microcontrôleur via
son émetteur, pour assurer la présence d’humidité si un signal sollicite sa
base
3 Résistances de valeur 220 Ω
3 LEDS, une bleue pour l’humidité, une deuxième verte pour le seuil
normal, et une dernière rouge pour le dépassement du seuil réglé par
l’usager
6 Capacités, dont 4 polarisés (1 µF) pour le MAX232, et 2 de valeurs 22
pF liées à l’horloge du système
Un potentiomètre 10 KΩ pour le réglage du contraste de l’afficheur
Un bouton poussoir fictif, pour la simulation du prototype en cas
d’humidité
3-2. SOLUTION PROPOSEE :
La vue que nous avons pour développer l’exécution de notre programme, afin
de le simuler sur ISIS, est un choix, que nous voyons optimal; pour produire un
code de qualité répondant aux contraintes de notre client dans des temps et
des coûts prévisibles. Cette vue se caractérise par un paradigme de
programmation impérative procédurale dont le traitement de données est
séparé de données elles-mêmes. Générées sous fichiers headers, les parties de
code sous MiKroC sont détaillées dans ce volet :
Fonction d’initialisation :
Dont le rôle est de configurer les registres d’entrées/sorties (TRIS), ainsi que le
module de conversion A/N + l’afficheur LCD et le protocole de transmission
série USART, tout en prévoyant des temporisations pour la stabilisation de
chacun de ces modules.
Conception des Systèmes Electroniques Mars 2016
10
Fonction d’affichage :
LongToStr, en plus de la conversion en String, classe les données à afficher en
fonction de la longueur déclarée du tableau, dans notre cas, et avec 12
caractères, elle affichera les 5 caractères de température (3 chiffres
représentant la partie entière, la virgule et la précision 0.1) après 7 espaces
vides.
A noter que 223 en décimal est l’équivalent du code ASCII du caractère °
Conception des Systèmes Electroniques Mars 2016
11
Fonction Dépassement seuil :
Par défaut, La LED verte s’allume indiquant que le seuil est dans un état
normal, avant d’être ajusté par l’utilisateur.
Lors de l’établissement d’une connexion RS232 avec le PC, l’utilisateur a la
commande de réglage du seuil, lorsque ce dernier est dépassé, un caractère ‘ a’
est envoyé via le port série pour déclencher le système de ventilation
(représenté dans notre schéma par une LED rouge)
Fonction Humidité :
Le signal émis par le transistor 2N2222, permet par le biais de la broche RD5,
d’allumer la LED bleue indiquant la présence d’humidité (broche RD4), la
temporisation mentionnée permet de vérifier, chaque 4 secondes, si l’humidité
est toujours présente.
Conception des Systèmes Electroniques Mars 2016
12
Le programme principal :
Composé d’une partie configuration et d’une partie main, dans laquelle les
fonctions sont appelées de manière ordonnée.
UNE SIMULATION FONCTIONELLE :
Figure 4 : Simulation du système
Conception des Systèmes Electroniques Mars 2016
13
3-3. INTERFACE GRAPHIQUE C#
« L’informatique serait restée une petite industrie si le transistor n’avait pas été
inventé ! »
Parler de code c’est bien, parler de son implémentation c’est encore mieux,
mais parler de son développement dans le cadre d’une application utilisateur
c’est aujourd’hui tout aussi essentiel. Aussi bien que les interfaces homme
machine sont maintenant encore plus facile à manipuler et intègrent un
nombre de fonctionnalités important, elles sont ergonomes et plus évolutives
(en terme de Design)
Le cahier de charge nous a imposé de développer une interface utilisateur qui
indique la valeur de la température mesurée par le capteur en temps réel,
prévoit un réglage du seuil de la grandeur en question, et stocke les résultats
de valeurs sur un archivage représenté par un fichier.txt
Le langage recommandé pour créer notre interface est le langage C#.
Développé par Microsoft, et à paradigmes multiples; il combine les principes de
C/C++ et il est parfaitement conçu pour les plateformes Windows. Nous allons
utiliser le concepteur Windows Forms et la boîte à outils du logiciel Microsoft
Visual Studio 2010 pour créer cette interface. Nous allons l’utiliser avec une
vision orientée objet.
Une version future :
Figure 5 : Présentation de l’interface en C#
Conception des Systèmes Electroniques Mars 2016
14
A mentionner que notre application, comportera une option de traçage de
graphe de température en temps réel.
A présent, détaillons le code extrait par extrait :
Utilisation des directives et déclaration de variables :
Tout code commence par une utilisation des directives qui répertorient les
namespaces et les bibliothèques de classes utilisées par l’application, on
déclare après les variables utilisées :
- Un entier i pour la boucle d’itération (traçage de graphe)
- Une chaîne de caractères pour lire la data venant du port série.
- Une autre chaîne de caractère pour le stockage du seuil ajusté par l’usager.
- Deux floats resultat1 et seuil1, outputs de conversion de strings resultat et
seuil, feront objet de comparaison en cas de dépassement du seuil.
- Une variable booléenne test indiquant la validation du seuil.
- Deux tableaux x (axe de temps) et y (température) de longueurs 1500 pour le
graphe.
Remarque : ZedGraph est une librairie open source qui permet le traçage des
graphes de grandeurs physiques, nous l’avions utilisé pour notre interface.
Conception des Systèmes Electroniques Mars 2016
15
Réception de données (PORT SERIE)
La réception de la température se fait avec un pas d’échantillonnage de
100ms, faisant ainsi appel à une fonction Ecrire qui affiche la mesure sur un
label, tout en générant l’historique des relevés associés à leur date et heure
relatives, et en traçant chaque mesure sur le graphe.
Affichage température :
Conception des Systèmes Electroniques Mars 2016
16
Fichier back-up :
Un fichier back-up est généré ensuite pour la mémorisation des relevés
précédents, l’acquisition des 3 données (Date+heure+température) se fait sur
un octet.
Evénement du click sur le bouton « Ouvrir historique » :
Lorsque le fichier n’est pas généré correctement, l’exception est gérée en
affichant une fenêtre contenant un message d’erreur.
Conception des Systèmes Electroniques Mars 2016
17
Evénement du click sur le bouton « Mesurer »
Les boutons historique et Arrêt sont actives lorsqu’on commence la mesure
via le port série, si le seuil n’est pas validé, une fenêtre d’exception s’affiche sur
l’écran de l’utilisateur pour le rappeler à le valider.
Evénement du click sur le bouton « Arrêter »
Conception des Systèmes Electroniques Mars 2016
18
Fermeture de l’interface et traçage de graphe
Le traçage de graphe est programmé dans l’événement du Timer_Tick parce
qu’il s’exécute en temps réel.
Exit :
Les objets à loader lors du débogage de l’interface :
Conception des Systèmes Electroniques Mars 2016
19
SIMULATION DE L’INTERFACE
Une première vue (ancien design) de l’interface avec le fichier back-up :
Figure 6 : Celsius
Figure 7 : Fichier back-up
Conception des Systèmes Electroniques Mars 2016
20
Pour un seuil de 14 °C, la figure 8 montre une température de 13.1 °C
Figure 8 : Seuil normal simulé
A 17 °C, le seuil est dépassé, la LED rouge s’allume, et le message s’affiche.
Figure 9 : Seuil dépassé
Conception des Systèmes Electroniques Mars 2016
21
La figure suivante montre, le seuil normal (allumage de LED verte), dans la
maquette de test :
Figure 10 : Seuil normal sur maquette d’essai
Un autre test de dépassement :
Figure 11 : Seuil dépassé sur maquette d’essai
Conception des Systèmes Electroniques Mars 2016
22
La connexion avec l’interface montre le seuil dépassé :
Figure 12 : Seuil dépassé sur interface
Perspectives du chapitre III :
Il sera abstrait de simuler le système d’acquisition sans passer par les étapes
de conception amenant à sa réalisation. Par conséquent, il est nécessaire
d’avoir des outils de développement pour pouvoir toujours accomplir les
spécifications du cahier de charge, le meilleur et même le seul recours est la
CAO qui reste indispensable pour la réalisation de tout système électronique.
Le véritable challenge dans la CAO se situe au niveau des méthodes
numériques fiables qui offrent à la fois des caractéristiques exactes et un temps
de calcul réduit.
Nous avons simulé dans ce chapitre, le système d’acquisition de température,
et testé sur maquette les différentes spécifications du cahier de charge, dont la
majorité a été validée. Nous avons aussi développé l’interface utilisateur qui
permettra une utilisation conviviale dans la collecte de données.
Conception des Systèmes Electroniques Mars 2016
23
IV. REALISATION DU SYSTEME
4-1. LE FLOT DE CONCEPTION DES MICROSYSTEMES :
UN APERCU THEORIQUE GENERAL
La conception d’un système s’appuie bien entendu sur des outils de CAO. Ces
outils gèrent de façon efficace les grandes quantités de données qui sont
nécessaires au processus de conception. Ils permettent notamment de
modéliser les composants à différents niveaux d’abstraction et de simuler leur
comportement.
Dans ce chapitre, nous décrirons d’une manière générale le flot de conception
microsystème, puis nous simulerons sur ORCAD notre système, et générerons
dans une dernière partie son layout pour le réaliser.
Le flot de conception :
Les méthodologies de conception de circuits intégrés reposent sur des
approches très structurées. Elles sont basées sur la validation par simulation à
différents niveaux hiérarchiques de représentations et utilisent des
bibliothèques de composants dans un environnement CAO. Typiquement, la
méthodologie de conception est top-down, depuis les niveaux d’abstraction les
plus haut, avec donc moins de détail, vers les niveaux d’abstraction plus bas où
tout le détail sur le circuit à fabriquer est disponible. A l’inverse, la conception
bottom-up commence par les niveaux les plus bas et procède par abstraction
vers les niveaux plus hauts. Ces approches très structurées servent à réduire le
nombre de cycles de conception-fabrication-test et, par voie de conséquence,
le temps de conception.
Au plus bas niveau, nous avons le dessin des masques de lithographie. A partir
de ces masques, les outils permettent de simuler le procédé de fabrication et la
physique des composants. Dans la microélectronique, il existe un nombre
réduit de composants (transistors, condensateurs, résistances etc.) et donc de
modèles, ces composants étant utilisés en grands nombres dans un circuit.
Procédant vers le haut, nous trouvons ensuite le niveau circuit. Les composants
sont ici interconnectés en formant un réseau électrique, le comportement de
chaque composant étant décrit par un modèle. Des outils appelés outils
Conception des Systèmes Electroniques Mars 2016
24
d’extraction du layout permettent d’identifier les composants et d’en tirer
automatiquement une netlist décrivant le circuit.
Etapes du flot de conception micro-électronique :
Depuis la spécification conceptuelle du microsystème à la fabrication et au
test du dispositif, le flot de conception micro-électronique est organisé d’une
façon structurée, nous allons le détailler à partir de cette figure :
Spécification conceptuelle du microsystème
Packaging suivant l’interaction avec l’environnement
Simulation comportementale (SPICE, HDL)
Raffinement du design électronique
Fabrication
Test
Simulation
Définition de l’architecture : Saisie du
schéma/Diagramme de blocs électronique
Modèles comportementaux (Circuits/Equations)
Dessin des masques et vérification DRC
Extraction de parasites
Macro-models électronique
Conception des Systèmes Electroniques Mars 2016
25
4-2. SIMULATION ORCAD
Soit le schéma de design :
Figure 13 : Design du schéma sur Capture
La première étape consiste à affecter les empreintes convenables à chaque
composant, pour ce faire, une sélection entière du schéma, puis on ouvre
l’éditeur de propriétés, et on fait associer chaque composant à son PCB
Footprint.
Conception des Systèmes Electroniques Mars 2016
26
Figure 14 : Capture des composants avec empreintes associées
Puis, on évalue notre circuit en effectuant une annotation automatique aux
composants, on vérifie après les règles électriques (DRC), et on génère la
nomenclature (BILL OF MATERIALS)
Il est important de générer le fichier de netlist.MNL avant de router le circuit !
4-3. LAYOUT
Sur Layout, on appelle le fichier NEWSCHEMA.MNL, puis on sauvegarde le
typon NEWSCHEMA.MAX, et on commence à placer nos composants tout en
optimisant au maximum la surface du circuit.
On dessine le contour de la carte, on modifie la largeur des pastilles (TOOL ->
PADSTACK -> SELECT FROM SPREADSHEET), et on définit un routage pour la
couche BOTTOM (Les autres couches, à savoir GND, TOP et POWER seront
inutilisés)
Conception des Systèmes Electroniques Mars 2016
27
On configure les pistes en choisissant 30 inches comme largeur, et on modifie
aussi l’espace entre les pistes, comme la montre la figure ci-dessous :
Figure 15 : Route Spacing
Un routage automatique, et un plan de masse défini nous a donné le schéma
suivant :
Figure 16 : Routage du circuit
Conception des Systèmes Electroniques Mars 2016
28
CAPTEUR D’HUMIDITE :
Comportant des pistes conductrices parallèles, l’humidité est constatée
lorsqu’une goutte d’eau, excite la base du 2N2222, et le signal issu de son
émetteur transite vers le microcontrôleur, donnant un niveau logique positif à
la LED bleue.
L’empreinte de ce capteur est créée sur Layout :
Figure 17 : Empreinte du capteur pluviométrique
Les dimensions de ce capteur sont classées dans le tableau suivant :
Hauteur (thousandth of inches) 1025 (2.60 cm)
Largeur (th of inches) 1300 (3.302 cm)
Espaces entre pistes (thofinches) 25 (0.0635 cm)
4-4. LA TECHNOLOGIE IMPRIMEE
Utilisé pour la première fois dans les années 40, le circuit imprimé est une
technique de câblage par rubans de cuivre déposés sur un support isolant
Conception des Systèmes Electroniques Mars 2016
29
d’épaisseur variant de 0.2 à 6 mm, relativement au matériau employé pour son
utilisation (Verre époxy, Téflon, Polyster mylar)
Plusieurs avantages sont à l’origine de l’emploi du circuit imprimé, nous
citerons :
+ Fiabilité,
+ Clarté du montage,
+ Répétitivité,
+ Fixation des petits composants.
L’étape de réalisation de notre circuit imprimé s’est effectuée dans la salle
B11, et répartie en 4 phases importantes :
Au premier lieu, nous avons commencé par l’insolation, dans laquelle, la
plaque d’époxy avec cuivre et couche photosensible était soumise à un
rayonnement d’UV durant un temps de 2 minutes. La couche photosensible
exposée au UV est donc dégradée et pourra être, par la suite, éliminée par le
révélateur.
Après l’insolation, vient la phase de révélation (par action chimique), dans
laquelle la plaque est plongée dans un bain révélateur (1 Litre) qui dissout le
vernis exposé au UV.
Puis, on procède à la gravure, la plaque est plongée dans un bain de
perchlorure de fer chauffé entre 20 et 50°C, pour ôter le cuivre qui n’était pas
protégé par le vernis.
Ensuite, nous avons mis à nu le cuivre, en frottant les plaques avec un chiffon
afin de faire disparaître la couche photosensible encore présente.
Remarque : Après la révélation et la gravure, nous avons rincé soigneusement
le circuit à l’eau claire. Il reste encore à réaliser les opérations de perçage et
éventuellement de soudage.
Conception des Systèmes Electroniques Mars 2016
30
Pour une première expérience, et avec un autre câblage du schéma (le même
système), nous avons abouti au circuit imprimé suivant :
Figure 18 : Capture de l’impression du circuit (Ici le LCD est connecté au port D,
les LEDs au port B)
Limitation :
L’emplacement de notre MAX232 n’était pas optimal dans ce cas (Une
rotation de 180 ° a empêché l’implémentation du MAX dans la plaque pour le
souder, la PIN 1 s’était coïncidée avec la PIN16), il nous a été indispensable
alors de refaire le routage, et par conséquence modifier le design, en
connectant le LCD au PORTB, les LEDs au PORTD et puis router le circuit à
nouveau. (cf. Figure 16)
Conception des Systèmes Electroniques Mars 2016
31
V. CONCLUSION
Le travail exposé dans ce rapport s’inscrit dans le domaine de la conception
des circuits électroniques, un domaine riche, certes, mais aussi dans la
recherche de plus en plus confirmée.
Le passage par les connaissances théoriques nous a permis d’approfondir le
travail pratique, nous avons pu franchir, aussi des limitations que nous
trouvions délicates, notamment au niveau CAO, l’expérience que nous avons
acquis nous a permis de découvrir les secrets de l’outil ORCAD- LAYOUT,
d’explorer les facettes du langage C# et de se familiariser à un niveau colossal
avec l’environnement ISIS, dans l’objectif de répondre au besoin spécifié.