Archivo de la etiqueta: Sensores analógicos

Ingresar lectura de varios sensores a través de un único pin analógico

Cuando queremos crear un robot que distinga el blanco del negro sobre una superficie, se realiza esa detección con sensores infrarrojos reflectivos. Si la necesidad de determinar las ubicaciones debajo del sensor requiere precisión, hay que usar conjuntos de varios sensores, y sus salidas conectarlas a varios pines de entrada de un microcontrolador.

Por ejemplo, para seguidores de línea veloces (velocistas) tenemos la opción de utilizar un sensor como el de la imagen de arriba, el QTR-8A, fabricado por Pololu. O un conjunto sensor similar hecho por nosotros con, por ejemplo, un conjunto de CNY-70.

La mayoría de las veces los microcontroladores que usamos para controlar un robot tienen una cantidad limitada de pines de entrada y salida, y si tenemos que usar uno de éstos por cada sensor infrarrojo tendremos problemas para añadir funcionalidades a nuestro robot: comunicación serie, acelerómetros, giroscopios, I2C, sensores de distancia, detectores de choque, pulsadores o llaves, motores, tacómetros, leds, etc.

En los robots seguidores de línea el mínimo es dos sensores infrarrojos, aunque con esta cantidad el robot seguidor se moverá oscilando, y es muy posible que se escape en curvas cerradas o cruces de líneas. En los robots de Sumo se necesitan 4, incluso más si es un diseño más sofisticado, y en los seguidores de línea velocistas suele colocarse una hilera de 6 sensores o más.

Esto lleva al uso de demasiado pines de entrada en nuestro micro. Se podría utilizar algún tipo de multiplexor (como el CD74HC4067) para ir leyendo cíclicamente los sensores, pero eso significa el uso adicional de al menos 3 líneas, necesarias para seleccionar las entradas del multiplexor si se trata de un conjunto desde 6 y hasta 8 sensores, o 4 líneas adicionales si tenemos hasta 16 sensores. (Esta cantidad de sensores no es excesiva en un robot medianamente operativo y desarrollado.)

Pero veremos una manera de leer varios sensores de infrarrojos usando sólo un pin analógico del microcontrolador.

La idea es vieja: convertir la activación de los sensores en una selección de resistores que aportan cada uno diferentes corrientes, y que al sumarse entregan una salida combinada, con valores diferentes de voltaje. A esta configuración se le llama “resistor ladder” (escala de resistores) y lo que construimos es, en concreto, un convertidor digital a analógico.

Al usar varias resistencias, dependiendo de la entrada que se active, el pin del micro recibe una tensión distinta. Si el conjunto de resistores está bien diseñado, se puede determinar cuál es la entrada que se ha activado.




Con sensores basados en led infrarrojos y fototransistores, la señal obtenida será analógica y relacionada con la luz que se refleja, a menos que los sectores blanco y negro sean muy definidos y que no haya luz ambiente que interfiera. Para convertir estos valores intermedios a ceros y unos utilizamos un chip CMOS inversor Schmitt trigger 40106 o 74HC14, y en sus salidas ponemos resistencias en serie de distintos valores, que al final de la cadena se unen a un punto en común.

Desde ese punto se tomará el valor de la tensión utilizando una entrada analógica, y si está bien calculado el conjunto de resistencias, el valor analógico será distinto dependiendo del sensor que se haya activado. De ese modo, en el caso de un seguidor de líneas, conoceremos la posición del robot respecto al curso que debe seguir.

La ventaja es que tener varios sensores CNY70, o un conjunto QTR-8A ya no es un problema, porque podemos leer todos los valores con un único pin de nuestro microcontrolador, y dejar el resto libre para otras funciones.

Recordemos que la conversión de analógico a digital dentro del módulo de un microcontrolador lleva tiempo. Por cada sensor que se lee con los pines analógicos se produce una pausa, ya que la lectura de un convertidor de analógico a digital (ADC) típico tarda un tiempo en completarse. Si se conectan y leen por separado, a este retardo hay que multiplicarlo por la cantidad de sensores.

Sin embargo, con esta solución sólo se hace UNA lectura analógica.

Como vamos a usar un inversor schmitt trigger, y éste sólo nos da una señal alta (5V) o baja (0V) en su salida, con las resistencias siempre vamos a obtener los mismos resultados de tensión, aunque cambiemos de entorno (pistas de competición, o caseras con distinta iluminación), por tanto no hay necesidad de calibrar.

