Puesta a punto y mejora de un programa de
adquisición y procesamiento de datos de un osciloscopio rápido para el
tratamiento de señales de un equipo MALDI (desorción/ionización láser asistida
por matriz)
La técnica MALDI es una novedosa técnica que permite ionizar “sin romper” moléculas orgánicas de gran tamaño, que se analizan mediante un espectrómetro de masas acoplado a la cámara de ionización. Esta técnica se está empleando con interés creciente en los campos de la bioquímica y de la proteómica. Para el estudiante, uno de los intereses del presente proyecto radica en que cada vez se requiere más gente con formación científica y amplios conocimientos en programación, capaz de adaptar equipos convencionales a necesidades particulares de una empresa.
Objetivo: Escribir y/o mejorar un programa con las siguientes características:
Capacidad de comunicar con el osciloscopio rápido Yokogawa DL7100 a través de TCP/IP para tomar medidas, visualizar espectros, hacer integraciones de señales y otros tratamientos de las señales. Este osciloscopio se usará para registrar los pulsos de desorción/ionización láser en la técnica MALDI.
Perfil buscado: 1 o varios estudiantes con interés para la programación y la informática. Conocimientos de C son útiles para el proyecto, aunque no imprescindibles.
Descripción:
Recientemente, se ha instalado un equipo MALDI (acrónimo inglés de “desorción/ionización láser asistida por matriz”) en el área de química-física que ha sido diseñado por un profesor del área con el fin de estudiar los fundamentos de esta técnica. El equipo que estamos instalando difiere de los equipos comerciales existentes, presentando una mayor versatilidad. Las señales espectroscópicas recogidas por un fotodiodo llegan al osciloscopio y deben ser tratadas, por lo que se requiere un programa que pilote el osciloscopio, recoja los datos y sea capaz de procesarlos. Al igual que el equipo no es un equipo a la venta en el mercado, no existe en la actualidad un software lo suficientemente versátil para permitir realizar las tareas de adquisición y tratamiento de datos requeridas y que se pueda adaptar en un futuro a las necesidades que irán surgiendo.

Fig.
1: Vista general de un programa en LabView.
El programa se elaborará en LabView, bajo Windows. LabView es un entorno de programación de la compañía National Instruments, muy popular en la industria y en universidades, especializado en la interacción con instrumentos de medida. Proporciona una serie de funciones para la adquisición y el tratamiento de datos, la automatización de medidas, y funciones que facilitan mucho la representación gráfica (fácil creación de pantallas, interruptores, botones, monitores, ...).
LabView es muy intuitivo y se programa de forma visual, centrando la atención en los flujos de datos (como un flow chart). La figura abajo muestra un ejemplo de un programa de LabView. También permite escribir funciones en el lenguaje C.
El estado actual de desarrollo del programa consta de varios módulos. Uno de ellos abre una comunicación con el osciloscopio a través de una conexión Ethernet (TCP/IP), y manda una serie de comandos al osciloscopio para que éste registre y le mande un espectro. Este espectro se visualiza en una pantalla. Otros programas se encargan de integrar una señal, promediar una señal, etc...
Tareas a realizar:
En el marco de un proyecto de fin de carrera, se van a escribir algunos módulos que faltan y asemblarlos en un programa que integre todas las funcionalidades. Dado que se trata de módulos distintos, es posible repartir el trabajo en varios proyectos de fin de carrera que deberán realizarse de forma independiente, pero coordinada. En concreto, faltan por escribir un módulo que sea capaz de leer y escribir los datos de un espectro. También sería deseable que fuera capaz de leer datos en un formato propio del fabricante del osciloscopio, Yokogawa, ya que los espectros que se están registrando en la actualidad en el osciloscopio están en este formato. También se necesita dominar la técnica de combinar programas en C con LabView, ya que algunas de las operaciones a realizar resultan mucho más sencillas y rápidas en un idioma como C.

Fig. 2: Vista para el usuario de un módulo en ejecución