Saltar a contenido

DatapointSets declaration

En este apartado se establece la configuración para cada conjunto de datapoints.

Se recomienda agrupar los datapoints por tipo de driver, identificando la agrupación con un comentario, y añadir comentarios antes de cada datapoint con una descripción o indicación de su función de forma que sea fácil identificarlo.

Los parámetros que definen un datapointSet (conjutno datapoints) están contenidos dentro de un array.

Un template puede contener varios datapointSet.

netin-spider-templates-datapintSets-declaration-01.png


Parámetros

DatapointSets

  • datapointSets: array que indica la declaración del conjunto de datapoints.

1. Nombre: al inicio de cada datapointSet se indica su nombre en un comentario.

2. datapointSetType: Tipo de datapointset. Puede ser:

  • map: mapas clave-valor utilizados para representar estructuras de datos por pares (cada clave tiene un solo valor).
  • tableStatic: tablas estáticas en las que no varían el número de filas e índices.
  • tableDynamic: tablas dinámicas que se adaptan cambiando su tamaño o los índices cuando es necesario.

3. datapointSetId: edentificación del datapointSet.

4. alias: nombre identificativo del datapointSet.

5. description: descripción detallada del datapointSet.

En el caso de que el tipo del datapointset sea tabla se le añaden los siguientes parámetros de configuración:

6. tableAddress:

  • rootAddress: dirección principal de la tabla.
  • indexes: enumeración de los índices de la tabla. Se escriben en diferentes líneas precedidos de un guion medio ( - ).


Ejemplos

Mapa

netin-spider-templates-datapintSets-declaration-map-01.png


Tabla

netin-spider-templates-datapintSets-declaration-table-01.png


datapoints

A continuación se muestran las diferentes opciones que hay a la hora de configurar un datapoint.

Estas configuraciones se agrupan dentro un array, y se pueden usar diferentes configuraciones dentro de un mismo datapoint. - datapoints: array que contiene el conjunto de datapoints que forman parte de un datapointSet


netin-spider-templates-datapintSets-declaration-datapoints-01.png


commonConfig

Permite establecer los parámetros clave para la identificación del datapoint. Es obligatorio configurarlo para todos los datapoints.

  • commonConfig:
  • datapointId: identificación del datapoint.
  • alias: nombre identificativo del datapoint.
  • description: descripción detallada del datapoint.
  • syntaxInfo: describe el tipo de datos de la variable, puede ser:
    • BYTE
    • INTEGER
    • LONG
    • FLOAT
    • STRING
    • BOOLEAN
    • DATE
  • datapointType: tipo de datapoint definido. Puede ser:
    • SIMPLE: se sobrescribe cada vez que se actualiza.
    • TIMEPOINT: se guarda en la base de datos cada vez que se actualiza para tener un "histórico".

Ejemplo

  # deviceState
  - commonConfig:
      datapointId: deviceState
      alias: State
      description: Overall device status, including connection status.
      syntaxInfo: boolean
      datapointType: SIMPLE


addressConfig

Permite configurar la información necesaria para acceder a los valores.

  • addressConfig:

    • dataType: tipo de dato que el origin (por ejemplo, driver) va a enviar a Netin:
      • BYTE
      • INTEGER
      • LONG
      • FLOAT
      • STRING
      • BOOLEAN
      • DATE
    • originType: identificación del tipo de fuente del dato (origen), es decir, a través de qué driver, importer o sistema dentro de Netin se ha leído el valor. Se expresa con el patrón "sistema-subsistema-tipo de origen-nombre".

    netin-spider-originType-patron-01.png

    • originDataType: tipo de dato que el driver va a leer del equipo. Depende de cada driver (se recomienda consultar la documentación del driver para saber los tipos de datos que acepta).
    • originAddress: define la dirección de este datapoint para el originType.
      • SNMP: se utilizan las direcciones de los OIDs contenidos en los MIBs de cada dispositivo.
      • PNIO: se utilizan las direcciones definidas en el estándar Profinet.
      • MODBUS:: se utilizan los registros Modbus. Se define de la siguiente forma: YYY:XXXXX:ZZ
      • YYY: tipo de registro que se va a leer:
        • RHR: Read Holding Register
        • RIR: Read Input Register
      • XXXXX: registro desde donde se quiere empezar a leer.
      • ZZ: número máximo de registros que se quieren leer.
    • originAccessType: nivel de acceso al datapoint. Puede ser:
      • read-only (solo lectura).
      • write-only (solo escritura).
      • read-write (lectura y escritura).
      • not-accessible (no accesible).
    • receiveMode: modo de recepción. Puede ser:
      • polling (sondeo cada cierto tiempo).
      • singleQuery (respuesta a una pregunta).
      • subscription (suscripción de aviso en el momento que se produzcan cambios).
    • pollingGroup: si el modo es "polling" en esta propiedad se indica el periodo de sondado del dato. Puede ser:
      • 5s
      • 10s
      • 1m
      • 5m
      • 10m
      • 15m
      • 30m
      • 1h
      • 4h
      • 6h
      • 12h
      • 1d

