Pages: 1 2 [3] 4   Go Down
Author Topic: Control de Acceso con RFID-RC522 y KEYPAD MATRIX 4X3  (Read 8427 times)
0 Members and 1 Guest are viewing this topic.
Murcia
Offline Offline
Full Member
***
Karma: 2
Posts: 109
Aprendiz de novato
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola Canguiri,

En este post tienes el código y esquema de montaje del arduino + keypad + relé + rfid. También el código.

Solo te faltaría añadir el lcd y la parte de código correspondiente y sustituir el relé por el servo y su parte de código correspondiente.

En cualquier caso, si tienes de plazo hasta diciembre y no tienes ni idea ni de montaje ni de programación tienes dos opciones: a) ponerte las pilas ya mismo y empezar a trastear con tu arduino ( entiendo que tienes uno, ¿no?) y processing o b) hacer el proyecto con otra plataforma que conozcas algo más.

Si optas por la a) encontrarás en Internet y en este mismo foro multitud de sketch y proyectos con LCD y también con servos que, a poco que aprendas, te será fácil integrar.

Un saludo!
Logged

estado de mexico
Offline Offline
Newbie
*
Karma: 0
Posts: 3
I like the electronic
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si cuento con un arduino uno
pero apenas soy nuevo en estos temas
por eso pido ayuda
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si cuento con un arduino uno
pero apenas soy nuevo en estos temas
por eso pido ayuda


Compila el codigo que te deja Jukar funciona correctamente. Mi consejo esque vayas poco a poco, ir desarrollando cada funcionalidad y aumentando el codigo junto con los diferentes dispositivos. Para el LCD te puedo dejar el esquema de conexion
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola Jukar dos dudas:

Para tu proyecto, ¿como se le haría para leer mas llaves (tags o token como se llamen en el RFID)?
y segunda, cuales llaves me recomendarías comprar (entendiendo que ya tengo el RFID-RC522) y solo ocupo mas llaves.

Muchas gracias por tu proyecto,


Saludos
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola Jukar dos dudas:

Para tu proyecto, ¿como se le haría para leer mas llaves (tags o token como se llamen en el RFID)?
y segunda, cuales llaves me recomendarías comprar (entendiendo que ya tengo el RFID-RC522) y solo ocupo mas llaves.

Muchas gracias por tu proyecto,


Saludos

Creo que ese lector es NFC de RFID 13.56 MHz cualquier llave de ese tipo te vale, puedes encontrar alquier cosa token, tag, cards, siempre que sea 13.56 MHz
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola señores

estoy usando su código para emular la controladora de una caja fuerte que se quemó y por ahora va bien la cosa, pero tengo un par de dudas...

http://forum.arduino.cc/index.php?topic=204139.msg1503175#msg1503175

la primera es si el lector de tarjetas tiene potencia para ir por dentro de la puerta que es de un centímetro de grosor, porque si llega un ladrón gracioso y arranca el teclado y el lector de tarjetas... adiós caja, aunque bueno yo en principio solo estoy usando la parte de código correspondiente al teclado.

la segunda duda que me surge es que al temporizar el relé para darle chicha al motor que mueve el cerrojo, igual llevará unos sensores para indicar al programa cuando el cerrojo ha llegado al principio y al final de carrera. yo había pensado calcular el tiempo que tarda en cerrar y abrir y temporizarlo lo más exactamente posible, pero siempre habrá algún desajuste que a la larga hará que no cierre ni abra bien

han sido muy ilustrativos en los comentarios, gracias
« Last Edit: December 11, 2013, 05:23:33 pm by pedroarduino » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola que tal...

como comentaba en el anterior post, he usado vuestro código para emular una controladora de una caja fuerte, y de momento he conseguido integrar a mi UnoR3 el teclado propio de la caja fuerte, y ahora intento integrar los sensores de principio y fin de carrera. lo que trae el sistema es un par integrados UGN3013T, que hace de interruptor cuando se le enfrenta un imán que se mueve a la par que el cerrojo. el integrado probado con el código de ejemplo "Button" funciona perfecto, hace de interruptor NC y al enfrentarle el imán se abre. intento colar la orden de parar el motor en lugar del retardo de digitalWrite. intento averiguar por mí mismo, aunque si alguien que lo sepa me ayuda, paso a la siguiente cuestión que ya es montar físicamente.

gracias por leerme, un saludo

Quote
#include <Keypad.h>

const byte ROWS = 5;
const byte COLS = 4;

char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','A'},
{'7','8','9','A'},
{'C','0','X','A'},
{'A','A','A','A'}
};

byte rowPins[ROWS] = { 7, 6, 8, 9, 5 };
byte colPins[COLS] = { 12, 11, 10, 4 };

// Create the Keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

char key;
char *clave="1111";
char *introducida="xxxx";
int indiceTeclado=0;


void setup()
{
Serial.begin(9600);
pinMode(13,OUTPUT);
digitalWrite(13, LOW);
}

