Mémoire de Projet de Fin d’Études Conception et réalisation d’un préleveur d’air 4 voies autonome : introduction d’un microcontrôleur et fonctionnement sur batterie présenté par Lucas GALAND Spécialité Génie Électrique, Option Énergie Institut National des Sciences Appliquées de Strasbourg pour l’Institut de Chimie et Procédés pour l’Énergie, l’Environnement et la Santé Équipe de Physico-chimie de l’atmosphère UMR7515 sous la cotutelle du CNRS et de l’Université de Strasbourg 1 rue Blessig, 67000 Strasbourg encadré par Stéphane LE CALVÉ, pour l’ICPEES Renaud KIEFER, pour l’INSA de Strasbourg PFE effectué du 2 février 2015 au 31 juillet 2015 Date de soutenance : 24 septembre 2015 Projet de Fin d’Études INSA Strasbourg Fiche d’objectifs Conception et réalisation d’un préleveur d’air 4 voies autonome : introduction d’un microcontrôleur et fonctionnement sur batterie • Prise de connaissance de la constitution et du principe de fonctionnement d’un préleveur d’air • Analyse du cahier des charges et recherche de solutions techniques • Développement d’un logiciel de contrôle/paramétrage sur un microcontrôleur • Développement d’une interface homme-machine basée sur écran tactile • Réalisation d’une carte d’alimentation et d’une carte de commande • Introduction d’une batterie et conception/réalisation d’un chargeur adapté • Ajout de fonctionnalités supplémentaires (archivage de données sur une carte mémoire, mode d’économie d’énergie) Remerciements En premier lieu, je tiens à remercier l’Institut de Chimie et Procédés pour l’Énergie, l’Environnement et la Santé (ICPEES) de m’avoir accueilli et de m’avoir permis d’effectuer mon projet de fin d’études. Je tiens à remercier particulièrement mes encadrants, à savoir M. Stéphane LE CALVÉ, responsable de l’équipe de physico-chimie de l’atmosphère de l’ICPEES, et M. Renaud KIEFER, enseignant au département génie électrique et climatique de l’INSA de Strasbourg. Je tiens également à remercier chaleureusement M. Vincent PERSON, ingénieur projets, Mme Claire TROCQUET, ingénieure chimie R&D et Mme Rouba NASREDDINE, doctorante, qui m’ont aidé par leurs conseils avisés et qui m’ont permis de réaliser mon projet de fin d’études dans d’excellentes conditions. Je souhaite exprimer ma reconnaissance envers la société In’ Air Solutions, et plus particulièrement envers Mme Stéphanette ENGLARO, présidente et directrice générale, et M. Pierre BERNHARDT, conseiller scientifique. Enfin, je remercie également les personnels du laboratoire et les stagiaires ainsi que toutes les personnes que j’ai pu côtoyer durant ce PFE. 1 Projet de Fin d’Études INSA Strasbourg Condensé La qualité de l’air que nous respirons est désormais considérée comme l’un des principaux facteurs d’apparition chez l’Homme de pathologies comme les allergies, les troubles de la respiration ou encore plus inquiétant, certaines formes de cancers. C’est pourquoi il est aujourd’hui devenu nécessaire de développer de nouveaux instruments capables d’échantillonner l’air pour une analyse différée ou immédiate. Ce projet de fin d’études vise à perfectionner un préleveur d’air développé précédemment afin de le rendre davantage autonome. Ce système consiste à faire circuler un certain volume d’air ambiant sur un matériau adsorbant qui est analysé par la suite afin d’en déduire la concentration des polluants présents. Ce rapport présente les modifications techniques qui ont ainsi été apportées. D’une part, des ajouts interviennent au niveau de son logiciel de contrôle par la mise en œuvre d’un microcontrôleur et d’une interface homme-machine basée sur un afficheur tactile. D’autre part, a été ajouté un système de batterie accompagné de son chargeur dédié. Abstract The quality of the air we breathe is henceforth considered as one of the main factors responsible of the appearance of some illnesses such as alergies, respiratory diseases and even some forms of cancer. That is why it has become necessary today to develop new instruments able to sample ambient air for immediate or postponed analysis. This graduation project is intented to improve an existing air sampler in order to make it more autonomous. This system works by making a definite volume of ambient air flowing onto an adsorbant material that will be analysed afterwards to get air pollutant concentrations. This report introduces the technical enhancements that have been brought. On one side, enhancements occur at a software level with the integration of a control software in a microcontroller and with the making of a human-machine interface based on a touchscreen. On the other side, a battery system with a dedicated charger has been designed. 2 Table des matières Fiche d’objectifs 1 Remerciements 1 Condensé 2 Glossaire 5 Introduction 6 Présentation du laboratoire 7 1 Prise de connaissance du sujet et rédaction du cahier des charges 1.1 Principe de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Contexte d’étude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Le Labjack U12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 Le logiciel de contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.3 Avantages et inconvénients du préleveur développé par le laboratoire . 1.3 Cahier des charges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Les éléments du système . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 La pompe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.2 Le régulateur de débit massique . . . . . . . . . . . . . . . . . . . . . 1.4.3 Les distributeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4.4 Les cartouches de prélèvement . . . . . . . . . . . . . . . . . . . . . . 2 Développement du logiciel et de la carte microcontrôleur 2.1 Environnement de développement intégré . . . . . . . . . . . 2.2 Choix des éléments . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Microcontrôleur . . . . . . . . . . . . . . . . . . . . . 2.2.2 Écran tactile et contrôleur graphique . . . . . . . . . 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8 9 10 10 11 11 11 11 12 13 13 14 14 . . . . 15 15 16 16 17 Projet de Fin d’Études 2.3 2.4 2.2.3 Support de stockage . . . . . Développement logiciel . . . . . . . . 2.3.1 Drivers . . . . . . . . . . . . . 2.3.2 Fonctions graphiques . . . . . 2.3.3 Fonctions logicielles avancées . 2.3.4 Organisation des menus . . . Carte microcontrôleur . . . . . . . . INSA Strasbourg . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Développement d’une carte de puissance 3.1 Problématique . . . . . . . . . . . . . . . . . 3.2 Génération des bus d’alimentation . . . . . . 3.2.1 Solutions proposées . . . . . . . . . . 3.2.2 Solution retenue . . . . . . . . . . . . 3.3 Commande de la pompe et des électrovannes 3.4 Réalisation de la carte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Mise en place d’une batterie et conception d’un chargeur dédié 4.1 Choix de la batterie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Conception du chargeur . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Présentation du LTC4008 . . . . . . . . . . . . . . . . . . . . 4.2.2 Profil de charge . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Profil de charge attendu . . . . . . . . . . . . . . . . . . . . . 4.2.4 Schéma électronique du chargeur . . . . . . . . . . . . . . . . 4.2.5 Réglage de la tension de fin de charge (ou tension de floating) 4.2.6 Réglage du courant de charge . . . . . . . . . . . . . . . . . . 4.2.7 Cellule de commutation . . . . . . . . . . . . . . . . . . . . . 4.2.8 Choix de l’inductance . . . . . . . . . . . . . . . . . . . . . . . 4.2.9 Protection thermique . . . . . . . . . . . . . . . . . . . . . . . 4.3 Réalisation du chargeur . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 Connectique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.2 Difficultés rencontrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 19 19 21 26 30 33 . . . . . . 34 34 35 36 37 38 39 . . . . . . . . . . . . . . 40 40 41 42 42 43 44 44 45 45 45 45 46 46 46 5 Intégration mécanique 48 5.1 Fixation des actionneurs dans la mallette . . . . . . . . . . . . . . . . . . . . . . . . . 49 5.2 Intégration des cartes électroniques et de l’écran tactile . . . . . . . . . . . . . . . . . 49 5.3 Résultat final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Conclusion générale et perspectives d’amélioration 51 Bibliographie 54 4 Projet de Fin d’Études INSA Strasbourg Glossaire ADC : Analog to Digital Converter CTN : Coefficient de Température Négatif CEM : Compatibilité Électromagnétique DC : Direct Current ICPEES : Institut de Chimie et Procédés pour l’Environnement, l’Énergie et la Santé LDO : Low-dropout regulator (type de régulateur linéaire à faible chute de tension) Li-Po : Lithium Polymer LiFePO4 : Lithium Fer Phosphate MOSFET : Metal Oxyde Semiconductor Field Effect Transistor PMP : Parallel Master Port RDM : Régulateur de Débit Massique RGB : Red Green Blue RTCC : Real Time Clock and Calendar SPI : Serial Peripheral Interface TFT : Thin-Film Transistor UART : Universal Asynchronous Reveiver Transmitter 5 Projet de Fin d’Études INSA Strasbourg Introduction La surveillance de la qualité de l’air est devenue l’une des préoccupations majeures des pouvoirs publics. En effet, il est aujourd’hui reconnu qu’il existe un lien direct entre la qualité de l’air respiré et la fréquence d’apparition de diverses pathologies telles que les allergies, les troubles de la respiration, ou plus grave, certaines formes de cancers. Pour répondre à une demande croissante de surveillance et d’analyse de la qualité de l’air, l’équipe de physico-chimie de l’atmosphère de l’ICPEES développe des instruments analytiques destinés à prélever et mesurer en temps réel les concentrations de polluants atmosphériques présents dans l’air ambiant. En outre, des préleveurs d’air portables ont été développés puis utilisés lors de campagnes de prélèvement, les contenus des prélèvements étant ensuite analysés par des méthodes chromatographiques qui constituent les méthodes dites de référence. Ceci permet de valider in fine le bon fonctionnement de nouveaux instruments. Dans le cadre de ce projet de fin d’étude, j’ai eu l’opportunité de rejoindre l’équipe de PhysicoChimie de l’Atmosphère de l’Institut de Chimie et Procédés pour l’Environnement, l’Énergie et la Santé (ICPEES). Cette équipe développe des méthodes d’analyse et d’échantillonnage dans l’air des polluants atmosphériques dont les concentrations sont sujettes à des réglementations. Le sujet qui m’a été confié concerne la conception et la réalisation d’un préleveur d’air ambiant autonome à 4 voies basé sur un microcontrôleur et pouvant être alimenté par une batterie. Il s’agit d’apporter des améliorations à un préleveur d’air existant. Ce mémoire, organisé en cinq chapitres, présente les différentes étapes de son développement. Le premier chapitre de ce mémoire est consacré à la présentation du sujet et à la rédaction du cahier des charges. En particulier, le fonctionnement d’un préleveur d’air ainsi que les différents éléments qui le constituent y sont détaillés. Le second aborde la partie logicielle avec le développement de l’électronique de commande basée sur un microcontrôleur et la mise en œuvre d’une interface homme-machine tactile. Les chapitres suivants présentent le dimensionnement et la réalisation de la partie puissance du nouveau préleveur, le choix de la batterie et la réalisation d’un chargeur dédié, et l’intégration mécanique des éléments dans une mallette. Enfin une conclusion générale, synthétise les résultats obtenus et donne les perspectives et les voies d’amélioration du projet. 6 Projet de Fin d’Études INSA Strasbourg Présentation du laboratoire J’ai eu l’opportunité de réaliser mon projet de fin d’études à l’Institut de Chimie et Procédés pour l’Énergie, l’Environnement et la Santé (ICPEES). Cet institut a été fondé en 1988 suite à la fusion de deux unités de recherche. Placé sous la tutelle du CNRS et de l’université de Strasbourg, ses axes de recherche se situent autour de la catalyse pour l’énergie, la dépollution et l’environnement. Géographiquement, l’ICPEES est implanté à l’École et Observatoire des Sciences de la Terre (EOST), et dans les bâtiments de recherche de l’École nationale supérieure de Chimie, Polymères et Matériaux (ECPM) se trouvant sur la campus de Cronenbourg. Pour ma part, j’ai eu la chance d’évoluer au sein de l’équipe de Physico-Chimie de l’Atmosphère (située à l’EOST) et dont le responsable est le Dr. Stéphane LE CALVÉ. Les activités de l’équipe s’organisent selon trois axes de recherche : • Les méthodes analytiques spécifiques en temps réel • Les méthodes analytiques multi-polluants « off-line » • Les émissions, métrologie et réactivité Les travaux de recherche de cette équipe se focalisent notamment sur la développement de méthodes d’analyse innovantes en temps réel des polluants récemment réglementés. In’ Air Solutions In’ Air Solutions est une société experte dans la mesure des polluants de l’air. Elle développe des outils analytiques de haute performance (analyseur de formaldéhyde, etc.) permettant le suivi continu et programmable des concentrations. Elle a été fondée en 2013 et participe avec l’équipe de Physico-chimie de l’Atmosphère de l’ICPEES à la réalisation de prototypes et à la commercialisation de nouveaux produits dans le domaine de la mesure des polluants de l’air. 7 Chapitre 1 Prise de connaissance du sujet et rédaction du cahier des charges 1.1 Principe de fonctionnement Un préleveur d’air consiste à faire circuler un échantillon d’air à analyser à travers une cartouche de prélèvement contenant un adsorbant spécifique dont la particularité est de piéger certains polluants. Une analyse postérieure de cette cartouche permet ainsi de déterminer leurs concentrations. La figure 1.1 représente le schéma de principe d’un préleveur : Air entrant Régulateur de débit Pompe Electrovannes Cartouches de prélevement Air sortant Figure 1.1 – Schéma de principe d’un préleveur d’air Le principe de fonctionnement du préleveur est le suivant : un flux d’air, régulé par un régulateur de débit massique (RDM), est créé par une pompe de prélèvement, puis dirigé à travers un ensemble d’électrovannes jusqu’aux cartouches de prélèvement qui piègeront les polluants contenus dans l’échantillon. L’appareil est entièrement configurable via un logiciel qui permet ainsi à un opérateur de paramétrer et programmer les prélèvements en termes de durées et de débits. 8 Projet de Fin d’Études 1.2 INSA Strasbourg Contexte d’étude Le préleveur d’air qui a été développé précédemment par l’ICPEES fonctionne autour du système d’acquisition de données « Labjack U12 ». Celui-ci permet de contrôler les différents actionneurs du système depuis un logiciel sur PC ou tablette tactile fonctionnant sous Windows. Il se compose de quatre voies distinctes qui permettent donc de programmer jusqu’à quatre prélèvements. Son architecture est présentée à la figure 1.2 : Air entrant Alimentation électrique Régulateur de débit Pompe Electrovannes Cartouches de prélevement Air sortant Interface de puissance Signaux de commande Labjack U12 USB PC Figure 1.2 – Architecture du préleveur développé par le laboratoire Le préleveur initial est présenté à la figure 1.3. Il est intégré dans une mallette qui devra être conservée dans la nouvelle version. Figure 1.3 – Version initiale du préleveur 4 voies 9 Projet de Fin d’Études 1.2.1 INSA Strasbourg Le Labjack U12 Le « Labjack U12 » est un module d’acquisition à connexion USB doté notamment de 20 entrées/sorties tout ou rien, de 8 entrées de conversion analogique/numérique, de 2 sorties de conversion numérique/analogique et d’un compteur 32 bits. Caractéristiques du module d’acquisition « Labjack U12 » selon le constructeur : • • • • • • • • • • • • • • • • 8 entrées de conversion "A/N" 12 bits (ou 4 entrées en mode différentiel) Gamme de tension des entrées analogiques : ± 10 Volts Amplificateur de Gain Programmable (PGA) avec gains : 1, 2, 4, 5, 8, 10, 16 ou 20 V/V Jusqu’à 8 k échantillons/Sec (Burst) ou 1.2 k échantillons/Sec (Stream) Supporte acquisition temporelle "logiciel et matériel" 2 sorties analogiques 20 entrées/sorties digitales (jusqu’à 50 Hz par "E/S") Compteur 32 bits Fonction timer "Watchdog" Simple à utiliser -> module USB "Plug-and-Play" Jusqu’à 80 platines "LabJack U12" peuvent être connectées au port USB (avec hubs USB) Configuration totale par logiciel (aucun cavalier, ni microswitch) Aucune tension d’alimentation nécessaire (auto-alimentation via port USB) Compatible WindowsTM 98SE, ME, 2000, XP ou Vista Existe en version platine "OEM" (voir au bas de la page) Conçu pour usages professionnels L’intérêt de ce module réside dans sa simplicité d’utilisation et sa rapidité de mise en œuvre. En effet, le Labjack ne se charge que de la partie acquisition tandis que l’interface homme-machine est déportée sur un PC distant via une liaison USB. Il s’agit d’un outil robuste qui convient donc parfaitement à des phases de prototypage rapides. 1.2.2 Le logiciel de contrôle Ce préleveur est contrôlé par l’intermédiaire d’une application Windows sur PC ou tablette. Celle-ci permet entre autres de programmer le déclenchement des prélèvements pour les quatre voies disponibles (réglage des durées et des débits de prélèvement etc.). La figure 1.4 est une capture d’écran de cette application Windows : 10 Projet de Fin d’Études INSA Strasbourg Figure 1.4 – Capture d’écran du logiciel de contrôle 1.2.3 Avantages et inconvénients du préleveur développé par le laboratoire La portabilité de ce préleveur est limitée à plusieurs niveaux. D’une part, la nécessité de faire appel à un logiciel distant sur PC ou tablette complique son utilisation (connexion USB, installation du logiciel, etc.). D’autre part, l’alimentation étant assurée par le réseau électrique domestique (230V), il est difficile, voir impossible de réaliser des prélèvements dans des lieux éloignés de toute source d’électricité. De plus, le choix du Labjack n’est pas une solution optimale vis-à-vis de son coût et de ses dimensions. Enfin, la création d’un logiciel embarqué est plus contraignant à reproduire par les clients ou les concurrents industriels ce qui permet de sécuriser les produits qu’In’ Air Solutions souhaite commercialiser. 1.3 1.3.1 Cahier des charges Problématique Dans l’optique d’introduire ce préleveur d’air sur le marché, l’ICPEES et In’ Air Solutions souhaitent lui apporter un certain nombre de modifications et d’améliorations. L’enjeu majeur consiste à améliorer l’aspect transportable du système en y intégrant directement une IHM tactile, et en remplaçant le Labjack par un microcontrôleur. 1.3.2 Objectifs • Remplacement du Labjack par un microcontrôleur dédié • Développement en C des fonctions nécessaires au fonctionnement du système • Conception et réalisation d’une carte d’alimentation 11 Projet de Fin d’Études INSA Strasbourg • Modification de l’IHM par un écran tactile • Conception et réalisation d’un chargeur de batterie Le développement de la nouvelle version du préleveur doit notamment respecter les contraintes suivantes : • Conservation des principaux éléments du système (actionneurs) • Environnement de développement : MikroC Pro for PIC32 de MikroElektronika • Conservation d’un système transportable et intégré dans une mallette • Autonomie de la batterie de six heures minimum • Sauvegarde des données de prélèvement sur un support de stockage La figure 1.5 représente l’architecture proposée afin de répondre au cahiers des charges : Air entrant Alimentation électrique Régulateur de débit Carte chargeur Pompe Electrovannes Carte alimentation Cartouches de prélevement Air sortant Ecran tactile Signaux de commande Batterie Carte microcontrôleur Figure 1.5 – Architecture proposée pour répondre au cahier des charges 1.4 Les éléments du système Cette partie vise à décrire les différents actionneurs ayant été conservés pour la nouvelle version du préleveur selon les exigences du cahier des charges. 12 Projet de Fin d’Études 1.4.1 INSA Strasbourg La pompe La pompe permettant de faire circuler l’air à analyser dans le circuit de prélèvement est une micro pompe à membrane dite à vide, et constituée d’un moteur brushless. Il s’agit du modèle NMP830 KNDC de chez KNF qui délivre un débit nominal de 3.1L/min. Ce type de pompe, présenté à la figure 1.6, est fréquemment utilisé dans les domaines de l’analyse et de la médecine. On peut la retrouver par exemple dans des systèmes d’analyse de gaz d’échappement ou encore dans des tensiomètres. Cette pompe s’alimente avec une tension continue nominale de 12V et absorbe un courant de 500mA. Figure 1.6 – Pompe NMP830 KNDC (KNF) 1.4.2 Le régulateur de débit massique Le régulateur de débit massique ou RDM a pour fonction de réguler la valeur du débit d’air qui traverse la cartouche de prélèvement à une consigne fixée par l’utilisateur. Les régulateurs utilisés au laboratoire sont fabriqués par la société Bronkhorst. Ils sont tous interfaçables soit en analogique soit via une liaison série RS-232. Le RDM utilisé dans cette application (présenté à la figure 1.7) est issu de la série Low-∆P-Flow. Il peut réguler un débit d’air de 20mL/min à 1000mL/min et s’alimente avec une tension continue comprise en 15V et 24V. Alimenté sous une tension de 15V, il absorbe un courant de 420mA. Figure 1.7 – RDM Low-∆P-Flow (Bronkhorst) 13 Projet de Fin d’Études 1.4.3 INSA Strasbourg Les distributeurs Les distributeurs électromécaniques ou électrovannes permettent d’autoriser ou non la circulation d’un débit d’air dans les cartouches de prélèvement. En effet, cela permet de choisir sur quelle voie le prélèvement doit être réalisé. De plus, il est primordial de pouvoir isoler complètement la cartouche de l’environnement extérieur une fois le prélèvement terminé pour garantir son intégrité. Le modèle utilisé est le VDW23-6G-3-A-Q de SMC pneumatics. Il est présenté à la figure 1.8. Chaque électrovanne s’alimente sous une tension continue nominale de 12V et absorbe un courant de 250mA. Figure 1.8 – Électrovannes (SMC pneumatics) 1.4.4 Les cartouches de prélèvement Le préleveur est basé sur un prélèvement sur cartouches. Celles-ci se présentent sous la forme de tubes remplis d’adsorbants dont le rôle est de piéger les composés organiques volatiles (COV) lors du passage de l’air. Une fois le prélèvement achevé, la cartouche peut être analysée en laboratoire par différentes techniques de chromatographie en phase gazeuse. 14 Chapitre 2 Développement du logiciel et de la carte microcontrôleur 2.1 Environnement de développement intégré L’environnement de développement de MikroElektronika (MikroC Pro for PIC32) intègre des librairies simplifiant la programmation des microcontrôleurs appartenant aux familles PIC24 et PIC32. MikroElektronika fournit également de nombreux exemples qui peuvent servir de base pour démarrer rapidement. Le développement a été effectué sur le kit de démarrage EasyPic Fusion V7. Il s’agit d’une platine qui intègre une multitude de périphériques facilitant le développement : leds, boutonspoussoirs, RS232, etc. Voici une photo de la platine de développement (figure 2.1) : Figure 2.1 – Kit de développement Easypic Fusion V7 15 Projet de Fin d’Études 2.2 INSA Strasbourg Choix des éléments Cette partie vise à présenter la phase de sélection des composants de l’électronique du préleveur. 2.2.1 Microcontrôleur Fonctions à réaliser Avant de choisir le microcontrôleur, il est nécessaire de dresser la liste des principales fonctions à réaliser : • E/S logiques pour le contrôle des actionneurs via une interface de puissance • Liaison série RS232 pour communiquer avec le régulateur de débit massique • Bus de communication SPI / I2C / PMP pour dialoguer avec l’écran tactile et le support de stockage. En particulier, il faut veiller à ce que la fréquence de fonctionnement du microcontrôleur permettent d’actualiser l’écran avec des délais raisonnables • Horloge temps réel (RTC) avec un faible taux de dérive pour une gestion précise des temps de prélèvement Choix possibles Pour sélectionner un microcontrôleur qui répond aux exigences listées ci-dessus, plusieurs microcontrôleurs de chez Microchip ont été comparés : • dsPIC33 (16 bits, dsPIC33EP512MU810, 60 MHz, 512 Ko flash, 52 Ko RAM, Ityp=70 mA) • PIC32MX (32 bits, PIC32MX795F512L, 80 MHz, 512 Ko flash, 128 Ko RAM, Ityp=85 mA) • PIC32MZ (32 bits, PIC32MZ1024ECG100, 200 MHz, 1 Mo flash, 512 Ko RAM, Ityp=60 mA) Solution retenue Le microcontrôleur qui a finalement été choisi est un PIC32 cadencé à 80Mhz, le PIC32MX795F512L (voir caractéristiques à la figure 2.3). Celui-ci est commercialisé par MikroElektronika sous la forme de modules qui sont utilisables sur le kit de développement. Voici la photo de ce module (figure 2.2) : Figure 2.2 – Module du microcontrôleur PIC32MX795F512L 16 Projet de Fin d’Études INSA Strasbourg Paramètre Valeur Famille PIC32MX7xx Fréquence d’horloge 80 MHz Mémoire programme 512 KB Mémoire RAM 120 KB Mémoire Flash auxiliaire 12 KB ◦ Plage de température de fonctionnement -40 C à 105◦ C Canaux DMA 8 Bus SPI 4 Bus I2C 5 USB FS Device/Host/OnTheGo CanBus 2 Convertisseurs Analogique/Numérique 16 Résolution CAN 10 bits Input Capture 5 Sorties PWM 5 Timers 16 bits 5 Ports parallèles 16 bits Comparateurs 2 Oscillateur interne 8 MHz, 32 kHz Nombre d’entrées/sorties 85 Nombre de broches 100 Figure 2.3 – Caractéristiques du microcontrôleur PIC32MX795F512L Ce microcontrôleur possède 4 bus SPI / I2C et un port parallèle 16 bit. Sa fréquence de fonctionnement de 80Mhz lui permet de gérer l’écran tactile avec des délais de rafraichissement raisonnables. La présence d’une horloge temps réel intégrée en fait également une solution adaptée au préleveur d’air. Enfin, il dispose d’entrées/sorties numériques qui permettront de commander les actionneurs du préleveur (pompe, électrovannes). 2.2.2 Écran tactile et contrôleur graphique L’écran tactile constitue l’interface homme machine du système. C’est à travers celui-ci que l’utilisateur peut interagir avec le préleveur. Les écrans tactiles actuels sont couramment constitués d’un afficheur associé à une dalle tactile résistive ou capacitive. Le contrôleur graphique est un élément intermédiaire qui se situe entre le microcontrôleur et l’afficheur et qui permet d’en simplifier grandement la commande. Concernant le choix de l’écran tactile, là aussi, trois possibilités se sont présentées : • Écran tactile et contrôleur graphique intégré (solution la plus simple et la moins coûteuse en ressources du microcontrôleur) 17 Projet de Fin d’Études INSA Strasbourg • Écran tactile et contrôleur graphique externe • Écran tactile seul et contrôleur graphique à développer sur le microcontrôleur L’afficheur retenu est un afficheur TFT de 7 pouces fabriqué par la société Displaytech dont la référence est INT070ATFT-TS. Il possède une résolution de 480x800 pixels et une dalle tactile avec laquelle il est possible de communiquer via une liaison SPI. Cet écran possède un contrôleur graphique intégré de type Solomon SSD1963 qui sera interfacé au microcontrôleur via un port parallèle. Caractéristiques de l’écran TFT INT070ATFT-TS de chez Displaytech : • Dalle résistive tactile gérée par protocole SPI • Affichage géré via contrôleur graphique (SSD1963) et port parallèle du µC (PMP) • TFT Control Lines (Rétro éclairage, effaçage, etc...) contrôlées avec des GPIO 2.2.3 Support de stockage En fonctionnement normal, le régulateur de débit massique régule le débit d’air qui traverse la cartouche de prélèvement à une valeur fixe de consigne déterminée au moment du lancement du prélèvement. Cependant, si pour une raison ou une autre le débit d’air qui traverse la cartouche s’éloigne de sa valeur de consigne, les informations issues de l’analyse de la cartouche seront erronées et pourront mener dans les cas les plus défavorables à de fausses interprétations sur la qualité de l’air. Pour cette raison, il a été décidé de faire un relevé périodique du débit du régulateur de débit massique et de sauvegarder cette mesure dans un fichier dans l’objectif d’éviter des situations comme celle décrit précédemment. Les cartes SD permettent de stocker une quantité d’information relativement importante tout en étant assez peu coûteuses. Elles se déclinent en plusieurs types en fonction de leur classe (vitesse du bus) et de leur capacité mémoire. On retrouve entre autres les cartes de types "Normal Speed" (version 1) et "High Speed" (version 2). Les cartes "Normal Speed" ne sont pratiquement plus fabriquées aujourd’hui car devenue obsolètes. Nous nous sommes donc tournés vers une carte SD de type "High Speed" ou version 2 dont la vitesse nominale du bus de donnée est de 25Mo/s. Concernant la capacité de la carte, celle-ci doit être inférieure à 4Go. Les cartes dont la capacité est inférieure ou égale à 4Go présentent l’avantage de pouvoir utiliser une table d’allocation de fichiers codée sur 16 bits (format FAT16), qui est plus simple à mettre en œuvre qu’une table codée sur 32 bits (que l’on retrouve sur des cartes dont la capacité est supérieure à 4Go). 18 Projet de Fin d’Études 2.3 INSA Strasbourg Développement logiciel Cette partie présente certaines fonctions du logiciel. On retrouve les fonctions drivers qui permettent de communiquer avec l’écran tactile, ainsi que des fonctions plus avancées qui concernent la commande du régulateur de débit massique et des actionneurs, ou encore l’écriture sur la carte SD et sur une mémoire flash. Enfin, les menus du logiciel sont également présentés. 2.3.1 Drivers Développement du driver de l’afficheur On peut représenter l’afficheur comme une matrice de pixels. L’afficheur INT070ATFT a une résolution horizontale de 800 pixels et une résolution verticale de 480 pixels. Le terme "pixel" vient de l’anglais "picture element" et représente donc une entité élémentaire de l’afficheur. L’afficheur est constitué de 800x480=384000 pixels (voir figure 2.4). Chaque pixel est défini par la synthèse additive des couleurs primaires rouge, bleu et vert (RGB). Le microcontrôleur doit envoyer successivement les informations concernant les composantes RGB de chaque pixel pour former une image. 480px 800px Figure 2.4 – Représentation schématique de l’afficheur Les composantes de chaque pixel (données) sont envoyées successivement via un port parallèle 8 bits (voir figure 2.5). Cinq autres sorties sont nécessaires pour adresser les commandes au contrôleur (interface 8080). Avant de procéder à l’envoi des composantes de chaque pixel, il est nécessaire d’indiquer au contrôleur la zone de l’afficheur qui sera occupée par les pixels qui sont sur le point d’être transmis. Cette zone est définie en lui indiquant quatre paramètres qui correspondent aux coordonnées (colonne,ligne) du point de départ et du point d’arrivée. Les pixels sont ensuite envoyés sur le port parallèle et la zone précédemment définie est rafraichie sur l’afficheur. 19 Projet de Fin d’Études INSA Strasbourg /CS /RD /RS /WR /RST Contrôleur Graphique SSD1963 Afficheur Données[7:0] Figure 2.5 – Interfaçage entre le microcontrôleur et le contrôleur graphique L’afficheur étant pourvu de 384000 pixels qui sont eux-mêmes constitués de 3 composantes RGB codées individuellement sur 8 bit, un rafraichissement total de l’écran nécessite une quantité de données de 1152 Ko ce qui représente une quantité de données importante par rapport à la mémoire programme du PIC32 qui n’est que de 512 Ko. Ceci pose un réel problème de stockage d’information dans le cas où l’on souhaite afficher à l’écran des images ou des formes qui ne peuvent pas être générées de manière itérative (typiquement par des boucles). Dans ce cas, il est nécessaire de stocker les informations sur un support externe comme une mémoire flash ou une EEPROM. Dans notre cas où l’interface graphique qui doit être développée est relativement simple d’un point de vue graphique, il est tout à fait possible de se contenter de formes simples (rectangle, cercles, ellipses...) et de stocker quelques éléments graphiques plus complexes (comme des caractères ou des images) dans la mémoire programme du microcontrôleur. Développement du driver de la dalle tactile résistive La dalle tactile peut être considérée comme un film résistif apposé directement sur l’afficheur et dont la résistance varie lorsque l’on déforme sa surface. Le contrôleur MAX11802 est un contrôleur de dalle résistive qui communique avec le microcontrôleur par une liaison série SPI et une entrée/sortie. Lorsque qu’un événement tactile survient, le MAX11802 force une entrée/sortie à l’état bas. Ce changement d’état est détecté par le microcontrôleur par une interruption externe sur front descendant. Cette interruption initie le processus de récupération des coordonnées de l’événement tactile par le microcontrôleur. Lorsque l’utilisateur touche la dalle tactile, la résistance de la dalle varie. Le contrôleur de dalle résistive MAX11802 est placé sur la même carte que le contrôleur graphique et permet de mesurer cette résistance en effectuant deux conversions analogique/numérique. Le microcontrôleur interroge ensuite le MAX11802 afin de récupérer les coordonnées de l’événement tactile. La figure 2.6 représente 20 Projet de Fin d’Études INSA Strasbourg la mesure des coordonnées d’un événement : Y+ PANEL ADC INPUT RTOUCH X- Y+ PANEL VDD RTOUCH X+ Y- X- X+ Y- ADC INPUT VDD X POSITION MEASUREMENT Y POSITION MEASUREMENT Figure 2.6 – Mesure des coordonnées X,Y d’un événement tactile 2.3.2 Fonctions graphiques Il a été nécessaire de développer des fonctions qui permettent de réaliser des opérations graphiques de base telles qu’un rafraichissement de l’écran ou le dessin de formes simples telles que des rectangles, des boutons, du texte, ou encore des images. On retrouve notamment les fonctions suivantes : • • • • • • Modification de la luminosité de l’écran Définition de pixels Remplissage de l’afficheur (par une même couleur) Affichage de rectangles et de boutons colorés Affichage de caractères et de tableaux Affichage d’images 21 Projet de Fin d’Études INSA Strasbourg Modification de la luminosité et mode d’économie d’énergie La luminosité de l’écran est contrôlée en envoyant deux octets sur le port parallèle : • Un octet de commande qui indique que l’on souhaite modifier la luminosité • Un octet dont la valeur est proportionnelle à l’intensité lumineuse du rétroéclairage (100% pour 0xFF) Lorsqu’aucune activité n’est détectée sur l’écran tactile pendant un temps qui est paramétrable par l’utilisateur, l’écran s’éteint de façon à économiser l’énergie de la batterie. Cette fonction est importante car elle permet une économie non négligeable de 13% de la puissance totale consommée par le préleveur. Elle est d’autant plus utile que l’écran est très peu sollicité pendant le processus de prélèvement. Définition d’un pixel Pour définir un pixel à l’écran, il faut transmettre au contrôleur graphique SSD1963 une série de trois octets. Ces octets sont les composantes RGB (rouge, vert, bleu) du pixel. Ils correspondent à l’intensité lumineuse des couleurs primaires du pixel. La couleur est ensuite perçue de façon monochrome par la synthèse additive de ces trois couleurs primaires, comme présenté sur la figure 2.7. De cette façon, il est possible de définir jusqu’à 2563 couleurs différentes, soit près de 16, 7 millions de couleurs. 0xFF 0xFF 0xFF R G B 0x00 0xFF 0xFFFFFF Synthèse additive 0xFF R G B Couleur blanche perçue 0x00FFFF Synthèse additive Couleur cyan perçue Figure 2.7 – Définition du pixel et synthèse additive 22 Projet de Fin d’Études INSA Strasbourg L’extrait de code suivant (figure 2.8) est la définition de la fonction P ut_P ixel qui prend comme paramètres les trois valeurs RGB et les transmet au contrôleur graphique via le port parallèle. void Put_Pixel ( unsigned char red_layer , unsigned char g r e e n _ l a y e r , unsigned char b l u e _ l a y e r ) { TFT_Write_Command( r e d _ l a y e r ) ; // Composante rouge TFT_Write_Command( g r e e n _ l a y e r ) ; // Composante v e r t e TFT_Write_Command( b l u e _ l a y e r ) ; // Composante b l e u e } Figure 2.8 – Définition de la fonction P ut_P ixel Cette fonction est appelée à chaque fois qu’il est nécessaire de modifier les pixels affichés à l’écran. Rafraîchissement de l’écran par une couleur unie Le rafraîchissement complet de l’écran par une couleur unie est réalisé par la fonction T F T _F ill_Screen. Cette fonction fait appel à la fonction P ut_P ixel pour définir chaque pixel de manière itérative. Pour rafraîchir l’écran il faut donc transmettre 800 × 480 = 384000 pixels les uns à la suite des autres. La fonction T F T _F ill_Screen est définie dans l’extrait de code suivant (figure 2.9) : void TFT_Fill_Screen ( unsigned char R, unsigned char G, unsigned char B) { unsigned long p i x e l =0; Set_Column ( 0 , 7 9 9 ) ; Set_Page ( 0 , 4 7 9 ) ; // S t a r t Write Command TFT_Write_Index ( 0 x2C ) ; for ( p i x e l =0; p i x e l <384000; p i x e l ++) { Put_Pixel (R,G, B ) ; } } Figure 2.9 – Définition de la fonction T F T _F ill_Screen 23 Projet de Fin d’Études INSA Strasbourg Les fonctions Set_Column et Set_P age permettent de définir la zone à rafraîchir. Ici, il s’agit de tout l’écran. Cette zone est rectangulaire et est définie en passant comme paramètre aux fonctions Set_Column et Set_P age les coordonnées des deux points qui définissent sa diagonale comme le montre la figure 2.10 : (0,0) Set_Column(0,799) (799,479) Set_Page(0,479) Figure 2.10 – Définition d’une zone de rafraîchissement Cette fonction à ensuite été déclinée en beaucoup d’autres afin de créer des rectangles de tailles et couleurs variables, des boutons, des tableaux, etc. Affichage d’images Comme les fonctions graphiques primitives comme T F T _F ill_Screen ne peuvent afficher que des formes simples et peu esthétiques, il a été nécessaire de créer une fonction qui permettent d’afficher des images bitmap à écran. Cette fonction transmets des pixels au contrôleur graphique via la fonction P ut_P ixel, qui sont stockés dans la mémoire programme du microcontrôleur sous la forme de tableaux d’entiers (32bits). Il faut donc au préalable extraire les informations concernant chaque pixel de l’image que l’on souhaite afficher et créer ce tableau. Cette opération est réalisée avec le programme gratuit bmp2c. Elle est représentée à la figure 2.11 : 24 Projet de Fin d’Études INSA Strasbourg int image[3]={0x7D7E95, 0x7F99AE, 0xE1E6ED}; Figure 2.11 – Décomposition de trois pixels et représentation sous forme de tableau d’entiers La fonction T F T _Image permet d’isoler les composantes RGB de chaque élément du tableau avant de les transmettre au contrôleur graphique SSD1963 qui se charge de les afficher à l’écran. 25 Projet de Fin d’Études 2.3.3 INSA Strasbourg Fonctions logicielles avancées Cette partie détaille certaines fonctions plus avancées du logiciel : Commande des électrovannes et de la pompe Pour contrôler les actionneurs du préleveur, c’est-à-dire la pompe et les électrovannes, le microcontrôleur envoie des signaux de type tout-ou-rien à une carte de puissance qui se charge ensuite de fournir la puissance nécessaire aux actionneurs. Ces signaux sont au nombre de cinq (quatre pour les électrovannes, un pour la pompe) et sont générés en agissant sur les niveaux logiques de cinq sorties numériques. Le niveau bas correspond à 0V et le niveau haut à 3, 3V. Communication avec le RDM La communication avec le RDM s’effectue au moyen d’une liaison série RS-232. Le microcontrôleur réalise la liaison RS-232 au moyen d’une de ses UART. Le protocole de communication est un protocole propriétaire développé par la société Bronkhorst qui commercialise le RDM utilisé. Il est basé sur le protocole RS232-ASCII, c’est-à-dire que la communication s’effectue par des messages codés en ASCII. Le microcontrôleur peut envoyer deux types de messages. Un pour envoyer une consigne de débit à réguler, et l’autre pour interroger le RDM sur la valeur instantanée du débit régulé. L’extrait de code suivant (figure 2.12) est la fonction « RDM_Write_Setpoint » qui permet d’envoyer la consigne de débit au RDM : 26 Projet de Fin d’Études INSA Strasbourg Figure 2.12 – Définition de la fonction RDM _W rite_Setpoint 27 Projet de Fin d’Études INSA Strasbourg Cette fonction prend comme argument la consigne de débit exprimée en mL/min, il doit donc être compris entre 20 mL/min et 1000 mL/min. Il est ensuite mis en forme sur une échelle de 0 à 32000 (la valeur 32000 correspondant à la pleine échelle du RDM), puis converti en ASCII avant d’être ajouté dans la requête qui permet de définir la consigne. Stockage sur carte SD La communication avec la carte mémoire peut s’opérer au choix en respectant le protocole "SD Card" ou le protocole SPI (serial peripheral interface). Le protocole "SD Card" permet d’atteindre les débits nominaux de la carte tandis que le protocole SPI est une solution alternative de communication qui est employée sur les systèmes dont les ressources sont relativement limitées (en particulier les microcontrôleurs). L’échange de donnée est donc effectué via le bus SPI. Ce choix est d’autant plus justifié que la fonction principale de cette carte mémoire est de faire du datalogging à des fréquences relativement faibles. La librairie "FatFS" a été interfacée avec le PIC32, ce qui nous permet à présent d’écrire et de lire simplement des fichiers directement sur la carte mémoire. Elle permet de lire et d’écrire des fichiers sur la carte via un bus SPI. Cette librairie est bien sûr Open-Source et peut être utilisée pour des projets commerciaux tels que le nôtre. Pour interfacer cette librairie avec le PIC32MX, il a fallu configurer la couche physique, c’est-à-dire configurer la librairie FatFS pour qu’elle puisse interagir avec un des bus SPI du PIC32MX. La communication avec la carte SD se résume ensuite à de simples appels de fonctions de lecture/écriture. La fonction qui a été développée pour écrire des fichiers sur la carte SD est présentée à la figure 2.14. Mémoire Flash Dans le but de pouvoir sauvegarder certains paramètres comme les données de calibrage de l’écran tactile ou encore des images à afficher (logos, boutons, etc...), une mémoire non-volatile de type flash a été interfacée avec le microcontrôleur (voir figure 2.13). La mémoire choisie se présente sous la forme d’un CI SOIC16. Le microcontrôleur peut communiquer avec via un bus SPI. Cette mémoire est fabriquée par Spansion et la version utilisée lors du développement a une capacité de 64 Mo (des versions de plus faible capacité pourront être utilisées, le protocole de communication restant le même). Dans la version finale du préleveur, cette mémoire n’est pas utilisée car toutes les données graphiques ont pu être stockées dans la mémoire programme du PIC32. Mais elle sera certainement utile pour les futurs développements. 28 PIC32MX795F512L Projet de Fin d’Études INSA Strasbourg #CS #CS SDI SDO SDO SDI SCK SCK SPI master S25FL512S 64Mo SPI slave Figure 2.13 – Association de la mémoire flash avec le microcontrôleur void write_SDCARD( char f i l e n a m e [ ] , char f o l d e r [ ] , char d [ ] ) { SD_power_off ( ) ; Delay_ms ( 1 0 0 ) ; SD_power_on ( ) ; Delay_ms ( 2 ) ; SPI_Set_Active(&SPI4_Read , &SPI4_Write ) ; i f ( ! Mmc_Fat_Init ( ) ) { SPI4_Init_Advanced (_SPI_MASTER, _SPI_8_BIT , 3 2 , _SPI_SS_DISABLE , _SPI_DATA_SAMPLE_MIDDLE, _SPI_CLK_IDLE_HIGH, _SPI_ACTIVE_2_IDLE ) ; s d _ c a r d _ i n s e r t e d=0x01 ; Mmc_Fat_MakeDir( f o l d e r , 0 x80 ) ; // C r e a t i o n d ’ un d o s s i e r Mmc_Fat_CHangeDir ( f o l d e r ) ; Mmc_Fat_Assign ( f i l e n a m e , 0 x80 ) ; Mmc_Fat_Append ( ) ; // S i p r e m i e r e e n t r e e , on e c r i t d ’ abord l ’ e n t e t e i f ( ! d t l g _ c o u n t e r ) Mmc_Fat_Write ( dtlg_header , s t r l e n ( d t l g _ h e a d e r ) ) ; Mmc_Fat_Write ( d , s t r l e n ( d ) ) ; // E c r i t u r e Mmc_Fat_Close ( ) ; // Fermeture du f i c h i e r } else { // Carte a b s e n t e ou non−reconnue s d _ c a r d _ i n s e r t e d=0x00 ; } } Figure 2.14 – Fonction d’écriture de fichiers sur la carte SD 29 Projet de Fin d’Études 2.3.4 INSA Strasbourg Organisation des menus Le logiciel qui a été développé dans le cadre de ce PFE permet notamment de programmer des séquences de prélèvement pour les 4 voies. Il est organisé sous la forme de menus qui sont présentés ci-après. Menu principal Pendant un prélèvement, seul le menu principal est accessible à l’utilisateur. Il permet d’afficher l’état de chaque voie , la date et l’heure de départ ainsi que la durée et le débit de prélèvement programmés. Les deux figures suivantes sont des captures d’écran du menu principal du nouveau logiciel : Figure 2.15 – Menu principal au démarrage Figure 2.16 – Menu principal pendant un prélèvement Quand une voie est en cours de prélèvement, le temps restant et le débit instantané mesuré par le RDM sont affichés. 30 Projet de Fin d’Études INSA Strasbourg Menu de paramétrage Le menu de paramétrage permet à l’utilisateur de réaliser la programmation de prélèvements futurs pour les 4 voies, comme le montre la capture d’écran suivante : Figure 2.17 – Menu de paramétrage Ce menu est visuellement semblable au menu principal à la différence près qu’il est doté d’un pavé numérique qui permet à l’utilisateur d’activer les voies qu’il souhaite et de choisir les valeurs des paramètres de durée, de débit et de date de départ. Pavé tactile Le pavé tactile permet aussi d’empêcher l’utilisateur de saisir des données incohérentes ou impossibles. Lorsque l’utilisateur souhaite éditer une zone en cliquant dessus, celle-ci devient active et est encadrée de vert. Cela signifie que toutes les actions sur le pavé tactile n’auront un effet que dans cette zone. Chaque zone possède un nombre de digit qui lui est propre et qui est assigné dans la mémoire programme du microcontrôleur. Les touches du pavé tactile sont actives ou non selon le nombre de digit qui sont saisis par l’utilisateur et aussi selon la valeur que l’utilisateur souhaite saisir. L’exemple suivant détaille le fonctionnement du pavé tactile : On considère que nous sommes le 24 septembre 2015 et que l’utilisateur souhaite programmer la date de départ d’une voie de prélèvement au 31 mai 2016. La figure 2.16 représente l’état du pavé numérique au fur et à mesure que l’utilisateur saisi la date de départ : 31 Projet de Fin d’Études INSA Strasbourg 00|00|00 30|00|00 31|00|00 7 8 9 7 8 9 7 8 9 4 5 6 4 5 6 4 5 6 1 2 3 1 2 3 1 2 3 0 0 0 31|00|00 31|05|00 31|05|10 7 8 9 7 8 9 7 8 9 4 5 6 4 5 6 4 5 6 1 2 3 1 2 3 1 2 3 0 0 0 31|05|16 7 8 9 4 5 6 1 2 3 0 Figure 2.18 – Exemple de réglage d’une date de départ Menu d’options et menu de test Deux autres menus ont été créés : un menu d’options et un menu de test. Le menu d’options permet de faire le réglage de l’heure actuelle, de la pleine échelle du régulateur de débit massique et du temps minimum avant que l’écran ne se mette en veille. Le menu de test permet, en dehors des prélèvements programmés, d’actionner indépendamment, les 4 électrovannes et la pompe. ll permet aussi de démarrer le RDM avec une consigne imposée à la moitié de la pleine échelle. 32 Projet de Fin d’Études 2.4 INSA Strasbourg Carte microcontrôleur La carte microcontrôleur permet de réaliser les connections physiques entre le microcontrôleur et ses différents périphériques à savoir : • L’écran tactile • La carte de puissance • La carte SD Au niveau de la connectique, on retrouve un connecteur de quarante broches pour l’écran tactile, deux connecteurs de cinq et sept broches pour la carte de puissance et un connecteur CMS pour une carte micro SD. On retrouve aussi un support pour une pile de 3V qui permet d’empêcher la remise à zéro de l’horloge temps réel lorsque le préleveur n’est branché à aucune source d’énergie. Les deux figures suivantes sont des vues 3D de la carte microcontrôleur : Figure 2.19 – Vues de la carte microcontrôleur côté composants (gauche) et côté cuivre (droite) Figure 2.20 – Vue 3D de la carte microcontrôleur 33 Chapitre 3 Développement d’une carte de puissance 3.1 Problématique Le rôle de la carte d’alimentation est de fournir la puissance nécessaire aux actionneurs du préleveur et à la carte microcontrôleur. Elle permet également d’adapter les niveaux de tensions de la liaison série entre le microcontrôleur et le RDM. Le système a besoin pour fonctionner de 4 bus d’alimentation distincts et consomme dans sa globalité une vingtaine de watt. Le microcontrôleur ainsi que le gamma de l’écran tactile sont alimentés en 3.3V, le rétro-éclairage de l’écran en 5V, la pompe et les électrovannes en 12V, et le régulateur de débit massique en 15V. La figure 3.1 décrit l’organisation de la carte d’alimentation et les modules qui la compose : Commande du RDM Liaison série 0V/3,3V Commande des électrovannes 0V/3,3V Commande de la pompe 0V/3,3V Commande du RDM Liaison série 12V/-12V 15V MAX232 12V TRACO TEN 8-2413WI Tensions nominales 14,6V (batterie) 19V (adaptateur secteur) TRACO THD 12-2412WI TRACO TSR 1-2450 12V LM3940 3,3V vers la carte microcontrôleur 5V vers la carte microcontrôleur Tensions d'alimentation régulées Signaux de commande Figure 3.1 – Organisation interne de la carte d’alimentation 34 Projet de Fin d’Études 3.2 INSA Strasbourg Génération des bus d’alimentation Les deux figures suivantes représentent la distribution de puissance par équipement (figure 3.2) et par bus d’alimentation (figure 3.3). Ces informations nous servirons à dimensionner ensuite la carte d’alimentation. Figure 3.2 – Distribution de puissance par équipement Figure 3.3 – Distribution de puissance par bus d’alimentation 35 Projet de Fin d’Études 3.2.1 INSA Strasbourg Solutions proposées Étant donné que le système sera alimenté par une batterie et que le bus d’alimentation le plus sollicité est le 12V, la batterie sera choisie de manière à approcher au plus près cette valeur. Les bus d’alimentation 15V, 12V et 5V seront issus de la tension batterie par l’intermédiaire de convertisseurs à découpage. Le 3.3V doit présenter une ondulation relativement faible car il alimente des périphériques qui y sont sensibles (microcontrôleur). Pour cette raison, il sera produit à partir du 5V par l’intermédiaire d’un régulateur linéaire. La figure 3.4 présente les courants absorbés par bus d’alimentation : BUS [V] 3.3 5 12 15 ITOT [mA] PTOT [mW] 354 1168.2 510 2550 750 9000 420 6300 Figure 3.4 – Courant absorbé par bus d’alimentation La solution proposée ci-dessus peut être mise en œuvre de plusieurs façons. Deux seront retenues et comparées sur différents critères. La première (figure 3.5) consiste à dimensionner les convertisseurs DC-DC à partir de contrôleurs sous forme de CI auxquels on associe les composants passifs appropriés. La seconde (figure 3.6) plébiscite l’utilisation de convertisseurs DC-DC isolés prêts à être utilisés. Ces deux solutions seront notamment comparées en termes de coûts et de rendement. 1ère solution ConvertisseurRBuck LTC3637RR BatterieRLiFePO4 12.6VR12AhRR 12VR/R750mA ConvertisseurRBoost LTC3769RR ConvertisseurRBuck LTC3637RR 18VR/R350mA RégulateurRlinéaire LM3940RR 3.3VR/R360mA 5VR/R510mA Figure 3.5 – Génération des bus d’alimentation à partir de la tension batterie Vin[V] Vout[V] Iin[mA] Iout[mA] Pin[mW] Pout[mW] Rend[%] Convertisseur 12.8 18 1745.24 1179.01 22339.10 21222.14 95 BOOST 18 12 543.48 750 9782.61 9000 92 BUCK 18 5 285.53 884 5139.53 4420 86 BUCK 5 3.3 374 354 1870.00 1168.20 62.47 LDO 36 Projet de Fin d’Études INSA Strasbourg 2ème solution Batterie/LiFePO4 12.6V/12Ah// TRACO// 15V///420mA TRACO// 12V///750mA Régulateur/linéaire LM3940// TRACO// 3.3V///360mA 5V///510mA Figure 3.6 – Génération des bus d’alimentation à partir de la tension batterie Vin[V] Vout[V] Iin[mA] 12.8 15 565.73 420.00 7241.38 6300 87 TRACO 12.8 12 827.21 750 10588.24 9000 85 TRACO 12.8 5 401.53 884 5139.53 4420 86 TRACO 5 3.3 374 354 1870.00 1168.20 62.47 LDO 3.2.2 Iout[mA] Pin[mW] Pout[mW] Rend[%] Convertisseur Solution retenue La deuxième solution a été retenue. Son coût est plus élevé que la première mais elle est plus rapide à mettre en œuvre. Les coûts affichés sur la figure 3.7 incluent le coût des composants du chargeur de batterie. Solution n◦ 1 2 Coût <140E TTC >180E TTC Rendement théorique 85.13% 83.80% Figure 3.7 – Rendements et coûts de réalisation de la carte de puissance Les deux solutions ont en réalité un rendement très proche. Dans le cas de la première solution, le rôle du convertisseur Boost permet d’élever la tension de la batterie de façon à ce que tous les éléments situés en aval fonctionnent correctement. En effet, il est tout a fait possible que la tension de la batterie chute à des valeurs comprises en 9V et 10V, ce qui ne permet plus d’alimenter correctement la pompe et les électrovannes qui fonctionnent sous une tension nominale de 12V. Dans le cas de la deuxième solution, ce problème ne se pose pas puisque les Traco ont une plage de tension d’entrée qui s’étend de 9V à 36V. 37 Projet de Fin d’Études 3.3 INSA Strasbourg Commande de la pompe et des électrovannes La commande envoyée par le microcontrôleur vers la carte d’alimentation afin d’actionner la pompe et les électrovannes est une commande tout-ou-rien. La structure (figure 3.8) choisie pour réaliser cette fonction est basée sur la commande tout-ou-rien d’un transistor à effet de champ de type MOSFET. 5V Signal de commande 0V/3,3V 12V U1 Optocoupleur A K TCMT1119 C Charge : Pompe ou électrovanne E R1 R2 210Ω 200Ω Q1 MOSFET FDN339AN R3 10kΩ Figure 3.8 – Circuit de commutation de charge Le signal de commande est appliqué à l’entrée de l’optocoupleur. Ce dernier permet d’assurer une isolation galvanique entre la partie commande et la partie puissance. Lorsque un signal de commande continu est appliqué, le photo-transistor de l’optocoupleur impose une tension grille-source positive au niveau du MOSFET qui se met en état de conduction. La charge est alimentée. Ici, la fréquence de commutation peut être considérée comme nulle puisque ce circuit est commandé en tout-ou-rien. Le circuit de commutation utilisé sur la première version du préleveur mettait en œuvre un circuit intégré à base de transistors Darlington qui dissipait une puissance non négligeable. En utilisant cette solution à base de transistor à effet de champ, on limite considérablement les pertes en conduction, ce qui est un point à ne pas négliger étant donné que le préleveur est destiné à fonctionner sur batterie. A l’état passant, les pertes sont essentiellement dues à la résistance du canal du MOSFET dont la valeur, pour une tension de commande de 5V est d’environ 28mΩ. 38 Projet de Fin d’Études INSA Strasbourg La figure 3.9 correspond au schéma électrique équivalent du circuit de commutation à l’état passant : 12V PCOND=RDS ON.I 2 I RDS ON 28mΩ Charge : Pompe ou électrovanne Figure 3.9 – Schéma électrique équivalent du circuit de commutation à l’état passant Les pertes générées par ce circuit de commutation sont négligeables devant la puissance totale consommée par le préleveur (voir figure 3.10). Type d’actioneur Pompe Electrovanne Courant nominal (mA) 500 250 Pertes en conduction (mW) 7 1.75 Figure 3.10 – Pertes en conduction du circuit de commutation pour différentes charges 3.4 Réalisation de la carte La figure 3.11 montre une vue 3D de la carte d’alimentation terminée. On peut distinguer au premier plan un connecteur SUB-D9 qui permet d’alimenter et de communiquer avec le RDM, ainsi que deux autres connecteurs d’alimentation des électrovannes et de la pompe. Au second plan, on distingue le connecteur qui permet de connecter la carte chargeur. Figure 3.11 – Vue 3D de la carte d’alimentation seule 39 Chapitre 4 Mise en place d’une batterie et conception d’un chargeur dédié 4.1 Choix de la batterie Il a fallu choisir une batterie qui permet de fournir une quantité d’énergie suffisante au système, c’est-à-dire environ 140Wh soit près de 6h d’autonomie. A cette contrainte d’autonomie, se sont ajoutées des contraintes en terme de sécurité et d’occupation d’espace. A l’heure actuelle les batteries Lithium-Polymer (Li − P o) présentent la meilleures densités de puissance massique mais sont très sensibles au chocs mécaniques et thermiques et sont prédisposées à un fort risque d’explosion. Il est donc impossible d’utiliser cette technologie de batterie. Il faut donc faire des concessions entre sécurité, densité de puissance massique, masse et volume d’occupation dans le boitier. Après étude des technologies existantes, la technologie Lithium Fer Phosphate (LiF eP O4 ) présente des caractéristiques intéressantes dans le sens où elle a une densité de puissance massique légèrement inférieure à la technologie Li-Ion, tolère jusqu’à 2000 cycles de charge et est beaucoup plus stable chimiquement que la technologie Li − P o. La batterie retenue est une batterie LiF eP O4 12.8V de capacité 12Ah (fabriqué par Europa Batteries). La batterie est livrée avec un contrôleur d’équilibrage des 4 cellules ainsi qu’avec un circuit de protection 24A. La dimensionnement du chargeur est ainsi simplifié car il n’est pas nécessaire de gérer l’équilibrage lors de la charge. Cette batterie est présentée à la figure 4.1 : 40 Projet de Fin d’Études INSA Strasbourg Figure 4.1 – Batterie LiFePO4 EU1212FJ 12.6V - 12Ah Caractéristiques de la batterie Les caractéristiques techniques de la batterie sont résumées dans la figure 4.2 : Capacité nominale 12Ah Tension de charge 14,6V Tension moyenne nominale 12,8V Tension de décharge maximale 8V Méthode de charge Courant constant / tension constante Taux de charge maximum 1C Taux de décharge maximum 1C Durée de vie C≥9,6Ah après 1000 cycles de recharge Température de fonctionnement -20◦ C à +60◦ C Figure 4.2 – Caractéristiques techniques de la batterie LiF eP O4 4.2 Conception du chargeur Deux possibilités se sont présentées au moment de choisir par quel moyen la batterie sera rechargée : – Concevoir un convertisseur DC/DC dont la commande et la régulation sont assurées par le microcontrôleur. – Mettre en œuvre un CI qui permet d’assurer de manière autonome la charge de la batterie. La deuxième possibilité a été retenue, étant donné que le chargeur de batterie n’était pas prioritaire sur le développement du logiciel et de l’interface homme-machine, et que cette solution permettrait de gagner un temps non négligeable. Le contrôleur de charge LTC4008 (figure 4.3) de chez Linear Technology a été choisi. 41 Projet de Fin d’Études 4.2.1 INSA Strasbourg Présentation du LTC4008 TOP VIEW DCIN 1 ICL 20 INFET 2 19 BGATE ACP/SHDN 3 18 PGND RT 4 17 TGATE FAULT 5 16 CLP GND 6 15 CLN VFB 7 NTC 8 14 FLAG 13 BATMON ITH 9 12 BAT PROG 10 11 CSP GN PACKAGE 20-LEAD NARROW PLASTIC SSOP Figure 4.3 – Le contrôleur de charge LTC4008 Le LTC4008 est un contrôleur de charge de batterie à courant constant/tension constante. Le convertisseur de puissance utilisé est un convertisseur Buck (abaisseur) synchrone. Le courant de charge est programmable par une résistance de mesure de courant (shunt) et par une résistance de programmation. Le courant de charge est régulé en mesurant la tension aux bornes de la résistance de mesure de courant, qui est une image directe du courant de charge. Une autre résistance externe permet de définir la tension de fin de charge de la batterie. Ce contrôleur permet donc de charger différents types de batteries, dont le LiF eP O4 . La figure 4.4 présente les caractéristiques principales du LTC4008 : Plage de tension d’entrée Plage de tension de sortie Courant de charge maximal 6V à 28V 3V à 28V 4A Figure 4.4 – Caractéristiques du LTC4008 4.2.2 Profil de charge Cette batterie se recharge avec la méthode de charge à courant constant/tension constante. Le constructeur préconise une première phase de charge à un courant constant maximum de 6A jusqu’à ce que la tension atteigne 14, 6V. Le chargeur doit ensuite imposer une tension de charge constante de 14, 6V, jusqu’à ce que le courant de charge atteigne 350mA. 42 Projet de Fin d’Études INSA Strasbourg Courant de charge (A) Tension de charge (V) Tension de charge (V) Courant de charge (A) 14,6 6 14,4 14 13,6 3 13,2 12,8 Fin de charge I=350mA 12,4 12 Temps de charge (h) 0,4 1,6 3,2 Figure 4.5 – Profil de charge conseillé de la batterie Le profil de charge de la figure 4.5 est la façon la plus rapide de recharger la batterie. Il est bien sûr possible d’imposer un courant de charge inférieur à 6A dans la première phase de charge à courant constant. Dans ce cas, le temps nécessaire pour charger entièrement la batterie augmentera. 4.2.3 Profil de charge attendu Le courant de charge de la batterie à été défini à 3A. La tension de fin de charge est de 14, 6V et le courant de fin de charge de 350mA. A partir de ces données, les composants externes énoncés ci-dessus ont été dimensionnés en conséquence. De même que les composants du convertisseur Buck (MOSFET de puissance, inductance, condensateurs). L ’objectifs étant d’obtenir un chargeur de batterie qui respectera le profil de charge présenté à la figure 4.6 : Courant de charge (A) Tension de charge (V) Tension de charge (V) Courant de charge (A) 14,6 6 14,4 14 13,6 3 13,2 12,8 Fin de charge I=350mA 12,4 12 Temps de charge (h) 0,4 1,6 3,2 Figure 4.6 – Profil de charge imposé par le chargeur 43 Projet de Fin d’Études Schéma électronique du chargeur DCIN 4.2.4 INSA Strasbourg V_EXT V_SYS V_EXT SYSTEM R12 2 1 100K INPUT MOL39291028 1 2 WE694108106102 PGND C9 C10 0.1u 10u R14 Q3:A 10K SI4925DDY-T1-GE3 V_BAT PGND BATTERY 2 1 C3 RCL 0.1u 25m V_SYS R11 C8 C5 C4 10u 10u D2 A PGND K 5.1K MOL39291028 MMSZ5248BS-7-F 0.1u R2 R1 120R 13K 147K U4 13 7 2 3 5 14 R5 DCIN R4 499K 150K R6 6.04K C1 0.12u 8 4 9 6 BATMON DCIN VFB INFET /ICL CLP ACP//SHDN CLN /FAULT TGATE /FLAG BGATE NTC PGND RT CSP ITH BAT GND PROG Q2 Q3:B SI4431BDY-T1-E3 SI4925DDY-T1-GE3 1 20 L1 16 18u 15 Q1 17 FDC645N RSENSE V_BAT R3 33m D1 PMEG4010CEJ C7 C6 10u 10u 19 18 R9 3.01K 11 R8 3.01K R15 12 0.1R 10 LTC4008 RPROG C2 26.7K 4700pF PGND Figure 4.7 – Schéma électronique du chargeur La figure 4.7 représente le schéma électronique du chargeur de batterie. Les composants externes principaux sont indiqués. 4.2.5 Réglage de la tension de fin de charge (ou tension de floating) Les résistances R1 ,R2 , et R3 permettent de régler la tension de fin de charge. Celle-ci est imposée en ajustant le potentiel de la broche VF B , par la relation suivante : VF LOAT = VRef (1 + R1 ) R2 + R3 VRef est une tension de référence interne au composant de 1, 19V. VF LOAT = 1, 19(1 + 147 ) = 14, 5V 0, 12 + 13 44 Projet de Fin d’Études 4.2.6 INSA Strasbourg Réglage du courant de charge Le réglage du courant de charge dépend de la valeur des deux résistances RP ROG et RSEN SE . Leur valeur est liée au courant de charge maximal par la relation suivante : RP ROG = VREF .3, 01kΩ RSEN SE .ICHARGE(M AX) + 0, 035 Pour un courant de charge de 3A et une résistance shunt de 33mΩ, la résistance RP ROG vaut : RP ROG = 4.2.7 1, 19.3010 ' 26, 7kΩ 0, 033.3 + 0.035 Cellule de commutation La cellule de commutation du convertisseur Buck est composée de deux transistors à effet de champ MOSFET à canal N. Ces interrupteurs sont ceux recommandés par le constructeur du LTC4008. 4.2.8 Choix de l’inductance La valeur de l’inductance du convertisseur est directement liée à l’ondulation du courant qui la traverse. Le constructeur préconise un taux d’ondulation inférieur 60% du courant maximal de charge, qui est fixé dans notre cas à 3A. Pour un taux d’ondulation de 30% du courant de charge maximal, un tension d’entrée de 19V et une fréquence de fonctionnement de 300kHz, la valeur minimale de l’inductance est : L= L= VOU T (1 − VOU T VIN ) f.∆I 19(1 − 14.65 19 = 12, 4µH 300000.0, 3.3 L’inductance utilisée dans le chargeur est une inductance Bourns SRP1245A-180M d’une valeur de 18µH. 4.2.9 Protection thermique Le LTC4008 est équipé d’une fonction de protection thermique qui utilise une thermistance à coefficient de température négatif (CTN). Cette fonction n’est pas utilisée dans le chargeur et est désactivée grâce à la résistance de pull-up R5 de 499kΩ. 45 Projet de Fin d’Études 4.3 INSA Strasbourg Réalisation du chargeur La partie suivante vise à présenter la phase de réalisation du chargeur de batterie. 4.3.1 Connectique La carte chargeur dispose d’un connecteur d’alimentation (il s’agit de la tension continue d’entrée de 19V), d’un connecteur qui permet la connexion sur la batterie et d’un dernier connecteur qui permet de relier la charge (la carte d’alimentation du préleveur). Les connecteurs utilisés sont des connecteurs MOLEX MiniFit qui facilitent les opération de raccordement. La figure 4.8 représente un schéma de la connectique du chargeur : Chargeur de batterie 19VDC ou tension batterie vers carte d'alimentation Adaptateur secteur 19VDC Charge Décharge Batterie 14,6V / 12Ah Figure 4.8 – Connectique du chargeur de batterie Lorsque l’adaptateur secteur n’est pas connecté au chargeur, la batterie fournit l’énergie nécessaire au fonctionnement du système. Au moment où le chargeur est connecté, celui-ci alimente directement le système et recharge la batterie en même temps si elle est déchargée. 4.3.2 Difficultés rencontrées Deux cartes ont été réalisées pour le chargeur de batterie. La première n’a pas fonctionné à cause d’un mauvais placement des composants externes, en particulier les composants du convertisseur statique. Après avoir respecté les règles de CEM et de placement des composants recommandées par le constructeur du LTC4008, une seconde carte à été réalisée et son bon fonctionnement a été validé. 46 Projet de Fin d’Études INSA Strasbourg Le problème qui a été rencontré dans la première version de la carte n’a pas été clairement identifié mais il est très probable qu’il soit lié à un mauvais placement des composants. Après avoir respecté scrupuleusement les recommandations du fabricant du LTC4008 en terme de CEM, le problème a été résolu. Ces mesures concernent notamment : – – – – Le placement des condensateurs de découplage au plus près des composants La minimisation de la longueur des pistes Le placement de l’inductance au plus près des MOSFET La minimisation de la surface de cuivre à l’entrée de l’inductance La figure 4.9 est une vue 3D de la carte chargeur : Figure 4.9 – Vue 3D de la carte du chargeur de batterie 47 Chapitre 5 Intégration mécanique La figure 5.1 présente la solution retenue de placement des différents éléments dans la mallette, proportions conservées. La partie supérieure du schéma représente la partie mobile de la mallette (couvercle) dont la face interne contient l’écran. ECRAN MAT BATTERIE POMPE + RDM ELECTRONIQUE + ALIMENTATION ELECTROVANNES Figure 5.1 – Positionnement des élements dans la mallette 48 Projet de Fin d’Études 5.1 INSA Strasbourg Fixation des actionneurs dans la mallette Un plaque perforée en aluminium a été fixée à la base de la mallette. Cette plaque permet de faciliter le positionnement et la fixation des actionneurs. 5.2 Intégration des cartes électroniques et de l’écran tactile La carte de puissance et la carte microcontrôleur ont été conçues pour pouvoir être assemblées. En effet, les deux cartes sont superposées comme le montre la figure 5.2 : Figure 5.2 – Vue 3D de la carte de puissance et de la carte microcontrôleur assemblées Les deux cartes sont maintenues en position par des entretoises de 14mm. L’assemblage est placé dans un boitier qui est lui-même fixé à la plaque perforée en aluminium. L’écran tactile a d’abord été fixé sur un panneau de plastique. Ce panneau a été ensuite fixé sur le couvercle de la mallette, comme le montre la figure 5.3 : Figure 5.3 – Fixation de l’écran sur le couvercle de la mallette Bien que le chargeur de batterie soit fonctionnel, il n’a pas pu être intégré mécaniquement dans la mallette. 49 Projet de Fin d’Études 5.3 INSA Strasbourg Résultat final La figure 5.4 présente le résultat final des modifications apportées au préleveur : Figure 5.4 – Résultat final 50 Projet de Fin d’Études INSA Strasbourg Conclusion générale et perspectives d’amélioration Ce projet de fin d’études a permis de réaliser un nouveau préleveur d’air 4 voies davantage autonome tant d’un point de vue énergétique que logiciel. Les spécifications du cahier des charges établi au début de ce PFE ont été respectées. Le remplacement du Labjack par un microcontrôleur et la mise en place d’une interface hommemachine basée sur un écran tactile permettent maintenant d’utiliser le preleveur sans logiciel séparé sur ordinateur. De plus, la mise en place d’une batterie et d’un chargeur permettent de l’utiliser dans des endroits où l’accès à l’électricité est difficile ou impossible. Bien que le chargeur de batterie ait été réalisé et testé, il n’a pas pu être intégré mécaniquement dans la mallette. De même, qu’aucun boitier pour la batterie n’a été réalisé. D’une manière générale, l’aspect mécanique et l’intégration des éléments dans la mallette constitue à mon sens la principale perspective d’amélioration dans le but d’augmenter la compacité du système. En ce qui me concerne, j’ai apprécié de découvrir le fonctionnement d’un laboratoire de recherche et de travailler avec l’équipe physicochimie de l’atmosphère. Enfin, ce PFE fut enrichissant à tout point de vue et m’a permis de découvrir les techniques d’analyse et de prélèvement de la qualité de l’air. 51 Table des figures 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 Schéma de principe d’un préleveur d’air . . . . . . . . . . . Architecture du préleveur développé par le laboratoire . . . Version initiale du préleveur 4 voies . . . . . . . . . . . . . Capture d’écran du logiciel de contrôle . . . . . . . . . . . Architecture proposée pour répondre au cahier des charges Pompe NMP830 KNDC (KNF) . . . . . . . . . . . . . . . RDM Low-∆P-Flow (Bronkhorst) . . . . . . . . . . . . . Électrovannes (SMC pneumatics) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 9 9 11 12 13 13 14 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 2.18 2.19 2.20 Kit de développement Easypic Fusion V7 . . . . . . . . . . . . . . . . . . . . . . . Module du microcontrôleur PIC32MX795F512L . . . . . . . . . . . . . . . . . . . Caractéristiques du microcontrôleur PIC32MX795F512L . . . . . . . . . . . . . . Représentation schématique de l’afficheur . . . . . . . . . . . . . . . . . . . . . . . Interfaçage entre le microcontrôleur et le contrôleur graphique . . . . . . . . . . . Mesure des coordonnées X,Y d’un événement tactile . . . . . . . . . . . . . . . . . Définition du pixel et synthèse additive . . . . . . . . . . . . . . . . . . . . . . . . Définition de la fonction P ut_P ixel . . . . . . . . . . . . . . . . . . . . . . . . . . Définition de la fonction T F T _F ill_Screen . . . . . . . . . . . . . . . . . . . . . Définition d’une zone de rafraîchissement . . . . . . . . . . . . . . . . . . . . . . . Décomposition de trois pixels et représentation sous forme de tableau d’entiers . . Définition de la fonction RDM _W rite_Setpoint . . . . . . . . . . . . . . . . . . Association de la mémoire flash avec le microcontrôleur . . . . . . . . . . . . . . . Fonction d’écriture de fichiers sur la carte SD . . . . . . . . . . . . . . . . . . . . Menu principal au démarrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Menu principal pendant un prélèvement . . . . . . . . . . . . . . . . . . . . . . . Menu de paramétrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exemple de réglage d’une date de départ . . . . . . . . . . . . . . . . . . . . . . . Vues de la carte microcontrôleur côté composants (gauche) et côté cuivre (droite) Vue 3D de la carte microcontrôleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 16 17 19 20 21 22 23 23 24 25 27 29 29 30 30 31 32 33 33 3.1 Organisation interne de la carte d’alimentation . . . . . . . . . . . . . . . . . . . . . . 34 52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Projet de Fin d’Études INSA Strasbourg 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 Distribution de puissance par équipement . . . . . . . . . . . . . . . . . . Distribution de puissance par bus d’alimentation . . . . . . . . . . . . . . Courant absorbé par bus d’alimentation . . . . . . . . . . . . . . . . . . Génération des bus d’alimentation à partir de la tension batterie . . . . . Génération des bus d’alimentation à partir de la tension batterie . . . . . Rendements et coûts de réalisation de la carte de puissance . . . . . . . . Circuit de commutation de charge . . . . . . . . . . . . . . . . . . . . . . Schéma électrique équivalent du circuit de commutation à l’état passant . Pertes en conduction du circuit de commutation pour différentes charges Vue 3D de la carte d’alimentation seule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 35 36 36 37 37 38 39 39 39 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 Batterie LiFePO4 EU1212FJ 12.6V - 12Ah . . . . . Caractéristiques techniques de la batterie LiF eP O4 Le contrôleur de charge LTC4008 . . . . . . . . . . Caractéristiques du LTC4008 . . . . . . . . . . . . Profil de charge conseillé de la batterie . . . . . . . Profil de charge imposé par le chargeur . . . . . . . Schéma électronique du chargeur . . . . . . . . . . Connectique du chargeur de batterie . . . . . . . . Vue 3D de la carte du chargeur de batterie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 41 42 42 43 43 44 46 47 5.1 5.2 5.3 5.4 Positionnement des élements dans la mallette . . . . . . . . . . . . . . . Vue 3D de la carte de puissance et de la carte microcontrôleur assemblées Fixation de l’écran sur le couvercle de la mallette . . . . . . . . . . . . . Résultat final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 49 49 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Projet de Fin d’Études INSA Strasbourg Bibliographie [1] « Using PIC32 MCUs to Develop Low-Cost Controllerless (LCC) Graphics Solutions », Adam Folts, Microchip Technology Inc., AN1387, (2011) [2] « Microchip Graphics Display Solution for Human Interface Applications », Lee K. Koh, Microchip Technology Inc., (2010) [3] « How does a graphics LCD work ? », Gaurang Kavaiya, Microchip Techno logy Inc., (2007) [4] « Design and Implementation of Embedded Human Machine Interface (HMI) using PIC24FJ256DA210 Microcontroller », Gurpreet Singh & Surekha Rani,International Journal of Computer Applications, (2013) [5] « Battery Charging and Management Solutions », An, Linear Technology Corp., (2008) 54