He adquirido recientemente una bomba rotatoria Edwards E2M8, que tras una pequeña puesta a punto se ha quedado como nueva (tenía rota la transmisión del giro, y los rodamientos del motor por cambiar). Esta bomba es capaz de llegar a vacíos de 7.5·10^-4 mmbar. Tengo en mente varios proyectos para realizar con ella, pero cualquier experimento de vacío necesita conocer con relativa exactitud la presión de trabajo del sistema. Es por ello que me he decidido a construir un medidor de vacío.
El rango de presiones que alcanza esta bomba esta bien cubierto por sensores Pirani y Termopares. De entre los dos, la construcción de un sensor Pirani por parte de un científico amateur es mas sencilla y económica, y suele estar bien documentada.
Las sondas de los sensores pirani están compuestas por una pequeña resistencia de platino (normalmente, una PT100, elemento de un tamaño muy pequeño, unos 2x2 mm) cuya temperatura se eleva a un valor constante entre 200-300ºC mediante el paso de una corriente eléctrica. Dependiendo de la presión del sistema donde se encuentra esta resistencia, su enfriamiento por disipación del calor al gas envolvente será mayor o menor.
El platino varía su resistencia proporcionalmente con la temperatura (resistencia PTC, Positive Temperature Coefficient), y por lo tanto cualquier cambio en la presión modifica su temperatura y es fácilmente medible.
El diseño de los sensores pirani implica que la resistencia de platino forme parte de un puente de Wheatstone que siempre se encuentra equilibrado.
De esta manera, un amplificador operacional detecta cualquier variación de la resistencia de platino y realimenta el puente de Wheatstone positiva o negativamente para mantener la temperatura de la resistencia constante. El voltaje suministrado por el operacional es la señal de medida y es función de la presión.
Circuito sensor
El circuito electrónico empleado es una pequeña variación del propuesto por el Profesor Frank de Copenague y Sergi.
En este circuito, el puente de Wheatstone está conectado a las entradas del operacional (LMC662), que a su vez alimenta al puente. Cualquier variación en la temperatura de la PT100, será detectada por el operacional, que suministrará mas o menos corriente a través del transistor 2N222 con tal de mantener el equilibrio en el puente. La salida del operacional se conecta a la otra mitad del LMC662, con tal de amplificar la señal y permitir una medición con referencia a masa, para poder conectarla al microcontrolador.
Observé que la señal de salida tenía una oscilación de su voltaje, unos 20 mV cada 100 Hz. Esto se solucionó añadiendo un filtro paso-bajo a la salida del circuito:
Señal obtenida sin filtrar |
Construcción de la sonda
Después del montaje y el pulido exterior, así es como ha quedado:
Sonda PT100 terminada |
NOTA: Cometí un error en el montaje de la sonda, que ya he solucionado: las patillas de la sonda estaban soldadas a los cables azul y blanco que se ven en la foto. Esto ocasionó dos tipos de problemas 1) la disipación de la temperatura es mucho mas ineficiente, y esto repercute en una respuesta lenta a los cambios de presión. 2) el paso de los filamentos de cobre por dentro de las fundas de plástico no esta sellado completamente, así que experimenté pérdidas de vacío. Como alternativa empleé cable de cobre esmaltado, que solucionó el problema de las pérdidas y de la lenta respuesta.
Procesado de datos y calibrado
El microcontrolador es una placa de Arduino UNO, basado en chip AVR-ATmega328. La salida del circuito sensor de la PT100, la he conectado al conversor analógico digital del Arduino (pin A5). Los potenciómetros del driver los he ajustado de forma que el rango de voltajes varíen entre unos 4800 y 100 mV para presiones de entre 1000 y 1 mbares. De esa forma me aseguro de que entren dentro del rango aceptado por el Arduino (0-5V).
Para hacer la recta de calibrado, he conectando mi sonda, y una comercial (Vacuubrand VAP 5) a la bomba rotatoria mediante una T. Ambas sondas tienen la misma geometría, y están conectadas en horizontal. Tras llegar al máximo vacío que alcanza la rotatoria, y con las dos sondas estabilizadas, he apuntado los valores de presión y mV, y progresivamente he ido cerrando el manorreductor para que la presión fuera aumentando, mientras anotaba los valores durante todo su recorrido.
Tras representar gráficamente los datos, se observa que la curva del sensor tiene dos tramos bien definidos que se pueden ajustar mediante un par de rectas. El primer tramo está entre 0.001 - 0.1 mbar, y el segundo entre 0.1 - 2 mbar. Tras obtener las ecuaciones de las rectas por regresión de mínimos cuadrados, un pequeño código junto con los coeficientes obtenidos me devuelve los valores en unidades de presión.
Los valores de la presión son mostrados a través de un LCD de 16x2 caracteres, basado en el HD44780, bastante conocido en el mundo de los microcontroladores. Para controlar el LCD, se ha empleado la librería LiquidCrystal.h, que viene "de serie" con el IDE del Arduino.
He conectado a la entrada analógica A0, un pulsador que permite seleccionar que unidad de presión a emplear.
Display de barras, con sus shift registers (74HC595) |
También he añadido un pequeño display de barras, que indica visualmente la tendencia de la presión del sistema de vacío. Los leds se iluminan gradualmente dependiendo de la velocidad de disminución (del centro hacia abajo) o aumento (del centro hacia arriba) de la presión. Si la presión está estable, se iluminan los del centro.
Como este sistema funciona por un promediado de los últimos valores, es fácil ver si un ligero cambio en los datos es una simple oscilación, o que la presión sigue disminuyendo lentamente.
Parte posterior del LCD y del display de barras |
La iluminación de los leds se hace con un pequeño controlador que simplifica el número de pines a utilizar del arduino. El controlador del display se ha construido con dos registros de desplazamiento de 8-bits conectados en serie al cual se le envía una cadena de bits con la información de que leds debe de encender.
Caja
La caja donde he instalado toda la electrónica es de un filtro de radiofrecuencias obsoleto de un RMN. He aprovechado las salidas coaxiales, una para la sonda de vacío, y la otra pretendo utilizarla en un futuro para una sonda piezoelectrica para presiones de entre 1000 y 1 mbar. A la caja le he añadido un portafusibles, un interruptor general y una salida USB para poder conectar el Arduino al ordenador sin necesidad de abrir el dispositivo.