Potenciómetro digital: El circuito integrado X9C103P

12
5108
El circuito integrado X9C103P, un potenciómetro digital capaz de variar la resistividad de un circuito desde un entorno digital. En este post se explicará como utilizar este circuito, utilizando como controlador un Arduino Leonardo

En esta ocasión escribiré acerca de un circuito integrado con características muy especiales, un potenciómetro digital. En pocas palabras, es un circuito integrado que tiene la capacidad de variar su resistividad a través de una señal digital.

Hasta ahora hemos utilizado algunos potenciómetros como resistencias variables el angunos proyectos.

trimmer-vertical-multi-vuelta-2k 220px-Potentiometer

Como sabemos, al mover la perilla variamos la resistencias entre las patas del potenciómetro. Un potenciómetro digital tiene un funcionamiento similar, sin embargo por ser digital no tenemos que mover una perilla sino excitar una entrada del circuito para obtener diferentes resultados.

Potenciómetros digitales

El circuito integrado X9C103P forma parte de una familia de circuitos integrados que tienen la función de un potenciómetro. Entre la “C” y la “P” se coloca una numeración. En este caso es 103, lo que significa 10×10^3. Eso equivale a 10000 Ohm, es decir, 10KOhm por lo que el circuito X9C103P solamente podrá alcanzar un valor máximo de 10K.

Existen los modelos 102 (1K), 104(100 K) y 503(50K). Cada uno es un arreglo de 100 resistencias. En el modelo de 10K cada resistencia es de 100 Ohm. En el modelo de 1 K son 100 resistencias de 10 Ohm; en el modelo de 50K son 100 resistencias de 500 Ohm; en el modelo de 100K son 100 resistencias de 1 K cada una.

Estos potenciómetros pueden ser adquiridos desde Mouser, Jameco, Ebay, Amazon, etc. El precio es bastante accesible, lo cual permite considerar este tipo de circuito como una opción viable para los proyectos en los que sea necesario emplearlos

Características del circuito integrado

El esquemático de esta familia de circuitos integrados es el siguiente:

qRMXa

Pin No.

Nombre del Pin

Descripción

1

INC

Incremento. Cuando se le aplica una señal de onda cuadrada en esta pata el circuito aumenta o reduce el valor de su resistividad dependiendo del estado en que se encuentre la pata U/D

2

U/D

Up/Down. Dependiendo del estado de esta pata cuando se aplique una onda cuadrada en el INC el valor de la resistencia subirá o bajará.

3

VH/RH

Este es el equivalente de una de las patas del potenciómetro, específicamente una de las 2 patas situadas en los extremos.

4

VSS

Voltaje de salida (GND) del circuito. Se conecta a tierra.

5

VW/RW

Este es el equivalente una de las tres patas del potenciómetro, específicamente la pata del centro. Se le llama “wiper”

6

VL/RL

Este es el equivalente de una de las patas del potenciómetro, específicamente una de las 2 patas situadas en los extremos.

7

CS

Esta pata es prácticamente el activador/desactivador del dispositivo. Cuando está en estado LOW es posible cambiar la resistividad del potenciómetro. Una vez pase a un estado HIGH el circuito guardará la resistencia en dicho instante en una memoria no volátil que es capaz de mantener dicho valor por un periodo muy extenso, siendo posible guardar una configuración por un tiempo de hasta 100 años.

8

VCC

Voltaje de entrada (V+) del circuito. Se conecta al voltaje de alimentación.

Para configurar este circuito integrado necesitamos una serie de combinaciones de estados HIGH/LOW, lo que hace un poco complicado utilizarlo de forma manual.

Sin embargo utilizando un micro controlador como Arduino se hace muy fácil aumentar, reducir y guardar la resistividad en este circuito.

Utilizando el potenciómetro con Arduino

Ahora vamos a armar un sencillo diagrama con el que nos será posible manipular el estado del circuito con Arduino.

X9C103P

Como vemos es muy fácil de usar.

  • Conectamos la pata 1 al pin 2 de Arduino, la pata 2 al pin 3, la pata 7 al pin 4.
  • La pata 4 va a GND y la pata 8 va a V+.
  • Entre las patas 3 y 5, o bien, 5 y 6 es donde medimos la resistencia. Recordemos que en los potenciómetros mecánicos tenemos 2 opciones, medir la resistencia entre la pata 1 y 2 y entre la pata 2 y 3.
  • Acá es lo mismo, solo usaremos la  5 y 6 o la 3 y la 5.

La programación de Arduino se hace completamente sencilla a través del uso de una librería escrita por Timo Fager. Se llama DigiPotX9Cxxx y la podemos encontrar en el siguiente enlace:

http://sites.google.com/site/tfagerscode/home/digipotx9cxxx

Recuerden que hay que copiar el contenido de la carpeta que descargamos en la carpeta libraries en la raíz de Arduino, es decir, la carpeta donde tenemos instalado Arduino IDE.

El código a usar es el siguiente:

Subiendo este código a Arduino, abrimos el Monitor Serial. Con enviar un “1” aumentaremos la resistencia la cantidad de veces que enviemos el uno. Con un “0” o cualquier otro caracter reduciremos la resistencia.

El valor mínimo será cercano a 0 y el valor máximo será próximo a 10K. He aquí un video donde les presento el armado del circuito y el funcionamiento del mismo.

Cualquier duda me la pueden expresar a través de sus comentarios. Saludos.

  • Parabéns pela postagem, você foi claro é direto, estou aqui do Brasil implementado seu tutorial em um circuito de controle industrial. Abraços

  • Emmanuel Garcia

    Hola! ¿Podrías orientarme a cómo programarlo en MatLab?

  • Carlos Alonzo

    amigo es lo que me referia, que si puedo poner mas potenciometros por ejemplo 6 para el control de 6 luminarias con un solo arduino, o necesito implementar mas arduinos?

    • Antony García González

      Recuerda que estos circuitos solamente trabajan en base a 5 volts y 10 mA. Tienes que pensar muy bien si vas a usarlos para controlar luminarias

  • David seage

    Hola
    Muchas gracias por el tutorial.
    Con un potenciometro funciona perfectamente. Pero quiero poner tres n el mismo programa y qe se activen independientemente.
    Sería posible?

    • Antony García González

      Sí es posible. Pero debes ajustar el código

  • Antony García González

    Gracias por la observación

  • Edgar

    Que tal. Tienes un pequeño problema en tu código. En la línea 12 debe ser “input” y los tienes como “inpue”

  • DelfinDelfin

    ¿Cuál es la potencia que soportan estos circuitos?

    • Antony García González

      No mucha. Solo 10mA a 5 voltios. Eso es 50 mW

    • Antony García González

      Poca potencia. 10mA @ 5 volts

  • Guiu

    Hola, estoy pensando en montar este circuito en una Raspberry Pi pero desconozco a que pin de GPIO debo connectar la pata 1, la 2 y la 7. Sabrías indicar cuales son las salidas de RPI adecuadas. Cualquira valdria o deben ser SPI, I2C u otras siglas que desconozco?

    Muchas gracias y muy buen trabajo!