Autor Tema: CERRADURA CON TARJETAS TELEFONICAS  (Leído 8875 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado dolphin_96

  • PIC12
  • **
  • Mensajes: 73
    • Ezkybel Electronics
CERRADURA CON TARJETAS TELEFONICAS
« en: 22 de Diciembre de 2010, 12:16:44 »
CERRADURA CON TARJETAS TELEFONICAS
 
Hola amigos de TODOPIC quiero compartirles este proyecto que realice ha ce un buen tiempo en la escuela espero que le sirva.

Este es un proyecto que realice cuando estudiaba en el tecnológico, y se trata de reutilizar las tarjetas telefónicas dándole otra utilidad en este caso las utilizamos como llaves de acceso electrónico.

Este proyecto lleva varias modificaciones y por el momento es mas complejo ya que ahora cuenta con un display y un teclado matricial, pero la intención de este tutorial no es ofrecer todas estas características si no mas bien explicar la teoría para poder realizar un proyecto igual e incluso mas complejo que el que he realizado, y también dar la herramientas necesarias   para la comprensión del funcionamiento de dichas tarjetas.

Teoría
Las tarjetas telefónicas tienen en su interior, un microprocesador en el cual con sólo 128 bits, el teléfono es capaz de identificar información como por ejemplo: país, fabricante de la tarjeta y saldo de la tarjeta.

Para poder leer la tarjeta, el teléfono necesita sincronizar señales eléctricas digitales en cada uno de los contactos de la tarjeta.

Existen distintas rutinas para la operación de las tarjetas, por ejemplo, para poder descontar saldo se hace una rutina diferente que la rutina para realizar la lectura de cada uno de los bits, hay otra rutina que se encarga de resetear la tarjeta y así diversas rutinas encargadas de hacer verificaciones, validaciones y otras cuestiones de seguridad.

 

Contactos del chip según norma ISO-7816:

Características generales:
-Chip tipo SLE4436

-Alimentación: +5V.

-Tipo de memoria: EPROM

-Mapa de memoria: 64 bytes (512 bits).

-Pin I/O en configuración colector abierto.

-Los datos salen en cada flanco de bajada de la señal CLK

Protocolo de Comunicación:
La comunicación con la tarjeta se hace sobre 3 cables: RST, CLK e I/O. Las líneas de RST y de CLK se denominan de control. El cable de I/O está reflejando el estado de la célula de memoria en la EPROM, la cual señala el contador de direcciones. El contador de dirección se podía incrementar solamente o resetear a 0. Es imposible la recarga de la tarjeta, puede borrar bits solo en las área del contador octal y áreas de usuario I y II

Operaciones posibles:

Setear a 0 el contador de direcciones:
levantar y bajar CLK mientras que RST es 1.

 

Incrementar el contador de direcciones:
levantar y bajar CLK mientras que RST es 0.

 

 
Mapa de las tarjetas telefónicas
 

Para leer la tarjeta se le aplica la rutina “reset” para que el contador se posicione en el BIT cero del mapa, desde ese momento se puede leer el primer BIT de el mapa por el pin “I/O”, posteriormente se baja el pin “RST”, y por cada pulso de “CLK” el siguiente BIT del mapa se puede leer por el pin  “I/O”

 

                                    
                                      

 

Cabecera:
La cabecera consiste en 64 bits, que son libremente programables por el fabricante de la tarjeta. Esta área contiene generalmente los datos de identificación y del tipo de tarjeta, fabricante del chip y número de serie de la tarjeta. La cabecera en este caso esta dada de la siguiente manera:

E8 2B 66 10: datos del fabricante del chip

E2 A0 18 68: numero de serie de la tarjeta

Lo que interesa para hacer la cerradura es el número de serie de la tarjeta, este se almacena previamente en el microcontrolador, y solo cuando se lee la tarjeta correcta da el acceso.

La duración del puso de CLK en este ejemplo es de 15 micro segundos, con esto la tarjeta responde perfectamente.

Circuito del Lector



PCB


Instrucciones de uso:
Se debe conectar el PCB a una fuente regulada de 5 Vcd., el circuito tiene tres Leas, (rojo azul y amarillo) y un botón.

Para programar una tarjeta se oprime el botón, y luego se inserta la tarjeta, una vez que el numero de serie de la tarjeta este grabada en el PIC, se encenderá el LED amarillo indicando que la tarjeta esta dad de alta en la memoria del PIC, debemos retirar la tarjeta.

 Cuando introduzcamos la tarjeta correcta en el socket el LED verde deberá encender, si insertamos una tarjeta incorrecta encenderá el LED rojo.

 En el conector 2 se activa la señal la cual puede utilizarse para conectar un relevador o conectarla con un transistor dependiendo de lo que queramos controlar, la salida hacia este conector solo esta en serie con un resistor de 270 Homs hacia el pin del microcontrolador, por lo que si se desea conectar a otro dispositivo de control debemos de tener cuidado con la corriente que se va a manejar para no dañarlo, para esto debe utilizarse transistores diodos, etc. dependiendo de la corriente y tipo de dispositivo.

 Cuidados al graba la tarjeta:
Si revisan la el código del micro, podrán ver que no esta aplicado ninguna condición para grabar el numero de serie en la eeprom, es decir que si metemos la tarjeta al revés el pin IO solo leerá (1’s) ya que dicho pin esta con una resistencia a pullup interna en este caso el numero de serie almacenado en hexadecimal será: “0xFF 0xFF 0xFF 0xFF”, por lo tanto si se mete cualquier tarjeta al revés o incluso cualquier objeto que active el switch del socket, el PIC volverá a leer  “0xFF 0xFF 0xFF 0xFF”  y al compararlo con la eeprom dará el acceso, para solucionar este problema deben programar el PIC para que cuando lea puros unos no almacene dicho numero de serie. O si no quieren programar mas, solo verifiquen que cuando metan la tarjeta al revés no les de el acceso.

 En el proyecto que tengo actualmente  en desarrollo he cuidado mas cosas, como por ejemplo he puesto rutinas que leen la velocidad con la que responde la tarjeta, también verifico que si escribe en el área que esta permitido escribir en una tarjeta original y que no escribe donde no debe permitir no le de acceso.

 Recuerden que el lo único que debe estar en el exterior es la ranura para introducir la tarjeta, pueden también modificar el código para que almacene mas tarjetas, hacer una tarjeta maestra para dar de baja una o dar de alta otra, borrar todas o alguna de ella etc., etc. todo es cuestión de creatividad.

Conclusiones
Quiero aclarar que este sistema puede ser tan seguro como se programe, en este caso solo se validan cuatro bytes correspondientes al numero de serie de la tarjeta, pero en la zona que esta de color violeta se puede modificar esos valores, con otra rutina llamada “WRITE” la cual explicare de manera mas detallada en otro post, y esa zona es la que se puede utilizar para validar la tarjeta.

Hay cosas muy interesantes como por ejemplo a los cuatro bytes leídos del número de serie se les aplica una formula matemática y nos da como resultado el número de serie que esta impreso al  reverso de la tarjeta.

Aquí adjunto los archivos necesarios para la cerradura, consta de el código en CCS, y el diagrama en ISIS, y el PCB en ARES,  también he desarrollado este proyecto con un AVR (ATMEGA 8 ) después pondré el código.

 Espero que les guste este proyecto y que le puedan hacer modificaciones yo subiré un video y si alguno de ustedes lo lleva a cabo suban imágenes y video de ello.

  

 Saludos.

Links de este mismo proyecto en otras  paginas:

https://www.underground.org.mx/index.php?topic=17553.0

http://www.clubse.com.ar/download/pdf/notasrevistas16/nota04.htm

http://www.xbot.es/ezkybel/cerradura/
« Última modificación: 22 de Diciembre de 2010, 12:46:18 por dolphin_96 »
Visiten: www.xbot.es/ezkybel tengo tutoriales para pics con visual basic...:)

Desconectado Chrisbaf

  • PIC16
  • ***
  • Mensajes: 178
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #1 en: 23 de Diciembre de 2010, 13:23:06 »
gracias por  compartir tu proyecto.

Desconectado yesbond

  • PIC10
  • *
  • Mensajes: 11
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #2 en: 25 de Diciembre de 2010, 21:09:39 »
Fabuloso tu proyecto dolphin_96, estare atento al video del sistema funcionando.
Lo puedo hacer con tarjetas nuevas?,

Muchas gracias por tu genial aporte

Desconectado dolphin_96

  • PIC12
  • **
  • Mensajes: 73
    • Ezkybel Electronics
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #3 en: 26 de Diciembre de 2010, 21:40:42 »
gracias, mañana subire el video, y no se de que pais seas, pero las nuevas tarjetas de mexico si funcionan.

Saludos
Visiten: www.xbot.es/ezkybel tengo tutoriales para pics con visual basic...:)

Desconectado mdark

  • PIC10
  • *
  • Mensajes: 22
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #4 en: 10 de Enero de 2011, 13:50:23 »
Agradezco tu proyecto me permitirá muchas ideas  :-/  :-/  :-/

Desconectado bad_angel

  • PIC10
  • *
  • Mensajes: 5
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #5 en: 16 de Febrero de 2011, 01:56:41 »
hola amigo, es muy buen trabajo, ya vi las otras paginas que dices pero no tiene el codigo del pic, no se si podrias pasarmelo, solo es para darme una idea de que tengo que escribir en mi programa porque yo estoy haciendo un trabajo muy parecido pero utilizando un avr, el atmega8515, pero yo pretendo guardar el numero de las tarjetas en la memoria y hacer que no lea solo una a la vez, si no activar una para cada miembro de la familia.

Espero que puedas ayudarme, gracias