Y utilizando las resistencias correctas, sólo es necesario tener un ADC de 8 bits (0-255) para medir el voltaje (en tramos de 0,02V aproximadamente) con una referencia de 5V. En un Arduino el ADC tiene 4 veces más resolución, ya que su conversión es de 10 bits, o sea que entrega valores digitales entre 0 y 1023.

Pondremos como ejemplo 8 sensores infrarrojos que leen una superficie que tiene fondo blanco (que devuelve un valor cercano a 0), y la línea de color negro (que es cuando devuelve un voltaje mayor). Como inversor schmitt trigger se puede usar un 40106 o un 74HCT14. Ambos tienen 6 entradas/salidas. Como se necesitan 2 entradas más para llegar a las 8 del sensor, debemos usar un segundo chip inversor. También se necesitan 8 diodos y 9 resistores.

La salida de cada CNY-70, o de cada elemento del conjunto QTR-8A, va dirigida a una de las entradas de uno de los inversores. La salida correspondiente de ese inversor va a un diodo de señal como el 1N914 o 1N4148. Esto es necesario, ya que al estar unidas todas las salidas del otro lado de los resistores, con los diodos se evita que si una salida está a 5V, y otra a 0V, se derive una corriente entre ellas.

Después del diodo viene el resistor, que dependiendo de su valor hará que la tensión en el punto de unión caiga más, o menos. El valor del resistor debe ser único, diferente del de otros sensores, para que cada caída de tensión sea distinta.

Finalmente se unen todas las salidas a otro resistor para crear lo que se denomina un divisor de tensión. La línea que va al pin analógico del microcontrolador se debe conectar en ese punto, para que éste pueda medir el voltaje total y diferenciar qué sensor o sensores se activan.




Este resistor de terminación al que se une el resto va, en su otro extremo, a la alimentación (Vcc).

Esta configuración está diseñada para poder leer un fondo blanco con una línea negra, siempre y cuando los sensores nos den un valor cercano a 0 cuando leen el fondo blanco, y un valor mucho mayor cuando leen la línea negra. Si se necesita cambiar este comportamiento, se puede conectar la resistencia final a masa e invertir los diodos.

Ahora que ya recibimos distintas tensiones en el pin analógico del microcontrolador, dependiendo de los sensores que estén activos o no, debemos plantearnos cuántas mediciones posibles podemos obtener.

Como trabajamos en el ejemplo de un seguidor velocista, se pueden dar los siguientes casos:

  • Todos los sensores leen el fondo blanco.
  • Un sensor lee la línea negra y el resto el fondo blanco.
  • Dos sensores leen la línea negra y el resto el fondo blanco.

Con esta combinatoria, para conocer las variaciones debemos multiplicar el número de sensores por 2. En total tenemos 16 mediciones posibles (y diferentes) para todos los estados en que pueden estar los sensores.

He aquí un esquema con los distintos estados, el voltaje resultante (según una simulación) y el valor del ADC llevado a 8 bits:

Para un robot de Sumo ya no vale el cálculo anterior, ya que habría 7 combinaciones posibles de sus 4 sensores, y el fondo es negro con una línea blanca:

Ahora sólo queda medir una primera vez los diferentes valores de los sensores, y luego programar en nuestro microcontrolador una tabla con esos valores, para utilizar luego en las comparaciones del programa. Esta lista de valores servirá para siempre. Por supuesto, como los valores de los resistores tienen un margen de error, y la caída de tensión sobre los diodos no suele ser siempre el mismo, sólo podremos hablar de valores orientativos y únicamente podemos obtener los valores correctos midiéndolos directamente con un tester, o conectando el circuito al microcontrolador y que éste nos los informe a través del puerto COM y un monitor serie.



Auxiliares para control y digitalización de señales analógicas

Muchas de las señales que ingresan a un sistema digital, que provienen del mundo real y que por eso en pocas ocasiones se pueden considerar «binarias» (digital «0 y 1», «Sí y No», «valor» o «no valor»), son en su mayoría lecturas analógicas.

Si bien los microcontroladores incluyen entradas para señales analógicas, a veces no alcanza la precisión de lectura que poseen, o no alcanza la cantidad de entradas disponibles, y para esto necesitamos elementos auxiliares que nos ayuden a direccionarlas y leerlas, como los que presento aquí.

Convertidor analógico a digital ADS1115

Para los microcontroladores sin convertidor analógico a digital o cuando se quiere un ADC de mayor precisión, el ADS1115 proporciona una precisión de 16 bits a 860 muestras/segundo sobre I2C. El chip se puede configurar como 4 canales de entrada de un solo extremo, o dos canales diferenciales. Como una buena ventaja, incluso incluye un amplificador de ganancia programable, hasta X16, para ayudar a aumentar las señales individuales / diferenciales más pequeñas al rango completo. El ADC puede funcionar de 2 V a 5 V de alimentación lógica, puede medir un amplio rango de señales y es súper fácil de usar. Es un gran convertidor de 16 bits de propósito general.

