ARTERIORITMÓMETRO MA. GABRIELA ABIGAIL GARCÍA SÁNCHEZ Universidad Tecnológica de Querétaro UNIVERSIDAD TECNOLÓGICA DE QUERÉTARO ARTERIORITMÓMETRO Memoria Que como parte de los requisitos para obtener el titulo de Ingeniero en Tecnologías de Automatización __________________ Presentan _______________________ Ma. Gabriela Abigail García Sánchez Oscar Verdi Osornio Felipe Aguilar Pereyra 2011 Firmado digitalmente por Universidad Tecnológica de Querétaro Nombre de reconocimiento (DN): cn=Universidad Tecnológica de Querétaro, o=Universidad Tecnológica de Querétaro, ou, email=webmaster@uteq.edu.mx, c=MX Fecha: 2011.05.03 15:48:46 -05'00' Jesús Bustillos Cepeda Querétaro, Qro., 20 de Abril de 2011. Querétaro, Qro. , a 20 de Abril de 2011. . C.MARIA GABRIELA ABIGAIL GARCIA SÁNCHEZ Candidato al grado de Ingeniería En Tecnologías de la Automatización Presente Matrícula: 2005305056 AUTORIZACIÓN DE PRESENTACIÓN DE MEMORIA El que suscribe, por medio del presente le informa a Usted, que se le autoriza la presentación de su memoria de la Estadía profesional, titulada: “ARTERIORITMÓMETRO”, realizado en la empresa HemoDinamics S.A. de C.V. Trabajo que fue revisado y aprobado por el Comité de Asesores, integrado por: ________________________ ________________________ Jesús Bustillos Cepeda Felipe Aguilar Pereyra Se hace constar el NO adeudo de materiales en las siguientes áreas. ________________________ _______________________ ________________________ Lab. de Tecnología Biblioteca UTEQ Lab. Informática Atentamente ______________________________ Director de la División C.c.p. <<Nombre>>.- Subdirector de Servicios Escolares Archivo Querétaro, Qro. , a 20 de Abril de 2011. . C. OSCAR VERDI OSORNIO Candidato al grado de Ingeniería enTecnologías de laAutomatización Presente Matrícula: 2011134002 AUTORIZACIÓN DE PRESENTACIÓN DE MEMORIA El que suscribe, por medio del presente le informa a Usted, que se le autoriza la presentación de su memoria de la Estadía profesional, titulada: “ARTERIORITMÓMETRO”, realizado en la empresa HemoDinamics S.A. de C.V. Trabajo que fue revisado y aprobado por el Comité de Asesores, integrado por: ________________________ ________________________ Jesús Bustillos Cepeda Felipe Aguilar Pereyra Se hace constar el NO adeudo de materiales en las siguientes áreas. ________________________ _______________________ ________________________ Lab. de Tecnología Biblioteca UTEQ Lab. Informática Atentamente ______________________________ Director de la División C.c.p. <<Nombre>>.- Subdirector de Servicios Escolares Archivo Resumen En este reporte se expone el desarrollo de un prototipo de “Arterioritmometro”, que es un aparato capaz de medir el ritmo arterial, la duración de ciclos y de cada una de las fases, así como la detección de arritmias en los casos en que se presentase alguna. El desarrollo de este prototipo está basado en cuatro puntos clave: el sensor, el procesador de señales, la plataforma de programación y la interfaz con el usuario. En cuanto al sensor, se trabajó con un Doppler de 8MHz, para el procesamiento de señales se tomo como base un DSP, para la programación se utilizó como plataforma de desarrollo LabVIEW 8.6 complementado con un módulo de programación DSP y con respecto a la interfaz para el despliegue de la información, se escogió una pantalla táctil de 4.3’’. En la programación se comenzó con la simulación de la separación de cada uno de los ciclos y sus fases, para separación se utilizaron algunas herramientas de tratamiento de señales y estadísticas, también se utilizaron módulos de LabVIEW para la medición del tiempo de los ciclos y de las fases, estos valores se grafican en una tabla de Excel con el fin de estudiar los valores de cada paciente. Abstract This report describes the develop of a prototype named "Arterioritmómetro" ,which is a device able of measuring the artery´s rhythm, cycle times and each one of the phases of the cycles, as well as the detection of arrhythmias in cases that it appear. The development of this prototype is based on four key points: the sensor, the signal processor, the software platform and the user interface. Respecting to the sensor, it was an 8MHz Doppler, the signal processor is based on a DSP, LabVIEW 8.6 was used for the programming as a development platform added with DSP programming module and in order to the user interface a 4.3” touch screen was selected. The programming was started with a simulation of the separation of each cycles and it phases, to separate them were used some statistics and signal processing tools, were also used LabVIEW modules for the measurement of cycle and phases times , these values are plotted in an Excel table in order to study the values of each patient. Dedicatorias A nuestros padres, que siempre me nos han dado su apoyo incondicional y a quienes debemos este triunfo profesional, por todo su trabajo y dedicación para darnos una formación académica, humanista y espiritual. De ellos es este triunfo y para ellos es todo nuestro agradecimiento. A nuestros hermanos y amigos, todas aquellas personas que han sido importantes para nosotros durante todo este tiempo. A todos nuestros maestros que nos enseñaron más que el saber científico, gracias. Agradecimientos Gracias a la empresa HemoDinamics, en especial al doctor Jesús Bustillos Cepeda por mantener el impulso innovador a través del apoyo a estudiantes, a nuestra casa de estudios la UTEQ y a los profesores involucrados en el proyecto, por brindarnos su tiempo, conocimientos y orientación. Índice Páginas Resumen. IV Abstract. V Dedicatorias. VI Agradecimientos. VI Índice. VII I. Introducción. X II. Antecedentes. XI III. Justificación. XI IV. Objetivos. XII V. Alcances. XII VI. Justificación Teórica. XV 6.1. El Aparato Cardiovascular. 16 6.2. La Sangre. 16 6.3. Frecuencia Cardiaca. 19 6.4. Ritmo Cardiaco. 20 6.5. Ciclo Cardiaco. 21 6.5.1. Periodo de Latido. 6.6. Presión Arterial. 22 22 6.7. Ciclo Arterial. 23 6.8. Efecto Doppler. 24 6.9. Sensor. 26 6.9.1. Características de un Sensor. 27 6.9.2. Tipos y Ejemplos de Sensores. 28 6.10. Sensor Doppler. 28 6.11. DSP. 33 6.11.1. Aplicaciones de los DSP. 36 6.11.2. Características de los DSP. 38 6.11.2.1. Formato Aritmético. 38 6.11.2.2. Ancho de Palabra. 41 6.11.2.3. Velocidad de Procesamiento. 43 6.11.2.4. Organización de la Memoria. 45 6.11.2.5. Segmentación. 47 6.11.2.6. Consumo. 50 6.11.2.7. Costo. 50 6.11.3. Programación de DSP. 6.12. LabVIEW. 6.12.1. Módulo LabVIEW DSP. 6.13. Pantalla LCD Táctil. 51 52 55 57 6.13.1. Características. 57 6.13.2. Especificaciones. 60 6.13.3. Pantallas Capacitivas. 65 6.13.4. Pantallas Resistivas. 66 6.14. USB. 67 6.14.1. Características del USB. 68 6.14.2. Descripción del sistema USB. 69 VII. Plan De Actividades. LXX 7.1. Cronograma de Actividades. 72 7.2. Diagrama de Gantt. 74 VIII. Recursos Materiales Y Humano. LXXV 8.1. Recursos materiales. 75 8.2 Recursos humanos. 76 IX. Desarrollo Del Proyecto. LXXVII 9.1 Planteamiento del proyecto. 77 9.2 Reconocimiento del proyecto. 78 9.3 Selección de material. 79 9.3.1 Procesador digital de señales. 79 9.3.1.1 SPEEDY-33. 79 9.3.1.2 TMS320C6711 DSK. 80 9.3.1.3 TMS320C6713 DSK. 80 9.3.1.4 TMS320C6416 DSK. 81 9.3.2 Pantalla. 9.3.2.1 Pantalla eDIPTFT43. 82 82 9.3.3 Software. 83 9.3.3.1 LabVIEW. 83 9.3.3.2 Matlab. 84 9.4 Programación en LabVIEW. 84 9.4.1 Lectura de archivo .WAV. 87 9.4.2 Gráfica de frecuencias. 87 9.4.3 Detección de sístole. 90 9.4.3.1 Adquisición de tiempos. 93 9.4.4 Separación sístole. 94 9.4.5 Obtención de estadística. 95 9.4.6 Gráfica circular. 97 9.4.7 Registro de datos. 102 9.4.8 Detección del flujo diastólico. 105 9.4.9 Selección de rangos. 106 X. Resultados Obtenidos. CV XI. Análisis de Riesgos. CVIII XII. Conclusiones. CVIII XIII. Recomendaciones. CIX XIV. Referencias Bibliográficas. CX I. Introducción HemoDinamics es una empresa dedicada a la investigación y fabricación de aparatos médicos, una de sus investigaciones principales es la de la medición del ritmo arterial. Gracias a esta investigación se descubrió que no habían aparatos que midieran los de tiempos de los ciclos y de las fases de la arterias por lo que la empresa comenzaron con el desarrollo de un prototipo que pudiera obtener los datos de arteria. Se investigó que sensor era el más adecuado para esta medición, decidiendo utilizar dos sensores: un sensor de presión y un sensor Doppler. El primer prototipo solo obtiene la señal de la arteria en formato de sonido y mide los eventos arrítmicos que ocurren en la arteria, este puede utilizar un sensor de presión o el sensor Doppler. Debido a que este primer prototipo no media aun el ritmo de las fases y los ciclos se decide desarrollar un segundo prototipo con la cooperación de la Universidad Tecnológica de Querétaro este mediría el ritmo arterial, tiempo de ciclos indicando también las arritmias ocurridas, tiempo de fase sistólica, tiempo de fases diastólica. II. Antecedentes Los investigadores de la empresa HemoDinamics descubrieron una laguna científica en el campo de la presión arterial, se dice que desde 1905 no se había realizado modificaciones a la determinación de la presión arterial. En cuanto a la presión diastólica, esta no se medía con ningún instrumento electrónico, por lo que se desarrolló el método BEM (Bases Hemodinámicas de México) en el cual se establecen los principios físicos básicos para la determinación de la presión arterial menor. III. Justificación El proyecto se desarrollo con base en la solicitud de vinculación en el proyecto de investigación “Arterioritmómetro” que la empresa HemoDinamics S.A. de C.V. (denominada a lo largo de este documento como HD) hizo a la Universidad Tecnológica de Querétaro (Denominada a lo largo de este documento como UTEQ), enumerando la lista de requerimientos presentados por la misma para el diseño de un sistema médico de sensores de presión y sonido que internamente se ha denominado Arterioritmómetro. Dejando como antecedente que HD ya cuenta con un prototipo funcional del sistema llamado “Cardioritmómetro” configurado por una serie de módulos obtenidos de otros productos electrónicos ya existentes en el mercado, y con el cual HD intentó generar el producto que es objeto de este documento. IV. Objetivos Desarrollo de un prototipo que realice la función de monitorear y mostrar en una pantalla electrónica las siguientes variables: • Frecuencia cardiaca (medido en ciclos por minuto por método indirecto). • Frecuencia de ciclo arterial. • Ritmo Cardiaco y arritmias (ambos expresado en un numero de eventos). V. Alcances El sistema que desarrollara HD y UTEQ será capaz de medir, analizar y presentar al usuario las siguientes variables: • Frecuencia cardiaca (medido en ciclos por minuto por método indirecto). Frecuencia de ciclo arterial. • Ritmo Cardiaco el cual se define como el periodo de tiempo en que sucede un evento arterial o ciclo arterial o ciclo cardiaco en un rango de tiempo determinado en una cantidad de ciclos por unidad de tiempo. • Arritmia se define como la cantidad de ciclos que varían en el tiempo con respecto a la moda de una frecuencia determinada. Con respecto al periodo sistólico y diastólico de la frecuencia de ciclos expresada en ciclos arteriales o latidos por minuto: • Eventos con menor duración que la normal con respecto a la edad (bradicardias). • Eventos con duración normal con respecto a la edad (normocardias). • Eventos con mayor duración que la normal con respecto a la edad (taquicardias). • Índice de variación de tiempo sistólico y diastólico con respecto a la moda de una frecuencia dada. Estará basado en el LABVIEW DSP module, programado en un DSP que cubra los requerimientos, además contará con tecnología de montaje superficial en la mayoría de sus componentes. El diseño del sistema tendrá las características de prototipo, desarrollado con las tecnologías más recientes acordes a los requerimientos. Los tiempos definidos en el cronograma son estipulados tomando en cuenta que HD proveerá la información y la retroalimentación en tiempos adecuados. Se insumirán 480 horas de ingeniería, para la totalidad del proyecto. VI. Justificación Teórica 6.1 El Aparato Cardiovascular El corazón y el aparato circulatorio componen el aparato cardiovascular. El corazón actúa como una bomba que impulsa la sangre hacia los órganos, tejidos y células del organismo. La sangre suministra oxígeno y nutrientes a cada célula y recoge el dióxido de carbono y las sustancias de desecho producidas por esas células. La sangre es transportada desde el corazón al resto del cuerpo por medio de una red compleja de arterias, arteriolas y capilares y regresa al corazón por las vénulas y venas. Si se unieran todos los vasos de esta extensa red y se colocaran en línea recta, cubrirían una distancia de 60.000 millas (más de 96.500 kilómetros), lo suficiente como para circundar la tierra más de dos veces. El aparato circulatorio unidireccional transporta sangre a todas las partes del cuerpo. Este movimiento de la sangre dentro del cuerpo se denomina «circulación». Las arterias transportan sangre rica en oxígeno del corazón y las venas transportan sangre pobre en oxígeno al corazón. En la circulación pulmonar, sin embargo, los papeles se invierten. La arteria pulmonar es la que transporta sangre pobre en oxígeno a los pulmones y la vena pulmonar la que transporta sangre rica en oxígeno al corazón. En la figura 6.1, los vasos que transportan sangre rica en oxígeno aparecen en rojo y los que transportan sangre pobre en oxígeno aparecen en azul. Veinte arterias importantes atraviesan los tejidos del organismo donde se ramifican en vasos más pequeños denominados “arteriolas”. Las arteriolas, a su vez, se ramifican en capilares que son los vasos encargados de suministrar oxígeno y nutrientes a las células. La mayoría de los capilares son más delgados que un pelo. Muchos de ellos son tan delgados que sólo permiten el paso de una célula sanguínea a la vez. Después de suministrar oxígeno y nutrientes y de recoger dióxido de carbono y otras sustancias de desecho, los capilares conducen la sangre a vasos más anchos denominados “vénulas”. Las vénulas se unen para formar venas, las cuales transportan la sangre nuevamente al corazón para oxigenarla.1 Figura 6.1 Sistema cardiovascular humano. 6.2 La Sangre La sangre es el fluido que circula por todo el organismo a través del sistema circulatorio, formado por el corazón y un sistema de tubos o vasos. La sangre describe 1 TEXAS HEART INSTITUT, Centro de información cardiovascular. (Julio 2010). Disponible en: http://www.texasheart.org/hic/anatomy_esp/anat1_sp.cfm dos circuitos complementarios llamados circulación mayor o general y menor o pulmonar. La sangre es un tejido líquido, compuesto por agua y sustancias orgánicas e inorgánicas (sales minerales) disueltas, que forman el plasma sanguíneo y tres tipos de elementos formes o células sanguíneas: glóbulos rojos, glóbulos blancos y plaquetas. Una gota de sangre contiene aproximadamente unos 5 millones de glóbulos rojos, de 5.000 a 10.000 glóbulos blancos y alrededor de 250.000 plaquetas. El plasma sanguíneo es la parte líquida de la sangre. Es salado, de color amarillento como se puede ver en la figura 6.2 y en él flotan los demás componentes de la sangre, también lleva los alimentos y las sustancias de desecho recogidas de las células. El plasma cuando se coagula la sangre, origina el suero sanguíneo. Los glóbulos rojos, también denominados eritrocitos o hematíes, se encargan de la distribución del oxígeno molecular (O2). Tienen forma de disco bicóncavo y son tan pequeños que en cada milímetro cúbico hay cuatro a cinco millones, midiendo unas siete micras de diámetro. No tienen núcleo, por lo que se consideran células muertas. Los hematíes tienen un pigmento rojizo llamado hemoglobina que les sirve para transportar el oxígeno desde los pulmones a las células. Una insuficiente fabricación de hemoglobina o de glóbulos rojos por parte del organismo, da lugar a una anemia, de etiología variable, pues puede deberse a un déficit nutricional, a un defecto genético o a diversas causas más. Figura 6.2 Composición de la sangre. Los glóbulos blancos o leucocitos tienen una destacada función en el Sistema Inmunológico al efectuar trabajos de limpieza (fagocitos) y defensa (linfocitos). Son mayores que los hematíes, pero menos numerosos (unos siete mil por milímetro cúbico), son células vivas que se trasladan, se sa salen len de los capilares y se dedican a destruir los microbios y las células muertas que encuentran por el organismo. También producen anticuerpos que neutralizan los microbios que producen las enfermedades infecciosas. Las plaquetas son fragmentos de células muy pequeños, sirven para taponar las heridas y evitar hemorragias.2 6.3 Frecuencia Cardiaca En general podemos definir que la frecuencia cardiaca: “Es el número de veces que el corazón late por minuto”, como lo describe en la figura 6.3. La frecuencia cardiaca se divide en Bradicárdica, Normocárdica y Taquicárdica. La Bradicárdica es aquella frecuencia cardiaca cuyo valor está por debajo del rango establecido como punto de referencia de acuerdo a la edad de la persona. La Normocárdica es aquella frecuencia cardiaca cuyo valor se encuentra dentro de rango establecido como punto de referencia de acuerdo a la edad de la persona. La Taquicárdica es aquella frecuencia cardiaca cuyo valor está por encima del rango establecido como punto de referencia de acuerdo a la edad de la persona. 2 Pontificia Universidad de Valparaíso, Aula virtual del laboratorio de anatomía humana. Disponible en: http://www.anatomiahumana.ucv.cl/efi/modulo24.html Figura 6.3.Frecuencia cardiaca. 6.4 Ritmo Cardiaco Es el resultado de la observación sonora o gráfica de la descomposición de una frecuencia cardiaca determinada, en unidades llamadas período de latido, para observar el porcentaje de suma o diferencia al valor del índice que se ha pactado como referencia a la unidad de período establecido. En la figura 6.4 se observa una gráfica de respuesta cardiaca arrítmica. Figura 6.4. Respuesta arrítmica cardiaca. 6.5 Ciclo Cardiaco Es la actividad mecánica consistente en periodo de contracción (sístole con una duración promedio de 0.22 segundos) y periodo de relajación (diástole con una duración promedio de 0.58 segundos), con una duración total promedio de 0.8 segundos. En la figura 6.5 se puede observar la división de la señal cardiaca en un ciclo cardiaco. Figura 6.5.Ciclo cardiaco. 6.5.1Período de latido. Es el tiempo que transcurre desde el inicio hasta el final de un ciclo cardiaco.3 6.6 Presión Arterial La presión arterial sanguínea es “la variación de fuerza que ejerce la sangre sobre la pared de las arterias” como se muestra en la figura 6.6. La magnitud de la presión arterial es dividida en presión sistólica y diastólica, recibe su nombre en función de las fases sistólica y diastólica del ciclo cardiaco, en dichas fases la presión arterial sistólica es la presión mayor de las dos y tiene flujo sanguíneo en toda la fase; la presión arterial diastólica corresponde a la presión menor de las dos fases y su flujo sanguíneo no siempre dura el total del tiempo diastólico del ciclo cardiaco. Figura 6.6.Presión arterial. 3 Bustillos Cepeda, Jesús. (2010). Ciclo Arterial. Tesis de Maestría.Hospital General de Tampico. Tampico, México. Un problema que durante más de 100 años ha acompañado a la medición de la presión arterial, es “el medir la presión diastólica indirecta por los efectos de la presión sistólica”. Este método fue diseñado por el médico Ruso Nikolai Sergeyevich Korotkoff quien presentó su tesis doctoral en la Academia Imperial de Medicina Militar de San Petersburgo en 1905, con el título “Sobre la cuestión de los métodos para medir la presión sanguínea”. Es importante mencionar que este método ha sido cuestionado desde hace muchos años pues el método de observación utiliza un instrumento que data de más de medio siglo. En 1957 Satomura aplicó el principio del Doppler para el diagnostico de anormalidades cardiovasculares. En 1967, Kemmerer por su parte encuentra, que la presión arterial sistólica obtenida por el Doppler se correlaciona bien con las mediciones directas.4 6.7 Ciclo Arterial Es la unidad de variación física repetitiva de la arteria en función del tiempo, compuesta por los eventos del flujo sanguíneo y pared arterial en un periodo de mayor movimiento sanguíneo llamado sistólico y un periodo de tiempo con menor movimiento sanguíneo llamado diastólico. 4 MEDILINE PLUS. (2010). Disponible en :http://www.nlm.nih.gov/medlineplus/spanish/ency/ esp_imagepages/9124.htm Un ciclo arterial está compuesto por la fase sistólica y la fase diastólica del movimiento de la sangre. La fase sistólica forma un solo paquete hemodinámico dependiente de la energía potencial elástica de la arteria y se caracteriza por incremento del movimiento sanguíneo en corto tiempo hasta la máxima magnitud del ciclo arterial y se sostiene el movimiento máximo en un corto tiempo y desciende en un tiempo más largo que el que ocupó en el ascenso. La fase diastólica comprende mayor tiempo en el ciclo arterial y tiene menor magnitud que la fase sistólica, presenta uno o varios paquetes hemodinámico dependiendo de la energía potencial elástica de la arteria y en caso de que el segmento manifieste su ciclo con varios paquetes estos están separados por pequeños periodos de señales de muy baja amplitud (que pueden ser momentos de ausencia de movimiento sanguíneo). 6.8 Efecto Doppler Con el término de "efecto Doppler" se entiende el fenómeno físico, por el cual la frecuencia de la onda ultrasónica, que encuentra un objeto en movimiento, genera una onda con una variación de frecuencia directamente proporcional a la velocidad del objeto que se mueve como se observa en la figura 6.7. El fenómeno fue descrito y explicado teóricamente en forma clásica (no relativista) por el físico y matemático austríaco Christian Doppler (1803-1853) en el año 1842, en una monografía sobre espectroscopia en estrellas binarias. La ley original obtenida relaciona la frecuencia de una onda luminosa con la velocidad relativa entre el observador y la fuente de las ondas, y no es consistente con la teoría de relatividad (desarrollada posteriormente) pues se fundamenta en las Transformaciones de Galileo. La formulación relativista rigurosa del fenómeno fue elaborada por Einstein en su principal publicación de 1905. El efecto es de naturaleza ondulatoria y su estudio aparentemente resulta complejo en virtud de que intervienen tres actores: la fuente de ondas, la onda que se propaga y el observador. Sin embargo, veremos que el fenómeno puede ser explicado como un efecto relativista sobre la propagación ondulatoria. El efecto Doppler transversal se denomina como el cambio de frecuencia de una onda que ocurre cuando la fuente de ondas se mueve en dirección transversal a la recta que une la fuente y el observador. Este efecto, predicho por Einstein, fue detectado experimentalmente en 1938. La explicación relativista es muy simple: la fuente que se mueve transversalmente está sujeta a la “dilatación temporal”, por lo cual su frecuencia se modifica de acuerdo a la última relación vista y coincide con la frecuencia de la onda medida debido a que la fuente no se aleja ni se acerca del observador. Este planteo último y el tratamiento anterior pueden inducir al error de creer que el efecto Doppler tangencial y transversal son dos fenómenos distintos, cuando en realidad se trata de un único efecto: el cambio de frecuencia de una onda debido al movimiento relativo entre la fuente y el observador.5 Figura 6.7.Efecto Doppler. 6.9. Sensor Un sensor es un dispositivo capaz de detectar magnitudes físicas o químicas, llamadas variables de instrumentación, y transformarlas en variables eléctricas. Pueden ser de indicación directa o pueden estar conectados a un indicador (posiblemente a través de un convertidor analógico a digital, un computador y un display) de modo que los valores censados puedan ser leídos por un humano. 5 Fernández, Hugo. (2006).Teoría de la relatividad especial, Cinemática relativista. [Revista electrónica]. Disponible en: http://www.fisica-relatividad.com.ar/ sistemas-inerciales/cinematica-relativista. 6.9.1 Características de un sensor. Entre las características técnicas de un sensor destacan las siguientes: • Rango de medida: dominio en la magnitud medida en el que puede aplicarse el sensor. • Precisión: es el error de medida máximo esperado. • Offset o desviación de cero: valor de la variable de salida cuando la variable de entrada es nula. Si el rango de medida no llega a valores nulos de la variable de entrada, habitualmente se establece otro punto de referencia para definir el offset. • Linealidad o correlación lineal. • Sensibilidad de un sensor: relación entre la variación de la magnitud de salida y la variación de la magnitud de entrada. • Resolución: mínima variación de la magnitud de entrada que puede apreciarse a la salida. • Rapidez de respuesta: puede ser un tiempo fijo o depender de cuánto varíe la magnitud a medir. Depende de la capacidad del sistema para seguir las variaciones de la magnitud de entrada. • Derivas: son otras magnitudes, aparte de la medida como magnitud de entrada, que influyen en la variable de salida. Por ejemplo, pueden ser condiciones ambientales, como la humedad, la temperatura u otras como el envejecimiento (oxidación, desgaste, etc.) del sensor. • Repetitividad: error esperado al repetir varias veces la misma medida.6 6.9.2 Tipos y ejemplos de sensores electrónicos. En la tabla 6.1 se muestra la clasificación de algunos sensores en base a la magnitud que miden. Algunas magnitudes pueden calcularse mediante la medición y cálculo de otras, por ejemplo, la velocidad de un móvil puede calcularse a partir de la integración numérica de su aceleración. La masa de un objeto puede conocerse mediante la fuerza gravitatoria que se ejerce sobre él en comparación con la fuerza gravitatoria ejercida sobre un objeto de masa conocida (patrón).7 6.10 Sensor Doppler El uso médico de la técnica del Doppler fue sugerido, en 1968, por Stegall. La técnica está basada en el principio de Doppler, esto es, el cambio de frecuencia que experimenta una onda de ultrasonido al ser reflejada por los corpúsculos que se desplazan dentro del vaso sanguíneo. 6 Molina Marticorena, José Luis. (2002). Tecnología: Sensores y Transductores. [Revista electrónica]. Disponible en: http://www.profesormolina.com.ar/tecnologia/sens_transduct/tipos.htm 7 Carletti, Eduardo. (2008). Robots, Sensores y Conceptos.[Revista electrónica]. Disponible en: http://robots-argentina.com.ar/Sensores_general.htm Magnitud Transductor Característica Potenciómetro Analógica Encoder Digital Transformador diferencial de variación lineal Analógica Galga extensiométrica Analógica Magnetoestrictivos A/D Desplazamiento y deformación Magnetorresistivos Analógica LVDT Analógica Dinamo tacométrica Analógica Encoder Digital Detector inductivo Digital Velocidad lineal y angular Servo-inclinómetros A/D RVDT Analógica Giróscopo Acelerómetro Analógico Aceleración Servo-accelerómetros Galga extensiométrica Analógico Fuerza y par (deformación) Triaxiales A/D Membranas Analógica Piezoeléctricos Analógica Presión Manómetros Digitales Digital Turbina Analógica Caudal Magnético Analógica Termopar Analógica RTD Analógica Termistor NTC Analógica Temperatura Termistor PTC Analógica Bimetal I/0 Inductivos I/0 Capacitivos I/0 Sensores de presencia Ópticos I/0 y Analógica Matriz de contactos I/0 Sensores táctiles Piel artificial Analógica Cámaras de video Procesamiento digital Visión artificial Cámaras CCD o CMOS Procesamiento digital Sensor final de carrera Sensor capacitivo Sensor de proximidad Sensor inductivo Sensor fotoeléctrico Micrófono Sensor acústico (presión sonora) Fotodiodo Fotorresistencia Sensor de luz Fototransistor Célula fotoeléctrica Posición lineal o angular Tabla 6.1.Tipos de sensores Los sistemas basados en efecto Doppler se basan en que un cristal de cuarzo se excita con una frecuencia determinada de varios Mega Hertz, el transductor se acopla para explorar el caso, atravesándolo mediante un haz de frecuencia f0. Una pequeña parte de la energía del haz se dispersa y refleja, por el movimiento de las células de sangre. El haz es recibido por un segundo transductor situado en oposición al primero. La señal reflejada por las células ha variado su frecuencia, según el efecto Doppler una cantidad fd recibiéndose con una frecuencia igual a fr=f0+fd. La fd, la frecuencia Doppler se encuentra para velocidades normales de sangre en el rango de las frecuencias bajas audibles, y está relacionada con la velocidad de flujo y la frecuencia de emisión; además tiene forma de ruido de banda estrecha. Existen varios sistemas Doppler que se diferencian en el tipo de energía de onda ultrasónica emitida: continua o pulsada. En el caso de la aplicación clínica del Doppler, el objeto al cual se le analiza la velocidad de movimiento está representado por los hematíes. En la figura 6.8 se muestra la ecuación en la que se basa este fenómeno: En la figura 6.9. la onda incidente (Fi) y la reflejada (Fr) generan una variación de frecuencia (DF), que es proporcional a la velocidad (V) de los hematíes y al coseno del ángulo (a) formado entre el haz ultrasónico y la dirección del flujo. Figura 6.8.8 Fórmula del efecto Doppler. Figura 6.9.Efecto Doppler en la sangre. El primer aparato de tipo Doppler dúplex fue utilizado con la finalidad de valorar el flujo sanguíneo en las cavidades cardíacas y en los vasos carotideos. Con posterioridad se han desarrollado equipos que permiten analizar de modo óptimo flujos sanguíneos de elevada velocidad y alto volumen. A nivel abdominal, existe una 8 Martín Fernández, Martín. Martín.(Abril 2002).Contribuciones al análisis automático y semiautomático semia de ecografía fetal tridimensional mediante campos aleatorios de Markov y contornos activos. Ayudas al diagnóstico precoz de malformaciones. Tesis de maestría. Disponible en: http://www.lpi.tel.uva.es/ ~nacho/docencia/ing_ond_1/trabajos_04_05/io2/public_html/5Aplicaciones_diagnostico_3.htm particularidad; es preciso estudiar vasos pequeños con flujo lento lo que obliga a utilizar aparatos de elevada sensibilidad para conseguir una señal Doppler adecuada. Cuando se realiza un examen Doppler vemos que a las diferentes velocidades de la sangre existentes en el interior del campo explorado, le corresponden múltiples frecuencias. Al conjunto de estas múltiples y variadas frecuencias se denomina espectro. El análisis de la amplitud del espectro permite caracterizar al flujo en laminar o turbulento así como identificar sutiles aumentos de la velocidad, en el caso de una estenosis. La dirección del flujo, bien se aleje del transductor o se aproxime a él, se valora al observar si el espectro correspondiente se registra por encima o por debajo de la línea de base. Además al analizar el espectro se puede reconocer de forma simultánea la presencia de un flujo venoso o arterial. Se ha señalado, que la señal Doppler proveniente de un vaso es directamente proporcional a la velocidad de los hematíes en el interior del mismo. El estudio de los vasos de grueso calibre, aporta datos sobre alteraciones intrínsecas del mismo (estenosis, oclusión, dilatación) o de alteraciones del sistema vascular por delante o posterior al vaso examinado. Al estudiar los pequeños vasos intraparenquimatosos, podemos conocer su estado de perfusión y detectar la presencia de una microangiopatía. El efecto Doppler se puede representar de dos formas fundamentales, en forma de señal color o en forma de un espectro. La señal color es el método que analiza fundamentalmente los parámetros cualitativos del flujo, permitiendo conocer la permeabilidad de los vasos visualizados con el ultrasonido modo B y determinar la presencia, dirección y alteraciones del flujo, según la escala de color. Con el análisis del espectro no solo podemos evaluar el flujo de forma cualitativa sino que podemos realizar determinaciones para calcular la velocidad (análisis cuantitativo) y los índices de resistencia y pulsatilidad (análisis semicuantitativo).9 6.11 DSP Los Procesadores Digitales de Señal o DSP, son microprocesadores específicamente diseñados para el procesado digital de señal. Algunas de sus características más básicas como el formato aritmético, la velocidad, la organización de la memoria o la arquitectura interna hacen que sean o no adecuados para una aplicación en particular, así como otras que no hay que olvidar, como puedan ser el coste o la disponibilidad de una extensa gama de herramientas de desarrollo. En la figura 6.10 se muestra un DSP actual. 9 Berland de León, Natacha. (2001). Valor del ultrasonido Doppler dúplex y Doppler color en el estudio del Sistema Venoso. Tesis de Maestría. Hospital D.C.Q Hermanos Ameijeiras" Habana. Cuba. Disponible en:http://www.indexmedico.com/publicaciones/indexmed_journal/edicion3/doppler_porta_hepatopatia/ber land_de_leon.htm Estrictamente hablando, el término DSP se aplica a cualquier chip que trabaje con señales representadas de forma digital. En la práctica, el término se refiere a microprocesadores específicamente diseñados para realizar procesado digital de señal. Los DSP utilizan arquitecturas especiales para acelerar los cálculos matemáticos intensos implicados en la mayoría de sistemas de procesado de señal en tiempo real como se ve en el diagrama de bloques de la figura 6.11. Por ejemplo, las arquitecturas de los DSP incluyen circuitería para ejecutar de forma rápida operaciones de multiplicar y acumular, conocidas. A menudo poseen arquitecturas de memoria que permiten un acceso múltiple para permitir de forma simultánea cargar varios operandos, por ejemplo, una muestra de la señal de entrada. La diferencia esencial entre un DSP y un microprocesador es que el DSP tiene características diseñadas para soportar tareas de altas prestaciones, repetitivas y numéricamente intensas. Por contra, los microprocesadores de propósito general o microcontroladores no están especializados para ninguna aplicación en especial; en el caso de los microprocesadores de propósito general, ni están orientados a aplicaciones de control, en el caso de los microcontroladores. Aunque el ejemplo del filtro de respuesta impulsional finita (FIR) ha sido ampliamente utilizado en el entorno DSP, es quizás el más simple que permite ilustrar la necesidad de estas prestaciones en los DSP, las cuales permiten concebir muchas de las funciones de procesado en tiempo real. Figura 6.10. DSP TI. Figura 6.11.Arquitectura DSP. 6.11.1 Aplicaciones de losDSP Los DSP se utilizan en muy diversas aplicaciones, desde sistemas radar hasta la electrónica de consumo. Naturalmente, ningún procesador satisface todas las necesidades de todas o la mayoría de aplicaciones. Por lo tanto, la primera tarea para el diseñador al elegir un DSP es ponderar la importancia relativa de las prestaciones, coste, integración, facilidad de desarrollo, consumo y otros factores para las necesidades de la aplicación en particular. Las grandes aplicaciones, en términos de dinero que mueven sus productos, se realizan para los sistemas pequeños, baratos y con un gran volumen de producción como los de telefonía celular, disqueteras y módems, en donde el coste y la integración son de la mayor importancia. En sistemas portátiles, alimentados por baterías, el consumo es crítico. Sin embargo, la facilidad de desarrollo es generalmente en estas aplicaciones menos importante para el diseñador. A pesar de que estas aplicaciones casi siempre implican el desarrollo de hardware y software a medida, el enorme volumen de producción justifica el esfuerzo extra de desarrollo. Una segunda clase de aplicaciones englobaría a aquellas que procesan un gran volumen de datos mediante algoritmos complejos como se observa en la figura 6.12. Ejemplos incluyen la exploración sonar y sísmica, donde el volumen de producción es bajo, los algoritmos más exigentes y el diseño del producto más largo y complejo. En consecuencia, el diseñador busca un DSP que tenga máximas prestaciones, buena facilidad de uso y soporte para configuraciones multiprocesador. En algunos casos, más que diseñar el propio hardware y software, el sistema se construye a partir de placas de desarrollo de catálogo y el software a partir de librerías de funciones ya existentes. Figura 6.12.Aplicaciones de los DSP 6.11.2 Características de los DSP La elección de un DSP que posea unas ciertas características estará muy condicionada a la aplicación que se quiera destinar. En este apartado se presenta un conjunto de aspectos característicos de los DSP sin que se pretenda con ello hacer una lista exhaustiva. Dichos aspectos deberán tenerse en cuenta a la hora de su elección para una aplicación en particular. 6.11.2.1 Formato aritmético Una de las características fundamentales de los DSP es el tipo de formato aritmético utilizado por el procesador. Como se puede ver en la figura 6.13 existen dos tipos: de coma fija y de coma flotante. Figura 6.13. Formato aritmético de los DSP. En el formato IEEE-754 de coma flotante que se observa en la parte superior de la figura 6.14, la “s” indica que el bit más significativo es el signo, donde un 1 indica que se trata de un número negativo. La “e” indica exponente, formado por 8bits y la “m”, de 23 bits, la mantisa del número. Figura 6.4.Formato IEEE-754 Al carecer de exponente el formato en coma fija, éste puede representar números con más bits significativos que el formato en coma flotante del mismo tamaño en bits. En este ejemplo, 31 bits son significativos, “f “, comparados con los 23del formato IEEE-754. Para un mismo tamaño en número de bits, el formato en coma fija que se observa en la parte posterior de la figura 6.13, proporciona una mejor resolución que el formato en coma flotante. Sin embargo, es este último quien posee un margen dinámico superior. Así, por ejemplo, si se considera una representación en coma fija de 32 bits, el mínimo valor que puede ser representado es2-31 siendo el mayor 1-2-31. La relación entre ambos, la cual resulta en el margen dinámico, es de 2,15 109, aproximadamente 187 dB. En cambio, con una representación en coma flotante, con24 bits de mantisa y 8 de exponente, pueden representarse números desde 5,88 10-39 hasta 3,401038, resultando en un margen dinámico de 5,791076 o de 1535 dB. La aritmética de coma flotante es más flexible que la de coma fija. Con coma flotante, los diseñadores de sistemas tienen acceso a un margen dinámico más amplio. En consecuencia, los DSP de coma flotante son generalmente más fáciles de programar que los de coma fija, pero son usualmente más caros. El mayor costees resultado del requisito de una mayor complejidad del circuito que se traduce en un mayor tamaño de chip. Sin embargo, el mayor margen dinámico facilita su programación pues el programador no debe preocuparse por el margen dinámico ni por la precisión. Por el contrario, en los DSP de coma fija el programador a menudo debe escalar las señales en sus programas para asegurar una adecuada precisión numérica con el limitado margen dinámico del DSP de coma fija. Por lo general, las aplicaciones con un gran volumen de unidades y/o bajo consumo utilizan los DSP de coma fija al ser la prioridad en este tipo de aplicaciones el bajo coste. Los programadores determinan el margen dinámico y la precisión necesarias de la aplicación, ya sea analíticamente o a través de simulaciones, y entonces aplican operaciones de escalado dentro del código de la aplicación en los puntos en donde sea necesario. En aplicaciones donde el coste no sea un requisito crítico o que demanden un margen dinámico y precisión elevadas, o donde la facilidad de desarrollo sea vital, los DSP de coma flotante poseen ventaja. Mediante rutinas software es posible emular el comportamiento de un dispositivo de coma flotante con uno de coma fija. Sin embargo, tales rutinas resultan generalmente caras en términos de ciclos del procesador. En consecuencia, raramente se suele emular la aritmética de coma flotante. 6.11.2.2Ancho de palabra Los DSP de coma flotante utilizan un bus de datos de 32 bits. En los DSP de coma fija, el tamaño más común es de 16 bits. Sin embargo, las familias DSP5600x y DSP563xx de Motorola utilizan un formato de 24 bits, mientras que la familia ZR3800x de Zoran utiliza 20 bits. El tamaño del bus de datos tiene un gran impacto en el coste, ya que influye notablemente en el tamaño del chip y el número de patillas del encapsulado, así como en el tamaño de la memoria externa conectada al DSP. Por lo tanto, se intenta utilizar el integrado con el menor tamaño de palabra que la aplicación pueda tolerar. De la misma forma que ocurre con la elección entre coma fija y coma flotante, existe un compromiso entre tamaño de palabra y complejidad. Una aplicación que requiera 24 bits puede ser desarrollada por un DSP de 16 bits a costa de un aumento de complejidad en el software. Por ejemplo, con un DSP de 16 bits se pueden realizar operaciones con aritmética de doble precisión y 32 bits combinando las instrucciones adecuadas. Naturalmente, la doble precisión será mucho más lenta que la precisión simple. Si el grueso de la aplicación puede desarrollarse en precisión simple, puede tener sentido emplearla doble precisión únicamente en aquellas partes del programa que lo necesiten. Pero si la mayoría de la aplicación requiere más precisión, entonces un DSP con un tamaño de palabra mayor sería la opción adecuada. La mayoría de los DSP utilizan un ancho de la palabra de instrucción igual a la de los datos, pero no todos lo hacen. Así por ejemplo, la familia ADSP-21xx de Analog Devices utiliza 16 bits para los datos y 24 bits para las instrucciones mientras que la familia ZR3800xde Zoran utiliza un formato de instrucción de32 bits. 6.11.2.3 Velocidad de procesamiento La medida clave para saber si un DSP es o no apropiado para una aplicación es su velocidad de ejecución. Existen varias formas para medirla velocidad de un procesador, aunque quizás el parámetro más usual es el tiempo de ciclo de instrucción: tiempo necesario para ejecutar la instrucción más rápida del procesador. Su inverso dividido por un millón da lugar a la velocidad del procesador en millones de instrucciones por segundo o MIPS. En la actualidad todos los DSP ejecutan una instrucción por ciclo de instrucción. Un problema que se presenta cuando se compraran los tiempos de ejecución de instrucciones de varios procesadores es que la cantidad de trabajo realizado por una instrucción varía significativamente de un procesador a otro. Por ejemplo, algunos DSP disponen de desplazadores combinatorios (“barrel shifters”) que permiten hacer desplazamientos de múltiples bits en los datos con sólo una instrucción, mientras que otros DSP requieren que el dato sea desplazado con repetidas instrucciones de desplazamiento de un solo bit. De forma similar, algunos DSP permiten el movimiento de datos en paralelo (carga simultánea de datos mientras se ejecuta una instrucción)que no están relacionados con la instrucción que la ALU está ejecutando, pero otros DSP sólo soportan movimientos en paralelo que estén relacionados con los operandos de la instrucción que esté ejecutando la ALU. El parámetro MIPS, al igual que MFLOPS, MOPS, MBPS y otros, se miden de forma muy precisa aunque su valor no necesariamente dice mucho de lo que un determinado DSP es capaz de hacer. Dichos valores sirven para ubicar cada DSP en una categoría amplia en cuanto a prestaciones pero uno se debería preguntar si se trata de valores de pico o sostenidos. Además, también nos deberíamos preguntar cómo se ven afectadas las prestaciones del DSP cuando muchos de los datos se encuentran fuera del chip, en la memoria externa. Una solución a estos problemas consiste en decidir una operación básica y utilizarla como referencia al comparar distintos DSP. La operación que suele tomarse como referencia es la MAC. Desafortunadamente, los tiempos de ejecución de la MAC proporcionan, a veces, poca información para poder diferenciar entre distintos DSP, ya que en la mayoría de ellos esta instrucción se ejecuta en un solo ciclo de instrucción, y como se ha mencionado anteriormente, algunos DSP pueden hacer mucho más que otros en una simple instrucción MAC. Además, los tiempos de ejecución de la MAC no suele reflejar las prestaciones de otro tipo importante de operaciones como los bucles que están presentes en todas las aplicaciones. Un enfoque mucho más general consiste en definir un conjunto algoritmos o funciones, como un filtro FIR o IIR, e implementarlo en distintos DSP y de esta forma ver cuál de ellos proporciona unas mejores prestaciones. Sin embargo, la implementación de estos algoritmos para distintos DSP puede resultar una tarea ardua. En este sentido, una buena referencia pueden ser los tests que efectúa la Berkeley Design Technology Inc., pionera en utilizar distintas porciones de algoritmos y funciones para medir las prestaciones de los diferentes DSP. 6.11.2.4Organización de la memoria La organización del subsistema de memoria de un DSP puede tener un gran impacto en sus prestaciones. Como se ha mencionado anteriormente, la instrucción MAC, así como otras, son fundamentales en muchos de los algoritmos de procesado de señal. Una ejecución rápida de la instrucción MAC requiere que la lectura en memoria del código de la instrucción y de sus dos operandos se haga en un ciclo de instrucción. Existe una variedad de formas de hacerlo, utilizando memorias multipuerto para permitir múltiples accesos a memoria en un ciclo de instrucción, mediante memorias de datos e instrucciones separadas (arquitectura Harvard), y memorias caches de instrucciones para permitir el acceso a la memoria para la obtención de datos mientras que las instrucciones se obtienen de la cache en lugar de la memoria. En la figura 6.15se muestran las diferencias entre la arquitectura Harvard y la Von Neumann, esta última utilizada en la mayoría de procesadores de propósito general. Figura 6.15. Arquitecturas Harvard y Von Neumann. Otro punto importante a tener en cuenta es la cantidad de memoria que soporta el DSP, interna y externamente. Atendiendo a las características de la aplicación, la mayoría de los DSP de coma fija poseen memorias internas, en el propio chip, de tamaño pequeño medio, entre 256 y32k palabras, y un bus externo de direcciones pequeño. Así por ejemplo, la mayoría de los DSP de coma fija de Analog Devices, Lucent Technologies, Motorola y Texas Instruments tienen buses de direcciones de 16 bits o menos, loque limita la cantidad de memoria externa de acceso directo. Por el contrario, la mayoría de los DSP de coma flotante proporcionan poca o ninguna memoria interna, pero se caracterizan por tener buses de direcciones externos de gran tamaño, para soportar una gran cantidad de memoria externa. 6.11.2.5 Segmentación (“pipelining”) “Pipelining” es una técnica para incrementarlas prestaciones de un procesador, que consiste en dividir una secuencia de operaciones en otras de más sencillas y ejecutar en lo posible cada una de ellas en paralelo. En consecuencia se reduce el tiempo total requerido para completar un conjunto de operaciones. Casi todos los DSP del mercado incorporan el uso de la segmentación en mayor o menor medida. Para ilustrar de qué forma la técnica de la segmentación mejora las prestaciones de un procesador, considérese un hipotético procesador que utiliza unidades de ejecución separadas para la ejecución de una única instrucción: • Obtención de la instrucción de la memoria • Descodificar la instrucción • Leer o escribir un operando de la memoria • Ejecutar la parte de la instrucción relacionada con la ALU o MAC. Sise supone que cada etapa o unidad de ejecución tarda 20 ns en ejecutar su parte de la instrucción, entonces el procesador ejecuta una instrucción cada 80 ns. Sin embargo, también se observa que el hardware asociado a cada etapa de ejecución está inactivo el 75% del tiempo. Esto ocurre porque el procesador no empieza a ejecutar una nueva instrucción hasta que finaliza la ejecución de la instrucción en curso como se ve en la figura 6.16. Figura 6.16. Tabla de segmentación Un procesador que implementara la técnica de “pipelining” obtendría una nueva instrucción inmediatamente después de haber obtenido la anterior. De forma similar, cada instrucción sería descodificada después de haber terminado la descodificación de la instrucción anterior. Con esta filosofía, las instrucciones se ejecutan de forma solapada. Las unidades de ejecución trabajan en paralelo, mientras una obtiene el código de una instrucción otra está descodificando la anterior y así sucesivamente. En consecuencia, una vez que la “pipeline” está llena, cada 20 ns se ejecuta una instrucción, lo cual representa un factor de mejora de prestaciones de cuatro respecto a un procesador que no incorpore dicha técnica. Aunque la mayoría de los DSP utilizan la técnica de segmentación, su profundidad o número de etapas varía de un procesador a otro. En general, cuanto mayor sea el número de etapas, menor tiempo tardará el procesador en ejecutar una instrucción. En el ejemplo anterior se ha supuesto un procesador con una eficiencia en el uso de la “pipeline” del 100%. En realidad, esto no siempre ocurre así. La eficiencia se ve disminuida por varias causas, entre las cuales se encuentra el hecho de que un procesador necesite dos ciclos para escribir en memoria, se obtenga el código de una instrucción de salto de programa o bien la petición de una interrupción. En el momento en que el procesador detecta la llegada de una instrucción de salto en la descodificación del segundo ciclo de reloj, la “pipeline” se vacía y detiene la obtención de nuevas instrucciones. Esto provoca que la instrucción de salto se ejecute en cuatro ciclos. Posteriormente, el procesador comienza la obtención de las instrucciones (N1-N4) a partir de la dirección de salto y del quinto ciclo de reloj. A causa de este tipo de situaciones, casi todos los DSP incorporan algún tipo de mejora en el uso de la segmentación con el propósito de reducir su posible ineficiencia temporal. 6.11.2.6 Consumo El uso cada vez más extendido de los DSP en aplicaciones portátiles como la telefonía celular hace que el consumo sea un factor a tener muyen cuenta en el momento de decidirse por un DSP u otro. Conscientes de esta necesidad, los fabricantes de DSP ya fabrican DSP para tensiones bajas de trabajo (3,3 V -3 V) que incorporan prestaciones para la gestión de energía, como pueden ser los modos “sleep” o “idle” que inhiben el reloj del DSP a todas o sólo algunas partes del mismo, divisores programables del reloj para permitirla realización de determinadas tareas a velocidad inferior o en control directo de periféricos, lo que permite la desactivación de algunos de ellos si no se prevé su aplicación. 6.11.2.7 Costo Generalmente el costo del DSP es el principal parámetro en todos aquellos productos que se van a fabricar en grandes volúmenes. En tales aplicaciones, el diseñador intenta utilizar el DSP con coste inferior y que satisfaga las necesidades de la aplicación aun cuando ese dispositivo pueda ser considerado poco flexible y más difícil de programar que otros DSP más caros. De entre las familias de DSP, el más barato será aquel que tenga menos características funcionales, menos memoria interna y probablemente menos prestaciones que otro más caro. Sin embargo, una diferencia clave en el precio está en el encapsulado. Los encapsulados PQFP y TQFP son usualmente bastante más baratos que los PGA.10 6.11.3 Programación de DSP Un DSP se puede programar tanto en ensamblador como en C. Cada familia de DSP tiene su propio lenguaje ensamblador y sus propias herramientas suministradas por el fabricante. Gracias a la colaboración entre fabricantes, existen lenguajes de más alto nivel (y por lo tanto, más sencillos y rápidos de usar) que incorporan la capacidad de programar los DSP, en general pasando por un pre compilado automático en C. Son los casos de LabVIEW y Matlab. Principales herramientas: • Matlab o El desarrollo de algoritmos o Sirve como punto de referencia al prototipo de verificación • 10 DSP: Code Composer Studio (simulador y versiones EVM) Salazar Jordi. (Abril 2011). Procesador digital de señales. Arquitecturas y criterios de selección. Disponible en :http://ocw.um.es/ingenierias/sistemas-embebidos/material-de-clase-1/ssee-da-t04-01.pdf o Algoritmo de implementación en C / ensamblador o Depuración, en relación con la aplicación de Matlab o Perfiles de su código • + +: Visual C PC o Desarrollo de interfaz de usuario o Control de la tarjeta de DSP • LabVIEW o Programación orientada a objetos 6.12 LabVIEW LabVIEW es llamado así por sus siglas en inglés, Laboratorio Virtual Instrumentation Engineering Workbench, es una plataforma y un ambiente de desarrollo para lenguaje de programación visual hecho por National Instuments. El lenguaje gráfico es normalmente llamado “lenguaje G”. Originalmente desarrollado para Macintosh en 1986, LabVIEW es comúnmente usado para la adquisición de datos, control de instrumentación y automatización industrial. El lema de LabVIEW es: "La potencia está en el Software". Entre sus objetivos están el reducir el tiempo de desarrollo de aplicaciones de todo tipo no sólo en ámbitos de test, control y diseño. Presenta facilidades para el manejo de interfaces de comunicación como: puerto paralelo, puerto serie, GPIB, Bluetooth, USB y algunos otros; También se tiene facilidad para interactuar con otros lenguajes de programación y aplicaciones como: .NET, Active X, Multisim, Matlab, Simulink, AutoCAD, etc. Algunas de las ventajas de LabVIEW son: • Entorno de desarrollo gráfico fácil de usar • Estrecha integración con una amplia gama de hardware de medida • Rápido desarrollo de interfaz de usuario para visualizar datos en vivo • Extensa funcionalidad para procesamiento de señales, análisis y matemáticas • Integración de control de código fuente y métricas de complejidad de código • Soporte para Windows XP/Vista/7 (32 bits) y Windows Vista/7 (64 bits) • Herramientas gráficas y textuales para el procesado digital de señales. • Visualización y manejo de gráficas con datos dinámicos. • Adquisición y tratamiento de imágenes. • Control de movimiento (combinado incluso con todo lo anterior). • Tiempo Real estrictamente hablando. • Sincronización entre dispositivos. Como se ha dicho es una herramienta gráfica de programación, esto significa que los programas no se escriben, sino que se dibujan, facilitando su comprensión. Los programas hechos con LabVIEW se llaman VI (Virtual Instrument), lo que da una idea de su uso en origen: el control de instrumentos. Cada VI tiene 3 componentes: panel frontal, diagrama de bloques y panel conector e icono como se aprecia en la figura 6.17. El panel frontal es el interfaz con el usuario, en él se definen los controles e indicadores que se muestran en pantalla. Los controles son perillas, botones diales y otros dispositivos de entrada. Los indicadores son gráficas, led's cajas de diálogo o numéricas, y otros despliegues.11 Figura 6.17. Interfaces LabVIEW. 11 National Instruments. (Abril 2011). Disponible en: http://www.ni.com.mx 6.12.1 Módulo LabVIEW DSP. El Módulo LabVIEW DSP de National Instruments es una herramienta completa de diseño DSP gráfico basada en el entorno de programación gráfica LabVIEW que usted puede usar para crear aplicaciones embebidas en tiempo real. Características incluidas: • Acceso directo a líneas de E/S digitales y analógicas de objetivo DSP • Soporte completo para Express VI's para desarrollo de código más rápido • Habilidad para conectar entre objetivos DSP con soporte sin reescribir código • Perfecta integración de filtros digitales Consta de herramientas para diseñar, implantar y analizar sistemas y algoritmos basados en DSP. Con el nuevo módulo LabVIEW DSP el entorno de desarrollo gráfico LabVIEW se extiende a las aplicaciones de procesamiento embebido de señales y ofrece a los estudiantes de ingeniería un enfoque práctico y sencillo para aprender las más importantes técnicas de procesamiento de señales. El módulo LabVIEW DSP amplía las prestaciones de LabVIEW para programar directamente las tarjetas de evaluación TMS320C6711 y C6713 DSK y las tarjetas NI SPEEDY-33 con funciones de procesamiento de señales y principios de programación, como análisis y filtrado espectral, sin necesidad de un compilador DSP independiente. Dado que LabVIEW es un entorno gráfico intuitivo, los docentes de ingeniería, pueden utilizar el nuevo software en sus cursos de diseño de procesamiento de señales, comunicaciones, control y filtros, para enseñar a los alumnos a crear rápidamente desde sistemas de comunicaciones hasta complejas aplicaciones de control de motores. Al utilizar LabVIEW para desarrollar estas aplicaciones, los alumnos pueden concentrarse en los conceptos y en los resultados, en lugar de perder un precioso tiempo con tediosos detalles de implantación sin tener que programar en lenguajes basados en texto de nivel bajo. Hasta ahora, los ingenieros que programan los dispositivos con DSP's, perdían gran parte de su tiempo en tareas con muchos pasos, muy lentos, para realizar pequeñas modificaciones • Soporte para tres objetivos DSP que proporciona opciones para la implementación final • Implementación de filtros digitales diseñados usando el Juego de Herramientas para Diseño de Filtros Digitales 12 • Capacidad autónoma de desarrollo de aplicaciones • Necesita tener los Sistemas de Desarrollo de LabVIEW Profesional o Completo • Cientos de funciones DSP integradas para un desarrollo más rápido • Express VI’s facilitan el desarrollo y acortan tiempos de mercado 12 National Instruments Spain. (Abril 2011). El Directorio español de equipos y productos electrónicos. Disponible en: http://www.infoepe.es/c/National-Instruments-Spain-ni/National-Instruments-Spainpresenta-LabVIEW-DSP-para-dise%C3%B1ar-implantar-y-analizar-sistemas-n1020 6.13 Pantalla LDC Táctil Una pantalla de cristal líquido o LCD (acrónimo del inglés liquid crystal display) es una pantalla delgada y plana formada por un número de píxeles en color o monocromos colocados delante de una fuente de luz o reflectora. A menudo se utiliza en dispositivos Las pantallas de cristal líquido requieren poca energía y, normalmente, cuentan con una alta resolución. Las pantallas LCD se fabrican cerrando herméticamente un compuesto líquido entre dos piezas de cristal y un filtro. La pantalla dispone de cientos o miles de puntos que se cargan o no, lo que hace que la luz se refleje o no para formar letras, caracteres y números. Algunas pantallas LCD tienen un panel electroluminiscente posterior con retro iluminación térmica. 6.13.1Características Cada píxel de un LCD típicamente consiste de una capa de moléculas alineadas entre dos electrodos transparentes, y dos filtros de polarización, los ejes de transmisión de cada uno que están (en la mayoría de los casos) perpendiculares entre sí. Sin cristal líquido entre el filtro polarizante, la luz que pasa por el primer filtro sería bloqueada por el segundo (cruzando) polarizador. La superficie de los electrodos que están en contacto con los materiales de cristal líquido es tratada a fin de ajustar las moléculas de cristal líquido en una dirección en particular. Este tratamiento suele ser normalmente aplicable en una fina capa de polímero que es unidireccionalmente frotada utilizando, por ejemplo, un paño. La dirección de la alineación de cristal líquido se define por la dirección de frotación. Antes de la aplicación de un campo eléctrico, la orientación de las moléculas de cristal líquido está determinada por la adaptación a las superficies. En un dispositivo twisted nematic, TN (uno de los dispositivos más comunes entre los de cristal líquido), las direcciones de alineación de la superficie de los dos electrodos son perpendiculares entre sí, y así se organizan las moléculas en una estructura helicoidal, o retorcida. Debido a que el material es de cristal líquido birreflejante, la luz que pasa a través de un filtro polarizante se gira por la hélice de cristal líquido que pasa a través de la capa de cristal líquido, lo que le permite pasar por el segundo filtro polarizado. La mitad de la luz incidente es absorbida por el primer filtro polarizante, pero por lo demás todo el montaje es transparente. Cuando se aplica un voltaje a través de los electrodos, una fuerza de giro orienta las moléculas de cristal líquido paralelas al campo eléctrico, que distorsiona la estructura helicoidal (esto se puede resistir gracias a las fuerzas elásticas desde que las moléculas están limitadas a las superficies). Esto reduce la rotación de la polarización de la luz incidente, y el dispositivo aparece gris. Si la tensión aplicada es lo suficientemente grande, las moléculas de cristal líquido en el centro de la capa son casi completamente desenrolladas y la polarización de la luz incidente no es rotada ya que pasa a través de la capa de cristal líquido. Esta luz será principalmente polarizada perpendicular al segundo filtro, y por eso será bloqueada y el pixel aparecerá negro. Por el control de la tensión aplicada a través de la capa de cristal líquido en cada píxel, la luz se puede permitir pasar a través de distintas cantidades, constituyéndose los diferentes tonos de gris. El efecto óptico de un dispositivo twisted nematic (TN) en el estado del voltaje es mucho menos dependiente de las variaciones de espesor del dispositivo que en el estado del voltaje de compensación. Debido a esto, estos dispositivos suelen usarse entre polarizadores cruzados de tal manera que parecen brillantes sin tensión (el ojo es mucho más sensible a las variaciones en el estado oscuro que en el brillante). Estos dispositivos también pueden funcionar en paralelo entre polarizadores, en cuyo caso la luz y la oscuridad son estados invertidos. La tensión de compensación en el estado oscuro de esta configuración aparece enrojecida debido a las pequeñas variaciones de espesor en todo el dispositivo. Tanto el material del cristal líquido como el de la capa de alineación contienen compuestos iónicos. Si un campo eléctrico de una determinada polaridad se aplica durante un período prolongado, este material iónico es atraído hacia la superficie y se degrada el rendimiento del dispositivo. Esto se intenta evitar, ya sea mediante la aplicación de una corriente alterna o por inversión de la polaridad del campo eléctrico que está dirigida al dispositivo (la respuesta de la capa de cristal líquido es idéntica, independientemente de la polaridad de los campos aplicados) Cuando un dispositivo requiere un gran número de píxeles, no es viable conducir cada dispositivo directamente, así cada píxel requiere un número de electrodos independiente. En cambio, la pantalla es multiplexada. En una pantalla multiplexada, los electrodos de la parte lateral de la pantalla se agrupan junto con los cables (normalmente en columnas), y cada grupo tiene su propia fuente de voltaje. Por otro lado, los electrodos también se agrupan (normalmente en filas), en donde cada grupo obtiene una tensión de sumidero. Los grupos se han diseñado de manera que cada píxel tiene una combinación única y dedicada de fuentes y sumideros. Los circuitos electrónicos o el software que los controla, activa los sumideros en secuencia y controla las fuentes de los píxeles de cada sumidero. 6.13.2 Especificaciones. Importantes factores que se deben considerar al evaluar una pantalla de cristal líquido: • Resolución: Las dimensiones horizontal y vertical son expresadas en píxeles. Las pantallas HD tienen una resolución nativa desde 1280x720 píxeles (720p) y la resolución nativa en las Full HD es de 1920x1080 píxeles (1080p). • Ancho de punto: La distancia entre los centros de dos píxeles adyacentes. Cuanto menor sea el ancho de punto, tanto menor granularidad tendrá la imagen. El ancho de punto suele ser el mismo en sentido vertical y horizontal, pero puede ser diferente en algunos casos. • Tamaño: El tamaño de un panel LCD se mide a lo largo de su diagonal, generalmente expresado en pulgadas (coloquialmente llamada área de visualización activa). • Tiempo de respuesta: Es el tiempo que demora un píxel en cambiar de un color a otro. • Tipo de matriz: Activa, pasiva y reactiva. • Ángulo de visión: Es el máximo ángulo en el que un usuario puede mirar el LCD, es estando desplazado de su centro, sin que se pierda calidad de imagen. Las nuevas pantallas vienen con un ángulo de visión de 178 grados • Soporte de color: Cantidad de colores soportados. Coloquialmente conocida como gama de colores. • Brillo: La cantidad de luz emitida desde la pantalla; también se conoce como luminosidad. • Contraste: La relación entre la intensidad más brillante y la más oscura. • Aspecto: La proporción de la anchura y la altura (por ejemplo, 5:4, 4:3, 16:9 y 16:10). • Puertos de entrada: Por ejemplo DVI, VGA, LVDS o incluso S-Video y HDMI. Una pantalla táctil es una pantalla que mediante un toque directo sobre su superficie permite la entrada de datos y órdenes al dispositivo. A su vez, actúa como periférico de salida, mostrando los resultados introducidos previamente. Este contacto también se puede realizar con lápiz u otras herramientas similares. Actualmente hay pantallas táctiles que pueden instalarse sobre una pantalla normal. Así pues, la pantalla táctil puede actuar como periférico de entrada y periférico de salida de datos, así como emulador de datos interinos erróneos al no tocarse efectivamente Las pantallas táctiles se han ido haciendo populares desde la invención de la interfaz electrónica táctil en 1971 por el Dr. Samuel C. Hurst. Han llegado a ser comunes en TPV's, en cajeros automáticos y en PDAs donde se suele emplear un estilete para manipular la interfaz gráfica de usuario y para introducir datos. La popularidad de los teléfonos inteligentes, PDA's, de las vídeo consolas portátiles o de los navegadores de automóviles está generando la demanda y la aceptación de las pantallas táctiles. La interacción efectuada por tal objeto permitió que en 1993 se integraran al mercado varios productos interactivos para niños tales como los libros gráficos de la Matel. Las pantallas táctiles de última generación consisten en un cristal transparente donde se sitúa una lámina que permite al usuario interactuar directamente sobre esta superficie, utilizando un proyector para lanzar la imagen sobre la pantalla de cristal. Se sale de lo que hasta hoy día se entendía por pantalla táctil que era básicamente un monitor táctil. Las pantallas táctiles son populares en la industria pesada y en otras situaciones, tales como exposiciones de museos donde los teclados y los ratones no permiten una interacción satisfactoria, intuitiva, rápida, o exacta del usuario con el contenido de la exposición. Las pantallas táctiles se encuentran definidas dentro de la especificación de dispositivos HID para puerto USB1 como digitalizadores, junto con dispositivos como touch pads y tabletas digitalizadoras entre otros. Las pantallas táctiles se identifican con el usage ID 04. La especificación incluye los campos utilizados para el manejo de este tipo de dispositivos. Algunos de los más interesantes para el manejo de las pantallas táctiles son: • Tip Pressure: que representa la fuerza por un transductor, habitualmente un estilete o también un dedo. • Barrel Pressure: fuerza que ejerce el usuario en el sensor del transductor, como por ejemplo un botón sensible a la presión en el puntero de manejo. • In Range: que indica que el transductor se encuentra en el área donde la digitalización es posible. Se representa por un bit • Touch: indica si un dedo está tocando la pantalla. El sistema suele interpretarlo como un clic de botón primario • Untouch: indica que el dedo ha perdido contacto con la superficie de la pantalla. Se interpreta como la acción de soltar el botón primario. • Tap: indica que se ha realizado un toque con el dedo en la pantalla, levantándolo rápidamente sin prolongar el contacto. Se interpreta como un evento provocado por un botón. Hay dos tipos principales de pantallas táctiles en los móviles: capacitiva o resistiva. Las dos utilizan el mismo principio para detectar las pulsaciones: los cambios en la corriente eléctrica. Sin embargo, los componentes que forman los distintos tipos de pantalla táctil y, sobre todo, la sensación para el usuario son muy distintos. Las pantallas capacitivas son más caras de fabricar y están presentes en el iPhone o el LG KF750 Secret, entre otros móviles. Las pantallas resistivas son más baratas y están más extendidas, por ejemplo en los Pocket PC de Windows Mobile o el Nokia 5800. 6.13.3 Pantallas capacitivas Por su tecnología, las pantallas capacitivas necesitan ser manejadas mediante el dedo o un objeto que disponga de capacitancia, no siendo aptas para los típicos stylus. Por otro lado, pueden detectar varias pulsaciones simultáneas o gestos, lo que permite diversas formas de actuar con ellas, aumentando su capacidad para ser controladas. Las pulsaciones o gestos no requieren presión, basta con deslizar el dedo para controlar la pantalla del dispositivo. Al ser utilizadas directamente por el dedo, sin objetos intermedios, y no ser necesario realizar ninguna presión, la experiencia para el usuario al manejar este tipo de pantallas es bastante bueno. La impresión es de rapidez, de inmediatez, siempre que el sistema operativo y el programa que estemos manejando este bien diseñado, claro está. También tienen sus limitaciones. Tener que usar los dedos, menor precisión y no detectar la presión limitan las posibilidades del software que pueden ejecutar un ejemplo se muestra en la figura 6.18. Figura 6.18. Pantalla capacitiva. 6.13.3 Pantallas resistivas. Las pantallas resistivas están formadas por varias capas. Cuando presionamos sobre la pantalla, hay dos capas que entran en contacto, se produce un cambio en la corriente eléctrica y se detecta la pulsación. Aparte de su precio, la mejor resistencia al polvo o al agua ha contribuido a su popularidad. Sin embargo, el uso de múltiples capas hace que su brillo se reduzca en, aproximadamente, un 25 por ciento. Pueden usarse con los dedos o el stylus, aunque los objetos afilados pueden dañarlas. La necesidad de ejercer presión en una pantalla resistiva implica una experiencia de usuario diferente. La respuesta del móvil parece menos intuitiva, más lenta. Si además el software no está creado para usarse con el dedo, tener que utilizar un objeto intermedio nos distancia aún más del dispositivo. Se puede hacer un programa que establezca un tiempo menor, pero se corre el riesgo de que la respuesta sea demasiado rápida para ser usado. Uno de los principales inconvenientes que se les atribuye a las pantallas resistivas es su imposibilidad para detectar varias pulsaciones, el multitouch, o los gestos. La compañía francesa Stantum estuvo demostrando en el congreso de Barcelona sus innovaciones en pantallas resistivas. Multitoque, sensibilidad a la presión y precisión es lo que se puede ver en estos vídeos. Stantum ha creado unas referencias de software y hardware para que los fabricantes de móviles puedan llevar este tipo de pantallas resistivas en sus próximos móviles como se muestra en la figura 6.19.13 Figura 6.19.Pantalla resistiva. 6.14 USB El USB es un bus punto a punto: dado que el lugar de partida es el host (PC o hub), el destino es un periférico u otro hub. No hay más que un único host (PC) en una arquitectura USB. Los PC estándar tienen dos tomas USB, lo que implica que, para permitir más de dos periférico simultáneamente, es necesario un hub. Algunos periféricos incluyen un hub integrado, por ejemplo, el teclado USB, al que se le puede conectar un Mouse USB. 13 Nokia. (2003).Tutorial Interacivo de Nokia. [Resista electrónica]. Disponible en: http://europe.nokia.com/EUROPE_NOKIA_COM_3/r2/support/tutorials/7250i/spanish/glossary/index.ht Los periféricos comparten la banda de paso del USB. El protocolo se basa en el llamado paso de testigo (token). El ordenador proporciona el testigo al periférico seleccionado y seguidamente, éste le devuelve el testigo en su respuesta. Este bus permite la conexión y la des-conexión en cualquier momento sin necesidad de apagar el equipo. 6.14.1 Características del USB. Las principales características del bus son: • Banda de paso, disponibilidad desde algunos kilobits a varios megabits. • Transferencia isócrona y asíncrona en el mismo bus. • Varios tipos de periféricos en el mismo bus. • Posibilidad de conectar hasta 127 periféricos. • Tiempo de respuesta garantizado (para audio y vídeo). • Flexibilidad a nivel de banda de paso • Fiabilidad, control de errores. • Perfectamente integrado en el PC, plug and play (conectar y usar) • Coste reducido en la versión de baja velocidad (1,5 Mbits/s) • Posible expansión del bus 6.14.2 Descripción del sistema USB A nivel eléctrico, el cable USB transfiere la señal y la alimentación sobre 4 hilos como se observa en la figura 6.20. Figura 6.20. Diagrama de conexión USB. A nivel de alimentación, el cable proporciona la tensión nominal de 5 V. Es necesario definir correctamente el diámetro del hilo con el fin de que no se produzca una caída de tensión demasiado importante en el cable. Una resistencia de terminación instalada en la línea de datos permite detectar el puerto y conocer su configuración (1,5 o 12 Mbits/s). A nivel de señal, se trata de un par trenzado con una impedancia característica de 90 Ω La velocidad puede ser tanto de 12 Mbits/s como de 1,5 Mbits/s. La sensibilidad del receptor puede ser de, al menos, 200mV y debe poder admitir un buen factor de rechazo de tensión en modo común. El reloj se transmite en el flow de datos, la codificación es de tipo NRZI, existiendo un dispositivo que genera un bit de relleno (bit stuffing) que garantiza que la frecuencia de reloj permanezca constante. Cada paquete va precedido por un campo de sincronismo. Cada sección puede proporcionar una determinada potencia máxima siendo el PC el encargado de suministrar la energía. Además, elperiférico puede estar autoalimentado (self powered). El ordenador gestiona el consumo, teniendo capacidad de poner en reposo (suspend) o en marcha a un periférico USB. En reposo, este reduce su consumo (si puede), quedándose la parte USB funcional. Esta gestión está orientada especialmente a los equipos portátiles.14 VII. Plan De Actividades Los tiempos definidos en el cronograma son estipulados tomando en cuenta que HD proveerá la información y la retroalimentación en tiempos adecuados. Se insumirán 480 horas de ingeniería, para la totalidad del proyecto. 14 Xavier Fernand. Guía del desarrollador. Parafino. Disponible en : http://www.imicro.com/pdf/articulos/ usb.pdf • Fase 1: Conocer los objetivos del proyecto, material necesario y herramientas a utilizar. • Fase 2: Obtención de los conocimientos necesarios para la realización del proyecto. • Fase 3: Definir si es posible Delimitar los periodos sistólicos y diastólicos del ciclo arterial (mediante frecuencias, amplitudes etc.…). • Fase 4: Una vez delimitado los periodos sistólicos y diastólicos del ciclo arterial proceder a la eliminación del periodo diastólico para el análisis del periodo sistólico obteniendo un análisis de la frecuencia de los ciclos cardiacos (Duración de ciclos cardiacos por minuto), numero de eventos bradicárdicos y de eventos taquicárdicos del periodo sistólico. • Fase 5: Proceder a la eliminación del periodo sistólico para el análisis del periodo diastólico obteniendo duración de los ciclos para conocer los eventos bradicárdicos y eventos taquicárdicos del periodo diastólico. • Fase 6: Concluir programación en LabVIEW con una pantalla que muestre Frecuencia cardiaca, eventos bradicárdicos y taquicárdicos del periodo sistólico y los eventos bradicárdicos y taquicárdicos del periodo diastólico. • Fase 7: Realización de pruebas con el programa ya terminado cargado en la computadora utilizando las tarjetas de NI. • Fase 8: Introducir la programación de LabVIEW al DSP y configuración con la pantalla para su reducción sin la utilización de la computadora.15 15 Cronograma de Actividades Arterioritmómetro, HD, Contrato HD-UTEQ.(2011) 7.1 Cronograma de Actividades CONOCIMIENTO DEL PROYECTO CAPACITACIÓN DELIMITACIÓN DE LOS PERIODOS (SENSOR DE PRESIÓN) DELIMITACIÓN DE LOS PERIODOS (DOPPLER) ESTUDIO DEL PERIODO SISTÓLICO ESTUDIO DEL PERIODO DIASTÓLICO PROGRAMACIÓN DE LA TARJETA DSP ACTIVIDAD Objetivos del proyecto Material necesario Herramientas a utilizar Reconocimiento del proyecto Capacitación de LabVIEW Ciclo arterial Periodo sistólico Periodo diastólico DURACIÓN 21 días 16 días 16 días 5 días 14 días 5 días 5 días 5 días Ciclo arterial Periodo sistólico Periodo diastólico Eliminación del periodo diastólico Frecuencia de los ciclos cardiacos Número de eventos bradicardias Número de eventos taquicardias Eliminación del periodo sistólico Duración de los ciclos diastólicos Número de eventos bradicárdicos Número de eventos taquicárdicos Frecuencia cardiaca Delimitación del periodo sistólico Delimitación del periodo diastólico Eventos bradicárdicos en el periodo sistólico Eventos taquicárdicos en el periodo sistólico Eventos taquicárdicos en el periodo diastólico Eventos bradicárdicos en el periodo diastólico Programación de la interfaz touch screen Pruebas 3 días 3 días 2 días 8 días 2 días 2 días 2 días 8 días 3 días 2 días 2 días 10 días 12 días 11 días 3 días 3 días 3 días 3 días 7 días 53 días 7.2 Diagrama de Gantt VIII. Recursos Materiales y Humanos 8.1 Recursos Materiales. 8.2 Recursos Humanos IX. Desarrollo del Proyecto En este capítulo se ofrece una explicación detallada del proyecto realizado en el transcurso de la estadía. Se da a conocer como se realizó cada una de las actividades que se llevaron a cabo en la Universidad Tecnológica de Querétaro con la empresa HemoDinamics S.A. de C.V. 9.1 Planteamiento del proyecto En esta actividad se definieron cada una de las etapas necesarias para la fabricación del Arterioritmómetro UTEQ y HD,así como sus objetivos particulares. Las etapas que se definieron son las siguientes: • Reconocimiento del proyecto • Obtención y requisición de la lista de materiales para la realización del proyecto • Realización del proyecto con plata forma de programación LabVIEW • Traslado del proyecto a un prototipo portátil • Manual de usuario • Adicionales • Objetivos particulares de las etapas anteriores • Ganar el conocimiento básico para la realización del proyecto • Adquirir el material necesario para la realización del proyecto • Diseñar un software en base LabVIEW, capaz de determinar ciclos arteriales y dividirlos en sístole y diástole, así como la obtención de los tiempos de cada uno y estadísticas determinadas para el estudio posterior de las muestras. • Eliminar el manejo de la PC y hacer un prototipo portátil del Arterioritmómetro. • Realizar un manual que ayude al usuario en el manejo del prototipo de Arterioritmómetro. • Agregar otras plataformas de programación y sensores, en el estudio del ciclo arterial 9.2 Reconocimiento del Proyecto La primer parte del reconocimiento del proyecto consta en la familiarización de los términos y conceptos médicos utilizados en la investigación anterior, realizada por HD y mencionados anteriormente en el apartado de Marco Teórico. En un principio la empresa HemoDinamics propuso la utilización del lenguaje de programación LabVIEW y la utilización de un DSP lo que llevo a la investigación de la posibilidad de utilizarlos en el proyecto. 9.3 Selección de Material 9.3.1 Procesadores digitales de señales. Se encontró que LabVIEW tiene un módulo que permite la programación de DSP sin necesidad de utilizar otro lenguaje, lo que facilita la programación, debido a la programación grafica de LabVIEW. Este módulo es compatible con cuatro tarjetas de desarrollo fabricadas por National Intuments y Texas Instruments. Las tarjetas compatibles con el módulo de DSP de LabVIEW son: 9.3.1.1 SPEEDY-33 En la figura 9.1 se muestra la tarjeta SPEEDY- 33. Es una tarjeta de desarrollo fabricada por National Instruments, que integra un DSP TMS320VC33, dos micrófonos, entradas y salidas de audio, 8 entradas digitales (DIP switches), 8 salidas (LED) y puerto USB para la programación y comunicación. Figura 9.1 SPEEDY-33 9.3.1.2 TMS320C6711 DSK Este módulo de desarrollo cuenta con características similares al anterior un procesador TMS320C671 fabricado por National Instruments, el inconveniente con esta tarjeta es que es obsoleta. 9.3.1.3 TMS320C6713 DSK La tarjeta C6713 DSK es una variante de la tarjeta C6713 cuenta con las misma que la anterior peor con un procesador diferente que es el TMS320C6713 y también se encuentra obsoleta. 9.3.1.4 TMS320C6416 DSK En la figura 9.2 muestra la arquitectura y algunas de las características del procesador que contiene la tarjeta de desarrollo C6416 DSK. Figura 9.2 Arquitectura de la tarjeta C6416 DSK. Este DSP trabaja a una velocidad de procesamiento de 1GHz. La tarjeta fue elegida para utilizarla en el proyecto ya que sus características son aceptables para la aplicación, además de la compatibilidad con LabVIEW. 9.3.2 Pantalla Según las especificaciones que se definieron en un principio se utilizó una pantalla táctil. Se decidió usar este tipo de pantallas para eliminar los botones mecánicos y así mejorar el aspecto visual del prototipo, además facilita la modificación de dichos controles. Para encontrar la pantalla que más se adecúa a las necesidades del proyecto, se hizo una búsqueda de las diferentes pantallas que existen en el mercado. Se encontró una de fácil manejo y de tamaño correcto para la aplicación. 9.3.2.1 Pantalla eDIPTFT43 Es un pantalla táctil de cristal liquido de 4.3” que se muestra en la figura 9.3 capaz de desplegar animaciones e imágenes de formato .JPG, .BMP, .GIF y .TGA además de que integra tres diferentes protocolos de comunicación, que son el RS-232, I2C, SPI ,cuenta también con 8 salidas y 8 entradas digitales así como con 2 entradas analógicas. Así mismo cuenta con una tarjeta para facilitar la programación por vía USB. Figura 9.3.Pantalla DIPTFT43. 9.3.3 Software Existen varias posibilidades para realizar la programación del DSP, por lo que se estudiaron las ventajas de cada una de ellas. 9.3.3.1 LabVIEW Ventajas • Fácil programación • Programación rápida 9.3.3.2 Matlab Ventajas • Velocidad de ejecución • Capacidad de cálculo 9.4 Programación en LabVIEW En esta parte se explicará la programación que se realizó en la plataforma de LabVIEW, como primera etapa del proyecto del Arterioritmómetro. Para realizar dicha programación es necesario contar con el prototipo No.1 de HD que consta de: • Tarjeta de adquisición NI • Tarjeta Doppler • Sensor Doppler El objetivo de este programa es obtener ciertos parámetros, como lo son: el ritmo de ciclos, la duración de sístole y de diástole, así como detectar las posibles alteraciones o arritmias que se puedan presentar. El primer paso, consta del estudio de las señales adquiridas con anterioridad, por el equipo de ingeniería de HD y que se encuentran en formato WAV. Las señales muestran el comportamiento de las arterias radial o cubital de varios pacientes del Hospital de Cardiología de Tampico y fueron adquiridas por medio del sensor Doppler. En la figura 9.4 se observa que la señal consta de una serie de variaciones repetitivas que forman los ciclos arteriales. Ciclo Arterial Figura 9.4. Muestra clínica de señal de respuesta Doppler. En la figura 9.5 se puede observar que cada uno de los ciclos arteriales está compuesto por dos fases: • Sístole • Diástole S D Figura 9.5.Distinción entre sístole y diástole También se puede apresiar que la amplitud de sístole generalmente es mayor a la amplitud de diástole, esto ocurre en pacientes saludables. Por otro lado, en algunas muestras se observó que la amplitud o flujo sanguíneo tanto en sístole como en diástole, son muy similares, lo que dificultaba la detección a simple vista de las dos fases y del ciclo. Un ejemplo de esto es figura 9.6. Al ampliar más la señal se notó que las frecuencias de los ciclos tenían una diferencia significativa entre las fases, la frecuencia de sístole siempre era mayor a las frecuencias de diástole. Por esto se tomó la decisión de utilizar frecuencias para la discriminación de las señales. S D Figura 9.6.Muestra clínica complicada en amplitud. 9.4.1 Lectura de archivo .WAV. Para la lectura de las muestras en formato WAV, se realizó un subVI llamado “Sound File Read” que se muestra a continuación en la figura 9.7, y que está basado en el VI express “Sound File Read Simple.vi”. 9.4.2 Gráfica de frecuencias. Para poder obtener esta gráfica, fue necesario hacer un muestro de la señal original en formato WAV. Figura 9.7 Sound File Read.vi. Se desarrolló un VI que aparece en la figura 9.8 llamado “Gráfica de Frecuencias” y que obtiene las frecuencias en base al tiempo de muestreo, esto se hace recortando la señal cada “X ms” y obteniendo por medio de la transformada rápida de Fourier la frecuencia más significativa en ese lapso de tiempo, es decir, la frecuencia que cuenta con la mayor concentración de energía. Para que el resultado sea más confiable, el tiempo de muestreo debe disminuir, lo que implica un aumento en la cantidad de muestras obtenidas y por lo tanto entre mayor cantidad de muestras mayor precisión en la gráfica. Figura 9.8 Gráfica de frecuencia.vi. La figura 9.9 es una gráfica de frecuencias obtenida de una muestra, se observa claramente que las frecuencias correspondientes a los periodos sistólicos son mayores que los correspondientes a los periodos diastólicos Figura 9.9 Gráfica de frecuencias. Al estudiar las frecuencias obtenidas de cada una de las muestras, se topó con frecuencias muy altas que aparecían cuando la amplitud de la señal era próxima a cero, es decir, cuando no existía flujo arterial. La aparición de estas frecuencias dificultó la separación de las fases, por lo que se aplicó un filtro pasa bajas de tipo IIR de tercer orden con una frecuencia de corte de 4kHzcomo se muestra en la figura 9.10 y un algoritmo para eliminarlas, ya que son despreciables y no afectan en el estudio del ciclo arterial. Dicho filtro fue adicionado en el subVI antes mencionado “Sound File Read”. 9.4.3 Detección de sístole Como segunda etapa se realizó una serie de operaciones estadísticas con el fin de obtener los datos necesarios para la configuración de los filtros. Para la configuración del filtro se obtuvieron los siguientes datos estadísticos: la desviación estándar, mediana y el máximo de las frecuencias obtenidas en el muestreo anterior. Figura 9.10 Configure filter. Se calcula el promedio entre la mediana y el máximo, se resta o se suma a la desviación estándar para obtener el límite superior o inferior respectivamente. Se muestra la señal de salida en la figura 9.11. Figura 9.11 Gráfica señal filtrada. Posteriormente se compara la señal filtrada con la suma de la mediana y la desviación estándar de su amplitud, para identificar el periodo en que se presenta sístole, como se muestra en la figura 9.12. Figura 9.12 Gráfica detección sístole. Finalmente la señal obtenida llega al subVI “cuadrada”, donde se genera una señal cuadrada de la señal obtenida en la comparación, se puede apreciar en la figura 9.13. Figura 9.13 Gráfica detección sístole cuadrada . Con la señal resultante podemos obtener el inicio y fin de sístole. 9.4.3.1 Aquisicion de tiempos. La adquisición de los tiempos de inicio y final de sístole se desarrollo en el subVI llamado “cuadrada”. El cual hace un muestreo de la moda estadística de la señal generada en la comparacióny se compara esa moda contra cero, si la moda es mayor a cero y el flanco del pulso es de subida entonces indica que es el punto de inicio de sístole y se guarda ese tiempo en un arreglo llamado “inicio de sístole”, si el flanco es descendiente indica el fin de la sístole y por lo explicado anteriorme el inicio de la diastole, ese tiempo también es almacenado en un arreglo llamado “inicio de diastole”. 9.4.4 Separación sístole. Una vez obtenida la gráfica de onda cuadrada representativa del tiempo de sístole se adquirieron los tiempos de inicio y fin de sístole para recortar la señal original en dichos tiempos y así mostrar solo sístole como se observa en la figura 9.14 o mostrar solo diástole como se observa en la figura 9.15. Figura 9.14Gráfica sístole. Figura 9.15 Gráfica díastole. La gráfica que se muestra en la figura 9.16 es la señal original dividida en sístole (blanco) y diástole (rojo). Figura 9.16 Gráfica señal original. 9.4.5. Obtención de estadística. Una ves adquiridos los tiempos de inicio de sístole y diástole y de generadas las gráficas que ilustran estos tiempos, se desarrolló un apartado de estadística, este apartado contiene modas y desviaciones de los tiempos aquiridos y calculados, con el fin de aportar información fundamental para la continiudad del estudio del ciclo arterial, que realizarán los encargados de la parte médica del proyecto. Los datos que se muestran a continuación en la figura 9.17 son calculados en el Vi principal “Automático” y desplegados en la pestaña “Estadística” del panel frontal . Figura 9.17 Estadística. El tiempo de duración de diástole se calcula restando el inicio de diástole al inicio de sístole del ciclo siguiente, así sucesivamente, almacenando los datos en un arreglo llamado diástole. El tiempo de duración de sístole, se obtiene restando el incio de sístole al inicio de diástole del mismo ciclo, se raliza en cada ciclo y se guardan los datos en un arreglo llamado sístole. Una vez obtenidos los tiempos de sístole y diástole, se suman para calcular el tiempo total del ciclo arterial, guardando los datos en un arreglo llamado ciclo. De cada uno de los arreglos generados anteriormente (sístole, diástole y ciclo) se obtiene la moda, creando asi los indicadores: moda ciclo, moda sístole, moda diástole. Con la obtención de la moda se calcula la desviación que cada uno de los datos pertenecientes al arreglo correspondiente tiene con respecto de ella. Con la moda también se obtiene el numero de normocardias, taquicardias y bradicardias de cada arreglo, es decir los eventos que estan dentro, sobre y por debajo de la moda. Otros datos que se muestran son los valores máximos y mínimos de sístole y diástole. 9.4.6 Gráfica circular. Esta gráfica se diseño para la mejor comprensión de los datos obtenidos anteriormente. El círculo completo representa la duración de la moda del ciclo, en el centro se ecuentran dos semi circulos que representa las modas de sístole(rojo) y de diástole(azul), para denotar las arritmias en cada una de las fases del ciclo, se agregaron dos lineas, una para las taquicardias y otra para las bradicardias. Las taquicardias se encuentran de color verde y las bradicardias de color amarillo, para cada una se colocó en un extremo, el numero de eventos arrítmicos ocurridos en en un minuto. La gráfica se muestra en la figura 9.18. Figura 9.18 Gráfica circular. La gráfica circular se crea como una imagen en este se empalman varias figuras para su construcción. Para su fabricación se utilizó un VI express que sirve para crear círculos llamado “Draw Circule By Radius” se muestra en la figura 9.19. Las entradas de VI express se encuentran del lado izquierdo y las salidas del lado derecho. Figura 9.19 Draw Circle by Radius.vi. Cada una de las entradas necesita una configuración especial: • Arc size: Tamaño del ángulo en grados, 360 representa un círculo completo. • Start angle: Punto de inicio del círculo. • Picture: Se empalma la imagen generada por el VI express a la imagen conectada en picture. • Radius: Tamaño del círculo. • Pixel center: Se configura el centro del círculo. • Fill: Si la entrada recibe un valor verdadero el círculo se colorea y si es falso se queda en blanco. • Color: Se configura el color del círculo. • Pen: Configura el grosor y el tipo de línea. El VI express llamado “Move Pen.vi” sirve para ajustar el punto de inicio de la próxima imagen, se muestra en la figura 9.20. Figura 9.20 Move Pen.vi. Para su configuración sólo es necesario conectar la imagen anterior a la entrada “picture”, definir las coordenadas a donde se quiere desplazar el centro y elegir el tipo de coordenadas que se prefieren: absoluta o relativas. El VI express “Draw Line.vi” que se muestra en la figura 9.21 grafica una línea configurando las siguientes entradas: • End point: Punto final de la línea. • Absolute coordinate: Elige el tipo de coordenadas que se prefieren; absoluta o relativas. • Color: Define el color de la línea. Figura 9.21 Draw Line.vi. Para la poder desplegar el numero de eventos arrítmicos se utiliza el VI express “Draw Text in Rect.vi” se muestra en la figura 9.22 que implanta texto en la recta, para su utilización se necesita configurar las siguientes entradas: • Rect: Se configura la posición en donde se quiere colocar el número. • Text: Entrada del texto que se quiere desplegar, el texto es el número de eventos arrítmicos de la gráfica. Figura 9.22 Draw Text in Rect.vi. 9.4.7 Registro de datos. Para la continuación del ciclo arterial se requirió hacer un registro de los datos calculados para cada muestra. El registro se datos se hace en Excel mediante un subVI llamado “Guardar”,que se muestra en la figura 9.23 y es activado desde el VI principal a través de un control que se encuentra en la pestaña de estadística y se llama “Guardar Información”. Figura 9.23 Guardar.vi. El archivo creado en Excel, se muestra en la figura 9.24, y se guarda automáticamente con el nombre del paciente en la carpeta seleccionada por el usuario a través de la venta emergente que ese muestra a continuación en la figura 9.25. Figura 9.24 Registro Excel Figura 9.25 Ventana selección paciente. El archivo en Excel almacena los datos que se muestran en la figura 9.26 adicionalmente a los datos que se muestran automáticamente en la pestaña de estadística. Figura 9.26 Pestaña datos. 9.4.8 Detección de flujo diastólico. Para estudios correspondientes al periodo diastólico, se realizó otra etapa donde se detecta la ausencia o baja del flujo sanguíneo. Esta parte es desarrollada por el sub vi llamado “Separación Diástole”. Este sub vi realiza la misma operación que el sub vi “Separación Sístole”, la diferencia es, que en lugar de trabajar con base a la muestra original en formato WAV, este vi trata la señal diastólica resultante de la separación de faces. La gráfica que se observa en la figura 9.27 es una conjunción de las señales resultantes de la separación de sístole y la detección de flujo diastólico. En rojo se aprecia la fase sistólica, en verde la fase diastólica y en blanco la baja de flujo sanguíneo en diástole. Figura 9.27 Gráfica de señales resultantes. 9.4.9 Selección de rangos Para determinar si los pacientes se encuentran dentro o fuera de los rangos de normalidad estandarizados, se creó otro apartado en el vi principal que se muestra en la figura 9.28, donde dependiendo de la edad especificada en la pestaña de datos, se comparan las muestras calculadas y se disparan alarmas cuando las muestras de encuentran por encima o debajo de los estándares. Figura 9.28 Selector de edad. X. Resultados Obtenidos En este apartado se describe los resultados obtenidos en cada uno de los objetivos planteados al inicio del desarrollo del proyecto. • Ganar el conocimiento básico para la realización del proyecto: este objetivo alcanzó parcialmente debido a la falta de capacitación con respecto de LabVIEW, ya que no se pudo encontrar un proveedor adecuado hacia los fines del proyecto. • Adquirir el material necesario para la realización del proyecto: Este objetivo se cumplió pero con retraso. • Diseñar un software en base LabVIEW, capaz de determinar ciclos arteriales y dividirlos en sístole y diástole, así como la obtención de los tiempos de cada uno y estadísticas determinadas para el estudio posterior de las muestras: Esta etapa fue concluida con éxito en tiempo y con las especificaciones requeridas al inicio y algunas mejoras extras. • Eliminar el manejo de la PC y hacer un prototipo portátil del Arterioritmómetro: esta etapa no pudo ser realizada debido al retraso en la entrega del material requerido. • Realizar un manual que ayude al usuario en el manejo del prototipo de Arterioritmómetro: Debido a que este objetivo es consecuente con el objetivo anterior no puedo ser concluido. • Agregar otras plataformas de programación y sensores, en el estudio del ciclo arterial: Este objetivo no fue realizado debido a los retrasos de las etapas anteriores. XI. Análisis de Riesgo Las actividades planteadas en el cronograma y las fechas de realización de las mismas, dependen completamente del suministro en tiempo de los materiales necesarios para cada una. Sobre todo en la etapa de implementación del DSP y la pantalla táctil. Si los materiales se retrasan en su envío o requisición, resultaría de vital importancia reprogramar el cronograma en base a los tiempos de adquisición adecuados, para así no afectar el estudio y desarrollo del proyecto. XII. Conclusiones El trabajar en el área médica significa trabajar con datos y parámetros variables, sobre todo, cuando se trata de una investigación nueva en el ramo y no se tienen establecidos con anterioridad bases como referencias posibles para trabajar. Lo que en ocasiones puede derivar en problemas para la resolución de los objetivos. Pero también significa, realizar descubrimientos y aparatos, capaces de aportar un mejor estilo de vida para el hombre. Con el desarrollo de este proyecto se buscaban generar bases para el estudio del funcionamiento arterial y así desarrollar mejores opciones de tratamientos en enfermedades o padecimientos arteriales, y el seguimiento de los tratamientos ya existentes. Sin embargo antes de generar estas bases, lo primero que se requería era comprobar que el desarrollo del proyecto era factible y viable, es decir, que las señales arteriales podían ser tratadas, divididas y estudiadas, ya que era algo que nunca se había realizado. Este objetivo se cumplió, se demostró con la creación de un software, que las señales arteriales pueden ser tratadas, divididas en fases y estudiadas cada una por separado y así generar los datos necesarios para el estudio posterior de las mismas. También se observo que los datos arrojados por el estudio, eran consistentes con los generados por otros aparatos médico ya existentes como el electrocardiograma, lo que significa se cuenta con una buena base para el desarrollo del prototipo portátil. El prototipo portátil no pudo ser completado debido a retrasos en los tiempos de adquisición de los materiales, sin embargo se continuará con este proyecto hasta que se logre desarrollar un aparato comercial de “Arterioritmómetro”. XIII. Recomendaciones Una de las recomendaciones para continuar con este proyecto, es la de estudiar el sensor Doppler que se utilizó, esto con el fin de comprender mejor su funcionamiento electrónico y así poder desarrollar una tarjeta de acondicionamiento para la señal de salida del sensor, la tarjeta podrá ser adaptable en el formato que mejor convenga para el tratamiento y estudio de la señal. Otra recomendación es probar que tan factible es la utilización de otros sensores de diferentes tipos, como los son los sensores de presión, de sonido, infrarrojos, etc. Con lo que se podrá comprobar con cuál de ellos el prototipo se puede realizar con una mayor eficiencia y con un menor costo. Finalmente otro punto a tomar en cuenta es la mejora del algoritmo realizado, al hacer más eficiente el código y buscar la manera de reducir el tiempo de ejecución, además del tamaño de este, esto con la utilización de otros lenguajes de programación, así como hacer modificaciones y utilizar alternativas para el procesamiento de las señal que no ocupen un largo tiempo de ejecución. XIV. Referencias Bibliográficas • TEXAS HEART INSTITUT. (Julio 2010). Centro de Información Cardiovascular. Disponible en: http://www.texasheart.org/hic/ anatomyesp/ anat1_sp.cfm • Pontificia Universidad de Valparaíso. (Abril 2011). Aula Virtual del Laboratorio de Anatomía Humana. Disponible en: http://www.anatomiahumana.ucv.cl/efi/ modulo24.html • Bustillos Cepeda, Jesús. (2010). Ciclo Arterial, Tesis de Maestría, Hospital General de Tampico, Tampico, México. • MEDILINE PLUS. (2010). Disponible en : http://www.nlm.nih.gov/medlineplus /spanish/ency/ esp_imagepages/9124.htm • Fernández, Hugo.(2006). Teoría de la Relatividad Especial, Cinemática Relativista. [Revista Electrónica]. Disponible en:http://www.fisica-relatividad.com.ar/ sistemasinerciales/cinematica-relativista. • Molina Marticorena, José Luis. (2002). Tecnología: Sensores y Transductores. [Revista electrónica]. Disponible tecnologia/sens_ transduct/tipos.htm en :http://www.profesormolina.com.ar/ • Martín Fernández, Martín.(Abril 2002).Contribuciones al análisis automático y semiautomático de ecografía fetal tridimensional mediante campos aleatorios de Markov y contornos activos. Ayudas al diagnóstico precoz de malformaciones. Tesis de maestría. Disponible en: http://www.lpi.tel.uva.es/ ~nacho/docencia/ ing_ond_1/ trabajos_04_05/io2/public_html/5Aplicaciones_diagnostico_3.htm • Berland de León, Natacha. (2001). Valor del ultrasonido Doppler dúplex y Doppler color en el estudio del Sistema Venoso. Tesis de maestría. Hospital D.C.Q Hermanos Ameijeiras" Habana. Cuba. Disponible en: http://www.indexmedico.com/ publicaciones/indexmed_journal/edicion3/doppler_porta_hepatopatia/berland_de_leo n.htm • Salazar Jordi. (Abril 2011). Procesador digital de señales. Arquitecturas y criterios de selección. Disponible en :http://ocw.um.es/ingenierias/sistemas-embebidos/materialde-clase-1/ssee-da-t04-01.pdf • National Instruments.(Abril 2011). Disponible en: www.ni.com.mx • National Instruments Spain. (Abril 2011). El Directorio español de equipos y productos electrónicos. Disponible en:http://www.infoepe.es/c/National-InstrumentsSpain-ni/National-Instruments-Spain-presenta-LabVIEW-DSP-para-dise%C3%B1arimplantar-y-analizar-sistemas-n1020 • Nokia. (2003).Tutorial Interacivo de Nokia.[Resista electrónica]. Disponible en: http://europe.nokia.com/EUROPE_NOKIA_COM_3/r2/support/tutorials/ 7250i/spanish/glossary/index.htm • Xavier Fernand. Guía del desarrollador. Parafino. Disponible en : http://www.imicro.com/pdf/articulos/usb.pdf • Carletti, Eduardo.(2008). Robots, Sensores y Conceptos. [Revista electrónica]. Disponible en: http://robots-argentina.com.ar/Sensores_general.htm