Potenciómetros Digitales vía I2C con 18F25K20

Potenciómetros Digitales vía I2C con 18F25K20

0 Flares Twitter 0 Facebook 0 Google+ 0 Pin It Share 0 Email -- 0 Flares ×

En un artículo anterior de NeoTeo habíamos hecho una revisión de los potenciómetros digitales CAT5269 donde pudimos ver muchos detalles de su estructura interna, sus registros de programación y las enormes posibilidades que nos brindan por sobre los potenciómetros mecánicos tradicionales. Hoy volvemos a la actividad con ellos para preparar una parte más del rompecabezas “proyecto del año” en NeoTeo. Controlados vía I2C, con un PIC 18F25K20 y con el software gratuito Amicus, utilizar potenciómetros digitales en tus desarrollos electrónicos es algo tan sencillo como útil y efectivo. En este caso, lo comprobarás en el montaje propuesto hoy. Ya vimos un generador de rampa, un receptor superheterodino de doble conversión, ahora potenciómetros digitales. ¿Tú sabes hacia dónde vamos?

El circuito integrado CAT5269 posee en su encapsulado dos potenciómetros digitales programables (DPPs ™) integrados con toda la lógica de control necesaria y 18 bytes de memoria NVRAM. Cada DPP consiste en una serie de elementos resistivos conectados entre dos puntos finales accesibles desde el exterior. Los puntos de unión entre cada elemento resistente se conectan a las salidas del “wiper” o “cursor central” con interruptores CMOS. Un registro por separado de 8 bits de control (RWC) controla de forma independiente los interruptores para cada potenciómetro. Los datos en los registros de control de los potenciómetros se graban y/o intercambian con el microcontrolador mediante un bus serie de 2 hilos, compatible con el protocolo I2C.  El CAT5269 es un circuito integrado que se puede utilizar del mismo modo que un potenciómetro mecánico convencional o como una resistencia variable de dos terminales. Su aplicación se centra en circuitos controladores de nivel, sistema de control de precisión y en una amplia variedad de aplicaciones. Entre las características destacadas de estos dispositivos encontramos:

Potenciómetros Digitales vía I2C con 18F25K20

  • Dos potenciómetros lineales que se pueden programar en forma digital.
  • 256 Resistencias por potenciómetro. 256 Bloques resistivos conectados en serie.
  • Disponible en valores de 50K y 100K según el modelo.
  • Control y acceso a los registros de memoria a través de una interfaz de 2 hilos (compatible I2C).
  • Baja resistencia desde el punto central a la sección óhmica variable (por lo general 100 Ohms).
  • Memoria no volátil para almacenar un máximo de hasta cuatro configuraciones diferentes del cursor central para cada potenciómetro que compone el IC. Esto permite conservar los valores de utilización al desconectar la energía del dispositivo.
  • Tensión de trabajo de 2,5 a 6,0 voltios. (Compatible con los microcontroladores de 3,3V).
  • Corriente de Stand-By de menos de 1uA.
  • Más de 1.000.000 de ciclos de escritura.
  • 100 años de retención de los datos en su memoria no volátil.
  • Encapsulado de 24 pines SOIC y TSSOP.
  • Distribución gratuita de muestras para ensayos y desarrollos experimentales.

Potenciómetros Digitales vía I2C con 18F25K20

El circuito que hemos decidido utilizar para la experimentación es muy sencillo y ya lo hemos visto en varias oportunidades, aquí en NeoTeo. Utiliza el potente PIC18F25K20, un cristal o resonador de 16Mhz y un pequeño grupo de resistencias y capacitores que permiten un correcto funcionamiento. Respecto al CAT5269, hemos realizado una pequeña placa adaptadora que nos permitirá utilizarlo con facilidad en cualquier protoboard y que también posibilitará una manipulación más sencilla y práctica. Como siempre, al final del artículo encontrarás el archivo PDF para construirla tú mismo. Entre las recomendaciones fundamentales que siempre te hacemos, recuerda utilizar correos electrónicos de Universidades o Empresas (no Yahoo, no Hotmail) cuando solicites muestras gratuitas. Además, sé mesurado al pedir unidades y ofrece una buena propuesta de experimentación si deseas obtener IC gratis. Pedir sin sentido y sin control nunca da buenos  resultados. Recuérdalo para ésta y todas las empresas que ofrecen servicio de Samples. El conexionado resultante y el aspecto final del adaptador montado es el siguiente:

Potenciómetros Digitales vía I2C con 18F25K20

La vista del impreso es muy clara y explícita. Junto con la hoja de datos, se pueden deducir las conexiones de manera muy sencilla: A0, A1, A2 y A3 son los pines que permiten dar una “dirección” al IC dentro del bus I2C (podemos colocar hasta 16 dispositivos, lo que equivale a 32 potenciómetros) y un terminal WP que al conectarse a nivel lógico bajo impide la sobre-escritura de cualquier registro de los potenciómetros y bloquea su ajuste. Encontramos las conexiones al bus I2C (SDA y SCL), la alimentación (3,3V en nuestro caso) y GND. Por último, a ambos lados del dispositivo están las conexiones al exterior de los potenciómetros, donde RL y RH son los extremos y RW el punto medio o “cursor”. Completa el montaje el clásico capacitor de desacoplo de 100nf que nunca debes dejar de colocar en cualquier circuito electrónico digital que construyas. Recuerda que a este capacitor debes colocarlo tan próximo como sea posible a los terminales de alimentación del circuito integrado que estés utilizando. De este modo, evitarás problemas indeseados de ruido y raros funcionamientos muy difíciles de comprender y solucionar.

El primer paso entonces es construir el circuito de aplicación. Nosotros empleamos en un protoboard la fuente modular que siempre resulta muy práctica y versátil de utilizar y los componentes que puedes ver en el esquema mostrado. No olvides que el PIC 18F25K20 funciona con 3,3Volts de alimentación y que el cristal asociado debe ser de 16Mhz para un correcto funcionamiento de los programas desarrollados con el software gratuito Amicus.

Potenciómetros Digitales vía I2C con 18F25K20

Los pulsadores SW1, SW2, SW3 y SW4 están encargados de enviar mediante el bus I2C las instrucciones necesarias para que el CAT5269 haga funcionar de manera adecuada y en forma individual cada potenciómetro. En el siguiente video te mostramos el funcionamiento del conjunto donde utilizamos un solo potenciómetro con sus extremos conectados a la tensión de alimentación (3,3V) respecto a GND. El valor resultante sobre el cursor se puede observar en el multímetro ajustado como voltímetro. Un dato importante que no debes dejar de tener en cuenta es que la máxima tensión aplicable entre extremos del potenciómetro es la tensión de alimentación del circuito integrado. Las hojas de datos son muy claras en ese aspecto. Observa cómo funciona uno de los potenciómetros:

¿Y el generador de rampa?
Aquí viene la parte que estabas esperando descubrir dentro del artículo. En el último video encontrarás cuál será la función de cada uno de los dos potenciómetros que forman al CAT5269. Vamos a explicarlo también en este texto de la manera más sencilla que se pueda realizar. Si recuerdas la forma de onda de la señal diente de sierra, recordarás su rampa de crecimiento lineal y su caída abrupta para luego retomar un nuevo ciclo de crecimiento de rampa. A un potenciómetro lo utilizaremos para controlar la “amplitud” de la rampa. Es decir, mediante uno de estos dispositivos, ajustaremos a voluntad la amplitud de la rampa o, lo que es lo mismo, ajustaremos “la altura” que pueda alcanzar esa cuesta empinada. Este ajuste se verá reflejado en tensión “pico a pico” de la señal. Desde un nivel casi igual a cero, podremos ajustar uno de los potenciómetros hasta obtener la máxima amplitud. Esto se realiza de manera muy sencilla conectando la salida del generador de rampa a un extremo del potenciómetro. El otro extremo a GND y el cursor serán los encargados de entregarnos la rampa con amplitud variable.

Potenciómetros Digitales vía I2C con 18F25K20