La interconexión se realiza a través de la interfaz I2C. La dirección se puede cambiar a una de cuatro opciones para que pueda tener hasta 4 ADS1115 conectados en un solo bus I2C de 2 hilos para 16 entradas de terminación simple.

Especificaciones técnicas

Amplio rango de alimentación: 2,0V a 5,5V
Consumo de corriente bajo: Modo continuo: solo 150μA
Modo de disparo único: apagado automático
Tasas de datos programables: 8 SPS a 860 SPS (SPS = senseos por segundo)
Referencia interna de baja tensión de deriva interna: Sí
Oscilador interno: Sí
PGA incorporado: Sí (PGA = Amplificador de Ganancia Programable)
INTERFAZ I2C: Direcciones seleccionables por pines
Número de entradas analógicas: 4 simples o 2 Diferenciales
Comparador programable
Direcciones I2C: direcciones de bits entre 0x48-0x4B, seleccionables con puentes
Dimensiones mecánicas: 26.0 mm (L) x 9.4 mm (W) x 2.2 mm (H)
Separación de los pines: estándar 2,54 mm / 0,1 pulgada

Compatible con:

Placas Arduino como UNO, MEGA2560, DUE, Leonardo, Pro-mini, Pro-Micro, Nano, etc.
Raspberry Pi
ESP32, ESP8266, NodeMCU, WeMOS,
Microcontroladores PIC32, STM8, STM32, AVR, ATMEGA

Documentos y descargas:

ADS1115 Hoja de datos
ADS1115 Librería Python
ADS1115 Librería Arduino
ADS1115 Tutorial (Módulo similar, en breve publicaré nuestro propio tutorial)

Circuito típico

Conexiones

Selector analógico bidireccional CD74HC4067

Selector analógico bidireccional (multiplexor / demultiplexor) de 16 canales. Funciona como direccionador de 16 entradas analógicas a 1 vía de salida, o como 1 entrada analógica a 16 vías de salida.

Opera con alimentación entre 1,2 a 6 V.

Controla voltajes analógicos dentro del rango entre cero y el voltaje de alimentación.

Al ser bidireccionales permiten que las señales analógicas controladas sean, indistintamente, entradas o salidas. Estos selectores tienen baja resistencia al estar en estado de conducción, y alta resistencia al estar cerrados.


Ejemplos

Múltiples señales analógicas dirigidas a una entrada del microcontrolador

Múltiples Led controlados desde un único pin digital del microcontrolador

Hoja de datos:

CD74HC4067: http://www.ti.com/lit/ds/symlink/cd74hc4067.pdf

Sensores – Conceptos generales – Descripción y funcionamiento

por Eduardo J. Carletti

 

Introducción
Un robot es, por definición, una máquina capaz de interactuar con su entorno. Si es móvil, a menos que se mueva en un espacio absolutamente acotado y preparado para él, deberá ser capaz de adaptar sus movimientos y sus acciones de interacción en base a las características físicas de los ambientes con los que se encuentre y los objetos que hay en ellos.

Para lograr esta capacidad de adaptación, lo primero que necesitan los robots es tener conocimiento del entorno. Esto es absolutamente clave. Para conocer el entorno, los seres vivos disponemos de un sistema sensorial. Los robots no pueden ser menos: deben poseer sensores que les permitan saber dónde están, cómo es el lugar en el que están, a qué condiciones físicas se enfrentan, dónde están los objetos con los que deben interactuar, sus parámetros físicos, etc.

Para esto se utilizan diversos tipos de sensores (o captadores), con un rango de complejidad y sofisticación que varía desde algunos bastante simples a otros con altos niveles de sofisticación de hardware y más aún de complejidad de programación.

Detalles sobre los sensores para robots

Magnitudes físicas que es necesario medir para que un robot tenga algún conocimiento del entorno:

Diversos tipos de captadores o sensores:

Sensores reflectivos y por intercepción (de ranura)

 

Los sensores de objetos por reflexión están basados en el empleo de una fuente de señal luminosa (lámparas, diodos LED, diodos láser, etc.) y una célula receptora del reflejo de esta señal, que puede ser un fotodiodo, un fototransistor, LDR, incluso chips especializados, como los receptores de control remoto. Con elementos ópticos similares, es decir emisor-receptor, existen los sensores «de ranura» (en algunos lugares lo he visto referenciado como «de barrera»), donde se establece un haz directo entre el emisor y el receptor, con un espacio entre ellos que puede ser ocupado por un objeto.

