lunes, 18 de febrero de 2013

Interoperabilidad de dispositivos médicos

            Una situación que me ocurrió hace un mes me viene al pelo para comentaros alguna cosilla sobre este tema.

Iba yo tan tranquilamente por la calle dando un paseo cuando, de repente, un hombre que venía de frente juntó sus manos como si estuviera rogando algo. Cuando me paré, se sacó del bolsillo de la chaqueta un mapa y dijo algo en no sé qué idioma (por el acento y los rasgos del hombre, sería o ruso, ucraniano o del este en general), de lo cual únicamente pude entender a duras penas la palabra “ayuntamiento”. Y que conste que la entendí porque creo que hizo por pronunciarla lo más castellanamente posible…

 El mapa era de la localidad donde vivo y el hombre, posiblemente sabedor de que no todo el mundo podemos hablar cualquier idioma, tuvo a bien señalarme la ubicación del ayuntamiento de la localidad donde vivo. Deduje, entonces, que quería saber por dónde se iba hacia la casa consistorial.

Traté de hablarle en español y en inglés, pero no hubo manera de podernos comunicar. La verdad es que era complicado sin podernos entender verbalmente. Sin embargo, le dije con un gesto que esperara y cogí el mapa. No tenía más que cruzar un par de calles, así que le pedí que me acompañara hasta la primera calle y, de ahí, le señalé los edificios que debía de pasar para llegar al ayuntamiento. Tras hacer un par de recados acabé yo por la zona y pude ver cómo el señor salía del ayuntamiento. Digo yo que hice bien en enviarlo para allá, aunque no las tenía todas conmigo de que nos hubiéramos entendido bien.

Analizando la situación, está claro que, aunque fuera eso lo que me estaba pidiendo y aunque consiguiera guiar a aquel hombre al ayuntamiento, no pudimos comunicarnos correctamente de primeras. Y ¿por qué? Porque hablábamos en idiomas diferentes, claro está.

Pues precisamente de aquí parte la solución al problema. Es decir: “si dos personas no se entienden porque hablan diferentes idiomas, la solución primera que podría ocurrirse es utilizar un lenguaje más básico, como fueron, en este caso, los gestos; o bien usar un idioma más enriquecido, como por ejemplo el inglés, que ambos supiéramos hablar, para poder llegar fácilmente a una comunicación total”. Por las circunstancias, parece ser que el básico es el que solucionó el tema.

A continuación voy a traducir el texto entrecomillado anterior y lo voy a pasar a lenguaje ingenieril, que es del que nos gusta presumir a veces a los técnicos ;): “Si entre dos equipos médicos no hay conexión porque sus protocolos de comunicación son diferentes, la solución puede pasar por crear o aplicar un software común de alto o bajo nivel de programación para que interoperen (se comuniquen) correctamente”. Como véis, la esencia es la misma en ambos lenguajes, pero claro, hay tecnicismos a los que los científicos estamos acostumbrados que es normal que la gente normal no sepa… Nuestra labor como divulgadores es realizar esta traducción para que se nos entienda correctamente.

Pero bueno, reivindicaciones aparte, esta es la idea que desarrollo en esta duodécima entrada del blog. Parece lógico que, en principio, si queremos conectar varios equipos en un mismo hospital, todos se comunicarán correctamente, con el mismo idioma y así se podrán gestionar mejor los datos generados. Pues bien, esto es algo que, sorprendentemente no ocurre en la práctica.

¿Sorprendentemente? Bueno, no tanto…  En realidad, Siemens tiene sus propios equipos y los gestiona con lenguajes de programación propios. Bosch lo mismo, General Electric (GE) ídem y así sucesivamente. Esto hasta aquí está bien, ya que toda empresa tiene derecho a gestionar sus equipos como quiera. Pero claro, un hospital que quiera el mejor escáner de Siemens, la mejor resonancia de GE y, en definitiva, lo mejor de cada casa, cuando quiera incluir todas las imágenes o señales que se van produciendo en el paciente en una misma historia clínica, se puede hacer un lío. Y ya no digamos cuando este paciente, por desgracia, sufra un percance en el otro lado del mundo. Para conseguir los datos anteriores del paciente de manera que esté todo integrado en la misma ficha médica, ya podemos rogar al altísimo todo lo que queramos, que no va a haber manera.

Y todo esto ocurre porque los equipos no tienen protocolos o lenguajes de comunicación compatibles entre ellos, ni con los del exterior. Es como si se juntan un inglés, un español y un francés a hablar sin saber nadie del idioma del otro y luego, además, tienen que hablar con un chino que no sabe ninguno de los idiomas europeos. Aquello parecería un gallinero en el que no habría quien se enterara de nada. Pues lo mismo ocurre cuando los dispositivos médicos tratan de comunicarse entre sí.

En el mundo científico también ocurre esto. Cada país puede publicar sus contribuciones en su propio idioma, pero entonces sólo aquellos extranjeros que sepan hablar el idioma de publicación se enterarán de lo que se ha estado investigando. ¿Qué se hace, entonces? Se acuerda que todo el mundo que quiera dar a conocer sus investigaciones a la comunidad científica internacional lo haga en inglés. Pues en el caso de los equipos médicos, lo que se crean son los llamados estándares de interoperabilidad. Es decir, lenguajes (más específicamente “protocolos”) de comunicación generales e iguales para todos, de manera que cualquier dispositivo pueda comunicarse con el resto correctamente.