El potenciómetro restante cumplirá también una función específica y muy particular. La rampa de amplitud variable que nos entrega el primer potenciómetro pasará a través de un capacitor para extraer su componente alterno (la rampa), y luego utilizaremos el segundo potenciómetro para inyectarle a la señal un valor de corriente continua ajustable. Esto es, si seleccionamos en un osciloscopio el funcionamiento por corriente continua, veremos a la rampa subir y bajar dentro de la pantalla de acuerdo al valor de ajuste del segundo potenciómetro. El sistema de trabajo de este control está referido a la tensión de alimentación y a GND. Cuando el cursor se acerca a cualquiera de estos puntos, la rampa se “monta o sube” arriba de esta tensión de corriente continua y permite desplazar la rampa hacia abajo y arriba con la amplitud fijada por el primer potenciómetro. Observa este video y complementa la comprensión del funcionamiento.

Luego de la explicación escrita, de los artículos ya publicados (como el receptor superheterodino de doble conversión) y de los videos con sus explicaciones, estamos seguros que todo te ha quedado ¡mucho más confuso! La mezcla de cosas tan disímiles con funciones tan raras y que en apariencia no podrían tener mucha relación entre sí poco a poco se irá acoplando y comenzará a dar forma a este desarrollo que, como puedes darte cuenta, es demasiado grande e importante como para presentarlo en un artículo único. Por ahora regresamos al generador de rampa. La próxima entrega terminará de completarlo. Luego iniciaremos un artículo nuevo utilizando el receptor de doble conversión hasta finalmente juntar todas las piezas de este rompecabezas y construir un equipo que sorprenderá a muchos.
No dejes de preguntar cada duda que tengas y recuerda que siempre estamos en el foro NeoTeo para charlar sobre este y todos los temas de electrónica que tanto nos apasionan. ¡Te esperamos! Y recuerda lo más importante, ¿dónde comprar el CAT5269? ¡En ningún lado! ¡Pídelo gratis!