Información detallada -> Sensores – Reflectivos y por intercepción

LDR (Light-Dependent Resistor, resistor dependiente de la luz)

 

Un LDR es un resistor que varía su valor de resistencia eléctrica dependiendo de la cantidad de luz que incide sobre él. Se le llama, también, fotorresistor o fotorresistencia. El valor de resistencia eléctrica de un LDR es bajo cuando hay luz incidiendo en él (en algunos casos puede descender a tan bajo como 50 ohms) y muy alto cuando está a oscuras (puede ser de varios megaohms).

Información detallada -> Sensores – LDR

Fotoceldas o celdas fotovoltaicas

 

La conversión directa de luz en electricidad a nivel atómico se llama generación fotovoltaica. Algunos materiales presentan una propiedad conocida como efecto fotoeléctrico, que hace que absorban fotones de luz y emitan electrones. Cuando se captura a estos electrones libres emitidos, el resultado es una corriente eléctrica que puede ser utilizada como energía para alimentar circuitos. Esta misma energía se puede utilizar, obviamente, para producir la detección y medición de la luz.

Información detallada -> Sensores – Celdas Fotovoltaicas

Fotodiodos

 

El fotodiodo es un diodo semiconductor, construido con una unión PN, como muchos otros diodos que se utilizan en diversas aplicaciones, pero en este caso el semiconductor está expuesto a la luz a través de una cobertura cristalina y a veces en forma de lente, y por su diseño y construcción será especialmente sensible a la incidencia de la luz visible o infrarroja. Todos los semiconductores tienen esta sensibilidad a la luz, aunque en el caso de los fotodiodos, diseñados específicamente para esto, la construcción está orientada a lograr que esta sensibilidad sea máxima.

Información detallada -> Sensores – Fotodiodos

Fototransistores

 

Los fototransistores no son muy diferentes de un transistor normal, es decir, están compuestos por el mismo material semiconductor, tienen dos junturas y las mismas tres conexiones externas: colector, base y emisor. Por supuesto, siendo un elemento sensible a la luz, la primera diferencia evidente es en su cápsula, que posee una ventana o es totalmente transparente, para dejar que la luz ingrese hasta las junturas de la pastilla semiconductora y produzca el efecto fotoeléctrico.

Información detallada -> Sensores – Fototransistores

CCD y cámaras de vídeo

 

La abreviatura CCD viene del inglés Charge-Coupled Device, Dispositivo Acoplado por Carga. El CCD es un circuito integrado. La característica principal de este circuito es que posee una matriz de celdas con sensibilidad a la luz alineadas en una disposición físico-eléctrica que permite «empaquetar» en una superficie pequeña un enorme número de elementos sensibles y manejar esa gran cantidad de información de imagen (para llevarla al exterior del microcircuito) de una manera relativamente sencilla, sin necesidad de grandes recursos de conexiones y de circuitos de control.

Información detallada -> Sensores – CCD y Cámaras de vídeo

Microinterruptores

 

No es necesario extenderse mucho sobre estos componentes (llamados «microswitch» en inglés), muy comunes en la industria y muy utilizados en equipos electrónicos y en automatización.

Con seguridad con la recopilación de imágenes que presentamos a la izquierda será suficiente.

Información detallada -> Sensores mecánicos de choque (parachoques)

Sensores de presión

 

En la industria hay un amplísimo rango de sensores de presión, la mayoría orientados a medir la presión de un fluido sobre una membrana. En robótica puede ser necesario realizar mediciones sobre fluidos hidráulicos (por dar un ejemplo), aunque es más probable que los medidores de presión disponibles resulten útiles como sensores de fuerza (el esfuerzo que realiza una parte mecánica, como por ejemplo un brazo robótico), con la debida adaptación. Se puede mencionar un sensor integrado de silicio como el MPX2100 de Motorola, de pequeño tamaño y precio accesible.

Información detallada -> Sensores – Presión

Sensores de fuerza

 

Un sensor de fuerza ideal para el uso en robótica es el sensor FlexiForce. Se trata de un elemento totalmente plano integrado dentro de una membrana de circuito impreso flexible de escaso espesor. Esta forma plana permite colocar al sensor con facilidad entre dos piezas de la mecánica de nuestro sistema y medir la fuerza que se aplica sin perturbar la dinámica de las pruebas. Los sensores FlexiForce utilizan una tecnología basada en la variación de resistencia eléctrica del área sensora. La aplicación de una fuerza al área activa de detección del sensor se traduce en un cambio en la resistencia eléctrica del elemento sensor en función inversamente proporcional a la fuerza aplicada.

