Versión afectada: Todos los dispositivos BioStar 2 de firmware con modo maestro RS485, todas las versiones de BioStar 2

Frecuencia de ocurrencia: Ocasionalmente (por versión SW y versión FW)

Archivo de parche disponible: BioStar 2.8.10, 2.8.11, 2.8.12, 2.8.13

Versión corregida: BioStar 2.8.14 (Fecha de lanzamiento: diciembre de 2021)


 

Descripción del problema

Cuando el dispositivo que se va a utilizar como RS485 Master está conectado al software BioStar 2, y después de seleccionar la configuración a través del menú del dispositivo para configurar el dispositivo, guarde la configuración, BioStar 2 está enviando el valor de parámetro interno incorrecto al dispositivo RS485 Master.

 

Este parámetro interno transmitido erróneamente se aplica como el valor establecido real cuando el dispositivo RS485 Master se reinicia y la conexión de comunicación con el dispositivo esclavo RS485 se desconecta debido a este efecto. Además, existe el problema de que el dispositivo RS485 Master no puede volver a conectar el dispositivo RS485 Slave.

 

Dado que la conexión RS485 está desconectada, la puerta no se puede abrir cuando el usuario se autentica en el esclavo RS485.

 

Esto se puede resolver restableciendo la configuración del dispositivo desde la adición de dispositivos hasta la configuración de puertas.

 

 

Interfaz de usuario gráfica, Texto

Descripción generada automáticamente con confianza media

 

[Imagen 1- Dispositivo esclavo RS485 desconectado]

 

 

 

Notar

Es importante prevenir los problemas antes de que ocurran.

En un proyecto que controla un botón de puerta o ascensor mediante el funcionamiento de RS485, utilice el siguiente archivo de parche para aplicar.

 

 

<1> Cómo evitar el problema de desconexión del RS485

1) Detenga todos los servicios de BioStar (aplicación BioStar Setting).

2) Mueva el archivo de parche para la versión de BioStar 2 instalada actualmente a la ruta de instalación de BioStar 2.

Asegúrese de que la versión del servidor BioStar 2 se ejecute en el PC.

 

Archivo de parche para 2.8.10/2.8.11/2.8.12/2.8.13: Haga clic aquí

 

C:\Archivos de programa\BioStar 2 (x64)

Cambie el nombre del archivo a biostar-server.exe, el archivo biostar-server existente hace que el nombre del archivo se bak.

 

3) Ejecute el programa de conexión de base de datos, y ellos. copie la consulta en "BioStar 2 Patch - Release Note_ENG.txt" según el tipo de base de datos y, a continuación, ejecute la consulta.

 

Maria DB: Heidi SQL o MySQL Workbench

MSSQL: SQL Management Studio

 

Puede comprobar si la tabla se creó normalmente ejecutando la consulta "Seleccionar * de T_DEVFORCECMD".

 

Consulta Maria DB

CREAR TABLA SI NO  EXISTE  T_DEVFORCECMD

(

DEVID INT  NOT  NULL,

CMDTYPE INT  NOT  NULL  COMMENT  'Comando tipo ex : 0x012A 298 BS2_CMD_RS485_SET_SLAVE',

RSLT Char(1)  DEFAULT  'N'  COMMENT  'Y - enviado, N - aún no',

    createdAt DATETIME,

    actualizadoEn FECHA Y HORA,

    CLAVE PRIMARIA (DEVID)

    );

ALTER TABLE T_DEVFORCECMD  COMMENT  =  'Enviar un comando solo una vez al dispositivo de destino'. ;

INSERT IGNORE INTO T_DEVFORCECMD(DEVID,CMDTYPE,RSLT,createdAt,updatedAt)  SELECT  DEVID,  298,'N',  NOW()  AS  createdAt,  NOW()  AS  updatedAt  FROM  t_dev  DONDE  RS4MD  <>  'S';

SQL

 

Consulta de base de datos MSSQL

SI (NO  EXISTE  (SELECCIONE  *

DESDE INFORMATION_SCHEMA. MESAS

DONDE TABLE_SCHEMA  =  'dbo'

Y TABLE_NAME  =  'T_DEVFORCECMD'))

EMPEZAR

CREAR TABLA [T_DEVFORCECMD](

[DEVID] Int  NOT  NULL,

[CMDTYPE] Int  NOT  NULL,

[RSLT] Char(1)  NULL  CHECK  ([RSLT]  IN  ('Y',  'N')),

[createdAt] DATETIME2  NULL,

[actualizado En] DATETIME2  NULL,

    CLAVE PRIMARIA ([DEVID]));

 

EXEC sp_addextendedproperty  'MS_Description',  'Tipo de comando ex : 0x012A 298 BS2_CMD_RS485_SET_SLAVE',  'USUARIO',  DBO,  'TABLA',  T_DEVFORCECMD,  'COLUMNA',  CMDTYPE;

EXEC sp_addextendedproperty  'MS_Description',  'Y - enviado, N - aún no',  'USUARIO',  DBO,  'TABLA',  T_DEVFORCECMD,  'COLUMNA',  RSLT;

EXEC sp_addextendedproperty  'MS_Description',  'Enviar un comando solo una vez al dispositivo de destino'. ,  'USUARIO',  DBO,  'TABLA',  T_DEVFORCECMD

INSERTAR EN [dbo].[ T_DEVFORCECMD]  SELECT  DEVID,298,'N',GETDATE()  AS  createdAt,GETDATE()  AS  updatedAt  FROM  t_dev  WHERE  RS4MD  <>  'S';

FIN

 

 

SQL

 

4) Cuando se hayan completado todos los pasos 1-3, inicie todos los servicios de BioStar.

5) En el programa de conexión de base de datos, utilice la consulta a continuación para comprobarlo.

SELECCIONE b. DEVID,  a. RSLT  DE  T_DEVFORCECMD a,  T_DEV b  DONDE  a. DEVID  =  b. PARENTDEVID  Y  b. DEL  =  'N' Y   a. RSLT  =  'N'

SQL

Si no hay resultados de búsqueda, entonces el proceso fue exitoso.

- Dependiendo de la situación, está bien eliminar el elemento AND a.RSLT = 'N' y verificar si el valor de la columna RSLT se está cambiando a 'Y'.

- Esta tabla se utiliza para dar la señal de comando Set rs485 solo cuando el valor RSLT es N cuando el dispositivo está conectado a BioStar 2.

Dado que la señal set rs485 Command se da al dispositivo maestro con slave, puede tomar algún tiempo para que el valor de la columna RSLT cambie de 'N' -> 'Y' dependiendo del número de dispositivos conectados a BioStar2.

 

 

El parche anterior es un parche que evita el problema y no puede resolver la situación del problema. Si el problema de desconexión RS485 ya se ha producido, continúe con el procedimiento a continuación.

<2> Cómo resolver el problema de desconexión rs485

1) Haga clic en el menú Dispositivo en la lista de menús de la izquierda de BioStar 2.

2) Mueva el cursor del mouse al dispositivo maestro que tiene un problema de desconexión con el esclavo y haga clic con el botón derecho.

3) Haga clic en "Buscar dispositivo esclavo" en el menú del botón derecho.

4) Cuando la ventana emergente "Buscar dispositivo esclavo" haya terminado de cargarse, haga clic en el botón Cancelar para cerrar la ventana emergente.

5) Compruebe si el esclavo se vuelve a conectar al dispositivo maestro con una diferencia horaria.