Introducción
Los sensores resistivos en los últimos años han tenido un aumento en cuanto a su aplicación en el área tecnológica para la medición de diferentes variables como desplazamiento, fuerza, flujo, presión, temperatura, concentración de gases y humedad, entre otras. La resistencia de dichos sensores varía en proporción del parámetro que se está midiendo en el orden de los Ω a varios MΩ. Si el sensor es alimentado con un voltaje constante el cambio se ve reflejado en el valor de la corriente que lo atraviesa, o de la caída de voltaje que se genera entre sus terminales si se polariza con una corriente constante. Esta señal en voltaje o corriente debe convertirse en una señal digital compatible con un microprocesador o microcontrolador a través de una interface para poderse interpretar. De acuerdo con Sergey (2016), las interfaces de los sensores resistivos pueden ser divididos en dos tipos: las interfaces directas con salida digital y las interfaces cuasi-digitales. Estas últimas se implementan con una conversión intermedia, esto es, una conversión de resistencia a frecuencia, a periodo, a pulso o a ciclo de trabajo. Las interfaces cuasi-digitales no usan un convertidor analógico-digital, tienen la característica de tener un amplio rango dinámico y comúnmente dependen del tiempo de carga y descarga de un circuito RC, utilizando un oscilador (Kirianaki et al., 2002; Kokolanski et al., 2013). Típicamente, el oscilador se implementa con una celda de integración seguido de un comparador de voltaje para producir una señal periódica dependiente de la resistencia del sensor. En la literatura se han propuesto numerosos circuitos de interfaz cuasi-digitales para sensores resistivos (Mohan et al., 2010, 2009; Choi et al., 2015), al igual que se han propuesto diferentes tecnologías para desarrollar estas interfaces (Jayaraman & Bhat, 2007; Álvarez, 2014; Fatecha et al., 2013; Nakagawa et al., 2018; Reverter, 2012). El objetivo de este trabajo es mostrar el diseño y el desempeño de una nueva interfaz cuasi-digital para sensores resistivos, implementada en una tarjeta de desarrollo programable basada en la tecnología PSoC (por sus siglas en inglés, Programmable System on Chip), la cual permite programar componentes analógicos. Ofreciendo con esta implementación un amplio rango dinámico de entrada y robustez a variaciones en el voltaje de alimentación, esto sin el uso de voltajes de referencia ni bloques de alto desempeño. La solución propuesta consiste en usar una arquitectura basada en la técnica ratiométrica (Anderson, 2004). Resultando en una solución simple, económica, compacta y de bajo consumo de potencia
El sistema consta de dos partes: primero, un circuito de acondicionamiento que transforma la corriente del sensor a una señal periódica; y segundo, un algoritmo simple que monitorea la corriente de polarización y permite modificar la relación entre la corriente de polarización y la de integración del sistema obteniendo un mayor rango dinámico.
El documento se organiza de la siguiente manera: En la sección sensores resistivos se muestran las características de algunos sensores resistivos que se encuentran en el mercado y que se utilizaron para demostrar el desempeño del circuito propuesto. En la sección siguiente se describe el diseño y funcionamiento de los bloques de la interface. La sección contigua muestra la implementación del circuito propuesto en una tarjeta PSoC. Finalmente, se muestran los resultados obtenidos a partir de a experimentación y las conclusiones.
Sensores resistivos
Sensor de posición
El primer sensor resistivo que se revisó fue un sensor de posición modelo SoftPot de SpectraSymbol. El funcionamiento y características se muestran en (SoftPot, 2022), sin embargo, aquí se describen los parámetros de interés. El sensor, a su salida entrega una respuesta lineal respecto a la posición dentro de su membrana resistiva (como se muestra en la Figura 1). Tiene un recorrido de 10 mm a 100 mm con una variación en resistencia de 1kΩ a 10kΩ, por lo que su resolución puede definirse con la siguiente expresión:
donde d es la posición en milímetros y Rs es la resistencia en KΩ del sensor.
Sensor de desplazamiento angular
El sensor de desplazamiento angular (FlexSensor de la familia SpectraSymbol) varía su resistencia de manera lineal al flexionarse su membrana. Tiene un rango de desplazamiento de 0 a 90º con un cambio de resistencia de salida de 25KΩ a 120KΩ. Su salida está dada por la siguiente ecuación:
donde g es la entrada en grados. Sus especificaciones técnicas se pueden encontrar en (FlexSensor, 2022) y su construcción física se puede observar en la Figura 2.
Sensor de fuerza
El sensor de fuerza es una membrana flexible de 0.5 mm de espesor aproximadamente. La cual varía su resistencia con el incremento de la fuerza aplicada en la misma. En la Figura 3 se muestra el modelo de un sensor de fuerza de la familia Alpha. Sus características eléctricas se pueden encontrar en (Alpha, 2022). Su variación en resistencia está en el rango de los 2KΩ a los 2MΩ. El peso que puede detectar está en el orden de los 10 g a los 1000 g.
De los sensores antes revisados se puede observar que el rango de variación de la resistencia va desde unidades de KΩ hasta MΩ, sin embargo, en la literatura se han encontrado sensores que van desde unidades de Ω hasta cientos de MΩ. El diseño de una interfaz que permita tomar la lectura de estos sensores requiere tener un amplio rango dinámico. En la siguiente sección se muestra el desarrollo de la interfaz propuesta abarcando dichas características.
Descripción y operación del circuito
El principio de operación de la interfaz se muestra de forma simplificada en la Figura 4, el cual consiste en un convertidor de resistencia a periodo. En la primera etapa de la interfaz (Bloque 1), el sensor Rs (el cual representa un sensor resistivo cuyo valor puede estar entre las unidades Ω hasta los cientos de MΩ), es polarizado con un lazo de corriente programable Iin. A través de espejos de corriente, esta corriente se hace pasar hacia el interruptor SW1 con un factor de copia de β:1. La corriente de salida Iout, carga y descarga el capacitor C. Cabe mencionar que el voltaje en un capacitor es la integral de la corriente dividida entre la capacitancia de dicho capacitor, en este caso la corriente de carga es una fuente de corriente constante, por lo que el voltaje en el capacitor queda determinado por la ecuación 3. De esta manera, el voltaje en el capacitor es una línea recta cuya pendiente depende de la magnitud de la corriente y de la capacitancia, tal como se muestra en la Figura 5.
En la segunda etapa de la interfaz (Bloque 2), la señal Vc(t) se compara con el voltaje de referencia VH, cuando el capacitor se está cargando, y con el voltaje de referencia VL cuando se está descargando, siendo VH>VL. Cada vez que Vc(t) alcanza el valor de VH o VL, la dirección de la corriente a través del capacitor se invierte. De esta manera, el periodo de la señal de salida está dada por:
Para que el sistema se vuelva independiente a cualquier voltaje de referencia e inmune a cambios en el voltaje de polarización se utiliza la técnica ratiométrica (Álvarez, 2014). La cual, en este caso particular, se aplica al igualar el voltaje diferencial del sensor y los voltajes de referencia en la etapa de comparación. De igual forma, el voltaje (VH-VL) se puede definir en términos de la corriente de entrada y del sensor. De esta manera la señal de salida ahora está dada por:
con una ganancia (=1 en el espejo de corriente, donde la corriente Iin es igual a la corriente Iout, la salida del sistema queda como:
donde queda explicita la linealidad del sistema, debido solo a la dependencia del valor de resistencia del sensor y del capacitor de carga.
Implementación del circuito en tarjeta PSOC
Las tarjetas PSoC, son una serie de tarjetas creadas y desarrolladas por la empresa Cypress encargada de diseño de sistemas embebidos (Cypress Semiconductor Corporation, 2022). El uso de este tipo de tarjetas en el acondicionamiento de señales ha sido muy estudiado (Fatecha, 2013; Castellanos et al., 2020; Massot et al., 2020). Las tarjetas PSoC cuentan con un conjunto de bloques digitales y analógicos programables, memorias y microcontroladores. La facilidad de programación de dichos bloques permite que el acondicionamiento de señales sea de manera fluida y sin problemas de adquisición.
En la Figura 6 se muestra la implementación del circuito propuesto en la tarjeta PsoC modelo 5LP. Se observa un bloque denominado R-I (convertidor de Resistencia a Corriente) donde se polariza al sensor resistivo con una corriente Iin; para ello la tarjeta PSoC cuenta con un bloque generador de corriente, el cual ofrece tres rangos de corriente programable, de 0 a 31.875 μA con pasos de 0.125 μA/bit, de 0 a 255 μA con pasos de 1 μA/bit y de 0 a 2040 μA con pasos de 8 μA/bit, cada rango es un número formado por 8 bits; se utilizaron dos generadores de corriente en la resistencia para generar un voltaje diferencial en la misma, esto para obtener los voltajes VH y VL que son utilizados por el comparador del bloque siguiente para implementar la técnica ratiométrica. El ADC configurado en una resolución de 8-bits, ayuda a inyectar la corriente adecuada a la resistencia para evitar saturaciones o daños a la tarjeta. En el bloque denominado CCO (Oscilador Controlado por Corriente) se utilizaron dos bloques de generación de corriente que copian la corriente de los dos generadores de la etapa anterior con una ganancia ( programable. La corriente de carga y descarga llega al capacitor C, a través de un bloque multiplexor (Mux1). El voltaje del capacitor se compara con el voltaje VH-VL de la etapa de polarización con el bloque Mux2. Por último, se muestra un bloque denominado COM, el cual activa el puerto UART de la tarjeta para tener una visualización de datos en el puerto serial de la PC.
Resultados experimentales
El circuito fue probado inicialmente con resistores comerciales en un rango de unidades de Ω a cientos de MΩ para emular al sensor. Los resultados mostraron lecturas eficientes desde 490Ω hasta 8MΩ, tal como se muestra en la Figura 7. Se obtuvo un rango dinámico a la salida de 84.25dB con un coeficiente de correlación de 0.997.
La implementación del circuito tiene una respuesta lineal con un rango dinámico amplio, sin embargo, como se mencionó anteriormente, existen sensores que van más allá de este rango obtenido. Para aumentar esta característica se implementó un algoritmo en la tarjeta que compara el voltaje (VH-VL) con un voltaje de referencia VMETA. De tal forma que, al suponer que el voltaje VMETA varía en un rango respecto al incremento en el paso de la corriente de polarización, de acuerdo con el algoritmo mostrado en la Figura 8, el rango dinámico a la salida del circuito aumenta.
El algoritmo modifica el valor de VMETA con cada paso de corriente, esto es, se realiza un barrido de corriente de polarización Iin. Se verifica que el valor del voltaje VADC sobrepase el valor de VMETA, si este sobrepasa, activa la corriente de salida Iout. En caso de que no sobrepase sigue aumentando los pasos de corriente y a su vez disminuyendo el voltaje VMETA, hasta que sobrepase el valor.
Por lo tanto, el algoritmo permite “predecir” el valor de resistencia del sensor, haciendo que la corriente Iout sea lo más adecuada posible.
La Figura 9 muestra los resultados experimentales con la implementación del algoritmo, donde se observa un aumento en el rango dinámico, obteniendo 136.7dB, en un rango de resistencia medida de 5Ω a 36MΩ y un coeficiente de correlación de 0.99766 por lo que la linealidad se mantiene con respecto a la implementación anterior.
El rango dinámico obtenido con el algoritmo se puede comparar con otros trabajos similares donde se puede observar que se está logrando ampliar el rango de lectura (Tabla 1).
Rango de resistencia de entrada |
Rango dinámico | |
---|---|---|
Gómez et al., 2019 | 1kΩ → 1MΩ | 60 |
Jayaraman & Bhat, 2007 | 150Ω → 85MΩ | 115 |
Nakagawa et al., 2018 | 3kΩ → 100kΩ | 30 |
Chiang et al., 2017 | 10kΩ → 1MΩ | 40 |
Circuito propuesto | 490Ω → 8MΩ | 84 |
Circuito propuesto con algoritmo | 5Ω → 36MΩ | 136 |
Cabe mencionar que el desempeño del circuito propuesto con la implementación del algoritmo, fue probado con tres sensores comerciales descritos anteriormente. Inicialmente se determinó la resistencia de los sensores a partir de la variable de entrada (en este caso posición, desplazamiento angular y peso), utilizando un multímetro digital modelo 5491A de la familia BK PRECISION.
En la Figura 10 se muestran las mediciones con el sensor de posición SoftPot de SpectraSymbol como entrada. Se obtuvo un error relativo ((Rfit − Rmedido)/Rfit) menor a 0.6 % respecto a las mediciones de resistencia.
De igual forma, en la Figura 11 se muestran las mediciones experimentales con el sensor de desplazamiento angular FlexSensor de SpectraSymbol. Donde se obtuvo un error relativo menor a 0.15 %.
Y finalmente, en la Figura 12 se muestran los resultados con el sensor de fuerza de Alpha. Se obtuvo un error relativo menor a 0.4 %.
Conclusiones
En este trabajo se presentó una interfaz cuasi-digital para sensores resistivos. La solución propuesta está basada en la técnica ratiométrica, la cual permite que el circuito sea independiente de cualquier voltaje de referencia. El circuito se implementó en una tarjeta programable PSoC, con bloques analógicos programables. El circuito propuesto entrega a la salida una señal cuadrada que es fácilmente leída por un sistema de procesamiento digital de bajo costo. El rango dinámico obtenido por el circuito es mejorado con la implementación de un algoritmo debido a las ventajas que ofrece la tecnología PSoC. Se han reportado varios trabajos en el acondicionamiento de sensores resistivos, sin embargo, la interfaz presentada en este trabajo tiene la ventaja de tener un amplio rango dinámico, exactitud y sobre todo una alta tolerancia a variaciones en los voltajes de alimentación. El desempeño de la interfaz fue probado con tres sensores comerciales, los cuales tienen variables físicas de sensado diferentes.
De acuerdo con las mediciones experimentales, se puede concluir que el esquema propuesto tiene un buen desempeño y puede ser utilizado en aplicaciones portables, con resistencia de entrada de amplio rango y de bajo consumo de potencia.