Ejemplo

  - addressConfig:
      dataType: STRING
      originType: netin-ds-drv-snmp
      originDataType: OCTET_STRING
      originAddress: 1.3.6.1.2.1.1.5.0
      originAccessType: read-write
      receiveMode: polling
      pollingGroup: 1d


alertConfig

Contiene la configuración de disparadores, basados en condiciones lógicas, que permiten emitir eventos de alarmas.

Sobre un mismo datapoint pueden configurarse varias alertas que expresen diferentes niveles de severidad, o el mismo nivel con diferentes textos o configuraciones.

  • alertConfig:
    • evaluations: inicia el conjunto de alarmas definidas para el datapoint. Cada evaluations tiene una o más expressions.
      • expressions: contiene tantas expression como condiciones deban cumplirse para disparar la alarma.
        • expression: cada condición cuya evaluación lógica (true o false) indicará si debe dispararse la alerta. Puede haber una o varias.
          • symbol: alias identificativo asignado a cada expression.
        • logic: relaciona (utilizando symbol) las expression configuradas para construir la lógica necesaria para lanzar la alerta.
        • severity: severidad de la alarma (ver tabla de rangos de severidad).
        • text: texto descriptivo que nos proporciona información sobre la alarma.
        • textHelp: texto de ayuda para entender y solucionar la alarma.
        • onStartup: valor que indica que la alerta debe dispararse en caso de se cumplan (true) las condiciones en el arranque del agente. Su valor por defecto es false.
        • ackable: valor que indica la necesidad de reconocimiento de la alarma por parte del usuario (true) o no (false, valor por defecto).
        • audited: valor que indica si la alarma debe ser auditada (true) o no (false, valor por defecto).
        • facility: valor que indica la procedencia o grupo de recursos al que pertenece la alarma, los valores que puede tomar están en la documentación de Netin (ver tabla de grupos de recursos).
        • hidden: valor que indica si la alarma se mostrará (false, valor por defecto) o no (true) en la interfaz (WebUI).
        • broadcast: valor que indica si la alarma debe ser transmitida a otro sistema (true), por ejemplo, NetinHUB, o no (false, valor por defecto).
        • poppable: valor que indica si la alarma debe mostrarse en ventana emergente en la interfaz (WebUI) dada su importancia (true) o no (false, valor por defecto).

Rangos de severidad

Rango Nivel Netin Automation Level Representación Significado
-1 NO SEVERITY OK NO COLOR No tiene configuración de alarma.
0 OK OK GREEN - STEADY Representa estado correcto.
1 - 200 LOG INFORMATIONAL GREY - STEADY Evento meramente informativo, no es necesario ninguna acción.
201 - 400 INFORMATION LowLow - WARNING BLUE - STEADY Información de un estado o configuración incorrecta que no afecta a la operación o funcionamiento del sistema, pero debería ser subsanado.
401 - 600 WARNING Low - MINOR YELLOW - STEADY Notificación de un estado problemático. El sistema puede trabajar de una forma degradada o está cerca del fallo.
601 - 800 ERROR High - MAJOR RED - STEADY Notificación de error o fallo. El sistema falla o no está trabajando con todas sus funciones.
801 - 1000 ERROR HighHigh - CRITICAL RED - FLASH Notificación de fallo crítico. El sistema se encuentra en un estado en el que puede sufrir daños o afectar de forma grave el servicio.

Grupos de recursos