Información detallada -> Sensores – Sensor de fuerza FlexiForce

Sensores de contacto (choque)

 

Para detectar contacto físico del robot con un obstáculo se suelen utilizar interruptores que se accionan por medio de actuadores físicos. Un ejemplo muy clásico serían unos alambres elásticos que cumplen una función similar a la de las antenas de los insectos. En inglés les llaman «whiskers» (bigotes), relacionándolos con los bigotes sensibles de los animales como —por ejemplo— los perros y gatos. También se usan bandas metálicas que rodean al robot, o su frente y/o parte trasera, como paragolpes de autos.

Información detallada -> Sensores – Contacto




Piel robótica

 

El mercado ha producido, en los últimos tiempos, sensores planos, flexibles y extendidos a los que han bautizado como «robotic skin», o piel robótica. Uno de estos productos es el creado por investigadores de la universidad de Tokio. Se trata de un conjunto de sensores de presión montados sobre una superficie flexible, diseñados con la intención de aportar a los robots una de las capacidades de nuestra piel: la sensibilidad a la presión.

Información detallada -> Sensores – Piel robótica

Micrófonos y sensores de sonido

 

El uso de micrófonos en un robot se puede hallar en dos aplicaciones: primero, dentro de un sistema de medición de distancia, en el que el micrófono recibe sonidos emitidos desde el mismo robot luego de que éstos rebotan en los obstáculos que tiene enfrente, es decir, un sistema de sonar; y segundo, un micrófono para captar el sonido ambiente y utilizarlo en algún sentido, como recibir órdenes a través de palabras o tonos, y, un poco más avanzado, determinar la dirección de estos sonidos. Como es obvio, ahora que se habla tanto de robots para espionaje, también se incluyen micrófonos para tomar el sonido ambiente y transmitirlo a un sitio remoto.

Información detallada -> Sensores – Sonido

Rangers (medidores de distancia) ultrasónicos

 

Los medidores ultrasónicos de distancia que se utilizan en los robots son, básicamente, un sistema de sonar. En el módulo de medición, un emisor lanza un tren de pulsos ultrasónicos y espera el rebote, midiendo el tiempo entre la emisión y el retorno, lo que da como resultado la distancia entre el emisor y el objeto donde se produjo el rebote. Se pueden señalar dos estrategias en estos medidores: los que tienen un emisor y un receptor separados y los que alternan la función (por medio del circuito) sobre un mismo emisor/receptor piezoeléctrico. Este último es el caso de los medidores de distancia incluidos en las cámaras Polaroid con autorango, que se obtienen de desarme y se usan en la robótica de experimentación personal.

Hay tipos característicos de sensores de distancia que se utilizan en robots:

1. Los módulos de ultrasonido contenidos en las viejas cámaras Polaroid con autorango, que se pueden conseguir en el mercado de usados por relativamente poco dinero.
2. Los módulos SRF de Devantech, que son capaces de detectar objetos a una distancia de hasta 6 metros, además de conectarse al microcontrolador mediante un bus I2C.

Información detallada -> Sensores – Medidores de distancia ultrasónicos

Medidores de distancia por haz infrarrojo

 

La empresa Sharp produce una línea de medidores de distancia basados en un haz infrarrojo, que forman la familia GP2DXXX. Estos sensores de infrarrojos detectan objetos a distintos rangos de distancia, y en algunos casos ofrecen información de la distancia en algunos modelos, como los GP2D02 y GP2D12. El método de detección de estos sensores es por triangulación. El haz es reflejado por el objeto e incide en un pequeño array CCD, con lo cual se puede determinar la distancia y/o presencia de objetos en el campo de visión. En los sensores que entregan un nivel de salida analógico para indicar la distancia, el valor no es lineal con respecto a la distancia medida, y se debe utilizar una tabla de conversión.

Información detallada -> Sensores – Medidores de distancia por haz infrarrojo

Acelerómetros, sensores de vibración

 

Un acelerómetro es un dispositivo que permite medir el movimiento y las vibraciones a las que está sometido un robot (o una parte de él), en su modo de medición dinámico, y la inclinación (con respecto a la gravedad), en su modo estático.

De los antiguos acelerómetros mecánicos, de tamaño grande y dificultosos de construir, porque incluían imanes, resortes y bobinas (en algunos modelos), se ha pasado en esta época a dispositivos integrados, con los elementos sensibles creados sobre los propios microcircuitos.

