Detector de metales con Arduino y sensor inductivo


arduino-sensor-inductivo

¿Qué es un sensor inductivo?

Un sensor inductivo es un sensor de proximidad diseñado para detectar objetos metálicos. Podemos emplear conectar fácilmente este tipo de sensores a un autómata o procesador como Arduino.

Internamente estos sensores disponen de un generador de campo magnético y en una bobina inductora que detecta el campo generado por el propio sensor.

La presencia de un objeto metálico modifica el campo inducido. Al tener una menor resistencia magnética (reluctancia) el campo magnético se "alarga", incrementando la corriente inducida en la bobina sensora.

Esta campo es detectado por la electrónica del sensor, cuya salida se activa cuando un metal es detectado. Como el sensor tiene dos estados, en ocasiones a estos dispositivos se les denomina interruptores inductivos de proximidad.

Anuncio:

arduino-sensor-inductivo-funcionamiento

Existen sensores normalmente abiertos (NO), cuya señal es LOW cuando no se detecta objeto, y normalmente cerrados (NC) cuya señal es HIGH cuando no se detecta objeto.

El rango de detección depende del metal detectado, pero en general, no excede de los milímetros. Los metales ferríticos (como el hierro y el acero) permiten rangos de medición más amplios. Por contra, los metales no ferríticos (aluminio, cobre) pueden reducir la distancia a un 60%.

Los sensores inductivos tienen la ventaja de que no necesitan contacto para detectar el objeto metálico. Además, operan hasta tapados por otro material (como un embellecedor plástico, por ejemplo). Finalmente, son sensores robustos en ambientes industriales en presencia de suciedad y polvo.

Estos dispositivos son ampliamente empleados en automatizaciones industriales para detectar la existencia de una pieza en una estación. También son empleados en elevadores, detección de vehículos. En construcción son empleados para detección de tuberías o clavos. Finalmente, sensores similares, pero mucho más potentes, son empleados en arcos de seguridad o en aplicaciones militares como detección de minas.

Nosotros podemos emplear estos sensores en nuestros proyectos de Arduino, por ejemplo, para detectar un objeto, un obstáculo, el cierre de una puerta, detectar un objeto encima de una mesa, entre otros.

Precio

Los sensores inductivos están disponibles en un amplio rango de precios. Dentro de los más baratos tenemos, por ejemplo, el LJ12A3-4-Z/BY. Podemos encontrarlo por 2.10€, buscando en vendedores internacionales de eBay o AliExpress.

  • Distancia detección: 4mm
  • Voltaje de alimentación: DC6-36V
  • Corriente salida: 300 mA
  • Frecuencia: 100Hz
  • Diámetro del sensor: 12mm

arduino-sensor-inductivo-componente

Esquema de montaje

Los sensores inductivos generalmente tienen 3 o 4 conductores codificados por colores. Normalmente incorporan una etiqueta en el propio sensor que indica el esquema de conexión.

El sensor inductivo que vamos a emplear LJ12A3-4-Z/BY. El cable azul (BU) es Gnd, el marrón (BN) es Vcc, y el negro (BK) es la salida del sensor.

Para conectarlo a Arduino, alimentamos el sensor conectando el cable azul y marrón, respectivamente, a Gnd y 5V de Arduino.

arduino-sensor-inductivo-esquema

Por último, conectamos el conductor negro a una entrada digital cualquiera de Arduino. La conexión, vista desde Arduino, sería la siguiente.

arduino-sensor-inductivo-conexion

Ejemplos de código

El código necesario es muy sencillo, simplemente empleamos una una entrada digital para leer el estado. En el ejemplo mostramos un mensaje por la puerto serie, pero en un caso real ejecutaríamos las acciones oportunas.

const int sensorPin = 9;

void setup()
{
   Serial.begin(9600);
}

void loop()
{
   bool state = digitalRead(sensorPin);

   //mandar mensaje a puerto serie en función del valor leido
   if (state == HIGH)
   {
      Serial.println("Detección");   
      //aquí se ejecutarían las acciones
   }
   delay(1000);
}
Si te ha gustado esta entrada y quieres leer más sobre Arduino puedes consultar la sección Tutoriales de Arduino
5 1 vote
Article Rating

