Biosignal PI : Plateforme open-source abordable et fiable de surveillance ECG et respiration
Farhad Abtahi 1,*, Jonatan Snäll 1, Benjamin Aslamy 1, Shirin Abtahi 1, Fernando Seoane 1,2 et Kaj Lindecrantz 1,3 1School of Technology and Health, Royal Institute of Technology, Alfred Nobels Allé 10, Stockholm SE-141 52, Suède ; E-Mails : [email protected] (J.S.) ; [email protected] (B.A.) ; [email protected] (S.A.) ; [email protected] (F.S.) ; [email protected] (K.L.) 2Academy of Care, Wellbeing and Welfare, University of Borås, Allégatan 1, Borås SE-501 90, Suède 3Department of Clinical Science, Intervention and Technology, Karolinska Institutet, Hälsovägen 7, Stockholm SE-141 57, Suède Éditeur académique : Panicos Kyriacou *Auteur correspondant ; E-Mail : [email protected] ; Tél. : +46-704-689-002. Reçu : 30 octobre 2014 / Accepté : 15 décembre 2014 / Publié : 23 décembre 2014
Résumé
: Les projets pilotes biomédicaux (télémédecine, soins à domicile, essais animaux et humains) impliquent généralement plusieurs mesures physiologiques. Le développement technique de ces projets est chronophage et particulièrement coûteux. Une plateforme de mesure biosignaux polyvalente mais abordable peut aider à réduire temps et risques tout en gardant le focus sur l'objectif principal et en utilisant efficacement les ressources. Dans ce travail, une plateforme abordable et open source pour le développement de signaux physiologiques est proposée. Comme première étape, un système de surveillance électrocardiogramme (ECG) 8–12 dérivations et respiration est développé. Des puces basées sur la technologie iCoupler ont été utilisées pour obtenir l'isolement électrique requis par la CEI 60601 pour la sécurité des patients. Les résultats montrent le potentiel de cette plateforme comme base pour le prototypage de systèmes de mesure compacts, abordables et médicalement sûrs. Les travaux futurs impliquent le développement matériel et logiciel de modules. Ces modules pourront nécessiter le développement de front-ends pour d'autres biosignaux ou simplement collecter des données sans fil depuis différents dispositifs (ex. tension artérielle, poids, bioimpédance spectrale, glucose sanguin, via Bluetooth). Tous les documents de conception et développement, fichiers et codes sources seront disponibles pour usage non commercial via le site du projet, BiosignalPI.org.
Mots-clés :
ECG abordable ; Raspberry PI ; front-end analogique ADAS1000 ; open-source ; surveillance respiration ; bioimpédance thoracique ; développement dispositif médical
1. Introduction
Une population vieillissante – une proportion accrue de personnes âgées dans la population globale – met au défi le système de santé actuel en augmentant les coûts, créant un manque de personnel soignant, et contribuant à des combinaisons plus complexes de maladies chroniques [1]. De plus, la propagation d'un mode de vie occidental – faible activité physique, combinée à un régime hypercalorique, riche en graisses et sucres – est associée aux maladies chroniques comme le diabète et les maladies cardiovasculaires dans les pays industrialisés [2,3]. Cette tendance est maintenant perceptible même dans les pays en développement et les demandes de soins devraient augmenter dans un avenir proche [4]. L'amélioration des soins et la gestion des maladies chroniques par de nouvelles méthodes est l'objectif de nombreuses recherches multidisciplinaires. Ces recherches incluent des essais précliniques animaux et cliniques humains de nouvelles méthodes de dépistage, diagnostic, intervention et traitement. Ces projets impliquent généralement des mesures physiologiques et biologiques ex. tension artérielle, glucose sanguin, poids, composition corporelle, surveillance d'activité, et activité cardiaque électrique par électrocardiogramme (ECG).
La télémédecine et les soins à domicile sont un cas particulier, utilisant les avancées récentes en technologie de l'information (IT). C'est parfois considéré comme une solution potentielle pour augmenter la qualité de vie des patients en élargissant l'accessibilité aux soins et même une distribution optimale des coûts de santé [4]. Cependant, ces idées ne sont ni pleinement prouvées ni rejetées. L'une des raisons est l'ensemble diversifié de mesures et systèmes IT nécessaires pour chaque projet individuel. Différents capteurs et front-ends analogiques sont requis pour la surveillance physiologique de chaque groupe cible de patients, exigeant ainsi des systèmes de mesure biomédicale et IT spécifiques à l'application. Le développement de tels systèmes divers rend le développement technique des études en soins à domicile/télémédecine coûteux et, en particulier, chronophage. Par la suite, moins de temps et d'efforts restent pour engager le personnel soignant et les patients cibles.
Une plateforme flexible pour le prototypage rapide de systèmes dans ces scénarios peut être très utile dans les projets pilotes et pour la preuve de concept. Un autre avantage de telles plateformes flexibles est à des fins éducatives dans le domaine de l'ingénierie biomédicale, permettant aux étudiants de se familiariser avec toute la chaîne d'acquisition, traitement et présentation de signaux biologiques par une approche pratique dès le début du cursus. Le meilleur exemple d'une telle plateforme éducative est Gamma Cardio (openECG) [5], ce projet sous licence ouverte avec un manuel [6] peut être utilisé par les étudiants pour explorer le processus de développement de dispositifs médicaux. Il existe d'autres projets open source comme OpenMind [7], OpenEEG [8] et OpenBCI [9] qui peuvent fournir d'énormes ressources d'apprentissage. Cependant, tous ces projets ont un nombre limité de canaux et en particulier sont conçus pour des biosignaux spécifiques comme l'EEG avec une flexibilité minimale pour couvrir plus de mesures. De plus, ils ne sont pas des dispositifs autonomes et pour être fonctionnels ont besoin d'un PC, portable ou téléphone mobile pour la visualisation et l'analyse des signaux ce qui rend l'ensemble de la solution plus coûteuse.
L'intention de ce travail est de concevoir un cadre open-source, flexible et abordable pour développer des dispositifs de mesure biosignaux sûrs. Ce cadre, que nous appelons Biosignal PI, peut être utilisé par des chercheurs, étudiants, ingénieurs, ou même des passionnés, sans connaissance approfondie des systèmes embarqués, de technologie de mesure ou d'instrumentation biomédicale. Ce cadre est modulaire et électriquement sûr, et remplit de nombreuses normes médicales. L'ECG a été largement appliqué pour le diagnostic et la surveillance des maladies cardiaques, dans la surveillance du système nerveux autonome par la variabilité de la fréquence cardiaque (VFC) et aussi pour diverses applications d'entraînement sportif. Par conséquent, un module de mesure ECG et respiration a été développé comme premier exemple pour développer et évaluer le design [10]. Ce prototype est développé davantage comme projet Biosignal PI.
2. Contraintes
La flexibilité est une caractéristique clé d'un cadre de prototypage de mesure biosignaux. Il doit être évolutif pour différentes demandes dans différents projets tout en fournissant une haute fiabilité. Chaque biosignal a des exigences spécifiques telles que taux d'échantillonnage, plage de fréquence, amplification spécifique et contraintes de sécurité comme spécifié par les normes médicales pertinentes.
3. Conception du système
3.1. Plateforme embarquée
Au cours de la dernière décennie, le développement de la microélectronique a fourni des plateformes computationnelles plus petites, plus rapides et plus abordables. Puisque la flexibilité est la contrainte principale pour Biosignal PI, la plateforme embarquée choisie doit offrir la possibilité d'un développement modulaire matériel et logiciel. Le développement matériel modulaire peut être fait avec des systèmes basés microcontrôleurs comme dans les projets Arduino [11]. Cependant, les systèmes basés sur des systèmes d'exploitation comme Linux peuvent fournir un degré de flexibilité plus élevé et sont donc plus favorables pour ce type de développement comparé au développement firmware pour microcontrôleurs. Plusieurs ordinateurs monocarte compacts ont été introduits et sont devenus populaires au cours des cinq dernières années ex. Raspberry PI (RPI) et BeagleBone Black. RPI [12] – un ordinateur monocarte taille carte de crédit avec processeur ARM – a été choisi pour ce projet, voir Figure 1. Le RPI est développé par la Raspberry Foundation. Les principales raisons du choix du RPI sur ses concurrents étaient le prix abordable et la communauté open-source active avec une quantité énorme de projets, shields, et tutoriels.
Figure 1. Le Raspberry PI Model B (source : site web Raspberry PI). Cliquez pour agrandir la figure.
Le RPI existe en trois modèles ; A, B et récemment B+. Tous les modèles utilisent le même CPU et GPU, la différence est dans la taille de la RAM et les ports. Il a été initialement conçu pour être un ordinateur compact abordable, soutenant les étudiants en informatique. Cependant, la présence d'un port entrée/sortie à usage général (GPIO) en a fait une plateforme populaire pour le développement de nombreux projets embarqués. Le Model B, le type utilisé dans ce projet, fournit un port Ethernet, deux USB et un HDMI, sorties audio et vidéo ; et il a un CPU 700 MHz, GPU, 512 Mo RAM et slot carte SD. Le RPI supporte plusieurs distributions Linux ex. Raspbian ; distribution basée sur Debian optimisée pour le matériel Raspberry PI. Comme il tourne sur Linux, le langage de programmation n'est limité en aucune façon mais Python, C/C++ et Java sont parmi les plus populaires dans la communauté RPI. Récemment, le RPI est aussi supporté par Simulink ce qui ouvre de nouvelles façons d'apprendre les concepts de programmation embarquée sans coder [13]. Il est facile de mettre en place un serveur web léger ex. Lighttpd et Apache, un serveur de base de données ex. SQLite, MySQL pour des applications spécifiques.
3.2. Front-end analogique Electrocardiogramme et Bioimpédance Thoracique
Comme mentionné précédemment, un système de surveillance ECG et respiration est choisi comme premier exemple dans le développement de Biosignal PI. La respiration peut être enregistrée via la mesure de bioimpédance, c'est-à-dire en injectant un faible courant à travers le thorax et en détectant la chute de tension correspondante. Pendant l'inspiration, le thorax s'élargit, et à mesure que l'air remplit les poumons, la bioimpédance augmente car la surface conductrice pour le courant augmente. Pendant l'expiration, la bioimpédance diminue à nouveau [14]. L'acquisition d'ECG et de bioimpédance thoracique peut se faire par plusieurs approches, de l'utilisation de composants électroniques discrets seulement à des front-ends analogiques totalement intégrés. Les front-ends intégrés non seulement réduisent la taille et la consommation, ils fournissent aussi une large gamme de fonctionnalités supplémentaires comme la détection de déconnexion d'électrodes et la conformité aux normes médicales telles que AAMI EC11, AAMI EC38, CEI 60601-1, CEI 60601-2-25, CEI 60601-2-27 et CEI 60601-2-51. Les principaux concurrents pour les front-ends ECG sont les ADAS1000-X d'Analog Devices [15] et les ADS129X de Texas Instruments [16]. Les deux séries ont des spécifications presque comparables. L'ADS1298 peut fournir huit canaux de signaux ECG dans une puce, bon pour le développement d'un dispositif ECG 12 dérivations plus compact et légèrement moins cher, comparé à l'ADAS1000 qui a maximum cinq canaux. Néanmoins l'ADAS1000 (ADAS) a été choisi dans ce travail, principalement parce que l'ADS1298R n'est disponible qu'en boîtier NFBGA. Pour le prototypage, le montage manuel peut être crucial et le boîtier LQFP de l'ADAS est beaucoup plus facile à manipuler que le packaging NFBGA.
L'ADAS peut fournir un taux d'échantillonnage jusqu'à 128 kHz et convient pour les dispositifs portables à batterie, surveillance patient au chevet, télémétrie portable, et systèmes de surveillance à domicile. Les puces ADAS peuvent être utilisées en mode gang pour fournir plus de canaux ECG [15]. Dans ce travail, une/deux ADAS1000BSTZ est utilisée – c'est-à-dire la version cinq canaux qui inclut toutes les fonctionnalités – comme maître et esclave optionnel pour fournir 8-12 dérivations ECG dans les versions A et B respectivement. Alternativement, une version plus abordable ADAS1000-2BSTZ peut être utilisée comme puce esclave. La puce utilise un boîtier LQFP 64 broches, voir Figure 2. Il vaut la peine de mentionner que le soudage manuel du package LQFP64 est relativement difficile et nécessite une certaine expérience et un haut niveau de compétences en soudage.
Typiquement, un ECG 12 dérivations utilise neuf électrodes et la dérivation de jambe droite (RLD). Trois électrodes connectées aux membres ; bras droit (RD), bras gauche (GD) et jambe gauche (GJ) et les six électrodes restantes, nommées V1-V6, sont positionnées à des emplacements bien définis sur la poitrine. Le Tableau 1 résume la composition du système ECG 12 dérivations typique. Le calcul des dérivations aVR, aVL et aVF n'est pas fait par l'ADAS, ils devront être calculés dans le traitement ultérieur. Les canaux V1 et V2 peuvent être configurés pour fonctionner soit comme entrée ECG soit comme entrée auxiliaire pour effectuer d'autres mesures.
Les mesures de respiration sont effectuées par des mesures de bioimpédance thoracique à une fréquence programmable de 46,5 kHz à 64 kHz. La mesure de respiration peut se faire sur l'une des dérivations des membres (Dérivation I, II ou III) ou via des dérivations séparées connectées à un couple de broches dédiées [15]. Des informations étendues sur les principes et applications des mesures de bioimpédance sont disponibles dans [17].
L'ADAS fournit la détection de déconnexion d'électrodes en injectant un courant DC ou AC, pour surveiller les changements de tension et détecter si une électrode n'est plus connectée au patient. La détection a un délai inférieur à 10 ms pour le mode AC, en mode DC le délai dépend du courant programmé et de la capacitance du câble.
3.3. Communication entre RPI et ADAS
La communication entre front-ends analogiques, autres circuits intégrés, et RPI peut se faire via différents ports ex. interface série périphérique (SPI), circuit inter-intégré (I2C) et récepteur/émetteur asynchrone universel (UART). L'ADAS utilise le SPI qui nécessite quatre liaisons pour communiquer entre un maître et plusieurs esclaves, un signal d'horloge (SCLK) pour la synchronisation, un signal de sélection d'esclave (SSn) et deux lignes de données : master-out-slave-in (MOSI) et master-in-slave-out (MISO). La communication est contrôlée par le maître, qui sélectionne l'esclave, active l'horloge, et génère l'information sur MOSI tout en échantillonnant le MISO [18]. Dans ce prototype, le RPI agit comme maître, communiquant avec une/deux ADAS comme esclave.
3.4. Protection défibrillateur et ESD
Dans les applications avec risque de défibrillation ex. en soins intensifs ou d'urgence, une protection contre les surtensions est requise. Dans d'autres domaines d'application, c'est encore recommandé, car cela peut protéger le dispositif d'autres types de décharges électrostatiques (ESD). La couche de protection ESD est conçue selon les recommandations de la fiche technique ADAS [15]. Le circuit de protection est basé sur le SP720, qui fournit une protection jusqu'à 8 kV contre l'ESD et autres événements de surtension transitoires [19].
3.5. Couche d'isolation de sécurité électrique
La sécurité électrique est parmi les exigences les plus importantes dans la conception de dispositifs médicaux. Les normes de la Commission Électrotechnique Internationale (CEI) couvrent deux types d'isolation pour la protection de l'utilisateur, CEI 60601 et CEI 60950. Pour prévenir chocs électriques, arythmies cardiaques, brûlures, ou même dommages aux organes internes [20], l'utilisateur (patient/opérateur) doit être isolé des parties haute tension du système, et les courants de fuite doivent être maintenus bas.
L'isolation peut être implémentée à différents niveaux. Pour les applications sans connexion, directe ou indirecte, à la tension secteur ex. dispositifs Holter à batterie, le problème est résolu automatiquement. Cependant, comme il peut y avoir un besoin de connecter le RPI à des périphériques ex. imprimante, moniteur, LAN, une isolation appropriée est incluse dans le design. L'isolation est réalisée en isolant à la fois les liaisons de données (SPI) et d'alimentation DC entre l'ADAS et le RPI, comme illustré Figure 3.
Les optocoupleurs sont des composants typiques utilisés pour obtenir l'isolation, les signaux sont transférés entre parties isolées et non isolées en utilisant la lumière. Une alternative est la technologie iCoupler, combinant CMOS haute vitesse et technologie de transformateur à noyau d'air monolithique, qui permet un coût, taille, consommation plus faibles, et une fiabilité plus élevée comparé aux optocoupleurs [21]. Les lignes SPI et DC sont isolées en utilisant les familles ADuM64XX et ADuM44XX d'Analog Devices. Elles fournissent une isolation 5 kV, conformes à la CEI 60601 et CEI 60950. L'ADuM6200 fournit l'alimentation DC isolée, et l'ADuM4400 donne la communication numérique isolée, permettant un débit binaire de 90 Mbps [22–24].
3.6. Développement logiciel
Comme discuté précédemment, le RPI offre beaucoup de liberté de choix concernant le système d'exploitation et le langage de programmation. Dans ce travail, Raspbian Linux et C++ ont été choisis pour l'implémentation du logiciel qui initialise l'ADAS, récupère les signaux, et les visualise et enregistre dans le format désiré. Pour l'interface graphique utilisateur (GUI), Qt, un framework d'application multiplateforme utilisant le C++ standard, est utilisé. Qt facilite aussi le multi-threading. Qt est un framework très populaire avec une excellente documentation et des exemples utiles [24]. Comme la compilation d'une application sur le RPI pourrait ralentir le processus de développement, la compilation croisée sur un PC avec Ubuntu OS [18] est utilisée pour produire du code exécutable pour la plateforme RPI. Afin d'atteindre les taux d'échantillonnage requis au-dessus de 2 kHz pendant que les signaux sont tracés, l'échantillonnage est fait dans un thread indépendant de la GUI. La communication entre ces deux threads se fait par une méthode de Qt appelée signal & slot. Ce mécanisme utilise une connexion en file d'attente ce qui signifie que le signal est placé dans la boucle d'événements du thread GUI et la GUI est autorisée à finir sa tâche courante avant que le slot ne soit invoqué [25].
Le développement logiciel pour dispositifs médicaux est réglementé par plusieurs normes, telles que ISO 13485, EN ISO 14971 et CEI 62304. Ces normes couvrent les systèmes de management de la qualité, la gestion des risques et les processus du cycle de vie logiciel des dispositifs médicaux, respectivement [26]. Puisque le développement logiciel de ce projet ne répond à aucune de ces normes, il doit être considéré comme logiciel de pedigree inconnu (SOUP). Toute utilisation clinique doit être faite après avoir assuré la performance sûre et fiable du dispositif. Toutes les responsabilités incombent à l'utilisateur, les auteurs de cet article n'assument aucune responsabilité pour l'utilisation de ce matériel.
3.7. Architecture Biosignal PI
La Figure 3 montre l'architecture système proposée pour Biosignal PI. Le système inclut le RPI comme module computationnel, une couche d'isolation numérique et d'alimentation DC, une protection contre les décharges électrostatiques (ESD) pour les électrodes corporelles connectées aux front-ends analogiques biosignaux. Différents modules de surveillance biosignaux et signes vitaux peuvent être ajoutés par des front-ends appropriés ou comme moniteurs sans fil via Bluetooth, WiFi, ou ZigBee. Le RPI peut être connecté à différents périphériques tels que moniteur, imprimante, clavier et même shields disponibles pour RPI selon les exigences de chaque projet. Le RPI et les périphériques potentiels ne sont pas conçus comme dispositif médical et donc une couche d'isolation est utilisée pour isoler la carte d'extension du RPI. Même si les caractéristiques d'isolation et de protection ESD sont choisies pour se conformer aux exigences de sécurité patient, aucune démarche vers une certification formelle n'a été entreprise. Il appartient à quiconque veut baser un dispositif approuvé MDD ou FDA sur le Biosignal PI de s'assurer que toutes les exigences sont remplies.
Dans la première implémentation de cette architecture, une carte d'extension ECG et respiration a été conçue pour la puce ADAS1000. Le schéma et le circuit imprimé (PCB) double couche a été conçu en utilisant la version gratuite de CadSoft Eagle V6.5 [27]. La Figure 4 montre le schéma diagramme d'un système 5–8 dérivations avec tous les composants nécessaires pour le fonctionnement de l'ADAS, la protection ESD et l'isolation de la carte du RPI.
Pour plus de détails : Biosignal PI, un système de mesure ECG et respiration open-source abordable
Processus de fabrication
- Mesure et journalisation précises de thermocouple pour laboratoires et expériences scientifiques
- Journalisation et système d'alerte photocellulaire Raspberry Pi – Construire un capteur de lumière basse consommation avec Python
- Robot d'inspection autonome low-cost : Conception, développement et validation terrain
- Systèmes Embarqués & Intégration Système : Architecture Moderne et Connectivité
- Comment les transmissions manuelles et automatiques transmettent la puissance : aperçu clair
- Systèmes de transmission expliqués : types et principaux avantages
- Systèmes de carter sec vs carter humide : guide complet
- Freinage par friction et freinage régénératif : comment les véhicules modernes récupèrent l'énergie
- Test de pression du système de refroidissement moteur : guide complet