Sencillo Sistema de Control de Accesos: Utiliza el escáner de código de barras RTMU86 para controlar la cerradura directamente, sin utilizar el panel de control de acceso.

El RTMU86 carga los datos del escáner al servidor y controla el cierre de la puerta

En la mayoría de los casos, la composición del sistema de control de acceso es la siguiente: escáner de código de barras / lector NFC + panel de control de acceso + cerradura + software/servidor de control.

Sin embargo, si utilizas nuestro RTMU86, podemos hacer que el sistema sea más sencillo.

En primer lugar, conecta el escáner RTMU86 con la cerradura y, a continuación, conecta el RTMU86 al servidor a través de Ethernet. El contenido escaneado se envía al servidor a través de Ethernet. Después de que el servidor verifique el contenido y envíe el comando de desbloqueo al RTMU86, éste controla directamente la cerradura para que se abra. Así se convierte la solución:

escáner de código de barras / lector NFC+ cerradura + software/servidor de control.

Con esta solución, no necesitamos utilizar el panel de control de acceso, con lo que se reduce el coste y se simplifica enormemente la dificultad de integración del sistema. Así que

Consejos:

  1. Si utilizas esta solución, los clientes tienen que desarrollar/construir su propio software de gestión de control de accesos.
  2. En este artículo, te presentamos una solución sin utilizar un controlador de acceso, pero también puedes utilizar el RTMU86 para trabajar junto con el controlador de acceso y luego conectar con la cerradura. Para saber más sobre esta solución, lee: https://www.rtscan.net/wiegand-barcode-scanner-and-zkteco-access-control-system/

A continuación, describimos detalladamente la conexión del hardware y la configuración del escáner.

1. Conexión del hardware

(1) Conexión RTMU86 con cerradura

Se conectan 12V a la entrada del terminal com del RTMU86, y NO al polo positivo de la fuente de alimentación de la cerradura electromagnética. Después de que el mu86 reciba la orden de desbloqueo, los puertos com y no se encienden, y la cerradura electromagnética se energiza y se desbloquea.

Esquema de conexión de la cerradura de la puerta

(2) Conexión del puerto de red RTMU86

La versión Ethernet del RTMU86 (la otra versión es la Wiegand) saca directamente cuatro clavijas de cable de red, que se pueden conectar a cuatro de los cables de red estándar de ocho núcleos según el color. El cable de red adopta el método de conexión 568B. Consulta la tabla para realizar el cableado según el color.

Pines del RTMU86Pin4Clavija3Clavija2Clavija1
Color del cable de redNaranjaNaranja blancoVerdeVerde blanco
Icono de color del cable de red

2.Configuración RTMU86

(1).Selecciona RTMU86

Haz clic en siguiente

(2)Configurar el modo de trabajo

modo de trabajo:Desarrollar,

Salida: Ethernet

Desarrollo:Protocolo

Salida WIFI/Ethernet/2G: TCP

(3) Establecer NET

ÉxitoAcción:flash Verde (Opcional)

FailAction:flash rojo(Opcional)

Establece la dirección del servicio y el puerto al que se cargan los datos (*configuraciones necesarias)

Dirección: dirección del servidor, como 192.168.4.1

Número de puerto: puerto del servidor

Configuración del modo IP

IP dinámica: IP dinámica, la dirección IP es asignada automáticamente por el router

IP estática: especifica manualmente la dirección IP, cuando se establece en IP estática, debes especificar la dirección IP, la máscara de subred y la puerta de enlace, el formato es el siguiente

(4) Configuración del código de escaneado del dispositivo

Haz clic en código de configuración para generar el código de configuración. Escanea el código de configuración del dispositivo para completar la configuración

Para un uso detallado de la herramienta de configuración, consulta el “Manual del usuario de la herramienta de configuración ScannerConfig”.

Una vez completada la configuración, el dispositivo se conecta automáticamente al servidor especificado y, tras escanear el código, informa de los datos de escaneado.

