Está en la página 1de 36

Curso Configuración TDC-3000

CL-HPM

Noviembre 23, 2016


 Honeywell.com

Introducción

Intencionalmente en Blanco

Honeywell Proprietary
 Honeywell.com

Objetivos

• Objetivo General del curso

– Conocer y dominar las diferentes herramientas de configuración y


mantención del sistema de control distribuido TDC-3000.

• Objetivo Especifico del día.

– CL HPM

• Documentos Relacionados
– HP27610.pdf

Honeywell Proprietary
 Honeywell.com

CL HPM.

• Objetivo General:
– Aprender a Programar Secuencias CL-HPM
• Objetivos Específicos Día 1
– Conocer la Arquitectura del Sistema TDC-3000
– Conocer los puntos tipo Process Module.
– Conocer y dominar las Reglas y Elementos de CL-HPM
• Introducción.
• Reglas y Elementos.
• Tipo de Datos.
• Accediendo a Parámetros.
• Declaración de Variables.
• Expresiones y Condiciones.
• Editor de Texto
• Compilar Secuencias
• Cargar Secuencias

Honeywell Proprietary
 Honeywell.com

Introducción CL HPM.

• Las secuencias CL de HPM son algoritmos definidos por el


usuario, tendientes a manipular variables o hacer cálculos
específicos que no se encuentran definidos en las estructuras de
puntos estándares para el sistema TDC-3000. La programación de
estas secuencias se desarrolla en un lenguaje particular para los
controladores HPM del sistema TDC-3000, este es un lenguaje
muy parecido a Pascal o Visual Basic.

• Las secuencias CL-HPM se programan por medio del editor de


texto disponible en el sistema TDC-3000.

Honeywell Proprietary
 Honeywell.com

Puntos Tipo Process Module

• Dentro de la variedad de puntos que puede manejar el controlador


HPM (por ejemplo, Regulatory Control, Digital Composite, Analog
Input, Digital Input, etc), el punto tipo Process Module es la entidad
o estructura definida para ejecutar los programas creados por los
usuarios.

• Mediante los puntos Process Module es posible manipular y


conocer el estado de procesamiento de las secuencias definidas
por los usuarios.

Honeywell Proprietary
 Honeywell.com

Puntos Tipo Process Module

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Introducción a Reglas y Elementos


– El CL-HPM, como cualquier lenguaje de programación, posee ciertas
características que permiten desarrollar distintos tipos de algoritmos
creados por el usuario, mientras se cumpla con las reglas definidas en
este lenguaje, tal como lo es la gramática en el lenguaje español.

– Sintaxis, Reglas
– Caracteres
– Tipos de Datos, Declaración de variables
– Expresiones, Condiciones.
– Estamentos.
– Pasos o fases
– Programa de secuencias.

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Sintaxis: Los elementos, estamentos y estructuras son construidas


siguiendo una forma especifica definida por la sintaxis. Podemos
comparar sintaxis con gramática.
– La forma de cualquier algoritmo que se requiera construir debe
seguir de forma exacta la sintaxis definida para CL-HPM.
Cualquier programa para que pueda ser compilado debe seguir
de forma exacta la sintaxis definida para CL-HPM.
• En esta sección explicaremos las reglas y elementos básicos que
son usados en la construcción de algoritmos o estructuras CL-
HPM. (Tipos de dato, Declaración de variables, expresiones y
condiciones)

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Definición de set de caracteres:


– El Set de caracteres utilizados por CL-HPM esta compuesto por
95 caracteres ASCII. Compatible con el estándar ISO 646.
– Los caracteres pueden ser combinados para generar los
siguientes elementos básicos
• Comentarios
• Identificadores
• Números
• Citas

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Espaciado: Los elementos adjuntos en un programa CL-HPM


pueden ser espaciados por cualquier numero de espacios. Los
espacios son requeridos para prevenir confusión. Esto quiere decir
que debe haber a lo menos un espacio de separación entre
identificadores o números.
• Líneas: La estructura o programa, primero se puede escribir fuera
en un papel, o directamente sobre el editor de texto de TDC-3000.
Toda la secuencia programada estará compuesta por líneas, las
que llamaremos líneas de comando del código fuente (este código
fuente requiere ser compilado para crear el objeto ejecutable).

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Continuación de Líneas: Si el código fuente, o línea de programa


