Resultados 1 al 20 de 26

Lector/escritor RFID casero

Ver modo hilado

Mensaje anterior Mensaje anterior   Próximo mensaje Próximo mensaje
  1. #9  
    Moderador Global Avatar de hystd
    Fecha de ingreso
    Jul 2005
    Ubicación
    1, 11, 21, 1211...
    Mensajes
    1.596
    Descargas
    58
    Uploads
    0
    Buenas! Creo que estamos mezclando cosas...

    Según he entendido, el proyecto consta de dos partes. La parte hardware, formada por dos circuitos independientes: uno pasivo, donde se almacenarán los datos, y otro activo que se utiliza para leer la información contenida en dicho circuito pasivo. Y la parte software formada por la aplicación que recoge los datos a través del puerto serie en el PC.

    El MCRF355/360 según he visto en el datasheet se utiliza para el primer circuito, de hecho es un IC diseñado específicamente para eso. Ese modelo concreto tiene dos modos de funcionamiento: con alimentación propia y sin alimentación (circuito pasivo). Con alimentación propia (a través de los pines 1, 2 y 8, correspondientes a Vprg, CLK y Vdd respectivamente), sirve para programarlo y almacenar la información final (normalmente información sobre algún producto: Libros, juegos, discos, ropa, etc...). Una vez programado con esa información, el circuito se utiliza de forma pasiva: sin alimentación propia (Si nos fijamos, los chips insertados en los productos no tienen una pila para funcionar ) Por tanto, para leer su contenido es necesario proveer de algún mecanismo que alimente y haga funcionar este circuito pasivo y así poder leer de su memoria los datos guardados.

    Dicho mecanismo consiste en la inducción electromagnética. A través de una inductancia conectada a los pines 3, 5 y 6 (correspondientes a los terminales Ant A, Vss y Ant B del MCRF355/360) se genera una intensidad variable entre sus terminales (provocada por variaciones del flujo magnético que atraviesa la inductancia). Este concepto es clave para el diseño del proyecto.

    El segundo circuito, encargado de leer la información del circuito pasivo, deberá tener al menos dos funciones: se encargará de generar el campo magnético variable a través de la inductancia conectada al MCRF355/360 y de leer los datos generados por este IC una vez haya sido alimentado.

    La forma más simple de implementar ésto, es a través de dos circuitos acoplados magnéticamente, es decir, generar el campo magnético mediante la variación de intensidad a través de una inductancia (circuito lector), y dicha variación del flujo magnético, afectará a la inductancia conectada al IC MCRF355/360 (circuito pasivo). Esta solución es la que propone el mismo datasheet.

    La transmisión de información dice que se realiza mediante modulación de amplitud (AM), y que la frecuencia es de 13.56MHz. Es decir, es necesario que el circuito lector genere una señal portadora con esta frecuencia (el campo magnético debe oscilar a 13.56MHz), y por tanto la respuesta en la transmisión será igualmente a esta frecuencia.

    En resumen, el circuito lector, genera la portadora, y el receptor responde con una señal AM, que contiene los datos almacenados y con la misma frecuencia de la portadora, y finalmente esta señal será recogida por el circuito lector, el cual almacena, envía o procesa los datos al PC a través del puerto serie (tal y como hemos dicho). Los datos almacenados, como ya he dicho debieron ser grabados en una primera fase de diseño del circuito del chip que irá en el producto.

    La primera cuestión por tanto, radica en generar una señal portadora con frecuencia igual a 13.56MHz (si la implementación se va a llevar a cabo con el MCRF355/360).

    No quiero entrar de momento en muchos detalles sobre teoría de circuitos (por no alargar el post), pero hay muchas formas de llevar a cabo este objetivo...

    El concepto general es que hay que tratar de diseñar un circuito cuya respuesta en estado estacionario sea oscilatoria. Es decir, la transformada inversa de Laplace de la función de red del circuito debe ser de la forma f(t)=K * sen(a*t) * u(t), o bien, f(t)=K * sen(a*t + 90) * u(t)

    Para obtener una función de red cuya respuesta en estado estacionario sea senoidal, puedes llevarla a cabo buscando una función de red cuyos polos naturales sean reales. Si fueran complejos conjugados, sería oscilatoria, pero amortiguada, algo del tipo: f(t) = e^(-bt)* cos(a*t + d) * u(t), y no es lo que buscamos, ya que en estado estacionario, la respuesta sería igual a 0 (la señal "portadora" se habría disipado).

    La forma más simple es intentar que la función de red en el dominio de la frecuencia sea de la forma: H(s) = K* (a / (s^2 + a^2)) o bien de la forma: H(s) = k * (s / s^2 + a^2). Viendo la transformada inversa de Laplace de estas funciones, se observa que en el dominio del tiempo tenemos una función: f(t)=K * sen(a*t) * u(t), o bien f(t) = k * cos(a*t) * u(t), respectivamente, cualquiera de las dos (una desfasada 90º de la otra) será nuestra señal portadora de frecuencia "a", y amplitud depende de "K". Ambos factores dependen de los valores que tengan los dispositivos electrónicos del circuito.


    No estoy en casa y no dispongo de simuladores para hacer capturas de pantalla. Una implementación sencilla consiste en poner en serie la inductancia con un condensador, de forma que la configuración sea un divisor de tensión cuya salida (Vo) se tome de la inductancia. Así la respuesta en frecuencia sería: Vo(s)=((1/LC) / (s^2 + (raiz(1/LC))^2))*Vi(s). Cuyos polos naturales de la función de red son reales (tal y como queremos), y son: p1=-raiz(1/RC) y p2=raiz(1/RC), y Vi una fuente de tensión en continua.

    Por tanto, puesto que la frecuencia debe ser de unos 13.56MHz, puedes tomar valores de L y C (para inductancia y condensador respectivamente), tales que cumplan la ecuación 1/LC = 85.2*10^6 rad/seg. (w=2*pi*f; w=2*pi*13.56*10^6Hz = 85.2 rad/seg). Una combinación podría ser: C=1.173uF y L=10mH. Puesto que el diseño es casero, debes adaptarlos a valores estándares que se puedan encontrar en el mercado. Si no obtienes ese valor, puedes recurrir a poner condensadores en paralelo, los cuales irán conectados en serie a la inductancia (No debes romper la topoligía del circuito).

    Así mismo, comentar que si no encuentras una inductancia correcta, puedes optar por fabricarla, eso sí, te traerá unos cuantos dolores de cabeza... ya que el valor en Henrios teórico difiere mucho del real, ya que depende de factores como tipo de conductor, número de vueltas, grosor del filamento, área, longitud, etc... En google puedes encontrar diferentes fórmulas que tienen en cuenta estos factores a la hora de la fabricación casera de las inductancias. Como consejo personal te diré que intentes encontrar una combinación de C y L, tal que L sea lo más pequeña posible, para así intentar que la resistencia formada en la inductancia sea casi cero. (Si el modelo de circuito fuera una un condensador conectado en serie con una inductancia, el resultado sería una portadora que se disiparía en el tiempo, y el invento se nos estropearía).


    Bien, eso en cuanto a la parte correspondiente al diseño del circuito lector para la generación de la onda portadora. Una vez generada, el receptor (formado por el MCRF355/360), responderá con una señal AM que contiene los datos, y cuya frecuencia será la misma que la portadora. Al estar el circuito lector formado por un oscilador "sintonizado" a esa frecuencia no habrá problemas en la recepción. La cuestión radica en separar la señal modulada de la portadora, y con cualquier receptor AM puedes conseguirlo (La radio de tu casa "retocada" puede servirte) o si prefieres diseñarlo, con amplificadores operacionales es fácil realizar esta labor.


    Posteriormente, una vez dispones de la señal de datos y la portadora separadas, tomas la señal de datos y el primer paso es la digitalización. Puedes usar un conversor A/D del mercado, o bien si prefieres diseñarlo, a partir de un amplificador en configuración "comparador", con histéresis, tendrías un conversor A/D de un 1 bit, totalmente válido.

    Una vez la señal ya se ha digitalizado, sólo es cuestión de enviarla al PC a través del puerto serie, y usar un microcontrolador es lo más fácil. Optando por usar un microcontrolador, además que puedes ahorrar gran parte de circuitería en cuanto a conversión A/D y transmisión por el puerto serie se refiere. Como referencia te diré que los Motorola (FreeScale) son buena elección, pero debido a su encapsulado son difíciles de trabajar con ellos de forma casera (al igual que los Atmel y los Intel). Los PIC's sin embargo para el uso casero son fáciles de trabajar, pero poseen arquitecturas diferentes (Harvard), por lo que si estás acostumbrado a la programación en ensamblador de procesadores de la arquitectura x86, te resultará un poco más engorroso el tema de la programación. Sin embargo, los propios fabricantes de microcontroladores (de dificil manipulación), proveen de placas ya diseñadas para el manejo y programación del microcontrolador. Así por ejemplo, si quieres ahorrar un poco de trabajo, puedes usar el Cygnal 8051 de Intel, o en su defecto, si prefieres diseñar toda la circuitería, un PIC es tu elección.

    Por lo demás, sólo restaría hacer la aplicación, la cual seguiría los puntos que te he comentado en el anterior post, sabiendo que el tamaño de la trama (en el caso de usar el MCRF355/360, sería de 154bits).



    Perdón por la extensión (creo que éste ha sido uno de mis posts más largos, pero la ocasión se lo merece), y espero que esta información te haya sido de utilidad, o por lo menos te haya servido para ver la luz.


    Un saludo.
    Última edición por hystd; 24-06-2009 a las 01:30
    El optimista tiene ideas, el pesimista... excusas

    Citar  
     

Temas similares

  1. Respuestas: 22
    Último mensaje: 09-03-2019, 18:06
  2. Introducción a RFID
    Por LUK en el foro GENERAL
    Respuestas: 3
    Último mensaje: 21-11-2011, 09:57
  3. Tutorial ps3 psjailbreak casero pic 18f2550
    Por tamaroque en el foro CONSOLAS
    Respuestas: 7
    Último mensaje: 06-10-2010, 21:20
  4. Respuestas: 0
    Último mensaje: 03-09-2008, 14:25
  5. Sercidor casero! - No soy capaz
    Por Lazaro en el foro OFF-TOPIC
    Respuestas: 0
    Último mensaje: 09-07-2003, 12:52

Marcadores

Marcadores