3. Conéctate al servidor

Como cliente, el escáner MU86 puede establecer una conexión TCP larga con el servidor y procesar la respuesta devuelta por éste. La especificación de la interfaz se define del siguiente modo

Protocolo TCP/TCP

El formato de la dirección IP del servidor TCP/IP solicitada es: xxx.xxx.xxx.xxx

El formato del puerto del servidor TCP/IP solicitado es: 0-65535

El escáner envía los datos originales escaneados al servidor

servidor:

4. Registra la cuenta y controla el bloqueo de la puerta

Utiliza el servidor para crear el servidor TCP, aceptar los datos comunicados por el escáner, determinar los datos cargados y emitir el comando de desbloqueo

Comando de control del relé: (el comando es una matriz hexadecimal)

Cabecera del comandoPalabra de mandoLongitud de los datosByte 1Byte 2Palabra de control
2Byte1Byte2Byte1Byte1Byte1Byte
0X55 0XAA0x2a0X02 0X00

0x01 Activado

0x00 Apagado

Duración (unidad: 50MS) 0x00: Tiempo por defecto

Por ejemplo

55 aa 2a 02 00 01 02 d4 Relé encendido 100ms

55 aa 2a 02 00 00 02 d5 relé apagado

Más instrucciones de referencia<>

En esta prueba, el lado del servidor utiliza python para construir tcpsever, lee los datos cargados por el dispositivo y juzga si se ajustan al id registrado y cumplen la instrucción de desbloqueo emitida

Ejecutar py

El dispositivo establece una conexión

Datos cargados recibidos

ID es el mismo que el ID guardado, emite el comando de desbloqueo

Código fuente de referencia

[python]
import binascii
from quopri import HEX
from socket import *
from time import ctime

HOST = '192.168.4.1'
PORT = 8888
BUFSIZ = 1024
ADDR = (HOST, PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)

id_list = ["12345678", "abcdefg"]

def calculate_bbc(data, len):
bbc = 0
for i in range(len):
bbc ^= data[i]
return bbc

def detection_id(data):
data_len = len(data)

if data_len < 8:
return 0

if data[0] == 0x55 and data[1] == 0xaa and data[2] == 0x30 and data[3] == 0x00:
bbc = calculate_bbc(data, data_len - 1)
if bbc == data[data_len - 1]:
id_len = data[4] + data[5] * 256
id = data[6:6+id_len]
print("read id=", id)
for cid in id_list:
if id == cid.encode("UTF-8"):
return 1

print("Id not registered:", id)
return 0
else:
return 0

def send_lock_open(client, ms):
buf = [0x55, 0xaa, 0x2a, 0x02, 0x00, 0x01, 0x00, 0x00]
if ms < 50: ms = 50
buf[6] = int(ms / 50)
buf[7] = calculate_bbc(buf, 7)
# print("send:", bytes(buf))
client.send(bytes(buf))

recv = client.recv(BUFSIZ)
if not recv:
return -1
# print(recv)
if recv == b'\x55\xaa\x2a\x00\x00\x00\xd5':
return 1
else:
return 0

def send_lock_close(client):
buf = [0x55, 0xaa, 0x2a, 0x02, 0x00, 0x00, 0x00]
buf[6] = calculate_bbc(buf, 6)
client.send(bytes(buf))

while True:
print('waiting for connection...')
tcpCliSock, addr = tcpSerSock.accept()
print('...connnecting from:', addr)

while True:
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
# print(data)
if detection_id(data):
print('open the door')
if send_lock_open(tcpCliSock, 1000):
print('open the door success')

tcpCliSock.close()
tcpSerSock.close()

[/python]

Productos relacionados


Para cualquier duda, consulta a nuestro ingeniero de ventas sales@rtscan.net o al equipo de asistencia support@rtscan.net.

Gracias.

13 View