Desconectado dolphin_96

  • PIC12
  • **
  • Mensajes: 73
    • Ezkybel Electronics
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #6 en: 16 de Febrero de 2011, 12:21:15 »
el link de descarga es: chiptel

pero para mayor infomacion entra a mi pagina: www.xbot.es/ezkybel
ahi hay un totorial y un video, pero aprobecho para ponerlo aqui:

                                                  

Les repito que esta es la version mas sencilla de este lector, se le puede programar mas tarjetas, se le puede aumentar la seguridad, agregar un display, teclado, etc, etc. la version con la cual concurse hace algunos años tenia todas estas caracteristicas con un solo micro (pic16f628A) el teclado matricial compartia los pines del display, se hacia por multiplexion por software.
la intencion de este tutorial y proyecto es darles el programa "base" para que lo hagan a su gusto.

saludos
« Última modificación: 16 de Febrero de 2011, 13:28:07 por dolphin_96 »
Visiten: www.xbot.es/ezkybel tengo tutoriales para pics con visual basic...:)

Desconectado bad_angel

  • PIC10
  • *
  • Mensajes: 5
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #7 en: 07 de Marzo de 2011, 02:01:49 »
 :-/ :-/ gracias amigo, perdon por no contestarte antes pero habia estado un poco ocupado, voy a checar el programa para hacer el mio.  8) :-/

Desconectado Gusfavio

  • PIC12
  • **
  • Mensajes: 56
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #8 en: 20 de Noviembre de 2013, 21:17:19 »
Disculpa,  donde puedo averiguar mas sobre la lectura y escritura de estas tarjetas? donde puedo encontrar mucha mas teoria de como funciona, etc, para poder meterme a full en la practica??..... y bueno sino quieres decirme donde jeje entonces con que nombre puedo buscar mejor en google?
« Última modificación: 20 de Noviembre de 2013, 21:21:16 por Gusfavio »

Desconectado AcoranTf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1093
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #9 en: 21 de Noviembre de 2013, 20:23:16 »
Hola Gusfavio, este hilo tiene ya casi tres años. Por otro lado ese tipo de tarjetas dejaron de utilizarse en España hace muchos años, despues se utilizaron otro tipo de tarjeta inteligente basadas en microcontrolador, pero finalmente desaparecieron.
Si quieres estudiar sobre el tema, busca en google por tarjetas inteligentes, se utilizan en muchos temas distintos, desde la tele de pago, tarjetas bancarias, control de accesos, tarjetas sanitarias, receta electronica, identificacion electronica, (en España DNIe) y otros muchos usos.

Saludos.

Desconectado Gusfavio

  • PIC12
  • **
  • Mensajes: 56
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #10 en: 21 de Noviembre de 2013, 22:45:10 »
lamentablemente no hay mucho sobre este tema :(, me interesa muchisimo, pero seguire buscando haber si algo encuentro

Desconectado AcoranTf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1093
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #11 en: 24 de Noviembre de 2013, 16:15:35 »
lamentablemente no hay mucho sobre este tema :(, me interesa muchisimo, pero seguire buscando haber si algo encuentro

Creo que te confundes. Hay miles de paginas donde hablan de este tipo de tarjetas, incluyendo algunas de sus variantes como "wafer card" y muchas otras.
Echale un poco de picardia y tiempo y deduce cosas desde unas busquedas para realizar otras busquedas.
Hoy dia ese tipo de tarjetas son poco utilizadas a nivel de publico en general, pero son ampliamente utilizadas por todo tipo de empresas, desde bancos, gobiernos, televisoras de pago, control de accesos, recetas electronicas, documentacion electronica y cientos de usos distintos. Aunque hace unos años en el boom del pirateo de la tele de pago se utilizaron muchisimo a nivel de usuario final.

Saludos.

Desconectado Gusfavio

  • PIC12
  • **
  • Mensajes: 56
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #12 en: 25 de Noviembre de 2013, 20:17:11 »
me puedes ayudar por favor???? :( , estoy que busque y busque y no pillo naaaada :(, perdon por las molestias, o alguin podria ayudarme?? existe algun libro sobre este tema?? si hay libro mucho mejor , gracias por la atencion

Desconectado Darkman_A

  • PIC18
  • ****
  • Mensajes: 288
Re: CERRADURA CON TARJETAS TELEFONICAS
« Respuesta #13 en: 25 de Noviembre de 2013, 21:56:21 »
me puedes ayudar por favor???? :( , estoy que busque y busque y no pillo naaaada :(, perdon por las molestias, o alguin podria ayudarme?? existe algun libro sobre este tema?? si hay libro mucho mejor , gracias por la atencion

Hola.
Informacion hay en Internet. Tenes que buscarla como "tarjetas chip" o "smart Card".

Aca tenes un libro en ingles.
Tambien podes buscar por norma  ISO/IEC 7816 o  ISO 7816.
Saludos.