Módulo RFID a varios metros de Arduino

Buenos días.

Estoy desarrollando un proyecto de control de acceso y quería implementar un sistema usando tarjetas y lector RFID.

Tengo un Arduino MEGA2560 y un lector RFID-RC522.

El sistema funciona correctamente, pero estoy interesado en colocar el módulo RFID a varios metros del Arduino. 6 metros, específicamente.

Traté de conectarlo con dos cables telefónicos que tenía en casa (4 cables cada uno) y no funciona.

¿Cómo podría hacerlo? ¿Se os ocurre algo?

¡Muchas gracias!

En teoría el bus SPI no debe tener mucha longitud ya que no está pensado para ello, si no que está pensado para circuitos en una misma placa.

He visto en algún sitio que poniendo resistencias de pull-up bajas de 120 a 220 te permite llegar a una decena de metros, e incluso bajando la velocidad al mínimo. Pero quizás no sea la solución mas fiable.

Mi recomendación sería que usaras un Uno en conjunto con el lector RFID, y el Uno lo comunicaras con el Mega a través de un bus RS485. Así te garantizas que no habría problemas por la distancia.

En el mundo professional existen unos IC, llamado range extender justo para esto.
Mira este documento de TI.

Al final he montado el lector junto al Arduino. Pero me surge un problema.

Cuando se activa el motor que mueve la verja el lector deja de leer. Supongo que es por el ruido que mete el motor en el circuito. ¿Hay alguna forma de evitar esto?

Porque lo que he hecho para solucionarlo es reiniciar el lector con el método init() cada vez que se abre o cierra la puerta. Pero hay otro problema. La verja también se abre y cierra con mando y cada vez que se acciona, ocurre lo mismo. Así que lo que he hecho es reiniciar el lector cada 10 segundos. No sé si eso puede dañar el lector a la larga...

Necesitamos un diagrama de conexiones de lo que has hecho y ver como lo alimentas, como activas el motor, tipo de motor, etc.

Si tener esos datos no sabemos de donde puede venir el ruido y como solucionarlo.