Manual de Curso
Centro de Formacin Tcnica
Schneider Electric Argentina
PL7 Pro 1
Manual
del
Curso
Descripcin del software A
Analgica I
Regulacin J
P
Descripcin del software PL7
A
Captulo Pgina
1 Generalidades A1/1
___________________________________________________________________________
A/1
A
Captulo Pgina
1.4 Modos de marcha A1/36
1.4-1 Corte de corriente y reanudacin de la alimentacin A1/36
1.4-2 Rearranque en caliente A1/37
1.4-3 Arranque en fro A1/38
___________________________________________________________________________
A/2
A
Captulo Pgina
___________________________________________________________________________
A/3
A
Captulo Pgina
___________________________________________________________________________
A/4
A
Captulo Pgina
___________________________________________________________________________
A/5
A
Captulo Pgina
___________________________________________________________________________
A/6
A
Captulo
Generalidades PL7 11
1 Generalidades
1.1 Presentacin del programa PL7
1.1-1 Presentacin
El programa PL7 Junior es un software de programacin, diseado para los
autmatas TSX 37 y TSX/PMX/PCX 57, que funcionan en Windows. El PL7 Micro
permite programar nicamente los autmatas TSX 37.
El software PL7 Pro ofrece, adems de las funcionalidades PL7 Junior, la posibilidad
de crear bloques de funcin de usuario DFB (Derived Function block), pantallas de
explotacin y mdulos funcionales.
EL software PL7 Prodyn es una herramienta de explotacin (conduccin, diagnstico,
mantenimiento) para los autmatas TSX 37 y TSX/PMX/PCX 57. No permite crear o
modificar aplicaciones.
El programa PL7 (1) propone:
un lenguaje grfico, el lenguaje de contactos con transcripcin de esquemas de
rels, que est adaptado al tratamiento combinatorio. Ofrece dos smbolos grficos
de base: contactos y bobinas. La escritura de clculos numricos puede efectuarse
en de los bloques de operacin.
El software PL7 est conforme a la norma IEC 1131-3. Los Anexos contienen las
tablas de conformidad: vase la seccin B, captulo 6.
___________________________________________________________________________
1/2
A
Generalidades PL7 1
Prioridad +
-
Tarea rpida
La tarea rpida (opcional), de ejecucin peridica, permite efectuar tratamientos
cortos con una prioridad ms elevada que en la tarea maestra. Cuando est
programada, el sistema la activa automticamente al arrancarse. La tarea puede
detenerse y activarse de nuevo mediante una accin en un bit sistema.
Tareas de sucesos
Estas tareas no estn vinculadas a un perodo como las previamente descritas. Una
llamada procedente de determinados mdulos activa su ejecucin. Son las tareas
ms prioritarias. Debe ser forzosamente corto su tratamiento para asegurar que no
perturbe la ejecucin de las dems tareas.
___________________________________________________________________________
1/3
A
MAST FAST
Horno_1(Grafcet) Vig_Sec(LD)
PRL (LD)
Alarma_Horno(ST)
CHART
Secado (LD)
SR0
Limpieza (ST)
Se puede hacer una llamada a los subprogramas desde cualquier seccin de la tarea
a la cual pertenecen o desde otros subprogramas de la misma tarea.
___________________________________________________________________________
1/4
A
Generalidades PL7 1
Un mdulo funcional
comprende un programa
y tablas de animacin
___________________________________________________________________________
1/5
A
Entrada_1Fc_puerta
Duracin=ABS(Diferencia_de_tiempo)
Entrada_4 Vlvula_D
Nota
Determinados mdulos de funciones especficas permiten la simbolizacin automtica de los
objetos que les estn asociados.
___________________________________________________________________________
1/6
A
Generalidades PL7 1
Funcionalidad
Los smbolos y comentarios pueden ser memorizados en el autmata TSX Premium
(TSX/PMX/PCX 57202, 57302, 57402, 57452 V3.3) equipado de un tipo de tarjeta
memoria siguiente:
tarjeta memoria de 128 kpalabras: TSXMRP 2128P
tarjeta memoria de 256 kpalabras: TSXMRP 3256P
Cuando se registra una aplicacin en el PC, se crea un archivo *.STX.
La imagen de la aplicacin en forma de archivo *.STX comprende entre otros los
smbolos y comentarios.
Observaciones
1. En modo conectado, las modificaciones de los smbolos y comentarios que se
efectan en el Editor de Variables no se comunican a medida que suceden a la
tarjeta de memoria. Una actualizacin de la base en el autmata se propone en
el momento de la peticin de desconexin si existe divergencia entre la base local
y la base del autmata.
2. La liberacin del lugar a nivel de smbolos y comentarios no aumenta el rea de
programa, ya que el almacenamiento de los smbolos y comentarios se efecta
en un espacio distinto al de la parte programa de la aplicacin.
3. Los diferentes editores de PL7 (datos, programa, herramienta de depuracin)
utilizan en modo conectado la base de smbolos y comentarios presentes en
el PC.
4. La funcin Comparacin permite comparar los smbolos PC/Autmata.
___________________________________________________________________________
1/7
A
Instrucciones de base
Comprenden las instrucciones booleanas de base, los bloques de funcin predefinidos
y las instrucciones aritmticas y lgicas para enteros.
Instrucciones avanzadas
Comprenden las instrucciones que satisfacen las necesidades de programacin
avanzada.
Son de dos tipos:
lenguaje PL7. Aumentan las posibilidades de tratamiento del lenguaje mediante
las funciones particulares (manipulacin de cadenas de caracteres, gestin de
tiempo...),
especficas. Ofrecen funciones especficas de tratamiento, por ejemplo las funciones
de comunicacin:
- PRINT para enviar un mensaje de tipo cadena de caracteres a un terminal o una
impresora,
- SEND para enviar un mensaje a una aplicacin,
- PID para la funcin PID de regulacin.
___________________________________________________________________________
1/8
A
Generalidades PL7 1
___________________________________________________________________________
1/10
A
Generalidades PL7 1
% IoQ X, W o D x . i
Smbolo Tipo de objeto Formato Posicin N va
I = entrada X = booleano x= Nmero de i= 0 a 127
Q = salida W = palabra posicin en o MOD
D = doble palabra el rack
Tipo de objeto
I y Q: para las entradas y salidas fsicas de mdulos. Esta informacin se
intercambia implcitamente en cada ciclo de la tarea asociada.
Observacin: tambin pueden intercambiarse a peticin de la aplicacin otro tipo
de informacin (palabras de estado, de comando ...).
Formato (tamao)
Para los objetos de formato booleano, se puede omitir la X. Los dems tipos de
formato (byte, palabra, doble palabra) se definen en el apartado1.2-4.
Posicin y nmero de va
La modularidad de base del TSX 37 es de semiformato. Las esquemas siguientes
indican las posiciones de cada tipo de autmata TSX 37 (base y extensin).
TSX 37-10 TSX 37-21/22
1 3 1 3 5 7 9
5 7 0
2 4 10
6 8 2 4 6 8
___________________________________________________________________________
1/11
A
0 a 11 0 a 15 0 a 15 0 a 31
Posicin y N va x.0 x.0 x.0 x.0 x.0 x.0 x.0
(x = posicin) a a a a a a a
x.3 x.7 x.11 x.15 x.15 x.15 x.31
(x+1).0 (x+1).0 (x+1).0 (x+1).0
a a a a
(x+1).11 (x+1).15 (x+1).15 (x+1).31
Nota
Es posible reemplazar el nmero de va por "MOD" para acceder a la informacin general sobre
el mdulo.
Rango: este sufijo opcional puede agregarse al nmero de va. Permite marcar
distintos objetos del mismo tipo asociados a una misma va.
ERR: indica un fallo de mdulo o de va.
Ejemplos: %I4.MOD.ERR: informacin de fallo del mdulo 4,
%I4.3.ERR: informacin de fallo de la va 3, mdulo 4.
Nota
En el direccionamiento a travs de la red o de entradas/salidas remotas, se agrega al nmero
de posicin en el rack la ruta completa de acceso a la estacin.
___________________________________________________________________________
1/12
A
Generalidades PL7 1
% IoQ X, W o D x y I
Tipo de objeto
I y Q: para las entradas y salidas fsicas de los mdulos. Estas informaciones se
intercambian implcitamente en cada ciclo de la tarea a la que se asocian.
Observacin: otros tipos de informacin (palabras de estado, de comando...)
pueden tambin intercambiarse a solicitud de la aplicacin.
Formato (tamao)
Para los objetos de formato booleano, se puede omitir la X. Los dems tipos de
formato (byte, palabra, doble palabra) se definen en el apartado 1.2-4.
Direccionamiento de las vas
El direccionamiento de las vas depende de la direccin del rack, de la posicin
fsica del mdulo en el rack y del nmero de va.
PS 00 01 02 03 04 05 06 07 08 09 10
00
PS 00 01 02 03 04 05 06 07 08 09 10
01
Notas:
para conocer la lista de los objetos asociados a un mdulo, vase el manual de funcin
especfica correspondiente,
el direccionamiento de las entradas/salidas distantes se describe en el manual de funcin
especfica, seccin Comn a las funciones especficas.
___________________________________________________________________________
1/13
A
Racks TSX RKY 6 RKY 8 RKY 12 RKY 4EX RKY 6EX RKY 8EX RKY 12EX
Direccin rack : x 0 0 0 0a7 0a7 0a7 0a7
Posicin mdulo: y 00 a 04 00 a 06 00 a 10 00 a 02 00 a 04 00 a 06 00 a 10
Nota
El rack que soporta el procesador siempre tiene la direccin 0.
Nota
El nmero de va puede reemplazarse por "MOD" para acceder a la informacin general sobre
el mdulo.
Rango: este sufijo opcional puede agregarse al nmero de va. Permite localizar
distintos objetos de mismo tipo asociados a una misma va.
Ejemplos:
- %I104.MOD.ERR: informacin de fallo del mdulo en la posicin 4 del rack de
direccin 1.
- %I104.3.ERR: informacin de fallo de la va 3 del mdulo en la posicin 4 del
rack de direccin 1.
Nota
Para un direccionamiento a travs de la red o de las entradas/salidas remotas, la ruta de acceso
completa se agrega al direccionamiento de la va.
Ejemplos:
___________________________________________________________________________
1/14
A
Generalidades PL7 1
Funcionalidades
Les racks de extensin permiten configurar un mayor nmero de mdulos a travs
de un mayor nmero de racks. Esta funcin slo est disponible con los procesadores
de nivel superior o igual a 3.3.
Estos racks de extensin tienen las mismas funciones para la configuracin de sus
mdulos o de sus alimentaciones que los dems racks.
Estos racks de extensin aparecen despus del rack de base si este ltimo es
extensible y si comprende 8 emplazamientos por lo menos.
Se marcan a nivel de la referencia por las letras EX.
La primera direccin del primer mdulo configurable (fuera de alimentacin) es
siempre 8.
Rack de Nmero
Rack de base extensin total de
(tipo E o EX) (tipo EX) emplazamientos
4 4 8
4 6 10
4 8 12
6 4 10
6 6 12
6 8 14
8 4 12
8 6 14
8 8 16
12 0 12
___________________________________________________________________________
1/15
A
% M, K o S B, W , D o F i
Smbolo Tipo de objeto Formato Nmero
M = interno B = byte
K = constante W = palabra
S = sistema D = doble palabra
F = flotante
Tipo de objeto
M palabras internas destinadas a almacenar valores en curso del programa. Se
ubican dentro del espacio de datos en una misma rea de memoria.
Formato
El programa PL7 puede direccionar los objetos segn cuatro formatos:
B byte; este formato se utiliza exclusivamente en las operaciones de cadena de
caracteres.
W simple longitud; estas palabras de 16 bits pueden contener un valor algebraico
comprendido entre -32 768 y 32 767.
___________________________________________________________________________
1/16
A
Generalidades PL7 1
Bits ms
significativos
Ejemplos:
%MD0 corresponde a %MW0 y %MW1,
%MW3 corresponde a %MB7 y %MB6,
%KD543 corresponde a %KW543 y
%KW544,
%MF10 corresponde a %MW10 y %MW11.
___________________________________________________________________________
1/17
A
Valores inmediatos
Son valores algebraicos, cuyo formato es homogneo con el de las palabras de
simple y doble longitud (16 o 32 bits), que asignan valores a estas palabras. Se
almacenan en la memoria de programa. La tabla siguiente contiene su sintaxis.
Por otra parte, la s redes utilizan objetos especficos: las palabras comunes. Son
objetos palabras de simple longitud (16 bits) comunes a todas las estaciones
conectadas a la red de comunicacin.
Direccionamiento: %NW{i.j}k
donde: i = 0 a 127 n de red,j = 0 a 31 n de estacin y k= 0 a 3 n de palabra
PAL. :X j
Posicin
j = 0 a 15
Rango del bit
en la palabra
Ejemplos:
%MW10:X4 = bit n 4 de la palabra interna %MW10
%QW5.1:X10 = bit n 10 de la palabra de salida %QW5.1
(1) el lmite mximo depende del tamao de memoria disponible y del nmero de palabras
declaradas en la configuracin del programa.
(2) este objeto existe nicamente como direccin inicial de una cadena de caracteres %MBi:L
o %KBi:L (vase el apartado 2.8-1, seccin B).
(3) escritura slo desde el terminal.
(4) escritura segn i.
___________________________________________________________________________
1/19
A
%KW10 16 bits
Tablas de palabras
Las tablas de palabras son series de
palabras adyacentes del mismo tipo y de
%KW14
longitud definida: L.
Ejemplo de tablas de palabras: %KW10:5
Tipo Formato Direccin Tamao Acceso
mximo escritura
Palabras internas Simple longitud %MWi:L i+L < Nmx (2) S
Doble longitud %MDi:L i+L < Nmx-1 (2) S
Flotante %MFi:L i+L < Nmx-1 (2) S
Palabras constantes Simple longitud %KWi:L i+L < Nmx (2) No
Doble longitud %KDi:L i+L < Nmx-1 (2) No
Flotante %KFi:L i+L < Nmx-1 (2) No
Palabras Grafcet Simple longitud %Xi.T:L, %Xj.i.T:L i+L < Nmax-1 (2) Non
Palabras sistema Simple longitud %SW50:4 (3) S
%MB10 8 bits
Cadenas de caracteres
Las cadenas de caracteres son series de
bytes adyacentes del mismo tipo y de
%MB14
longitud definida: L.
Ejemplo de cadena de caracteres: %MB10:5
Tipo Direccin Tamao Acceso en
mximo escritura
Palabras internas %MBi:L (5) 1<i+L<Nmx (4) S
Palabras constantes %KBi:L (5) 1<i+L< Nmx (4) S
(3) Nmx = nmero mximo definido en la configuracin del programa.
(4) slo las palabras %SW50 a %SW53 pueden ser direccionadas en forma de tabla.
(5) i debe ser par.
___________________________________________________________________________
1/21
A
Objetos indexados
Direccionamiento directo
Se dice directo el direccionamiento de objetos cuando la direccin de estos objetos
es fija y se ha definido en la escritura del programa.
Ejemplo: %MW26 (palabra interna con la direccin 26)
Direccionamiento indexado
En el direccionamiento indexado, un ndice completa la direccin directa del objeto:
a la direccin del objeto se agrega el contenido del ndice. Una palabra interna %MWi
una palabra constante %KWi, o un valor inmediato define el ndice. No se limita el
nmero de palabras indexadas.
Ejemplo: %MW108[%MW2]: palabra de direccin directa 108 + contenido de la
palabra %MW2.
Si el contenido de la palabra %MW2 es el valor 12, escribir
%MW108[%MW2] equivale a escribir %MW120.
Tipo Formato Direccin Tamao Acceso
mximo Escritur.
Objetos palabras
Una palabra se asocia a cada etapa: %Xi.T,%Xj.i.T,%Xj.IN.T o %Xj.OUT.T. Permite
conocer el tiempo de actividad de la etapa i del Gracet. Se incrementa cada 100 ms
y asume un valor entre 0 y 9999.
1.2-9 Simbolizacin
Smbolos
Un smbolo es una cadena que consta de un mximo de 32 caracteres alfanumricos
y cuyo primer carcter es alfabtico. El primer elemento del smbolo es una letra
mayscula; las dems son minsculas (por ejemplo: el smbolo Horno_1). El smbolo
puede ser introducido en letras maysculas o en minsculas (por ejemplo: HORNO_1):
el programa le da automticamente la forma correcta.
Pueden utilizarse los caracteres siguientes:
letras maysculas:
"A a Z" y las letras acentuadas "DUY"
o letras minsculas:
" a a z" y las letras acentuadas: yp
caracteres numricos: dgitos de 0 a 9 (no pueden colocarse en el principio del
smbolo).
el carcter "_" (no puede colocarse en el principio ni al final del smbolo).
Objetos simbolizables
Se pueden simbolizar todos los objetos PL7, salvo los objetos estructurados de tipo
tabla y los objetos indexados. Sin embargo, si el objeto de base o el ndice est
simbolizado, el smbolo se utiliza en el objeto estructurado.
Ejemplos:
si la palabra %MW0 tiene como smbolo "temperatura", "temperatura: 12" simboliza
la tabla de palabras %MW0:12.
si la palabra %MW10 tiene como smbolo "horno_1", "temperatura[horno_1]"
simboliza la palabra indexada %MW0[%MW10].
Los objetos bits extrados de palabras, los bits o las palabras de bloques de funcin
son simbolizables. Si no estn simbolizados, pueden heredar el smbolo del objeto
de base.
Ejemplos:
si la palabra %MW0 tiene como smbolo "estado_bomba" y si el bit extrado de
palabra %MW0:X1 no est simbolizado, ste hereda el smbolo de la palabra.
%MW0:X1 tiene como smbolo: "estado_bomba: X1".
si el bloque de funcin %TM0 tiene como smbolo " Tempo_horno1" y si la salida
%TM0.D no est simbolizada, sta hereda el smbolo del bloque. %TM0.D tiene
como smbolo: "Tempo_horno.D".
___________________________________________________________________________
1/24
A
Generalidades PL7 1
Objetos presimbolizados
Los mdulos especficos permiten una simbolizacin automtica de los objetos que
les estn asociados. El usuario proporciona el smbolo genrico de la va %CHxy.i
del mdulo, y todos los smbolos de los objetos asociados a esta va pueden ser
entonces a pedido generados automticamente.
Estos objetos son simbolizados con la sintaxis siguiente:
Prefijo_usuario_Sufijo_constructor
donde
El Prefijo_usuario es el smbolo genrico proporcionado a la va %CHxy.i (12
caracteres mximo) para el usuario,
El Sufijo_constructor es la parte del smbolo correspondiente al sujeto bit o palabra
de la va (20 caracteres mximo) proporcionado por el sistema.
Adems del smbolo, un comentario constructor se genera automticamente. Este
comentario recuerda sucintamente la funcin del objeto.
___________________________________________________________________________
1/25
A
Constantes Guardado
%MW
Flash Guardado Tarjeta
EPROM Programa y memoria Programa
interna (1) Constantes RAM o
Flash
Guardado EPROM
%MW externa
Constantes
(1) La transferencia de la aplicacin desde la memoria FLASH EPROM hacia la memoria RAM
se efecta automticamente cuando la aplicacin se pierde en la RAM (fallo al guardar o
ausencia de batera). Tambin se puede solicitar una transferencia manual desde un
terminal de programacin.
___________________________________________________________________________
1/26
A
Generalidades PL7 1
Constantes
Tarjeta
memoria Programa
RAM o
FLASH
EPROM Constantes
___________________________________________________________________________
1/28
A
Generalidades PL7 1
Para que el flanco se detecte una sola vez, se debe utilizar un bit interno intermedio.
%M1
P INC%MW0
Estados de forzado
A peticin de forzado desde el terminal:
el estado de forzado F se pone a 1.
el estado actual C se pone a:
- 1 si se solicita el forzado a 1,
- 0 si se solicita el forzado a 0.
Estos estados no evolucionan, a menos que:
se suprima el forzado y se actualice el bit implicado,
se solicite el forzado inverso; slo se modifica el estado actual.
___________________________________________________________________________
1/30
A
Generalidades PL7 1
Nota
Los smbolos y los comentarios asociados a objetos no se guardan en la memoria del autmata.
Se almacenan en la aplicacin local (disco duro del terminal).
___________________________________________________________________________
1/31
A
Ki = Kinstrucciones.
(1) Tamao predeterminado, se puede ampliar en detrimento del tamao del programa de
aplicacin.
Procesador 57 10 57 20/25
Tipo de bits sistema %Si 128 128
objetos bits entradas/salidas %I/Qx.i (1) (1)
bits internos %Mi 3962 8056
bits de etapas %Xi 1024 1024
(1) depende de la configuracin hardware declarada (mdulos de entradas/salidas, equipos
en bus AS-i y en bus FIPIO)
Tamao de la memoria palabras
Procesador TSX-PCX57 10 / PMX 57 10 TSX-PMX 5720 / TSX 57 25
Tarj. de memoria - 32K 64K - 32K 64K 128K
Memoriainterna 32K/48K 32K/48K 32K/48K 48K/64K 48K/64K 48K/64K 48K/64K
Procesador 57 30/35
Tipo de bits sistema %Si 128
objetos bits entradas/salidas %I/Qx.i (1)
bits internos %Mi 12152
bits de etapas %Xi 1024
(1) depende de la configuracin hardware declarada (mdulos de entradas/salidas, equipos
en bus AS-i y en bus FIPIO)
Tamao de la memoria palabras
Corte de corriente
Espera
Reanud. aliment.
Corte S Contexto No
detectado guardado
S
No
Tarjeta de
No
memoria idntica
S
Ejecucin normal Rearranque Arranque
del programa en caliente en fro
Nota
Un arranque en fro puede realizarse de los modos siguientes:
reanudacin de la alimentacin con prdida de contexto (ejemplo: batera de respaldo del
procesador fuera de servicio),
ejecutando una aplicacin por primera vez,
presionando el botn RESET del procesador,
poniendo a 1 el bit sistema %S0 desde el programa,
efectuando una inicializacin en PL7 desde el terminal,
con la tarjeta de memoria PCMCIA insertada en su emplazamiento o manipulando el prensil
(excepto para el autmata PCX 57, donde la insercin de carta memoria PCMCIA est
prohibida en encendido).
Un rearranque en caliente puede realizarse de los modos siguientes:
reanudacin de la alimentacin sin prdida de contexto,
poniendo a 1 el bit sistema %S1 desde el programa.
___________________________________________________________________________
desde PL7 mediante el terminal.
1/36
A
Generalidades PL7 1
Adquisicin
de entradas Parada procesador
Contexto aplicacin
guardado
Ejecucin del programa
TOP
Reanud. alimentacin
Si %S1 = 1,
tratamiento relativo al
rearranque en caliente Autopruebas
de la configuracin
S
Corte de corriente
> microcorte Puesta a 1 del
No bit %S1
BOT
Actualizacin
de salidas
___________________________________________________________________________
1/37
A
Adquisicin
de entradas Parada procesador
Contexto aplicacin
guardado
Ejecucin del programa
TOP
Reanud. alimentacin
Si %S0 = 1,
tratamiento eventual
del arranque en fro Autopruebas
de la configuracin
Corte de corriente S
> microcorte Inicializacin de
la aplicacin
No BOT
Actualizacin
de salidas
Prl
Seccin Grafcet :
Una seccin Grafcet comprende:
el tratamiento preliminar (PRL) pro-
gramado en LD, ST o IL. Se ejecuta Tratamiento
Traitement
antes de Grafcet, Subprograma
Sous-programme
preliminar
prliminaire
PRL SRi
SRi
el Grafcet (CHART): en las pginas PRL
Grafcet, se programan las
receptividades asociadas a las
transiciones y acciones asociadas a Pg. Grafcet
Page Grafcet Receptividades
Rceptivits
las etapas y o a las etapas de CHARt
CHART
macroetapas (vase cp....), (8
(8 pages)
pgs) Acciones
Actions
el tratamiento posterior (POST) pro- Subprograma
Sous-programme
gramado en LD, ST o IL. Se ejecuta SRi
despus de Grafcet, Tratamiento
Traitement
los subprogramas SRi (i = 0 a 253). Los Subprograma
Sous-programme
postrieur
posterior SRi
SRi
mdulos de subprograma, se POST
POST
programan como entidades separadas
y las llamadas a los subprogramas se
efectan en el tratamiento preliminar,
posterior, en las acciones asociadas a
las etapas o desde otros subprogramas
(8 imbricaciones mximo).
___________________________________________________________________________
1/40
A
Generalidades PL7 1
%I %Q %I %Q
T.I. T.I.
%I %Q %I %Q
T.I. T.I. T.I. T.I.
Perodo Perodo
___________________________________________________________________________
1/42
A
Generalidades PL7 1
___________________________________________________________________________
1/43
A
Nota
Tambin es posible acceder a estas informaciones de forma explcita desde el editor de
configuracin.
___________________________________________________________________________
1/44
A
Generalidades PL7 1
- Prioridad +
MAST FAST
Horno_1(Grafcet) Vig_Sec(LD)
PRL(LD)
Alarma_Horno(ST)
CHART
Secado(LD) SR0
Limpieza(ST)
___________________________________________________________________________
1/46
A
Generalidades PL7 1
ETS
Suceso
ETS ETS ETS E TS ETS
Rpida
Maestra E T T S E T T S E T
Sistema
20 ms 20 ms 20 ms 20 ms
___________________________________________________________________________
1/47
A
___________________________________________________________________________
1/48
A
Generalidades PL7 1
___________________________________________________________________________
1/49
A
IT
La aparicin de un suceso desva el
programa de aplicacin hacia el
r
Tratamiento
de suceso tratamiento asociado a la va de entrada/
(tarea EVTi) salida que activ el suceso:
Nota:
En el caso de los mdulos TOR TSX DEY16FK, TSX DMY28FK o TSX DMY28RFK, la entrada
que ha generado el suceso no debe ser controlada en el tratamiento de sucesos (el valor no
es actualizado). La prueba del flanco que ha iniciado el suceso debe ser efectuada en la palabra
de estado:
%IWxy.i:X0 = 1 --> flanco ascendente
%IWxy.i:X1 = 1 --> flanco descendente
___________________________________________________________________________
1/51
A
Observaciones
En el TSX 37, no deben intercambiarse en un tratamiento de suceso los mdulos
de entradas analgicas que slo pueden utilizarse en la tarea MAST.
Los intercambios de las entradas/salidas asociadas a la tarea EVTi y utilizadas
por el programa se realizan mediante va (para los mdulos de contaje) o
mediante grupo de vas (para los mdulos TON). Por esta razn, si el tratamiento
modifica por ejemplo las salidas 2 y 3 de un mdulo TON, es la imagen de las
salidas 0 a 7 la que se transferir al mdulo.
En el TSX 37, para cada tratamiento de suceso, es posible declarar como mximo
los intercambios de 2 mdulos en entrada (antes del tratamiento del suceso) y
2 mdulos en salida (despus del tratamiento del suceso).
Para las E/S TON, un intercambio implica un grupo de 8 vas. Se genera al utilizar
las entradas de un grupo de 8 vas (otro que el grupo de vas que genera el suceso)
y al escribir las salidas de un grupo de 8 vas.
Para las E/S ANA o las E/S de otra funcin especfica, un intercambio se genera al
utilizar las entradas de una va (otra que la va que genera el suceso al escribir las
salidas de una va).
Espera de secado
16 lneas y 11 columnas %L
(para los autmatas TSX/ %I1.0 %M12 %I3.7 %Q2.5
PMX/PCX 57) 7 lneas y
%TM4.Q %M17
11 columnas (para los
autmatas TSX 37).
%MW4<50
Se divide en 2 reas: %I3.10 %Q4.3 %M27 %TM0 %M25 %MW0:X5
IN Q %MW15 : = %MW18+500
el rea de prueba, en la
TYP : TP
que figuran las TB : 100ms
TM.P : 200
condiciones necesarias MODIF : Y
para una accin, %I1.2 %I1.4 SR1
C
el rea de accin, que
presenta el resultado de
un encadenamiento de
pruebas.
___________________________________________________________________________
2/1
A
___________________________________________________________________________
2/3
A
Bloques de operacin
___________________________________________________________________________
2/4
A
Lenguaje de contactos 2
Columnas 1 2 3 4 5 6 7 8 9 10 11
Formulario de programacin EVT FAST MAST AUX
%L
Lneas
1
6
7
Barras de
8 potencial
9
10
11
12
13
14
15
16
Area de prueba
Area de accin
___________________________________________________________________________
2/5
A
2.2-2 Etiqueta
La etiqueta (opcional) permite marcar una red en una entidad de programa (programa
principal, subprograma, ...).
La sintaxis de la etiqueta es la siguiente: %Li, con i comprendida entre 0 y 999. Se
coloca en la parte superior izquierda en frente de la barra de potencial.
Se puede asignar una
etiqueta a una sola red %M20 %L245
dentro de una misma
entidad de programa.
En cambio, es necesario
poner etiqueta a una red
% L2 4 5
para permitir una
%M3 %I1.6 %MW1:X2 %Q2.1
desviacin despus de un
salto de programa. %TM4.D
El orden de las etiquetas no tiene importancia (es el orden de introduccin de las redes
que el sistema tiene en cuenta durante la exploracin).
2.2-3 Comentario
El comentario (opcional) se integra en la red y comprende un mximo de 222
caracteres alfanumricos, con los caracteres '(*' y '*)' en cada extremo. Facilita la
interpretacin de la red a la que est asignado.
___________________________________________________________________________
2/6
A
Lenguaje de contactos 2
derecha,
para los enlaces vertica-
les, en ambos sentidos.
%L
Area de prueba %M9 %MN0 %I6.8 %C2.D
S R
Contiene: TB : 100ms %MW8:X4
___________________________________________________________________________
2/7
A
Area de accin
%L
Contiene:
%M52
las bobinas directas, in-
versas, de conexin y %MW8:X1 %MW8:X10
/
desconexin, que %M8 %Q6.5
pueden asignarse a S
%M12
todos los objetos bits que R
el usuario puede escribir,
%MW2 := %MW0+1
los bloques de
operacin,
las dems "bobinas":
Call, Jump, Halt, Return.
%I3.7 %M12
R
%S4 %Q2.6
S
%M8 %M30
%M9 %M31
%M10 %M32
/
%M11 %M33
C
%M12 %M34
%M13 %M35
R
%M14 %M36
S
%M15 %M37
%M16 %M38
___________________________________________________________________________
2/8
A
Lenguaje de contactos 2
%I6.5 %Q3.3
P /
16 lneas (7 lneas para %M53 %MW3:X6
TSX37) de contactos
%MW8:X4 %M27
independientes.
%M12 %M68
S
%M8 %M30
C
%M9 %M31
%M10 %M32
P /
%M11 %M33
%M12 %M34
%M13 %M35
S
%M14 %M36
C
%M15 %M37
%M16 %M38
P /
diferentes principios
enunciados. A C F
%C4
Contador/Descontador 2 columnas
Comparador "vertical" 4 lneas
%TM10
Temporizadores 2 columnas
Monoestable 3 lneas
Registro
Programador cclico
Observacin:
___________________________________________________________________________
2/10
A
Lenguaje de contactos 2
%MW10:X5
%MW22 : = %MW1+%MW9
Ejemplo:
El nmero de entradas y de entradas/salidas es de 4,
el nmero de salidas y de entradas/salidas es de 3, la
altura del bloque es 4+1=5 columnas.
Observaciones:
Un bloque de funcin DFB debe tener por lo menos
una entrada booleana cableada.
Las entradas, salidas o entradas/salidas
numricas del bloque no estn cableadas. En
estos puntos se asocian objetos mencionados en
la celda colocada frente al punto.
Las entradas no cableadas de los bloques de
funcin DFB conservan el valor anterior a la llamada
o el valor de inicializacin si el bloque jams ha
sido llamado con esta entrada introducida o
cableada.
___________________________________________________________________________
2/11
A
%L
%L
Las variables internas de bloques y las salidas grficas son objetos que pueden ser
explotados a distancia desde otra parte del programa.
___________________________________________________________________________
2/12
A
Lenguaje de contactos 2
Red
conexa 2
%M %Q2.6
INIT %M
Red
conexa 3
Una red conexa se evala en el sentido de la ecuacin: de arriba abajo, lnea por lnea
y cada lnea de la izquierda a la derecha.
Si se encuentra un enlace vertical de convergencia, se evala la subred asociada
(segn la misma lgica) antes de continuar la evaluacin de la red que la engloba.
Respetando este orden de ejecucin, el sistema:
evala el estado lgico de cada contacto, segn el valor actual de los objetos
internos de la aplicacin o del estado de las entradas de los mdulos E/S adquiridas
en el inicio del ciclo,
ejecuta los tratamientos asociados a funciones, a bloques de funcin y a
subprogramas,
actualiza los objetos bits asociados a bobinas (las salidas de los mdulos E/S se
actualizan al final del ciclo),
desva hacia otra red etiquetada del mismo mdulo de programa (salto a otra red
->>%Li), regresa al mdulo que llama <RETURN> o detiene el programa <HALT>.
Nota
Una red de contactos no debe contener redes conexas imbricadas.
___________________________________________________________________________
2/13
A
evaluacin de la red
%L
hasta que se encuentre
el primer enlace vertical A B C E H
de convergencia: con- D
tactos A, B, C,
F G
evaluacin de la primera
subred: contacto D,
continuacin de la
evaluacin de la red
hasta que se encuentre
el segundo enlace verti-
cal de convergencia:
contacto E,
evaluacin de la
segunda subred:
contactos F y G,
evaluacin de la
bobina H.
%L
%M %M8 %Q2.9
Ejemplo de red que
contiene bloques %M2 %T1
Orden de evaluacin: E D
%M9
bobina 1: %M0, %M8, C R
%M2, %T1, %Q2.9,
bobina 2: %T1.R, %T2, %T1.D %T2
%M9, E D
___________________________________________________________________________
2/14
A
Captulo 33
Lenguaje Lista de instrucciones
3 Lenguaje Lista de instrucciones
3.1 Presentacin del lenguaje Lista de instrucciones
3.1-1 Principio
Un programa escrito en lenguaje Lista de instrucciones se compone de una serie de
instrucciones ejecutadas secuencialmente por el autmata.
___________________________________________________________________________
3/1
A
3.1-2 Instrucciones
Instrucciones de base
(para ms amplia informacin sobre las instrucciones, vase el apartado B)
Designacin Instrucciones Funciones equivalentes
AND, ANDN,
ANDR, ANDF
P N
AND(, OR(
(8 niveles de parntesis)
MPS
MRD
MPP
N Negacin
___________________________________________________________________________
3/2
A
Lenguaje Lista de instrucciones 3
Ejemplo:
LD[%MW10<1000] El resultado es 1 cuando %MW10<1000.
Elementos [.......] Realizan operaciones aritmticas, lgicas...
de accin Utilizan la sintaxis del lenguaje literal estructurado
(vase la seccin B).
Ejemplo:
[%MW10:=%MW0+100] El resultado de la operacin %MW0+100 se coloca
en la palabra interna %MW10.
___________________________________________________________________________
3/3
A
3.2-2 Comentario
El comentario puede integrarse en el principio de una sentencia y ocupar un mximo
de 3 lneas (es decir, 222 caracteres alfanumricos), con los caracteres '(*' y '*)' en los
extremos. Facilita la interpretacin de la sentencia relacionada, pero no es obligatorio.
Los comentarios se muestran nicamente a partir de la primera lnea de la sentencia.
Cuando se elimina una sentencia, se elimina tambin el comentario asociado.
Los comentarios se almacenan en el autmata, donde quedan a la disposicin del
usuario en todo momento. Por consiguiente, consumen memoria de programa.
3.2-3 Etiqueta
La etiqueta (opcional) permite marcar una sentencia en una entidad de programa
(programa principal, subprograma, ...).
La etiqueta tiene la sintaxis siguiente: %Li, con i comprendida entre 0 y 999 y se coloca
en el principio de una sentencia.
Una etiqueta puede asignarse a una sola sentencia dentro de una misma entidad de
programa.
En cambio, es necesario poner etiqueta a una sentencia para permitir una desviacin
despus de un salto de programa.
El orden de las etiquetas no tiene importancia; es el orden de introduccin de las
sentencias que el sistema tiene en cuenta durante la exploracin.
___________________________________________________________________________
3/4
A
Lenguaje Lista de instrucciones 3
LD %I1.0
AND %I1.1
OR %I1.2
ST %Q2.0
LD %l1.0
AND( %I1.1
OR %l1.2
)
ST %Q2.0
Ejemplo: OR(
%I1.0 %I1.1 %Q2.0
LD %I1.0
AND %I1.1
%I1.2 %I1.3 OR( %I1.2
AND %I1.3
)
ST %Q2.0
___________________________________________________________________________
3/5
A
Imbricacin de parntesis
Es posible imbricar hasta 8 niveles de parntesis.
Ejemplo
Ejemplo
Nota
Cada parntesis abierto debe cerrarse imperativamente.
No deben colocarse en expresiones entre parntesis las etiquetas %Li:, ni las instrucciones
de salto JMP o las instrucciones de llamada al subprograma SRi.
No deben programarse entre parntesis las instrucciones de asignacin ST, STN, S y R.
___________________________________________________________________________
3/6
A
Lenguaje Lista de instrucciones 3
LD %I1.0
MPS
MPS
AND( %I1.3
%M1 %Q2.1 OR %M0
)
ST %Q2.0
%I1.4 %Q2.2 MPP
AND %M1
ST %Q2.1
%M10 %Q2.3
MRD
AND %I1.4
ST %Q2.2
MPP
AND %M10
ST %Q2.3
Nota
Estas instrucciones no pueden utilizarse en una expresin entre parntesis.
___________________________________________________________________________
3/7
A
___________________________________________________________________________
3/9
NOTAS:
S
A
Captulo 44
Lenguaje Literal estructurado
4 Lenguaje Literal estructurado
4.1 Presentacin del lenguaje Literal estructurado
4.1-1 Principio
El lenguaje Literal estructurado permite realizar programas mediante la escritura de
lneas de programacin que constan de caracteres alfanumricos.
Este lenguaje se utiliza nicamente con el software PL7 Junior y PL7 Pro en los
autmatas TSX/PMX/PCX 57. En la versin PL7 Pro, este lenguaje permite la creacin
de los bloques de funcin del usuario DFB.
La sentencia literal constituye la entidad de base del lenguaje Literal. El conjunto de
sentencias permite definir un programa.
Las principales instrucciones del lenguaje Literal son:
instrucciones para bits,
instrucciones aritmticas y lgicas para palabras y dobles palabras,
instrucciones aritmticas para flotantes,
comparaciones numricas para palabras, dobles palabras y flotantes,
conversiones numricas,
instrucciones para tablas de bits, de palabras, de dobles palabras y de flotantes,
instrucciones para cadenas de caracteres,
comparaciones alfanumricas,
instrucciones de gestin de tiempo,
instrucciones para el programa,
instrucciones de control,
instrucciones para los bloques de funcin estndar,
instrucciones para los intercambios explcitos,
instrucciones de tipo funciones especficas (comunicacin, regulacin, etc ...).
Ejemplo:
___________________________________________________________________________
4/1
A
4.1-2 Instrucciones
Instrucciones para bits
Designacin Funcin
:= Asignacin de un bit
OR O booleana
AND Y booleana
XOR O exclusiva booleana
NOT Inversin
RE Flanco ascendente
FE Flanco descendente
SET Puesta a 1
RESET Puesta a 0
Designacin Funcin
< Estrictamente inferior a
> Estrictamente superior a
<= Inferior o igual a
>= Superior o igual a
= Igual a
<> Diferente de
Tablas de bits
Designacin Funcin
___________________________________________________________________________
4/2
A
Lenguaje Literal estructurado 4
Designacin Funcin
AND Y lgica
OR O lgica
XOR O lgica exclusiva
NOT Complemento lgico
SHL Desplazamiento lgico a la izquierda
SHR Desplazamiento lgico a la derecha
ROL Desplazamiento lgico circular a la izquierda
ROR Desplazamiento lgico circular a la derecha
Designacin Funcin
Tabla := Tabla Asignacin entre dos tablas
Tabla := Palabra Inicializacin de una tabla
+, -, *, /, REM Operaciones aritmticas entre tablas
+, -, *, /, REM Operaciones aritmticas entre expresiones y tablas
SUM Suma de los elementos de una tabla
EQUAL Comparacin de dos tablas
NOT Complemento lgico de una tabla
AND, OR, XOR Operaciones lgicas entre dos tablas
AND, OR, XOR Operaciones lgicas entre expresiones y tablas
FIND_EQW, FIND_EQD Bsqueda del primer elemento igual a un valor
FIND_GTW, FIND_GTD Bsqueda del primer elemento superior a un valor
FIND_LTW, FIND_LTD Bsqueda del primer elemento inferior a un valor
MAX_ARW, MAX_ARD Bsqueda del valor mximo en una tabla
MIN_ARW, MIN_ARD Bsqueda del valor mnimo en una tabla
OCCUR_ARW, OCCUR_ARD Nmero de ocurrencias de un valor en una tabla
SORT_ARW, SORT_ARD Orden por orden ascendente o descendente de una tabla
ROL_ARW, ROL_ARD Desplazamiento circular a derecha de una tabla
ROR_ARW, ROR_ARD Desplazamiento circular a izquierda de una tabla
FIND_EQWP,FIND_EQDP Bsqueda del primer elemento igual a un valor desde un rango
LENGTH_ARW, LENGTH_ARD Clculo de la longitud de una tabla
___________________________________________________________________________
4/4
A
Lenguaje Literal estructurado 4
Designacin Funcin
Tabla := Tabla Asignacin entre dos tablas
Tabla := Flotante Inicializacin de una tabla
SUM_ARR Suma de los elementos de una tabla
EQUAL_ARR Comparacin de dos tablas
FIND_EQR Bsqueda del primer elemento igual a un valor
FIND_GTR Bsqueda del primer elemento superior a un valor
FIND_LTR Bsqueda del primer elemento inferior a un valor
MAX_ARR Bsqueda del valor mximo en una tabla
MIN_ARR Bsqueda del valor mnimo en una tabla
OCCUR_ARR Nmero de ocurrencias de un valor en una tabla
SORT_ARR Orden por orden ascendente o descendente
ROL_ARR Desplazamiento circular a la izquierda de una tabla
ROR_ARR Desplazamiento circular a la derecha de una tabla
LENGTH_ARR Clculo de longitud de una tabla
Designacin Funcin
STRING_TO_INT Conversin ASCIIBinario (palabra simple formato)
STRING_TO_DINT Conversin ASCIIBinario (palabra doble formato)
INT_TO_STRING Conversin Binario(palabra simple formato) ASCII
DINT_TO_STRING Conversin Binario(palabra doble formato) ASCII
STRING_TO_REAL Conversin ASCIIFlotante
REAL_TO_STRING Conversin FlotanteASCII
<, >, <=, >=, =, <> Comparacin alfanumrica
FIND Posicin de una subcadena
EQUAL_STR Posicin del primer carcter diferente
LEN Longitud de una cadena de caracteres
MID Extraccin de una subcadena
INSERT Insercin de una subcadena
DELETE Supresin de una subcadena
CONCAT Concatenacin de dos cadenas
REPLACE Reemplazo de una cadena
LEFT Inicio de cadena
RIGHT Fin de cadena
___________________________________________________________________________
4/5
A
Instrucciones "Orphe"
Designacin Funcin
WSHL_RBIT, DSHL_RBIT Desplazamiento a la izquierda en una palabra con
recuperacin de bits desplazados
WSHR_RBIT, DSHR_RBIT Desplazamiento a la derecha en una palabra con
extensin de sighno y recuperacin de bits desplazados
WSHRZ_C, DSHRZ_C Desplazamiento a la derecha en una palabra con rellenado con
0 y recuperacin de bits desplazados
SCOUNT Contaje/descontaje con sealizacin y rebasamiento
ROLW,ROLD Desplazamiento circular izquierdo
RORW,RORD Desplazamiento circular derecho
Instrucciones de temporizacin
Designacin Funcin
FTON Temporizacin en la conexin
FTOF Temporizacin en la desconexin
FTP Temporizacin de impulsin
FPULSOR Generador de seales rectangulares
Todas estas funciones e instrucciones, as como las instrucciones para los bloques
de funcin estndar, se detallan en la seccin B de este manual de referencia.
Las instrucciones y funciones para los intercambios explcitos y para las funciones
especficas se detallan en el "Manual de instalacin de funciones especficas".
Las estructuras de control se detallan en el prrafo 4.2-5 de esta seccin.
___________________________________________________________________________
4/6
A
Lenguaje Literal estructurado 4
4.2-2 Comentario
Un comentario tiene como elemento inicial y final los caracteres (* y *). Puede colocarse
en cualquier sitio en la sentencia. No se limita el nmero de comentarios por sentencia.
El comentario (opcional) facilita la interpretacin de la sentencia a la que est
asignado.
Todos los caracteres estn autorizados en un comentario.
El nmero de caracteres se limita a 256 por comentario.
Se prohiben los comentarios imbricados.
Un comentario puede constar de varias lneas.
Los comentarios se almacenan en el autmata para que el usuario pueda acceder a
ellos en todo momento. A este ttulo, consumen memoria de programa.
___________________________________________________________________________
4/7
A
4.2-3 Etiqueta
La etiqueta permite marcar una sentencia en una entidad de programa (programa
principal, subprograma, ...). Es opcional.
La etiqueta tiene la sintaxis siguiente : %Li con i comprendido entre 0 y 999. Se
posiciona en el inicio de sentencia. Una etiqueta puede asignarse a una sola sentencia
dentro de una misma entidad de programa (SR, Main, Mdulo de programa).
En cambio, es necesario etiquetar una sentencia para permitir una desviacin
despus de un salto de programa.
El orden de las etiquetas no tiene importancia; es el orden de introduccin de
sentencias que el sistema tiene en cuenta durante la exploracin.
4.2-4 Instrucciones
El programa se realiza a partir de instrucciones. Una sentencia literal puede contener
varias instrucciones. El carcter ';' debe ser obligatoriamente el ltimo elemento de
cada instruccin.
___________________________________________________________________________
4/8
A
Lenguaje Literal estructurado 4
Sintaxis Funcionamiento
Inicio de IF
IF condicin THEN
no verificada
CONDICION
acciones; verificada
ACCIONES
END_IF;
fin de IF
Ejemplo:
___________________________________________________________________________
4/9
A
Forma general
Sintaxis Funcionamiento
Inicio de IF
IF condicin 1 THEN
verificada
CONDICION 1
accin 1; no verificada
ACCION 1
ELSIF condicin 2 THEN
verificada
CONDICION 2
accin 2; no verificada
ACCION 2 ACCION 3
ELSE
fin de IF
accin 3;
END_IF;
Ejemplo:
___________________________________________________________________________
4/10
A
Lenguaje Literal estructurado 4
ACCION
END_WHILE; fin de WHILE
Ejemplo:
___________________________________________________________________________
4/11
A
Sintaxis Funcionamiento
inicio de REPEAT
REPEAT
ACCION
accin;
CONDICION
no verificada
UNTIL condicin END_REPEAT; verificada
fin de REPEAT
Ejemplo:
___________________________________________________________________________
4/12
A
Lenguaje Literal estructurado 4
Sintaxis Funcionamiento
inicio de FOR
FOR ndice := valor inicial TO valor final DO
VALOR INICIAL INDICE
accin;
verdadero
INDICE >
END_FOR; VALOR FINAL fin
de FOR
falso
ACCION Continuacion
INDICE + 1 INDICE
Ejemplo:
___________________________________________________________________________
4/13
A
Ejemplo:
En este ejemplo, la palabra clave EXIT permite detener el bucle REPEAT pero no el
bucle WHILE.
___________________________________________________________________________
4/14
A
Lenguaje Literal estructurado 4
Ejemplo:
NOT %MW3 * 25 AND %MW10 + %MW12
En este ejemplo, NOT se efecta en %MW3 y el resultado se multiplica por 25. Luego,
se calcula la suma de %MW10 yt %MW12 y se efecta una Y lgica entre el resultado
de la multiplicacin y la adicin.
___________________________________________________________________________
4/15
A
Cuando hay un conflicto entre dos operadores de mismo nivel de prioridad, es el primer
operador que lleva ventaja (la evaluacin se efecta de la izquierda a la derecha).
Ejemplo:
%MW34 * 2 REM 6
En este ejemplo, %MW34 se multiplica primero por 2, y luego el resultado se
utiliza para realizar el mdulo.
___________________________________________________________________________
4/16
A
Lenguaje Literal estructurado 4
Conversiones implcitas
Las conversiones implcitas implican las palabras y las dobles palabras. Los operadores,
que se utilizan en las expresiones aritmticas y en las comparaciones, y el operador de
asignacin efectan estas conversiones implcitas (que, por consiguiente, el usuario no
tiene que efectuar).
Para una instruccin en la forma: <operando 1> <operador> <operando 2>, las
conversiones posibles son:
Nota
Todas las operaciones entre dos valores inmediatos se efectan en doble longitud.
___________________________________________________________________________
4/17
NOTAS:
S
A
Captulo
Lenguaje Grafcet 5
5
5 Lenguaje Grafcet
5.1 Presentacin del lenguaje Grafcet
5.1-1 Nota sobre los principios del Grafcet
El lenguaje Grafcet es conforme al lenguaje "Diagrama funcional en secuencia" (SFC)
de la norma IEC 1131-3.
El Grafcet permite representar grficamente y de forma estructurada el funcionamiento
de un automatismo secuencial.
Esta descripcin grfica del comportamiento secuencial del automatismo y de las
situaciones que son su consecuencia se efecta mediante smbolos grficos sencillos:
Representacin grfica
Macroetapas
Secuencia dosificacin
Secuencia llenado
Grfico principal
Secuencia mezcla
Secuencia evacuacin
___________________________________________________________________________
5/3
A
(1) E l nmero mximo de etapas (etapas del grfico principal + etapas de macroetapas)
en la seccin Grafcet no debe sobrepasar 1024 en TSX 57.
___________________________________________________________________________
5/4
A
Lenguaje Grafcet 5
___________________________________________________________________________
5/5
A
___________________________________________________________________________
5/6
A
Lenguaje Grafcet 5
Bits asociados a las etapas %Xi, a las macroetapas %XMi, y a las etapas de
macroetapas %Xj.I , %Xj.IN y %Xj.OUT
Estn en 1 cuando las etapas estn activas.
Estos bits pueden ser probados en todas las tareas, pero slo pueden escribirse en
el tratamiento preliminar de la tarea maestra (preposicionamiento de los grficos).
Estas pruebas y acciones se programan ya sea en lenguaje de contactos, en
lenguaje lista de instrucciones o en lenguaje literal.
Estos bits son indexables.
___________________________________________________________________________
5/7
A
Ejemplo de TSX 57 :
El tratamiento secuencial est estructurado en:
1 subconjunto: Grfico principal,
64 subconjuntos: Macroetapas
Estos subconjuntos se subdividen a su vez en pginas (vase esquema que sigue).
Macroetapa12
Pg. 8
Posibilidades mximas
ofrecidas por el
8 pginas
tratamiento secuencial:
Pg. 3 250 etapas
1024 etapas (etapas del
mximo
grfico principal + etapas
de macroetapas) Pg. 2
+ Etapa IN
64 Macroetapas
Pg. 1
+ Etapa OUT
+ Macroetapas
Macroetapa 63
Pg. 8
8 pginas
Pg. 3
250 etapas
Pg. 2 mximo
Pg. 1 + Etapa IN
+ Etapa OUT
+ Macroetapas
___________________________________________________________________________
5/8
A
Lenguaje Grafcet 5
Reglas de escritura
La primera lnea permite introducir remisiones de origen.
La ltima lnea permite introducir remisiones de destino.
Las lneas pares (de 2 a 12) son lneas de etapa (para las etapas y las remisiones
de destino).
Las lneas impares (de 3 a 13) son lneas de transicin (para las transiciones y las
remisiones de origen).
Un nmero diferente (de 0 a 127) marca cada etapa (el orden no tiene importancia).
Es posible representar varios grficos en una misma pgina.
___________________________________________________________________________
5/9
A
___________________________________________________________________________
5/10
A
Lenguaje Grafcet 5
___________________________________________________________________________
5/11
A
Pg. 2
Las remisiones de origen de un
encaminamiento deben introducirse en
la misma pgina que la etapa de destino.
___________________________________________________________________________
5/12
A
Lenguaje Grafcet 5
Pg. 3
Enlaces orientados
Los enlaces orientados vinculan
una etapa a una transicin o una
transicin a una etapa. Pueden
ser verticales o horizontales.
Los enlaces orientados pueden:
- cruzarse : son entonces de
naturaleza diferente,
- encontrarse : son entonces de
misma naturaleza.
Es imposible que un enlace cruce
una activacin o una
desactivacin simultnea de
etapas.
___________________________________________________________________________
5/13
A
Comentarios
En una pgina Grafcet, un
comentario puede introducirse en
cualquier celda. El texto del
comentario se encuentra entre (*
a la izquierda y *) a la derecha. Su
tamao mximo es de 64
caracteres.
Un comentario ocupa dos celdas
contiguas en dos lneas
mximas. Si el rea de
visualizacin es demasiado
pequea, el comentario se trunca
en la pantalla, pero al imprimir la
documentacin, el comentario se
presenta por completo.
El comentario introducido en una
pgina Grafcet se almacena en
las informaciones grficas
transferidas al autmata.
___________________________________________________________________________
5/14
A
Lenguaje Grafcet 5
5.6 Macroetapas
Una macroetapa es una representacin de un conjunto de etapas y de transiciones
denominado expansin de la macroetapa. Esta se caracteriza por una etapa de
entrada y una etapa de salida.
5.6-1 Principio
IN
Una macroetapa es la simbolizacin grfica de
una secuencia.
Se distingue por una etapa que tiene dos rayas 1 1 11
horizontales.
La etapa de entrada responde a las mismas reglas M1 2 12
que las otras etapas.
La etapa de salida no puede tener acciones 2 13
asociadas.
3 OUT
13
OUT
___________________________________________________________________________
5/15
A
5.6-2 Caractersticas
El lenguaje Grafcet PL7 autoriza la programacin de 64 macroetapas M0 a M63.
La expansin de una macroetapa constituida por una o varias secuencias, es
programable como mximo en 8 pginas y comprende un mximo de 250 etapas ms
la etapa IN y la etapa OUT.
Una macroetapa puede contener una o varias macroetapas.
Esta jerarqua es posible hasta 64 niveles.
El anlisis de una aplicacin puede ser estructurado de manera que proporcione un
enfoque global y luego detallado de las diferentes operaciones que se van a realizar.
0 IN IN
M0 M1 1 M4
1 1 M2 12
2 2
OUT OUT
Hacia un anlisis detallado
Vers une analyse dtaille
12
13 21
___________________________________________________________________________
5/16
A
Lenguaje Grafcet 5
Marcar acciones
Estas acciones se marcan de la manera siguiente:
MAST - <nombre seccin Grafcet> - CHART (o MACROk)- PAGE n %Xi x
con: x = P1 Activacin
= N1 Continua
= P0 Desactivacin
n = Nmero de la pgina
i = Nmero de la etapa
Ejemplo: MAST - Pintura - CHART - PAGE 0 %X1 P1
Accin al activar la etapa 1 de la pgina 0 de la seccin Pintura
Reglas de utilizacin
Todas las acciones se consideran como acciones memorizadas; por consiguiente:
- una accin servocontrolada la duracin de la etapa Xn debe ponerse a cero cuando
la etapa Xn se desactiva o cuando la etapa Xn+1se activa.
- una accin con efecto mantenido en varias etapas se posiciona a 1 cuando la etapa
Xn se activa y se pone a 0 cuando la etapa Xn+m se desactiva.
Todas las acciones pueden servocontrolarse por condiciones lgicas, por
consiguiente, ser condicionales.
Las acciones sercontroladas a seguridades indirectas deben programarse en el
tratamiento posterior (tratamiento ejecutado en cada exploracin: vase el captulo
5.2 "Organizacin de la tarea maestra").
___________________________________________________________________________
5/17
A
Acciones continuas
Accin condicional
Ejemplo
El bit %M10 est servocontrolada a la entrada %I2.5 o al bit interno %M9 y a la entrada
%I1.2.
Mientras la etapa 2 est activa y estas condiciones estn presentes, %M10 est
posicionada a 1. El ltimo estado ledo al desactivar se almacena puesto que las
acciones asociadas ya no se exploran.
Es pues necesario poner a 0 el bit %M10 en la accin al desactivar la etapa, por
ejemplo.
___________________________________________________________________________
5/18
A
Lenguaje Grafcet 5
___________________________________________________________________________
5/19
A
___________________________________________________________________________
5/20
A
Lenguaje Grafcet 5
la estructura general:
- sin etiqueta (%L),
- sin sentencias de accin, ni sentencias condicionales o sentencias iterativas.
la lista de instrucciones:
- sin accin sobre el objeto bit,
- sin saltos, ni llamadas de subprograma,
- sin transferencias, ni instrucciones de accin para bloques.
___________________________________________________________________________
5/21
A
Ejemplo
Si se desea permanecer en la etapa 3 durante 15 segundos, la receptividad asociada
a la transicin entre la etapa 3 y la etapa 4 ser la de la pantalla siguiente (por ejemplo,
en lenguaje Literal estructurado).
___________________________________________________________________________
5/22
A
Lenguaje Grafcet 5
Seccin Grafcet
Tratamiento preliminar:
Permite tratar:
las inicializaciones al reanudar tras
corte de corriente o falla, Tratamiento Preliminar
preposicionar el grfico, Lenguaje de contactos,
lgica de entrada. lista de instrucciones
o literal
Tratamiento secuencial:
Tratamiento Secuencial
Permite tratar el esquema secuencial de
Grafcet
la aplicacin y da acceso al tratamiento de
las receptividades y acciones
directamente asociadas a las etapas.
Tratamiento Posterior
Lenguaje de contactos,
lista de instrucciones
Tratamiento posterior: o literal
Permite tratar:
la lgica de salida,
la supervisin de las seguridades
indirectas especficas a las salidas.
___________________________________________________________________________
5/23
A
Nota
Si se trata de la puesta a cero de una etapa cuando sta se desactiva, las acciones no se ejecutan.
___________________________________________________________________________
5/24
A
Lenguaje Grafcet 5
Utilizacin
Cuando el programa de usuario efecta la gestin, %S21 debe ponerse a 0 o a 1
en el tratamiento preliminar.
Utilizacin
- Este bit debe tener el valor 1 en el tratamiento preliminar.
- El sistema pone %S22 a cero; por consiguiente, es intil ponerlo a 0 desde el
programa o el terminal.
Para rearrancar el tratamiento secuencial en una situacin dada, el usuario debe
prever segn su aplicacin un procedimiento de inicializacin o de preposicionamiento
del Grafcet.
___________________________________________________________________________
5/25
A
Utilizacin
- El programa de usuario efecta la gestin de este bit que debe ponerse a 1 o a 0
en el tratamiento preliminar.
- El bit %S23 asociado a los bits %S21 y %S22 permite inmovilizar el tratamiento
secuencial al estado inicial o al estado 0. Asimismo, el Grafcet puede preposicionarse
y luego inmovilizarse mediante %S23.
___________________________________________________________________________
5/26
A
Lenguaje Grafcet 5
Utilizacin
- este bit debe escribirse en 1 nicamente en el tratamiento preliminar,
- la puesta en 0 de %S24 es manejada por el sistema, est prohibido entonces
volver a ponerlo a por programa o por el terminal.
XM15 . . . . . . . . . . . . . . XM0
%SW23
%SW24
F %SW25 0
XM63 . . . . . . . . . . . . . . XM48
___________________________________________________________________________
5/27
A
Principio de evolucin
La gestin de la evolucin del Grafcet se efecta de la manera descrita a continuacin.
Fase 1
1. Evaluacin de las receptividades de las transiciones validadas.
2. Peticin de desactivacin de las etapas superiores asociadas.
3. Peticin de activacin de las etapas inferiores implicadas.
Fase 2
Evolucin de la situacin del Grafcet en funcin de las transiciones alcanzadas:
1. Desactivacin de las etapas encima de las transiciones alcanzadas.
2. Activacin de las etapas debajo de las transiciones alcanzadas.
3. Invalidacin de las transiciones alcanzadas.
4. Validacin de las transiciones debajo de las nuevas etapas activadas.
El sistema actualiza dos tablas dedicadas respectivamente a la actividad de las etapas
y a la validez de las transiciones:
la tabla de actividad de las etapas memoriza, para el ciclo actual, las etapas activas,
las etapas que se deben activar y desactivar,
la tabla de validez de las transiciones memoriza, para el ciclo actual, las transiciones
situadas debajo de las etapas relativas a la tabla previa.
Fase 3
Las acciones asociadas a las etapas activas se ejecutan en el orden siguiente:
1. Acciones al desactivar las etapas que se deben desactivar.
2. Acciones al activar las etapas que se deben activar.
3. Acciones continuas de las etapas activas.
___________________________________________________________________________
5/28
A
Lenguaje Grafcet 5
___________________________________________________________________________
5/29
A
___________________________________________________________________________
5/30
A
Lenguaje Grafcet 5
___________________________________________________________________________
5/31
NOTAS:
S
A
Captulo
Bloques de funcin DFB 6
6
6 Bloques de funcin DFB
6.1 Presentacin de los bloques de funcin DFB
6.1-1 Generalidades
El software PL7-Pro ofrece al usuario la posibilidad de crear sus propios bloques de
funcin para responder a las especificidades de sus aplicaciones.
___________________________________________________________________________
6/1
A
Caractersticas generales
Estos objetos son datos internos al DFB, y son puramente simblicos (sin
direccionamiento en forma de variable). Para cada parmetro o variable utilizada, el
programador del bloque de funcin Tipo DFB define:
un nombre de 8 caracteres mximo (1),
un tipo de objeto (vase tabla que sigue),
un comentario opcional de 80 caracteres mximo,
un valor opcional (excepto para los parmetros Entradas/Salidas),
(1) se autorizan las letras no acentuadas, los dgitos, el carcter "_"; el primer carcter
debe ser una letra; las palabras clave y los smbolos estn prohibidos.
___________________________________________________________________________
6/3
A
Nota: todo bloque DFB debe tener por lo menos una entrada booleana.
___________________________________________________________________________
6/4
A
Bloques de funcin DFB 6
El cdigo del bloque de funcin DFB no puede utilizar ni los objetos de entradas/
salidas (%I,%Q...), ni los objetos globales de la aplicacin (%MW,%KW...) excepto los
bits y palabras sistema %S y %SW.
___________________________________________________________________________
6/5
A
En la validacin, el editor DFB verifica la sintaxis del cdigo y la adecuacin con las
variables introducidas en la interface. En caso de error, el primer error se muestra en
vdeo inverso.
Nota: si se desea salir sin validar el cdigo, hay que exportar el DFB para guardarlo:
borrar el conjunto del cdigo antes de salir.
___________________________________________________________________________
6/6
A
Bloques de funcin DFB 6
binario: este formato no es editable; el DFB importado con ese formato se puede leer
o modificar segn el grado de proteccin asignado.
A partir de los archivos de origen o binario, el usuario podr crear su propia biblioteca.
Nota:
Durante la importacin de una seccin en una aplicacin, es necesario importar los tipos DFB
que se utilizan en esta seccin.
___________________________________________________________________________
6/7
A
Es posible crear tantas instancias como se desee (limitado nicamente por el tamao
de la memoria del autmata) a partir de un mismo tipo de DFB.
Los valores iniciales de las variables pblicas definidas para los bloques de funcin
Tipo DFB pueden ser modificados para cada instancia.
Vigilancia_horno
Una instancia DFB es una copia del Tipo
DFB: DFB Controle
utiliza el cdigo del Tipo DFB, (no hay DWORD WORD
Ecart Accel
duplicacin del cdigo),
crea una rea de datos especfica a WORD BOOL
cada instancia, que es la copia de los Vitesse Erreur
parmetros y de variables del Tipo DFB. BOOL
Enable
Esta rea est situada en el espacio de
datos de la aplicacin. WORD
Accins
Ejemplo de la instancia
"Vigilancia_horno" del
Tipo DFB Control
(1) Los caracteres permitidos son idnticos a los autorizados en los smbolos (vase
apartado1.2-9)
___________________________________________________________________________
6/8
A
Bloques de funcin DFB 6
Las reglas siguientes se deben respetar cualquiera sea el lenguaje que se utilice:
todos los parmetros de entradas de tipo tabla as como los parmetros de entradas/
salidas se deben completar.
los parmetros de entradas no cableados conservan el valor de la llamada o el valor
de inicializacin si el bloque jams ha sido llamado con esta entrada introducida o
cableada.
todos los objetos asignados a los parmetros de entradas, de salidas y de entradas/
salidas deben ser obligatoriamente del mismo tipo que los definidos durante la
creacin del Tipo DFB (por ejemplo: si el tipo WORD es definido para el parmetro
de entrada "velocidad", no se autoriza a asignarle dobles palabras %MDi, %KDi).
La nica excepcin son los tipos BOOL y EBOOL que se pueden mezclar para los
parmetros de entradas o de salidas (no para los parmetros de entradas/salidas:
por ejemplo, el parmetro de entrada "Validacin" puede definirse como BOOL y
tambin puede asociarse a un bit interno %Mi que es de tipo EBOOL, por el contrario,
en el cdigo del tipo DFB el parmetro de entrada tendr realmente la propiedad
de un tipo BOOL, y no podr manejar los flancos.
___________________________________________________________________________
6/9
A
2 bloques de funcin DFB conectados en serie deben ser separados por lo menos
por 2 columnas.
Controle_port_1 1
3 Controle 2
ABS(%MD0 ) DWO RD WO RD %MW8
Ecart 4 5 Acce l
%Q2.1
10000 WO RD BOOL
Vite sse Erreur
%Q2.5
BOOL
Enable
WO RD
6 Operation
%MW100 %MW100 Depassement_tps(Tps_ref_
Actions
Observaciones:
Un bloque de funcin DFB debe tener por lo menos una entrada booleana cableada.
Las entradas, salidas o entradas/salidas numricas del bloque no son cableadas.
A estos puntos se asocian objetos mencionados en la celda que est al lado del
punto.
___________________________________________________________________________
6/10
A
Bloques de funcin DFB 6
La llamada del bloque de funcin DFB constituye una accin, que puede ser colocada
en una fase como para cualquier otra accin del lenguaje.
Ejemplo: Cont_pernos(%I2.0,%MD10,%I2.1,%Q1.0);
Ejemplo: Cont_pernos(%I2.0,%MD10,%I2.1,%Q1.0)]
donde:
E1, ..., En: expresiones (1), objetos o valores inmediatos que sirven de parmetros
efectivos para los parmetros de entradas.
ES1, ..., ESn: parmetros efectivos que corresponden a las entradas/salidas; siempre
son objetos de lenguajes en lectura/escritura.
S1, ..., Sn: parmetros efectivos que corresponden a las salidas; siempre son objetos
de lenguajes en lectura/escritura.
___________________________________________________________________________
6/11
A
6.5 Ejemplo
Cdigo
___________________________________________________________________________
6/13
A
Ejemplo de utilizacin
En este ejemplo el Tipo DFB creado, se utiliza 3 veces (3 instancias DFB) para el
contaje de 3 tipos de piezas. Cuando se alcanza el nmero de piezas programado (en
las palabras %MD10, %MD12, y %MD14), la salida del contador controla la parada
del sistema de abastecimiento de piezas correspondiente.
Cont_pernos
Cpt_boulons
%I1.0
Cont_piezas
Cpt_pices
%Q2.1
BOOL BOOL
Ra z Done
%M D10 DWORD
Preset
Presel
% I1.1
BOOL
Co unt
Cont_tuercas
Cpt_crous
Cpt_pices
Cont_piezas
%I1.2 %Q2.2
BOOL BOOL
Ra z Done
%M D12 DWORD
Presel
Preset
% I1.3
BOOL
Cou nt
Cont_tornillos
Cpt_v is
Cpt_pi ces
% I1.4 Cont_piezas % Q2.3
BOOL BOOL
Raz Done
%MD14 DWORD
Presel
Preset
% I1.5
BOOL
Count
___________________________________________________________________________
6/14
A
Captulo 7
Los mdulos funcionales 7
7 Mdulos funcionales
7.1 Presentacin de los mdulos funcionales
7.1-1 Definicin del mdulo funcional
Un mdulo funcional es una reagrupacin de elementos de programa (secciones,
sucesos, macroetapas, tablas de animacin, etc.) destinadas a realizar una funcin
de automatismo.
Un mdulo funcional
comprende programa y
tablas de animacin
Slo el producto PL7 PRO permite la instalacin de los mdulos funcionales en los
autmatas TSX/PMX/PCX57.
Los mdulos funcionales permiten estructura la aplicacin en funciones y subfunciones
de automatismo.
___________________________________________________________________________
7/1
A
___________________________________________________________________________
7/2
A
Los mdulos funcionales 7
Ejemplo
un nombre largo: 16
caracteres (por ejemplo:
Avanzar/Retroceder
para BT371),
___________________________________________________________________________
7/3
A
Ejemplo
___________________________________________________________________________
7/4
A
Los mdulos funcionales 7
___________________________________________________________________________
7/5
A
Ejemplo
___________________________________________________________________________
7/6
A
Los mdulos funcionales 7
Reglas
1. Una seccin Grafcet slo se puede crear en local y en la tarea Mast nicamente.
2. Una macroetapa o un suceso slo se pueden crear en local.
3. Las otras acciones se autorizan en local con el autmata en Stop o en Run.
4. La proteccin de un mdulo se aplica a todas las secciones vinculadas al mdulo
funcional.
___________________________________________________________________________
7/7
A
Reglas
1. La eliminacin est autorizada en local con el autmata en Stop, pero est prohibida
en Run.
2. Slo se puede eliminar en modo local una seccin Grafcet o una macroetapa.
3. No se puede eliminar un mdulo PRL, Chart o POST sino nicamente desvincularlo.
___________________________________________________________________________
7/8
A
Los mdulos funcionales 7
Reglas
1. Una tabla de animacin se puede crear en local con el autmata en Stop y en Run.
2. Una tabla de animacin se puede eliminar en local con el autmata en Stop y en
Run.
___________________________________________________________________________
7/9
A
___________________________________________________________________________
7/10
A
Los mdulos funcionales 7
7.7-1 Exportar
La exportacin de un mdulo funcional realiza:
la exportacin de las secciones, sucesos y mdulos Grafcet que componen el
mdulo,
la exportacin de los submdulos funcionales que componen el mdulo funcional.
El nombre corto y el nombre de funcin se exportan y por lo tanto se restituyen en el
momento de la importacin.
La funcin Exportacin de un mdulo funcional es accesible en modo local y/o en modo
conectado con el autmata en Stop.
Observacin
Las tablas de animacin no se procesan en el origen PL7: por lo tanto no son ni
exportadas ni importadas sino vinculadas a un mdulo funcional.
7.7-2 Importar
La importacin de un mdulo funcional funciona como una creacin con:
la importacin de secciones, sucesos y mdulos Grafcet que componen el mdulo,
la importacin de los submdulos funcionales que componen el mdulo funcional.
El nombre corto y el nombre de funcin se exportan y por lo tanto se restituyen en el
momento de la importacin.
Si una seccin, un suceso, un mdulo Grafcet, un submdulo funcional que componen
el mdulo funcional importado, ya existe con el mismo nombre, el software permite
introducir uno nuevo.
La importacin de un mdulo funcional permite la correccin de errores en el cdigo
de las secciones, sucesos y mdulos Grafcet asociados al mdulo.
La funcin es accesible en modo local y/o en modo conectado con el autmata en Stop.
Dos procedimientos de importacin estn disponibles:
la importacin sin reasignacin
la importacin con reasignacin.
La importacin con reasignacin permite modificar diferentes elementos:
- Nombre de los mdulos, Seccin, Tarea, Grafcet y macroetapas Evti,
- Nombre de los Smbolos (y comentarios asociados) y Variables,
- Direcciones de los mdulos de E/S,
- DFB: campo comentario y nombre de destino de toda instancia,
- SR y Macroetapas de destino.
___________________________________________________________________________
7/11
NOTAS:
S
Descripcin detallada de las instrucciones Tabla de materias B
y funciones Seccin B
___________________________________________________________________________
Captulo Pgina
1 Descripcin de las instrucciones de base B1/1
Captulo Pgina
___________________________________________________________________________
B/2
Descripcin detallada de las instrucciones Tabla de materias B
y funciones Seccin B
___________________________________________________________________________
Captulo Pgina
2.7-4 Instrucciones lgicas para tablas B2/41
2.7-5 Funcin de suma para tablas B2/42
2.7-6Funciones de comparacin de tablas B2/43
2.7-7 Funciones de bsqueda para tablas B2/45
2.7-8 Funciones de bsqueda de valores mx. y mn.
para tablas B2/47
2.7-9 Nmero de ocurrencias de un valor en una tabla B2/48
2.7-10 Funciones de desplazamiento circular para tablas B2/49
2.7-11 Funciones de ordenacin para tablas B2/51
2.7-12 Funcin de clculo de longitud de tablas B2/52
___________________________________________________________________________
B/3
B Descripcin detallada de las instrucciones Tabla de materias
y funciones Seccin B
___________________________________________________________________________
Captulo Pgina
2.9-7 Lectura del da de la semana B2/81
2.9-8 Agregar/quitar una duracin en una fecha B2/82
2.9-9 Agregar/quitar una duracin en una hora del da B2/83
2.9-10 Desviacin entre dos fechas (sin hora) B2/85
2.9-11 Desviacin entre dos fechas (con hora) B2/86
2.9-12 Desviacin entre dos horas B2/87
2.9-13 Conversin de una fecha (sin hora) en cadena
de caracteres B2/88
2.9-14 Conversin de una fecha completa en cadena
de caracteres B2/89
2.9-15 Conversin de una duracin en cadena de caracteres B2/90
2.9-16 Conversin de una hora del da en cadena de caracteresB2/91
2.9-17 Conversin de una duracin en HHHH:MM:SS B2/93
Captulo Pgina
___________________________________________________________________________
B/5
Captulo
Descripcin de las instrucciones de base 11
1 Descripcin de las instrucciones de base B
1.1 Presentacin de las instrucciones de base
1.1-1 Generalidades
Las instrucciones descritas en este captulo son conformes a las instrucciones de base
principales definidas en la norma IEC 1131.3.
El lenguaje utilizado no tiene importancia: estas instrucciones tienen siempre el mismo
efecto. Slo cambia su presentacin en el programa.
Ejemplo de ecuacin booleana:
en Lista de instrucciones: LD %I1.0
ST %Q2.0
%I1.0 %Q2.O
en lenguaje de contactos:
Estas tres ecuaciones booleanas son equivalentes. El objeto bit %Q2.0 asume el valor
(instruccin de asignacin) del objeto bit %I1.0 (instruccin de carga).
___________________________________________________________________________
1/1
B
1.2 Instrucciones booleanas
1.2-1 Presentacin de las instrucciones booleanas
Las instrucciones booleanas actan sobre todas las informaciones del tipo bit (bits de
entradas/salidas, bits internos...).
Elementos de prueba, ejemplo: contacto de cierre
Contacto establecido cuando el objeto bique lo controla est en el estado 1.
%I1.0
LD %I1.0 %I1.0
Para todas las entradas (TON, contaje, ...): un flanco se detecta cuando el estado
del bit ha cambiado entre el ciclo n-1 y el ciclo n en curso; permanece detectado
durante el ciclo en curso (vase la seccin A, captulo 1.3-2).
Flanco ascendente: deteccin del paso Flanco descendente: deteccin del paso
de 0 a 1 de la entrada que lo controla. de 1 a 0 de la entrada que lo controla.
tiempo tiempo
%I1.0 %I1.0
B
1.2-2 Descripcin de las instrucciones
Las instrucciones booleanas se describen del modo siguiente.
Instrucciones de carga
Estas instrucciones corresponden a:
contactos de cierre: contacto cuando el objeto bit que lo controla est en el estado 1,
...
Lenguaje de contactos Lenguaje Lista de instrucciones
%I1.1 %Q2.3
LD %I1.1
ST %Q2.3
%M0 %Q2.2
LDN %M0
ST %Q2.2
%Q2.3 := %I1.1 ;
%Q2.2 := NOT %M0 ;
Cdigo Operando
LD %I,%Q,%M,%S,%BLK,%:Xk, %Xi LD LDN
%Q2.3 %Q2.2
%I1.1 %Q2.3
LD %I1.1
ST %Q2.3
%M0 %Q2.2 LDN %M0
ST %Q2.2
LDR %I1.2
%I1.2 %Q2.4
ST %Q2.4
P LDF %I1.3
%I1.3 %Q2.5 ST %Q2.5
N
%Q2.3 := %I1.1 ;
%Q2.2 := NOT %M0 ;
%Q2.4 := RE %I1.2 ;
%Q2.5 := FE %I1.3 ;
Cdigo Operando P N
(1) True (1) / False (0) en lenguaje Lista %Q2.3 %Q2.2 %Q2.4 (2) %Q2.5 (2)
de instrucciones o Literal estructurado
B
1.2-4 Instrucciones de asignacin
Estas instrucciones corresponden a:
bobinas directas: el objeto bit asociado toma el valor del resultado de la ecuacin,
bobinas inversas: el objeto bit asociado toma el valor de inverso del resultado de
la ecuacin,
bobinas de conexin: el objeto bit asociado se pone a 1 cuando el resultado de la
ecuacin = 1,
bobinas de desconexin: el objeto bit asociado se pone a 0 cuando el resultado de
la ecuacin = 1.
%I1.1 %Q2.3
LD %I1.1
ST %Q2.3
%Q2.2
STN %Q2.2
%Q2.4
S %Q2.4
S
%I1.2 %Q2.4 LD %I1.2
R %Q2.4
R
%Q2.3 := %I1.1 ;
%Q2.2 := NOT %I1.1 ;
IF %I1.1 THEN
SET %Q2.4 ;
END_IF ;
IF %I1.2 THEN
RESET %Q2.4 ;
END_IF ;
Cdigo Operando S R
ST %I,%Q,%M,%S,%:Xk ST STN S R
STN %I,%Q,%M,%S,%:Xk
S S %I,%Q,%M,%S,%:Xk, %Xi (1)
%I1.1 %I1.1 %I1.1 %I1.2
R R %I,%Q,%M,%S,%:Xk, %Xi (1)
Nota: los parntesis son opcionales, pero facilitan la legibilidad del programa.
Cdigo Operando P N
B
1.2-6 Instrucciones O lgica
Estas instrucciones efectan:
una O lgica entre el operando y el resultado booleano de la instruccin previa,
una O lgica entre el inverso del operando y el resultado booleano de la instruccin
previa,
una O lgica entre el flanco ascendente del operando y el resultado booleano de
la instruccin previa,
una O lgica entre el flanco descendente del operando y el resultado booleano de
la instruccin previa.
Lenguaje de contactos Lenguaje Lista de instrucciones
%I1.1 %Q2.3
LD %I1.1
%M1 OR %M1
ST %Q2.3
%M2 %Q2.2
LD %M2
%I1.2
ORN %I1.2
ST %Q2.2
%I1.3 %Q2.4
LD %I1.3
ORR %I1.4
%I1.4
P ST %Q2.4
%M3 %Q2.5
LD %M3
ORF %I1.5
%I1.5
N ST %Q2.5
Nota
En el lenguaje de contactos, no hay elementos grficos especficos para la O exclusiva. Sin
embargo, la O exclusiva puede ser programada utilizando una combinacin de contactos de
apertura y cierre (vase el ejemplo siguiente).
LD %I1.3
XORR %I1.4
Lenguaje Literal estructurado ST %Q2.4
LD %M3
%Q2.3 := %I1.1 XOR %M1 ;
XORF %I1.5
%Q2.2 := %M2 XOR (NOT %I1.2) ;
ST %Q2.5
%Q2.4 := %I1.3 XOR (RE %I1.4) ;
%Q2.5 := %M3 XOR (FE %I1.5) ;
Nota: los parntesis son opcionales, pero facilitan la legibilidad del programa.
Cdigo Operando
XOR XORN XORR XORF
XOR %I,%Q,%M,%S,%BLK,%:Xk, %Xi
XORN %I,%Q,%M,%S,%BLK,%:Xk, %Xi %I1.1 %M2 %I1.3 %M3
XORR %I,%Q,%M
%M1 %I1.2 %I1.4 %I1.5
XORF %I,%Q,%M
___________________________________________________________________________
1/8
Descripcin de las instrucciones de base 1
B
1.3 Bloques de funcin predefinidos
1.3-1 Principio de programacin de bloques de funcin predefinidos
Los bloques de funcin implantan objetos bits y palabras especficas.
Los bloques de funcin se preprograman %Ci
en el autmata y ocupan pues un rea
R E
particular en la memoria de usuario.
A fin de optimizar el espacio de memoria S
ocupado, es necesario definir C.P : 9999 D
CU
previamente el tipo y el nmero de los MODIF : Y
bloques de funcin utilizados, dentro de CD F
los lmites impuestos por el sistema
(mediante los editores de configuracin y Bloque contaje/descontaje
de datos).
___________________________________________________________________________
1/9
B
1.3-2 Bloque de funcin temporizador %TMi (Timer)
El temporizador tiene 3 modos de
funcionamiento:
%TMi
TON: permite administrar retardos a la
IN Q
MODE:TON conexin. El retardo es programable y
TB: 1mn puede ser modificado o no desde el
terminal.
TM.P:9999
MODIF:Y
TOF: permite administrar retardos a la
desconexin. El retardo es programable
y puede ser modificado o no desde el
Bloque temporizador terminal.
TP: permite elaborar un impulso de una
duracin precisa. La duracin es
programable y puede ser modificada o
no desde el terminal.
Caractersticas
Nmero de temporizador %TMi 0 a 63 para un TSX 37, 0 a 254 para un TSX 57
Modo TON retardo a la conexin(predeterminado)
TOF retardo a la desconexin
TP monoestable
Basedetiempo TB 1 min (valor predeterminado), 1 s, 100 ms, 10
ms.Cuantomspequealabasedetiempo,
tanto mayor ser la precisin del temporizador.
Valoractual %TMi.V Palabra que aumenta de 0 a %TMi.P al transcurre
el temporizador. Puede ser leda y
probada, pero no escrita por el programa (1).
Valordepreseleccin %TMi.P 0-%TMi.P-9999.Palabraquepuedeserleda,
probada y escrita por el programa. De forma
predeterminada,seponea9999.Laduracin
o el retardo elaborado es igual a %TMi.P x TB.
Ajustedesde Y/N Y: posibilidad de modificar el valor de pre-
elterminal seleccin%TMi.Penmodoajuste.
(MODIF) N: sin acceso en modo ajuste.
Entrada(instruccin) IN En el flanco ascendente (modo TON o TP) o
"Activacin" descendente(modoTOF),activaeltemporizador.
Salida"Temporizador" Q Bit asociado %TMi.Q. Su puesta a 1 depende
de la funcin realizada TON, TOF o TP.
___________________________________________________________________________
1/10
Descripcin de las instrucciones de base 1
B
Temporizacin con retardo en la conexin: modo TON
El temporizador se activa en un flanco
ascendente de la entrada IN: su valor
actual %TMi.V toma el valor 0. Luego, el
IN
valor actual aumenta hacia %TMi.P en
una unidad a cada impulso de la base de
tiempo TB. El bit de salida %TMi.Q pasa a Q
1 cuando el valor actual alcanza %TMi.P
y permanece a 1mientras la entrada est %TMi.P
en el estado 1. %TMi.V
Cuando la entrada IN pasa al estado 0, el
temporizador se detiene aun cuando
estaba en curso de evolucin: %TMi.V
toma el valor 0.
Monoestable: modo TP
El temporizador se activa en un flanco
ascendente de la entrada IN: su valor
actual %TMi.V toma el valor 0 (si el
IN
temporizador no est en curso de
evolucin). Luego el valor actual aumenta
hacia %TMi.P en una unidad a cada Q
impulso de la base de tiempo TB. El bit de
salida %TMi.Q pasa a 1 cuando el %TMi.P
temporizador se activa y se pone a 0 %TMi.V
cuando el valor actual alcanza %TMi.P.
Cuando la entrada IN y la salida %TM.iQ
estn a 0, TMi.V toma el valor 0.
Este monoestable no puede reactivarse.
___________________________________________________________________________
1/11
B
Programacin y configuracin
La programacin de los bloques de funcin temporizador es idntica en todos los
modos de utilizacin. La eleccin del funcionamiento TON, TOF o TP se efecta en el
editor de variables.
Configuracin
Se introducen los parmetros siguientes en el editor de variables:
- Modo: TON, TOF o TP.
- TB: 1 min, 1 s, 100 ms o 10 ms.
- %TMi.P: 0 a 9999.
- MODIF : Y o N.
Programacin
Lenguaje de contactos Lenguaje Lista de instrucciones
IF RE %I1.1 THEN
START %TM1 ;
ELSIF FE %I1.1 THEN
DOWN %TM1 ;
END_IF ;
%Q2.3 := %TM1.Q ;
___________________________________________________________________________
1/12
Descripcin de las instrucciones de base 1
B
Casos especficos
Incidencia de un arranque en fro: (%S0=1) tiene como consecuencia la puesta a
0 del valor actual y la puesta a 0 de la salida %TMi.Q. El valor de preseleccin se
reinicializa al valor definido en la configuracin.
Incidencia de un rearranque en caliente: (%S1=1) no tiene incidencia en el valor
actual del temporizador, ni en el valor de preseleccin. El valor actual no evoluciona
durante el corte de corriente.
Incidencia de un paso a STOP, una desactivacin de tarea o una ejecucin de
punto de parada: no inmoviliza el valor actual.
Incidencia de un salto de programa: el hecho de no explorar las instrucciones
donde se programa el bloque temporizador no inmoviliza el valor actual %TMi.V que
sigue aumentando hacia %TMi.P. Asimismo, el bit %TMi.Q asociado a la salida Q
del bloque temporizador conserva su funcionamiento normal y, por consiguiente,
puede ser probado por otra instruccin. En cambio, no se activa la salida cableada
directamente a la salida del bloque, puesto que no la explora el autmata.
Prueba del bit %TMi.Q: se aconseja probar el bit %TMi.Q una sola vez en el
programa.
Incidencia de la modificacin de la preseleccin %TMi.P: la modificacin del valor
de preseleccin, mediante una instruccin o en modo de ajuste, se acepta slo
cuando se activa el temporizador por prxima vez; la modificacin del valor de
preseleccin en el editor de variables se acepta slo despus de un arranque en
fro (%S0=1).
___________________________________________________________________________
1/13
B
1.3-3 Bloque de funcin contaje/descontaje %Ci
El bloque de funcin contaje/descontaje
%Ci
permite contar o descontar sucesos. Es-
tas dos operaciones pueden ser R E
simultneas. S
C.P : 9999 D
CU
MODIF : Y
CD F
Bloque contaje/descontaje
Caracteristicas
Nmero de contador %Ci 0 a 31 para un TSX 37, 0 a 254 para un TSX 57
Valor actual %Ci.V Palabra aumentada o disminuida en funcin de las
entradas CU y CD.
Puede ser leda y probada, pero no escrita por
el programa (1).
Valor de preseleccin %Ci.P 0-%Ci.P-9999. Palabra que puede ser leda,
probada y escrita (valor predeterminado: 9999).
Ajustedesde Y/N S: posibilidad de modificar el valor de pre-
elterminal seleccinenmododeajuste.
(MODIF) N: sin acceso en modo de ajuste.
Entrada (instruccin) R En el estado 1 : %Ci.V = 0.
puesta a cero
Entrada (instruccin) S En el estado1: %Ci.V = %Ci.P.
preseleccin
Entrada (instruccin) CU Aumenta %Ci.V en el flanco ascendente.
contaje
Entrada (instruccin) CD Disminuye %Ci.V en el flanco ascendente.
descontaje
Salida rebasamiento E (Empty) El bit asociado %Ci.E=1, cuando el descontaje
%Ci.V pasa de 0 a 9999 (se pone a 1 cuando
%Ci.V alcanza 9999; se pone a 0 si el contador
sigue descontado).(2)
Salida preseleccin D (Done) El bit asociado %Ci.D=1, cuando %Ci.V=%Ci.P.
alcanzada
Salida rebasamiento F (Full) El bit asociado %Ci.F =1 cuando %Ci.V pasa de
9999 a 0 (se pone a 1 cuando %Ci.V alcanza 0;
se pone a 0 si el contador sigue contando).
___________________________________________________________________________
1/14
Descripcin de las instrucciones de base 1
B
Funcionamiento
Contaje: al aparecer un flanco ascendente en la entrada de contaje CU, el valor
actual se aumenta en una unidad. Cuando este valor alcanza el de preseleccin
%Ci.P, el bit de salida %Ci.D "preseleccin alcanzada" asociado a la salida D pasa
al estado 1. El bit de salida %Ci.F (rebasamiento de contaje) pasa al estado 1 cuando
%Ci.V pasa de 9999 a 0; se pone a 0 si el contador sigue contando.
Descontaje: al aparecer un flanco ascendente en la entrada de descontaje CD, el
valor actual %Ci.V se disminuye en una unidad. El bit de salida %Ci.E (rebasamiento
de descontaje) pasa al estado 1 cuando %Ci.V pasa de 0 a 9999; se pone a 0 si el
contador sigue descontando.
Contaje/Descontaje: para utilizar simultneamente las funciones contaje y
descontaje, es necesario controlar las dos entradas correspondientes (CU y CD),
que se exploran sucesivamente. Si ambas entradas estn simultneamente en el
estado 1, el valor actual permanece sin cambiar.
Puesta a cero: cuando la entrada R se pone 1, el valor actual %Ci.V se fuerza a 0.
Las salidas %Ci.E, %Ci.D y %Ci.F estn en el estado 0. La entrada "puesta a cero"
es prioritaria.
Preseleccin: si la entrada S "preseleccin" est en el estado 1 y la entrada R
"puesta a cero" en el estado 0, el valor actual %Ci.V toma el valor %Ci.P y la salida
%Ci.D el valor 1.
Observacin
Casos especficos
Incidencia de un arranque en fro: (%S0=1)
- puesta a 0 del valor actual %Ci.V.
- puesta a 0 de los bits de salida %Ci.E, %Ci.D y %Ci.F.
- inicializacin del valor de preseleccin por el definido en la configuracin.
Incidencia de un rearranque en caliente (%S1=1), un paso a STOP, una
desactivacin de tarea o una ejecucin de punto de parada: no tiene incidencia
en el valor actual del contador (%Ci.V).
Incidencia de la modificacin de la preseleccin %Ci.P: la modificacin del valor
de preseleccin, mediante una instruccin o en modo de ajuste, se acepta durante
la gestin del bloque por la aplicacin (activacin de una de las entradas).
___________________________________________________________________________
1/15
B
Configuracin y programacin
Configuracin
Se deben introducir los parmetros siguientes mediante el editor de variables:
- %Ci.P, definido como 5000 en este ejemplo,
- MODIF : Y.
Programacin
Lenguaje de contactos Lenguaje Lista de instrucciones
%C8 LD %I1.1
%I1.1
R E R %C8
LD %I1.2
S AND %M0
%I1.2 %M0 C.P : 5000 D CU %C8
CU
LD %C8.D
MODIF : Y
ST %Q2.0
CD F
%C8.D %Q2.0
IF %I1.1 THEN
RESET %C8 ;
END_IF ;
%M1 := %I1.2 AND %M0 ;
IF RE %M1 THEN
UP %C8 ;
END_IF ;
%Q2.0 := %C8.D;
B
1.4 Tratamientos numricos para enteros
1.4-1 Generalidades
Las instrucciones numricas descritas en este captulo se aplican a objetos de tipo:
tabla de bits,
palabra,
doble palabra.
Las instrucciones para los otros tipos de objetos se describen en el captulo "Descripcin
de las instrucciones y funciones avanzadas".
En el lenguaje de contactos
Las instrucciones numricas se introducen
en los bloques:
ubicados en el rea de prueba (bloques
de comparacin), %Q2.2
ubicados en el rea de accin (bloques %MW50>10
de operacin).
%I1.0
Estos bloques pueden contener: %MW10:=%KW0+10
una expresin simple,
%I1.2
ej.: OP3:=OP1+OP2, N INC%MW100
una expresin compleja,
ej.: OP5:=(OP1+OP2)*OP3-OP4.
___________________________________________________________________________
1/17
B Lista de operandos
Lista de tablas de bits
Abreviaciones Direccionamiento Tipo de palabra Acceso
%M:L %Mi:L tabla de bits internos R/W
%I:L %Ixy.i:L tabla de bits de entrada R/W
%Q:L %Qxy.i:L tabla de bits de salida R/W
%Xi:L %Xi:L o %Xj.i:L tabla de bits de etapas R
B
1.4-2 Instrucciones de comparacin
Estas instrucciones permiten comparar dos operandos.
> : prueba si el operando 1 es superior al operando 2.
>= : prueba si el operando 1 es superior o igual al operando 2.
< : prueba si el operando 1 es inferior al operando 2.
<= : prueba si el operando 1 es inferior o igual al operando 2.
= : prueba si el operando 1 es igual al operando 2.
<> : prueba si el operando 1 es diferente del operando 2.
El resultado es 1 cuando la comparacin solicitada es verdadera.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%Q2.3
%MW10>100 LD [%MW10 > 100]
ST %Q2.3
%M0 %Q2.2 LD %M0
AND [%MW20 < %KW35]
%MW20<%KW35 ST %Q2.2
LD %I1.2
%I1.2 %Q2.4 OR [%MW30 >= %MW40]
ST %Q2.4
%MW30>=%MW40
Nota: los parntesis son opcionales pero facilitan la legibilidad del programa.
Sintaxis
Operadores: >,>=,<,<=,=,<> Op1 Operador Op2
___________________________________________________________________________
1/19
B
Operandos
Tipo Operandos 1 y 2 (Op1 y 2)
Palabras indexables %MW,%KW
Palabras no indexables Val.inm.,%IW,%QW,%SW,%NW,%BLK, %Xi.T
Expr. numrica
Dobles palabras indexables %MD,%KD
Dobles palabras no indexables Val.inm.,%ID,%QD,%SD,Expr. numrica
Observaciones
En el lenguaje de contactos, tambin es posible efectuar la comparacin con el
bloque de comparacin vertical (vase la seccin B, captulo 2.3),
En el lenguaje Lista de instrucciones, las instrucciones de comparacin pueden
utilizarse entre parntesis.
LD TRUE
%Q2.0:8:=%M10:8
[%Q2.0:8:= %M10:8] ej 1
%I3.2 LD %I3.2
%MW100:=%I1.0:16 [%MW100:= %I1.0:16 ] ej 2
___________________________________________________________________________
1/20
Descripcin de las instrucciones de base 1
B
Lenguaje Literal estructurado
%Q2.0:8 := %M10:8 ; ex 1
IF %I3.2 THEN
%MW100 := %I1.0:16 ; ex 2
END_IF ;
IF RE %I3.3 THEN
%M100:16 := %KW0 ; ex 3
END_IF ;
Sintaxis
Operador:= Op1:=Op2
Operandos
Reglas de utilizacin
No es forzosamente idntica la longitud de las tablas de bits origen y destino. Cuando
la tabla origen es ms larga que la destino, slo se transfieren los bits menos
significativos. En el caso contrario, la tabla de destino se completa con ceros.
Cuando se trata de una asignacin tabla de bits -> palabra (o doble palabra ), los bits
de la tabla se transfieren a la palabra (los menos significativos para una doble palabra)
desde la derecha (primer bit de la tabla en el bit 0 de la palabra ). Los bits de palabra
no implicados en la transferencia (longitud<16 o 32) se ponen a 0.
Cuando se trata de una asignacin palabra -> tabla de bits, los bits de la palabra se
transfieren desde la derecha (el bit 0 de la palabra en el primer bit de la tabla).
___________________________________________________________________________
1/21
B
Asignacin de palabras
Se pueden realizar en las palabras las operaciones de asignacin siguientes:
palabra (indexada) -> palabra (indexada) o doble palabra (indexada) ej. 1
doble palabra (indexada) -> doble palabra (indexada) o palabra (indexada) ej. 2
valor inmediato -> palabra (indexada) o doble palabra (indexada) ej. 3
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
%SW112:=%MW100 [%SW112 := %MW100] ex 1
LD %I3.2
[%MD0:= %KD0[%MW20] ] ex 2
%I3.2
%MD0:=%KD0[%MW20]
Lenguaje Literal estructurado
%I3.3
P %MW10:=100
IF RE %I3.3 THEN
%MW10 := 100 ; ex 3
END_IF ;
Sintaxis
Operador := Op1:=Op2
Operandos
Observacin
Las conversiones palabra <--> doble palabra se efectan implcitamente durante
la asignacin doble palabra --> palabra. Si la palabra no puede contener el valor de
la doble palabra , el bit %S18 se pone a 1.
Se pueden realizar asignaciones mltiples.
Ejemplo: %MW0 := %MW2 := %MW4
Atencin, en el ejemplo %MD14 := %MW10 := %MD12, el resultado no es
necesariamente %MD14 := %MD12, ya que en la asignacin a %MW10, se pierden
bits ms significativos de la doble palabra por causa de la conversin doble palabra
- simple palabra.
___________________________________________________________________________
1/22
Descripcin de las instrucciones de base 1
B
1.4-4 Instrucciones aritmticas con enteros
Estas instrucciones permiten realizar una operacin aritmtica entre dos operandos
o en un operando.
+ : suma de dos operandos, SQRT : raz cuadrada de un operando,
- : resta de dos operandos, INC : aumento de un operando,
* : multiplicacin de dos operandos, DEC : %Tmi disminucin de un
operando,
/ : divisin de dos operandos, ABS : valor absoluto de un operando.
REM : resto de la divisin de 2 operandos.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0
%MW0:=%MW10+100 LD %M0
[%MW0 := %MW10 + 100]
%I3.2
%MW0:=SQRT(%MW10) LD %I3.2
%I3.3 [%MW0 := SQRT(%MW10)]
P INC %MW100
LDR %I3.3
[INC %MW100]
IF %M0 THEN
%MW0 := %MW10 + 100 ;
END_IF ;
IF %I3.2 THEN
%MW0 := SQRT (%MW10) ;
END_IF ;
IF RE %I3.3 THEN
INC %MW100 ;
END_IF ;
Sintaxis
Operadores
+,-,*,/,REM Op1:=Op2 Operador Op3
___________________________________________________________________________
1/23
B
Operandos
Tipo Operando 1 (Op1) Operandos 2 y 3 (Op2 y 3)
Palabras indexables %MW %MW,%KW
Palabras no indexables %QW,%SW,%NW, Val.inm.,%IW,%QW,%SW
%BLK %NW,%BLK,%Xi.T,Expr. num.
Dobles palabras indexables %MD %MD,%KD
Dobles palabras no indexables %QD,%SD, Val.inm.,%ID,%QD,%SD
Expr. numrica
Nota
No es posible utilizar las operaciones INC y DEC en expresiones numricas.
Reglas de utilizacin
Suma: rebasamiento de capacidad durante la operacin
Si el resultado excede los lmites:
- -32768 o +32767 para un operando de simple longitud,
- -2 147 483 648 o +2 147 483 647 para un operando de doble longitud,
el bit %S18 (overflow) se pone a 1. El resultado es pues no significativo. La gestin
del bit %S18 se efecta en el programa de usuario.
Ejemplo:
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0
LD %M0
%MW0:=%MW1+%MW2
[%MW0 := %MW1+ %MW2]
%S18 LDN %S18
%MW10:=%MW0 [%MW10 := %MW0 ]
%S18 LD %S18
%MW10:=32767
[%MW10 := 32767 ]
R %S18
%S18
R
IF %M0 THEN
%MW0 := %MW1 + %MW2 ;
END_IF ;
IF %S18 THEN
%MW10 := 32767 ; RESET %S18 ;
ELSE
%MW10 := %MW0 ;
END_IF ;
B
Multiplicacin:
Rebasamiento de capacidad durante la operacin.
Si el resultado excede la capacidad de la palabra de almacenamiento, el bit %S18
(overflow) se pone a 1 y el resultado es no significativo.
Divisin/resto de la divisin:
Divisin por 0.
Si el divisor es igual a 0, la divisin es imposible y el bit sistema %S18 se pone a 1.
El resultado es pues errneo.
Rebasamiento de capacidad durante la operacin.
Extraccin de la raz cuadrada:
La extraccin de la raz cuadrada se efecta slo en valores positivos. El resultado
es pues siempre positivo. Si el operando de la raz cuadrada es negativo, el bit
sistema %S18 se pone a 1 y el resultado es errneo.
Nota
Cuando el resultado de una operacin no es un entero (caso de una divisin o de una raz
cuadrada), el resultado se trunca (se redondea al prximo entero inferior).
El signo del resto de la divisin (REM) es el del numerador.
El programa de usuario se encarga de la gestin del bit sistema %S18. El autmata lo pone a
1; el programa debe ponerlo a cero para que pueda ser reutilizado (vase el ejemplo en la pgina
previa).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0 LD %M0
[%MW0 := %MW10 AND 16#FF00]
%MW0:=%MW10 AND 16#FF00
LD TRUE
[%MW0 := %KW5 OR %MW10]
%MW0:=%KW5 OR %MW10
LD %I1.3
%I1.3 [%MW102:= NOT %MW100]
%MW102:=NOT %MW100
___________________________________________________________________________
1/25
B
Lenguaje Literal estructurado
IF %M0 THEN
%MW0 := %MW10 AND 16#FF00 ;
END_IF ;
%MW0 := %KW5 OR %MW10 ;
IF %I1.3 THEN
%MW102 := NOT %MW100 ;
END_IF ;
Sintaxis
Operadores
Operandos
___________________________________________________________________________
1/26
Descripcin de las instrucciones de base 1
B
1.4-6 Expresiones numricas
La expresin numrica se compone de varios operandos numricos y de operadores
aritmticos y lgicos descritos previamente.
Ejemplo: %MW25 * 3 - SQRT(%MW10) + %KW8* (%MW15 + %MW18) AND 16#FF
No se limita el nmero de operadores y operandos de una expresin aritmtica.
Expresin numrica para objetos enteros
Los operandos de una misma expresin numrica pueden ser sin distincin de simple
o doble longitud:
Ejemplo: %MW6 * %MW15 + SQRT(%DW6) / (%MW149[%MW8]) + %KD29)
AND 16#FF
Un operando o una operacin de un solo operando puede venir precedido del signo
+ o - (signo predeterminado: +).
Ejemplo: SQRT (%MW5) * - %MW9
Todos los objetos palabras pueden utilizarse dentro de una expresin aritmtica. Es
posible la indexacin de ciertas palabras.
Prioridad de ejecucin de las instrucciones
En la expresin numrica, se respeta la prioridad de las instrucciones. La ejecucin
se efecta en esta orden:
1 2
3
4 5
Parntesis
Los parntesis permiten modificar el orden de evolucin de las prioridades. Se
aconseja su uso para estructurar las expresiones numricas.
((%MW5 AND %MW6) + %MW7) * %MW8
1
2
3
___________________________________________________________________________
1/27
B
1.5 Instrucciones de programa
1.5-1 Llamada a un subprograma
La instruccin de llamada a un subprograma permite llamar a un mdulo de subprograma
situado en la misma tarea.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
IF %M8 THEN
SR10 ;
END_IF ;
Reglas
Para efectuar una llamada a un subprograma, es necesario crear previamente el
mdulo de subprograma.
Se regresa del subprograma con la accin que viene inmediatamente despus de
la instruccin de llamada al subprograma.
Un subprograma puede llamar a otro subprograma; el nmero de llamadas en
cascada se limita a 8.
Los subprogramas se asignan a una tarea; slo pueden llamarse desde una misma
tarea.
Principio
Mdulo de subprograma Mdulo de subprograma
SR 10 SR 12
Call SR 10
Call SR 12
Call SR 10
___________________________________________________________________________
1/28
Descripcin de las instrucciones de base 1
B
1.5-2 Regreso de subprograma
La instruccin de regreso de subprograma se reserva para los mdulos de subprograma.
Permite regresar hacia el mdulo que llama, si el resultado booleano de la instruccin
de prueba previa es 1.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M8
LD %M8
<RETURN> RETC
IF %M8 THEN
RETURN ;
END_IF ;
Regla de utilizacin
La instruccin de regreso del subprograma se realiza implcitamente al final de cada
subprograma, pero puede ser utilizada para regresar al mdulo que llama antes del
fin de subprograma.
Ejemplo
Lenguaje de contactos Lenguaje Lista de instrucciones
LD [%MW5>3]
RETC
%MW5>3 <RETURN> LD %M8
[%MD26:=%MW4*%KD6]
%M8
%MD26:=%MW4*%KD6
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M8 %L10
LD %M8
>> JMPC %L10
%I1.0 %Q2.5 LD %I1.0 Salto a la
ST %Q2.5 etiqueta %L10,
.............. si %M8 = 1.
%L10 :
%L10 LD %M20
%M20 %M5 ST %M5
LD %I1.0
AND %I1.2
%I1.0 %I1.2 %Q2.1 ST %Q2.1
___________________________________________________________________________
1/30
Descripcin de las instrucciones de base 1
B
Lenguaje de contactos Lenguaje Lista de instrucciones
%M2 %L20
LD %M2
>>
JMPCN %L20
%I2.0 %Q3.5 Salto a la
LDN %I2.0
ST %Q3.5 etiqueta %L20,
.............. si %M2 = 0.
%L20 :
%L20 LD %M30
%M30 %M6 ST %M6
%L40
JMP %L40
>> %L20 : S a l t o
LD %I2.1 incondicional a
%L20 ST %Q3.5 la etiqueta
%I2.1 %Q3.5 ..............
%L40 :
%L40.
LD %M20
ST %M5
%L40
%M20 %M5
___________________________________________________________________________
1/31
B
Reglas
Un salto de programa se efecta dentro de una misma entidad de programacin
(mdulo principal de una tarea maestra MAIN, subprograma %SRi, ...).
Un salto de programa se efecta hacia una lnea de programacin situada arriba o
abajo.
Si se trata de un salto hacia arriba, el tiempo de ejecucin del programa se extiende
y puede tener como consecuencia el rebasamiento del perodo de la tarea que
incluye el salto.
___________________________________________________________________________
1/32
Descripcin de las instrucciones de base 1
B
1.5-5 Parada de programa
La instruccin HALT en un programa de aplicacin permite detener la ejecucin del
programa (parada de todas las tareas), lo que tiene como efecto la inmovilizacin de
los objetos variables del programa.
Para que se ejecute de nuevo el programa parado, es necesario inicializarlo (mediante
el comando INIT de PL7). No se ejecutarn las instrucciones que vienen despus de
la instruccin HALT.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD %M10
%M10
HALT
<HALT>
IF %M10 THEN
HALT ;
END_IF ;
___________________________________________________________________________
1/33
B
1.5-6 Instrucciones de enmascaramiento/desenmascaramiento de sucesos
Estas instrucciones permiten enmascarar o desenmascarar todos los sucesos que
aseguran la activacin de las tareas de suceso.
MASKEVT: enmascaramiento global de sucesos. El autmata almacena los sucesos.
En cambio, las tareas de suceso asociadas permanecen inactivas durante la validez
de la operacin de enmascaramiento (hasta la prxima instruccin UNMASKEVT).
UNMASKEVT: desenmascaramiento global de sucesos. Se tratan los sucesos
almacenados durante el perodo de enmascaramiento. El mecanismo de tratamiento
de sucesos permanece operacional hasta la prxima instruccin MASKEVT.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0
MASKEVT ( )
LD %M0
[MASKEVT()]
%M8
UNMASKEVT ( ) LD %M8
[UNMASKEVT()]
IF %M0 THEN
MASKEVT ( ) ;
END_IF ;
IF %M8 THEN
UNMASKEVT ( ) ;
END_IF ;
___________________________________________________________________________
1/34
Descripcin de las instruccionesCaptulo
avanzadas 22
2 Descripcin de las instrucciones avanzadas B
2.1 Presentacin de las instrucciones avanzadas
2.1-1 Generalidades
Las instrucciones descritas en este captulo satisfacen las necesidades de programacin
avanzada.
Tienen los mismos efectos en todos los lenguajes. Slo difiere la sintaxis.
Son:
instrucciones de base del software, o
funciones consideradas como extensiones de software.
Las instrucciones de tipo Funciones ampliadas permiten completar el software de
base con instrucciones especficas de programacin.
Operaciones en cadenas de caracteres, tablas de palabras, etc...
Funciones especficas: Comunicacin, Regulacin, Dilogo de operador, etc...
Comprenden las familias siguientes:
cadenas de caracteres,
tablas de enteros,
gestin de fechas, horas, duraciones,
conversiones,
tablas de bits,
funciones "Orphe",
Comunicacin,
Regulacin, ==> vase la funcin respectiva
Dilogo de operador,
Control de movimiento
___________________________________________________________________________
2/1
B
2.2 Bloques de funcin predefinidos avanzados
2.2-1 Bloque de funcin monoestable %MNi
Bloque monoestable
Caractersticas
Funcionamiento
Cuando aparece un estado 1 (flanco ascendente) en la entrada S del monoestable, el
valor actual %MNi.V toma el valor de preseleccin %MNi.P y disminuye hacia 0 en una
unidad a cada impulso de la base de tiempo TB. El bit de salida %MNi.R (Running)
asociado a la salida R se pone a 1 cuando el valor actual %MNi.V es distinto de 0.
Cuando el valor actual %MNi.V = 0, el bit de salida %MNi.R se pone a 0.
Entrada "inicio" S:
S
B
Programacin y configuracin
Configuracin
Los parmetros siguientes se introducen en el editor de variables:
- TB: 1 min, 1 s, 100 ms, 10 ms o 1 ms (en este ejemplo, 100 ms )
- %MNi.P: 0 a 9999 (en este ejemplo, %MN0.P=50 y %MN1.P=20)
- MODI: Y o N
Programacin
Lenguaje de contactos Lenguaje Lista de instrucciones
___________________________________________________________________________
2/3
B
Observacin
La funcin monoestable puede tambin ser realizada por el bloque de funcin
%TMi en modo TP (vase la seccin B, captulo 1.3-2).
Casos especficos
Incidencia de un arranque en fro: (%S0 = 1) tiene como consecuencia la carga del
valor de preseleccin %MNi.P en el valor actual %MNi.V. Puesto que se pierde el
valor de preseleccin eventualmente modificado por el terminal, la salida %MNi.R
se pone a 0.
Incidencia de un rearranque en caliente: (%S1) no tiene incidencia en el valor
actual del monoestable (%MNi.V).
Incidencia de un paso en STOP, una desactivacin de tarea y un punto de parada:
el paso en STOP del autmata no inmoviliza el valor actual. Ocurre lo mismo, cuando
se desactiva la tarea en curso o se ejecuta un punto de parada.
Incidencia de un salto de programa: el hecho de no explorar la red donde se
programa el bloque monoestable no inmoviliza el valor actual %MNi.V que sigue
disminuyendo hacia 0.
Asimismo, el bit %MNi.R asociado a la salida del bloque monoestable conserva su
funcionamiento normal y puede ser probado en otra red. En cambio, las bobinas
directamente "conectadas" a la salida del bloque (ej. %Q3.0) no se activan, ya que
el autmata no las explora.
Prueba del bit %MNi.R: este bit puede cambiar de estado en curso del ciclo.
___________________________________________________________________________
2/4
Descripcin de las instrucciones avanzadas 2
B
2.2-2 Bloque de funcin registro %Ri
Un registro es un bloque de memoria que
%Ri
permite almacenar hasta 255 palabras de
16 bits de dos maneras distintas: R E
MODE:LIFO
LEN:16
cola de espera (primero en entrar, I F
primero en salir) llamada pila FIFO (First
In, First Out), O
pila (ltimo en entrar, primero en salir)
Bloque registro
llamada pila LIFO (Last In, First Out).
Caractersticas
Nota
Cuando las dos entradas I y O se activan simultneamente, el almacenamiento se realiza antes
del desalmacenamiento.
___________________________________________________________________________
2/5
B
Funcionamiento
FIFO (First In, First Out)
La primera informacin introducida es la pri- Ejemplo
mera en salir. Cuando se tiene en cuenta una Almacenamiento del contenido de
peticin de entrada (flanco ascendente en la %Ri.I en lo alto de la cola.
entrada I o activacin de la instruccin I), el
contenido de la palabra de entrada %Ri.I 20
previamente cargada se almacena en lo alto de %Ri.I 20
la cola (Fig. a). Si la cola est llena (salida F=1), (a) 80
es imposible almacenar y el bit sistema %S18
pasa a1. 50
Cuando se tiene en cuenta una peticin de Desalmacenamiento de la primera
salida (flanco ascendente en la entrada O o informacin y almacenamiento de sta
activacin de la instruccin O), la palabra de en %Ri.O.
informacin que se encuentra en el fondo de la
cola se almacena en la palabra de salida %Ri.O 20 (b)
y el contenido del registro se desplaza un paso 80 %Ri.0
hacia abajo (Fig. b). Si el registro est vaco 50 50
(salida E=1), es imposible desalmacenar; la
palabra de salida %Ri.O ya no evoluciona y
conserva su valor. La cola puede reinicializarse 20
en todo momento (estado 1 en la entrada R o 80
activacin de la instruccin R).
LIFO (Last In, First Out)
La ltima informacin introducida es la primera Ejemplo
en salir. Cuando se tiene en cuenta una peticin
Almacenamiento del contenido de
de entrada (flanco ascendente en la entrada I %Ri.I en lo alto de la pila.
o activacin de la instruccin I), el contenido de
la palabra de entrada %Ri.I previamente 20
cargada se almacena en lo alto de la pila (Fig. %Ri.I 20
c). Si la pila est llena (salida F=1), es imposible (c)
almacenar y el bit sistema %S18 pasa a1. 80
Cuando se tiene en cuenta una peticin de 50
salida (flanco ascendente en la entrada O o
activacin de la instruccin O), la palabra de Desalmacenamiento de la palabra de
informacin que se encuentra en lo alto de la informacin del alto de la pila.
pila (ltima informacin introducida) se
%Ri.0
almacena en la palabra %Ri.O (Fig. d). Si el
registro est vaco (salida E=1), es imposible 20 20
desalmacenar; la palabra de salida %Ri.O ya 80 (b)
no evoluciona y conserva su ltimo valor. La 50
pila puede reinicializarse en todo momento
(estado 1 en la entrada R o activacin de la
80
instruccin R). El elemento indicado est en lo
alto de la pila.
50
___________________________________________________________________________
2/6
Descripcin de las instrucciones avanzadas 2
B
Programacin y configuracin
Configuracin
Los parmetros siguientes se introducen en el editor de configuracin:
- nmero : 1 a 4 para un TSX 37, 1 a 255 para un TSX 57,
- longitud : 1 a 255.
El modo de funcionamiento (FIFO o LIFO) se introduce en el editor de variables.
Programacin
Lenguaje de contactos Lenguaje Lista de instrucciones
%R2 LD %M1
I %R2
R E LD %I1.3
%M1 O %R2
MOD : LD %I1.3
I LEN : F
ANDN %R2.E
%I1.3 [%MW20:=%R2.O]
O LD %I1.2
ANDN %R2.F
%I1.3 %R2.E [%R2.I:=%MW34]
ST %M1
%MW20:=%R2.O
%I1.2 %R2.F
%R2.I:=%MW34
%M1
Casos especficos
Incidencia de un arranque en fro: (%S0=1) tiene como consecuencia la inicializacin
del contenido del registro. El bit de salida %Ri.E asociado a la salida E se pone a 1.
Incidencia de un rearranque en caliente: (%S1=1) no tiene incidencia en el
contenido del registro ni en el estado de los bits de salida.
Al poner a 0 (entrada R o instruccin R):
- en el lenguaje de contactos, los historiales de las entradas I y O se actualizan con
los valores cableados.
- en el lenguaje Lista de instrucciones, los historiales de las entradas I y O no se
actualizan; cada uno conserva el valor anterior a la llamada.
- en el lenguaje Literal estructurado, los historiales de las entradas I y O se actualizan
con 0.
___________________________________________________________________________
2/8
Descripcin de las instrucciones avanzadas 2
B
2.2-3 Bloque de funcin programador cclico (Drum) %DRi
Segn un principio de funcionamiento
parecido al programador de levas, el %DRi
programador cclico cambia de paso en
R F
funcin de sucesos exteriores. A cada
%TB:1mn
paso, el punto alto de una leva da un
U
comando que el automatismo ejecuta. En
LEN:16
el caso del programador cclico, un estado
1 simbolizar al nivel de cada paso los
puntos altos, que se asignan a bits de
salida %Qi.j o internos %Mi llamados bits Bloque programador cclico
de comando.
Caractersticas
___________________________________________________________________________
2/9
B
Funcionamiento
El programador cclico se compone de:
una matriz de datos constantes (las levas) organizada en columnas: en pasos de
0 a N-1 (con N el nmero de pasos configurados). Cada columna indica los estados
del paso bajo forma de 16 informaciones binarias marcadas de 0 a F.
una lista de bits de comando (1 por lnea) que corresponden a salidas %Qxy.i o a
bits internos %Mi. Durante el paso en curso, los bits de comando toman los estados
binarios definidos para el paso.
La tabla siguiente resume las caractersticas principales del programador cclico
(programador configurado con 16 pasos).
Paso
Bits de
Bit comando
Entrada U:
Entrada R:
Salida %DRi.F
Tiempo %DRi.V
transcurrido
___________________________________________________________________________
2/10
Descripcin de las instrucciones avanzadas 2
B
Programacin y configuracin
En este ejemplo, las 5 primeras salidas %Q2.0 a %Q2.4 se activan una tras otra cada
vez que la entrada %I1.1 se pone a 1.
La entrada I1.0 reinicializa las salidas al paso 0.
Configuracin
Las informaciones siguientes se definen en el editor de variables:
- nmero de pasos: 5 (LEN:5),
- los estados de las salidas (bits de comando) para cada paso del programador.
Paso Asignacin de bits de comando
01234
0: 10000 %Q2.0
1: 01000 %Q2.1
Bit 2: 00100 %Q2.2
3: 00010 %Q2.3
4: 00001 %Q2.4
- base de tiempo (TB:1 min).
Programacin
Lenguaje de contactos Lenguaje Lista de instrucciones
LD %I1.0
R %DR1
%I1.0 %DR1 %Q2.8
LD %I1.1
R F U %DR1
%I1.1 %TB:1 mn LD %DR1.F
ST %Q2.8
U
LEN:5
IF %I1.0 THEN
RESET %DR1 ;
END_IF ;
IF RE %I1.1 THEN
UP %DR1 ;
END_IF ;
%Q2.8:= %DR1.F ;
___________________________________________________________________________
2/11
B
Observacin
En la puesta a 0 (entrada R, instruccin R o instruccin RESET):
en el lenguaje de contactos, el historial de la entrada U se actualiza con los
valores cableados.
en el lenguaje Lista de instrucciones, el historial de la entrada U no se actualiza;
conserva el valor anterior a la llamada.
en el lenguaje Literal estructurado, el historial de U se actualiza con 0.
Casos especficos
Incidencia de un arranque en fro: (%S0=1) tiene como consecuencia la
reinicializacin del programador al paso 0 (con la actualizacin de los bits de
comando).
Incidencia de un rearranque en caliente: (%S1=1) tiene como consecuencia la
actualizacin de los bits de comando segn el paso en curso.
Incidencia de un salto de programa, una desactivacin de tarea y un punto de
parada: el hecho de no explorar el programador cclico no pone los bits de comando
a 0.
Actualizacin de bits de comando: se efecta slo al cambiar de paso o al arrancar
en fro o en caliente.
___________________________________________________________________________
2/12
Descripcin de las instrucciones avanzadas 2
B
2.2-4 Bloque de funcin temporizador (Timer) %Ti (serie 7)
Este bloque de funcin temporizador com-
patible con los bloques serie 7 PL7-2/3 %Ti
permite controlar acciones especficas. E D
El valor de este retardo es programable y TB:1mn
puede ser modificado o no desde el termi- C R
nal. T.P:9999
MODIF:Y
Bloque temporizador
Caractersticas
Nota
Los bloques de funcin %Ti no son programables en Lista de instrucciones. En cambio, es posible
acceder a los objetos de bloques %Ti (%Ti.V, %Ti.P, %Ti.D y %Ti.R).
El nmero total %TMi + %Ti debe ser inferior a 64 en el TSX 37 y 255 en el TSX 57.
___________________________________________________________________________
2/13
B
Funcionamiento
El temporizador evoluciona cuando sus 2
E
entradas (E y C) estn en el estado 1.
Funciona como un descontador. C
El valor actual %Ti.V disminuye desde %Ti.P
la preseleccin %Ti.P hacia 0 en una %Ti.V
unidad a cada impulso de la base de %Ti.D
tiempo TB.
%Ti.R
El bit de salida %Ti.R (temporizador en
curso) asociado a la salida R est en el E 0 0 1 1
estado 1; el bit de salida %Ti.D C 0 1 0 1
(temporizador transcurrido) asociado a
%Ti.P %Ti.V %Ti.V %Ti.V %Ti.V
la salida D est en el estado 0.
= = inmov. disminuye de
Cuando el valor actual %Ti.V= 0, %Ti.D %Ti.V %Ti.P %Ti.P %Ti.P -> 0
se pone a 1 y %Ti.R se pone a 0.
%Ti.D 0 0 0 1 si tempo.
transcurrido
Casos tpicos
Segn su programacin, el bloque de %Ti.R 0 0 0 1 si Tempo
en curso
funcin "temporizador" puede realizar las
funciones siguientes:
Retardo a la conexin
Lenguaje de contactos
%I1.0 = E,C
%I1.0 %T0 %Q2.0
E D R
IF %I1.0 THEN
START %T0 ;
ELSE
PRESET %T0 ;
END_IF ;
%Q2.0:= %T0.D ;
___________________________________________________________________________
2/14
Descripcin de las instrucciones avanzadas 2
B
Retardo a la desconexin
Lenguaje de contactos
% I1.1
%I1.1 %T7 %Q2.1
E D E,C
R
TB =1s
C R PRESET
%Ti.P = 120 D
MOD:N
%Q2.1
IF %1.1 THEN
PRESET %T7 ;
ELSE
START %T7 ;
END_IF ;
%Q2.1:= NOT %T7.D ;
% I1.2 = E
IF %I1.2 THEN
IF %I1.3 THEN
START %T5 ;
ELSE
STOP %T5 ;
END_IF ;
ELSE
PRESET %T5 ;
END_IF ;
%Q2.4:= %T5.D ;
%Q2.5:= %T5.R ;
___________________________________________________________________________
2/15
B
Retardo acumulado a la desconexin
Lenguaje de contactos
% I1.0
%I1.0 %T12 %Q2.4
E
E D
%I1.1
%I1.1 TB =10mn
C R C
%Ti.P = 40
MOD:Y
R
D1 D2 D3
D
Lenguaje Literal estructurado
%Q2.1
IF %I1.0 THEN
PRESET = D1 + D2 + D3
PRESET %T12 ;
ELSE
IF %I1.1 THEN
STOP %T12 ;
ELSE
START %T12 ;
END_IF ;
END_IF ;
%Q2.4:= NOT %T12.D ;
En el lenguaje Literal estructurado, 3 instrucciones permiten programar los bloques
de funcin temporizador %Ti:
PRESET %Ti : reinicializa el temporizador,
START %Ti : provoca el transcurrido del temporizador,
STOP %Ti : inmoviliza el valor actual del temporizador.
Casos especficos
Incidencia de un arranque en fro: (%S0 = 1) tiene como consecuencia la carga del
valor de preseleccin (definido por el editor de variables) en el valor actual y la puesta
a 0 de la salida %Ti.D. Se pierde el valor de preseleccin eventualmente modificado
en el terminal.
Incidencia de un rearranque en caliente: (%S1) no tiene incidencia en el valor
actual del temporizador.
Incidencia de un paso en STOP: no inmoviliza el valor actual. Ocurre lo mismo,
cuando la tarea en curso se desactiva o un punto de parada se ejecuta.
Incidencia de un salto de programa: el hecho de no explorar la red donde se
programa el bloque temporizador no inmoviliza el valor actual %Ti.V que sigue
disminuyendo hacia 0. Asimismo, los bits %Ti.D y %Ti.R asociados a las salidas D
y R del bloque temporizador conservan su funcionamiento normal y pueden
probarse en otra red. En cambio, no se activarn las bobinas directamente
"conectadas" a las salidas del bloque ya que el autmata no las explora.
Prueba de los bits %Ti.D y %Ti.R: estos bits pueden cambiar de estado en curso
del ciclo.
___________________________________________________________________________
2/16
Descripcin de las instrucciones avanzadas 2
B
2.3 Bloque de operacin de comparacin vertical
El bloque de comparacin vertical permite
efectuar la comparacin entre 2 COMPARE
operandos (OP). EN >
Caractersticas
___________________________________________________________________________
2/17
B
Funcionamiento
La puesta a 1 de la entrada de comando permite comparar dos operandos. Las cuatro
salidas se activan en funcin del resultado de la comparacin. La puesta a 0 de la
entrada de comando tiene como consecuencia la puesta a 0 de las salidas activas.
Ejemplo de utilizacin
El programa siguiente muestra la comparacin de la palabra %MW2 indexada por la
palabra %MW40 y del valor inmediato 150.
Si el contenido de %MW2[%MW40] es superior a 150 y si %I1.3 = 1, se controla la
bobina %Q2.7.
Si el contenido es igual a 150, se controla la bobina %MW10:X4. La bobina %M5 se
controla slo si el contenido es distinto de 150 (< o >).
Lenguaje de contactos
%I1.3 %Q2.7
EN >
Este bloque de funcin no existe en el
%MW10:X4 lenguaje Lista de instrucciones. Se
%MW2 = utilizan las operaciones de comparacin
[%MW40] >, <, =.
<
150 %M5
<>
Casos especficos
Incidencia de un arranque en fro: (%S0) tiene como consecuencia la puesta a cero
del operando OP1 y posiblemente la del OP2 (si OP2 es una palabra interna).
Dependiendo de la comparacin, las salidas se activan con los nuevos valores.
Incidencia de un rearranque en caliente: (%S1) no tiene incidencia en el bloque de
comparacin.
___________________________________________________________________________
2/18
Descripcin de las instrucciones avanzadas 2
B
2.4 Instrucciones de desplazamiento
Estas instrucciones desplazan los bits de un operando palabra o doble palabra un
cierto nmero de posiciones a la derecha o a la izquierda.
Desplazamiento lgico:
- SHL(op2,i) desplazamiento lgico i 15 (or 31) 0
posiciones a la izquierda.
- SHR(op2,i) desplazamiento lgico i
posiciones a la derecha. %S17 0
Desplazamiento circular:
- ROL(op2,i) desplazamiento circular i %S17
posiciones a la izquierda.
- ROR(op2,i) desplazamiento circular i
posiciones a la derecha.
0
Si el operando que se va a desplazar es
uno de simple longitud, la variable i estar
comprendido entre 1 y 16.
%S17
Si el operando que se va a desplazar es
uno de doble longitud, la variable i estar 15 (or 31) 0
comprendido entre 1 y 32.
El estado del ltimo bit salido se almacena
%S17
en el bit %S17.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%I1.1 LDR %I1.1
P %MW0:=SHL(%MW10,5) [%MW0:= SHL(%MW10,5)]
El bit sistema %S18 se pone a 1 cuando el resultado no est comprendido entre los
lmites vlidos. Los bits de la palabra de estado %SW17 indican la causa de una falla
en una operacin flotante:
%SW17:X0 = operacin invlida, el resultado no es un nmero (1.#NAN o -1.#NAN)
%SW17:X1 = operando no normalizado (comprendido entre -1.175494e-38 y
1.175494e-38), el resultado se redondea a 0.
%SW17:X2 = divisin entre 0, el resultado es infinito (-1.#INF o 1.#INF)
%SW17:X3 = resultado superior en valor absoluto a +3.402824e+38, el resultado es
infinito (-1.#INF o 1.#INF)
%SW17:X4 = resultado inferior a 1.175494e-38, el resultado es 0.
%SW17:X5 = imprecisin sobre el resultado
El sistema pone a 0 esta palabra en el arranque en fro o esta puesta a 0 la realiza el
programa con miras a su reutilizacin.
___________________________________________________________________________
2/20
Descripcin de las instrucciones avanzadas 2
B
La precisin de representacin es de 2-24. En la visualizacin de nmeros flotantes,
es intil mostrar ms de 6 dgitos despus de la coma.
Observaciones
El valor "1285" se interpreta como valor entero. Para que se acepte como valor
flotante, debe escribirse: "1285.0".
Las instrucciones de conversin Entero <--> Flotante permiten pasar de un formato
a otro.
___________________________________________________________________________
2/21
B
2.5-2 Instrucciones de comparacin para flotantes
Estas instrucciones permiten comparar dos operandos.
> : prueba si el operando 1 es superior al operando 2.
>= : prueba si el operando 1 es superior o igual al operando 2.
< : prueba si el operando 1 es inferior al operando 2.
<= : prueba si el operando 1 es inferior o igual al operando 2.
= : prueba si el operando 1 es igual al operando 2.
<> : prueba si el operando 1 es diferente del operando 2.
El resultado es 1 cuando la comparacin solicitada es verdadera.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
Operandos
Observacin
En el lenguaje Lista de instrucciones, las instrucciones de comparacin pueden
utilizarse entre parntesis.
___________________________________________________________________________
2/22
Descripcin de las instrucciones avanzadas 2
B
2.5-3 Instrucciones de asignacin para flotantes
Se pueden realizar las siguientes operaciones de asignacin para flotantes:
flotante (indexado) -> flotante (indexado) ej. 1
valor flotante inmediato -> flotante (indexado) ej. 2
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
%MF10:=%KF100 [%MF10:= %KF100] ej. 1
LD %I3.2
%I3.2
[%MF5:= %KF0[%MW20] ] ej. 1
%MF5:=%KF0[%MW20]
LDR %I3.3
%I3.3 [%MF100:=150.25] ej. 2
P %MF100:=150.25
Sintaxis
Operador:= Op1:=Op2
Operandos
___________________________________________________________________________
2/23
B
2.5-4 Instrucciones aritmticas para flotantes
Estas instrucciones permiten realizar una operacin aritmtica entre dos operandos
o en un operando.
+ : suma de dos operandos, SQRT : raz cuadrada de un operando,
- : resta de dos operandos, ABS : valor absoluto de un operando,
* : multiplicacin de dos operandos, TRUNC : parte entera de un valor flotante,
/ : divisin de dos operandos.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0 LD %M0
%MF0:=%MF10+129.7 [%MF0:= %MF10 + 129.7]
%I3.2 LD %I3.2
%MF1:=SQRT(%MF10) [%MF1:= SQRT(%MF10)]
Sintaxis
Operadores
+,-,*,/ Op1:=Op2 Operador Op3
___________________________________________________________________________
2/24
Descripcin de las instrucciones avanzadas 2
B
Operandos
Tipo Operando 1 (Op1) Operandos 2 y 3 (Op2 y 3)
Palabras indexables %MF %MF,%KF
Palabras no indexables Valor inmediato flotante
Expr. numrica flotante
Reglas de utilizacin
No es posible combinar directamente operaciones en flotantes y enteros.
Las operaciones de conversin realizan la conversin en uno de los dos formatos
(vase el captulo 2.6, seccin B).
la gestin del bit sistema %S18 se efecta de modo idntico a las operaciones en
enteros (seccin B, vase captulo 1.4-4),la palabra %SW17 indica la causa de la
falla (seccin B, vase captulo 2.5-1).
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
LD %M0
%M0 [%MF0:= LOG(%MF10)]
%MF0:=LOG(%MF10)
LD %I3.2
%I3.2
[%MF2:= LN(%MF20)]
%MF2:=LN(%MF20)
%I3.3
LDR %I3.3
[%MF4:= EXP(%MF40)]
P %MF4:=EXP(%MF40)
EXPT Op1:=Operador(Op2,Op3)
Operandos
Tipo Operando 1 (Op1) Operando 2 (Op2) Operandos 3 (Op3)
Palabras indexables %MF %MF,%KF %MW, %KW
Palabras no indexables Valor inm. flotante, Valor inmediato entero
Expr. num. flotante. Expr. num. entera
Reglas de utilizacin
cuando el operando de la funcin es un valor invlido (ejemplo: logaritmo de un
nmero negativo), produce un resultado indeterminado o infinito y hace pasar el bit
%S18 a 1; la palabra %SW17 indica la causa de la falla (seccin B, vase captulo
2.5-1).
en el caso de las funciones logartmicas, para los valores prximos de 1.0
(comprendidos entre 0,99 y 1,0 1,0 y 1,01), el resultado ser igual a 0, los bits %S18
y %SW17:X5 estn posicionados a 1.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%M0 LD %M0
%MF0:=SIN(%MF10) [%MF0:= SIN(%MF10)]
%I3.2 LD %I3.2
%MF2:=TAN(%MF10) [%MF2:= TAN(%MF10)]
%I3.3
LDR %I3.3
P %MF4:=ATAN(%MF20) [%MF4:= ATAN(%MF20)]
___________________________________________________________________________
2/26
Descripcin de las instrucciones avanzadas 2
B
Lenguaje Literal estructurado
IF %M0 THEN
%MF0:= SIN(%MF10) ;
END_IF ;
IF %I3.2 THEN
%MF2:= TAN(%MF10) ;
END_IF ;
IF RE %I3.3 THEN
%MF4:= ATAN(%MF20) ;
END_IF ;
Sintaxis
Operadores
SIN, COS, TAN Op1:=Operador (Op2)
ASIN, ACOS, ATAN
Operandos
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras indexables %MF %MF,%KF
Palabras no indexables Valor inm. flotante,
Expr. num. flotante.
Reglas de utilizacin
cuando el operando de la funcin es un valor invlido (ejemplo: arco coseno de un
nmero superior a 1), produce un resultado indeterminado o infinito y hace pasar
el bit %S18 a 1; la palabra %SW17 indica la causa de la falla (seccin B, vase
captulo 2.5-1).
las funciones SIN/COS/TAN admiten como parmetro un ngulo entre -4096 y
4096 pero su precisin disminuye progresivamente para los ngulos no
comprendidos en el intervalo -2 y +2 debido a la precisin que aporta el mdulo
2 cuando se aplica al parmetro antes de cualquier otra operacin.
___________________________________________________________________________
2/27
B
2.5-7 Instrucciones de conversin
Estas instrucciones permiten realizar operaciones de conversin:
DEG_TO_RAD: conversin de grados en radianes, el resultado es el valor del ngulo
comprendido entre 0 y 2
RAD_TO_DEG: conversin de radianes en grados, el resultado es el valor del ngulo
comprendido entre 0 y 360 grados
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
LD %M0
[%MF0:= DEG_TO_RAD(%MF10)]
LD %M2
[%MF2:= RAD_TO_DEG(%MF20)]
IF %M0 THEN
%MF0:= DEG_TO_RAD(%MF10) ;
END_IF ;
IF %I3.2 THEN
%MF2:= RAD_TO_DEG(%MF20) ;
END_IF ;
Sintaxis
Operadores
DEG_TO_RAD Op1:=Operador(Op2)
RAD_TO_DEG
Operandos
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras indexables %MF %MF,%KF
Palabras no indexables Valor inm. flotante,
Expr. num. flotante.
Reglas de utilizacin
el ngulo que se desea convertir debe estar comprendido entre -737280.0 y
+737280.0 (para las conversiones DEG_TO_RAD) o entre -4096 y 4096 (para
las conversiones RAD_TO_DEG).
Para los valores que no estn comprendidos entre estos lmites, el resultado que se
muestra ser + 1.#NAN, con los bits %S18 y %SW17:X0 posicionados a 1.
___________________________________________________________________________
2/28
Descripcin de las instrucciones avanzadas 2
B
2.5-8 Redondeo de un valor flotante en formato ASCII
La funcin ROUND proporciona el valor aproximado de un nmero flotante representado
por una cadena de caracteres.
LD TRUE
OPERATE [ROUND(%MB10:15,%MW100,%MB50:15)]
ROUND(%MB10:15,%MW100,%MB50:15) ;
Ejemplos:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
%MB10:15 '-' '1' '.' '2' '3' '4' '5' '6' '7' '0' 'e' '+' '2' '6' $00
%MW100 = 4
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
%MB50:15 '-' '1' '.' '2' '3' '5' '0' '0' '0' '0' 'e' '+' '2' '6' $00
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
%MB10:15 '+' '1' '.' '1' '3' '5' '4' '9' '4' '2' 'e' '-' '3' '0' $00
%MW100 = 2
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
%MB50:15 '+' '1' '.' '1' '0' '0' '0' '0' '0' '0' 'e' '-' '3' '0' $00
___________________________________________________________________________
2/29
B
Sintaxis
Operandos
Reglas:
___________________________________________________________________________
2/30
Descripcin de las instrucciones avanzadas 2
B
2.6 Instrucciones de conversin numrica
2.6-1 Instrucciones de conversin BCD <--> Binario
Se proponen seis instrucciones de conversin:
BCD_TO_INT : conversin de un nmero BCD 16 bits en entero 16 bits,
INT_TO_BCD : conversin de un entero 16 bits en nmero BCD 16 bits,
DBCD_TO_DINT : conversin de un nmero BCD 32 bits en entero 32 bits,
DINT_TO_DBCD : conversin de un entero 32 bits en nmero BCD 32 bits,
DBCD_TO_INT : conversin de un nmero BCD 32 bits en entero 16 bits,
INT_TO_DBCD : conversin de un entero 16 bits en nmero BCD 32 bits.
Decimal 0 1 2 3 4 5 6 7 8 9
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Ejemplo:
la palabra %MW5 expresa el valor BCD "2450" que corresponde al valor binario
0010 0100 0101 0000,
la palabra %MW12 expresa el valor decimal "2450" que corresponde al valor binario
0000 1001 1001 0010.
La palabra %MW5 pasa a la palabra %MW12 mediante la instruccin BCD_TO_INT.
La palabra %MW12 pasa a la palabra %MW5 mediante la instruccin INT_TO_BCD.
Estructura
Las operaciones de conversin se realizan de la manera descrita a continuacin:
Lenguaje de contactos Lenguaje Lista de instrucciones
%MW0:=BCD_TO_INT(%MW10) LD TRUE
[%MW0:= BCD_TO_INT(%MW10)]
%I1.2
LD %I1.2
%MW10:=INT_TO_BCD(%KW9) [%MW10:= INT_TO_BCD(%KW9)]
Operandos
Sintaxis
Operadores (conversin de un nmero de 32 bits)
DBCD_TO_DINT Op1:= Operador (Op2)
DINT_TO_DBCD
DBCD_TO_INT
Operandos
Ejemplos de aplicacin
La instruccin BCD_TO_INT trata un valor de consigna presente en la entrada del
autmata en codificadores rotativos con la codificacin BCD.
La instruccin INT_TO_BCD muestra valores numricos (ej.: resultado de clculo,
valor actual de bloque de funcin) en los indicadores con la codificacin BCD.
___________________________________________________________________________
2/32
Descripcin de las instrucciones avanzadas 2
B
Reglas de utilizacin
Conversin BCD --> Binario
La instruccin BCD_TO_INT verifica que el operador de conversin acta sobre un
valor codificado en BCD. Si el valor no es un valor BCD, el bit sistema %S18 se pone
a 1 y el resultado devuelve el valor del primer cuarto que falta.
Ej.: BCD_TO_INT(%MW2) con %MW2=4660 da como resultado 1234;
en cambio, %MW2=242 (16#00F2) pone %S18 a 1 y el resultado
es 15.
Para la instruccin DBCD_TO_INT, si el nmero BCD es superior a 32767, el bit
sistema %S18 se pone a 1 y el valor -1 se almacena en el resultado.
Conversin Binario --> BCD
La instruccin INT_TO_BCD verifica que el operador de conversin acta sobre un
valor comprendido entre 0 y 9999 (o 0 y 9999 9999). Si no, el bit sistema %S18 se
pone a 1 y el resultado devuelve el valor del parmetro de entrada.
Ej.: INT_TO_BCD(%MW2) con %MW2=2478 da como resultado 9336.
En cambio, %MW2=10004 pone %S18 a 1 y el resultado es 10004.
%MFO:=INT_TO_REAL(%MW10) LD TRUE
[%MF0:= INT_TO_REAL(%MW10)]
%I1.8 LD %I1.8
%MD4:=REAL_TO_DINT(%MF9) [%MD4:= REAL_TO_DINT(%MF9)]
Operandos
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras indexables %MD,%KD
Palabrasno indexables Val. inm.,%ID,%QD,%SD
Expr. numrica
Palabras flotantes indexables %MF
Ejemplo: conversin doble palabra entero --> flotante 68905 000 --> 6.8905e+07
Operador Op1:=REAL_TO_INT(Op2)
Op1:=REAL_TO_DINT(Op2)
Operandos
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras indexables %MW
Palabrasno indexables %QW,%NW,%BLK
Dobles palabras indexables %MD
Dobles palabras no indexables %QD
Palabras flotantesindexables %MF,%KF
Palabras flotantesno indexables Val. inm. flotante
Ejemplo: conversin flotante --> palabra entero 5978.6 --> 5979
conversin flotante--> doble pal. entero -1235978.6 --> -1235979
Nota
Si en una conversin real --> entero (o real --> entero doble palabra) el valor flotante est fuera
de los lmites de la palabra (o de la doble palabra), el bit %S18 se pone a 1.
___________________________________________________________________________
2/34
Descripcin de las instrucciones avanzadas 2
B
2.6-3 Instrucciones de conversin Gray --> Entero
La instruccin GRAY_TO_INT convierte una palabra en cdigo Gray en un entero
(cdigo binario puro).
Nota sobre el cdigo Gray: el cdigo Gray o "binario reflejado" permite codificar un
valor numrico en curso de evolucin en una serie de configuraciones binarias que
se diferencian en el cambio de estado de un solo bit. Este cdigo permite, por ejemplo,
evitar el riesgo siguiente: en binario puro, el paso de 0111 a 1000 puede generar
valores aleatorios comprendidos entre 0 y 1000, puesto que los bits no cambian de
valor de modo perfectamente simultneo.
Decimal
Decimal 0 1 2 3 4 5 6 7 8 9
Binary 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Gray 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
%MW0:=GRAY_TO_INT(%MW10) [%MW0:= GRAY_TO_INT(%MW10)]
Sintaxis
Operador Op1:=GRAY_TO_INT(Op2)
Operandos
___________________________________________________________________________
2/35
B
2.6-4 Instrucciones de conversin Palabra <--> Doble palabra
Las instrucciones que se describen a continuacin son tiles en el caso de objetos
puramente simblicos (caso de los bloques de funcin DFB). En el caso de los objetos
direcccionables, los mecanismos de solapamiento (ejemplo: la doble palabra %MD0
est constituida por las palabras %MW0 y %MW1) hace intil el uso de estas
instrucciones.
Ejemplo: Presin_cuba:=LW(Parmetro_1)
si Parmetro_1 = 16#FFFF1234, Presin_cuba = 16#1234
Ejemplo: Presin_cuba:=LW(Parmetro_1)
si Parmetro_1 = 16#FFFF1234, Presin_cuba = 16#FFFF
Ejemplo: Presin_cuba:=LW(Parmetro_1,Parmetro_2)
si Parmetro_1 = 16#1234, Parmetro_1 = 16#FFFF,
Presin_cuba = 16#FFFF1234
___________________________________________________________________________
2/36
Descripcin de las instrucciones avanzadas 2
B
2.7 Instrucciones para tablas de palabras
2.7-1 Generalidades
El programa PL7 permite efectuar operaciones en tablas:
de palabras,
de dobles palabras,
de palabras flotantes.
Las tablas de palabras son series de pa- %KW10 16 bits
labras adyacentes del mismo tipo y de
longitud definida: L.
%KW14
Ejemplo de tabla de palabras: %KW10:5
___________________________________________________________________________
2/37
B
2.7-2 Asignacin de tablas de palabras
Se pueden realizar las siguientes operaciones de asignacin de tablas de palabras:
valor inmediato -> tabla de palabras (indexada) ej. 1
valor inmediato doble formato -> tabla de dobles palabras (indexada)
valor inmediato flotante -> tabla de palabras flotantes (indexada)
Ej. 1: %MW0:5:= 100
100 %MW0
100
100 100
100
100 %MW4
100 %MW0
%MW11 100
100 100
100
100 %MW4
Nota
Las asignaciones mltiples se autorizan en los ejemplos 1 y 2
(%MW0:4:= %MW10:6:= %MW100) pero no en el ejemplo 3.
___________________________________________________________________________
2/38
Descripcin de las instrucciones avanzadas 2
B
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
%MW0:5:=100 [%MW0:5:= 100] ej 1
LD %I3.2
%I3.2 [%MW0:5:= %MW11] ej 2
%MW0:5:=%MW11
Lenguaje Literal estructurado
%I3.3
IF RE %I3.3 THEN
P %MW0:5:=%KW0:5 %MW0:5:= %KW0:5 ; ej 3
END_IF ;
Sintaxis
Operador:= Op1:= Op2
Tablas de palabras
Tablas de flotantes
Nota
Se prohiben las asignaciones mltiples en las tablas.
___________________________________________________________________________
2/39
B
2.7-3 Instrucciones aritmticas para tablas
Estas instrucciones permiten realizar una operacin aritmtica entre dos operandos
de tipo tabla de palabras (o palabra y tabla de palabras).
+ : suma, * : multiplicacin,
- : resta, / : divisin,
REM : resto de la divisin.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0 LD %M0
%MW0:10:=%MW20:10+100 [%MW0:10:=%MW20:10+100]
%I3.2 LD %I3.2
%MD50:5:=%KD0:5+%MD0:5 [%MD50:5:=%KD0:5 + %MD0:5]
Sintaxis
Operadores
Operandos
Tablas de palabras
___________________________________________________________________________
2/40
Descripcin de las instrucciones avanzadas 2
B
2.7-4 Instrucciones lgicas para tablas
Las instrucciones asociadas permiten realizar una operacin lgica entre dos
operandos de tipo tabla de palabras (o palabra y tabla de palabras).
AND : Y (bit a bit),
OR : O lgica (bit a bit),
XOR : O exclusiva (bit a bit),
NOT : complemento lgico (bit a bit) de una tabla (1 solo operando).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M0 LD %M0
%MW0:5:=%KW0:5AND16#FF00 [%MW0:5:=%KW0: 5 AND 16#FF00]
Operandos
Tablas de palabras
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%I3.2
LD %I3.2
%MW5:=SUM(%MW32:12)
[%MW5:=SUM(%MW32:12)]
Sintaxis
Funcin Res:=SUM(Tab) Res:=SUM_ARR(Tab)
Parmetros
___________________________________________________________________________
2/42
Descripcin de las instrucciones avanzadas 2
B
2.7-6 Funciones de comparacin de tablas
Las funciones EQUAL (sobre entero) y EQUAL _ARR (sobre flotante) comparan 3
tablas elemento por elemento.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I3.2 LD %I3.2
%MW5:=EQUAL(%MW20:7,%KW0:7,3) [%MW5:=EQUAL(%MW20:7,%KW0:7,3)]
Sintaxis
Funcin Res:=EQUAL(Tab1,Tab2,rango)
Res:=EQUAL_ARR(Tab1,Tab2)
___________________________________________________________________________
2/43
B
Parmetros
Tipo Resultado (Res) Tabla(Tab) Rango
Tablas de palabras %MW:L,%KW:L,%Xi.T:L
Palabras indexables %MW %MW,%KW, %Xi.T
Palabras no indexables %QW,%SW, Val. inm.%QW,
%NW %IW,%SW,%NW
Expr. num.
Tablas de dobles palabras %MD:L,%KD:L
Dobles palabras indexables %MD %MD,%KD
Dobles palabras no indexables %QD,%SD Val. inm.%QD,
%ID,%SD
Expr. num.
Tablas de flotantes %MF:L,%KF:L
Palabras flotantes %MF
Notas
Las tablas deben tener obligatoriamente la misma longitud.
Si el parmetro de rango es superior al tamao de las tablas, el resultado es igual al rango.
Ejemplo %MW5:=EQUAL(%MW30:4,%KW0:4,1)
0 %MW30= 10 %KW0= 20
1 %MW31= 20 %KW1= 20
2 %MW32= 30 %KW2= 30
3 %MW33= 40 %KW3= 60 ==> %MW33 %KW3==> %MW5= 3
___________________________________________________________________________
2/44
Descripcin de las instrucciones avanzadas 2
B
2.7-7 Funciones de bsqueda para tablas
Se proponen 11 funciones de bsqueda:
FIND_EQW: en una tabla de palabras, busca la posicin del primer elemento igual
a un valor dado.
FIND_GTW: en una tabla de palabras, busca la posicin del primer elemento
superior a un valor dado.
FIND_LTW: en una tabla de palabras, busca la posicin del primer elemento inferior
a un valor dado.
FIND_EQD: en una tabla de dobles palabras, busca la posicin del primer elemento
igual a un valor dado.
FIND_GTD: en una tabla de dobles palabras, busca la posicin del primer elemento
superior a un valor dado.
FIND_LTD: en una tabla de dobles palabras, busca la posicin del primer elemento
inferior a un valor dado.
FIND_EQR: en una tabla de flotantes, busca la posicin del primer elemento igual
a un valor dado,
FIND_GTR: en una tabla de flotantes, busca la posicin del primer elemento superior
a un valor dado,
FIND_LTR: en una tabla de flotantes, busca la posicin del primer elemento inferior
a un valor dado,
FIND_EQWP: en una tabla de palabras, busca la posicin del primer elemento igual
a un valor dado desde un rango,
FIND_EQDP: en una tabla de dobles palabras, busca la posicin del primer
elemento igual a un valor dado desde un rango.
El resultado de estas instrucciones es igual al rango del primer elemento encontrado
o a -1 si la bsqueda no tiene xito
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I3.2 LD %I3.2
%MW5:=FIND_EQW(%MW20:7,%KW0) [%MW5:=FIND_EQW(%MW20:7,%KW0)]
%MW9:=FIND_EQWP(%MW30:8,%KF5,%MW4);
___________________________________________________________________________
2/45
B
Sintaxis
Funcin
FIND_EQW,FIND_GTW,FIND_LTW Res:=Funcin(Tab,Val)
FIND_EQD,FIND_GTD,FIND_LTD
FIND_EQR,FIND_GTR,FIND_LTR
FIND_EQWP,FIND_EQDP Res:=Funcin(Tab,Val,rango)
Parmetros
Tablas de palabras (FIND_EQW,FIND_GTW,FIND_LTW,FIND_EQWP )
Tipo Resultado (Res) Tabla (Tab) Valor (Val), rango
Tablas de palabras indexables %MW:L,%KW:L%Xi.T:L
Palabras indexables %MW %MW,%KW, %Xi.T
Palabras no indexables %QW,%SW Val. inm.%QW,
%NW %IW,%SW,%NW,
Expr. num.
Ejemplo %MW5:=FIND_EQW(%MW30:4,%KW0)
Rango
0 %MW30= 10
1 %MW31= 20
2 %MW32= 30 ==> %KW0= 30 ==> %MW5= 2
3 %MW33= 40
___________________________________________________________________________
2/46
Descripcin de las instrucciones avanzadas 2
B
2.7-8 Funciones de bsqueda de valores mx. y mn. para tablas
Se proponen 6 funciones de bsqueda:
MAX_ARW: en una tabla de palabras, busca el valor mximo.
MIN_ARW: en una tabla de palabras, busca el valor mnimo.
MAX_ARD: en una tabla de dobles palabras, busca el valor mximo.
MIN_ARD: en una tabla de dobles palabras, busca el valor mnimo.
MAX_ARR: en una tabla de flotantes, busca el valor mximo
MIN_ARR: en una tabla de flotantes, busca el valor mnimo.
El resultado de estas instrucciones es igual al valor mximo (o mnimo) encontrado
en la tabla.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I3.2 LD %I3.2
%MW5:=MAX_ARW(%MW20:7) [%MW5:=MAX_ARW(%MW20:7)]
Sintaxis
Funcin
MAX_ARW,MIN_ARW Res:=Funcin(Tab)
MAX_ARD,MIN_ARD
MAX_ARR,MIN_ARR
Parmetros
___________________________________________________________________________
2/47
B
2.7-9 Nmero de ocurrencias de un valor en una tabla
Se proponen 3 funciones de bsqueda:
OCCUR_ARW: en una tabla de palabras, busca el nmero de elementos iguales
a un valor dado.
OCCUR_ARD: en una tabla de dobles palabras, busca el nmero de elementos
iguales a un valor dado.
OCCUR_ARR: en una tabla de flotantes, busca el nmero de elementos iguales a
un valor dado.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I3.2 LD %I3.2
%MW5:=OCCUR_ARW(%MW20:7,%KW0)
[%MW5:=OCCUR_ARW(%MW20:7,%KW0)]
Sintaxis
Funcin Res:= Funcin (Tab,Val)
OCCUR_ARW
OCCUR_ARD
OCCUR_ARR
Parmetros
B
2.7-10 Funciones de desplazamiento circular para tablas
Se proponen 6 funciones de desplazamiento:
ROL_ARW: desplaza de modo circular 0
elementos de la tabla de palabras n 1
posiciones de arriba hacia abajo. 2
ROL_ARD: desplaza de modo circular 4
elementos de la tabla de dobles 5
palabras n posiciones de arriba hacia
abajo.
ROL_ARR: desplaza de modo circular
elementos de la tabla de flotantes n
posiciones de arriba hacia abajo,
0
ROR_ARW: desplaza de modo circular
1
elementos de la tabla de palabras n
2
posiciones de abajo hacia arriba.
4
ROR_ARD: desplaza de modo circular
5
elementos de la tabla de dobles
palabras n posiciones de abajo hacia
arriba.
ROR_ARR: desplaza de modo circular
elementos de la tabla de flotantes n
posiciones de abajo hacia arriba.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
LDR %I3.2
[ROL_ARW(%KW0,%MW20:7)]
%I3.2
P ROL_ARW(%KW0,%MW20:7)
Lenguaje Literal estructurado
%I1.2
P ROR_ARD(2,%MD20:7) IF RE%I1.2 THEN
ROR_ARD (2,%MD20:7) ;
END_IF ;
%I1.3
IF RE%I1.3 THEN
P ROR_ARR(2,%MF40:5) ROR_ARR (2,%MF40:5) ;
END_IF ;
___________________________________________________________________________
2/49
B
Sintaxis
___________________________________________________________________________
2/50
Descripcin de las instrucciones avanzadas 2
B
2.7-11 Funciones de ordenacin para tablas
Se proponen 3 funciones de ordenacin:
SORT_ARW: ordena los elementos de la tabla de palabras por orden creciente o
decreciente y almacena el resultado en esta misma tabla.
SORT_ARD: ordena los elementos de la tabla de dobles palabras por orden
creciente o decreciente y almacena el resultado en esta misma tabla.
SORT_ARR: ordena los elementos de la tabla de flotantes por orden creciente o
decreciente y almacena el resultado en esta misma tabla.
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I3.2
LD %I3.2
SORT_ARW(%MW20,%MW0:6) [SORT_ARW(%MW20,%MW0:6)]
%I1.2
Lenguaje Literal estructurado
SORT_ARD(-1,%MD20:6)
IF %I1.2 THEN
%I1.3 SORT_ARD (-1,%MD20:6) ;
SORT_ARD(0,%MD40:8) END_IF ;
IF %I1.3 THEN
SORT_ARR (0,%MF40:8) ;
END_IF ;
Sintaxis
Funcin Funcin (sentido,Tab)
SORT_ARW
SORT_ARD
SORT_ARR
El parmetro "sentido" indica el orden: sentido > 0 significa el orden creciente,
sentido < 0 el orden decreciente.
El resultado (tabla ordenada) se devuelve en el parmetro Tab (tabla por ordenar).
Parmetros
Tablas de palabras
___________________________________________________________________________
2/51
B
2.7-12 Funcin de clculo de longitud de tablas
Se ofrecen 4 funciones de clculo de longitud de tablas. Estas funciones son tiles
especialmente para la programacin de los bloques de funcin DFB, cuando las
longitudes de las tablas no se han definido explcitamente:
LENGTH_ARW: calcula la longitud de una tabla de palabras en nmero de
elementos,
LENGTH_ARD: calcula la longitud de una tabla de dobles palabras en nmero de
elementos,
LENGTH_ARR: calcula la longitud de una tabla de flotantes en nmero de elementos,
LENGTH_ARX: calcula la longitud de una tabla de bits en nmero de elementos,
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
LD %I3.2
%I3.2 [LENGTH_ARW(tab_mot)]
LENGTH_ARW(tab_mot)
Sintaxis
Funcin Result = Funcin (Tab)
LENGTH_ARW
LENGTH_ARD
LENGTH_ARR
LENGTH_ARX
Parmetros
Tablas de palabras
B
2.8 Instrucciones para cadenas de caracteres
2.8-1 Formato de una cadena o tabla de caracteres
Una tabla de caracteres consta de una serie de bytes en la que se puede almacenar
una cadena de caracteres. El tamao de la tabla permite especificar la longitud mxima
de la cadena de caracteres (255 car. mximos).
Ejemplo: %MB4:6 representa una tabla de 6 bytes que
contiene una cadena de 6 caracteres mximos.
El primer byte del inicio de una tabla debe ser par (no es posible introducir una tabla
cuyo byte inicial es impar, ej.: %MB5:6).
Las tablas de bytes utilizan el mismo rea de memoria que las palabras %MW y %MD;
por consiguiente, existe el riesgo de solapamiento: vase el captulo 1.2-4, seccin
A.
El trmino cadena de caracteres representa todos los caracteres comprendidos entre
el inicio de la tabla y el primer terminador de cadena encontrado.
Se llama "terminador de cadena" el carcter NULO (cdigo hex 00). El signo lo
simboliza en este captulo.
Ejemplos:
la tabla siguiente (de 12 elementos) contiene la cadena de caracteres 'ABCDE' (de
longitud 5)
'A' 'B' 'C' 'D' 'E' 'J' 'K' 'L' 'M' 'N' 'O'
___________________________________________________________________________
2/53
B
2.8-2 Asignacin para cadenas de caracteres
Permite transferir una cadena de caracteres a una tabla de bytes de longitud L.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MB30:12:= 'mise_en_run' [ %MB30:12:= 'mise_en_run']
%MB30:12:='mise_en_run' ;
Sintaxis
Operador Op1:=Op2
Operandos
___________________________________________________________________________
2/54
Descripcin de las instrucciones avanzadas 2
B
2.8-3 Comparacin alfanumrica
Estos operadores permiten comparar dos cadenas de caracteres contenidas en las
tablas de bytes definidas con parmetros. La comparacin se efecta carcter por
carcter.
El resultado es un bit que vale 1 si ambas cadenas satisfacen carcter por carcter la
condicin proporcionada por el operador; si no, el bit vale 0.
La tabla de cdigos ASCII (ISO 646) indica el orden de los caracteres. Por ejemplo,
la cadena 'Z' es mayor que la cadena 'AZ' que es mayor que la cadena 'ABC'.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%MB 40 41 42 43 44 45 46 47 48 49 50 51
'a' 'b' 'c' 'd' 'e' 'f' 'h' 'l' 'k' 'w' 'z'
Operandos
Tipo Operando 1 (Op1) y Operando 2 (Op2)
Tablas de bytes %MB:L,%KB:L, valor inmediato
___________________________________________________________________________
2/55
B
2.8-4 Conversin Numrico <---> ASCII
Estas funciones permiten convertir un valor numrico (o flotante) en cadena de
caracteres codificada en ASCII, o a la inversa.
El resultado de la conversin debe transferirse a un objeto PL7 mediante una
operacin de asignacin: tabla de bytes, palabra de simple o doble longitud o flotante.
___________________________________________________________________________
2/56
Descripcin de las instrucciones avanzadas 2
B
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
%MB10:7:= INT_TO_STRING(%MW20) [ %MB10:7:=INT_TO_STRING(%MW20)]
OPERATE
Lenguaje Literal estructurado
%MB2:13:= DINT_TO_STRING(%MD30)
%MB2:13:=DINT_TO_STRING (%MD30) ;
%MB 2 3 4 5 6 7 8 9 10 11 12 13 14
'-' '0' '0' '2' '3' '4' '7' '1' '1' '0' '8' '4'
Sintaxis
Operador Res:= INT_TO_STRING (valor)
Operandos
Tipo Resultado (Res) Valor
Tablas de 6 bytes %MB:7
+ terminador
Palabras indexables %MW, %KW, %Xi.T
Palabras no indexables %IW,%QW,%SW,%NW
Val inm., Expr num.
___________________________________________________________________________
2/57
B
2.8-6 Conversin ASCII ---> Binario
Estas funciones permiten convertir en binario una cadena de caracteres que representa
un valor numrico (resultado transferido a una palabra de simple o doble longitud).
Cada elemento de la tabla definida con un parmetro representa el cdigo ASCII de
un carcter. Los caracteres autorizados son los nmeros y los caracteres '+' y '-'.
Funcin STRING_TO_INT: convierte una cadena de 6 caracteres que representa
un valor numrico comprendido entre -32768 y +32767. El signo se almacena en
el primer carcter, los diez miles en el segundo, ..., las unidades en el sexto. El valor
debe alinearse a la derecha en la cadena.
Funcin STRING_TO_DINT: convierte una cadena de 12 caracteres que representa
un valor numrico comprendido entre -2147483648 y +2147483647. El signo se
almacena en el primer carcter, el '0' en el segundo, los millares en el tercero, ..., las
unidades en el duodcimo. El valor debe alinearse a la derecha en la cadena.
Estructura
LD TRUE
OPERATE [%MW13:= STRING_TO_INT(%MB20:7)]
%MW13:= STRING_TO_INT(%MB20:7)
B
2.8-7 Conversin Flotante ---> ASCII
Esta funcin permite convertir un valor numrico real contenido en una palabra de tipo
flotante en cadena de caracteres codificada en ASCII. El resultado se transfiere a una
tabla de 13 bytes + el terminador.
Cada dgito del valor as como los caracteres '+', '-', '.', 'e' y 'E' se codifican en ASCII
en un elemento de la tabla resultante.
El signo del valor se encuentra en el primer carcter, la coma (.) en el tercero, el
exponente 'e' en el dcimo, el signo del exponente en el undcimo.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
[ %MB20:14:= REAL_TO_STRING (%MF30)]
Sintaxis
Operandos
___________________________________________________________________________
2/59
B
2.8-8 Conversin ASCII --> Flotante
Esta funcin permite convertir en flotante una cadena de caracteres que representa
un valor numrico real (resultado transferido a una palabra de tipo flotante).
Cada elemento de la tabla definida con un parmetro representa el cdigo ASCII de
un carcter. Los caracteres autorizados son los dgitos y los caracteres '+', '-', '.', 'e'
y 'E'. No se utiliza el terminador de cadena para determinar el fin de cadena. Esto
significa que cada uno de los 13 caracteres de la tabla debe ser correcto.
El signo del valor debe encontrarse en el primer carcter, la coma (.) en el tercero, la
'e' en el dcimo, el signo del exponente en el undcimo.
Por ejemplo, el valor 3.12 debe indicarse bajo la forma '+3.120000e+00'.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
[ %MF18:= STRING_TO_REAL (%MB20:13)]
Sintaxis
Operandos
El bit %S18 se pone a 1 si el valor descrito por la cadena no est comprendido entre
-3.402824e+38 y -1.175494e-38 o +1.175494e-38 y +3.402824e+38 o si uno de los
13 caracteres es errneo.
___________________________________________________________________________
2/60
Descripcin de las instrucciones avanzadas 2
B
2.8-9 Concatenacin de dos cadenas
Concatenacin de dos cadenas de caracteres definidas con parmetros. El resultado
es una tabla de bytes que contiene una cadena de caracteres.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
%MB30:14:=CONCAT(%MB4:6,% MB14:9) [ %MB30:14:= CONCAT (%MB4:6, %MB14:9)]
%MB 14 15 16 17 18 19 20 21 22
't' 'e' 's' 't' 'a' 'b' 'l' 'e'
%MB 30 31 32 33 34 35 36 37 38 39 40 41 42 43
'i' 'n' 'c' 'o' 'n' 't' 'e' 's' 't' 'a' 'b' 'l' 'e'
Sintaxis
Operador Res:=CONCAT (cadena1, cadena2)
Operandos
LD TRUE
OPERATE
%MB14:9:=DELETE(%MB30:14,% MW2,%MW4) [%MB14: 9:= DELETE (%MB30:14, %MW2,
%MW4)]
%MB 14 15 16 17 18 19 20 21 22
'i' 'n' 's' 't' 'a' 'b' 'l' 'e'
Sintaxis
Operador Res:=DELETE (cadena, long, pos)
Operandos
B
Si la tabla resultante es demasiado larga, la cadena se completa con caracteres de tipo
terminador .
El bit sistema %S15 se pone a 1 en los casos siguientes:
la longitud que se va a eliminar es nula; la tabla de salida es una copia de la tabla de
origen.
la posicin es superior a la longitud de la cadena, o la posicin del primer terminador
encontrado es inferior o igual a la posicin del primer carcter que se va a eliminar;
el resultado es pues una cadena vaca.
la posicin es igual a 0; la tabla resultante contiene una cadena vaca.
la tabla resultante es demasiado corta: se efecta un truncamiento.
LD TRUE
OPERATE [%MB2:14:= INSERT (%MB20:9, %MB30:6,
%MB2:14:=INSERT(%MB20:9,%MB30:6,%MW40) %MW40)]
%MB 30 31 32 33 34 35
'c' 'o' 'n' 't' 'e'
%MB 2 3 4 5 6 7 8 9 10 11 12 13 14 15
'i' 'n' 'c' 'o' 'n' 't' 'e' 's' 't' 'a' 'b' 'l' 'e'
___________________________________________________________________________
2/63
B
Sintaxis
Operador Res:=INSERT (cadena1, cadena2, pos)
Operandos
Notas
El parmetro posicin tiene el valor inicial 1 que corresponde a la primera posicin en la cadena
de caracteres.
Es imposible efectuar una insercin en el principio de la cadena. En este caso, se utiliza la funcin
CONCAT.
El valor del parmetro posicin es negativo o igual a 0. En este caso, se interpreta como igual
a 0 y la tabla resultante contiene una cadena vaca (compuesta de terminadores).
___________________________________________________________________________
2/64
Descripcin de las instrucciones avanzadas 2
B
2.8-12 Reemplazo una subcadena de caracteres
Reemplaza un fragmento de una cadena de caracteres definida en la tabla de origen
(cadena1) por una subcadena de caracteres definida en la tabla de reemplazo
(cadena2). Los parmetros de posicin (pos.) y de longitud (long.) definen el
reemplazo que se va a efectuar.Esta longitud corresponde a la longitud de la cadena
que va a desaparecer, no a la longitud de la subcadena que la reemplaza.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MB2: 13:=REPLACE(%MB20:12,% MB30:9, [ %MB2:13:= REPLACE (%MB20:12,
%MW40, %MW41) %MB30:9, %MW40, %MW41)]
%MB 20 21 22 23 24 25 26 27 28 29 30 31
Cadena 1 'm' 'i' 's' 'e' '_' 'e' 'n' '_' 'r' 'u' 'n'
%MB 30 31 32 33 34 35 36 37 38
Cadena 2 's' 't' 'o' 'p' 'r' 'u' 'n'
%MB 2 3 4 5 6 7 8 9 10 11 12 13 14
'm' 'i' 's' 'e' '_' 'e' 'n' '_' 's' 't' 'o' 'p'
Sintaxis
Operador Res:=REPLACE(cadena1, cadena2, long., pos.)
Operandos
Si la tabla de salida es demasiado larga, la cadena se completa con caracteres de tipo terminador.
___________________________________________________________________________
2/66
Descripcin de las instrucciones avanzadas 2
B
2.8-13 Extraccin de una subcadena de caracteres
Extraccin de un cierto nmero de caracteres en una cadena de origen definida por
parmetro (cadena).
El parmetro posicin (pos) indica el rango del primer carcter que se va a extraer; el
parmetro longitud (long) indica el nmero de caracteres que se van a extraer.
La cadena extrada se almacena en una tabla de bytes (Res.).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
[%MB14: 7:= MID (%MB30:13, %MW2, %MW4)]
%MB14:7:=MID(%MB30:13,% MW2,%MW4)
==> resultado
%MB 14 15 16 17 18 19 20
's' 't' 'o' 'p'
Sintaxis
Operandos
___________________________________________________________________________
2/67
B
Notas
El parmetro posicin tiene el valor inicial 1 que corresponde a la primera posicin en la cadena
de caracteres.
Si la tabla de salida es demasiado larga, la cadena se completa con caracteres de tipo terminador.
Si la longitud definida por el parmetro es superior al tamao de la cadena de origen, la tabla
resultante contiene pues la cadena de origen.
Si se alcanza el ltimo elemento de la tabla o el terminador de cadena antes de extraer el nmero
de caracteres definido por el parmetro longitud, la extraccin se detiene.
El bit sistema %S15 se pone a 1 en los casos descritos a continuacin.
Si el valor del parmetro longitud que se va a extraer es negativo o nulo. En este caso, se
interpreta como igual a 0; la tabla resultante contiene pues una cadena vaca (compuesta de
terminadores).
Si el valor del parmetro posicin de inicio de extraccin es nulo o superior a la longitud de la
tabla o superior o igual a la posicin del primer terminador. En este caso, la tabla resultante
contiene una cadena vaca (compuesta de terminadores).
Si la tabla resultante es demasiado corta, se efecta un truncamiento.
___________________________________________________________________________
2/68
Descripcin de las instrucciones avanzadas 2
B
2.8-14 Extraccin de caracteres
Extraccin de un cierto nmero de caracteres ms a la izquierda (LEFT) o a la derecha
(RIGHT) en una cadena de origen definida por el parmetro (cadena).
El parmetro longitud (long) define el nmero de caracteres que se va a extraer.
La cadena extrada se almacena en una tabla de bytes (Res.).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MB10:10:=LEFT(%MB30:13,% MW2) [%MB10: 10:=LEFT (%MB30:13,%MW2)]
%MB 30 31 32 33 34 35 36 37 38 39 40 41 42
'm' 'i' 's' 'e' '_' 'e' 'n' '_' 's' 't' 'o' 'p'
==> resultado
%MB 10 11 12 13 14 15 16 17 18 19
'm' 'i' 's' 'e' '_' 'e' 'n' '_'
Sintaxis
Operador Res:=LEFT (cadena, long)
Operandos
___________________________________________________________________________
2/70
Descripcin de las instrucciones avanzadas 2
B
2.8-15 Comparacin de dos cadenas de caracteres
Comparacin de dos cadenas de caracteres. El resultado es una palabra que contiene
la posicin del primer carcter diferente.
En caso de igualdad perfecta entre ambas cadenas de caracteres, el resultado
es -1.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MW2:=EQUAL_STR(%MB18:14,%MB50:14) [%MW2:= EQUAL_STR (%MB18:14,
%MB50:14)]
%MB 18 19 20 21 22 23 24 25 26 27 28 29 30 31
'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'p' 'w' 'x' 'y' 'z'
%MB 50 51 52 53 54 55 56 57 58 59 60 61 62 63
'a' 'b' 'c' 'd' '?' 'f' 'g' 'h' 'v' 'w' 'x' 'y' 'z'
==> MW2:= 5
Sintaxis
Operador Res:=EQUAL_STR (cadena1, cadena2)
Operandos
Nota
Una longitud o una posicin negativa se interpreta como igual a 0.
LD TRUE
OPERATE [ %MW2:= FIND (%MB18:14, %MB50:4)]
%MW2:= FIND(%MB18:14, %MB 50:4)
%MB 18 19 20 21 22 23 24 25 26 27 28 29 30 31
'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'w' 'x' 'y' 'z'
%MB 50 51 52 53
'f' 'g' 'h'
==> MW2:= 6 Indica que el inicio de la cadena buscada se sita a partir del
sexto carcter.
Sintaxis
Operador Res:=FIND (cadena1, cadena2)
Operandos
Nota
Una longitud o una posicin negativa se interpreta como igual a 0.
___________________________________________________________________________
2/72
Descripcin de las instrucciones avanzadas 2
B
2.8-17 Longitud de una cadena de caracteres
Esta funcin devuelve la longitud de la cadena de caracteres definida por parmetros,
es decir el nmero de caracteres que se encuentran antes del terminador.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
[%MW2:= LEN (%MB20:14)]
%MW2:= LEN (%MB20:14)
%MB 20 21 22 23 24 25 26 27 28 29 30 31
'a' 'b' 'c' 'd' 'e' 'f' 'g' 'n' 'o' 'p' 'r'
==> %MW2 = 7
Sintaxis
Operandos
Nota
Si no se encuentra ningn terminador, esta funcin devuelve el tamao de la tabla (vase el
captulo 2.8-1).
___________________________________________________________________________
2/73
B
2.9 Instrucciones de gestin de tiempo: fechas, horas, duraciones
2.9-1 Formato de los parmetros
Los parmetros Fecha, Hora, Duracin utilizados por estas instrucciones corresponden
a los formatos estndar definidos por la norma IEC1131-3.
___________________________________________________________________________
2/74
Descripcin de las instrucciones avanzadas 2
B
Formato Hora del da (tipo TOD)
Esta formato permite codificar la hora, los minutos y los segundos. Corresponde al
formato TIME_OF_DAY de la norma.
El valor se muestra bajo la forma siguiente: hh:mm:ss
Por ejemplo: 23:12:34
El valor se codifica en BCD en 32 bits (una doble palabra) con 3 campos:
31 24 16 8 0 Horas: 2 dgitos (pal. ms sign.)
Hor Min Seg Minutos: 2 dgitos (pal. ms sign.)
Segundos: 2 dgitos (pal. menos sign.)
Ejemplo:
expresado en hexadecimal
23h 12h 34h = 23:12:34
64 48 40 32 24 16 8 0
Ao Mes Da Ho Min Seg
Ejemplo:
expresado en hexadecimal
1984h 06h 25h 23h 12h 34h
___________________________________________________________________________
2/75
B
Formato Hora, Minuto, Segundo (HMS)
Este formato, utilizado exclusivamente por la funcin TRANS_TIME, permite
codificar la hora, los minutos y los segundos.
___________________________________________________________________________
2/76
Descripcin de las instrucciones avanzadas 2
B
2.9-3 Funcin reloj-calendario
Esta funcin permite controlar acciones en horarios y fechas predefinidos o calculados.
Posiciona a 1 el parmetro de salida OUT si la fecha suministrada por el reloj del
autmata en el momento de la llamada de la funcin est comprendida en el perodo
programado en los parmetros de entradas.
Sintaxis
Operador SCHEDULE (DBEG, DEND, WEEK, HBEG, HEND, OUT)
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
[SCHEDULE (%KW0,%KW1,%KW2,%KD3,
OPERATE
%KD5,%M0)]
SCHEDULE (%KW0,%KW1,%KW2,%KD3,%KD5,%M0)
___________________________________________________________________________
2/77
B
Lenguaje Literal estructurado
Ejemplo: programacin de 2 franjas horarias no contnuas
SCHEDULE ( 16#0501, (* fecha de inicio: 1 mai*)
16#1031, (* fecha de trmino: 31 octobre*)
2#0000000001111100, (* lunes a viernes*)
16#08300000, (* hora de incio: 8h30*)
16#12000000, (* hora de trmino: 18h*)
%M0 (* resultado en: %M0*)
);
SCHEDULE ( 16#0501, (* fecha de inicio: 1 mai*)
16#1031, (* fecha de trmino: 31 octobre*)
2#0000000001111100, (* lunes a viernes*)
16#14000000, (* hora de inicio: 14h*)
16#18000000, (* hora de trmino: 18h*)
%M1 (* resultado en: %M1*)
);
%Q0.0:=%M0 OR %M1;
Operandos
SCHEDULE (DBEG, DEND, WEEK, HBEG, HEND, OUT)
Notas:
los 2 parmetros DBEG y DEND definen una franja de das en el ao. esta franja puede estar
solapada entre 2 aos civiles. Ejemplo: del 10 de octubre al 7 de abril. El 29 de febrero se puede
utilizar en este perodo, pero se ignorar en los aos no bisiestos.
los 2 parmetros HBEG y HEND definen una franja horaria en el da. esta franja puede estar
solapada entre 2 das. Ejemplo: de las 22h a las 6h 10min 20s.
si una de la fechas DBEG y DEND o una de las horas HBEG y HEND es errnea, es decir
que no corresponde a una fecha u hora real, la salida OUT estar a 0 y el bit %S17 se pondr
a 1.
si el autmata de destino no posee un reloj interno (caso del TSX37-10), la salida estar a 0
y el bit sistema %S17 se pondr a 1.
Cuando la precisin no es importante, es posible disminuir la carga del procesador del autmata
cadenciando la llamada de la funcin SCHEDULE mediante el bit sistema %S6 o %S7.
___________________________________________________________________________
2/78
Descripcin de las instrucciones avanzadas 2
B
2.9-4 Lectura de la fecha sistema
Lectura de la fecha sistema (Real Time Clock) y transferencia al objeto definido por
el parmetro en el formato Fecha y hora (DT).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD %M6
%M6 OPERATE [RRTC (%MW2:4)]
RRTC (%MW2:4)
Sintaxis
Operador RRTC (fecha)
Operando
Tipo Fecha
Tablas de 4 palabras %MW:4
en formato fecha y hora
___________________________________________________________________________
2/79
B
Lenguaje Literal estructurado
IF RE %M7 THEN
%MW2:= 16#4300 ;
%MW3:= 16#1732 ;
%MW4:= 16#1124 ;
%MW5:= 16#1995 ;
WRTC (%MW2:4) ;
END_IF ;
B
2.9-7 Lectura del da de la semana
Esta funcin proporciona como resultado el da actual de la semana bajo forma de
un nmero de 1 a 7 transferido a una palabra (1 = lunes, 2 = martes, 3 = mircoles,
4 = jueves, 5 = viernes, 6 = sbado, 7 = domingo).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M7 LD %M7
OPERATE
%MW5:=DAY_OF_WEEK() [%MW5:= DAY_OF_WEEK()]
IF %M7 THEN
%MW5:= DAY_OF_WEEK () ;
END_IF ;
Sintaxis
Operador Res:=DAY_OF_WEEK()
Operando
Observacin
Si la funcin no pudo actualizar el resultado por causa de un error de acceso al
reloj-calendario, el resultado devuelto es 0 y el bit sistema %S17 se pone a 1.
___________________________________________________________________________
2/81
B
2.9-8 Agregar/quitar una duracin en una fecha
Agregar o quitar una duracin (en dcimos de segundo) (In2) en una fecha de
origen(In1). El resultado es una nueva fecha transferida a una tabla de 4 palabras.
ADD_DT () = agrega una duracin SUB_DT () = quita una duracin
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M7 LD %M7
OPERATE
RRTC (%MW2:4) [RRTC (%MW2:4)]
[%MD8:= 906]
OPERATE [%MW2:4:= ADD_DT(%MW2:4,
%MD8:=906
%MD8)]
OPERATE [WRTC (%MW2:4)]
%MW2:4:=ADD_DT(%MW2:4,%MD8)
OPERATE
WRTC (%MW2:4)
IF %M7 THEN
RRTC (%MW2:4) ;
%MD8:= 906 ;
%MW2:4:= ADD_DT (%MW2:4, %MD8) ;
WRTC (%MW2:4) ;
END_IF ;
Sintaxis
Operadores Res:=ADD_DT (In1, In2)
___________________________________________________________________________
2/82
Descripcin de las instrucciones avanzadas 2
B
Operandos
Tipo Resultado (Res) In1 (fecha origen) In2 (duracin)
Tablas de 4 palabras %MW:4 %MW4:4, %KW:4
en formato fecha y hora
Dobles palabras indexables %MD,%KD
Dobles palabras %ID,%QD
no indexables Valor inmediato
Expr. numrica
Notas
El principio del redondeo se aplicar al parmetro "duracin" (expresado en 1/10 de
segundo) para permitir agregar a o quitar de la fecha (precisin de un segundo):
- sssssssss.0 a sssssssss.4 redondeado a sssssssss.0
- sssssssss.5 a sssssssss.9 redondeado a sssssssss.0 + 1.0
Si el resultado de la operacin est fuera del intervalo de valores autorizados, el bit sistema
%S17 se pone a 1 y el valor del resultado equivale al lmite mnimo (para SUB_DT) o queda
bloqueado en el mximo (para ADD_DT).
%M7 LD %M7
OPERATE
%MD8:= 906 [%MD8:= 906]
[%MD2:= ADD_TOD (%MD2, %MD8)]
OPERATE
%MD2:=ADD_TOD(%MD2,%MD8)
___________________________________________________________________________
2/83
B
Lenguaje Literal estructurado
IF %M7 THEN
%MD8:= 906 ;
%MD2:= ADD_TOD (%MD2, %MD8) ;
END_IF ;
Sintaxis
Operandos
Si el parmetro de entrada "hora del da" no puede interpretarse en el formato TOD, el bit
sistema %S17 se pone a 1 y el resultado es igual a 00:00:00 .
___________________________________________________________________________
2/84
Descripcin de las instrucciones avanzadas 2
B
2.9-10 Desviacin entre dos fechas (sin hora)
Calcula la desviacin de tiempo entre dos fechas. El resultado, indicado como valor
absoluto, se transfiere a una doble palabra.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%M7 LD %M7
OPERATE
%MD10:=DELTA_D(%MD2,%MD4) [%MD10:= DELTA_D (%MD2, %MD4)]
IF %M7 THEN
%MD10:= DELTA_D (%MD2, %MD4) ;
END_IF ;
Sintaxis
Operador Res:=DELTA_D(Fecha1,Fecha2)
Operandos
Atencin
Hay rebasamiento, si el resultado excede el valor mximo admitido para una
duracin (TIME). En este caso, el resultado es igual a 0 y el bit sistema %S18
se pone a 1.
Si uno de los parmetros de entrada es ininterpretable e incoherente en el
formato DATE, el bit sistema %S17 se pone a 1 y el resultado es igual a 0.
___________________________________________________________________________
2/85
B
2.9-11 Desviacin entre dos fechas (con hora)
Calcula la desviacin de tiempo entre dos fechas. El resultado, indicado como valor
absoluto, se transfiere a una doble palabra.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MD10:= DELTA_D T(%MW2:4,%MW6:4) [%MD10:= DELTA_DT (%MW2:4, %MW6:4)]
Operandos
Atencin
Hay rebasamiento si el resultado excede el valor mximo admitido para una
duracin (TIME). En este caso, el resultado es igual a 0 y el bit sistema %S18
se pone a 1.
Si uno de los parmetros de entrada es ininterpretable e incoherente en el
formato DT, el bit sistema %S17 se pone a 1 y el resultado es igual a 0.
___________________________________________________________________________
2/86
Descripcin de las instrucciones avanzadas 2
B
2.9-12 Desviacin entre dos horas
Calcula la desviacin de tiempo entre dos horas del da. El resultado, indicado como
valor absoluto, se transfiere a una doble palabra de duracin.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE
LD TRUE
%MD10:= DELTA_TOD (%MD2,%MD4 ) [%MD10:= DELTA_TOD (%MD2,
%MD4)]
Operandos
Atencin
Si uno de los parmetros de entrada es ininterpretable e incoherente en el formato
TOD, el bit sistema %S17 se pone a 1 y el resultado es igual a 0.
___________________________________________________________________________
2/87
B
2.9-13 Conversin de una fecha (sin hora) en cadena de caracteres
Esta instruccin convierte una fecha en cadena de caracteres (sin hora) en el formato:
YYYY-MM-DD (10 caracteres). El ltimo elemento de esta cadena es el carcter
terminador . Cada carcter Y,M,D simboliza un dgito.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE [%MB2:11:= DATE_TO_STRING
%MB2:11:= DATE_TO_STRING(%MD40 )
(%MD40)]
Sintaxis
Operador Res:=DATE_TO_STRING(Fecha)
Operandos
%MB 2 3 4 5 6 7 8 9
==>
'1' '9' '9' '8' '-' '1' '2' '-' ==> %S15 = 1
___________________________________________________________________________
2/88
Descripcin de las instrucciones avanzadas 2
B
2.9-14 Conversin de una fecha completa en cadena de caracteres
Esta instruccin convierte una fecha completa (con hora) en cadena de caracteres en
el formato: YYYY-MM-DD-HH:MM:SS (19 caracteres). El ltimo elemento de esta
cadena es el carcter terminador . Cada carcter Y,M,D,H,M,S simboliza un dgito.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE [%MB2:20:= DT_TO_STRING (%MW50:4)]
%MB2:20:= DT_TO_STRING(%MW50:4 )
Sintaxis
Operador Res:=DT_TO_STRING(Fecha)
Operandos
Tipo Resultado (Res) Fecha
Tablas de 20 bytes %MB:20
Tablas de 4 palabras %MW:4, %KW:4
en formato DT
___________________________________________________________________________
2/89
B
2.9-15 Conversin de una duracin en cadena de caracteres
Esta instruccin convierte una duracin (en el formato TIME) en cadena
de 15 caracteres. El resultado se descompone en horas, minutos, segundos y dcimos:
HHHHHH:MM:SS.D. El ltimo elemento de esta cadena es el carcter terminador .
Cada carcter H,M,S,D simboliza un dgito.
La duracin mx. corresponde a 119304 horas, 38 minutos, 49 segundos y 5 dcimos.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
%MB2:15:=TIME_TO_STRING(%MD40) [%MB2:15:=TIME_TO_STRING (%MD40)]
Sintaxis
Operador Res:=TIME_TO_STRING(Duracin)
Operandos
___________________________________________________________________________
2/90
Descripcin de las instrucciones avanzadas 2
B
Si la cadena de salida es demasiado larga, la cadena se completa con caracteres de tipo
terminador .
%MB2:16:= TIME_TO_STRING (%MD40)
==>
%MB 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
'0' '0' '7' '6' '5' '4' ':' '3' '2' ':' '1' '0' '.' '3'
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
%MB2:9:=TOD_TO_STRING(%MD40) [%MB2:9:= TOD_TO_STRING (%MD40)]
Sintaxis
Operador Res:=TOD_TO_STRING(hora)
Operandos
___________________________________________________________________________
2/92
Descripcin de las instrucciones avanzadas 2
B
2.9-17 Conversin de una duracin en HHHH:MM:SS
Esta instruccin convierte una duracin (en el formato TIME) en nmero de horas-
minutos-segundos, HHHH:MM:SS. Valores lmites: [0000:00:00 , 9999:59:59].
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
%MD100:=TRANS_TIME(%MD2) [%MD100:= TRANS_TIME (%MD2)]
Sintaxis
Operador Res:=TRANS_TIME(duracin)
Operandos
Notas
El principio del redondeo se aplicar al parmetro "duracin" (expresado en 1/10 de segundo)
para permitir la conversin (precisin de un segundo):
- sssssssss.0 a sssssssss.4 redondeado a sssssssss.0
- sssssssss.5 a sssssssss.9 redondeado a sssssssss.0 + 1.0
La duracin mxima convertida puede alcanzar 10000 horas. Esto significa que si el valor de
la duracin (TIME) definido por el parmetro es superior o igual a 360000000, sta no puede
convertirse. El bit sistema %S15 se pone a 1 y el resultado es igual a 0000:00:00.
___________________________________________________________________________
2/93
B
2.10 Instrucciones para tablas de bits
2.10-1 Copia de una tabla de bits en una tabla de bits
Esta funcin copia bit a bit una tabla de bits en otra tabla de bits.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE
LD TRUE
%M10:5:=COPY_BIT(%M20:5) [%M10:5:= COPY_BIT (%M20:5)]
Sintaxis
Operador Res:=COPY_BIT (Tab)
Operandos
Notas
Las tablas pueden ser de tamao diferente. En este caso, la tabla resultante contiene el
resultado de la funcin ejecutada con una longitud que equivale al ms pequeo de los tamaos
de tabla. El resto de la tabla resultante no se modifica.
Se debe prestar atencin a solapamientos entre la tabla de entrada y la tabla resultante.
___________________________________________________________________________
2/94
Descripcin de las instrucciones avanzadas 2
B
2.10-2 Instrucciones lgicas para tablas de bits
Las funciones asociadas permiten realizar una operacin lgica bit a bit entre dos
tablas de bits y almacenar el resultado en otra tabla de bits.
AND_ARX : Y lgica (bit a bit).
OR_ARX : O lgica (bit a bit).
XOR_ARX : O exclusiva (bit a bit).
NOT_ARX : complemento lgico (bit a bit) de una tabla.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
%M10:7:= AND_ARX(%M20:7, %M30:7) [%M10:7:= AND_ARX (%M20:7,
%M30:7)]
OPERATE
%M50:10:=NOT_ARX(%M60:10) LD TRUE
[%M50:10:= NOT_ARX (%M60:10)]
Sintaxis
Operador Res:= AND_ARX (Tab 1, Tab 2)
Res:= OR_ARX (Tab 1, Tab 2)
Res:= XOR_ARX (Tab 1, Tab 2)
Res:= NOT_ARX (Tab 1)
Operandos
Notas
Las tablas pueden ser de tamao diferente. En este caso, la tabla resultante contiene el
resultado de la funcin ejecutada con una longitud que equivale al ms pequeo de los tamaos
de tabla. El resto de la tabla resultante no se modifica.
Se debe prestar atencin a solapamientos entre la tabla de entrada y la tabla resultante.
___________________________________________________________________________
2/95
B
2.10-3 Copia de una tabla de bits en una tabla de palabras
La funcin copia los bits de una tabla o de una parte de tabla de bits en una tabla de
palabras (o dobles palabras).
En la tabla de bits, un nmero de bits (nbit) se copia a partir de una cierta fila (brow).
En la tabla de palabras (o dobles palabras), la copia se efecta a partir de una fila (wrow
o drow), comenzando en el bit menos significativo de cada palabra.
BIT_W : copia de una tabla de bits en una tabla de palabras.
BIT_D : copia de una tabla de bits en una tabla de dobles palabras.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE
[%MW10:7:= BIT_W (%M20:29, 3, 22, 2)]
%MW10:7:= BIT_W(%M20:29, 3, 22, 2)
LD TRUE
OPERATE
[%MD10:4:= BIT_D (%M20:29, 3, 22, 1)]
%MD10:4:=BIT_D(%M20:29, 3, 22, 1)
%M20:29
fila 0
%MW10:7
fila 3 (brow)
bit 15 bit 0
fila 0
fila 2
___________________________________________________________________________
2/96
Descripcin de las instrucciones avanzadas 2
B
Sintaxis
Operador Res:= BIT_W (Tab, brow, nbit, wrow)
Res:= BIT_D (Tab, brow, nbit, drow)
Operandos
Notas
Si el nmero de bits que se van a tratar es superior al nmero de bits restantes desde la fila
(brow) en la tabla, la funcin ejecuta la copia hasta el ltimo elemento de la tabla.
Si el nmero de bits que se van copiar es superior al nmero de bits que constituyen las palabras
restantes de la tabla resultante, la funcin detiene la copia en el ltimo elemento de la tabla de
palabras (o dobles palabras).
Un valor negativo en los parmetros brow, nbit, wrow o drow se interpretar como nulo.
___________________________________________________________________________
2/97
B
2.10-4 Copia de una tabla de palabras en una tabla de bits
La funcin copia los bits que constituyen una tabla o una parte de tabla de palabras
(o dobles palabras) en una tabla de bits.
En la tabla de palabras (o dobles palabras), un nmero de palabras (nwd) se copia
a partir de la palabra de fila (wrow o drow).
En la tabla de bits, la copia se efecta a partir de la fila (brow), comenzando en el bit
menos significativo de cada palabra.
W_BIT : copia de una tabla de palabras en una tabla de bits.
D_BIT : copia de una tabla de dobles palabras en una tabla de bits.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD TRUE
OPERATE [%M20:36:= W_BIT (%MW10:7, 2, 2, 3)]
%M20:36:=W_BIT(%MW10:7,2,2,3)
LD TRUE
OPERATE [%M20:36:= D_BIT (%MD10:4, 1, 1, 3)]
%M20:36:=D_BIT(%MD10:4,1,1,3)
%M20:36
fila 0
%MW10:7 fila 3 (brow)
fila 19
bit 15 bit 0
fila 0
(wrow) fila 2
___________________________________________________________________________
2/98
Descripcin de las instrucciones avanzadas 2
B
Sintaxis
Operador Res:= W_BIT (Tab, wrow, nwd, brow)
Res:= D_BIT (Tab, drow, nwd, brow)
Operandos
Notas
Si el nmero de bits que se van a tratar es superior al nmero de bits restantes desde la fila
(Wrow) en la tabla, la funcin ejecuta la copia hasta el ltimo elemento de la tabla.
Si el nmero de bits que se van copiar es superior al nmero de bits que constituyen las palabras
restantes de la tabla resultante, la funcin detiene la copia en el ltimo elemento de la tabla.
Un valor negativo en los parmetros brow, nbit, wrow o drow se interpretar como nulo.
___________________________________________________________________________
2/99
B
2.11 Funciones "Orphe": desplazamientos, contador
2.11-1 Desplazamientos en palabras con recuperacin de bits desplazados
Las funciones efectan desplazamientos aritmticos a la izquierda o a la derecha en
una palabra o doble palabra (a) segn el nmero de desplazamientos indicado (nbit).
OPERATE
LD TRUE
WSHL_RBIT(%MW20,%MW30,%MW21,%MW10) [WSHL_RBIT(%MW20,%MW30,%MW21,%MW10)]
OPERATE
LD TRUE
WSHRZ_C(%MW20,%MW30,%MW21,%MW10) [WSHRZ_C(%MW20,%MW30,%MW21,%MW10)]
OPERATE
LD TRUE
DSHR_RBIT(%MD30,%MW40,%MD20,%MD10) [DSHR_RBIT(%MD30,%MW40,%MD20,%MD10)]
WSHL_RBIT (%MW20,%MW30,%MW21,%MW10) ;
WSHRZ_C (%MW20,%MW30,%MW21,%MW10) ;
DSHR_RBIT (%MD30,%MW40,%MD20,%MD10) ;
___________________________________________________________________________
2/100
Descripcin de las instrucciones avanzadas 2
B
Ejemplo:
WSHL_RBIT(%MW20,%MW30,%MW21,%MW10) con %MW30 = 4
rest = %MW10 A = %MW20
0000 0000 0000 0001 0001 1111 0110 1000
res = %MD20
Conservacin del signo 1 111 11 10 0000 0011 PF
Operandos
Notas
Si el valor del parmetro (nbit) no se encuentra entre 1 y 16 para los desplazamientos en la
palabra, o entre 1 y 32 para los desplazamientos en la doble palabra, las salidas (res) y (rest)
no son significativas y el bit sistema %S18 se pone a 1.
___________________________________________________________________________
2/102
Descripcin de las instrucciones avanzadas 2
B
2.11-2 Contaje/descontaje con indicacin de rebasamiento
La funcin efecta un contaje/descontaje con indicacin de rebasamiento. Esta funcin
se ejecuta nicamente si la entrada de validacin (en) est en el estado 1.
Dos entradas separadas (cu y cd) permiten contar y descontar sucesos. La salida
(Qmn) se pone a 1 cuando se alcanza el umbral mnimo (mn). La salida (Qmx) se
pone a 1 cuando se alcanza el umbral mximo (mx).
El parmetro (pv) determina el valor inicial del contaje. El parmetro (cv) determina el
valor actual del contaje.
Una palabra de 16 bits (mwd) permite almacenar el estado de las entradas cu y cd (bit
0 para el almacenamiento de cu y bit 1 para el almacenamiento de cd).
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
OPERATE LD TRUE
SCOUNT (%M9,%MW10,%M11,%M12,%MW11, [SCOUNT(%M9,%MW10,%M11,%M12,%MW11,
%MW12,%M16,%M10,%MW15,%MW20) %MW12,%M16,%M10,%MW15,%MW20)]
SCOUNT(%M9,%MW10,%M11,%M12,%MW11,%MW12,%M16,%M10,%MW15,%MW20) ;
Ejemplo:
SCOUNT (%M9,%MW10,%M11,%M12,%MW11,%MW12,%M16,%M10,%MW15,%MW20)
con %MW10 (pv) = 5, %MW11 (mn) = 0, %MW12 (mx) = 7
en : %M9
cd : %M12
mcd : %MW20:X1
cu : %M11
mcu : %MW20:X0
Qmax : %M10
Qmin : %M16
cv = %MW15 5 4 5 65 6 7 5
___________________________________________________________________________
2/103
B
Sintaxis
Operador SCOUNT (en, pv, cu, cd, mn, mx, Qmn, Qmx, cv, mwd)
Operandos
Tipo en, cu, cd Qmn, Qmx pv, mn, mx cv, mwd
Bits %I,%Q,%M,%S, %I,%Q,%M
%BLK,%.:Xk
Palabras indexables %MW,%KW, %Xi.T %MW
Palabras no %IW, %QW, %QW,%SW
indexables %SW, %NW, %NW
Valor inm.
Expr. numrica
Notas
Si (en) = 0, la funcin ya no es valida y en cada llamada hay:
Qmn = Qmx = 0
mcu = mcd = 0
cv = pv
Si mx > mn:
cv > mx ---> Qmx = 1 y Qmn = 0
mn < cv < mx ---> Qmx = Qmn = 0
cv < min ---> Qmx = 0 y Qmn = 1
Si mx < mn:
mx < cv < mn ---> Qmx = 1 y Qmn = 0
cv < mx ---> Qmx = 0 y Qmn = 1
cv > mn ---> Qmx = 1 y Qmn = 0
Si mx = mn:
cv < mn y mx ---> Qmx = 0 y Qmn = 1
cv > mn y mx ---> Qmx = 1 y Qmn = 0
Una modificacin del parmetro (pv) con (en) en el estado 1 no tiene ninguna incidencia en
el funcionamiento
Un valor negativo en los parmetros (pv) y (mn) se interpreta como un valor nulo.
Un valor inferior a 1 en el parmetro (mx) se interpreta como igual a 1.
___________________________________________________________________________
2/104
Descripcin de las instrucciones avanzadas 2
B
2.11-3 Desplazamientos circulares
Las funciones efectan desplazamientos circulares a la izquierda o a la derecha en
una palabra o una doble palabra.
ROLW: desplazamiento circular hacia la izquierda en una palabra con clculo de
nmero de desplazamientos
RORW: desplazamiento circular hacia la derecha en una palabra con clculo de
nmero de desplazamientos
ROLD: desplazamiento circular hacia la izquierda en una doble palabra con clculo
de nmero de desplazamientos
RORD: desplazamiento circular hacia la derecha en una doble palabra con clculo
de nmero de desplazamientos
Estructura
LD %M0
%M0
[%MW0:= ROLW(%MW10,%MW5)]
%MW0:=ROLW(%MF10,%MW5)
%I3.2 LD %I3.2
[%MD10:= RORD(%MD100,%MW5)]
%MD8:=RORD(%MD50,%MW5)
IF %M0 THEN
%MW0:= ROLW(%MW10,%MW5) ;
END_IF ;
IF %I3.2 THEN
%MD10:= RORD(%MD100,%MW5) ;
END_IF ;
___________________________________________________________________________
2/105
B
Sintaxis
Operadores
ROLW, RORW, ROLD, RORD Op1:=Operador(Op2,n)
Observacin
De preferencia, se utilizar las instrucciones de base ROL y ROR (cuando el nmero
de desplazamiento es esttico, ya que estas instrucciones son ms eficaces.
___________________________________________________________________________
2/106
Descripcin de las instrucciones avanzadas 2
B
2.12 Funciones de temporizacin
2.12-1 Generalidades
Esta funcin permite manejar los retrasos de conexin. Este retraso puede programarse.
Sintaxis
Operador FTON (EN, PT, Q, ET, PRIV)
Caractersticas
Entrada EN En flanco ascendente inicia la temporizacin
"Activacin"
Valor de preseleccin PT Palabra de entrada que determina la duracin (en
centsimas de segundo) de la temporizacin. Permite
definir una duracin mxima de 5 min y 27 s con una
precisin de 10 ms. (1)
Salida "Temporizador" Q Salida puesta a 1 al final de la temporizacin.
Valoractual ET Palabra de salida que se incrementa de 0 a PT cuando
transcurrelatemporizacin.
Variabledeclculo PRIV Doble palabra para memorizacin de los estados
internos. Asociar a esta doble palabra una variable de la
aplicacinexclusivamentereservadaparaesteefecto.
(1) la modificacin de esta palabra surte efecto durante la temporizacin.
___________________________________________________________________________
2/107
B
En un flanco ascendente en la entrada
EN, el temporizador se activa: su valor
actual ET se incrementa de 0 a PT EN
(centsimo de segundo). El bit de salida
Q pasa a 1 cuando el valor actual alcanza
Q
PT, y luego permanece en 1 mientras la
entrada EN est en 1. PT
Cuando la entrada EN est en 0, el ET
temporizador se detiene, aunque est en
curso de evolucin : ET toma el valor 0.
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
%I1,2
OPERATE LD %I1.2
FTON (%I3.0,1000,%Q4.0,%MW2,%MD8)
[FTON(%I3.0,1000,%Q4.0,%MW2,%MD8)]
IF %I1.2 THEN
FTON (%I3.0,1000,%Q4.0,%MW2,%MD8) ;
END_IF ;
Operandos
FTON (EN, PT, Q, ET, PRIV)
Tipo EN PT Q ET PRIV
Palabras %MW,%KW,%Xi.T %MW
indexables
Palabras no %IW,%QW,%SW %IW,%QW
indexables Val. inm.,
Expr. num.,%NW
Dobles palabras %MD
indexables
Bits %I,%Q, %M, %S %I,%Q, %M,
%BLK,%:Xk,%X %S,%:Xk,%X
___________________________________________________________________________
2/108
Descripcin de las instrucciones avanzadas 2
B
2.12-3 Funcin de temporizacin de desconexin FTOF
Esta funcin permite manejar los retrasos en la desconexin. Este retraso puede
programarse.
Sintaxis
Operador FTOF (EN, PT, Q, ET, PRIV)
Caractersticas
Entrada EN En flanco ascendente inicia la temporizacin
"Activacin"
Valor de preseleccin PT Palabra de entrada que determina la duracin (en
centsimas de segundo) de la temporizacin. Permite
definir una duracin mxima de 5 min y 27 s con una
precisin de 10 ms. (1)
Salida "Temporizador" Q Salida puesta a 1 en flanco ascendente de EN y
puesta a cero al final de la temporizacin.
Valor actual ET Palabra de salida que se incrementa de 0 a PT
cuando transcurre la temporizacin.
Variabledeclculo PRIV Doble palabra para memorizacin de los estados
internos. Asociar a esta doble palabra una variable de la
aplicacinexclusivamentereservadaparaesteefecto.
(1) la modificacin de esta palabra surte efecto durante la temporizacin.
Esta funcin permite elaborar una impulsin de duracin precisa. Esta duracin es
programable.
Sintaxis
Operador FTP (EN, PT, Q, ET, PRIV)
Caractersticas
Entrada EN En flanco ascendente inicia la temporizacin
"Activacin"
Valor de preseleccin PT Palabra de entrada que determina la duracin (en
centsimas de segundo) de la temporizacin. Permite
definir una duracin mxima de 5 min y 27 s con una
precisin de 10 ms. (1)
Salida "Temporizador" Q Salida puesta a 1 al final de la temporizacin.
Valor actual ET Palabra de salida que se incrementa de 0 a PT
cuando transcurre la temporizacin.
Variabledeclculo PRIV Doble palabra para memorizacin de los estados
internos. Asociar a esta doble palabra una variable de la
aplicacinexclusivamentereservadaparaesteefecto.
(1) la modificacin de esta palabra surte efecto durante la temporizacin.
Estructura
Lenguaje de contactos Lenguaje Literal estructurado
IF %I1.2 THEN
%I1,2 FTP (%I3.0,1000,%Q4.0,%MW2,%MD8) ;
OPERATE
FTP (%I3.0,1000,%Q4.0,%MW2,%MD8) END_IF ;
B
2.12-5 Funcin generador de seal rectangular FPULSOR
Esta funcin permite generar una seal rectangular peridica cuyo ancho de intervalo
a 1 y de intervalo a 0 se puede hacer variar con el programa mediante 2 temporizadores:
TON: temporizacin a la subida (para el intervalo a 1).
TOFF: temporizacin a la bajada (para el intervalo a 0).
Sintaxis
Operador FPULSOR (EN, TON, TOFF, Q, ET, PRIV)
Caractersticas
___________________________________________________________________________
2/111
B
Estructura
Lenguaje de contactos Lenguaje Lista de instrucciones
LD True
OPERATE
PULSOR (%I3.0,500,200,%Q4.0,%MW2,%MD8)
[FPULSOR %I3.0,500,200,%Q4.0,%MW2,
%MD8)]
IF %I1.2 THEN
FPULSOR (%I3.0,500,200,%Q4.0,%MW2,%MD8) ;
END_IF ;
Operandos
FPULSOR (EN, TON, TOFF, Q, ET, PRIV)
___________________________________________________________________________
2/112
Descripcin de las instrucciones avanzadas 2
B
2.13 Funciones de archivado de datos
2.13-1 Generalidades
Estas funciones permiten archivar datos por programa en un rea dedicada de la
tarjeta de memoria del usuario.
Ejemplos de aplicacin:
almacenamiento automtico, datos (consignaciones de estado, registros, ...) de la
aplicacin en la tarjeta de memoria de usuario del autmata y envo de los datos a
travs de teletransmisin (va mdem) hacia el sitio central.
copia de seguridad de las validaciones de produccin en la tarjeta de memoria
usuario del autmata.
Area de Area TSX P57 102 TSX P57 2i2 TSX P57 3i2
programa de TPMX P57 102 TPMX P57 202 TSX P57 4i2
de aplicacin archivado TPCX 57 1012 TPMX P57 352
(tipo RAM) TSX 37 21/22 TPMX P57 452
TPCX 57 3512
TSX MRP 232P RAM/32 K16 128K16 S S S
1500
100
100
SET_PCMCIA
100
100 1529
En el ejemplo anterior:
direccin = %MD0 , %MD0 que contiene el valor 1500
n_palabras = %MW5, %MW5 que contiene el valor 30
origen= %MW10, %MW10 que contiene el valor 100
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
Lenguaje literal
IF RE %I1.3 THEN
SET_PCMCIA (%MD0, %MW5,
%MW10,%MW2);
END_IF;
___________________________________________________________________________
2/114
Descripcin de las instrucciones avanzadas 2
Sintaxis
Funcin SET_PCMCIA (direccin,n_palabras,valor, estado)
Parmetros
Tipo direccin n_palabras valor estado
Palabras indexables %MW %MW %MW
Val. inmed. Val. inmed.
Palabras no indexables %QW,%SW,%NW
Palabras dobles indexables %MD,
Val. inmed.
___________________________________________________________________________
2/115
B
2.13-3 Escritura de los datos en el rea de archivado
La funcin WRITE_PCMCIA permite transferir datos de la memoria RAM del autmata
(palabras %MW) en la rea de archivado de la tarjeta de memoria del usuario.
Esta funcin utiliza 4 parmetros:
dir_des: direccin del rea de archivado a partir de la cual se almacenarn los datos
n_palabras: nmero de palabras a almacenar
origen: palabra que contiene la direccin de inicio del rea a transferir en la tarjeta
de memoria
estado: cdigo que proporciona el resultado del comando de escritura.
%MW40
WRITE_PCMCIA
%MW69
1500
1529
En el ejemplo anterior:
dir_des = %MD0 , %MD0 contiene el valor 1500
n_palabras = %MW5, %MW5 contiene el valor 30
origen = %MW20 contiene el valor 40
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I1,3
OPERATE LDR %I1.3
P WRITE_PCMCIA(%MD0, %MW5, %MW20,%MW2) [WRITE_PCMCIA (%MD0, %MW5,
%MW20,%MW2)]
Lenguaje literal
IF RE %I1.3 THEN
WRITE_PCMCIA (%MD0, %MW5,
%MW20,%MW2);
END_IF;
___________________________________________________________________________
2/116
Descripcin de las instrucciones avanzadas 2
Sintaxis
Funcin WRITE_PCMCIA (dir_des, n_palabras, origen, estado)
Parmetros
Tipo dir_des n_palabras origen estado
Palabras indexables %MW %MW %MW
Val. inmed. Val. inmed.
Palabras no indexables %QW,%SW,%NW
Palabras dobles indexables %MD,
Val. inmed.
___________________________________________________________________________
2/117
B
2.13-4 Lectura de los datos en el rea de archivado
La funcin REDIR_PCMCIA permite transferir datos del rea de archivado de la tarjeta
de memoria del usuario en la memoria RAM del autmata (palabras %MW).
Esta funcin utiliza 4 parmetros:
%MW40
REDIR_PCMCIA
%MW69
1500
1529
En el ejemplo anterior:
dir_origen = %MD0 , %MD0 que contiene el valor 1500
n_palabras = %MW5, %MW5 que contiene el valor 30
dest = %MW20 que contiene el valor 40
Estructura
Lenguaje de contactos Lenguaje lista de instrucciones
%I1,4
OPERATE LDR %I1.4
P READ_PCMCIA(%MD0, %MW5, %MW20,%MW2) [REDIR_PCMCIA (%MD0, %MW5,
%MW20,%MW2)]
Lenguaje literal
IF RE %I1.4 THEN
REDIR_PCMCIA (%MD0, %MW5,
%MW20,%MW2);
END_IF;
___________________________________________________________________________
2/118
Descripcin de las instrucciones avanzadas 2
B
Sintaxis
Funcin REDIR_PCMCIA (dir_origen, n_palabras,dest, estado)
Parmetros
Tipo dir_origen n_palabras dest estado
Palabras indexables %MW %MW %MW
Val. immd. Val. immd.
Palabras no indexables %QW,%SW,%NW
Palabras dobles indexables %MD,
Val. immd.
___________________________________________________________________________
2/119
NOTAS:
S
Captulo
Bits y palabras del sistema 33
3 Bits y palabras del sistema
B
3.1 Bits del sistema
3.1-1 Lista de bits del sistema
Bit Funcin Est. inicial Gestin(1)
(1) S = administrado por el sistema, U = administrado por el usuario, U->S = puesto a 1 por el
usuario, puesto a 0 por el sistema, S->U = puesto a 1 por el sistema, puesto a 0 por el usuario.
(2) nicamente en el TSX 37.
(3) nicamente en los TSX/PMX/PCX 57.
___________________________________________________________________________
3/2
Bits y palabras del sistema 3
B
3.1-2 Descripcin detallada de bits del sistema
Los autmatas TSX 37 y TSX 57 disponen de bits sistema %Si que indican los estados
del autmata o le permiten actuar sobre el funcionamiento del mismo.
Estos bits pueden probarse en el programa de usuario con el fin de detectar todos los
eventos de funcionamiento antes de realizar un procedimiento determinado de B
tratamiento. Algunos de ellos deben ser inicializados a su estado inicial o normal por
el programa. Por tanto, los bits sistema que son reiniciados con su valor inicia o normal
por el sistema no deben ser reiniciados por el programa o el terminal.
___________________________________________________________________________
3/4
Bits y palabras del sistema 3
B
Bits Funcin Designacin
sistema
%S20 Rebasamiento Normalmente en el estado 0. Se pone a 1 cuando la direccin del
de ndice objeto indexado es inferior a 0 o excede el nmero de
objetos declarados en la configuracin. Debe ser probado por el
programa de usuario despus de cada operacin que presenta B
un riesgo de rebasamiento; si ste ocurre, el bit se pone a 0.
%S21 Inicializacin El usuario efecta la gestin de este bit para inicializar el
Grafcet (puesta a 1, de preferencia en el tratamiento
preliminar). El sistema lo pone a 0 despus de inicializar
Grafcet (al fin del tratamiento preliminar, al evaluar el nuevo
estado del Grafcet). La inicializacin del Grafcet consiste en
desactivar todas las etapas activas y activar etapas iniciales.
Al arrancar en fro, el sistema pone este bit a 1 durante el
tratamiento preliminar.
%S22 Puesta a Normalmente en el estado 0. El programa puede poner este bit a
cero del 1 nicamente en el tratamiento preliminar. En el estado 1, desac-
Grafcet tiva todas las etapas del Grafcet. El Sistema lo pone a 0 des-
pus de la toma en cuenta al final del tratamiento preliminar.
%S23 Inmovilizacin Normalmente en el estado 0. La puesta a 1 de %S23 tiene
del Grafcet como consecuencia la conservacin del estado de los Grafcet.
Cualquier que sea el valor de las receptividades debajo de las
etapas activas, los Grafcet no evolucionan. La inmovilizacin se
mantiene mientras el bit %S23 est a 1. El programa de usuario
efecta la gestin de este bit; se pone a 1 o a 0 nicamente en
el tratamiento preliminar.
%S24 Puesta a cero Normalmente en el estado 0. La puesta a 1 de %S24 tiene
de las como consecuencia la puesta a cero de las macroetapas
etapas elegidas en la tabla de 4 palabras sistema %SW22 a %SW25. El
sistema lo vuelve a poner a 0 despus de tomar en cuenta el fin
del tratamiento preliminar.
%S26 Rebasamiento Normalmente en el estado 0. El sistema pone este bit a 1 cuando
de tablas las posibilidades de activacin (etapas o transiciones) se
(etapas/ excedeno cuando se ejecuta un grfico incorrecto (remisin de
transiciones) destino en una etapa que no pertenece al grfico). Un
rebasamiento tiene como consecuencia el paso a STOP del
autmata. Este bit se pone a 0 al inicializar el terminal.
%S30 Activacin/ Normalmente en el estado 1. Cuando el usuario lo pone a 0, la
desactivacin tarea maestra se desactiva.
tarea maestra
%S31 Activacin Normalmente en el estado 1. Cuando el usuario lo pone a 0, la
tarea rpida tarea rpida se desactiva.
%S38 Validacin/ Normalmente en el estado 1. Cuando el usuario lo pone a 0, los
inhibicin sucesos se inhiben.
sucesos
%S39 Saturacin El sistema pone este bit a 1 para indicar que es imposible tratar
en el trata- uno o varios sucesos por causa de saturacin de las colas de
miento de espera.
sucesos El usuario vuelve a situar este bit a 0.
___________________________________________________________________________
3/5
B
Bits Funcin Designacin
sistema
% S40 Falla E/S Los bits %S40 a %S47 se asignan respectivamente a los racks
a (racks) (1) 0 a 7. Normalmente en el estado 1, cada bit pasa a 0 al produ-
%S47 estticas cirse una falla de E/S del rack correspondiente.
desconectadas El bit se pone a 1 al desaparecer la falla.
%S49 Reactivacin Normalmente en el estado 0. El usuario puede ponerlo a 1 para
de salidas (2) solicitar la reactivacin cada 10 s desde la aparicin de la falla
de las salidas estticas desconectadas por causa de sobrein-
tensidad o de cortocircuito.
%S50 Actualizacin Normalmente en el estado 0. Puede ponerse a 1 o a 0 va
de la fecha y programa o va terminal:
hora mediante en el estado 0: acceso a la fecha y hora mediante la lectura
las palabras de las palabras sistema %SW50 a 53,
%SW50 a 53 en el estado 1: actualizacin de la fecha y la hora mediante la
escritura de las palabras sistema %SW50 a 53.
%S51 Prdida de Este bit, de cuya gestin se encarga el sistema, indica el estado
la hora del 1 cuando el reloj-calendario est ausente o cuando las palabras
reloj-calendario sistema relativas al reloj-calendario no son significativas; en
este caso es necesario ajustar la hora, con lo que el bit pasa
a 0 automticamente.
%S59 Actualizacin Normalmente en el estado 0. Puede ponerse a 1 o a 0 desde el
de la fecha y programa o el terminal:
hora mediante en el estado 0: el sist. no efecta la gestin de la pal. sist.
la palabra SW59,
%SW59 en el estado 1: el sistema efecta la gestin de los flancos en
la palabra %SW59 para ajustar la fecha y hora
(por incrementos).
%S60 Comando de bit del sistema utilizado en el caso de una instalacin de una
la arquitectura arquitectura redundante (vase designacin y utilizacin en el
redundante manual de "arquitectura Premium redundante").
%S66 Gestin del Normalmente en el estado 0. Puede ponerse a 1 o a 0 va
(1) indicador de programa o va terminal. Sirve para que se encienda o no el
la batera indicador luminoso de la batera, en caso de falle la pila de salv.:
en el estado 0: se enciende el indicador de la batera cuando
falta la pila de guardado o est en falla
en el estado 1: el indicador de la batera est siempre
apagado.Al producirse un rearranque en fro, el sistema pone
%S66 a 0.
%S67 Estado Permite controlar el estado de funcionamiento de la pila de
pila respaldo de la tarjeta de memoria RAM:
tarjeta memoria en el estado 0: batera presente y en servicio,
en el estado 1: batera ausente o fuera de servicio.
%S68 Estado Permite controlar el estado de funcionamiento de la batera de
pila respaldo de datos y del programa en la memoria RAM:
procesador en el estado 0: batera presente y en servicio,
en el estado 1: batera ausente o fuera de servicio.
(1) Slo en los autmatas TSX/PMX/PCX 57.
___________________________________________________________________________
(2) Slo en el autmata TSX 37.
3/6
Bits y palabras del sistema 3
B
Bits Sist. Funcin Designacin
%S69 Visualizacin Normalmente en el estado 0. Puede ponerse a 1 o a 0 desde el
datos de programa o el terminal:
usuario en en el estado 0: visualizacin de los estados de E/S en los
indicadores indicadores del autmata (indicador WRD apagado),
de autmata en el estado 1: visualizacin de los datos de usuario (indica- B
dor WRD encendido). (Vase las palabras %SW67,68 y 69.)
%S70 Actualizacin El sistema pone este bit a 1 en cada fin de ciclo del enlace
de los datos TSX Nano o de exploracin del bus AS-i. Al conectar la potencia,
en el bus AS-i indica que se han actualizado todos los datos al menos una vez
o enlace TSX y que, por consiguiente, son significativos. El usuario vuelve a
Nano situar este bit a 0.
%S73 Paso al modo Normalmente en el estado 0. El usuario pone en 1 este bit para
protegido pasar al modo protegido en el bus AS-i. Previamente, el bit
en el bus AS-i %S74 deber encontrarse en el estado 1. Este bit slo se utiliza
durante las comprobaciones de cableado, carece de aplicacin
en el autmata.
%S74 Guardado Normalmente en el estado 0. El usuario pone en 1 este bit para
configuracinactivar la guardado de la configuracin presente en el bus
presente AS-i. Este bit slo se utiliza durante las comprobaciones de
en el bus AS-i
cableado, carece de aplicacin en el autmata.
%S80 Puesta a 0 Normalmente en el estado 0. El usuario puede ponerlo a 1 para
contadores poner a cero los contadores de mensajes %SW80 a
de mensajes %SW86.
%S90 ActualizacinNormalmente en el estado 0. Se pone a 1 al recibir palabras
de palabras comunes provenientes de otra estacin en la red.
comunes Puede ponerse a 0 desde el programa o el terminal para
verificar el ciclo de intercambio de palabras comunes.
%S92 Paso en modo Normalmente en el estado 0, este bit puede ser puesto a 1 por el
medida de usuario para posicionar las funciones de comunicacin en modo
funcin de medicin de rendimiento. El parmetro Time-out de las
comunicacin funciones de comunicacin muestra entonces el tiempo de
intercambio ida y vuelta en decena de ms si ese tiempo <10s,
sino no significativo).
%S94 Guardado de Normalmente en el estado 0. El usuario puede ponerlo a 1 para
los ajustes DFB guardar los valores de ajuste de los bloques de funcin usuario.
%S95 Restitucin de Normalmente en el estado 0. El usuario puede ponerlo a 1 para
los ajustes DFB restituir los valores de ajuste de los bloques de funcin del
usuario.
%S96 Validez de la 0 -> guardado del programa de aplicacin no vlido,
guardado 1 -> guardado del programa de aplicacin vlido.
del programa Este bit es accesible en lectura en todo momento (va programa
de aplicacin o en ajuste) y, concretamente, despus de un rearranque en fro
o en caliente. Resulta significativo respecto a una aplicacin de
memoria de seguridad realizada mediante PL7 en la Flash
EPROM interna.
%S97 Validez de la 0 -> guardado de los %MW no vlido,
guardado 1 -> guardado de los %MW vlido.
de los %MW Este bit es accesible en lectura en todo momento (va programa
o en ajuste) y, concretamente, despus de un rearranque en fro
o en caliente.
%S98 Desplazamiento Normalmente en el estado 0. Este bit lo administra el usuario:
del botn del 0 -> botn del acoplador TSX SAZ 10 activo,
acoplador 1 -> botn, del acoplador TSX SAZ 10, sustituido por una
TSX SAZ 10 entrada TON (vase %SW98).
___________________________________________________________________________
3/7
B
Bits Funcin Designacin
sistema
%S99 Desplazamiento Normalmente en el estado 0. Este bit lo administra el usuario:
del botn del 0 -> botn del bloque de visualizacin centralizada activo,
bloque de 1 -> botn pulsador, del bloque de visualizacin centralizada,
visualizacin sustituido por una entrada TON (vase la palabra %SW99).
%S100 Protocolo El sistema lo pone a 0 o a 1 segn el estado del shunt INL/DPT
toma en la toma de consola:
terminal si el shunt est ausente (%S100=0), se utiliza el protocolo
UNITELWAY maestro,
si el shunt est presente (%S100=1), se utiliza el protocolo
indicado por la configuracin de la aplicacin.
%S101 Buffer de Este bit es puesto a 1 por el sistema cuando la opcin de diagnstico
diagnstico est configurada, un buffer de diagnstico destinado al
configurado almacenamiento de los errores, procedentes de los DFB de
diagnstico, se reserva entonces.
%S102 Buffer de Este bit es puesto a 1 por el sistema cuando el buffer
diagnstico que recibe los errores de los bloques de funcin de diagnstico est
lleno lleno.
%S118 Falla general Normalmente a 1, el sistema pone estos bits a 0 cuando
de E/S FIPIO aparece una falla en un equipo conectado en el bus FIPIO.
Cuando la falla desaparece, el sistema vuelve a poner este bit 1.
%S119 Falla general Normalmente a 1, el sistema pone a 0 estos bits de E/S en rack
de entradas/ cuando ocurre una falla en mdulo de E/S implantado en uno de
salidas en los racks.
Rack Cuando la falla desaparece, el sistema vuelve a poner este bit a 1.
___________________________________________________________________________
3/8
Bits y palabras del sistema 3
B
3.2 Palabras del sistema
3.2-1 Lista de palabras del sistema
Palabra Funcin Gestin(1)
%SW0 Valor del perodo de la tarea maestra (en func. peridico) U
%SW1 Valor del perodo de la tarea rpida (en func. peridico) U B
%SW8 Control de la adquisicin de las entradas de cada tarea U
%SW9 Control de la actualizacin de las salidas de cada tarea U
%SW10 Primer ciclo despus del arranque en fro S
%SW11 Duracin del watchdog S
%SW12 Direccin UNI_TELWAY conector terminal S
%SW13 Direccin principal de la estacin S
%SW17 Estado de falla en la operacin flotante SyU
%SD18 Contador de tiempo absoluto SyU
%SW20 Nmero de etapas activas, por activar y desactivar S
%SW21 Nmero de transiciones vlidas, por validar e invalidar S
%SW22 a Tabla de 4 palabras que permite designar las macroetapas U
%SW25 (2) que se deben poner a 1 del bit %S24.
%SW30 Tiempo de ejecucin del ltimo ciclo de la tarea maestra S
%SW31 Tiempo de ciclo mximo de la tarea maestra S
%SW32 Tiempo de ciclo mnimo de la tarea maestra S
%SW33 Tiempo de ejecucin del ltimo ciclo de la tarea rpida S
%SW34 Tiempo de ciclo mximo de la tarea rpida S
%SW35 Tiempo de ciclo mnimo de la tarea rpida S
%SW48 Nmero de sucesos tratados SyU
%SW49 (3) Funcin reloj-calendario: palabras que contienen los valores SyU
%SW50 (3) actuales de la fecha y hora (en BCD)
%SW51 (3) %SW49 = da de la semana (tipo de da)
%SW52 (3) %SW50 = segundos %SW51 = horas y minutos
%SW53 (3) %SW52 = mes y da %SW53= siglo y ao
%SW54 ((3) Funcin reloj-calendario: palabras que contienen la fecha y hora del S
%SW55 (3) ltimo corte de corriente o ltima parada de autmata (en BCD)
%SW56 (3) %SW54 = segs y cdigo falla %SW55 = horas y minutos
%SW57 (3) %SW56 = mes y da %SW57= siglo y ao
%SW58 Cdigo de identif. de la ltima parada y da de semana (tipo de da) S
%SW59 Ajuste en incrementos de la fecha y hora actuales U
%SW60 a Diagnstico del autmata redundante S
%SW66
%SW67 Gestin del modo de visualizacin "Display" SyU
%SW68 %SW67: lectura de los botones pulsadores
%SW69 %SW68: ndices actual y mximo de los "objetos visualizados"
%SW69: nmero del primer objeto en el rea visualizada
%SW80 No de mensajes emitidos por el sistema hacia la toma de terminal SyU
%SW81 No de mensajes recibidos por el sistema desde la toma de terminal
%SW82 No de mensajes emitidos por el sist. hacia el acoplador PCMCIA
%SW83 No de mensajes recibidos por el sist. desde el acoplador PCMCIA
%SW84 No de telegramas emitidos por el sistema
%SW85 No de telegramas recibidos por el sistema
%SW86 No de mensajes rehusados por el sistema
(1) S = administrado por el sistema, U = administrado por el usuario,
(2) Slo en TSX 57.
(3) Slo en TSX 37-21/22 y TSX 57.
___________________________________________________________________________
3/9
B
Palabra Funcin Gestin(1)
%SW87 Nmero de peticiones tratadas por el servidor sncrono por ciclo S
de la tarea maestra (MAST).
%SW88 Nmero de peticiones tratadas por el servidor asncrono por ciclo S
de la tarea maestra (MAST).
%SW89 Nmero de peticiones tratadas por funciones del servidor S
(inmediato) por ciclo de la tarea maestra (MAST).
%SW96 (2) Comando / diagnstico de la funcin de guardado / restitucin del S y U
programa de aplicacin y de los %MW.
%SW97 (2) Nmero de los %MW que hay que guardar U
%SW98 (2) Direccin geogrfica mdulo/va de la entrada TON que reemplaza
el botn del acoplador TSX SAZ 10 U
%SW99 (2) Direccin geogrfica mdulo/va de la entrada TON que reemplazaU
el botn del bloque de visualizacin centralizada
%SW108 Nmero de bits forzados S
%SW109 Contador de vas analgicas forzadas a 0 S
%SW116 Falla E/S distantes en FIPIO S
%SW124 Tipo de la ltima falla UC encontrada S
%SW125 Tipo de falla bloqueante S
%SW126 Direccin de la instruccin de la falla de bloqueo S
%SW127
%SW128a Punto de conexin FIPIO defectuoso S
%SW143
%SW144 Modo de funcionamiento de la funcin rbitro de bus, productor/ U
consumidor de variable y supervisin bus FIPIO
%SW145 Modificacin de los parmetros del rbitro de bus UyS
%SW146 Visualizacin de la funcin rbitro de bus y productor/ S
consumidor en el bus FIPIO
%SW147 Valor del tiempo de ciclo bus de la tarea en modo LIBRE S
%SW148 Valor del tiempo de ciclo bus de la tarea en modo
SERVOCOMANDADOS
%SW149 Reservado a 0 S
%SW150 Nmero de tramas FIPIO emitidas S
%SW151 Nmero de tramas FIPIO recibidas S
%SW152 Nmero de tramas FIPIO recuperadas S
%SW155 Nmero de intercambios explcitos en curso de tratamiento S
%SW160 Resultado del ltimo registro S
%SW161 Resultado de la ltima cancelacin de registro S
%SW162 Nmero de errores en el buffer de diagnstico S
(1) S = administrado por el sistema, U = administrado por el usuario,
(2) Slo en TSX 57.
___________________________________________________________________________
3/10
Bits y palabras del sistema 3
B
3.2-2 Descripcin detallada de las palabras del sistema
Palabras Funcin Designacin
sistema
%SW0 Perodo de Permite modificar desde el programa de usuario o el
exploracin terminal el perodo de la tarea maestra definido en la B
de la tarea configuracin. El perodo se expresa en ms (1...255 ms).
maestra %SW0=0 en funcionamiento cclico. Al arrancar en fro:
toma el valor definido en la onfiguracin.
%SW1 Perodo de Permite modificar desde el programa de usuario o el
exploracin terminal el perodo de la tarea rpida definido en la
de la tarea configuracin. El perodo se expresa en ms (1...255 ms).
rpida Al arrancar en fro: toma el valor definido en la
configuracin.
%SW8 Control de la Normalmente en estado 0, el programa o el PC puede
adquisicin de poner este bit a 1 o a 0.
las entradas Permite inhibir la fase de adquisicin de las entradas de
de tareas cada tarea.
%SW8:X0 1= inhibicin en la tarea maestra
%SW8:X1 1= inhibicin en la tarea rpida
%SW9 Control de la Normalmente en estado 0, el programa o el PC puede
actualizacin de poner este bit a 1 o a 0.
las salidas Permite inhibir la fase de actualizacin de las salidas de
de tareas cada tarea.
%SW9:X0 1= inhibicin en la tarea maestra
%SW9:X1 1= inhibicin en la tarea rpida
%SW10 Primer El valor 0 del bit de la tarea en curso significa que sta
ciclo despus del ejecuta su primer ciclo despus de un arranque en fro.
arranque en fro %SW10:X0: asignada a la tarea maestra MAST
%SW10:X1: asignada a la tarea rpida FAST
%SW11 Duracin del Permite leer la duracin del watchdog definida en la
watchdog configuracin. Se expresa en ms (10...500 ms).
%SW12 Direccin Direccin UNI_TELWAY de la toma de terminal (en modo
UNI_TELWAY esclavo) definida en la configuracin y cargada en este
conector terminal palabra al arrancar en fro.
%SW13 Direccin Indicado por la red principal :
principal el nmero de estacin (byte menos significativo)
de la de 0 a 127
estacin el nmero de red (byte menos significativo) de 0 a 63
(valor de interruptor sobre la tarjeta PCMCIA)
___________________________________________________________________________
3/11
B
Palabras Funcin Designacin
sistema
%SW17 Estado de falla Al detectar una falla en una operacin en aritmtica
en operacin flotante, el bit %S18 se pone a 1 y el estado de falla
flotante %SW17 se actualiza segn la codificacin siguiente:
%SW17:X0 = operacin invlida/el resultado no es un
nmero
%SW17:X1 = operando no normalizado/resultado
correcto
%SW17:X2 = divisin por 0/el resultado es
%SW17:X3 =Overflow/el resultado es
%SW17:X4 = Underflow/el resultado es 0
%SW17:X5 = Imprecisin en el resultado.
El sistema pone esta palabra a 0 al arrancar en fro, as
como el programa para la reutilizacin de la palabra.
%SD18 Contador Doble palabra que permite efectuar clculos de duracin.
de tiempo El sistema lo aumenta cada dcimo de segundo (incluso
absoluto con el autmata en STOP). Puede ser leda y escrita por
el programa de usuario o el terminal.
%SW20 Nivel Palabra que contiene el nmero de etapas activas, por
de actividad activar y desactivar para el ciclo actual. El sistema la
del Grafcet actualiza cada vez que el grfico evoluciona.
%SW21 Tabla de validez Palabra que contiene el nmero de transiciones vlidas,
de las transiciones por validar e invalidar para el ciclo actual. El sistema la
Grafcet actualiza cada vez que el grfico evoluciona.
%SD18 Contador Esta doble palabra permite efectuar clculos de duracin.
de tiempo Es incrementada cada 1/10ma de segundos por el
absoluto sistema (incluso con el autmata en STOP). El programa
usuario o el PC pueden leerlo o escribirlo.
%SW20 Nivel Esta palabra contiene el nmero de etapas activas, que
actividad se deben activar o desactivar para el ciclo actual. Es
del Grafcet actualizado por el sistema cada vez que evoluciona el
grfico.
%SW21 Tabla de validez Este palabra contiene el nmero de transiciones
de transiciones vlidas, que se deben validar o invalidar para el ciclo
Grafcet actual. El sistema la actualiza cada vez que evoluciona el
grfico.
%SW22 Tabla de A cada bit de esta tabla corresponde una macroetapa
a puesta a 0 con %SW22:X0 para XM0 ....%SW25:X16 para XM63.
%SW25 macroetapa Las macroetapas cuyo bit asociado en esta tabla est
a 0, se volvern a poner a 0 cuando se ponga a 1 el bit
%S24.
%SW30 Tiempo de Indica el tiempo de ejecucin ms largo de la tarea
ejecucin de la maestra (en ms).
tarea maestra (1)
(1) este tiempo corresponde al tiempo transcurrido entre el inicio (adquisicin de las entradas)
y el fin (actualizacin de las salidas) de un ciclo de exploracin. Este tiempo incluye el tratamiento
de las tareas rpida y de suceso, as como el tratamiento de las peticiones del dispositivo de
programacin.
___________________________________________________________________________
3/12
Bits y palabras del sistema 3
B
Palabras Funcin Designacin
sistema
%SW96 Control/ Control y/o diagnstico de la funcin de guardado/restitucin
diagnstico del programa de aplicacin y de los %MW:
de la funcin bit 0: peticin de transferencia hacia el rea guardado. Se
guarda/ activa con flanco ascendente. El sistema vuelve a ponerlo a0 B
restitucin tan pronto se registra el flanco ascendente.
bit 1: cuando este bit tiene valor 1, significa que ha terminado
la funcin de guardado. Vuelve a situarse en 0 tan pronto se
registra el flanco ascendente en el bit 0.
bit 2: informe de guardado:
0 -> guardado realizado sin error,
1 -> error durante el guardado.
bits 3 a 5: reservados.
bit 6: validez del guardado del programa de aplicacin (idem
%S96).
bit 7: validez del guardado de los %MW (idem %S97).
bits 8 a 15: este byte slo es significativo si el bit de informe
est a 1 (bit 2 = 1, error durante el guardado).
1 -> el nmero de %MW que requiere guardar es superior al
nmero de %MW configurado,
2 -> el nmero de %MW que requiere guardar es superior a
1000 o inferior a 0,
3 -> el nmero de %MW que hay que restituir es superior al
nmero de %MW configurado,
4 -> el tamao de la aplicacin en RAM interna es superior a
15 Kpalabras
(recordamos que el guardado de los %MW va siempre
asociada a un guardado del programa de aplicacin en la
Flash EPROM interna),
5 -> servicio no autorizado en RUN,
6 -> presencia de una tarjeta de memoria Backup en el
autmata,
7 -> falla de escritura en la Flash EPROM.
%SW97 Nmero de Permite definir el nmero de %MW que requieren guardar.
%MW que Cuando esta palabra est comprendida entre 1 y 1000, se
requieren transferirn los primeros %MW (del 1 al 1000) a la Flash
guardado EPROM interna. Cuando esta palabra valga 0, nicamente se
transferir a la Flash EPROM interna el programa de
aplicacin contenido en la RAM interna.
Se borra entonces una posible guardado de %MW.
Al producirse un rearranque en fro, se inicializa esta palabra
a -1, si la Flash EPROM interna no contiene ningn guardado
de %MW.
En caso contrario, se inicializa con el valor del nmero de
palabras guardadas.
%SW98 Direccin de Cuando el bit %S98 = 1, esta palabra indica la direccin
la entrada geogrfica (mdulo / va) de la entrada TON, en sustitucin
TON del botn del acoplador TSX SAZ 10:
Byte ms significativo Byte menos significativo
Nmero del mdulo Nmero de la va
___________________________________________________________________________
3/15
B
Palabras Funcin Designacin
sistema
___________________________________________________________________________
3/16
Bits y palabras del sistema 3
B
Palabras Funcin Designacin
sistema
%SW125 Tipo de El sistema escribe en esta palabra el ltimo tipo de falla de
falla de bloqueo encontrado:
bloqueo 16#DEB0 : rebasamiento del watchdog B
16#2258 : ejecucin de la instruccin HALT
16#DEF8 : ejecucin de una instruccin JMP a una
etiqueta no definida
16#2XXX : ejecucin de una instruccin CALL a un subpro
grama no definido
16#0XXX : ejecucin de una funcin desconocida
16#DEFE : el programa grafcet comprende dos remisiones
a las entradas no delineadas.
16#DEFF : flotante no implantado
16#DEF0 : divisin por 0, (1-->%S18)
16#DEF1 : error de transferencia de cadena de caracteres
(1-->%S15)
16#DEF2 : rebasamiento de capacidad (overflow),
(1-->%S18)
16#DEF3 : rebasamiento de ndice (1-->%S20)
%SW126 Direccin de Direccin de la instruccin que gener la falla de bloqueo de
%SW127 la instruccin la aplicacin.
de la falla de %SW126 contiene el desplazamiento de esta direccin
bloqueo %SW127 contiene la base de esta direccin
%SW128 Punto de Cada bit de este grupo de palabras es significativo de
a conexin de un equipo conectado en el bus FIPIO.
%SW143 Falla en Normalmente a 1, la presencia a 0 de uno de estos bits
FIPIO en indica la aparicin de una falla de punto de conexin.
%SW128 representa las direcciones 0 a 15
%SW128:X0 --> @0, %SW128:X1-->@1,.....,
%SW128:X15-->@15,
%SW129 representa las direcciones 16 a 31
%SW129:X0 --> @16, %SW129:X1-->@17,.....,
%SW129:X15-->@31,
........
%SW143 representa las direcciones 240 a 255
%SW143:X0 --> @240, %SW143:X1-->@241,.....,
%SW143:X15-->@255,
Cuando la falla desaparece, el sistema vuelve a poner
a 1 este bit
Nota: @ = punto de conexin
%SW149 Reservado a 0.
___________________________________________________________________________
3/18
A
M
Funcin especfica TON ndice general
Seccin G
Captulo Pgina
G
2 Configuration de las vas de un mdulo TON 2/1
G/1
Funcin especfica TON ndice general
Seccin G
Captulo Pgina
2.7 Anulacin de parmetros y reconfiguracin de grupos de vas 2/13
G/2
Funcin especfica TON Indice general
Seccin G
Captulo Pgina
3.6 Mdulos de salidas sin reanudacin 3/9
3.6-1 Estado de retorno 3/9
3.6-2 Estado de la va 3/10
3.6-3 Forzamiento o liberacin 3/10
3.6-4 Comandos de escritura 3/10
G/3
Captulo 2
1
2/1
2.2 Visualizacin de los parmetros de las vas
La pantalla de configuracin del mdulo seleccionado en el bastidor visualiza los
parmetros asociados a las vas de entradas o de salidas.
Esta pantalla da acceso a la visualizacin y modificacin de parmetros en
modo local, as como a la Comprobacin en modo conectado.
Descripcin
La barra de ttulo indica la referencia del mdulo seleccionado y su posicin
fsica as como el nmero del bastidor.
Instrucciones: Configuracin en curso; en modo conectado la ventana da
tambin la opcin de acceso a la Comprobacin (diagnstico).
Designacin del mdulo seleccionado:
Ejemplo:
nmero y tipo de vas:
- 64 ENT: designa el nmero de entradas del mdulo seleccionado; en el
ejemplo se trata de un mdulo de 64 entradas,
caractersticas de la alimentacin del mdulo:
- 24 VCC Sink: tensin continua 24V en lgica positiva,
tipo de conexin:
- CON: conector de tipo HE10.
La visualizacin de la zona de mdulo es opcional. El acceso se realiza mediante
la orden Ver/Area mdulo).
2/2
Configuracin de las vas de un mdulo TON 2
Referencias Parmetros
Advertencia:
Nota:
El primer grupo de vas de los mdulos (direcciones de 0 a 7) est siempre destinado a una
tarea Mast o Fast. Los siguientes grupos disponen, adems, de la opcin: Ninguna (ninguna
tarea asociada al grupo de vas inutilizadas).
2/3
2.3-2 Modificacin de parmetros de las entradas estndar
Esta modificacin se realiza desde la
pantalla de configuracin, seleccionando
los tipos de tarea a las cuales se van a
asociar los grupos de 8.
Se puede acceder a los parmetros
desde dos cuadros que agrupan en 8, las
vas. Clic
Para acceder al resto de grupos (en el
caso de los mdulos cuyo nmero de
vas es superior a 16), haga clic en la
barra de desplazamiento para bajar por
la lista de las vas (ejemplo al margen)
Nota:
La modificacin de las tareas es accesible nicamente en modo local.
2/4
Configuracin de las vas de un mdulo TON 2
Ninguna*
2/5
2.4-2 Modificacin de parmetros de las entradas rpidas
Despus de hacer doble clic en la posicin del mdulo TSX DEY 16 FK, aparece
la ventana de configuracin:
Descripcin
Parmetros
Los parmetros asociados a una va se pueden visualizar en el momento que
se selecciona la casilla "Parmetros". Los parmetros que se visualizan
corresponden a la va seleccionada.
Vas 0..7 / Vas 8..15
El ttulo indica los nmeros de las vas afectadas. Estos dos cuadros de
opciones permiten modificar el parmetro asignado a la tarea del grupo de
vas seleccionado (Mast, Fast o ninguna para las vas 8 a 15).
Tabla de las vas
La configuracin de cada va se visualiza en la tabla, junto con las siguientes
caractersticas:
nmero de la va,
smbolo (si se ha definido),
duracin del filtrado,
funcin de configuracin Normal, Almacenamiento Estado, Suceso
Nota:
Al hacer doble clic con el ratn o seleccionar con la tecla Intro una va de la tabla, se activa
o desactiva la casilla Parmetros"; y por consiguiente se visualizan o borran los parmetros
de la va seleccionada.
2/6
Configuracin de las vas de un mdulo TON 2
Parmetros de la va n
Esta parte de la pantalla se visualiza si la casilla "Parmetros" est
seleccionada. Cuatro botones de opcin determinan la funcin soportada
exclusivamente por la va:
Normal,
Almacenamiento Estado 0
Almacenamiento Estado 1
Tratamiento de suceso en el flanco Ascendente o Descendente o ambos
con el nmero asociado.
Nota:
Filtrado de va n
Mediante este cuadro se puede configurar la duracin del filtrado de la va
seleccionada, con incrementos o decrementos de 0,5 ms. ("Parmetros" se ha
activado previamente).
2/7
2.5 Mdulos de salidas
2.5-1 Parmetros de las salidas con reanudacin
Los mdulos de salidas con reanudacin incluyen varios parmetros de
configuracin:
asignacin de un grupo de 8 vas a una tarea,
configuracin del modo de retorno por grupo de 8 vas (valor de retorno o
conservacin en el estado),
configuracin de la reanudacin por grupo de 8 vas (automtico o programado),
valor de retorno va por va.
2/8
Configuracin de las vas de un mdulo TON 2
Nota
La opcin Ninguna se propone para los grupos de vas con direcciones superiores a 7.
Advertencia:
2/9
La siguiente tabla agrupa los parmetros asociados a las vas de los mdulos:
(*) La opcin Ninguna se propone para los grupos de vas con direcciones
superiores a 7.
Advertencia:
2/10
Configuracin de las vas de un mdulo TON 2
Notas:
Al hacer doble clic en una de las vas visualizadas en la tabla se muestra o se borra el
cuadro de configuracin de los valores de retorno, el botn Retorno, tendr, sin embargo,
que estar activado.
La opcin del retorno es exclusiva.
La modificacin del modo de retorno es posible en modo conectado.
2/11
2.6-2 Modificacin del modo de reanudacin de las salidas
Esta operacin se realiza por medio de los cuadros de "reanudacin" situados
en la pantalla de configuracin de las vas de salidas con reanudacin.
El editor de configuracin propone un cuadro de reanudacin por cada grupo de 8
salidas.
Los modos de reanudacin son:
"Prog." indica el modo programado: configuracin, tomada por las salidas, de
forma predeterminada. La reanudacin se ejecutar mediante una orden de la
aplicacin del autmata o con ayuda de la pantalla de comprobacin. Para evitar
continuas reanudaciones muy seguidas, el mdulo asegura automticamente
una temporizacin de 10 segundos entre dos reanudaciones.
"Auto." designa el modo automtico: la reanudacin se realiza automticamente
cada 10 segundos, hasta que desaparezca el fallo.
2/12
Configuracin de las vas de un mdulo TON 2
Nota:
La anulacin de parmetros o la reconfiguracin no es posible en modo conectado.
2/13
2.8 Configuracin de la entrada RUN/STOP (funcionamiento/parada)
La funcin RUN/STOP (funcionamiento/parada) puede estar asignada a una
entrada de un mdulo TON, lo que permite activar (RUN) o detener (STOP) la
ejecucin del programa de aplicacin.
Nota:
La activacin de la parada (STOP) por la entrada fsica asignada a la entrada RUN/STOP es
prioritaria en relacin a una orden de parada (RUN) procedente de un terminal o de una red.
Procedimiento:
Haga doble clic en la posicin 0 (ubicacin del procesador), desde la pantalla
de configuracin,
Seleccione la casilla Entrada Run/Stop,
Identifique la ventana de seleccin con uno de los bits de entradas.
Dos iconos Run/Stop (funcionamiento /
parada) indican, en la configuracin del
mdulo, la va Run/Stop y su nmero.
2/14
Configuracin de las vas de un mdulo TON 2
2/15
La reconfiguracin global en necesaria en modo local, para que las
modificaciones validadas para cada mdulo se tengan en cuenta en la aplicacin.
Esta reconfiguracin se efecta:
o mediante el icono " Validacin " o mediante la opcin Edicin/Validar,
o cerrando el editor de configuracin, sin haber realizado una validacin global,
confirmando la reconfiguracin global.
2/16
Captulo 3
1
3/1
3.2 Descripcin de la pantalla de comprobacin
En la pantalla de comprobacin se distinguen dos zonas:
zona de mdulo,
zona de parmetros de las vas.
3/2
Comprobacin de los mdulos TON 3
3/3
3.3 Mdulos de entradas estndar
Los parmetros de la pantalla de comprobacin de los mdulos de entradas
estndar son los siguientes:
estado de la va,
forzamiento o liberacin.
3.3-1 Estado de la va
El estado de la va se visualiza con:
el nmero,
el smbolo, si existe,
el valor: 0 o 1 o forzado a 0 (F0) o forzado a 1 (F1),
la indicacin de fallo (ERR).
3/4
Comprobacin de los mdulos TON 3
Nota:
El forzamiento se puede realizar por seleccin mltiple.
La orden de Cancelacin es accesible si la va seleccionada est forzada.
La orden de Cancelacin global forzado (zona mdulo) es accesible en el momento en que
una va del mdulo est forzada.
3/5
3.4-1 Estado de la va
El estado de la va se visualiza con:
el nmero,
el smbolo, si existe,
el valor,
la indicacin de fallo (ERR),
la indicacin de Enmascarar o de Desenmascarar.
Los valores posibles y sus significados son:
0 : Valor nulo
1 : Valor 1
F0 : Forzado a 0
F1 : Forzado a 1
0- Enmascarar : estado 0 - va enmasc
0-Desenmascar : estado 0 - va desenmasc
1-Enmascarar : estado 1 - va enmasc
G 1-Desenmascarar : estado 1 - va desenmasc
Cuando se selecciona la va, al encontrarse sta en fallo, el botn DIAG deja de
estar en gris.
El estado de las vas se actualiza cclicamente.
Nota:
El forzamiento se puede realizar en una seccin mltiple.
La orden de Cancelacin es accesible si la va seleccionada est forzada.
La orden de Cancelacin global forzado (zona de mdulo) es accesible en el momento en
que una va est forzada.
Nota:
El enmascaramiento o desenmascaramiento se pueden efectuar con una seleccin mltiple.
3/6
Comprobacin de los mdulos TON 3
3/7
3.5-3 Estado de la va
El estado de la va se visualiza con:
el nmero,
el smbolo, si existe,
el valor: 0 o 1 o forzado a 0 (F0) o forzado a 1 (F1),
la indicacin de fallo (ERR).
Cuando la va se selecciona al encontrarse sta en fallo, el botn DIAG deja de
aparecer en gris.
El estado de las vas se actualiza cclicamente.
Nota:
El forzamiento se puede realizar en una seccin mltiple.
La orden de Cancelacin es accesible si la va seleccionada est forzada.
La orden de Cancelacin global forzado (zona de mdulo) es accesible en el momento en
que una va est forzada.
Nota:
La escritura en 1 o en 0 se puede efectuar en una seccin mltiple.
3/8
Comprobacin de los mdulos TON 3
3/9
3.6-2 Estado de la va
El estado de la va se visualiza con:
el nmero,
el smbolo, si existe,
el valor: 0 o 1 o forzada a (F0) o forzada a 1 (F1),
la indicacin de fallo (ERR).
Cuando se selecciona la va, encontrndose sta en fallo, el botn DIAG deja de
aparecer en gris.
El estado de las vas se actualiza cclicamente.
Nota:
El forzamiento se puede realizar en una seccin mltiple.
La orden de Cancelacin es accesible si la va seleccionada est forzada.
La orden de Cancelacin global forzado (zona de mdulo) es accesible en el momento en
que una va est forzada.
Nota:
La escritura en 1 o en 0 se puede efectuar en una seccin mltiple.
3/10
Captulo 4
1
G
Direcciones
de los
bastidores
x: 0 a 7
Ejemplo:
%I101.5 significa: bit imagen de la entrada 5 del mdulo situado en posicin 1 en
el bastidor de direccin 1.
%Q10.3 designa el bit imagen de la salida 3 del mdulo situado en posicin 10 en
el bastidor 0.
4/1
4.2 Objetos de lenguaje asociados a las entradas/salidas TON
Direccin Significado
(1) El estado del suceso (EVT) se actualiza cuando el suceso (Evt) interviene.
El par xy corresponde al bastidor y a la posicin del mdulo en el bastidor.
4/2
Bit y palabras asociadas a la funcin especfica TON 4
Direccin Significado
%MWxy.i.2:X7 Reservado
%MWxy.i.2:X10 Reservado
a Reservado
%MWxy.i.2:X15 Reservado
4/3
%MWxy.MOD:Xj: Estado de los mdulos.
Direccin Significado
%MWxy.MOD:X4 Reservado
G
%MWxy.MOD:X6 Mdulo ausente
%MWxy.MOD:X7 Down-Fallo
%MWxy.MOD:X10 Reservado
a Reservado
%MWxy.MOD:X15 Reservado
%MWx.i.3:X0: control Va con i = primera va del grupo de vas (0, 8, 16, ...)
Direccionamiento especfico a los mdulos de salidas con reanudacin.
Direccin Significado
%MWxy.3:X1 Reservado
a Reservado
%MWxy.3:X15 Reservado
4/4
Bit y palabras asociadas a la funcin especfica TON 4
Sintaxis:
READ_STS%CH posicin mdulo.va
Sintaxis:
WRITE_CMD%CH posicin mdulo.1 va del grupo
Nota:
Los comandos READ_STS y WRITE_CMD se realizan por grupos de vas. Para actualizar el
estado de todas las vas de un grupo de 8 vas, slo se necesita un comando (escribir la
direccin de la primera va del grupo).
4/5
NOTAS:
S
A
Analgica I
Regulacin J
L
Funcin analgica ndice general
Seccin I
___________________________________________________________________________
Captulo Pgina
1 Configuracin de la funcin analgica 1/1
___________________________________________________________________________
I/1
Funcin analgica ndice general
Seccin I
___________________________________________________________________________
Captulo Pgina
3 Funcin de Puesta a punto 3/1
5 ndice 5/1
___________________________________________________________________________
I/2
Captulo 11
Configuracin de la funcin analgica
1 Configuracin de la funcin analgica
1.1 Introduccin
Antes de crear un programa de aplicacin, es necesario definir el contexto de
funcionamiento fsico en el cual se ejecutar, es decir, el tipo de procesador y los
mdulos de entradas/salidas utilizados.
El uso de las entradas/salidas analgicas (interfaz analgica integrada en la base
TSX 3722 o mdulos analgicos) requiere adems que se definan los parmetros de
las vas analgicas utilizadas (gama de entrada, nivel de filtrado, ...).
Por consiguiente, el programa PL7 Micro propone el editor de configuracin que
permite realizar fcilmente estas operaciones.
En el funcionamiento conectado de la aplicacin, este editor ofrece tambin una funcin
de puesta a punto que permite ajustar ciertos parmetros (por ejemplo, el filtrado) a fin
de adaptarlos de modo ptimo a la aplicacin.
___________________________________________________________________________
1/1
1.2-2 Seleccin del procesador
El tipo de procesador-autmata utilizado y su versin se indica en una ventana situada
en la parte superior izquierda de la pantalla de configuracin. Para seleccionar un nuevo
automata, se utiliza el cuadro de dilogo desplegable:
___________________________________________________________________________
1/2
Configuracin de la funcin analgica 1
Nota :
Para eliminar un mdulo de su posicin, se hace clic sobre ste para seleccionarlo. Luego se
presiona la tecla <Supr>. Aparece un cuadro de dilogo. Se confirma la eliminacin del mdulo.
___________________________________________________________________________
1/3
1.3 Acceso a los parmetros de la funcin analgica
1.3-1 Acceso a la definicin de los parmetros de la interfaz analgica
integrada
Slo est accesible si el autmata es un TSX 37-22. El acceso se efecta haciendo
doble-clic sobre la representacin de la interfaz analgica.
___________________________________________________________________________
1/4
Captulo
Funcin de configuracin de vas 22
2 Funcin de configuracin de vas
2.1 Presentacin de la funcin de configuracin de vas
Se puede acceder a esta funcin desde cada mdulo, incluso desde la interfaz
integrada en la base TSX 37-22. La funcin permite visualizar y modificar los parmetros
de cada un de las vas del mdulo (gama elctrica, filtrado de las medidas, visualizacin
de las medidas, ...). Si no se modifican los parmetros de las vas, stas se configuran
con sus valores por defecto.
1
2
___________________________________________________________________________
2/2
Funcin de configuracin de vas 2
para el mdulo TSX AEZ 414 y si se selecciona una gama termopar, se realiza la
compensacin de soldadura fra: Interna (por defecto) o Externa.
Dos botones de control permiten modificar la soldadura fra seleccionada.
Si se trata de una soldadura fra externa, la va 0 se fuerza despus de la
confirmacin, a gama Pt100.
para los mdulos de salida o para la interfaz integrada en las bases TSX 37-22,
el modo de retorno de las salidas durante un fallo : Retorno a 0 (por defecto) o
Conservacin del valor.
Dos botones de control permiten modificar el modo seleccionado.
___________________________________________________________________________
2/3
4 Este rea de nivel "va" contiene los parmetros configurados para cada una de las
vas utilizadas del mdulo. Para las vas no utilizadas, slo se visualizan el nmero
de va y el smbolo:
Va: nmero de la va de entrada o de salida,
Smbolo: smbolo definido por el usuario y asociado al objeto lenguaje de la va.
Si la va no tiene ningn smbolo asociado, este campo est vaco,
Gama: gama actual de la va de entrada o de salida. Segn el tipo de mdulo, sta
puede ser elctrica ( 10 V, 0..10 V, 0..5 V, 1..5 V, 0..20 mA 4..20 mA), termopar
(de tipo B, E, J, K, L, N, R, S, T y U) o termosonda (Pt100 o Ni1000),
Filtro: valor del filtro segn la medida: 0 (sin filtrado), 1 y 2 (filtrado dbil), 3 y 4
(filtrado medio), 5 y 6 (filtrado fuerte).
Escala: formato de visualizacin de la medida. Puede ser normalizada 0..10000
10000 (%..) o Usuario (User),
Para los mdulos de entradas TSX AEZ 801 / 802 y para la interfaz integrada en las
bases TSX 37-22, esta zona indica tambin la tarea a la que se han asignado las
entradas: tarea MAST o tarea FAST (en ciclo de exploracin rpida solamente).
Mientras ocurre esto (en ciclo de exploracin rpida), un cuadro de lista desplegable
permite modificar dicha tarea.
Las entradas del mdulo TSX AEZ 414 se asignan siempre a la tarea MAST.
Para los mdulos de salidas, indica tambin la tarea al final de la cual se actualizan
las salidas: MAST o FAST. Un cuadro de lista desplegable permite modificar dicha
tarea.
Nota
Si no se dispone de un ratn, se puede pasar de la zona 3 a la zona 4 pulsando las teclas
<Shift> <F2>.
___________________________________________________________________________
2/4
Funcin de configuracin de vas 2
(1)
(2)
(3)
I
Al seleccionar una nueva va en el rea de visualizacin (3) se accede a la modificacin
de parmetros en el cuadro de dilogo (2) que indica el nmero de la va seleccionada
de modo dinmico (por ejemplo, Parmetros va 3).
El acceso a la modificacin de los parmetros de una va puede efectuarse tambin
haciendo doble-clic sobre los parmetros en el rea de visualizacin (3), con lo que la
casilla Parmetros se activa automticamente.
Despus de modificar los parmetros, es necesario validar la nueva configuracin al
salir de la funcin. Se debe desplegar el men Edicin de PL7 Micro y seleccionar la
opcin Validar.
Tambin es posible salir de la funcin sin validar los parmetros.
___________________________________________________________________________
2/5
2.3-1 Modificacin del ciclo de exploracin
Se realiza mediante dos botones de control que permiten definir, para los mdulos
TSX AEZ 801 / 802 y la interfaz integrada en las bases TSX 37-22, el ciclo de exploracin
de las entradas:
ciclo Normal : las vas se muestrean cada 32 ms. Para las vas no utilizadas la medida
es igual a 0 y no hay ninguna informacin de estado disponible. El tiempo del ciclo del
mdulo es siempre 32 ms, sea cual sea el nmero de vas utilizadas.
La actualizacin de los registros de entrada se realiza al comienzo del ciclo de la tarea
MAST.
ciclo Rpido : slo se exploran las vas declaradas utilizadas (casilla correspondiente
marcada en el rea de dilogo). El perodo de muestreo depende, por tanto, del
nmero de vas utilizadas:
Nmero de vas utilizadas 1 2 3 4 5 6 7 8
Tiempo de ciclo del mdulo (ms) 4 8 12 16 20 24 28 32
Observacin
Los parmetros de los ciclos Normal/Rpido y de la va Utilizada no se pueden
modificar en modo conectado,si la aplicacin se ha transferido en el autmata con
los valores por defecto de dichos parmetros (ciclo normal y todas las vas
utilizadas).
___________________________________________________________________________
2/6
Funcin de configuracin de vas 2
En el caso de un mdulo TSX AEZ 414 y si el usuario selecciona una gama termopar
o termosonda, se proponen dos botones de control para definir la unidad en la que las
medidas de la va se muestran: C (Celsius) o F (Fahrenheit).
La escala de temperatura puede ser por defecto la del termopar o la del termosonda
elegido, definida en dcimo grado (por ejemplo, -600 a +1100 dcimos C para una
sonda Ni1000). En este caso el rea de visualizacin de los parmetros de la va
muestra 1/10C 1/10F dependiendo de la unidad de temperatura elegida.
___________________________________________________________________________
2/7
Si est activada la casilla Normalizada, la visualizacin es en este caso normalizada
0..100 %, con los lmetes inferiores y superiores por defecto (por ejemplo, -2000 a
8500 dcimos de C para una sonda Pt100). Si se modifica al menos uno de los lmites,
la visualizacin se vuelve normalizada por el usuario (por ejemplo, -1000 a
+5000 dcimos de C para una sonda Pt100). Cuando la escala de temperatura es
normalizada (con los lmites por defecto o usuario), el rea de visualizacin de los
parmetros de la va muestra %.. independientemente de la unidad de temperatura
empleada.
I
2.3-4 Modificacin del valor de filtrado
Se realiza mediante un cuadro de lista desplegable que permite elegir el nuevo valor de
filtrado de la va: 0 (sin filtrado), 1 y 2 (filtrado dbil), 3 y 4 (filtrado medio), 5 y 6 (filtrado
fuerte). El valor del coeficiente alfa del filtro elegido y el tiempo de respuesta asociado
aparecen en la barra de estado en la parte inferior de la pantalla. Una vez hecha la seleccin,
el resultado aparece en el rea de visualizacin de los parmetros de la va.
En ciclo de exploracin rpida (TSX AEZ 801 / 802 e interfaz intgrada en las bases
TSX 37-22), el filtrado no es programable.
___________________________________________________________________________
2/8
Funcin de configuracin de vas 2
Observacin
Se recomienda no asignar a la tarea FAST, ms de 2 mdulos analgicos de 4 vas I
utilizadas cada uno. Fuera de estas recomendaciones el sistema "overhead"
necesario se vuelve prohibitivo para una tarea FAST.
___________________________________________________________________________
2/9
2.4 Modificacin de los parmetros de una va de salida
Slo la modificacin de la gama de salida (TSX ASZ 200) requiere que se seleccione
la casilla Parmetros (1). Aparece un cuadro de dilogo (2).
A los dems parmetros de salida modificables se accede directamente desde el rea
de visualizacin de los parmetros (vase apartado 2.2).
(1)
(2)
I
Tambin es posible acceder a la modificacin de los parmetros haciendo doble-clic
sobre una va, lo que activa automticamente la casilla Parmetros.
Despus de modificar los parmetros y antes de salir de la funcin, es necesario validar
la nueva configuracin. Se debe desplegar el men Edicin de PL7 Micro y seleccionar
la opcin Validar. Tambin es posible salir de la funcin sin validar los parmetros.
___________________________________________________________________________
2/10
Funcin de configuracin de vas 2
___________________________________________________________________________
2/11
2.4-3 Modificacin de la gama de salida (TSX ASZ 200)
Se efecta en un cuadro de lista desplegable que permite seleccionar la nueva gama
de salida de la va: 10 V, 0..20 mA, 4..20 mA. Una vez efectuada la seleccin, sta
aparece en el rea de visualizacin de los parmetros de la va.
___________________________________________________________________________
2/12
Funcin de PuestaCaptulo
a punto 33
3 Funcin de Puesta a punto
3.1 Presentacin de la funcin de Puesta a punto
Slo es posible acceder a esta funcin en modo conectado (men Autmata, comando
Conectar). En cada mdulo analgico de la aplicacin, incluso en la interfaz integrada
en el autmata TSX 3722, esta funcin permite visualizar los parmetros de cada una
de sus vas (valor de la medida, valor del filtrado, ...) y acceder al diagnstico y al ajuste
de la va seleccionada (modificacin del filtrado, forzado de la va, ...). La funcin permite
tambin el acceso al diagnstico de un mdulo en caso de detectarse algn fallo.
El acceso a la funcin de Puesta a punto se efecta mediante el cuadro de dilogo
desplegable del rea de comandos que permite tambin regresar a la funcin
Configuracin.
___________________________________________________________________________
3/1
1
2
___________________________________________________________________________
3/2
Funcin de Puesta a punto 3
indicador de fallo
de color rojo
___________________________________________________________________________
3/3
3.4 Eliminacin del forzado de las vas de un mdulo
Se efecta mediante el botn de control Cancelar forzados globalmente que permite
eliminar el forzado de todas las vas del mdulo.
___________________________________________________________________________
3/4
Funcin de Puesta a punto 3
(1)
(3) (2)
___________________________________________________________________________
3/5
3.5-1 Visualizacin del diagnstico detallado de la va
Cuando se detecta un fallo en una va, su valor aparece precedido de ERR. El botn de
control DIAG, situado en el rea de Ajuste, permite acceder a una pantalla de diagnstico
de "va" (idntica a la de diagnstico de "mdulo") que indica los fallos de la va, ordenados
por categora: fallos internos, fallos externos u otros fallos.
Lista de fallos de la va
I Fallo conexin sensor
Fallo desbordamiento gama
Fallo de configuracin
Fallo de la aplicacin
Va forzada
Fallo de alimentacin 24 V (para salidas y entradas TSX AEZ 414)
___________________________________________________________________________
3/6
Funcin de Puesta a punto 3
___________________________________________________________________________
3/7
3.5-3 Forzado/cancelacin del forzado de una va
El forzado de la va seleccionada se efecta mediante el botn de control Forzar; el
valor del forzado se define en el campo de introduccin Forzado. Cuando una va se
fuerza, la informacin F aparece en el rea de visualizacin.
Para cancelar el forzado de una va, se selecciona sta y luego se presiona el botn de
control Cancelar forzado.
___________________________________________________________________________
3/8
Bits y palabras asociados a la funcin Captulo
analgica 4
4
Complementos
Tipo de objetos:
M: datos intercambiados en lectura o escritura a solicitud de la aplicacin.
K: informaciones de configuracin disponibles en slo lectura.
Ejemplo: %MW2.0.2 representa la palabra de estado de la va 0 del mdulo 2.
N va:
MOD: va reservada a la gestin del mdulo y de los parmetros comunes a las vas
que el mdulo soporta.
Ejemplo: %I4.MOD.ERR representa la informacin de fallo del mdulo 4. I
Rango:
Permite localizar los distintos objetos del mismo tipo asociados a una misma va.
Ejemplo: %MW2.0.2 representa la palabra de rango 2 de la va 0 del mdulo 2.
ERR indica un fallo en el mdulo o en la va.
Ejemplos: %I4.MOD.ERR representa la informacin de fallo del mdulo 4.
%I4.3.ERR representa la informacin de fallo de la va 3 del mdulo 4.
1 2
El editor de variables permite acceder a
todos los objetos asociados a un mdulo.
Se selecciona E/S en la lista desplegable
(1) y se introduce la posicin del mdulo
en el campo Direccin de mdulo (2).
Todas las variables asociadas a la funcin
analgica pueden simbolizarse.
___________________________________________________________________________
4/1
4.2 Objetos lenguaje asociados a entradas/salidas analgicas
La configuracin de un mdulo de entradas/salidas analgicas, en una posicin dada,
genera automticamente un conjunto de objetos lenguaje necesarios para la
programacin y el diagnstico de este mdulo. La interfaz integrada en el autmata
SX 37-22 se considera como el mdulo en la posicin 0 y sus objetos lenguaje
asociados se generan durante la seleccin del procesador.
Hay varios tipos de objetos lenguaje asociados a la funcin analgica:
los objetos de intercambio implcito que se intercambiasn automticamente en cada
ciclo de la tarea en la que se configuran las vas del mdulo o de la interfaz integrada.
Bits:
%Ix. MOD.ERR: bit de fallo del mdulo. En el estado 1, este bit seala un fallo del
mdulo situado en la posicin x,
%Ix.i.ERR: bit de fallo de la va. En el estado 1, este bit seala un fallo de la va i del
mdulo situado en la posicin x.
Palabras:
%IWx.i: va de entrada i del mdulo situado en la posicin x (nota: para las entradas
integradas en la base TSX 37-22, x = 0 e i comprendido entre 2 y 9),
%QWx.i : va de salida i del mdulo situado en la posicin x (nota: para la salida
integrada en la base TSX 37-22, x = 0 e i = 10).
Por ejemplo, la palabra %IW5.3 contiene el valor de la entrada 3 del mdulo situado
en la posicin 5.
I los objetos de intercambio explcito que se intercambian mediante instrucciones.Estos
objetos slo son tiles para una programacin avanzada de la funcin especfica (para
ms informacin sobre los intercambios explcitos, vase el apartado 4.3).
Palabras internas:
No utilizado %MWx.MOD
No utilizado %MWx.MOD.1
Estado mdulo %MWx.MOD.2 x x x
No utilizado %MWx.MOD.3
___________________________________________________________________________
4/2
Bits y palabras asociados a la funcin analgica 4
___________________________________________________________________________
4/3
los objetos de configuracin accesibles en slo lectura y que contienen los
parmetros de configuracin.
Palabras constantes:
Configuracin %KWx.i x x x
Configuracin %KWx.i.1 x
Configuracin %KWx.i.2 x
%KWx.i: palabra de configuracin que contiene los parmetros de las vas definidas
en el editor de configuracin (vase apartado 4.4 - Anexos).
%KWx.i.1: palabra de configuracin que contiene los valores mnimos de escala.
%KWx.i.2: palabra de configuracin que contiene los valores mximos de escala.
___________________________________________________________________________
4/4
Bits y palabras asociados a la funcin analgica 4
___________________________________________________________________________
4/6
Bits y palabras asociados a la funcin analgica 4
___________________________________________________________________________
4/7
Vas de salida
___________________________________________________________________________
4/8
Funcin de regulacin Sumario
Apartado J
___________________________________________________________________________
Captulo Pgina
1 Presentacin 1/1
2.5 Las funciones segn los modos de marcha del autmata 2/20
2.5-1 Arranque en fro 2/20
2.5-2 Arranque en caliente 2/20
2.5-3 Agregar una nueva llamada de funcin en modo conectado 2/20
___________________________________________________________________________
J/1
Funcin de regulacin Sumario
Apartado J
___________________________________________________________________________
Captulo Pgina
3 Dilogo de operador en el CCX 17 3/1
J
4.1 Ajuste de los bucles/depuracin de la aplicacin 4/1
4.1-1 Con el CCX 17 4/1
4.1-2 Sin el CCX 17 4/2
Captulo Pgina
6 Anexos 6/1
___________________________________________________________________________
J/3
aptre 1 Captulo 11
Presentacin
Presentacin
1.1 Generalidades
Las funciones de regulacin son elementos de base del lenguaje PL7 Micro que
permiten programar bucles de regulacin en los autmatas
Estas funciones satisfacen especialmente las necesidades siguientes:
el proceso secuencial que requiere funciones de regulacin auxiliares (ejemplos:
mquinas de embalaje en pelcula de plstico, mquinas de tratamiento de superficie,
prensas...),
el proceso de regulacin simple (ejemplos: hornos para tratamiento de metales,
hornos para cermica, pequeos grupos frigorficos...),
las particularidades de regulacin y control mecnico cuyo tiempo de muestreo es
crtico (ejemplos: regulacin de pares, regulacin de velocidad).
Las interfaces preconfiguradas con la gama de CCX 17 permiten controlar y ajustar
bucles de regulacin. En este contexto, CCX 17 puede acceder a hasta 9 bucles de
regulacin.
Observacin
No se limita el nmero de funciones PID en una aplicacin.
Prcticamente, es el nmero mximo de mdulos de entrada y salida aceptado por
el autmata que limita el nmero de bucles.
Importante
El dilogo operador (PID_MMI) funciona con la versin 2 de las consolas CCX 17. J
___________________________________________________________________________
1/1
1.2 Componentes
Los elementos de software que contienen las funciones esenciales para realizar
aplicaciones de regulacin constan por una parte de una familia de funciones y por otra
de pantallas predefinidas para los terminales CCX 17. La familia de funciones comprende
3 funciones algortmicas y una funcin de dilogo de operador.
___________________________________________________________________________
1/2
Presentacin 1
J
CCX17
E
N S
T A
R L
A Corrector Adaptador I
D D C
M A A O
E S TSX Micro S N
D T
I R
A
D C
C O
A
A P
C L
I
T O
A Proceso controlado N
D A
O D
R O
R
E
E
S S
___________________________________________________________________________
1/3
1.4 Proposicin de metodologa
El esquema siguiente describe el encadenamiento de las tareas que se realizan al crear
y depurar una aplicacin de regulacin.
Aplicacin / Configuracin
Configuracin de las interfaces
TON, analgicas y contajes
Autmata / Conectar
Transferencia de la aplicacin
en el autmata
Captulo 3.2
Tabla de animacin
Captulo 4.1 Depuratin
Tabla de variables
Depuracin del por el CCX 17
programa y ajuste
Documentacin
Dosier de
aplicacin
___________________________________________________________________________
1/4
Captulo 22
Descripcin de las funciones de regulacin
2 Descripcin de las funciones de regulacin
2.1 Generalidades acerca de las funciones
2.1-1 Definicin
El acceso a las funciones se efecta desde el men Llamada de funcin durante la
programacin o con las teclas Mays-F8 o directamente desde el
icono.
___________________________________________________________________________
2/1
2. Seleccione la funcin.
En LIST:
Si se trata de una introduccin en lenguaje
IL, se aconseja cargar el acumulador a 1
J para efectuar una llamada no condicionada
de la funcin, y luego abrir el corchete
para la llamada.
Nota
Para ms amplia informacin acerca de estas funciones, vase el apartado C.
___________________________________________________________________________
2/2
Descripcin de las funciones de regulacin 2
2.1-3 Programacin
Importante
Observacin
Como estos parmetros son de lectura y escritura, no se puede utilizar una tabla
de constantes (%KW xx : yy).
___________________________________________________________________________
2/3
2.2 La funcin PID
2.2-1 Funcionalidad
La funcin PID realiza una correccin PID a partir de una medida y de un valor de
consigna analgico en el formato [0 - 10000] y proporciona un control analgico en el
formato [0 - 10000].
La OF PID consta de las funciones siguientes:
algoritmo PID serie - paralelo,
accin directa / inversa (segn el signo de la ganancia KP),
accin derivada sobre medida o desviacin,
lmite alto y bajo del valor de consigna de 0 a 10000,
lmite alto y bajo de la salida en modo automtico,
antisaturacin de la accin integral,
modos de marcha Manual/Automtico con cambio instantneo,
control del acceso PID por el dilogo de operador,
funcionamiento en integrador puro (KP = TD = 0).
Los parmetros de visualizacin utilizados por el CCX 17 se expresan en unidades
fsicas.
___________________________________________________________________________
2/4
TS
CORRECTOR P.I.D.
Parte Valor de consigna
TI
Los modos de marcha del PID
Sinptica general
dt
OUT_MAN
Derivada
MEDIDA Accion derivada
UTILIZADA sobre la medida PV_DEV
CCX17
Descripcin de las funciones de regulacin
2
2/5
___________________________________________________________________________
J
La tabla siguiente describe los parmetros de usuario de la funcin PID. La estructuracin
de los datos se describe en el captulo de programacin.
El valor predeterminado de los parmetros es el valor ledo en la primera ejecucin de
la funcin despus de un arranque en fro, si todos los parmetros tienen el valor 0 (no
se efectu ninguna inicializacin previa desde la consola o el programa).
___________________________________________________________________________
2/6
Descripcin de las funciones de regulacin 2
Nota
Los valores de las variables utilizadas por el CCX 17 se multiplican por 100 para permitir una
visualizacin con dos dgitos despus de la coma en el CCX 17. (El CCX 17 utiliza un formato con
coma fija en vez del formato flotante.)
___________________________________________________________________________
2/7
Observaciones
El valor de consigna interno no se ajusta a la medida en el modo manual.
Las graduaciones se efectan nicamente cuando se modifica uno de los valores
de consigna (SP o DOP_SP).
El algoritmo sin accin integral (TI = 0) efecta la operacin siguiente:
para t = SP - PV ,
la salida OUT = KP [ t + Dt] /100 + 5000
donde Dt = accin derivada,
El algoritmo con accin integral (TI 0) efecta la operacin siguiente:
para t = SP - PV ,
la salida OUT = KP [ t + (TS/10.TI).t +Dt] /100
OUT = OUT + OUT
donde Dt = accin derivada.
Al arrancar en fro, el PID contina en modo manual, con la salida a 0. Para imponer
el modo automtico o una salida manual no nula despus de un arranque en fro,
ser necesario programar la secuencia de inicializacin despus de la llamada del
PID.
___________________________________________________________________________
2/8
Descripcin de las funciones de regulacin 2
___________________________________________________________________________
2/9
Importante
Los dems parmetros se utilizan para la gestin interna del PID. Nunca deben ser
modificados en la aplicacin.
Ejemplos de llamada:
Programacin en Ladder
Cuando se utiliza el dilogo de operador de regulacin (DEVAL_MMI = 0)
Programacin en List
Cuando no se utiliza el dilogo de operador DEVAL_MMI = 1, ni se piensa agregar
uno. Obsrvese las cadenas de caracteres vacas.
___________________________________________________________________________
2/10
Descripcin de las funciones de regulacin 2
PV T_MOD
OUTP INP
PID PWM PW_O
SP
t
T_MOD
Amplitud de
impulsos
2.3-2 Descripcin
La tabla siguiente describe los parmetros de usuario de la funcin PWM; la sintaxis de J
llamada de la funcin se describe en el prrafo de programacin.
___________________________________________________________________________
2/11
En cada TOP del perodo de modulacin T_MOD, se calcula en milisegundos la
duracin de la activacin de la salida PW_O, segn la frmula:
Estado 1 = INP * T_MOD / 1000 (milisegundos)
PWO
Modulacin de amplitud de %
Tiempo
Perodo de modulacin
Reglas prcticas
T_MOD = TS (con TS el perodo de muestreo del PID en posicin superior).
El perodo de la tarea actual (ms) (resolucin deseada). 10 . T_MOD.
Ejemplo
J El PID se encuentra en la tarea MAST, el perodo de la MAST es de 50 ms, TS = 10 (es
decir 100 ms) y la resolucin deseada es de 1/20 (una duracin de T_MOD debe
contener por lo menos 20 perodos de la tarea actual).
Supongamos que T_MOD = TS = 10.
Por consiguiente, el perodo de la tarea donde se encuentra PWM debe ser inferior a
10 * 10 / 20 = 5.
La funcin PWM se programa en FAST con un perodo de 5 ms.
___________________________________________________________________________
2/12
Descripcin de las funciones de regulacin 2
___________________________________________________________________________
2/13
Ejemplos de utilizacin
Programacin en Ladder:
Con PWM(%MW11,%Q6.3,%MW90:5)
Programacin en List:
!
(* PID de regulacin del horno*)
J LD TRUE
[PID('TC_HORNO','GRADOS',%IW4.0,%MW11,%M10,%MW100:43)]
!
(* Ajuste de T_MOD de la PWM al TS del PID *)
LD TRUE
[%MW90:=%MW105]
!
(* Control de la salida TON en modulacin de duracin*)
LD TRUE
[PWM(%MW11,%Q6.3,%MW90:5)]
___________________________________________________________________________
2/14
Descripcin de las funciones de regulacin 2
2.4-2 Descripcin
La tabla siguiente describe los parmetros de usuario de la funcin SERVO; la sintaxis
de llamada de la funcin se describe en el prrafo de programacin.
___________________________________________________________________________
2/15
Funcionamiento SERVO con copia de posicin
La funcin SERVO efecta un control de la posicin del motor en funcin de un valor
de consigna de posicin INP que proviene de la salida de un PID en el formato 0/
10000 y de una medida de posicin POT. El algoritmo de control es un rel con
histresis.
SERVO
PV UP
OUT INP +
PID
SP DOWN
HYST
POT
Observacin
___________________________________________________________________________
2/16
Descripcin de las funciones de regulacin 2
Ejemplo
+2% +2%
1 2 3 45
UP
5 s. 1 s.
DOWN
1 s.
T_MOTOR = 25 s.
T_MINI = 1 s.
1. La variacin de la salida del PID es de +20% (el impulso T_MOTOR = 25 s. para una
variacin de 100%). En este caso, el impulso afecta la salida UP para una duracin
de 5 s.
2. La variacin del PID es de +2%. Correspondera a un impulso de 0,5 s, que es
inferior a T_MINI (=1 s.) y no afecta las salidas.
3. Aparece una segunda variacin de +2%. La funcin agrega sta a la previa (que
corresponda a una variacin inferior al valor mnimo). Esto corresponde a una
variacin positiva global de +4% y, por consiguiente, a un impulso de 1 s en la salida
UP.
4. Aparece una variacin de -24%. Por consiguiente, el impulso activado es de 6 s en
la salida DOWN.
5. Antes del transcurso del segundo siguiente, otra variacin de +22% lleva el sistema J
de una variacin global de 2% < a la variacin de T_MINI (4%). La funcin deja de
de efectuar el impulso mnimo de 1 s.
Notas
La funcin SERVO no efecta la gestin de los topes de posicin, pero es fcil hacerlo
de forma aplicativa: si se detecta un tope, se debe forzar la salida correspondiente a
0 (UP para el tope alto, DOWN para el tope bajo).
___________________________________________________________________________
2/17
Es posible pasar de un funcionamiento a otro (por ej. : al ocurrir una falla de copia,
se pasa del modo con copia al modo sin copia).
___________________________________________________________________________
2/18
Descripcin de las funciones de regulacin 2
Ejemplos de utilizacin
con copia de posicin: programacin en Ladder
OPERATE
PID('PID1', 'm/s', OUTP, MAN>
OPERATE J
SERVO(OUTP, %IW3.1, %Q2.1>
___________________________________________________________________________
2/19
2.5 Las funciones segn los modos de marcha del autmata
Este prrafo describe el comportamiento de las funciones en los distintos casos de
arranque:
arranque en fro (nueva aplicacin, cambio de cartucho),
arranque en caliente (reanudacin de la alimentacin, sin cambio de contexto de
aplicacin),
primera ejecucin despus de agregar una funcin mediante la modificacin en
modo conectado.
Nota
Para que la funcin se considere como nueva, sta debe utilizar una nueva tabla de parmetros.
Por consiguiente, el hecho de retirar un PID y agregar otro utilizando la misma tabla de parmetros
no se considera como un aadido de un nuevo PID. En este caso, el PID se ejecuta en el estado
y con los parmetros del PID previo.
___________________________________________________________________________
2/20
Dilogo de operador en elCaptulo
CCX 17 33
3 Dilogo de operador en el CCX 17
3.1 Dilogo de operador en el CCX 17
El CCX 17 permite visualizar y controlar todos los parmetros modificables de un
corrector PID sin que sea necesario programar una aplicacin especial para el
autmata.
El dilogo de operador (llamado: w) integra un programa de control y ajuste para los PID
de la aplicacin en el CCX 17. Efecta la gestin de 3 tipos de pantallas que permiten
seleccionar, visualizar y controlar un PID, as como ajustar sus parmetros. El programa
se inserta fcilemente en cualquier aplicacin de dilogo de operador del CCX 17.
Nota
Atencin, la funcin es efectiva nicamente si el autmata est en RUN.
___________________________________________________________________________
3/1
3.2 Descripcin de las pantallas predefinidas
3.2-1 Seleccin de un bucle
MOD
E
N
T
E
R
___________________________________________________________________________
3/2
Dilogo de operador en el CCX 17 3
Up FOUR AUTO
MOD
E
N
T
E
R
Nota
Cuando un campo es intermitente (modo de introduccin), el valor no se actualiza si se lo modifica
desde la aplicacin o PL7.
___________________________________________________________________________
3/3
3.2-3 Ajuste de un bucle
Up FOUR KP : 1,00
TI(s) : 0,0 TD(s) : 0,0
Ts(s) : 1,00 PV_DEV : 0
OUT_MIN : -20,00 OUT_MAX : 20,00
0
MOD
E
N
T
E
R
___________________________________________________________________________
3/4
Dilogo de operador en el CCX 17 3
Nota
Las 4 palabras de confirmacin son comunes a todas las funciones de comunicacin asncronas
(OF de comunicacin, OF DOP integrado y OF PID_MMI).
Sin embargo, la OF PID_MMI efecta automticamente la gestin de estas palabras, que la
aplicacin nunca debe modificar. Se proporcionan a ttulo de consulta.
Para ms amplia informacin, vase el apartado K, subcaptulo 3.5, Funcin Dilogo de operador.
___________________________________________________________________________
3/5
Ejemplo de direccin CCX 17
La conexin directa del CCX 17 mediante la parte delantera del TSX Micro
(UNI-TELWAY) determina las direcciones de esclavo UNI-TELWAY 4-5.
La codificacin puede efectuarse:
con el valor inmediato:
- PID_MMI(ADR#{0.254}0.0.4, ....)
o simplemente
- PID_MMI(ADR#0.0.4, ....)
con una tabla de 6 palabras:
%MW10:6 := ADR#0.0.4
PID_MMI(%MW10:6, ...)
Ejemplo
FAST a 10 ms y MAST a 50 ms contienen ambas PID.
En este caso, la funcin PID_MMI debe programarse imperativemente en la tarea
MAST.
Nota
Puede ser la tarea FAST o MAST.
___________________________________________________________________________
3/6
Dilogo de operador en el CCX 17 3
%MW45:X MSG_en_curso
(*clculo del bit indicador del intercambio en curso*)
%MW200:X
J
falla ala_900
R
(*emisin alarma al aparecer una falla*)
falla MSG_en_curso ala_900
OPERATE
SEND_ALARM(ADR#0.0.4, %KW140.29, %MW200:4)
ala_900
S
rz_ala_900
R
(*cancelacin de la alarma si generada*)
ala_900
OPERATE
PANEL_CMD(ADR#0.0.4, %KW170:3, %MW200.4
puesta0_ala_900
rz_ala_900
___________________________________________________________________________
3/7
Nota
La PID_MMI activa (EN a 1) asigna los botones de control del CCX 17. Si el programa de aplicacin
utiliza estos botones para otros propsitos que la regulacin, se debe reasignarlos en el flanco
descendente de EN (uso de la funcin ASSIGN_KEYS; vase el apartado K).
En cambio, si el CCX 17 sirve nicamente para la regulacin, se aconseja efectuar un SET no
condicionado del bit EN en la aplicacin PL7.
___________________________________________________________________________
3/8
Dilogo de operador en el CCX 17 3
3.3-4 La funcin PID_MMI segn los modos de marcha del autmata y del
CCX 17
La funcin PID_MMI tiene en cuenta los modos de marcha del autmata y del CCX 17.
Rearranque en caliente
Si al enviar un mensaje ocurre un problema tal como un microcorte, el control no se
repite. Para actualizar la pantalla, slo es necesario cambiar de pantalla y regresar o
activar la actualizacin desde la pantalla de seleccin de bucles, si sta est presente.
STOP/RUN y RUN/STOP
En STOP, la funcin PID_MMI no est activa. Sin embargo, permanece la posibilidad
de introducir parmetros en la pantalla visualizada.
En STOP/RUN, la funcin sigue ejecutando en su estado actual antes de pasar a STOP.
Corte de alimentacin o desconexin/reconexin del CCX 17
Cuando se reanuda la alimentacin del CCX 17 o cuando se lo reconecta, ste J
reinicializa la comunicacin con el autmata. La PID_MMI reasigna peridicamente los
botones de control del CCX 17. Para visualizar una de las pantallas de regulacin, se
presiona al cabo de 20 segundos a lo sumo uno de los 3 primeros botones (de
preferencia el botn Ref o Dn, es decir el a la izquierda en la segunda hilera).
Nota
Tambin es posible detectar la presencia o ausencia del CCX 17 mediante palabras lenguaje
asociadas a vas de comunicacin (vase el apartado K, captulo 4.1).
Observacin
Si una alarma (que proviene del programa de aplicacin de dilogo de operador)
se activa durante la visualizacin de una de las 3 pantallas de regulacin, la pantalla
del CCX 17 se dedica entonces a la gestin de los mensajes de alarma.
Al regresar al dilogo de operador de regulacin, la pantalla aparece incompleta.
Up/Dn o Refresh permite actualizarla.
Arranque en fro
Slo el arranque en fro permite reinicializar las pantallas de regulacin.
___________________________________________________________________________
3/9
NOTAS:
S
Captulo 44
Instalacin de una aplicacin de regulacin
4 Instalacin de una aplicacin de regulacin
4.1 Ajuste de los bucles/depuracin de la aplicacin
4.1-1 Con el CCX 17
La tabla siguiente lista los parmetros PID accesibles mediante el dilogo de operador.
Detalles de PARA
Nombre Tipo Acceso por el CCX 17
(en regulacin)
SP Palabra Lectura/escritura,
(valor de consigna) pantalla de control
OUT MAN Palabra Lectura/escritura,
(control manual) pantalla de control
KP Palabra Lectura/escritura,
(ganancia) pantalla de ajuste
TI Palabra Lectura/escritura,
(accin integral) pantalla de ajuste
J
TD Palabra Lectura/escritura,
(accin derivada) pantalla de ajuste
TS Palabra Lectura/escritura,
(perodo de muestreo) pantalla de ajuste
OUT_MAX Palabra Lectura/escritura,
(valor superior del control) pantalla de ajuste
OUT_MIN Palabra Lectura/escritura,
(valor inferior del control) pantalla de ajuste
PV_DEV Octeto Lectura/escritura,
(derivada sobre medida (0) o desviacin (1)) pantalla de ajuste
DEVAL_MMI Octeto
PV_SUP Doble palabra Lectura/escritura,
(lmite superior de la medida) pantalla de control
PV_INF Doble palabra Lectura/escritura,
(lmite inferior de la medida) pantalla de control
PV_MMI Doble palabra Lectura/escritura,
(imagen de la medida en escala fsica) pantalla de control
SP_MMI Doble palabra Lectura/escritura,
(imagen del valor de consigna en escala fsica) pantalla de control
Variables privadas 26 palabras
___________________________________________________________________________
4/1
Al arrancar, el operador accede a la pantalla de control del bucle que va a ajustar. Luego,
verifica que el corrector est en modo manual y asigna a los parmetros los valores
deseados.
Actuando sobre el control, lleva el proceso al valor de consigna deseado mientras
supervisa la evolucin de la medida en la pantalla. Luego, procede al ajuste del bucle
seleccionando uno de los mtodos descritos en el anexo de este documento. El
operador accede a la pantalla de ajuste del bucle. La tecla MANU/AUTO le permite
pasar de AUTO a MANU y a la inversa. El acceso a los parmetros se efecta con las
flechas horizontales y el acceso a la modificacin de su contenido con la tecla MOD.
___________________________________________________________________________
4/2
Instalacin de una aplicacin de regulacin 4
Diagnstico
Funciones de regulacin (PID, SERVO, PWM)
Estas funciones no necesitan ninguna informacin de diagnstico.
Los casos de error posibles son:
Comportamiento Diagnstico
Todos los parmetros de la funcin estn a 0. - No se llama la funcin.
- La longitud de la tabla PARA es insuficiente.
La salida permanece a 0 aun en el modo - No se llama la funcin.
manual. - La longitud de la tabla PARA es insuficiente.
La accin integral no funciona. - La tarea se ha configurado en cclico en vez
(TI del PID se ignora) de peridico.
TS no es modificable. - La tarea se ha configurado en cclico en vez
(TS del PID permanece a 0) de peridico.
En modo auto, la salida del PID permanece - Verificar los lmites de salida
a 0. (OUT_MIN y OUT_MAX)
Funcin PID_MMI
J
Comportamiento Diagnstico
Despus de una desconexin o un corte de - Normal, presionar un botn (B1, B2 o B3)
corriente del CCX 17, la ltima pantalla de para hacer reaparecer la pantalla de
regulacin no reaparece. regulacin (esperar algunos segundos).
Ciertos PID se ignoran. - Estos PID no se ejecutan.
- Los bit DEVAL_MMI de estos PID estn a 1.
- Estos PID se encuentran en una tarea ms
lenta que PID_MMI.
___________________________________________________________________________
4/3
4.3 Complemento de programacin
4.3-1 Agregar una desviacin a la salida
Cuando el PID se utiliza en modo P o PDE, esta funcin permite cancelar el error
esttico en un punto de funcionamiento dado.
El esquema de principio es el siguiente:
PID
OUT Salida
+
+
Programacin: Desviacin
PID('nivel' , 'mm' , PV , OUT , AUTO , PARA:43)
Salida := OUT + Desviacin
OUT_MAX := 10000 - DESVIACION (Desviacin > 0)
OUT_MIN := -DESVIACION (Desviacin < 0)
Nota
Al ejecutar el PID, OUT_MAX y OUT_MIN se cogen en el alcance 0 -10000. Estas dos
instrucciones permiten efectuar apropiadamente la gestin de la desaturacin en la accin integral
del PID.
___________________________________________________________________________
4/4
Instalacin de una aplicacin de regulacin 4
PID1 PID2
MEDIDA 1 MEDIDA 2
CONTROL
VALOR DE VALOR DE
CONSIGNA CONSIGNA CONTROL
M/A
CONTROL MANUAL
Por lo general, el PID abajo debe ser el ms rpido. Por consiguiente, el tiempo de
muestreo TS del PID1 ser inferior al tiempo del PID2.
Programacin
La salida control del PID1 entra en el valor de consigna del PID2. Los 2 PID deben pasar
simultneamente al modo manual. Entonces, el operador debe actuar sobre el control
manual del PID esclavo (abajo).
___________________________________________________________________________
4/5
MAST-MAIN
(*en auto manu del esclavo, memorizar el modo de marcha del maestro*)
Auto_e Auto_m Mem_auto_m
N S
Auto_m Mem_auto_m
R
(*si esclavo en manu, pasar el maestro a manu y ajustar la salida a la medida del esclavo*)
Auto_e OPERATE
Out_man_m:=Pv_e
Auto_m
R
(*en manu auto del esclavo, restaurar el modo de marcha memorizado del maestro*)
Mem_auto_m Auto_m
R
(*PID maestro*)
OPERATE
PID('Maestro',",Pv_m,Out_m,Auto_m,Sp_m:43
J
(*si maestro en auto, la salida se cablea en el valor de consigna del esclavo*)
Auto_m OPERATE
Sp_e:=Out_m
OPERATE
PID('Esclavo',",Pv_e,Out_e,Auto_e,Sp_e:43
___________________________________________________________________________
4/6
Captulo 55
Ejemplo de aplicacin
5 Ejemplo de aplicacin
5.1 Regulacin de temperatura
5.1-1 Descripcin de la aplicacin
Se trata de mantener la temperatura del agua de una piscina al aire libre igual a un valor
deseado. Este valor se determina en funcin de la temperatura del aire ambiental.
Temp. aire
TT
Temp. agua
Calentador
Bomba
Medida Salida
Regul
Clculo del
valor de c
consigna Valor de
consigna
Por lo general, se utiliza una regulacin todo o nadaen este tipo de instalacin. En este J
ejemplo, se propone sustituirle una regulacin proporcional con salida modulada, lo que
debera reducir la amplitud de las oscilaciones de temperatura alrededor del valor
deseado.
Temperatura
deseada Regulacin todo o nada Regulacin proporcional
Salida T_CYCL
___________________________________________________________________________
5/1
La medida de la temperatura del agua as como la de la temperatura ambiental se
efecta con sondas de resistencia de tipo Pt 100.
___________________________________________________________________________
5/2
Ejemplo de aplicacin 5
___________________________________________________________________________
5/3
5.1-3 Sinptica del bucle de regulacin
PID1
PWM
TSX AEZ 414 + AUTO
Temp. Sonda Med
agua PID
Pt100
%IW3.0 _
SALIDA
Temp. Sonda %IW3.1 MANU
aire Pt100
%IW3.2
Supervisin Th J %IW3.3 Cons
recalentam.
motor
Hacia resistencia
Clculo valor de calentamiento %Q4.0
Supervisin Th K de consigna
recalentam.
calentador
5.1-4 Programacin
Tratamiento propuesto
El bloque PID1 se asigna a la regulacin de temperatura. La graduacin se asigna al
J clculo del valor de consigna de la temperatura del agua a partir de la temperatura del
aire.
Al reanudar la alimentacin, se selecciona el funcionamiento de regulacin: la bomba
se activa. El estado de marcha de la bomba condiciona el estado del regulador. Si la
bomba es defectuosa, el PID pasa a MANU y la salida se fuerza a 0.
Los bits de la palabra de estado (umbral alto de medida, umbral bajo de medida, umbral
alto de desviacin y umbral bajo de desviacin) se utilizan para generar las alarmas.
Los coeficientes del bucle PID se inicializarn a:
Kp = 60 Kp = 6
Escala Visualizacin
Ti = 300 datos Ti = 30 CCX
Td = 50 TD = 5
Por supuesto, estos valores pueden afinarse en una fase de ajuste ulterior.
___________________________________________________________________________
5/4
Captulo
Anexos 66
6 Anexos
6.1 Notas sobre la regulacin
6.1-1 Mtodo de ajuste de los parmetros PID
Existen numerosos mtodos de ajuste de los parmetros de un PID. El mtodo
propuesto aqu es el de Ziegler y Nichols que tiene dos variantes:
un ajuste en bucle cerrado,
un ajuste en bucle abierto.
Antes de utilizar una de estas variantes, es necesario determinar el sentido de accin
del PID:
si un aumento de la salida OUT provoca un aumento de la medida PV, se elige el
sentido indirecto (KP > 0),
de lo contrario, si provoca una disminucin, se elige el sentido directo (KP < 0).
Medida
Tc t
Segn el tipo de regulador (PID o PI), el ajuste de los coeficientes se efecta con los
valores siguientes:
Kp Ti Td
Kpc Tc Tc
PID
1,7 2 8
Kpc
PI 0,83 * Tc
2,22
t
Medida t
Integrador Respuesta del proceso
M = S
J Tu tg
tg
t t
Nota
Atencin a las unidades. Si el ajuste se efecta PI 0,9 Tg/Tu 3,3 * Tu
en PL7, se debe multiplicar por 100 el valor
obtenido para KP.
___________________________________________________________________________
6/2
Anexos 6
Este mtodo de ajuste proporciona tambin un control muy dinmico que puede tener
como consecuencia rebasamientos no deseados al cambiar los valores de consigna.
En este caso, se debe reducir el valor de ganancia hasta que se obtenga el funcionamiento
deseado.
El inters de este mtodo reside en el hecho que no requiere ninguna hiptesis acerca
de la naturaleza y del orden del proceso. El mtodo se aplica tanto a procesos estables
como a procesos realmente integradores. Es especialmente interesante en el caso de
procesos lentos (fabricacin de cristales, ...), puesto que el usuario slo necesita el
inicio de la respuesta para ajustar los coeficientes Kp, Ti y Td.
J
Kp demasiado grande
Kp correcto
Error esttico
Kp demasiado pequeo
___________________________________________________________________________
6/3
Accin integral
La accin integral permite cancelar el error esttico (desviacin entre la medida y el
valor de consigna). Mientras ms elevada es la accin integral (Ti pequeo), ms la
respuesta se acelera y ms la estabilidad se degrada.
Tambin es necesario encontrar un buen compromiso entre la velocidad y la estabilidad.
Influencia de la accin integral sobre la respuesta del proceso en un escaln
%
Ti demasiado grande
Ti correcto
Ti demasiado pequeo
Nota
Ti pequeo significa una accin integral elevada.
J
___________________________________________________________________________
6/4
Anexos 6
Accin derivada
La accin derivada tiene una caracterstica de anticipacin. En efecto, agrega un
elemento que tiene en cuenta la velocidad de variacin de la desviacin, lo que permite
anticipar acelerando la respuesta del proceso cuando la desviacin aumenta y
decelerando cuando la desviacin disminuye. Mientras ms elevada es la accin
derivada (Td grande), ms la respuesta se acelera.
Otra vez, es necesario encontrar un buen compromiso entre la velocidad y la estabilidad.
Influencia de la accin derivada sobre la respuesta del proceso en un escaln
%
Td demasiado grande
Td demasiado pequeo
Td correcto
___________________________________________________________________________
6/5
Lmites de la regulacin PID
Ke - p
H (p) =
1+p
con:
= retardo del modelo,
= constante de tiempo del modelo,
las prestaciones de la regulacin dependen de la relacin / .
2 20
Para / < 2, es decir bucles rpidos ( pequeo) o procesos con retardo importante
(t grande), la regulacin PID no conviene. Se deben utilizar algoritmos ms evolucionados.
Para / > 20, una regulacin con umbral ms histresis es suficiente.
___________________________________________________________________________
6/6
Anexos 6
___________________________________________________________________________
6/7
NOTAS:
S
2001 Schneider Electric Argentina S.A. Todos los derechos reservados
Sede Central y Agencia Bs. As. Planta Industrial Plasnavi Agencia Mendoza Delegacin Tucumn Delegacin Neuqen
Viamonte 2850 (B1678DWF) Hroes de Malvinas 2071/73 San Martn 198 2 P (M5501ACO) Av. 2 de Abril 375 3 of. A (T4000IGA) Pinar 379
Caseros, Pcia. de Bs. As. (B1824CCE) Lans, Pcia. de Bs. As. Godoy Cruz, Pcia. de Mendoza S. M. de Tucumn, Pcia. de Tucumn (Q8300JUG) Neuqun,
Tel: (54-11) 4716-8888 Tel: (54-11) 4246-7545 Tel: (54-261) 422-1110 Tel: (54-381) 421-8774 Pcia. de Neuqun
Fax: (54-11) 4716-8866 Fax: (54-11) 4246-5200 Tel: (54-261) 422-1119 Fax: (54-381) 421-1686 Telefax (54-299) 448-8087
Planta Industrial San Martn Agencia Crdoba Agencia Rosario Delegacin Posadas Delegacin Cdro. Rivadavia
Av. 101 (Ricardo Balbn) 3102/34 Av. Sabattini 2984 (X5014AUX) Entre Rios 2136 (S2000FXJ) Av. Trincheras de San Jos 313 Rivadavia 985 6 C
(B1650NBN) San Martn, Pcia. de Bs. As. Crdoba, Pcia. de Crdoba Rosario, Pcia. de Santa Fe (N3300CRU) Posadas, (U9000AKL) Cdro. Rivadavia,
Tel: (54-11) 4724-4444 Tel: (54-351) 456-8888 Tel: (54-341) 482-3999 Pcia. de Misiones Pcia. de Chubut
Fax: (54-11) 4724-4411 Fax: (54-351) 457-0404 Fax: (54-341) 482-3993 Telefax: (54-3752) 43-8220 Telefax (54-297) 447-6654
03/2001