Anuncio:

Previous Detector de gases con Arduino y la familia de sensores MQ
Next Medir el color con Arduino y el colorímetro TCS3200
18 Comments
oldest
newest
Inline Feedbacks
View all comments
alan
4 years ago

Yo tengo este modelo de sensor Lj12a3-4-z/bx en que cambia?

luisllamas
4 years ago
Reply to  alan

El BX es NPN, y el BY PNP. Dado que nosotros estamos leyendo tensión y el pin digital esta en alta impedancia, no nos influye.
Aquí tienes un listado con los distintos modelos del sensor https://opencircuit.nl/ProductInfo/1000064/LJ12A3.pdf

luisllamas
4 years ago

En un ejemplo completo. Es un sensor muy sencillo de usar

luisllamas
3 years ago

Un sensor inductivo si puede detectar metales en una pared, y como bien sabrás, existen instrumentos comerciales que emplean sensores inductivos para detectar metales y corrientes eléctricas (aunque en general, no funcionan muy bien)

Lamentablemente, el sensor que usamos de ejemplo en esta entrada, el LJ12A3-4-Z/BY, es un sensor de proximidad inductivo, pensado para detectar la presencia de piezas en ámbito industrial (ejemplo, detectar la expulsión de una pieza por una prensa)

No es un sensor adecuado para detectar un cable detrás de una pared.
Necesitarás otro tipo de sensor inductivo con mayor rango de acción.

Ismael
3 years ago

Como puedo hacer que un motor paso a paso se mueva utilizando un sensor inductivo

Salvador LL
3 years ago

Nesecito activar un modulo de relevadores con los sensores inductivos para un ciclo continuo no se si me arias el gran favor de ayudarme, te lo agradeceria infinitamente

Danilo
3 years ago

No se de electricidad o electro mecánica xfa dígame si funcionaria conectada a una batería de automovil graciad

valen
2 years ago

¿como podría programar correctamente los parámetros de entrada en los censores capacitaros e inductivos para la detección y clasificación de materiales (vidrio, cartón,plástico, aluminio)?

rodrigo Delgado
2 years ago

Primero felicitarlo por la explicación todo muy completo.
Ahora mi duda, si alimento el sensor con 12V puedo conectar la salida del sensor directamente a la entrada del Arduino o debo hacer un divisor de corriente o algo parecido. He pensado en que la salida del sensor activara un transistor.

Nacho
2 years ago

Eso mismo me cuestiono yo, y no encuentro alguien que se lo haya planteado.
Pensaba usar un regulador de 5V (que generalmente se los puede alimentar desde 6 hasta 32V), en vez de un transistor, o un divisor de tensión. Pero no se si el regulador me generaría algún retardo en la señal.

Dali
1 year ago
Reply to  Nacho

No se debe alimentar ningún microcontrolador con mas de 5V, lo vas a quemar.
Las opciones son, optoacoplador, divisor de voltaje, o diodo.

Eduardo
1 year ago

a que se refiere con tener cuidado al usar alimentacion externa?

Jose G
1 year ago

Hola Luis, como siempre en tu web consigo la información que busco y explicada de forma inmejorable.

Mis conocimientos de electrónica son muy básicos y quisiera preguntarte como resolver un problemilla con estos sensores. Tengo dos sensores inductivo NPN NC y necesito conectarlos a una única entrada de mi arduino.

Hay alguna consideración a tomar o simplemente los conecto en paralelo?

Ana
1 year ago

Hola Luis buenas tardes
Estoy probando el código y el sensor no me detecta. el sensor si ilumina cuando cuando se le acerca algún metal, pero no me envía nada al arduino. Estoy trabajando con un arduino MEGA. Si me puedes ayudar te lo agradecería.

Hugo
1 year ago

¿Es necesario usar una resistencia en cualquier tipo de sensor PNP que se conecte a Arduino?

alejandro
23 days ago

Tengo un problema, al iniciar el programa el estado se convierte en HIGH y siempre se mantiene asi independientemente del estado en que este