Estos sensores, disponibles en forma de circuito integrado, son los que se utilizan normalmente en robótica experimental. Uno de los acelerómetros integrados más conocidos es el ADXL202, muy pequeño, versátil y de costo accesible.

Información detallada -> Sensores – Acelerómetros, sensores de vibración

Sensores pendulares (Inclinómetros)

 

Queda claro que la inclinación de un robot se puede medir con facilidad utilizando las características de medición estática del sensor ADXL202 que descibimos aquí arriba. Las ventajas de este sensor son grandes, debido a su pequeño tamaño, sólida integración y facilidad de conexión con microcontroladores. De todos modos, existen otras soluciones para determinar la posición de la vertical (en base a la fuerza de la gravedad), y las listaremos brevemente.

El mercado ofrece dispositivos con diversas soluciones mecánicas, todas basadas en un peso, a veces suelto aunque flotando en un medio viscoso, a veces ubicado sobre una rueda cargada sobre un lado de su circunferencia, en ocasiones una esfera. Hasta hay sensores basados en el movimiento de un líquido viscoso y conductor de la electricidad dentro de una cavidad. Las partes móviles en muchos casos están sumergidas en aceite, para evitar que la masa que hace de péndulo quede realizando movimientos oscilantes. Los sensores pueden estar basados en efecto capacitivo, electrolítico, de torsión (piezoeléctrico), magnético (inducción sobre bobinas) y variación resistiva.

Contactos de mercurio

 

También para medir inclinación, aunque en este caso sin obtener valores intermedios, sino simplemente un contacto abierto o cerrado, existen las llaves o contactos de mercurio, que consisten en un cilindro (por lo general de vidrio) en el que existen dos contactos a cerrar y una cantidad suficiente de mercurio que se puede deslizar a un extremo u otro del cilindro y cerrar el contacto.


Giróscopos

 

El giróscopo o giroscopio está basado en un fenómeno físico conocido hace mucho, mucho tiempo: una rueda girando se resiste a que se le cambie el plano de giro (o lo que es lo mismo, la dirección del eje de rotación). Esto se debe a lo que en física se llama «principio de conservación del momento angular».

En robots experimentales no se suelen ver volantes giratorios. Lo que es de uso común son unos sensores de pequeño tamaño, como los que se utilizan en modelos de helicópteros y robots, basados en integrados cuya «alma» son pequeñísmas lenguetas vibratorias, construidas directamente sobre el chip de silicio. Su detección se basa en que las piezas cerámicas en vibración son sujetas a una distorsión que se produce por el efecto Coriolis.

Información detallada -> Sensores – Giróscopos

Termistores

 

Un termistor es un resistor cuyo valor varía en función de la temperatura. Existen dos clases de termistores: NTC (Negative Temperature Coefficient, Coeficiente de Temperatura Negativo), que es una resistencia variable cuyo valor se decrementa a medida que aumenta la temperatura; y PTC (Positive Temperature Coefficient, Coeficiente de Temperatura Positivo), cuyo valor de resistencia eléctrica aumenta cuando aumenta la temperatura.

La lectura de temperaturas en un robot, tanto en su interior como en el exterior, puede ser algo extremadamente importante para proteger los circuitos, motores y estructura de la posibilidad de que, por fricción, esfuerzo, trabas o excesos mecánicos de cualquier tipo se alcancen niveles peligrosos de calentamiento.

RTD (Termorresistencias)

 

Los sensores RTD (Resistance Temperature Detector), basados en un conductor de platino y otros metales, se utilizan para medir temperaturas por contacto o inmersión, y en especial para un rango de temperaturas elevadas, donde no se pueden utilizar semiconductores u otros materiales sensibles. Su funcionamiento está basados en el hecho de que en un metal, cuando sube la temperatura, aumenta la resistencia eléctrica.

Termocuplas

 

El sensor de una termocupla está formado por la unión de dos piezas de metales diferentes. La unión de los metales genera un voltaje muy pequeño, que varía con la temperatura. Su valor está en el orden de los milivolts, y aumenta en proporción con la temperatura. Este tipo de sensores cubre un amplio rango de temperaturas: -180 a 1370 °C.


Diodos para medir temperatura

 

Se puede usar un diodo semiconductor ordinario como sensor de temperatura. Un diodo es el sensor de temperatura de menor costo que se puede hallar, y a pesar de ser tan barato es capaz de producir resultados más que satisfactorios. Sólo es necesario hacer una buena calibración y mantener una corriente de excitación bien estable. El voltaje sobre un diodo conduciendo corriente en directo tiene un coeficiente de temperatura de alrededor de 2,3 mV/°C y la variación, dentro de un rango, es razonablemente lineal. Se debe establecer una corriente básica de excitación, y lo mejor es utilizar una fuente de corriente constante, o sino un resistor conectado a una fuente estable de voltaje.