Recordando las clases de la asignatura de “lengua”, allá por mis primeros 10-15 años de vida, para que se establezca una comunicación debe haber un emisor, un receptor y un canal (Fig. 1). Pero también tiene que haber algo que decir y una forma de hacerlo, es decir, hablar un determinado lenguaje común entre emisor y receptor que sirva para comunicarse adecuadamente. Este esquema, que es muy básico y que cualquiera podemos entender, es la base de todo lo que hay debajo de los lenguajes de programación de los informáticos: las apps (de moda, últimamente), el android, el iOS, Microsoft, etc. Pero también es la base de protocolos de comunicación entre ordenadores y servidores de cualquier parte del mundo.

  
Fig. 1. Esquema de los elementos de la comunicación en una interlocución habitual entre personas.

No entraré en profundidad en qué partes componen un protocolo de comunicaciones. Lo sé y lo tuve que aprender a la fuerza, pero no es algo en lo que yo esté interesado especialmente y tampoco viene al caso. Sin embargo, sí que creo que puedo haceros ver los rasgos generales de este tipo de comunicaciones a través del siguiente esquema que os pongo en Fig. 2:

-          Emisor: Ordenador PC1 del Hospital 1.
-          Receptor: ordenador PC2 del Hospital 2.
-          Canal: cable/aire, según si la comunicación está en el mismo hospital o en otro distante.
-          Lenguaje o codificación: estándar de interoperabilidad establecido para todos los hospitales comunicados entre sí.
-          Información o señal: datos del paciente sobre sus pruebas, diagnósticos, etc.

El protocolo de comunicaciones establece las normas que van a seguir los ordenadores 1 y 2 para comunicarse. Por hacer un símil con los humanos, es el libro de lenguaje que enseña las normas de la gramática, el vocabulario, la fonética, la sintaxis, etc. Pero también es el que se encargar de decirle a cada ordenador qué pasos tiene que dar. Así como nosotros, los humanos, pensamos lo que vamos a decir, enviamos las señales eléctricas a los músculos de la cara y la lengua y usamos las cuerdas vocales para darle entonación; los ordenadores acumulan datos de información, los identifican, los empaquetan y los mandan en forma de “unos y ceros” a través de una red cableada o por vía aérea, según los kilómetros de distancia que existan entre los ordenadores a comunicar.

Igual ocurre a la hora de recibir el mensaje: los humanos lo captamos a través del oído, el tímpano hace vibrar la cadena de huesecillos y, a través del nervio auditivo, llegan al cerebro donde se procesa y se entiende. Bueno, pues en el caso del ordenador receptor, se captan los unos y ceros que van llegando, se van desviando hacia el destino que tienen que llegar (por ejemplo, la aplicación del historial clínico del paciente) y, si el software es suficientemente inteligente, se puede, incluso, procesar esa información, como pasa con las imágenes o señales médicas.


Fig. 2. Esquema de una comunicación habitual entre ordenadores de dos localizaciones diferentes. El estándar de interoperabilidad es el que establece cómo codificar/decodificar la información para que sea comprensible por ambos PCs. En este caso, se muestran los logotipos de los estándares más usados: HL7, ISO 13606 y DICOM.

En sí, la idea es la misma para ambos ejemplos, solo que en el caso de las máquinas, todo está guiado electrónicamente. Es más, hasta tal punto son similares las formas de comunicarse de humanos y ordenadores que, como todo, el lenguaje va evolucionando. Con el tiempo se van corrigiendo errores, se perfecciona la manera de decir las cosas e, incluso, se añaden modificaciones o más términos al vocabulario. Pero siempre con la idea de mejorarlo para que la comunicación sea totalmente eficiente.

Bueno, pues en esto se está trabajando hoy en día. Hay un montón de gente que dedica su horario de trabajo o investigación a mejorar la eficiencia en los protocolos de comunicación entre hospitales. Bien innovando sobre lo ya existente o bien creando desde cero un nuevo protocolo.

Un ejemplo de esto lo tenemos en una tesis recientemente presentada por un compañero del Departamento de Ingeniería Eléctrica y Electrónica de la UPNA. En ella se ha tratado de crear y optimizar un estándar de interoperabilidad entre dispositivos médicos para que todos ellos puedan comunicarse entre sí y transferirse datos.

Para que os hagáis a la idea de lo que implica esto, básicamente sería que con un dispositivo del tamaño de una tarjeta gráfica de las que llevan nuestros ordenadores (por decir algo de tamaño reducido) y algún que otro servidor de datos, se podrían gestionar todas la comunicaciones que se generaran en el hospital donde estuvieran instalados estos equipos. Pero también las comunicaciones entre todos los hospitales, suponiendo que todos adquirieran esta forma de comunicación. De esta manera, un paciente podría disponer de todo su historial clínico allá donde fuera, sin necesidad de pedir permisos especiales entre hospitales y los correspondientes líos burocráticos que se podrían derivar de ello.

Por último, tanto si estáis interesados como si os gustaría saber un poco más sobre este tema, a continuación os paso un par de enlaces sobre estándares de interoperabilidad. De los tres que os he mencionado, el más conocido es DICOM, ya que es el estándar con el que se gestionan prácticamente la totalidad de las imágenes médicas. Radiografías, escáneres, mamografías, resonancias, etc son actualmente gestionadas y procesadas empleando este estándar, de manera que todos los hospitales que dispongan de este código podrán actuar y visualizar las imágenes de los pacientes. Los otros estándares son más genéricos, y agrupan tanto imágenes DICOM como cualquier tipo de datos relacionados con pruebas y diagnósticos realizados al paciente, de manera que se puede gestionar un historial clínico electrónico con todas las prestaciones actuales.

- Enlace al protocolo HL7: http://www.hl7.org/index.cfm

- Enlace al protocolo DICOM: http://medical.nema.org/

- Enlace al protocolo CEN-ISO-13606: Wikipedia da enlaces a las diferentes partes del protocolo de comunicación en http://es.wikipedia.org/wiki/En13606.

Gracias y hasta la próxima entrada!! ;)

Besos y abrazos.