Noticias:

¿Has visto el Mapa de Usuario de HispaLUG? Búscalo en el menú superior y apúntate.

Menú Principal

Lector de tarjetas + caja de seguridad

Iniciado por jcaro, 09 de Junio de 2010, 12:12:09 PM

Tema anterior - Siguiente tema

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

jcaro

Buenas! os presento un proyecto que hacía tiempo que me apetecía hacer. Un lector de tarjetas. Es decir, una máquina que a partir de un soporte físico determinado obtenga un código que, por ejemplo, nos permita o no el acceso a una caja de seguridad.

Aquí os enseño el modelo de tarjetas y el lector:



Como veis el lector consiste en una cinta trasportadora que al detectar el principio de la tarjeta (en mí caso he decidido que mis tarjetas deban de empezar por el color blanco para iniciar el proceso de lectura) se empiece a mover detectando mediante el sensor de color los distintos colores que componen el código de la tarjeta.


El programa consiste en dos pasos fundamentales pero muy similares, el primero es la lectura de la tarjeta que nosotros vamos a considerar correcta. Es decir, meter el código deseado. El segundo es la lectura de las tarjetas que introduzcamos a continuación comparando su código con el de nuestro código clave y permitiéndonos o no el acceso.

Un lector de este tipo puede tener muchas aplicaciones en la vida real, maquinas para sacar dinero, puertas de seguridad, etc.

En este caso vamos a conectar el lector junto a una caja de seguridad improvisada.


El pistón impide que se pueda abrir la tapa de la caja.

Aquí un video, perdonar por la calidad regular pero es que he tenido un problemilla en el cambio de formatos:


La verdad es que es muy divertido ver como al final consigues que el programa funcione como debería y lea la tarjeta correcta abriendo la caja  :D


Un saludo!

jig

Muy interesante, me ha parecido una bonita aplicación. Es muy largo el programa que has escrito?

Blastem

Una idea muy buena, y muy original el sistema de codificación   :}

Puede ser una buena idea para un concurso en la Hispabrick, hacer tu tarjeta y ver si aciertas la combinación  ÔÔ

Ten cuidado con los Hackers!  xD
Blog - Colección - Wanted List --- Look down, look down, Don't look 'em in the eye, Look down, look down, You're here until you die

Andréslego65

Ummmmm, te lo has currado, la verdad es que yo no le podía sacar tanto juego, me encanta la tarjeta.
La caja fuerte tiene un problema, le quitas las piezas y desmontada, ahora a robar el dinero ÔÔ
No, tienes mucho tiempo libre.
Ánimos

Jetro

Me encanta ver que esta sección esté cobrando vida.
El lector me gusta. Solo tengo un pregunta sobre la composición de las tarjetas: dices que debe empezar con blanco, pero en realidad, el sensor de color lee "negro" como olor por defecto, cuando no lee nada, así que creo que sería posible empezar con cualquier color que no fuera negro... ampliarías el abanico de códigos posibles...

jcaro

Gracias por los comentarios chicos.

jig: No no es muy largo el programa, está escrito en robotC, y consiste en un task main y luego otro task que se encarga de la segunda lectura y comparar datos, adicionalmente tiene un task para controlar los mensajes del display de nxt.

Andreslego65: Afortunadamente ahora si tengo mucho tiempo :) , tengo la suerte de haber terminado los examenes sin necesitar la convocatoria extraordinaria.

Jetro: ¡Por supuesto! La imposición de que empiece por blanco era solo una forma de organizar la programación,me parecía algo interesante ya que muchos sistemas de identificación empiezan por un código que indique el principio. Pero como bien dices el lector lee "negro" por defecto por lo que podría empezar por cualquier color y aumentar el rango de valores.

Desgraciadamente el lector tiene dos limitaciones importantes, una es que no se puede repetir ladrillo del mismo color seguido, y otra que no tengo suficientes colores de ladrillos para multiplicar las posibles combinaciones de código.

La caja de seguridad es de todo menos segura, pero bueno, era un ejemplo rapido XD.

saludos!

Jetro

Lo de no poder poner dos ladrillos del mismo color seguidos es una limitación de programación: conoces la velocidad a la que se desplaza la tarjeta ... así que si se ve un color durante 2x ese tiempo...  o_o o_o

jcaro

Cita de: Jetro en 09 de Junio de 2010, 14:08:40 PM
Lo de no poder poner dos ladrillos del mismo color seguidos es una limitación de programación: conoces la velocidad a la que se desplaza la tarjeta ... así que si se ve un color durante 2x ese tiempo...  o_o o_o

¡Cierto! Es una limitación de programación, es decir, como Jetro pretende sutilmente decir ¡Culpa mía! XD XD A ver si me animo y lo soluciono siguiendo tu razonamiento.

saludos

31415926