no alcanza a ser escrita en una sola fila, ésta debe continuar en la
siguiente, y se debe indicar al programa que la línea de comando
continúa en la siguiente fila. Para indicar esta condición se utiliza el
carácter &.
• Continuación de Líneas: Ejemplo.
SEQUENCE good (HPM;
& POINT
& HPM01S01)
PHASE
& one
IF NN (01) > 10.0 THEN (SET NN (01) = 10;
& SET NN (02) = 9.5)
ELSE set FL (01) = on --NOTE: no continuation for ELSE
label1:
& EXIT
END good

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Continuación de Líneas: El siguiente estamento contienen errores.

SEQUENCE bad (HPM; POINT HPM01


& S01) - -Un identificador no puede superar una línea.
PHASE one
SEND "str
& ing one" – Un String no puede superar una línea.
label1:
exit -- must use continuation here
IF NN(01) > 10.0 THEN (SET NN(01) = 10;
SET NN (02) = 9.5) -- must use continuation here
END bad

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Identificadores: Los identificadores son usados como los nombres


de todas los tipos de objetos definidos en CL-HPM: Variables y
constantes, tipos de dato, etiquetas de programa (labels), nombre
de puntos, etc.

• Un identificador puede estar compuesto por el signo dólar ($),


caracteres del alfabeto (A .. Z), sin la Ñ, caracteres numéricos
(0..9) y el guion abajo (_)

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Ejemplo de Identificadores.

VALVE -- a valid identifier


valve -- the same as VALVE
Valve -- same as VALVE and valve
hot_pot -- a valid identifier
hotpot -- NOT the same as hot_pot
hot__pot -- NOT VALID (adjacent breaks)
hot_pot_ -- NOT VALID (trailing break)
_hot_pot -- NOT VALID (leading break)
pump2 -- a valid identifier
2N1401 -- also a valid identifier
14_34_6 -- also valid
14346 -- ok
$abc -- valid identifier, restricted use
$4995 -- also valid, restricted use
!DI02S02 -- digital input module 2, slot 2
!DI0202 -- NOT VALID (missing "s")
!BOX -- box data point of the bound data point

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Palabras Reservadas

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Lista de identificadores pre-definidos

Abs -- Built-in Function


APM -- Sequence Program Type
Atan -- Built-in Function
Avg -- Built-in Function
Badval -- Built-in Predicate
Cos -- Built-in Function
Date_Time -- Built-in Function
Equal_String -- Built-in Function
Exp -- Built-in Function
Finite -- Built-in Predicate
HPM -- Sequence Program Type

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Lista de identificadores pre-definidos

Int -- Built-in Function


Len -- Built-in Function
Ln -- Built-in Function
Log10 -- Built-in Function
Max -- Built-in Function
MC -- Sequence Program Type
Min -- Built-in Function
Modify_String -- Built-in Subroutine
Now -- Built-in Function
Number -- Type name and Built-in Function
Number_To_String -- Built-in Subroutine

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Lista de identificadores pre-definidos


Off -- Logical state name
On -- Logical state name
PM -- Sequence Program Type
Round -- Built-in Function
Set_Bad -- Built-in Subroutine
Sin -- Built-in Function
Sqrt -- Built-in Function
String -- Type name
Sum -- Built-in Function
Time -- Type name
Tan -- Built-in Function

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Identificadores Especiales: Si un identificador esta directamente


precedido por un apostrofe (‘), este identificador es tratado como
un identificador, este identificador puede ser escrito igual que las
palabras reservadas o numérico. No debe haber espacio entre el
apostrofe y el identificador.
• Ejemplos:
LOCAL foo: set/reset at FL(01) -- invalid, SET is reserved
LOCAL bar: 'set/reset at FL(02) -- OK, set is an identifier
EXTERNAL 7 -- invalid
EXTERNAL '7 -- OK
LOCAL ' xyz at NN(01) -- invalid, space follows '
LOCAL 'xyz_ at NN(02) -- invalid, break character, "_",
-- cannot be the last character
-- of an identifier

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Números: Un número es un número decimal común, con o sin


punto decimal y con exponente opcional.
– Un numero decimal debe tener un digito en ambos lados del punto
decimal.
– Un número decimal también puede tener un exponente. El exponente
consiste en la letra E seguido opcionalmente con un signo mas o
menos (+ o -) seguido de uno o mas dígitos.
1000 -- valid
1000. -- NOT VALID; no trailing digit
1000.0 -- valid; same as 1000
0.5 -- valid
.5 -- NOT VALID; no leading digit
10.02E1 -- valid
10.02e1 -- valid; same as 10.02E1
10.02 e1 -- NOT VALID; embedded space
1234.0E-2 -- valid
1234E-2 -- NOT VALID; no decimal point & trailing digit
1234.0E -2 -- NOT VALID; embedded space
1234.0E+2 -- valid

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Strings: Un String es una secuencias de cero o mas caracteres


terminada en ambos extremos con el las comillas (“ ”).
– Cualquier carácter puede aparecer en un String, si una comilla debe
aparecer en un String, esta debe ser escrita dos veces.
– Un string puede contener como máximo 64 caracteres. Cualquier
String superior a 64 caracteres será truncado al compilar.
• Ejemplos de Strings
"This is a String" -- a String Literal
"&@$?*! system" -- can contain any printable characters
"" -- the empty String
"He said ""hello""" -- he said "hello"
"A" " “ -- two Strings of length 1
"""“ -- a string of length 1 (containing only a
-- quotation mark)

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Caracteres Especiales

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Tipos de Datos:
• Tipo Numéricos
• Tipo Data Time
• Discretos
• Arreglos
• String
• Enumeraciones

Honeywell Proprietary
 Honeywell.com

Reglas y Elementos de CL de HPM

• Accediendo a Parámetros de HPM


– Variables Locales
– External
– Direcciones de Hardware
– Parámetros de HPM (Box Data Point Parameter)

Honeywell Proprietary
 Honeywell.com

Proceso de Compilar Secuencias

• Crear Process Module


– Definir, Número de UCN, Numero de Nodo UCN (HPM), Slot.
Toda esta información se define al revisar el Network Hiway
Status de la UCN.
• Crear CL en editor de Texto desde command Procesor, el
comando es:
– ED NET>CLXX>SUMA.CL
• Compilar CL
– CL NET>CLXX>SUMA.CL -UL

Honeywell Proprietary
 Honeywell.com

Proceso de Compilar Secuencias

• El resultado compilar la secuencia es un archivo con extensión NO


(Archivo objeto o ejecutable de la secuencia), en el directorio
NET>CLXX. La forma del archivo es:
– NET>CLXX>40705955.NO
Donde 4: corresponde a número de red UCN
07: Corresponde a número de nodo UCN
05: Corresponde a número de SLOT en nodo HPM
955: corresponde a correlativo de secuencia.
• Luego el archivo objeto o ejecutable debe ser copiado a directorio
&E04 (donde 04 corresponde al número de UCN)
– CP NET>CLXX>40705955.NO NET>&E04>= -D

Honeywell Proprietary
 Honeywell.com

Proceso de Carga Secuencias

• Primero pinchar en botón inferior derecho (LOAD SAVE)


• Segundo Pinchar en botón Load

Paso 2: Clic en
Load

Paso 1: Clic
Load Save

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Luego seleccionar Defaul Source.


Paso 3: Seleccionar Default
Source

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Execute Command

Paso 4: Clic Execute


Command

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Secuencia

Paso 5: Clic
Load

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Start

Paso 6: Clic en
Secuencia

Paso 7: Clic en
Start

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Load

Paso 8: Clic en
Secuencia

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Start

Paso 9: Clic en
Start

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Seleccionar Enter

Paso 6: Clic en
Enter

Honeywell Proprietary
 Honeywell.com

Proceso de Carga de Secuencias

• Secuencia Corriendo Normalmente

Honeywell Proprietary

También podría gustarte