Circuitos integrados para medir temperatura

 

Existe una amplia variedad de circuitos integrados sensores de temperatura (se puede encontrar una lista en el link de abajo con la información detallada). Estos sensores se agrupan en cuatro categorías principales: salida de voltaje, salida de corriente, salida de resistencia y salida digital. Con salida de voltaje podemos encontrar los muy comunes LM35 (°C) y LM34 (°K) de National Semiconductor. Con salida de corriente uno de los más conocidos es el AD590, de Analog Devices. Con salida digital son conocidos el LM56 y LM75 (también de National). Los de salida de resistencia son menos comunes, fabricados por Phillips y Siemens.

Información detallada -> Sensores – Integrados para medir temperatura

Pirosensores (sensores de llama a distancia)

 

Existen sensores que, basados en la detección de una gama muy angosta de ultravioletas, permiten determinar la presencia de un fuego a buena distancia. Con los circuitos que provee el fabricante, un sensor de estos (construido con el bulbo UVTron) puede detectar a 5 metros de distancia un fósforo (cerilla) encendido dentro de una habitación soleada. En el mercado de sensores industriales se puede encontrar una variedad amplia de sensores de llama a distancia, algunos que detectan también ultravioleta y otros que se basan en los infrarrojos, aunque por lo que pude ver, la mayoría son de tamaño bastante grande. Otro sensor que se utiliza en robótica, en este caso sensible a los infrarrojos, es el módulo TPA81.

Información detallada -> Sensores – Pirosensores a distancia

Sensores de humedad

 

La detección de humedad es importante en un sistema si éste debe desenvolverse en entornos que no se conocen de antemano. Una humedad excesiva puede afectar los circuitos, y también la mecánica de un robot. Por esta razón se deben tener en cuenta una variedad de sensores de humedad disponibles, entre ellos los capacitivos y resistivos, más simples, y algunos integrados con diferentes niveles de complejidad y prestaciones.

Para el uso en robótica, por suerte, se puede contar con módulos pequeños, versátiles y de costo accesible, como el SHT11 de Sensirion.

Información detallada -> Sensores – Humedad

Sensores magnéticos

 

En robótica, algunas situaciones de medición del entorno pueden requerir del uso de elementos de detección sensibles a los campos magnéticos. En principio, si nuestro robot debe moverse en ambientes externos a un laboratorio, una aplicación importante es una brújula que forme parte de un sistema de orientación para nuestro robot.

Otra aplicación es la medición directa de campos magnéticos presentes en las inmediaciones, que podrían volverse peligrosos para el «cerebro» de nuestro robot si su intensidad es importante.

Una tercera aplicación es la medición de sobrecorrientes en la parte motriz (detectando la intensidad del campo magnético que genera un conductor en la fuente de alimentación). También se podrán encontrar sensores magnéticos en la medición de movimientos, como el uso de detectores de «cero movimiento» y tacómetros basados en sensores por efecto Hall o pickups magnéticos.

Información detallada -> Sensores – Magnetismo

Sistema de posicionamiento global

 

Si bien nos puede parecer demasiado lujo para nuestros experimentos, lo cierto es que un sistema de posicionamiento global (GPS, Global Positioning System) aporta una serie de datos que pueden ser muy útiles para un robot avanzado. Un ejemplo de este servicio es el módulo DS-GPM, fabricado por Total Robots, que entrega datos de latitud, longitud, altitud, velocidad, hora y fecha y posición satelital.
Estos datos se comunican desde los registros del módulo a través de interfaces I2C y RS232. Si bien no es barato, en realidad no es tan inaccesible.

Receptores de radiobalizas

 

Por medio de un grupo de emisores de radiofrecuencia codificados, ubicados en lugares conocidos por el sistema, es posible establecer con precisión la posición de un robot, con sólo hacer una triangulación. Al efecto el robot debe poseer una antena de recepción direccional (con reflector parabólico, o similar) que pueda girar 360°, y así determine la posición de las radiobalizas. En el robot es posible usar receptores integrados muy pequeños y de bajo costo, como el RWS-433, o el RXLC-434, y otros similares, que trabajan en frecuencias de entre 303 y 433 Mhz. La elección de los transmisores dependerán de la distancia a que se ubiquen las radiobalizas, pero si se trata de áreas acotadas es posible utilizar los módulos transmisores hermanados con los anteriores, como el TWS-433 y el TXLC-434.