Me ha gustado mucho la composición de lector + caja, está muy simpático :D. Con este sistema ya no hay problemas de olvidarse del pin; con unas cuantas piezas en el bolsillo, tachaaaan, tarjeta nueva.

Ya te han dado ideas para mejorar el lector, que no está nada mal. ¿Has pensado que pasaría si introducimos la tarjeta al revés? se podría leer en los dos sentidos (aunque se reduzcan las combinaciones)

¿Cómo se conecta la luz verde al NTX? ¿Cómo se programa? No lo he visto nunca y tengo mucha curiosidad.

¿El sensor de color es del NXT 1.0 o el del NXT 2.0? Si es el del 2.0, entonces habrás probado la nueva beta de RobotC :B ¿Qué tal va?
3,1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229 . . .             

jcaro

Cita de: 31415926 en 09 de Junio de 2010, 22:30:26 PM
Me ha gustado mucho la composición de lector + caja, está muy simpático :D. Con este sistema ya no hay problemas de olvidarse del pin; con unas cuantas piezas en el bolsillo, tachaaaan, tarjeta nueva.

Ya te han dado ideas para mejorar el lector, que no está nada mal. ¿Has pensado que pasaría si introducimos la tarjeta al revés? se podría leer en los dos sentidos (aunque se reduzcan las combinaciones)

¿Cómo se conecta la luz verde al NTX? ¿Cómo se programa? No lo he visto nunca y tengo mucha curiosidad.

¿El sensor de color es del NXT 1.0 o el del NXT 2.0? Si es el del 2.0, entonces habrás probado la nueva beta de RobotC :B ¿Qué tal va?


No entiendo muy bien que quieres decir con lo de la tarjeta al reves, si introduces la tarjeta al reves leería el código inverso tal como está ahora mismo.

En cuanto a la luz verde, se conecta mediante un conector clásico de mindstorms solo que su final es conexión tipo NXT para conectarlo al nuevo ladrillo, estos cables te dan compatibilidad con sensores del RCX, a mí me vinieron en el pack educativo. Se programa como si fuera un motor al ser una salida del ladrillo, eso si, es importante desactivar el control PID en esa salida, ya que si no no podrás apagar la luz debido a que la salida seguirá mandando energía debido a este control.

El sensor de color es de Hiteccnic. Pero mi versión de RobotC es la 2.0 que vale naturalmente para ambos nxt y demas sensores de ambos, ¿aunque si no me equivoco hay una más reiciente que soporta el sensor 2.0 no ?. La versión 2.0 está realmente bien, mejora mucho el entorno de programación, con distintas opciones configurables de este e incluye bastantes nuevas opciones muy interesantes. Recomendable para quien use RobotC


31415926

Me refiero a introducir la tarjeta por cualquiera de los dos extremos, la tarjeta es la misma pero seguro que solo la identificas en un sentido. Soy de los que en los cajeros tengo que meter la tarjeta cuatro veces hasta que acierto.

Últimamente estoy muy espeso y no tengo memoria, lo que tienes es un x1676 ¿verdad? Yo quiero unos cuantos :B.


Pensé que usabas uno de estos.


En cuanto salga la próxima versión me actualizo.
3,1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229 . . .             

jcaro

Sí, tengo 3 cables x1676.

Pues a ver, te daré un ejemplo de la programación actual para que nos entendamos basandome en la tarjeta de tu foto.

Cada color tiene asignado un valor númerico:

Azul: 1

Amarillo: 2

Rojo: 3

Así en el primer caso de tu foto adjunta, el código sería, 2 3 1 2 3

Y en el segundo caso:                                              3 2 1 3 2

Es decir el código al reves, y por lo tanto, la combinacion sería incorrecta. Y te volvería a pedir que metieras la tarjeta.

Supongo que te refieres a que metas por descuido la tarjeta mal y el programa corrija este descuido, sería una idea divertida de programación, pero como bien dices reduciría las posibles combinaciones.

saludos!

Vi


Holas;

Me ha gustado mucho el invento. Muy chulo, mi enhorabuena y gracias  :}
Salu2 a to2;

jcaro

Gracias por tu comentario Vi, deduzco que desde que no he entrado está ultima temporada (la playa y la electrónica no se llevan  muy bien) eres nuevo en en este foro. Lo suyo sería ponerlo en mensajes de bienvenidas. Pero ya aprovecho aquí. ¡Bienvenido!

Vi


Holas;

La verdad es que no, llevo como un par de años pululando por aquí, pero sí es cierto que desde enero hasta hace cosa de un mes no entraba en el Foro: tengo dos fieras de 2,5 y 1 años que me roban actualmente todo el tiempo. No hay mal que por bien no venga: quise tener excusas para comprar Lego y las excusas me roban el tiempo de montar Lego, jajajaja....
Salu2 a to2;