Facility Descripción
0 Automation Control System.
Todos los elementos directamente relacionados con el control del sistema de automatización, por ejemplo, autómatas programables, robots...
1 Fieldbus Devices.
Todos los elementos relacionados con el bus de campo, por ejemplo, switches en redes PROFINET o Ethernet/IP, Drives, I/O Devices...
2 Modular I/O.
Dispositivos modulares de entradas/salidas (módulos).
3 HMI Systems.
Dispositivos de operación y visualización, por ejemplo, pantallas táctiles.
4 Production Control System.
Todos los elementos relacionados con el control de la producción, por ejemplo, sistemas RFID o escáneres.
5 Industrial Network Devices.
Redes de comunicaciones MES/ERP relacionadas con los sistemas de automatización.
6 SCADA/MES Systems.
Sistemas SCADA o sistemas MES.
7 Auxiliary Elements.
Elementos auxiliares, por ejemplo, pistolas de códigos de barras o monitores de producción.
8-32 Reserved.
Reservado para usos futuros.
> 32 User defined
Niveles aplicables por el usuario.

Ejemplo

  - alertConfig:
    evaluations:
    - expressions:
      - expression: datapoint.rawValue == "FAULT"
        symbol: evalID1
      - expression: datapoint.rawValue == "Not reachable"
        symbol: evalID2  
      logic: evalTD1 || evalTD2
      severity: 600
      text: SCALANCE ${device[deviceInfo.deviceID].value} - ${device[deviceInfo.deviceAddress].rawValue} is disturbed
      textHelp: Please check the SCALANCE state or configuration
      onStartup: true
      ackable: false
      audited: false
      facility: 1
      hidden: false
      broadcast: false
      poppable: false


calcConfig

Contiene la configuración para la creación de un nuevo datapoint (calculated datapoint) basado en operaciones lógicas, aritméticas, relacionales o de cadenas de caracteres con uno o varios datapoints. Por lo tanto, carecen de addressConfig.

Los datapoint que intervienen en la operación se llaman operand datapoint y deben tomar siempre el rawValue para evitar conflictos.

  • calcConfig:
    • expression: contiene la operación entre los distintos operand datapoints.

Ejemplo

  - calcConfig:
      expression: 'device[ICMP.echoRequest].rawValue ? "OK" : "Fault"'


convConfig

Contiene la configuración de un proceso de conversión de los valores brutos (rawValue) de un datapoint mediante expresiones lógicas, aritméticas, relacionales o de cadenas de caracteres.

  • convConfig:
    • expression: contiene la operación para realizar la conversión.

Ejemplo

  - convConfig:
      expresion: '${(datapoint.rawValue * 1e3 * 8) > 0.1 ? ((datapoint.rawValue * 1e3 * 8).toFixed(2) + " Mbits/s") : ((datapoint.rawValue * 1e6 * 8).toFixed(2) + " Kbits/s")}'


defaultValueConfig

Contiene la configuración para inicializar los valores de un datapoint con una constante, tanto value como rawValue.

  • defaultValueConfig:
    • rawValue: valor con el que se quiere iniciar el rawValue de este datapoint. Se pueden usar variables de sustitución.
    • Value: valor con el que se quiere iniciar el value de este datapoint. Se pueden usar variables de sustitución.
    • isDefault:
      • true: deja el valor definido como inicial.
      • false: aunque se haya definido un valor como inicial no lo aplica.

Ejemplo

  - defaultValueConfig:
      rawValue: "/{DCP_IPAddress}/"
      Value: "/{DCP_IPAddress}/"
      isDefault: false


unitsConfig

Contiene la configuración para realizar una conversión de unidades de medida de ingeniería, desde rawValue a value.

  • unitsConfig:
    • from: unidad de la que se parte.
    • to: unidad a la que se quiere llegar.
    • toBest: realiza el mejor cambio de unidades (true) o no (false).
    • exclude: unidad que se quiere excluir.

Ejemplo

  - unitsConfig:
      from: B
      to: TB
      toBest: true
      exclude: ''


valueMapConfig

Contiene la configuración para realizar una conversión mediante un mapa de sustitución desde rawValue a value. Toma el valor de origen (key) y lo sustituye en la representación (pantalla Dispositivo) por los valores especificados en cada value.

  • valueMapCofig:
    • map: entre corchetes [ ] se indica el conjunto de valores de origen y a sustituir que forman el mapa.
    • key: valor de origen que se quiere sustituir.
    • value: nuevo valor por el que se va a sustituir el dato original. Si es texto se pone entre comillas " ". Puede contener uno o varios conjuntos de valores.

Ejemplo

  - valueMapConfig:
      map: B
      - key: 1
        value: 'High speed redundancy'
      - key: 2
        value: 'No redundancy'
      - key: 3
        value: 'Media redundancy protocol'
      - key: 4
        value: 'Automatic redundancy detection'




Info

Pasos siguientes:
Configuración de la especificación de la sección Representations.