Los sensores RTD van por allí, ¿Y Arduino?
Pufff ¡Qué días estos en los que un resfriado me tiene al borde de la muerte! Bueno no, exagero, pero sí al límite de mi paciencia. Pero sigo vivo y recibo presiones para dejarme de escusas y escribir mucho. Así que en ellos estamos.
Con esto del frío estaría bien poder medir la temperatura. Y ya lo hicimos en su día, pero estos sensores de los que hablamos eran poco precisos (dejémoslo ahí, aunque en realidad son una mier**). Si quieres medir algo con más precisión seguramente hayas oído hablar de Pt100 o Pt1000… ¿Qué es eso? Pues eso vamos a resolver. ¡Sube que te llevo!
¿Qué es eso de los RTD, Pt100, Pt1000…?
Un RTD es un sensor que mide la temperatura basándose en el cambio de resistencia que sucede en el conductor. A mayor temperatura, se agitan más los electrones (tienen más movimiento) y se dispersan más. Esto hace que se reduzca su velocidad por lo que la resistencia es mayor, no puede transmitirse la energía con tanta facilidad.
Dentro de estos tipos de sensores están los Pt100 y los Pt1000. ¿Y qué es esto de 100 y 1000? Ese número corresponde a los Ohms que tiene de resistencia. El Pt100 tiene 100 Ohms de resistencia y el Pt1000 una resistencia de 1K, eso sí, a una temperatura de 0ºC.
Lo de Pt viene porque estos sensores están hechos de platino ya que ofrece alta resistividad, linealidad y un buen margen de temperatura. Sobretodo lo interesante es que son lineales, a más temperatura más resistencia y encima podemos conocer cómo sube esa resistencia exactamente por lo que se puede conocer exactamente la temperatura. Que es lo que realmente interesa… Aunque también pueden haber sensores de Níquel o Cobre, pero los más comunes son de platino.
En cuanto a la forma, los hay en forma de lámina, los hay bobinados (están dentro de un tubo cerámico), enroscados (dentro de un tubo con 4 espacios) y los hay en forma de anillo hueco.
El número de hilos de los sensores RTD
Una cosa bastante importante en estos sensores es el número de cables que se utilizan. los sensores en sí son los mismos pero lo que varía es el número de cables que se le añaden. Pueden haber dos, tres o hasta cuatro cables.
Con dos cables es la forma más sencilla de conectar estos sensores pero la menos recomendada. Esto es porque la alimentación pasa por los cables y la caída de potencial, que es lo que mediremos para conocer la resistencia, será la resistencia del sensor… Y también la resistencia de los cables. La resistencia de los cables es muy baja pero esto variará la temperatura medida. Por lo que no es la forma más recomendable. El esquema por aquí.
Luego está el caso de los tres hilos. Aquí lo que se hace es pasar corriente por el par de cables que pasan por el sensor. Luego se hace pasar la corriente por dos cables que no contienen en sensor. Con este último experimento y suponiendo que todos los cables tienen la misma resistencia se puede calcular la resistencia de los cables y restarla para eliminar el fallo de medida en el sensor. El esquema por aquí.
Por último están los cuatro hilos que es el método más preciso. Por un par de cables se hace pasar una corriente que pasa por el sensor. Los otros dos cables pasan por el sensor pero no pasa ninguna corriente por lo que no se mide su resistencia, solo se mide exactamente la caída de voltaje que hay en el sensor. Y por la ley de Ohm, R=V/I. El esquema por aquí.
Información básica sobre Proteción de datos
Responsable ➥ Sergio Luján Cuenca
Finalidad ➥ Gestionar el envío de correos electrónicos con artículos, noticias y publicidad. Todo relacionado con los temas de rufianenlared.com
Legitimación ➥ Consentimiento del interesado
Destinatarios ➥ Estos datos se comunicarán a MailRelay para gestionar el envío de los correos electrónicos
Derechos ➥ Acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la política de privacidad
Plazo de conservación de los datos ➥ Hasta que se solicite la supresión por parte del interesado
Información adicional ➥ Puedes encontrarla en la política de privacidad y el aviso legal
Utilizando los sensores en Arduino
Veamos cómo se conecta todo esto a Arduino. El problema es que el cambio de voltaje cuando cambia la temperatura es un cambio muy pequeño, tanto que Arduino no es capaz de percibirlo. Así que no podemos utilizar un sensor de muchísima precisión si luego solo somos capaces de leer cada vez que hay una diferencia de 5ºC. No tiene sentido.
Pero este pequeño problema se puede solucionar. Para ello se necesita un puente de Wheatstone. Para montarlo necesitarás resistencias y algunos amplificadores operacionales que hagan de buffer. La verdad es que es un poco entretenido, es por eso que te dejo el enlace de cómo hacerlo para que te partas los cuernos tú mismo.
Si te da pereza tantos componentes en un circuito tan poco amigable hay otras opciones que puedes utilizar para medir en Arduino este RTD. La primera sería el módulo ya existente para medir RTDs en Arduino. Vamos, que alguien ya ha hecho el puente de Wheatstone por ti… Es bastante bastante intuitivo, solo necesitas saber que para un sensor Pt100 utiliza una resistencia de 430 Ohms y para un Pt1000 una resistencia de 4300 Ohms. Aun así, si ves que no está claro, aquí hay un tutorial muy majo para utilizarlo.
Otra opción es utilizar un transmisor RTD de 4-20mA. En los ambientes industriales uno no puede tomar medidas cerca de las máquinas por lo que necesita de cables largos para transportar las señales. Pero estos cables tan largos, para cambios tan bajos de voltaje… Van a ser un problema. No se va a poder percibir los pequeños cambios por la gran resistencia que añaden estos cables largos. Es por eso que se usan estos transmisores.
Lo que hacen los transmisores es convertir el voltaje en corriente. La corriente es más sencilla de transportar y no tiene problemas con la longitud del cable lo que hace que sea perfecta para el envío de información sin verse alterada. Pero claro, Arduino solamente lee voltaje…
Es por eso que se pone este transmisor bien cerca del sensor y luego se lleva el cable largo (o corto, no tiene por qué utilizarse solo en ambientes industriales…) hasta Arduino. Al llegar a Arduino ponemos una resistencia y leemos la caída de voltaje en esa resistencia. Así ya tenemos la temperatura.
¿Qué resistencia? Pues es indiferente mientras el voltaje que se lea no sea mayor de 5 Voltios. Es por eso que una resistencia de 250 Ohms daría 1 Voltio cuando recibiese 4mA (la corriente mínima) y 5 Voltios cuando recibiese 20mA (la corriente máxima). Valores menores de resistencia se podrían utilizar pero tendríamos menos rango de voltaje y eso haría más difícil diferenciar los cambios de temperatura. Con resistencias mayores sobrepasaríamos los límites de Arduino… Y eso no es bueno.
En el transmisor que he elegido la temperatura va de 0 a 150ºC. Por lo que al recibir 1 Voltio que son casi el valor 204 en el analógico de Arduino (si no sabes de que hablo, los pines analógicos te interesan) estaremos a 0ºC y al recibir 5 Voltios qeue son 1023 en Arduino estaremos a 150ºC.
Esto del 204 y el 1023 es porque el pin analógico va de 0 a 1023 por la resolución que tiene. Si con esto no te aclaras, voy a hacer el cálculo que tienes que hacer en tu programa de Arduino para que salga la temperatura en número así bien bonito, como toca.
Pues si recibo 1000 por el analógico (Que en voltaje será (1000/1023)*5Voltios) la temperatura será:
T=T_minima+valor_recibido*(150-0)/(1023-204)
Es decir, la temperatura mínima que puedo tener (0ºC en mi caso) sumada al valor recibido multiplicado por la diferencia entre el valor máximo y mínimo tanto de temperatura como de valor analógico.
Estas calles son distintas, de aquí no se va el invierno…
Y nada, así de fácilmente puedes utilizar estos sensores que la verdad es que son muy precisos. Al menos con el que yo he utilizado he podido llegar a la centésima. Eso sí… no utilicé un Arduino para medirlo sino un driver especializado y tal… Pero a fin de cuentas es lo mismo, un microcontrolador.
Espero que te sea útil. y nada, nos vemos a la próxima… Si el catarro me deja…