o
Con la función Comprobación del Proyecto se pueden realizar varias comprobaciones de proyectos con la ayuda de un asistente. El asistente de Comprobación del Proyecto le guiará a través del proceso de verificación de su proyecto respecto a las reglas comunes de planificación y diseño de KNX.
Esta comprobación se lleva a cabo off line. El ETS no requiere por tanto una conexión al Bus.
La Comprobación del Proyecto puede invocarse a través de los 3 puntos de la barra de herramientas.
Hay 5 niveles diferentes que se comprueban en un proyecto.
- Comprobación de Dispositivos
- Comprobación de Direcciones de Grupo
- Comprobación de la Topología
- Comprobación de la información de producto
- Comprobación de proyectos importados desde versiones anteriores de ETS
Comprobación de Dispositivos
¿Qué se verifica con la Comprobación de Dispositivos?
- Si al menos un objeto de grupo de los dispositivos está asociado con una dirección de grupo
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| device.ActiveComObjectInstances.Count > 0 | ¿Hay algún objeto de grupo activo asociado a una dirección de grupo? | Advertencia: El dispositivo "{device.DisplayName}" no tiene ningún objeto de grupo asociado a una dirección de grupo. |
- Si todos los identificadores de dispositivo son compatibles con los plug-ins de ETS3
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| device.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3 | |
| device.Name.length > 50? | Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| para cada comObject.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3. |
Comprobación de Direcciones de Grupo
¿Qué se verifica con la Comprobación de Direcciones de Grupo?
- Si todas las direcciones de grupo son usadas (enlazadas con al menos un objeto de grupo)
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| La dirección de grupo está asociada a un segmento PL | para cada conector de la dirección de grupo con la bandera connector.Acknowledge activada, se calcula el recuento de llamadas de grupo. Para ello, se guarda la dirección de dominio del segmento padre (connector.ParentDevice.Segment) y se incrementa el valor si hay otro conector con la bandera de reconocimiento activada. Si el valor es superior a 1, se crea una entrada de informe. | Para la dirección de grupo "{groupAddress.DisplayName}" hay demasiados aparatos asociados que envían el telegrama LL-Ack. |
| groupAddress.ObjectSize != null | groupAddress.Connectors.Count < 2 | Solo hay un objeto de grupo enlazado con la dirección de grupo "{groupAddress.DisplayName}" |
| groupAddress.ObjectSize != null | groupAddress.Connectors.Count < 1 | No hay objetos de grupo enlazados con la dirección de grupo "{groupAddress.DisplayName}" |
| groupAddress.ObjectSize == null | No hay objetos de grupo enlazados con la dirección de grupo "{groupAddress.DisplayName}" |
- Si las direcciones de grupo extendidas están vinculadas a dispositivos plug-in
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| GroupAddress.Address >0x7FFF y groupAddress.Connectors.Count > 0 y groupAddress.Connector.ParentDevice.HasDownloadPlugin |
Advertencia: El objeto de dispositivo {connector.ParentComObjectInstance.Number} está asociado a la dirección de grupo de 16 bits {groupAddress.AddressString} {groupAddress.Name}. |
- Si todos los identificadores de dirección de grupo son compatibles con plug-ins de ETS3
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
|
groupAddress.Description.length > 80? groupRange.Description.length > 80? |
Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3 | |
|
groupAddress.Name.length > 50? groupRange.Name.length > 50? |
Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. |
Comprobación de la Topología
¿Qué se verifica con la Comprobación de la Topología?
- Se comparan los requisitos de corriente de cada dispositivo y la corriente proporcionada por las fuentes de alimentación TP
- Si la propiedad de consumo de energía del dispositivo está disponible en los dispositivos, se utiliza; de lo contrario, se utiliza una estimación de 10mA
- Si la propiedad de energía suministrada por las fuentes de alimentación está disponible, se utiliza; de lo contrario, se utiliza una estimación de 320mA
- Número de fuentes de alimentación y de bobinas en segmentos TP
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| line.MainSegment.IsTpSegment y line.Devices.Any() |
para cada línea, se calcula el número de fuentes de alimentación. Si el powerSupplyCount == 0, se crea un mensaje de información. |
Info: No hay alimentación proyectada para la línea "{line.DisplayName}" |
| line.MainSegment.IsTpSegment y line.Devices.Any() | para cada línea, se calcula el número de fuentes de alimentación. Si el powerSupplyCount > 2, se crea un mensaje de error. | Error: Más de 2 fuentes de alimentación proyectadas para la línea "{line.DisplayName}" |
| line.MainSegment.IsTpSegment y line.Devices.Any() | o de cada línea, se calcula el número de fuentes de alimentación y bobinas. Si powerSupplyCount != chokeCount, se crea un mensaje de advertencia. | Advertencia: El número de bobinas en la línea "{line.DisplayName}" no coincide con el número de fuentes de alimentación. |
- Si faltan acopladores en los segmentos principales
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| Más de una línea con segmento principal TP y dispositivos |
si no hay ningún acoplador en line.MainSegment, se muestra un mensaje de error |
Error: La línea "{line.DisplayName}" no tiene acoplador de línea |
| Más de un !area.MainLine.MainSegment.IsIpSegment y area.MainLine.Devices.Any() | si no hay acoplador de area.MainLine.MainSegment, aparece un mensaje de error | Error: El área "{area.DisplayName}" no tiene acoplador de área. |
| line.MainSegment.IsPlSegment || line.MainSegment.IsRfSegment |
line.MainSegment.IsPlSegment: Comprueba si existe el dispositivo con versión de máscara 0x1900, Si no es así se muestra un mensaje de error. line.MainSegment.IsRfSegment: Comprueba si existe el dispositivo con versión de máscara 0x2920. En caso contrario, aparecerá un mensaje de error. |
Error: Si line.IsMainLine El área "{area.DisplayName}" no tiene acoplador de medios en la línea principal {line.DisplayName}. de lo contrario: La línea "{line.DisplayName}" no tiene acoplador de medios. |
- Si faltan acopladores de segmentos en los segmentos secundarios
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| si existe un repetidor TP (sin función de acoplador de segmentos) | Advertencia: La línea "{segment.DisplayName}" está acoplada a través de un repetidor sin capacidad de filtrado. Considere la posibilidad de sustituirlo por un acoplador de segmentos para reducir el tráfico del bus. | |
| si existe acoplador de medios heredado (sin función de acoplador de segmentos) | Advertencia: la línea "{segment.DisplayName}" está acoplada a través de un acoplador de medios que podría esperarse fuese implementado como acoplador en la línea principal o troncal, pero que podría no estar preparado para el acoplamiento de segmentos. Consulte la documentación del dispositivo. |
|
| no se detecta acoplador | Error: La línea "{segment.DisplayName}" no tiene acoplador de segmentos. |
- Si la línea backbone debe ser IP
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
|
Se comprueba, si existe una línea con Line.Address == 0 && Line.ParentArea.Address == 0, en caso contrario se crea un mensaje de error |
Advertencia: No hay línea troncal. Se recomienda crear una línea troncal y configurarla como "IP". |
|
|
Si existe una línea troncal, se comprueba también si existe un dispositivo con dirección == 0 y maskVersion == 0x091a. existe un acoplador de este tipo con ApplicationProgramIpConfig == ApplicationProgramIpConfig.Custom y otro acoplador con ApplicationProgramIpConfig != ApplicationProgramIpConfig.Custom. En caso afirmativo, se crea un mensaje de error. |
Advertencia: La línea troncal no es de tipo 'IP', aunque en el proyecto sólo existen routers IP con gestión personalizada. Se recomienda configurar la línea troncal como 'IP'. |
- Si se cumplen los requisitos para topologías con routers KNX/IP: Esta comprobación es solo para los routers KNX/IP existentes.
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. |
la línea no es una línea principal: para el router IP x.y.0, no debe existir ningún router x.0.0 |
Error: Existe un acoplador de área mientras que también existe un acoplador de línea de tipo 'IP' (router KNX/IP) por debajo de ese acoplador de área. Esto no está permitido |
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. | la línea no es una línea principal: para el router IP x.y.0, el tipo de medio de la línea principal será IP si existe | Error: Existe un acoplador de línea de tipo 'IP' (router KNX/IP) debajo de una línea principal que no tiene el tipo de medio 'IP'. El tipo de medio de la línea principal debe configurarse como "IP" si se configura un router KNX/IP por debajo |
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. | line.Address != 0: para el router IP x.y.0 con y != 0, no debe existir ningún otro acoplador x.y.0 que no sea IP | Error: Dentro del mismo área, se mezclan acopladores de línea de tipo 'IP' (routers KNX/IP) y acopladores no IP. Esto no está permitido |
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. | Para el router IP x.y.0 o el router IP x.0.0, el tipo de medio de la línea troncal será IP si existe | Error: Existeun acoplador de tipo 'IP' (router KNX/IP) y la línea troncal (0.0) no tiene el tipo de medio 'IP'. El tipo de medio de la línea troncal debe configurarse como 'IP' si se configura un router KNX/IP |
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. | si installation.BackboneLine.MainSegment.IsTpSegment y hay línea.MainSegment.IsIpSegment, se crea un mensaje de error | Error: El tipo de medio de la línea {line.DisplayName} no debe ser IP, porque la línea troncal es de tipo de medio TP |
| Hay un dispositivo con dirección == 0 y device.IsCoupler y device.MaskVersion == 0x091a en line.Devices. | Se comprueba si hay líneas IP bajo la línea principal TP | Error: El tipo de medio de la línea {0} no debe ser IP, porque la línea principal es de tipo de medio TP. |
- Si todos los identificadores de la topología son compatibles con los plug-ins de ETS3
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| line.Name.length > 50? | Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| area.Name.length > 50? | Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| buildingPart.Name.length > 50? | Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| trade.Name.length > 50? | Error: La longitud del nombre es superior a 50 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| line.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| area.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| buildingPart.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| trade.Description.length > 80? | Error: La longitud de la descripción es superior a 80 caracteres. Esto podría causar problemas con los plug-ins de ETS3. | |
| buildingPart.Number.Length > 20? | Error: La longitud del número es superior a 20 caracteres. Esto podría causar problemas con los plug-ins de ETS3 | |
| trade.Number.Length > 20? | Error: La longitud del número es superior a 20 caracteres. Esto podría causar problemas con los plug-ins de ETS3 |
Verificación de la Información de los Productos
En algunos casos, está disponible una actualización de una entrada de producto KNX que contiene mejoras o correcciones de errores para la misma versión del producto. Con la ayuda de esta comprobación, se puede imprimir una lista que muestra todos estos dispositivos. La lista también contiene las "huellas dactilares" de los dispositivos (estas pueden ser utilizadas por los fabricantes para distinguir entre distintas variaciones de un dispositivo, incluso cuando la versión es la misma).
Comprobación de proyectos importados desde versiones anteriores de ETS
¿Qué se verifica con la Comprobación de los proyectos importados de versiones anteriores de ETS?
- Si todas las direcciones de los dispositivos son válidas
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| device.Address != null y device.line != null | device.Address < 0 || device.Address > 255 | Error: La dirección "{device.Address}" de "{device.DisplayName}" está fuera de rango. |
| device.Address != null y device.line != null | device.Address es única en la linea | Error: La dirección "{device.Address}" no es única. |
| device.Address != null y device.line != null | !device.Hardware.HasIndividualAddress | Error: El dispositivo "{device.DisplayName}" no debe tener dirección, pero tiene la dirección "{device.Address}". |
| device.Address != null y device.line != null | device.Address == 0 && !device.IsCoupler | Error: La dirección de dispositivo 0 está reservada para los acopladores |
| device.Address == null || device.Line == null | device.Hardware.HasIndividualAddress | Error: "{device.DisplayName}" no tiene dirección |
- Si las direcciones de áreas y líneas son válidas
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
| area.Address > 15 | Error: La dirección "{area.Address}" de "{area.Name}" está fuera de rango. | |
| ¿Tiene el proyecto un área con la misma dirección? | Error: La dirección "{area.Address}" no es única |
- Si los rangos de grupo son válidos
| Requisito previo | Comprobación | Entrada para el informe si la comprobación falla |
|---|---|---|
|
¿La dirección de grupo (dirección de rango de grupo) es válida?
|
Error: La dirección "{groupAddress.Address}" de "{groupAddress.DisplayName}" está fuera de rango. o La dirección "{groupRange.Address}" de "{groupRange.DisplayName}" está fuera de rango. |
|
| ¿Tiene el proyecto una groupAddress / groupRange con la misma dirección? |
Error: La dirección "{groupAddress.Address}" no es única. o La dirección "{groupRange.Address}" no es única. |
|
| Estilo de grupos de tres niveles: ¿La dirección de grupo tiene la dirección 0/0/0? | Error: La dirección de grupo 0/0/0 no es válida. |
- El número de repetidores antiguos
El resultado se muestra en la misma ventana. Se puede guardar, copiar en el portapapeles y también imprimirse.
Todas las comprobaciones pueden desactivarse de forma global y los pasos individuales de las comprobaciones pueden desactivarse en la pestaña correspondiente.