PreparaciónPara poder crear los objetos involucrados en la adquisición de datos que son los nodos, los grupos y los puntos, configuraremos una pasarela llamada simu-sample (para mas información ver Pasarelas).Lo haremos copiando el fichero c:\scada-middleware\doc\com.speedycontrol.gateway.simulator-sample.cfg en el directorio de instalación dinámica c:\scada-middleware\bin\install (estamos suponiendo que el servidor está instalado en c:\scada-middleware). Entonces nos deberá aparecer en el servidor la pasarela simu-sample. admin> gateway listName Status Explanation Description---------------- -------- -------------------- --------------------------------------------------default ERROR Invalid provider Provider used by invalid nodessimple CLOSED Transport closed Simple router targetsimu-sample ERROR This gateway is clos Modbus simulatoradmin>El estado ERROR desaparecerá en cuanto empecemos a acceder a la pasarela. De esta forma y gracias a una pasarela de tipo simulación, podremos continuar con el diseño de la adquisición sin tener la necesidad de desplegar un dispositivo de tipo pasarela, al cual tendría que estar conectado con los correspondientes elementos de campo para poder obtener datos. Parte significativa del fichero de configuración del simulador. ################################################################### Nombre de la pasarela que tiene que ser unico# entre el conjunto de pasarelas definidas.##################################################################NAME=simu-sample################################################################### Primer nodo modbus que podra se referenciado en esta pasarela##################################################################FIRSTNODE=1################################################################### Numero de nodos modbus que podran ser referenciados a partir# del nodo que se ha definido como primero.##################################################################NODES=10################################################################### Numero de milisegundos que transcurriran entre los refrescos de# de los valores calculados de los nodos modbus disponibles# en esta pasarela.##################################################################REFRESHPERIOD=800Podemos ver los datos que está generando esta pasarela en cualquiera de sus 10 dispositivos mediante el comando GATEWAY SHOW NAME=simu-sample. Device: 3 Bank: Input registersRef Value0000 00000001 017e0002 02fc0003 047a0004 05f80005 07760006 08f40007 0a72(^) Bloque anterior, (v) Bloque siguiente,(<) Tabla anterior, (>) Tabla siguiente,Discrete inputs, Coils, *Input registers, Holding registres(R) Indicar referencia, (D) Indicar dispositivo.(ESC) Finalizar, (SPACE) Refrescar, (+/-) AutoRefresco: 1000 milisegsCreación de los objetosEn el fichero c:\scada-middleware\doc\sample_commands.txt tenemos todos los comandos que utilizaremos para diseñar nuestra adquisición de datos (estamos suponiendo que el servidor está instalado en c:\scada-middleware).Iremos cogiendo partes de su contenido y ejecutando mediante la técnica de copiar los comandos en el portapapeles y pegarlos en la consola telnet para que se ejecuten. El contenido de este fichero es el siguiente. SCADA NODE ADD NODE=simu-sampleSCADA GROUP ADD PARENT=/ NAME=GROUP-ASCADA GROUP ADD PARENT=/GROUP-A NAME=SUBSCADA GROUP ADD PARENT=/ NAME=GROUP-BSCADA GROUP ADD PARENT=/ NAME=GROUP-CSCADA GROUP ADD PARENT=/ NAME=GROUP-DSCADA GROUP ADD PARENT=/ NAME=GROUP-ESCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-01-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-02-RO PLCTYPE=BINARY DEVICE=1 ADDRESS=0 BANK=INPUT_STATUSSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-03-RW PLCTYPE=BINARY DEVICE=1 ADDRESS=0 BANK=COIL_STATUSSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-04-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=1 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-05-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=2 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-06-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=3 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-07-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=4 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A/SUB NAME=POINT-08-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=5 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A/SUB NAME=POINT-09-RW PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=HOLDING_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-10-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=6 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-11-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=7 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-12-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=8 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-13-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=9 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-14-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=10 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-15-RW PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=HOLDING_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-16-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=11 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-17-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=12 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-18-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=13 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-19-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=14 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-20-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=16 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-21-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=17 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-22-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=18 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-23-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=19 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-E NAME=POINT-24-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=20 BANK=INPUT_REGISTERSCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-E NAME=POINT-25-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=21 BANK=INPUT_REGISTERNodosPara crear un nodo utilizamos el siguiente comando.admin> help scada node addSCADA NODE ADD NODE=name [SLEEP=msecs] [ENABLED=isEnabled]Inserta un nuevo nodo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * NODE String Nodo modbus que utilizara el punto para gestionar su valor SLEEP Integer Milisegundos de descando antes de planificar las lecturas de los puntos (Default:100) ENABLED Boolean Indica si el nodo estara activo (Default:true)Podremos crear un nodo, asignándole un nombre, un número de milisegundos que servirá para forzar una pausa entre las lecturas al nodo para no saturarlo y un indicador mediante el cual podremos parar el nodo. Si el nombre del nodo corresponde con el nombre de una pasarela, ésta será utilizada por el nodo para obtener los datos de los puntos que pertenezcan a este nodo. En caso de no existir ninguna pasarela con el mismo nombre el sistema utilizará la pasarela default, la cual como se indicó en Pasarelas, no proporcionará datos validos. Ahora podemos crear nuestro nodo. SCADA NODE ADD NODE=simu-sampley vemos el resultado. admin> scada node listId Node Sleep Enabled Alarm Gateway State------ -------------------- ----- ------- ----- -------------------- ------- 1 simu-sample 100 true false simu-sample OPENEDadmin>Además de los comandos para añadir un nodo y ver la lista de nodos, tenemos disponibles los siguientes comandos para gestionar los nodos. admin> help scada node pointsSCADA NODE POINTS [NODE=name] [FORMAT=P|S|A|*]Muestra los puntos agrupados por el nodo al que pertencen.[Req] [Parametro] [Tipo] [Description] NODE String Nombre de la pasarela de la cual se mostrara la informacion detallada de todos sus puntos. FORMAT String Formato de la salida: P: Processing S: Scanning A: Addressing *: Alladmin> help scada node removeSCADA NODE REMOVE NODE=nameBorra un nodo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * NODE String Nombre de la pasarela.admin> help scada node updateSCADA NODE UPDATE CURRENTNODE=currentnODE [NODE=name] [SLEEP=msecs][ENABLED=isEnabled]Inserta un nuevo nodo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * CURRENTNODE Node Node que se quiere modificar NODE String Node que utilizara el punto para gestionar su valor SLEEP Integer Milisegundos de descando antes de planificar las lecturas de los puntos ENABLED Boolean Indica si el nodo estara activo (Default:true)admin>GruposPara crear un grupo se utiliza el siguiente comando.admin> help scada group addSCADA GROUP ADD PARENT=path NAME=groupNameInserta un nuevo grupo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * PARENT String Ruta del grupo padre (Ejemplo: "", "/", "gri/gr2", "/gr1/gr2", "/gr1/gr2/" * NAME String Nombre de grupo.admin>La función de los grupos es la de poder organizar los puntos de datos estructurándolos en una jerarquía con la cual podamos representar un modelo que nos convenga. Utilizando una similitud, los grupos serían como los directorios de un disco y los puntos como los archivos que pueden estar ubicados en cualquier directorio. Ahora creamos nuestros grupos. admin> SCADA GROUP ADD PARENT=/ NAME=GROUP-Aadmin> SCADA GROUP ADD PARENT=/GROUP-A NAME=SUBadmin> SCADA GROUP ADD PARENT=/ NAME=GROUP-Badmin> SCADA GROUP ADD PARENT=/ NAME=GROUP-Cadmin> SCADA GROUP ADD PARENT=/ NAME=GROUP-Dadmin> SCADA GROUP ADD PARENT=/ NAME=GROUP-Eadmin>y vemos el resultado. admin> scada group list//GROUP-A/GROUP-A/SUB/GROUP-B/GROUP-C/GROUP-D/GROUP-Eadmin>Además de los comandos para añadir un grupo y para listarlos, tenemos disponibles los siguientes comandos para gestionar los grupos. admin> help scada group change parentSCADA GROUP CHANGE PARENT GROUP=groupPath PARENT=parentGroupPathSitua el grupo jerarquicamente bajo otro grupo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * GROUP String Nombre del grupo a mover. * PARENT String Nombre del grupo destino.admin> help scada group pointsSCADA GROUP POINTS [GROUP=group] [FORMAT=P|S|A|*]Muestra los puntos gestionados por todos los grupos o por uno en concreto sise especifica.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] GROUP String Grupo del cual se mostrara la informacion detallada de todos sus puntos. FORMAT String Formato de la salida: P: Processing S: Scanning A: Addressing *: Alladmin> help scada group removeSCADA GROUP REMOVE GROUP=groupNameBorra un grupo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * GROUP String Nombre del grupoadmin> help scada group updateSCADA GROUP UPDATE CURRENTGROUP=pathGroup [NAME=groupName]Modifica un grupo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * CURRENTGROUP String Ruta del grupo que se modifica NAME String Nombre que se le asignada al grupo.admin>PuntosPara crear un punto utilizaremos este comando.admin> help scada point addSCADA POINT ADD NODE=node GROUP=group NAME=name PLCTYPE=type[POINTTYPE=type] [SCALE=scale] [INITIALVALUE=initialVal][BITNUMBER=bitNumber] [LOGGINGMODE=lmode] [READSYNC=rsync][PERIODUNIT=perunit] READPERIOD=time [LOGATPERIOD=times] DEVICE=deviceADDRESS=address BANK=bank [ENABLED=isEnabled]Inserta un nuevo punto.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * NODE String Nodo que utilizara el punto para gestionar su valor * GROUP String Nombre del grupo donde se ubicara el punto * NAME String Nombre del punto. * PLCTYPE String Formato del dato en sus registros 'BINARY', 'TWO_BYTE_INT_UNSIGNED', 'TWO_BYTE_INT_SIGNED', 'FOUR_BYTE_INT_UNSIGNED', 'FOUR_BYTE_INT_SIGNED', 'FOUR_BYTE_INT_UNSIGNED_SWAPPED', 'FOUR_BYTE_INT_SIGNED_SWAPPED', 'FOUR_BYTE_FLOAT', 'FOUR_BYTE_FLOAT_SWAPPED', 'EIGHT_BYTE_INT_UNSIGNED', 'EIGHT_BYTE_INT_SIGNED', 'EIGHT_BYTE_INT_UNSIGNED_SWAPPED', 'EIGHT_BYTE_INT_SIGNED_SWAPPED', 'EIGHT_BYTE_FLOAT', 'EIGHT_BYTE_FLOAT_SWAPPED' POINTTYPE String Tipo de dato del punto 'BOOLEAN', 'BYTE', 'SHORT', 'INT', 'LONG', 'FLOAT', 'DOUBLE' SCALE Double Constante por el que sera multiplicado el valor (default 1.0) INITIALVALUE Double Constante que se le sumara al valor (default: 0.0, Se aplicara despues de aplicar la escala) BITNUMBER Int En caso de un almacenamiento en registro y un tipo boolean indicara que bit se considerara (Default:0). LOGGINGMODE String Estrategia para la adquisicon de datos 'DO_NOT_LOG', 'WHEN_VALUE_CHANGE', 'ALL_DATA' (default:DO_NOT_LOG) READSYNC String Estrategia para la sincronizacion de la lectura 'DO_NOT_SYNC', 'DO_SYNC' (default:DO_SYNC, sincroniza con el principio de cada dia) PERIODUNIT String Unidad del periodo de lectura del punto 'MILLISECONDS', 'SECONDS', 'MINUTES', 'HOURS', 'DAYS' (default:MINUTES) READPERIOD Long Periodo de lectura (default:15) LOGATPERIOD Int Cada cuantas lecturas toma una muestra el sistema de logging (1) * DEVICE Int Dispositivo modbus * ADDRESS Int Direccion modbus * BANK String Banco de memoria Modbus 'COIL_STATUS', 'INPUT_STATUS', 'HOLDING_REGISTER', 'INPUT_REGISTER' ENABLED Boolean Indica si el punto estara activo (Default:true)admin>A un punto, se le proporciona toda la información de cómo obtener, transformar y almacenar un valor que nos interese desde nuestra infraestructura (mas información en Infraestructura y en Preparación de los datos). Cada punto pertenece a un nodo, siendo este nodo el encargado de tener en cuenta toda la configuración de un punto y obtener su valor a través de la pasarela asociada al nodo. Cada punto está incluido en un grupo y de esta forma el nombre de un punto está compuesto por su propio nombre precedido por todos los grupos que hay entre él y el grupo raíz (las partes del nombre están separadas por el caracter / ). Ahora creamos nuestros puntos. admin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-01-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-02-RO PLCTYPE=BINARY DEVICE=1 ADDRESS=0 BANK=INPUT_STATUSadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/ NAME=POINT-03-RW PLCTYPE=BINARY DEVICE=1 ADDRESS=0 BANK=COIL_STATUSadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-04-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=1 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-05-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=2 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-06-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=3 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-07-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=4 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A/SUB NAME=POINT-08-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=5 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A/SUB NAME=POINT-09-RW PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=HOLDING_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-A NAME=POINT-10-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=6 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-11-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=7 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-12-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=8 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-13-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=9 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-14-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=10 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-15-RW PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=0 BANK=HOLDING_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-B NAME=POINT-16-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=11 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-17-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=12 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-18-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=13 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-19-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=14 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-C NAME=POINT-20-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=16 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-21-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=17 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-22-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=18 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-D NAME=POINT-23-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=19 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-E NAME=POINT-24-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=20 BANK=INPUT_REGISTERadmin> SCADA POINT ADD NODE=simu-sample READPERIOD=1 GROUP=/GROUP-E NAME=POINT-25-RO PLCTYPE=TWO_BYTE_INT_UNSIGNED DEVICE=1 ADDRESS=21 BANK=INPUT_REGISTERadmin>y veamos el resultado. admin> scada point listDe nuevo tenemos múltiples comandos disponibles para gestionar los puntos. admin> help scada point change ownerSCADA POINT CHANGE OWNER POINT=name OWNER=gatewayNameCambia el nodo propietario del punto.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * POINT String Nombre del punto. * OWNER String Nombre del gateway.admin> help scada point change parentSCADA POINT CHANGE PARENT POINT=name PARENT=groupPathSitua el punto en otro grupo.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * POINT String Nombre del punto. * PARENT String Nombre del grupo destino.admin> help scada point removeSCADA POINT REMOVE POINT=pointNameBorra un punto.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * POINT String Nombre del punto.admin>admin> help scada point showSCADA POINT SHOW POINT=pointNameMuestra las caracteristicas de un punto.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * POINT String Nombre del punto.admin> help scada point updateSCADA POINT UPDATE CURRENTPOINT=name [NAME=name] [PLCTYPE=type][POINTTYPE=pointtype] [INITIALVALUE=initialVal] [BITNUMBER=bitNumber][LOGGINGMODE=lmode] [READSYNC=rsync] [PERIODUNIT=perunit] [READPERIOD=time][LOGATPERIOD=times] [DEVICE=device] [ADDRESS=address] [BANK=bank][ENABLED=isEnabled]Inserta un nuevo punto.Los parametros para este comando son:[Req] [Parametro] [Tipo] [Description] * CURRENTPOINT String Nombre del punto que se quiere modificar. NAME String Nuevo nombre del punto. PLCTYPE String Nuevo formato del dato en sus registros 'BINARY', 'TWO_BYTE_INT_UNSIGNED', 'TWO_BYTE_INT_SIGNED', 'FOUR_BYTE_INT_UNSIGNED', 'FOUR_BYTE_INT_SIGNED', 'FOUR_BYTE_INT_UNSIGNED_SWAPPED', 'FOUR_BYTE_INT_SIGNED_SWAPPED', 'FOUR_BYTE_FLOAT', 'FOUR_BYTE_FLOAT_SWAPPED', 'EIGHT_BYTE_INT_UNSIGNED', 'EIGHT_BYTE_INT_SIGNED', 'EIGHT_BYTE_INT_UNSIGNED_SWAPPED', 'EIGHT_BYTE_INT_SIGNED_SWAPPED', 'EIGHT_BYTE_FLOAT', 'EIGHT_BYTE_FLOAT_SWAPPED' POINTTYPE String Tipo de dato del punto ('auto' para obtener el tipo correspondiente a su PLCTYPE) 'BOOLEAN', 'BYTE', 'SHORT', 'INT', 'LONG', 'FLOAT', 'DOUBLE' SCALE Double Constante por el que sera multiplicado el valor INITIALVALUE Double Constante que se le sumara al valor (despues de aplicar la escala) BITNUMBER Int En caso de un almacenamiento en registro y un tipo boolean indicara que bit se considerara. LOGGINGMODE String Nueva estrategia para la adquisicon de datos 'DO_NOT_LOG', 'WHEN_VALUE_CHANGE', 'ALL_DATA' READSYNC String Nueva estrategia para la sincronizacion en la lectura 'DO_NOT_SYNC', 'DO_SYNC' PERIODUNIT String Unidad del periodo de lectura del punto 'MILLISECONDS', 'SECONDS', 'MINUTES', 'HOURS', 'DAYS' (default:SECONDS, sincroniza con el principio de cada dia) READPERIOD Long Periodo de lectura LOGATPERIOD Int Cada cuantas lecturas toma una muestra el sistema de logging DEVICE Int Nuevo dispositivo modbus ADDRESS Int Nueva direccion modbus BANK String Nuevo banco de memoria Modbus 'COIL_STATUS', 'INPUT_STATUS', 'HOLDING_REGISTER', 'INPUT_REGISTER' ENABLED Boolean Indica si el punto estara activoadmin> |