void loop()
{

key=keypad.getKey();

if (key != NO_KEY)

{
if (key == 'A')
{
if (indiceTeclado==4)
{
bool coincide=true;
for (int i=0;i<4;i++)
{
if (clave!=introducida)
{
coincide=false;
break;
}}
if (coincide)
{                        

  digitalWrite(13, HIGH);
delay(2000);
digitalWrite(13, LOW);
}}

Serial.println(key);
indiceTeclado=0;
}
else
{
if (indiceTeclado < 4)
{
introducida[indiceTeclado]=key;
indiceTeclado++;
Serial.print(key);}}}}

            
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

creo que lo lograré con el código de ejemplo de "State change detection"
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

jjajajaja!!! joer nadie me ayuda!!! lo logré con un do...while

gracias por nada!!!! jjjejejejeje y feliz navidad
Logged

Murcia
Offline Offline
Full Member
***
Karma: 2
Posts: 109
Aprendiz de novato
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Enhorabuena compañero!!! Tu proyecto es muy interesante. Me alegra que consiguieras llevarlo a buen puerto.
No te preocupes si nadie te responde, puede ser que nadie sepa ayudarte o simplemente que el que sí sepa no te haya leído.

Un saludo!
Logged

Palencia, Spain
Offline Offline
Sr. Member
****
Karma: 19
Posts: 385
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

... O no haya entendido la pregunta  smiley-red
Ahora que veo lo sencillo de la solución, entiendo lo de "intento colar la orden de parar el motor en lugar del retardo de digitalWrite"; pero en serio que (y tal vez a otros también) me despistó. Disculpas, en todo caso, por no haberte pedido una aclaración.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

GRACIAS POR RESPONDER!!!!

aunque estoy en un momento de decepción... empiezo a sospechar que con arduino no voy a obtener la estabilidad y seguridad que requiere mi proyecto, porque va a estar dentro de una caja fuerte, mayormente, y si falla hay que taladrar

ya tuve un susto; compré dos tarjetas y después de un día de pruebas me falla el ATMEGA de una de ellas

y ahora, no me funciona el logro del otro día, bueno funciona una sí, una no.

el sistema original lleva dos sensores y un imán en el cerrojo, pero yo lo voy a cambiar a dos imanes y un sensor, para simplificar el código. el retardo de un segundo lo uso para que le dé tiempo al imán a separarse del sensor, hasta que lo alcanza el otro imán. el otro día funcionaba bien pero ahora me ocurre lo siguiente

el comparador de claves funciona perfecto, cuando se mete la clave correcta la primera vez el cerrojo se desplaza, y se para cuando el sensor le dice que tiene que parar. hasta ahí bien. lo malo viene la segunda vez que se mete la clave correcta, el do...while no funciona y el cerrojo se para cuando pasa un segundo. si se mete la clave mal el siguiente ciclo lo rula bien, pero si se mete la clave siempre bien, funciona una sí, una no.

lo que me preocupa es que el otro día funcionaba a la perfección, y desmonté el cableado de prueba para el montaje final y de repente bam bum crash... lo más seguro es que la haya pifiado, porque estuve metiendo varios códigos, del Button, Debounce, StateChangeDetection, DigitalInputPullup... a lo mejor me he dejado una línea que está rompiendo la armonía... luego mirando un manual descubrí el DO-WHILE y eureka...

empezaré de cero y os iré contando, gracias por leerme, un saludo




digitalWrite(13, HIGH);
delay(1000);
do
{
x = digitalRead(9);
digitalWrite(13, HIGH);
} while (x == HIGH);

digitalWrite(13, LOW);

Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 1
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola Jucar.
Enhorabuena por tu trabajo y por dejar que los que sabemos menos podamos aprovecharnos un poco a la vez que aprendemos.
El caso es que iba a utilizarlo y me da un error. Este:


#include <SPI.h>
#include <RFID.h>
RFID rfid(10,9); // Pines de conexión del RFID              EN ESTA LINEA
char tecla; // Variable para almacenar la tecla pulsada en el KeyPad
//____________________________________
char *clave="1234"; // *****1234 ES LA CLAVE DE 4 DÍGITOS PARA QUE ABRA CON EL TECLADO. MODIFICAR*********
char *introducida="xxxx"; // Para guardar espacio en memoria para la clave que introducimos
int indiceTeclado=0;


Esto es lo que dice:

sketch_dec19b:29: error: 'RFID' does not name a type
sketch_dec19b.ino: In function 'void setup()':
sketch_dec19b:41: error: 'rfid' was not declared in this scope
sketch_dec19b.ino: In function 'void loop()':
sketch_dec19b:52: error: 'rfid' was not declared in this scope
sketch_dec19b:76: error: 'rfid' was not declared in this scope

Gracias de antemano por la ayuda
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hola chemamata

o mucho me equivoco o no has descargado la librería para que la instale con el sketch, porque el software arduino no la trae de serie

si no es eso lo siento, mi nivel es muy bajo y es lo único que se me ocurre. suerte
Logged

Palencia, Spain
Offline Offline
Sr. Member
****
Karma: 19
Posts: 385
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

¿Tienes correctamente instalada la librería RFID?
El archivo RFID.h debería aparecer (junto con el resto de los archivos y carpetas de la misma) exactamente en la ruta Arduino\libraries\RFID\RFID.h.
Saludos.
Logged

Pages: 1 2 [3] 4   Go Up
Jump to: