Proton CMB Manual
Proton CMB Manual
Proton CMB Manual
Manual de usuario
Garantia : Todos los productos por IZI Technology se
encuentran bajo garantía contra materiales defectuosos por
un periodo de un año a partir de la fecha de envío hacia el
comprador original.
4. Funcionamiento y configuración 22
4.1. Base de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.2. Configuración del modulo . . . . . . . . . . . . . . . . . . . . . . . 25
4.2.1. Definición de nombre y descripción del modulo . . . . . . . . 25
4.2.2. Configuración de seguridad del modulo . . . . . . . . . . . . 25
4.2.3. Condiguración de las interfaces LAN y WLAN . . . . . . . . 27
4.2.4. DHCP Settings . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2.5. Wireless Settings . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2.6. MAC Address Whitelist . . . . . . . . . . . . . . . . . . . . 30
4.3. Configuración de I/O . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.4. Configuración de los protocolos IZI-NET . . . . . . . . . . . . . . . 31
4.5. Configuración de los protocolos de red . . . . . . . . . . . . . . . . . 33
4.5.1. Protocolo ModBus TCP Cliente . . . . . . . . . . . . . . . . 34
4.5.2. Protocolo ModBus TCP Server . . . . . . . . . . . . . . . . 37
4.5.3. Protocolo Ethernet IP/TAG . . . . . . . . . . . . . . . . . . . 38
4.5.4. Protocolo NTP . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.6. Configuración de Protocolos Seriales . . . . . . . . . . . . . . . . . . 41
4.6.1. Configuración de protocolo Modbus RTU Maestro . . . . . . 41
4.6.2. Configuración de Protocolo Modbus RTU Esclavo . . . . . . 44
4.7. Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.7.1. Adición y remoción de Charts . . . . . . . . . . . . . . . . . 45
4.7.2. Configuración general . . . . . . . . . . . . . . . . . . . . . 46
4.7.3. Adición y configuración de variables . . . . . . . . . . . . . 48
4.7.4. Visualización . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.7.5. Consultas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.7.6. Precauciones . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6. IZINET 57
6.1. IZINET 2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.1.1. Parametros de red (Network Settings) . . . . . . . . . . . . . 57
6.2. IZINET 900 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.2.1. Parámetros de red (Network Settings) . . . . . . . . . . . . . 58
6.3. Configuración de transferencias IZINET 2.4 e IZINET 900 . . . . . . 59
6.3.1. Tipos de transferencias (Enable) . . . . . . . . . . . . . . . . 60
6.3.2. Intervalo de ejecución (Poll Interval) . . . . . . . . . . . . . . 60
6.3.3. Dirección de Nodo (Node Address) . . . . . . . . . . . . . . 60
6.3.4. Dirección inicial de la base de datos fuente (Source DB Address 61
6.3.5. Cantidad de Bytes transmitidos (Byte Count) . . . . . . . . . 61
6.3.6. Dirección inicial de la base de datos destino (Destination DB
Address) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
8. HMI 64
Proton cuenta con un conjunto de puertos que le permiten comunicarse con con una
amplia variedad de sistemas. En particular tiene un puerto serial, aislado ópticamente
y un puerto Ethernet con aislamiento magnético. Está provisto de cuatro de entradas
digitales, dos salidas digitales tipo relé, una salida analógica en el rango de 4-20mA y
seis entradas de corriente en el formato de 4-20mA. Mediante la página WEB embebi-
da en el dispositivo, el usuario puede ejecutar los procedimientos de configuración para
la lectura y escritura de datos de cualquiera de los protocolos soportados. La capacidad
de ejecución de scripts en LUA, permite entre otras cosas la conversión del formato
de los datos que se encuentran almacenados en la base de datos así como también la
realización de acciones basadas en eventos de comunicación o condiciones específicas
de los valores presentes en los datos.
1. RS-485 Condición de error: Se enciende bajo una condición de error en las co-
municaciones sobre el puerto RS-485.
2. RS-485 Condición de trafico: Se ilumina y apaga cuando hay transferencia de
datos sobre el puerto RS-485.
Del sitio web de IZI, se debe descargar la aplicación PROTON Browser e instalarla
en el computador.
http://www.izitechnology.com/support/Proton/
La utilización del programa SPX5 Browser, que se presenta en la figura 12, es real-
mente simple. En primer lugar con este programa se puede actualizar la versión de
firmware del sistema o identificar los Productos de IZI que estén conectados a la inter-
faz de red. La dirección IP del puerto de red del computador se presenta en el numeral
2 de la figura y permite identificar el segmento de red donde deberá especificarse la
dirección IP del Proton. En el numeral 3 se presenta la dirección MAC de la interfaz de
red por donde se ha establecido la comunicación.
Puede ser la dirección MAC del puerto Ethernet o del puerto WiFi de acuerdo con la
interfaz por donde se haya realizado la comunicación. En el numero 4 está la dirección
IP que se le ha asignado al Proton y que en el caso general no hace parte del segmen-
to de red donde se ha conectado el dispositivo. En el numeral 5 se puede observar la
versión de firmware instalada en el equipo. Al realizar clic derecho sobre el icono del
Proton y seleccionar “Set Temporary IP” se abre la ventana que esta designada por 6.
En esta se puede especificar una dirección IP que deberá estar en el mismo segmento
de red a la que pertenece el computador que se utiliza para configurar el producto. Una
vez que este paso se ha completado, en la posición que esta apuntada por el numeral 7
aparecerá la dirección IP que antes ha sido especificada.
Después de haber cambiado la dirección IP del Proton de forma tal que haga parte
del segmento de red del computador donde se realiza la configuración, al realizar do-
ble clic sobre el icono del Proton se abrirá una nueva ventana en el navegador de su
computador (Se recomienda utilizar la última versión de Google Chrome) y se podrá
visualizar la página de la Figura 16. A partir de este momento ya es posible configurar
el Proton.
Al utilizar SPX5 Browser también es posible actualizar el firmware del SPX5. Las
actualizaciones de firmware se distribuyen como archivos de extensión *.prtn que se
pueden descargar desde el sitio Web de IZI Technology y se deberán descargar a la
unidad utilizando el puerto Ethernet. El proceso de actualización del firmware se lleva
a cabo desde la página web de la unidad. Al presionar el botón Firmware Download,
se inicia el proceso que requiere seleccionar el dispositivo que se pretende actualizar,
definir la ruta donde se encuentra el archivo de extensión *.dld y realizar un par de con-
firmaciones que se muestran en la Figura 13 con los numerales (8) y (9). La secuencia
de figuras 13, 14, 15, indican los pasos desde la página de inicio hasta la descarga de
un archivo .prtn
4. Funcionamiento y configuración
Proton es un sistema de comunicaciones industriales que permite la recepción y
transmisión de valores que están almacenados en una estructura de memoria denomi-
nada base de datos. La información de la comunicación se origina o almacena en la
base de datos que se visualiza como una matriz de 16 x 19990 o 10 x 19990 campos
de acuerdo con el tipo de formato de datos que haya sido seleccionado (Solo en el caso
BIN se muestra la matriz de dimensión 16 x 19990).
Mediante los protocolos soportados, es posible leer y/o escribir valores en la base
de datos del Proton desde o hacia los dispositivos industriales con los que se requiere
establecer la comunicación.
Los Scripts se ejecutan en tres estados de operación distintos. Los scripts Startup y
Fault se ejecutan durante el inicio de la compuerta y en caso de ocurrencia de falla en
las comunicaciones del sistema. Durante la operación normal es el script Continuous
el que se ejecuta normalmente.
En el caso de los scripts, que se presentan en el capítulo 5 de este manual, las di-
recciones de las funciones de lectura y escritura se ingresan mediante direcciones de 8
bits, lo que implica que para acceder a una dirección particular de la base de datos del
PROTON el valor escrito, en el campo de las funciones de los scripts correspondientes
a direcciones, deberá multiplicarse por dos.
En el campo Passphrase debe incluirse una palabra clave, de al menos nueve carac-
teres alfanuméricos para establecer la contraseña.
Para el caso de la salida analógica, el valor que deberá ser escrito en la respectiva
posición de memoria deberá ser la cantidad en mA multiplicada por cien; es decir, si se
pretende generar una señal de 12mA, en el correspondiente campo de la base de datos
deberá escribirse el valor 1200.
IZI Net cuenta con tres herramientas que permiten: Reiniciar el enlace a su configu-
ración de fábrica, Retirar el conjunto de comandos que antes fueron escritos e IZINet
Mangaer que permite observar el estado de los equipos IZI que se encuentran en la
vecindad de los enlaces de radio.
En el campo (4.) Enable, cada comando podrá ser deshabilitado, habilitado de for-
ma continua o que se podrá ejecutar cuando exista cambio en el dato que está siendo
direccionado cuando este se va a escribir únicamente.
En el campo (7.) Modbus Function, se puede seleccionar entre las ocho funciones
disponibles.
Las opciones disponibles en el campo (11.) Data Swap, permiten que los datos mo-
dificados con el comando en cuestión puedan tener la manipulación de byte, palabra y
palabra-byte según sea el caso. En la Tabla 3 se presenta un ejemplo de la utilización
de la característica Data Swap.
El protocolo Modbus TCP Server por defecto está configurado en el puerto 502. Es
posible seleccionar el número máximo de conexiones en “Concurrent Connections” y
el valor de “Connection Timeout” en su ventana de configuración.
El campo Register Count se utiliza para trabajar con Tags del PLC que son arre-
glos. Para todos los datos que no son booleanos se direcciona de la siguiente manera.
Si el Tag se especifica sin paréntesis cuadrados “Tag” el valor especificado en Register
Count permitirá la lectura o escritura de esa cantidad de elementos del arreglo. Si por
el contrario, se especifica un Tag con paréntesis cuadrados y un índice en su interior,
“Tag[Index]”, se realizará el proceso de lectura o escritura en los elementos del arreglo
que estén apuntados por la cantidad “Index + Register Count” Por ejemplo, si se cons-
truye en el PLC un arreglo llamado EXA conformado por 100 elementos del tipo real y
se quiere leer el contenido de los últimos 20 elementos desde PROTON y almacenarlo
en la posición 1000 de la base de datos de PROTON, repitiendo este proceso al menos
cada 100ms es posible realizarlo como se muestra en la figura 35.
@UINT8(Direccion en Byte)
Por ejemplo, en el caso de colocar en el campo Device Node Address como @INT16(100),
el proton procederá a tomar el valor (en formato entero de 16 bits) de la palabra 100
de la base de datos y usará este valor como dirección del nodo Modbus. Si el valor es
invalido, por ejemplo -1, el comando se deshabilita automáticamente. De esta forma
es posible hacer que al modificar la palabra 100 de la base de datos se interrogue a un
equipo con una dirección de esclavo Modbus diferente a la que esta configurada.
La imagen anterior muestra los pasos para agregar un nuevo chart o remover uno
existente.
Dado que el acumulamiento de lecturas se hace del lado del navegador del usua-
rio, una vez el usuario cierra la página web asociada a un chart en particular, todas las
muestras acumuladas son borradas. Al abrir nuevamente la página web del chart en
cuestión, el conjunto máximo de datos visualizados estará dado por el tamaño del buf-
fer de visualización alojado en la unida, y de la cantidad de muestras almacenadas en
este, hasta ese momento. Esto aplica igualmente para cuando la página asociada a un
chart se abre por primera vez. Una vez la unidad es energizada, o el programa principal
es reiniciado, el buffer de visualización antes mencionado, estará vacío. El tamaño de
dicho buffer es de 365 lecturas por variable.
_Data Collection Rate SetUp Establece el intervalo de tiempo de lectura de las va-
riables (registros) asociadas a un chart. Este intervalo puede ser especificado en término
de días, horas, minutos y segundos. Este parámetro especifica el tiempo mínimo entre
lecturas almacenadas, para su posterior consulta.
Por ultimo cabe aclarar que es conveniente que el intervalo de visualización sea
mayor al intervalo de lectura.
Data Format Formato del valor: UINT8, UINT16, INT16, UINT32, INT32, FLOAT32
y BIT
4.7.5. Consultas
Overview
4.7.6. Precauciones
Real Time Clock Con el ánimo de mantener la coherencia cronológica de los datos
almacenados es de vital importancia mantener el reloj de tiempo real de sistema actua-
lizado. Un perdida de sincronismo cronológico puede conllevar a la perdida de datos y
a una visualización errada de los mismos.
Startup
1 TiempoInicial = os.time()
Continuous
1 i f os.difftime(os.time(),TiempoIncial)>1 then
2
3 TiempoInicial = os.time()
4 -- Escriba su codigo aca --
5
6 end
En el Startup se define una variable “Tiempo Inicial” que almacena una cantidad
que propociona la function os.time()
Startup
1 Entrada = 0
Continuous
1 Entrada=mainDatabase:getUINT16(2*10,0)
2 mainDatabase:setUINT16(2*100,Entrada)
Startup
1 Entrada = 0
2 Salida = 0
3 TiempoInicial = os.time()
1 i f os.difftime(os.time(),TiempoIncial)>1 then
2
3 TiempoInicial = os.time()
4 Entrada =mainDatabase:getUINT16(2*100,0)
5 Salida= math.sqrt (Entrada)
6 mainDatabase:setFLOAT(2*105,Salida,0)
7
8 end
mainDatabase:setUINT8(indice,valor)
mainDatabase:setUINT16(indice,valor)
mainDatabase:setINT16(indice,valor)
mainDatabase:setINT32(indice,valor,swapCode)
mainDatabase:setUINT32(indice,valor,swapCode)
mainDatabase:setFLOAT(indice,valor,swapCode)
mainDatabase:setBit(indice,valor,swapCode)
mainDatabase:getUINT8(indice)
mainDatabase:getUINT16(indice,swapCode)
mainDatabase:getINT16(indice,swapCode)
mainDatabase:getINT32(indice,swapCode)
mainDatabase:getUINT32(indice,swapCode)
mainDatabase:getFLOAT(indice,swapCode)
mainDatabase:getBit(indice)
Una vez definida la superficie de trabajo del HMI es posible adicionar cualquiera de
los componentes disponibles. La posición relativa de cualquier componente se puede
cambiar al especificar las coordenadas X Y o mediante las flechas del cursor. Si se adi-
ciona una imagen por ejemplo, debe seleccionarse el recuadro verde de nombre Imagen
y deben arrastrarse a la superficie de trabajo. Aparecerá por defecto un rectángulo, con
dimensiones de 100 x 50 pixeles, de lineas punteadas con una X en su esquina superior
izquierda. Este rectángulo podrá ubicarse en cualquier parte de la superficie de trabajo.
@UINT8(Dirección en Byte)
@UINT16(Dirección en Word,[swap code])
@INT16(Dirección en Word,[swap code])
@UINT32(Dirección en Word,[swap code])
@INT32(Dirección en Word,[swap code])
@REAL32(Dirección en Word,[swap code])
@BIT(Dirección en Bits)
mainDatabase:setINT16(1000,5000)
deadBandDb(1000,’INT16’, 2000,’INT16’,100)
mainDatabase:setINT16(1000,5099)
deadBandDb(1000,’INT16’, 2000,’INT16’,100)
mainDatabase:setINT16(1000,5100)
deadBandDb(1000,’INT16’, 2000,’INT16’,100)
mainDatabase:setINT16(1000,5001)
deadBandDb(1000,’INT16’, 2000,’INT16’,100)
mainDatabase:setINT16(1000,5000)
deadBandDb(1000,’INT16’, 2000,’INT16’,100)
Objeto NUMERIC_DATABASE
Función: setUINT8(índice,valor)
Descripción: Escribe en la base de datos numérica un numero entero sin signo
de 8 bits.
Parámetros: índice Índice en bytes de la base de datos a escribir.
Valor numérico que se desea escribir en la base de
Valor
datos. Debe estar en el rango de 0 a 255.
Retorna: Nada
Ejemplos: -- Escribe 123 en el primer byte de la
-- base de datos
NUMERIC_DATABASE:setUINT(0,123)
-- Forma Alternativa
mainDatabase:setUINT(0,123)
Objeto NUMERIC_DATABASE
Función: getUINT16(Índice, Código de Intercambio)
Descripción Lee de la base de datos numérica un número entero sin signo
de 16 bits.
Parámetros Índice Índice en bytes a leer de la base de datos.
Forma en la que deben ordenarse los bytes al ser
Código de estos escritos en la base de datos:
intercambio 0: No intercambiar bytes
1: intercambiar bytes.
Resultado de la lectura de la base de datos como
Retorna Número
un número en el rango de 0 a 65535.
Ejemplos -- Obtiene el valor del primera palabra de
-- la base de datos
local value = NUMERIC_DATABASE:getUINT16(0)
-- Forma alternativa local value =
mainDatabase:getUINT16(0)
Objeto NUMERIC_DATABASE
Función: setINT16(Índice,Valor, Código de
Intercambio)
Descripción Escribe en la base de datos numérica un número entero con
signo de 16 bits.
Parámetros Índice Índice en bytes a leer de la base de datos.
Valor numérico que se desea escribir en la base de
Valor
datos. Debe estar en el rango de -32767 a 32768.
Forma en la que deben ordenarse los bytes al ser
Código de estos escritos en la base de datos:
intercambio 0: No intercambiar bytes
1: intercambiar bytes.
Retorna Nada
Ejemplos -- Escribe -12345 en la primera palabra de
-- 16 bits de la base de datos
-- sin intercambiar bytes
NUMERIC_DATABASE:setINT16(0,-12345,0)
-- Forma alternativa
mainDatabase:setINT16(0,12345,0)
Objeto NUMERIC_DATABASE
Función: getBit(Índice)
Descripción Lee de la base de datos numérica un bit en formato booleano.
Parámetros Índice Índice en bytes a leer de la base de datos.
Retorna true o false dependiendo del estado del bit
Retorna Bit
especificado.
Ejemplos -- Obtiene el valor del primer bit
-- en formato booleano
-- de la base de datos
-- sin intercambiar palabras y bytes
local value = NUMERIC_DATABASE:getBit(0)
-- Forma alternativa
local value = mainDatabase:getBit(0)
Elemento Contenido
Datos de Diagnostico del Puerto
STATUS_DATA.SerialPortsStatus.COM1
Serial 1
Datos de Diagnostico del Puerto
STATUS_DATA.SerialPortsStatus.COM2
Serial 2
Datos de Diagnóstico de Drivers
STATUS_DATA.NetProtocols[índice] de comunicación de red por ín-
dice
Datos de Diagnóstico de Dri-
STATUS_DATA.NamedNetProtocols[nombre] vers de comunicación de red por
nombre
10.4. IZINET
IZINET: Nombre de Interfaces
LINK_10k_900MHz