Información detallada -> Sensores – Receptores (y transmisores) de RF

Sensores de proximidad

 

Los sensores de proximidad que se obtienen en la industria son resultado de la necesidad de contar con indicadores de posición en los que no existe contacto mecánico entre el actuador y el detector. Pueden ser de tipo lineal (detectores de desplazamiento) o de tipo conmutador (la conmutación entre dos estados indica una posición particular). Hay dos tipos de detectores de proximidad muy utilizados en la industria: inductivos y capacitivos.

Los detectores de proximidad inductivos se basan en el fenómeno de amortiguamiento que se produce en un campo magnético a causa de las corrientes inducidas (corrientes de Foucault) en materiales situados en las cercanías. El material debe ser metálico. Los capacitivos funcionan detectando las variaciones de la capacidad parásita que se origina entre el detector propiamente dicho y el objeto cuya distancia se desea medir. Se emplean para medir distancias a objetos metálicos y no metálicos, como la madera, los líquidos y los materiales plásticos.



Sensor de fuerza FlexiForce

por Eduardo J. Carletti

[Información completa sobre -> Sensores para Robots]

Introducción

En este artículo voy a presentar las pruebas básicas de laboratorio que realicé con un sensor de fuerza FlexiForce de la empresa Tekscan.

Como se puede observar en las fotos, se trata de un sensor integrado dentro de una membrana de circuito impreso flexible de escaso espesor. El sensor es totalmente plano, lo cual permite colocarlo con facilidad entre dos piezas de la mecánica de nuestro sistema y medir la fuerza que se aplica sin perturbar la dinámica de las pruebas.



Como indica su hoja de datos, estos sensores se pueden utilizar para medir tanto fuerzas estáticas como dinámicas. En esta línea hay sensores que pueden soportar hasta 453 kgf (ó 1.000 lbf).

Los sensores FlexiForce utilizan una tecnología basada en la variación de resistencia eléctrica del área detectora. La aplicación de una fuerza al área activa de detección del sensor se traduce en un cambio en la resistencia eléctrica del elemento sensor en función inversamente proporcional a la fuerza aplicada.

Datos físicos

El modelo de sensor que pondré a prueba aquí es el A201-25, que tiene un rango de sensibilidad de 0 a 11 kgf (0 a 25 lbf). La longitud de los conductores de este sensor (integrados también como circuito impreso flexible) es de 16 cm, incluyendo el círculo sensor y las patitas de conexión. El ancho en la zona de los conductores es de 10 mm y en la zona sensible es de 15 mm. El espesor es de 0,127 mm.

La zona de detección activa es un círculo colocado en un extremo del sensor que tiene 9,53 mm de diámetro.


El sensor A201-25

El sensor está sostenido entre dos capas de película de poliéster. En la parte interna de cada una de estas capas hay una película de material conductor (plata) y dentro éstas una capa de «tinta» —así define el fabricante a este material— sensible a la presión. Todo el conjunto está unido por medio de un adhesivo.




El sensor actúa como resistencia variable en un circuito eléctrico. Cuando el sensor no tiene fuerza aplicada, su resistencia es muy alta (superior a 5 megohm), y cuando se aplica una fuerza al sensor, la resistencia disminuye.


Curva de resistencia (para 100 lb)

Pruebas básicas

Como se puede observar en la foto, la prueba se realizó utilizando un multímetro. Probando escalas, se encontró que aún en la escala máxima de resistencia (0-20 Megohms), el sensor, sin fuerza aplicada, indica un circuito abierto.



El sistema, sin ninguna fuerza aplicada, indica resistencia infinita

Aplicando presión con los dedos, se obtienen distintos valores de resistencia, en disminución a medida que se va ejerciendo más y más fuerza.



La medición indica 5,86 Megomhs



La medición indica 2,12 Megomhs

Estos sensores son perfectos para medir la presión de los dedos sobre el objeto manipulado por una mano robótica, de modo que hice las siguientes pruebas.



Levantando un frasco de mermelada que pesa 700 gs.
Con el sensor debajo del pulgar, indicó 5 Megohms



Levantando un frasco de aceitunas que pesa 1200 gs.
Con el sensor debajo del pulgar, indicó 1,8 Megohms.

Por último, colocando el sensor entre dos chapas, con un peso estático de 1,25 Kg se obtuvo una medición de 3 Megohms (aclaro que depende mucho de que se pueda centrar bien el peso sobre el lugar en que está el sensor, con poco desplazamiento, esta medición puede variar bastante).

Enlaces: