Carte de mise en forme du signal respiratoire

Acquisition de donnรฉes

Afin de pouvoir acquรฉrir le signal respiratoire et transmettre les donnรฉes numรฉrisรฉes vers un PC2, nous avons optรฉs pour une carte multifonctions de type Arduino3Uno rรฉvision 3 (R3). Ce choix a รฉtรฉ fait suite ร  lโ€˜avancรฉe majeure apportรฉe par cette plateforme dans lโ€˜accessibilitรฉ de cette technologie au plus grand nombre par sa vulgarisation, sa puissance incroyable, son รฉtendu dโ€˜utilisation gigantesque ainsi que son coรปt abordable.

Prรฉsentation dโ€™Arduino

Arduino [7-9] est une plate-forme logicielle et matรฉrielle constituรฉe dโ€˜une simple carte รฉlectronique ร  microcontrรดleur (voir annexe 4) et dโ€˜un environnement de dรฉveloppement multiplateformes. Elle permet dโ€˜allier les performances de la programmation ร  celle de lโ€˜รฉlectronique.
Cette carte peut รชtre programmรฉe pour diverses tรขches, principalement pour la crรฉation des systรจmes รฉlectroniques et le prototypage de diffรฉrents circuits utilisรฉs pour des multiples fonctionnalitรฉs tels que la domotique, le pilotage des robots, lโ€˜acquisition de donnรฉesโ€ฆetc.
Le projet Arduino est en source ouverte dont les circuits de diffรฉrentes variรฉtรฉs de cartes Arduino sont publiรฉs sous licence libre GNU4 et la conception est distribuรฉe sous licence CC5. Le code source de lโ€˜environnement de dรฉveloppement est รฉgalement disponible sous licence LGPL6. Cependant, le microcontrรดleur nโ€˜est pas rรฉgi par cette licence libre

Hardware

La partie hardware consiste ร  la carte Arduino Uno, cโ€˜est le modรจle de rรฉfรฉrence des plateformes Arduino et cโ€˜est la version la plus rรฉcente des cartes Arduino USB7.
Comme illustrรฉ sur la Fig.III-1, Arduino Uno est construite autour dโ€˜un circuit ร  microcontrรดleur du type ATmega 328 de la famille AVR du constructeur Atmel. Elle est dotรฉe en plus de ;
๏‚พ 14 entrรฉes/sorties dont 6 peuvent รชtre utilisรฉ en PWM8
๏‚พ 6 entrรฉes analogiques
๏‚พ un oscillateur ร  16 MHz
๏‚พ un port USB
๏‚พ Une prise dโ€˜alimentation
๏‚พ Un connecteur ICSP9
๏‚พ Un boutton reset .

Le microcontrรดleur ATmega 328 [9] que dispose la carte Arduino Uno dispose 32 k octets de mรฉmoire flash pour le stockage du code dรฉveloppรฉ dont 0,5 k octet est utilisรฉ pour le bootloader, 2 k octets pour la SRAM10 et 1 k octet por lโ€˜EEPROM11 (voir annexe 4).

Le signal ร  discrรฉtisรฉ est envoyรฉ ร  lโ€˜ordinateur en trame, chaque trame UART12 est constituรฉe des bits suivants ;
๏‚พ Un bit start toujours mis ร  0
๏‚พ Les donnรฉes lues sur 10 bits
๏‚พ Un bit de paritรฉ assurant un codage correcte des donnรฉes
๏‚พ Un bit stop, toujours mis ร  1 .

La vitesse de transmission exprimรฉe en baud13 de la carte Arduino est variable et permet de cadencer lโ€˜envoie des donnรฉes vers lโ€˜ordinateur. La numรฉrisation des donnรฉes se fait par le biais du convertisseur analogique numรฉrique qui est incorporรฉ dans ce microcontrรดleur et qui converti une tension dโ€˜entrรฉe analogique en une valeur numรฉrique de 10 bits par approximation successive ce qui permet dโ€˜attribuer des valeurs numรฉriques entre 0 et 210=1023 qui correspond ร  5V comme valeur ร  lโ€˜entrรฉe de chacune des entrรฉes analogiques de la carte Arduino.
Une protection ร  appliquer au signal ร  acquรฉrir via la carte multifonctions Arduino Uno consiste ร  brancher un potentiomรจtre dโ€˜une valeur รฉlevรฉe entre les pins GND et 5V, le signal รฉtant branchรฉ au curseur du potentiomรจtre permettra de cadrer le signal entre 0 et 5V. Dans notre systรจme dโ€˜acquisition, nous avons optรฉ pour un potentiomรจtre de 470 k๏—.

Software

La partie software consiste en deux programmes. Un premier programme, implรฉmentรฉ dans lโ€˜environnement de dรฉveloppement intรฉgrรฉ dโ€˜Arduino, permet de charger les commandes que doit exรฉcuter la carte Arduino. Le second programme, implรฉmentรฉ sous un environnement au choix de lโ€˜utilisateur, permet de recevoir les donnรฉes des signaux numรฉrisรฉs. Dans ce prรฉsent projet, MATLAB a รฉtรฉ le langage choisi et ce pour pouvoir, suite ร  lโ€˜รฉtape dโ€˜acquisition de donnรฉes, accomplir un traitement numรฉrique du signal respiratoire.

Firmware

La programmation de toutes les cartes de la famille Arduino, dont le modรจle Uno utilisรฉ dans le cadre de ce projet, se fait dans un langage simplifiรฉ adaptรฉ du C++.
Les cartes Arduino traitent les informations reรงues par ses entrรฉes pour agir sur les sorties suivant un programme qui est dรฉfinit par lโ€˜utilisateur et ce via lโ€˜IDE14 dโ€˜Arduino dont lโ€˜interface graphique est illustrรฉe sur la figure suivante (Fig.III-2).
La fenรชtre de lโ€˜application Arduino comporte les รฉlรฉments suivants :
1. Un menu contenant les options de configuration du logiciel qui permettent de crรฉer de nouveaux programmes (appelรฉs aussi sketchs), de les sauvegarder, de gรฉrer les prรฉfรฉrences du logiciel et les paramรจtres de communication avec la carte Arduino.
2. Une barre dโ€˜action contenant des diffรฉrents boutons servant, de gauche ร  droite, de vรฉrifier le programme sโ€˜il ne contient pas dโ€˜erreurs, compiler et envoyer le programme vers la carte, crรฉer un nouveau fichier, charger un programme existant et enregistrer le programme en cours.
3. Une zone de programmation contenant le programme que nous allons crรฉer.
4. Une console qui affiche des informations sur les erreurs de compilation et de tรฉlรฉversement du programme.

Une fois que la carte Arduino est branchรฉe ร  lโ€˜ordinateur, une รฉtape de configuration est requise avant tout tรฉlรฉversement de firmware dans le microcontrรดleur dโ€˜Arduino. Le premier truc ร  effectuer est de spรฉcifier le type de la carte ร  utiliser. Pour ce faire, il faut aller, comme illustrรฉ sur la Fig.III-3, sous Outils>Types de carte et choisir Arduino Uno.
Il est รฉgalement nรฉcessaire de spรฉcifier le port USB actif qui sera utilisรฉ afin de connecter la carte avec lโ€˜ordinateur pour tรฉlรฉverser le programme. Pour ce faire, il faut aller sous Outils>Port sรฉrie et choisir le port appropriรฉ. On note que lโ€˜ordinateur assure directement lโ€˜alimentation de la carte Arduino via cette liaison USB.

Ensuite, lโ€˜utilisateur dรฉveloppe dans la zone de programmation le programme ร  tรฉlรฉverser dans le microcontrรดleur de la carte Arduino. Le programme est compilรฉ et tรฉlรฉversรฉ sโ€˜il ne prรฉsente aucune erreur de compilation. Lโ€˜exรฉcution de ce programme sโ€˜effectue de maniรจre sรฉquentielle.
La structure dโ€˜un programme รฉcrit en Arduino est illustrรฉe sur la Fig.III-4. Un code permettant de faire clignoter une LED15 branchรฉe sur la broche 13 de la carte Arduino est utilisรฉ ร  titre dโ€˜exemple.
Le programme dรฉveloppรฉ comporte trois parties consรฉcutives, ร  savoir :
โ€” Partie dรฉclaration des constantes et des variables.
โ€” Partie configuration des entrรฉes et des sorties de lโ€˜Arduino en utilisant lโ€˜instruction void setup ().
โ€” Partie programmation des interactions dans laquelle on dรฉfinit les opรฉrations qui sโ€˜exรฉcutent en boucle en utilisant lโ€˜instruction void loop ().

Des commentaires peuvent รชtre รฉcrits sur le programme pour se souvenir du patch.

Lecture des donnรฉes numรฉrisรฉes

Plusieurs environnements permettent la lecture des donnรฉes via le port USB. Dans le cadre de notre projet, le choix acadรฉmique en matiรจre logicielle de traitement numรฉrique du signal respiratoire acquis se porte sur Matlab. Ce choix a รฉtรฉ fait suite aux diverses fonctions utilitaires qui sont prรฉprogrammรฉes et mises ร  disposition des utilisateurs sous forme dโ€˜une boite ร  outils DAT16 dans le site Mathworks17 de Matlab.
La lecture et le traitement des donnรฉes numรฉrisรฉes se fait donc directement par le biais de la bibliothรจque Arduino de Matlab. Cet outil permet de gรฉnรฉrer, visualiser en temps rรฉel et enregistrer sous Windows le signal utile grรขce ร  la juxtaposition des รฉchantillons successifs en respectant la pรฉriode dโ€˜รฉchantillonnage rรฉglable dans le firmware tรฉlรฉversรฉ prรฉalablement dans le microcontrรดleur de la carte Arduino.

Conclusion

Dans ce chapitre, nous avons prรฉsentรฉ le systรจme dโ€˜acquisition de donnรฉes que nous avons conรงu autour de la carte multifonctions Arduino Uno. La partie hardware consiste au module Arduino Uno. La partie software consiste en deux parties รฉlรฉmentaires. En premier lieux, la programmation du firmware dรฉveloppรฉ dans lโ€˜environnement de dรฉveloppement intรฉgrรฉ dโ€˜Arduino. En second lieux, la programmation du script de rรฉception et de traitement de donnรฉes dรฉveloppรฉ dans un environnement Matlab, et ce grรขce au toolbox de fonctions prรฉprogrammรฉes dโ€˜Arduino.

Mesures et enregistrements

Grรขce ร  la carte de mise en forme et dโ€˜acquisition du spirogramme des dรฉbits pulmonaires que nous avons dรฉveloppรฉe, nous avons accompli un certain nombre de mesures sur des sujets normaux. Une premiรจre รฉtape consiste ร  recueillir les signaux par le biais dโ€˜un oscilloscope numรฉrique. Ensuite, lโ€˜acquisition de signaux respiratoires moyennant le systรจme dโ€˜acquisition que nous avons conรงu autour de la carte Arduino Uno nous a permis de les enregistrer sous forme dโ€˜un fichier de donnรฉes. Nous avons optรฉ ร  accomplir lโ€˜acquisition de donnรฉes dans un environnement MATLAB vu ses fonctionnalitรฉs avancรฉes de traitement numรฉrique du signal disponible sous forme de toolbox de fonctions. Cet environnement nous permettra de traiter le signal du dรฉbit respiratoire afin dโ€˜amรฉliorer sa qualitรฉ puis pour reproduire par la suite le volume, la pรฉriode respiratoire correspondante.

La nature des signaux respiratoires mesurรฉs depuis diffรฉrents points de tests de la carte de mise en forme que nous avons rรฉalisรฉe permet dโ€˜apporter les ajustements nรฉcessaires pour avoir en sortie le signal ayant la morphologie adรฉquate pour lโ€˜รฉtape dโ€˜acquisition de donnรฉes. En effet, la carte multifonction Arduino Uno requiert en entrรฉe analogique un signal cadrรฉ entre 0 et 5V. Il est alors judicieux dโ€˜ajuster la composante continue du signal du dรฉbit respiratoire ร  1V. Le signal respiratoire doit couvrir en absolu la marge de 0,5 ร  4,5V.

Mesures analogiques

La Fig.IV-1 illustre lโ€˜enregistrement du signal du dรฉbit respiratoire recueilli ร  la sortie de lโ€˜รฉtage dโ€˜amplification dรฉveloppรฉ autour de lโ€˜ampli TL074. Lโ€˜affichage sur lโ€˜oscilloscope numรฉrique est fait en couplage DC pour montrer la composante continue du signal. Lโ€˜amplification ร  รฉtรฉajuster pour aboutir ร  un signal respiratoire en sortie couvrant les 8 divisions du cadran de lโ€˜oscilloscope numรฉrique ร  un calibre de 500 mV, ce qui correspond ร  4 V comme marge de tension en absolu

Le rapport de stage ou le pfe est un document dโ€™analyse, de synthรจse et dโ€™รฉvaluation de votre apprentissage, cโ€™est pour cela chatpfe.com propose le tรฉlรฉchargement des modรจles complet de projet de fin dโ€™รฉtude, rapport de stage, mรฉmoire, pfe, thรจse, pour connaรฎtre la mรฉthodologie ร  avoir et savoir comment construire les parties dโ€™un projet de fin dโ€™รฉtude.

Table des matiรจres

Liste des figures
Introduction gรฉnรฉrale
Chapitre I Systรจme respiratoire
I.1. Anatomie de lโ€˜appareil respiratoire
I.1.1. Les voies aรฉriennes
I.1.2. Les poumons
I.1.3. Les muscles respiratoires
I.2. Physiologie de lโ€˜appareil respiratoire
I.2.1. Mรฉcanique ventilatoire et production du dรฉbit aรฉrien
I.2.2. Lโ€˜espace mort
I.2.3. Les mรฉcanismes dโ€˜รฉchanges gazeux
I.3. Les explorations fonctionnelles respiratoires
I.3.1. Mesure des volumes non mobilisables
I.3.2. Mesure des volumes mobilisables
I.4. Conclusion
Chapitre II Carte de mise en forme du signal respiratoire
II.1. Etude des capteurs de pression
II.1.1. Dรฉfinition de la pression
II.1.2. Lesdiffรฉrentes unitรฉs de pression
II.1.3. Les diffรฉrents types de pression
II.1.4. Les capteurs de pression
II.2. Description du systรจme de mesure
II.2.1. Structure de la chaine de mesure
II.2.2. Pneumotachographe de Lilly
II.2.3. Capteur de pression
II.2.4. Circuit dโ€˜alimentation
II.2.5. Amplification
II.2.6. Filtrage
II.2.7. Circuit dโ€˜offset
II.3. Conclusion
Chapitre III Acquisition de donnรฉes
III.1. Prรฉsentation dโ€˜Arduino
III.2. Hardware
III.3. Software
III.3.1. Firmware
III.3.2. Lecture des donnรฉes numรฉrisรฉes
III.4. Conclusion
Chapitre IV Mesures et enregistrementsย 
IV.1. Mesures analogiques
IV.2. Etalonnage du systรจme de mesure
IV.3. Acquisition du signal du dรฉbit respiratoire
IV.4. Traitement numรฉrique
IV.4.1. Filtrage
IV.4.2. Extraction du rythme et de la pรฉriode respiratoire
IV.4.3. Gรฉnรฉration des volumes respiratoires
IV.5. Conclusion
Conclusion gรฉnรฉraleย 
Rรฉfรฉrences bibliographiques
Annexe 1 โ€“ Consรฉquence spiromรฉtrique des pathologies : analyse des courbes dรฉbit/volume
Annexe 2โ€“ Liste des composants รฉlectroniques
Annexe 3โ€“ Quelques circuits rรฉalisรฉs avec PCB
Annexe 4 โ€“ Fiches techniques

Carte de mise en forme du signal respiratoireTรฉlรฉcharger le rapport complet

Tรฉlรฉcharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiรฉe. Les champs obligatoires sont indiquรฉs avec *