Avatar de Mario
Autor: Mario
  • falke

    Saludos amigo Mario

    La cosas se están poniendo muy buenas . . .

    • Mario Sacco

      Hola amigo falke!

      Las cosas se están poniendo interesantes, ¿verdad?
      Esto de los potenciómetros digitales es una muy bonita aplicación. Podemos utilizarlos en muchos de nuestros proyectos y con una cantidad mínima de instrucciones desde el microcontrolador.
      Siempre hay algún proyecto con micros que necesiten potenciómetros y allí estarán los CAT5269! :))

      Gracias por compartir la electrónica con nosotros amigo!
      Saludos!
      Mario

  • Meta

    Muy bueno. Si está hecho en C, mejor.

    • Mario Sacco

      Hola Meta!

      Es una buena idea hacerlo también en C.
      Ya que opinas que sería mejor hacerlo en C, te comprometo públicamente a que lo hagas y lo compartas con todos en el foro NeoTeo :)) ¿qué te parece la idea?

      Si tú crees que en C será mejor es porque debes saber que C es mejor a lo que estoy proponiendo. Yo no sabría hacerlo en C. Por eso utilicé un software gratuito, que conozco y que me permitió hacerlos funcionar a los potenciómetros. Lo has visto en los videos ¿verdad?

      ¡Anda amigo! ¡Hazlo en C y compártelo con todos en el foro!
      Ya que lo propones te tomo el compromiso! :))

      Saludos!
      Mario

      • Meta

        Hola de nuevo:

        C es más entandar, no por ello signifique que sea mejor como has interpretado arriba. A, por cierto, buen trabajo.

        Saludo.

  • andres

    Lamentablemente no hay envío de muestras de este integrado para Colombia :(

    • Yesbond

      Que lastima Andres ya queria ponerme a trabajar con este gran integrado, tendremos que pedir a alguna empresa que nos los traiga para comprarlos.

      • Mario Sacco

        Hey !

        Estuve fijandome en el listado de países y Colombia figura entre ellos …

        Saludos!
        Mario

  • brunoip

    Mario a vos te cobraron los Shipping amount: $ 30,99 y los Handling amount: $ 5,00 ?
    Saludos

    • Mario Sacco

      Hola Bruno!

      Sí, hay países a los que nos cobran impuestos. A muchos se los envían gratis, a la Argentina le cobran impuestos porque la Aduana Argentina es la que le cobra a ellos para dejar entrar sus productos electrónicos al país.

      Políticas de un gobierno "inteligente" … ¿me entendés? Además, seguro que no somos los únicos en esa situación.

      De todos modos, al menos en mi caso me parece interesante pagar 35 dólares por 10 circuitos integrados. (podés pedir hasta 10 unidades). Serían 3,5 dólares por circuito integrado y teniendo en cuenta que eso es algo que se puede usar en miles de aplicaciones no me parece "caro" el precio por unidad.

      Si fuese algún componente que nunca vaya a usar en otras aplicaciones, no lo haría al pedido, pero para algo que puedo re-utilizar en miles de aplicaciones. Hasta me parece un buen negocio pagar 3,5 dólares por algo que en mi país no existe y me lo traen hasta la puerta de mi casa.

      Cuando yo los pedí y me los enviaron (hace más de un año atrás) no exitía esto. Esto es gracias a un tal Moreno que tiene ideas maravillosas para el país. ;)

      Saludos Bruno!
      Gracias por estar con nosotros! :)
      Mario

  • Yesbond

    Gran Trabajo Mario,

    Que bueno aprender a manejar nuevos componentes como este potenciometro digital, ya me imagino unas aplicaciones nuevas.
    Y nos tienes muy intrigados con este proyecto que cada vez se pone mas interesante, esperamos con mucha curiosidad el proximo articulo.

    Un abrazo desde Colombia

    • Mario Sacco

      Hola amigo Yesbond!

      Gracias por el saludo!
      ¿Cada vez se pone más confuso el asunto? Jaja! :))

      Lo que te puedo asegurar es que el resultado final es muy interesante!
      Muchos van a decir: "¿Esto era?", pero a muchos les vá a agradar poder "construir con tus própias manos" algo de esta naturaleza.

      Un abrazo Yesbond!
      Mario

  • Pic-Codelic Trance

    Orale, muy interesante y creo que me equivoque al pensar lo de hace 8 días,
    bueno pero ya vamos progresando en la adquisición de componentes, ya casi consigo los
    ICs del articulo anterior (despiece, claro) y ahora vamos por estos y si son gratis pues que mejor, tengo una duda de los potencio-metros cuales pidió, los de 50k o los de 100k? digo para que pida los mismos y no haya problema y después no ande uno preguntando ¿porque no me sale?.

    Esto no es para criticar ni nada solo es un comentario pero en esta linea del articulo dice:
    Corriente de Stand-By de menos de 1mA.
    y en la pagina del fabricante pone que es 1uA. ya decía yo que en ese modo consumía mucha corriente.

    Nota: tengo una pregunta con respecto a como pedir samples, en especial que es lo que mas típica mente ponen en la parte de descripción del proyecto, ya que cuando pedi unos samples a ST pedí 3(el TDA7449) y solo me mandaron 1 (bueno doy gracias de que me hallan mandado algo) ya se que eso de pende de que articulo pidas pero por ejemplo al pedir estos potenciometros digitales como que se podría poner en esa parte

    • Mario Sacco

      Hola Pic Codelic!

      Ya está corregido el valor a uA. Gracias por avisar! ;)

      El modelo a pedir es el que termina en WI50. En la imagen donde se vé el impreso del módulo y el ejemplo terminado se aprecia que dice CAT5269WI y en la parte superior izquierda hay un 50. Eso indica que son los de 50K.

      Respecto a qué poner en la descripción del proyecto … mmmm … eso es un poco variable según cada uno. Lo importante es lo que NO hay que poner. Por ejemplo:

      -Que fabricarás un control de volumen para una radio portátil
      -Que reemplazarás el viejo potenciómetro de una batidora o una multiprocesadora.
      -Que tu mail sea "negrito25634@ ….." o "burrito_dotado@ …."

      ¿Comprendes amigo?

      Organiza algo serio, desde una dirección mail hasta una aplicación interesante como "desarrollo de controles de temperatura para planta de tratamiento de fertilizantes" o "presentación del producto en mi Universidad para tomarlo como estándar a utilizar en desarrollos futuros".
      Es decir, si colocan "para construír lo que nos dijo Mario Sacco" … es probable que hasta haya un conflicto bélico … jaja !!!

      Utiliza la inteligencia Pic Codelic! Tú y la mayoría de los que visitan NeoTeo la tienen! :))

      Saludos!
      Mario

      • Pic-Codelic Trance

        hola disculpe por volver a molestar, tengo otra pregunta, en la parte para pedir samples, dice que puedo pedir hasta 10, mi pregunta es:

        hay 3 modelos de samples y a la hora de seleccionarlos puedo elegir 10 de cada sample osea puedo pedir hasta 30 samples o solo 10 por todos, esa es mi duda, ya que cuando pides samples a ST tiene un contador que te indica que ya no puedes pedir mas de 3.

        saludos

  • mdchaparror

    Confirmado a Colombia no mandan el componente CAT5269
    Country(COL) is not shippable.

  • Kniffe

    Pfff.f.. para Chile (CHL) tampoco…bahh.!

  • Meta

    Hola de nuevo:

    C es más entandar, no por ello signifique que sea mejor como has interpretado arriba. A, por cierto, buen trabajo.

    Saludo.

  • kira

    yo pagaria por estos integrados pero no tengo targeta de credito
    ¿habra alguna forma de pagarlo sin targeta?

  • Truko

    Genial je je ya con mucho esfuerzo u.u compre mi pic para experimentar por el puerto USB ahora a reunir para un modulo bluetooth :3 pero pronto empezare con el I2C, tengo todos tu articulo sobre le tema en pdf =P

  • replica jewellery

    immediately designer inspired jewelry immediately into nasty taunts and insults, drowning fendi 2010 drowning out civil debate. But is it concord uk it the angry few who dominate the fake links of london bracelet the conversation

  • Trastrero

    Hace años que leo Neoteo, para mi el mejor…y concreta mente el trabajo de Mario…
    Me estas enseñando un montón de electrónica, los pontenciómetros digitales, Acelerometros hasta bombillas… Su dedicación es mas que correcta, cualquier proyecto es bueno.. sea en C18 o C pero es su proyecto.
    Un saludo a todos.

  • dieguino10

    buen tutorial brother, ademas de interesante. una duda, por que cuando le doy a sample me aparece un costo (40.99 dolares) y aparte la opcion de pagar con tarjeta?? es para los gastos de envio?? o que estoy haciendo mal? GRACIAS

    • Mario Sacco

      Exacto.
      Es para los gastos de envío y te lo hacen pagar antes así ellos no hacen un envío a algún lugar donde luego no haya nadie o los del transporte lo extravíen, lo roben, etc.

      • Mario Sacco

        Para todo el resto de los amigos que no consiguen este componente:
        Busquen, averiguen, investiguen y propongan algún potenciómetro digital que SÍ consiga la mayoría y podríamos pasar a adoptar esos potenciómetros así nadie queda afuera del proyecto.

        Podemos utilizar estos para los que ya lo tienen y podemos hacer una segunda versión con otro potenciómetro más "popular"
        Por supuesto, Uds. son los interesados. Busuqen, averiguen, consulten, pidan y luego reúnanse en un hilo del foro de Electrónica digital y lleguen a un acuerdo de qué potenciómetro usar.

        Busquen unanimidad. No propongan 10 tipos diferentes de potenciómetros digitales. Lleguen a un acuerdo entre Uds. y propongan uno en concreto. Con ese haremos un segundo firmware.

        ¿Qué les parece la idea? Agrúpense en el foro, preocúpense y si entre todos ponemos un poquito podemos encontar la solución.

        Saludos!
        Mario

  • Juan Santiago Medina

    Saludos!

    Soy estudiante de ingeniería biomédica y apenas estoy comenzando el curso de electrónica análoga y de potencia. Tengo una duda :

    es posible programar un potenciometro para que dependa del tiempo de cierta manera?
    es decir que su resistencia esté dada por R(t)=f(t), donde f(t)este dada por lo q uno quiera?

    les agradecería mucho si me pueden ayudar, (de eso depende la nota del parcial, jaja)

    Juan.