Disseny i implementació d'un sistema d'EIS basat en FPGA programada des de LabView
Abstract
El proyecto realizado describe des de la implementación hasta la validación, a partir de medidas experimentales, del software necesario para realizar un analizador de impedancia basado en FPGA programada des de LabView con el objetivo final de medir espectros de impedancia eléctrica en tiempo real. Para realizar dichas medidas, se ha implementado un sistema cerrado encargado tanto de la generación de las señales como de la medida y el procesado de estas. Además se ha incluido un software de control para poder modificar los parámetros del sistema a gusto del usuario. Finalmente se ha procedido a la realización de medidas experimentales para asegurar y demostrar el buen funcionamiento del sistema.
Full text
DISSENY I IMPLEMENTACIÓ D’UN SISTEMA D’EIS BASAT EN FPGA PROGRAMADA DES DE LABVIEW DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA D’EIS BASADO EN FPGA PROGRAMADA DES DE LABVIEW DESIGN AND IMPLEMENTATION OF AN EIS SYSTEM BASED ON FPGA PROGRAMMED FROM LABVIEW Treball de Fi de Grau presentat a l’Escola Tècnica d'Enginyeria de Telecomunicació de Barcelona per: Marcel Palet Brandi Director: Ramon Bragós Bardia Barcelona, febrer de 2020
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 2
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 3 Resum El projecte realitzat descriu des de la implementació fins a la validació, a partir de mesures experimentals, del software necessari per a realitzar un analitzador de impedància basat en FPGA programada des de LabView amb el objectiu final de mesurar espectres d’impedància elèctrica en temps real. Per tal de realitzar dites mesures, s’ha implementat un sistema tancat encarregat tant de la generació de les senyals com de la mesura i processament d’aquestes. A més s’ha inclòs un software de control per poder modificar els paràmetres del sistema a gust de l’usuari. Finalment s’ha procedit a la realització de mesures experimentals per assegurar i demostrar el bon funcionament del sistema.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 4 Resumen El proyecto realizado describe des de la implementación hasta la validación, a partir de medidas experimentales, del software necesario para realizar un analizador de impedancia basado en FPGA programada des de LabView con el objetivo final de medir espectros de impedancia eléctrica en tiempo real. Para realizar dichas medidas, se ha implementado un sistema cerrado encargado tanto de la generación de las señales como de la medida y el procesado de estas. Además se ha incluido un software de control para poder modificar los parámetros del sistema a gusto del usuario. Finalmente se ha procedido a la realización de medidas experimentales para asegurar y demostrar el buen funcionamiento del sistema.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 5 Abstract This project describes from the implementation to the validation, from experimental measurements, of the necessary software to implement an impedance analyzer based on FPGA programmed from LabView with the final objective of measuring the electrical impedance spectrum in real time. To obtain those measurements, a closed system in charge of the signal generation, signal measurement and processing has been implemented. Moreover, it has been included a control software to modify the system parameters. Finally, I’ve proceeded to experimentally make measurements to ensure and demonstrate the good behaviour of the whole system.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 6 Agraïments Voldria agrair al Dr. Ramón Bragós Bardia tota l’ajuda i atenció prestada durant el transcurs del projecte, sense ell no hagués estat possible la realització d’aquest. Ha estat un tutor i professor excepcional tant en aquest treball com durant el transcurs del grau. També m’agradaria agrair al Grup d’Instrumentació Electrònica i Biomèdica del Departament D’enginyeria Electrònica de la UPC per donar-me l’oportunitat de realitzar aquest projecte.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 7 Índex general Resum ....................................................................................................................................... 3 Resumen .................................................................................................................................. 4 Abstract ................................................................................................................................... 5 Agraïments ............................................................................................................................. 6 Índex general ........................................................................................................................ 7 Llista de figures .................................................................................................................... 8 Llista de taules ...................................................................................................................... 9 1. Introducció ........................................................................................................................ 10 1.1. Impedància biològica ........................................................................................ 10 1.2. Models circuitals ................................................................................................ 11 1.3. Context del projecte ......................................................................................... 13 1.4. Objectius del projecte ...................................................................................... 14 2. Estructura i disseny del sistema de mesura d’impedància .......................... 15 2.1. Eines emprades al projecte ........................................................................... 15 2.1.1. Placa de desenvolupament myRIO1900 ....................................... 15 2.1.2. Front-end .................................................................................................. 17 2.1.3. Eines de desenvolupament ................................................................ 19 2.2. Arquitectura del hardware ........................................................................... 19 2.3. Arquitectura del software ............................................................................. 21 2.3.1. Generació de senyal ............................................................................. 22 2.3.2. Processament dels senyals i càlcul de la FFT ............................ 23 2.3.3. Obtenció de la impedància i representació de les dades ...... 25 2.3.4. Software de control ............................................................................. 30 2.3.4.1. Software de control assumint corrent constant .............. 30 2.3.4.2. Software de control sense assumir corrent constant ... 31 3. Validació amb mesures experimentals .............................................................. 33 3.1. Mesures amb front-end ................................................................................. 33 3.1.1. Mesures assumint corrent constant ............................................. 34 3.1.2. Mesures sense assumir corrent constant ................................... 36 3.2. Mesures amb materials biològics ............................................................. 37 3.3. Mesures en el cos humà ................................................................................ 38 4. Conclusions i treball futur ....................................................................................... 41 4.1. Conclusions ........................................................................................................ 41 4.2. Treball futur ...................................................................................................... 41 5. Referències .................................................................................................................... 42
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 8 Llista de figures Figura 1. Moviment del corrent a través d’una distribució cel·lular a baixes i altes freqüències Figura 2. Evolució de la permitivitat i conductivitat en materials biològics Figura 3. Circuit equivalent a una distribució cel·lular Figura 4. Mòdul i fase de la impedància en diferents Figura 5. Placa de desenvolupament per a aplicacions acadèmiques myRIO1900 Figura 6. Diagrama de blocs del hardware de la placa myRIO1900 Figura 7. Diagrama de blocs del front-end utilitzat per a la mesura de impedància Figura 8. Vista zenital del front-end utilitzat per a la mesura de impedància Figura 9. Diagrama de blocs primera versió del sistema Figura 10. Entrades analògiques myRIO1900 Figura 11. Diagrama de blocs segona versió del sistema Figura 12. LabView panell de configuració del generador de funcions Figura 13. Vi encarregat de generar el senyal de referència Figura 14. Diagrama de flux del càlcul de la FFT Figura 15. Exemple d’inicialització de la FPGA del projecte Figura 16. Interfície d’usuari i vi per la configuració dels paràmetres de funcionament de la FPGA Figura 17. Diagrama de blocs utilitzat per normalitzar el valor de la freqüència per la interpretació de la FPGA (Normalize_Signal_Parameters.subvi) Figura 18. Diagrama de blocs utilitzat per assignar el valor adient de comptes en funció de la freqüència de mostreig escollida (Sample_rate_to_loop_time.subvi) Figura 19. Configuració de freqüències de la placa i lectura de la part real i imaginària de la FFT calculada des de la FPGA Figura 20. Extracció dels màxims de la FFT (primera aproximació) Figura 21. Extracció dels màxims de la FFT (segona aproximació)
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 9 Figura 22. Part de control del panell frontal que permet generar els senyals de referència, escollir la freqüència de mostreig, el temps entre mostres vàlides i els fitxers destí d’aquestes Figura 23. Part de visualització de resultats del panell frontal Figura 24. Panell de control del sistema sense assumir corrent constant Figura 25. Resistència mesurada en funció del seu valor nominal assumint corrent constant per al front-end Figura 26. Valor resistiu a diferents freqüències assumint corrent constant circulant per al front-end Figura 27. Xarxa RC equivalent al comportament d’un teixit biològic Figura 28. Resistència mesurada en funció del seu valor nominal sense assumir corrent constant per al front-end Figura 29. Valor resistiu a diferents freqüències assumint corrent constant circulant per al front-end Figura 30. Mòdul de la impedància a diferents freqüències d’una poma Figura 31. Front-end per a la mesura d’impedància d’una poma Figura 32. Disposició dels elèctrodes al braç per mesurar la impedància del múscul Figura 33. Mesures del múscul a 30 kHz en estat de relaxació i tensió Figura 34. Mesures d’impedància a través del tòrax del subjecte Llista de taules Taula 1. Valors resistiu real i valor resistiu mesurat a 1kHz assumint corrent constant circulant per al front-end Taula 2. Valors resistiu real i valor resistiu mesurat a 1kHz sense assumir corrent constant circulant per al front-end
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 16 o Freqüència de mostreig de 500kS/s o Connectors MXP: Quatre canals mono per cadascun dels dos connectors Valor nominal entre 0V i 5V Exactitud de ±50mV o Connectors MSP: Dos canals diferencials Valor nominal entre -10V i 10V Exactitud de ±200mV o Entrada d’àudio estèreo basada en dos canals mono acoblats en AC o Ample de banda 50kHz Sortides analògiques: o Resolució de 12 bits o Connectors MXP: Dos canals mono per connector Valor nominal entre 0V i +5V Exactitud de 50mV o Connectors MSP: Dos canals mono Valor nominal entre -10V i 10V Precisió de ±200mV o Sortida d’àudio estèreo basada en dos canals mono acoblats en AC o Ample de banda 50kHz E/S Digital: o Connectors MXP: 2 ports de 16 DIO línies (una per connector) o Connectors MSP: 1 port de 8 DIO línies o Cada línia és programable com a E/S Acceleròmetre de 3 eixos amb resolució de 12 bits 4 LEDs RGB 1 USB device port 1 USB host port
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 17 Figura 6. Diagrama de blocs del hardware de la placa myRIO1900 [7] El processador integrat al mòdul Zynq de la placa myRIO1900 s’encarrega d’interpretar el codi carregat des de LabView. Aquest mòdul també té una FPGA on s’implementa en hardware una altra part del codi. Així doncs LabView permet la opció d’afegir dispositius on carregar els projectes (en aquest cas el dispositiu seria la myRIO). La distribució del codi s’ha dividit principalment en dos blocs. El primer corre sobre la FPGA de la placa mentre que el segon s’executa en el processador de l’ordinador des de LabView. 2.1.2. Front-end El front-end utilitzat en aquest projecte fou desenvolupat en un projecte anterior per al grup d’instrumentació electrònica i biomèdica dins del departament d’enginyeria electrònica a la UPC. Està basat en una font de corrent unipolar amb la finalitat de convertir el senyal de referència en tensió provinent de la FPGA a corrent per al càlcul de la impedància. A més el front-end disposa de circuits addicionals per mesurar la tensió diferencial en la impedància i el corrent
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 18 mitjançant amplificadors diferencials, buffers i un amplificador de transimpedància. A nivell estructural, el front-end consta d’una entrada per on s’introdueix el senyal de referència (del voltant de 2Vpp), una sortida que proporciona la mesura de tensió que cau en la impedància i una segona sortida que proporciona la mesura de corrent injectat a la impedància. És necessària una tensió de 5V per alimentar la placa. A les figures 7 i 8 es pot veure el diagrama de blocs i la vista frontal. Figura 7. Diagrama de blocs del front-end utilitzat per a la mesura de impedància [8] Figura 8. Vista zenital del front-end utilitzat per a la mesura de impedància
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 19 2.1.3. Eines de desenvolupament Arribats a aquest punt ja es pot deduir que el projecte està més centrat en el desenvolupament del software necessari per obtenir el valor de la impedància que en el hardware. Concretament, la eina que s’ha emprat ha estat el programa LabVIEW 2017 myRIO, una versió de LabView que se’t proporciona junt amb el paquet de la myRIO. Aquesta versió del programa LabView et permet importar dispositius dins de la carpeta on resideix el projecte. Un cop importats els dispositius, el programa permet crear el que es coneix com a vi (fitxer on resideix el codi) i especificar on es vol executar dit vi. En el cas del projecte en qüestió, s’ha decidit executar tant la generació del senyal de referència com el processament dels senyals rebuts del front-end dins de la placa de desenvolupament. Apart s’ha creat una interfície d’usuari, la qual s’executa a l’ordinador, on es poden visualitzar els senyals generats per la placa i els resultats obtinguts del processament d’aquests. La comunicació entre l’ordinador i la placa myRIO es du a terme a través d’un cable USB el qual requereix de la instal·lació de divers específics que National Instruments ja proporcionat junt amb la instal·lació del software [9]. 2.2. Arquitectura del hardware Degut a la limitada capacitat de processament de la FPGA s’han implementat dues versions diferents del sistema. Una de més bàsica, permetent obtenir una velocitat de mostres per segons molt més elevada que la segona, la qual és més avançada però no assoleix la velocitat de mostres per segon requerida. Com ja s’ha explicat anteriorment, el sistema utilitza un front-end per a la mesura de la impedància. Dit front-end està basat en una estructura amb font de corrent unipolar per tal de convertir el senyal de referència en tensió. Així doncs podem fer la assumpció que el corrent que circula per dit front-end és constant permetent-nos així calcular només la FFT de la tensió rebuda. Gràcies a aquesta assumpció ens estalviem el càlcul de la FFT de la senyal de corrent, augmentant de forma considerable el rendiment del sistema. El diagrama de blocs d’aquesta primera versió de hardware del sistema quedaria distribuït de la següent manera:
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 20 Figura 9. Diagrama de blocs primera versió del sistema Així doncs, ja és pot deduir quina és la segona versió del sistema. Si no assumim corrent constant circulant pel front-end, hem de calcular la FFT del senyal corrent rebut. El cost a l’hora de rebre mostres és pràcticament del doble ja que, tot i que la FPGA està capacitada per rebre dues senyals alhora i processar-les de la mateixa manera, internament les entrades analògiques de la myRIO passen totes per un multiplexor la commutació del qual es gestiona des de l’aplicació externa. Per tant realment les entrades no s’estan llegint ni processant de forma paral·lela. Figura 10. Entrades analògiques myRIO1900 [7] D’altre banda, tot i la pèrdua de mostres per segon, aquest segon mètode és més exacte ja que no requereix de la assumpció d’exactitud del valor del corrent. És per aquest motiu que s’ha decidit desenvolupar ambdós mètodes per poder finalment escollir-ne el millor.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 21 Figura 11. Diagrama de blocs segona versió del sistema Així doncs el hardware consta de tres etapes diferenciades segons les seves funcionalitats: - Etapa de generació de senyals: Com es pot veure en el diagrama tant de la Figura 10 com de la Figura 11, hi ha un bloc implementat a LabView el qual està a càrrec de la generació del senyal de referència que utilitza el front-end per al càlcul de al impedància. - Etapa de processament: Aquesta segona etapa també esta inclosa dins la FPGA i s’encarrega de rebre els senyals i calcular les FFT. En funció de si s’està utilitzant la primera aproximació o la segona la FPGA automàticament llegeix la senyal d’una entrada o de dues en funció de les connexions de les que consti el sistema. Com es pot veure en el diagrama de blocs de la placa myRIO (Figura 6), aquesta conta d’un bloc MSP entrada/sortida. Per realitzar totes les transferències de senyals s’ha adjuntat una protoboard adaptada a les connexions de entrades i sortides de la placa. És en aquesta protoboard on s’ha implementat el divisor de tensió per condicionar el senyal de referència i des d’on es realitzen les connexions pertinents per llegir i transmetre senyals. - Recollida i mostra de dades: És la última etapa i està a càrrec de rebre els càlculs de la FPGA i extreure’n la impedància tot mostrant els resultat per pantalla. 2.3. Arquitectura del software S’ha decidit dividir aquest apartat en quatre subapartats, corresponents a les etapes descrites en el punt 2.2, ja que és on recau tot el pes del projecte. Un dels avantatges d’utilitzar LabView per a la programació de la FPGA és que la majoria de les funcions que es necessiten per acabar calculant la impedància (generació de senyals, càlcul de transformades, etc...) venen implementades en
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 22 llibreries o vi que proporciona LabView. Tot i així s’han inclòs elements per optimitzar el sistema els quals seran descrits a continuació. 2.3.1. Generació del senyal Un vi proporcionat per LabView s’utilitza com a generador del senyal de referència. Aquest mòdul permet configurar tant la resolució del senyal com l’amplitud o la freqüència per defecte, tot i que aquesta última és configurable des del panell de control que més endavant s’explicarà. Figura 12. LabView panell de configuració del generador de funcions Com es veu a la Figura 12 s’ha seleccionat una amplitud en bits de 2047 ja que la màxima resolució de la placa myRIO1900 en el ADC és de 12 bits, tenint en compte el 0 i la part negativa del senyal tenim una amplitud de 2047. Es pot observar un desplegable indicant 16 bits de resolució de amplitud, això és degut a que el panell de configuració està preparat per a altres models de placa. Cercant a les especificacions de la placa es troba que quan les sortides analògiques no arriben a la amplitud assignada adapten el nombre de bits segons la placa. El vi que genera el senyal queda doncs de la següent forma:
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 23 Figura 13. Vi encarregat de generar el senyal de referència Ja s’ha comentat que la freqüència és configurable per l’usuari, tal i com es pot veure de la Figura 13. El mòdul que es veu a la dreta de la figura especifica que el senyal s’emetrà per la sortida analògica 0 de la placa. Es considera necessari esmentar que una primera versió més àmplia del generador fou implementada en un inici. En aquesta primera versió es podia configurar el offset del senyal, la amplitud, la freqüència i el factor d’escala. Tot i ser una versió més rica fou descartada per problemes de falta de capacitat de processament i d’emmagatzematge en la placa. Amés, el que es necessita del senyal de referència és que no excedeixi certa amplitud i sigui el més net possible per tant era innecessari utilitzar aquesta primera versió. Per controlar que l’amplitud no excedeixi el màxim recomanat (2Vpp) s’ha mesurat l’amplitud en volts a la que es genera el senyal per defecte i posteriorment s’ha implementat un divisor de tensió adequant el senyal al front-end. 2.3.2. Processament dels senyals i càlcul de la FFT Per realitzar el càlcul de la FFT s’ha realitzat una recerca sobre quins són els mètodes més eficients alhora de realitzar dit càlcul. Finalment s’ha decidit implementar un protocol basat en handshaking anomenat “4 wire handshaking protocol”. És necessari utilitzar aquests tipus de protocols ja que, quan es programa una FPGA mitjançant LabView no es poden utilitzar els loops usuals, s’han d’utilitzar els anomenats timed loops en els quals se li especifica una freqüència de rellotge a assolir (en aquest cas a la que treballa la placa, 40 MHz). En els loops usuals de LabView, per cada iteració es retorna un valor en funció del que s’estigui calculant. El problema apareix en el cas dels timed loops ja que aquests necessiten més d’un cicle per retornar dades vàlides. Així doncs, per assegurar un cert nivell de robustesa en l’algoritme d’obtenció de la FFT s’ha d’assegurar que tots els nodes de sortida tenen dades vàlides. Es per això que s’utilitza un protocol basat en handshaking utilitzant tres FIFOs (una per la part real, una altre per la part imaginaria i una per la senyal) per tal de fer encara més eficient l’algoritme [10]. El protocol recentment descrit consisteix en esperar a tenir dades vàlides a les FIFOs de la part real, part imaginària i senyal alhora. En el moment en que les tres FIFOs són vàlides, es llegeixen els seus elements i s’envia un flag al vi encarregat de
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 24 calcular la FFT indicant que es pot realitzar un altre càlcul. L’únic a tenir en compte és assignar espai suficient a les FIFOs per no bloquejar el funcionament del sistema. D’aquesta manera ens assegurem que no perdem cap dada durant el procés de càlcul [10]. A la Figura 14 es pot veure el diagrama de flux del sistema descrit. Figura 14. Diagrama de flux del càlcul de la FFT Com ja s’ha explicat en l’apartat 2.2, dos versions diferents de software han estat implementades. Per a la versió 1 (assumint corrent constant per al front-end) només es calcula la FFT del senyal tensió per tant el diagrama de flux és el que es veu supra. En el cas de la versió 2 (no assumim corrent constant per al front-end) el diagrama de flux seria igual que el de la Figura 14 però realitzant un procés en paral·lel executant exactament el mateix procediment per al senyal corrent. Arribats a aquest punt la placa myRIO ja ha realitzat tots els càlculs necessaris per obtenir la impedància. Tots els valors obtinguts son transmesos a l’ordinador via USB. LabView proporciona mètodes per llegir des de l’ordinador els valors de les FIFOs de la FPGA mitjançant dit tipus de comunicació. Si Si Si No Si
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 25 2.3.3. Obtenció de la impedància i representació de les dades Per tal de comunicar-nos amb la FPGA de la placa hem de invocar un mètode anomenat “Open FPGA VI reference”. Aquest mètode simplement crea una referència cap a la FPGA del nostre projecte, lloc des del que ens arriben les dades. Un cop instanciada la FPGA s’han d’inicialitzar totes les FIFOs que es vulguin utilitzar tot configurant la capacitat d’aquestes. Un cop configurades les FIFOs s’inicialitza la FPGA. A la Figura 15 es pot veure un exemple a petita escala del procediment a seguir, depenent de la versió del sistema s’haurien de inicialitzar tres (en el cas de assumir corrent constant) o sis (eliminant la assumpció de corrent) FIFOs: Figura 15. Exemple d’inicialització de la FPGA del projecte La mida de la FIFO de la Figura 15 ha estat escollida a l’atzar degut al seu caràcter d’exemple. Un cop inicialitzada la FPGA, es configura la freqüència de mostreig i la freqüència de clock a la que volem que treballi la placa, per al projecte s’ha escollit la màxima freqüència (40MHz), tots aquests paràmetres s’envien a la FPGA mitjançant un mètode proporcionat per LabView anomenat “Read/Write control, dit mètode és específic per al treball amb FPGAs. Amés s’ha afegit un selector de freqüències (per la creació del senyal de referència) per tal de que l’usuari pugui escollir la freqüència desitjada. Aquest aspecte serà important alhora de trobar els valors màxims de les transformades. A la Figura 16 es pot observar tant la interfície d’usuari com els vi utilitzats per la configuració explicada. Figura 16. Interfície d’usuari i vi per la configuració dels paràmetres de funcionament de la FPGA
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 32 Els blocs de configuració dels senyals de la Figura 24 són idèntics als de la Figura 22, s’ha intentat poder configurar els mateixos paràmetres en les dues implementacions. No obstant això, la presentació de resultats s’ha modificat ja que, si es volguessin mostrar les mateixes dades que en l’apartat anterior necessitaríem el doble de gràfics. Com aquesta segona implementació ja tenia un cost de processament més elevat per defecte no té sentit afegir-hi un cost addicional alhora de mostrar resultats, és per això que s’han inclòs els tres gràfics que s’han considerat més importants: - Senyal tensió V: en aquest gràfic és on es veu el senyal tensió que ens arriba del front-end. - Senyal corrent V(I): igual que en el punt anterior, és on es visualitza el senyal corrent arribat del front-end. - Valor de la impedància: es pot veure els valors de les impedàncies calculades a la freqüència on s’estan calculant.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 33 3. Validació amb mesures experimentals Per tal de verificar el correcte funcionament del sistema s’han realitzat una sèrie de mesures amb la versió del sistema exposada en l’apartat 2.3.4.1 de l’actual memòria. S’ha escollit aquesta versió ja que, com s’ha anat exposant al llarg de la memòria, és la que pot assolir una velocitat de processament major, fet important a l’hora de realitzar mesures reals. S’han realitzat tres tipus d’experiments per verificar el funcionament del sistema. En el primer s’utilitza el front-end, explicat a l’apartat 2.1.2, per tal de verificar que el sistema pot mesurar impedàncies de valor nominal conegut. En el segon experiment s’ha utilitzat un material biològic (poma) per tal de simular l’evolució de la impedància en funció de la freqüència (apartat 1.2 . Finalment s’han realitzat mesures reals amb un voluntari per tal de comprovar el funcionament del sistema en casos reals. 3.1. Mesures amb front-end En aquest primer experiment simplement es volia comprovar que el sistema implementat fos capaç de realitzar una mesura d’impedància fiable. Es per això que s’ha fet ús del front-end utilitzant els següent valors resistius coneguts: 10Ω, 20 Ω, 30 Ω, 51 Ω, 82 Ω, 100 Ω, 200 Ω, 510 Ω, 820 Ω i 1k Ω. Per aquest experiment s’han utilitzat els dos sistemes implementats ja que, al no tractar-se d’un cas real sinó de mesures de comprovació no era necessària una elevada capacitat de processament. En els dos casos s’han realitzat les mesures de les resistències a una freqüència concreta i posteriorment a 500Hz, 1kHz, 10kHz i 30kHz per cada valor de resistència escollit.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 34 3.1.1. Mesures assumint corrent constant Figura 25. Resistència mesurada en funció del seu valor nominal assumint corrent constant per al front-end A la Figura 25 podem observar els valors de resistència escollits en funció dels mesurats amb el sistema. Els valors que trobem en el gràfic són els que s’exposen a la taula de continuació: R real (Ω) R mesurada a 1kHz (Ω) 10 10,39 20 20,72 30 29,95 51 51,67 82 82,82 100 100,26 200 203,27 510 511,9 820 820,67 1000 998,02 Taula 1. Valors resistiu real i valor resistiu mesurat a 1kHz assumint corrent constant circulant per al front-end A la Taula 1 es pot veure que l’error més elevat en la mesura és de 1.84% (valor obtingut als 200 Ω). Podem afirmar doncs que la exactitud d’aquest primer sistema alhora de realitzar la estimació de la mesura de resistències és prou acurada ja que s’han utilitzat resistències amb una tolerància del 5%. Com a segona prova s’han realitzat el mateix tipus de mesures però a diferents freqüències. El resultat és el que es pot veure a continuació:
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 35 Figura 26. Valor resistiu a diferents freqüències assumint corrent constant circulant per al front-end Com ja s’ha comentat, la placa de desenvolupament utilitzada durant el projecte no arriba a freqüències suficientment elevades per poder visualitzar el comportament de la impedància en funció de la freqüència. El comportament al que ens referim és el corresponent a una xarxa RC com la que és mostra a continuació: Figura 27. Xarxa RC equivalent al comportament d’un teixit biològic [3] Si es fa una simulació del circuit de la Figura 27 s’obtenen tres etapes. Una recta de pendent 0 en el punt R1+R2 per a freqüències baixes (com les que s’utilitzen amb la placa myRIO1900), una segona etapa en la qual hi ha una caiguda a raó de i finalment una tercera etapa amb una altre recta de pendent 0 però valor inicial R1. En la Figura 26 estaríem veient la primera de les etapes descrites. El sistema MyRio està limitat per hardware a una freqüència de tall de 50 kHz. Això impedeix monitoritzar relaxacions completes en el marge útil en la mesura d’impedància en teixits animals.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 36 3.1.2. Mesures sense assumir corrent constant Figura 28. Resistència mesurada en funció del seu valor nominal sense assumir corrent constant per al front-end Igual que en l’anterior apartat podem observar que les mesures són molt acurades amb el seu valor nominal. Els valors mesurats en funció dels reals són els següents: R real (Ω) R mesurada a 1kHz (Ω) 10 10,16 20 20,18 30 30,21 51 51,79 82 82,21 100 100,48 200 202,2 510 510,34 820 821,82 1000 995,15 Taula 2. Valors resistiu real i valor resistiu mesurat a 1kHz sense assumir corrent constant circulant per al front-end En aquest segon cas podem veure que l’error més gran registrat és de 1.1% i es troba un altre cop en els 200Ω. És un error inferior respecte al sistema que assumeix corrent constant, tot i que dins d’aquest marge d’error no és excessivament rellevant. Realitzant la mateixa mesura però a diferents freqüències obtenim:
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 37 Figura 29. Valor resistiu a diferents freqüències assumint corrent constant circulant per al front-end En aquest cas si que es podria començar a visualitzar de forma molt tímida l’efecte descrit en l’apartat anterior. Tot i així, el front-end que s’utilitza està sobredimensionat per la realització d’aquests experiments a les freqüències que ens permet treballar la myRIO1900. 3.2. Mesures amb materials biològics Com s’ha explicat anteriorment, el segon experiment realitzat s’ha dut a terme utilitzant un material biològic. El material utilitzat ha estat una poma ja que, per el rang de freqüències del que disposem, es pot apreciar l’efecte descrit a l’apartat anterior (3.1.1). Per veure dit efecte s’han realitzat mesures a les freqüències de 1kHz, 10kHz i 30kHz. Tot fent la mitjana dels valors obtinguts per cada freqüència obtenim l’efecte desitjat: Figura 30. Mòdul de la impedància a diferents freqüències d’una poma
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 38 A la Figura 30 es pot veure com efectivament el sistema es comporta com la xarxa RC abans esmentada. El valor a baixes freqüències és més elevat que a altes freqüències. D’altre banda, a freqüències mitges es pot observar una caiguda la qual seria, seguint el model de l’apartat 3.1.1, com una resposta passa-baixes per a la impedància amb una freqüència de tall 1/2πRC. La configuració del front-end per la realització de les mesures ha estat la següent: Figura 31. Connexió del Front-end per a la mesura d’impedància d’una poma 3.3. Mesures en el cos humà Finalment s’han realitzat mesures sobre un subjecte. S’han realitzat dos tipus d’experiments per tal de veure com respon el sistema davant de casos reals. El primer ha consistit en mesurar la impedància del braç del subjecte quan aquest té el braç relaxat, de sobte es contrau el múscul durant un petit període de temps per, finalment, tornar a relaxar-lo de nou. Teòricament, quan un múscul està relaxat la impedància d’aquest és menor que quan està en tensió. Els quatre elèctrodes emprats per obtenir les mostres d’aquest experiment estan disposats en el mateix braç tal i com mostra la següent imatge:
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 39 Figura 32. Disposició dels elèctrodes al braç per mesurar la impedància del múscul Els resultats obtinguts d’aquest experiment són els següents: Figura 33. Mesures del múscul a 30 kHz en estat de relaxació i tensió Com es veu a la figura les mesures corresponen amb el comportament esperat tot augmentant el valor de la impedància quan el múscul està contret i disminuintlo quan està en repòs.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 40 Finalment s’han posat dos elèctrodes a cada braç del subjecte per tal de mesurar la impedància a través del tòrax. Aquesta mesura resulta interessant ja que permet visualitzar els efectes produïts per la respiració i els batecs del cor en la mesura de la impedància. Per realitzar la prova s’han establert dos etapes: en la primera el subjecte respira de normalment i en la segona es realitza una apnea per tal de visualitzar l’efecte dels pulmons en la mesura de la impedància. Els resultats obtinguts es veuen a la figura de continuació: Figura 34. Mesures d’impedància a través del tòrax del subjecte A la Figura es pot veure l’efecte dels batecs del cor juntament amb el dels pulmons durant la primera etapa de respiració. En la segona etapa només es pot apreciar l’efecte del cor ja que el subjecte no està respirant.
Disseny i implementació d’un sistema d’EIS basat en FPGA programada des de LabView 41 4. Conclusions i treball futur 4.1. Conclusions En aquest projecte s’ha dissenyat i avaluat el rendiment del software d’un analitzador d’espectres d’impedància per a aplicacions d’espectroscòpia de sistemes biològics. A més s’ha caracteritzat el conjunt del sistema descrit en la memòria. El conjunt del sistema està controlat per una Field Programmable Gate Array (FPGA), inclosa en la placa de desenvolupament myRIO1900, des d’on s’ha realitzat la generació dels senyals i el càlcul de les FFT per obtenir els espectres d’impedància, tot programat des del software de LabView. Aquesta placa inclou els convertidors AD/DA per la generació i adquisició dels senyals. La comunicació entra la placa i l’ordinador es realitza mitjançant un protocol USB permetent-nos una transferència d’espectres de fins a 50 espectres per segon. Per últim s’ha implementat un software de control també en LabView però a l’ordinador des d’on es gestiona el funcionament del sistema. Pel que fa als resultats, el sistema permet realitzar mesures d’impedància en un rang de freqüències entre 100Hz i 50kHz amb una velocitat d’adquisició d’espectres de fins a 50 espectres per segon. 4.2. Treball futur De cara al treball futur contemplaria els següents aspectes fonamentals de cara a la millora del funcionament del sistema: - Dissenyar i implementar un mode multifreqüència del sistema. - Implementar el sistema descrit en la memòria a una placa amb més capacitat de processament ja que la myRIO1900 està molt limitada en aquest aspecte. - Millorar el software de control per tal de poder guardar les dades rebudes de forma més eficient. - Millorar la generació del senyal de referència permetent a l’usuari configurar més paràmetres d’aquesta.