Documente Academic
Documente Profesional
Documente Cultură
Estructura de un PLC.
Todos los PLCs comerciales poseen una estructura externa compacta en la que est 疣
todos los elementos (en un solo).
Sin embargo, podemos decir que existen b 疽 icamente dos formas externas de
presentaci de los PLCs, una modular y la otra compacta.
La memoria.
Dentro de la CPU disponemos de un 疵 ea de memoria, la cual posee 砺 arias secciones�
encargadas de distintas funciones. As�tenemos:
CPU
La unidad de proceso central (CPU) es el coraz del PLC. Es la encargada de ejecutar
el programa de usuario mediante el programa del sistema (es decir, el programa de
usuario es interpretados por el programa del sistema). Sus funciones son vigilar que el
tiempo de ejecuci del programa de usuario no exceda un determinado tiempo m 痊 imo
( tiempo de ciclo m 痊 imo). A esta funci se la suele deno minar Watchdog (perro
guardi 疣).
Tambi 駭 se encarga de ejecutar el programa de usuario, crear una imagen de las
entradas, ya que el programa de usuario no debe acceder directamente a dichas
entradas.
Otra funci es la de renovar el estado de las salidas en funci de la imagen de las
mismas obtenida al final del ciclo de ejecuci del programa de usuario.
Por 伃 timo, tambi 駭 se encarga de realizar el chequeo del sistema. Para ello el PLC
posee un ciclo de trabajo, que ejecutar�de forma continua el diagrama de flujo
mostrado en la figura 2.
- Digital.
- Analica.
Las E/S digitales se basan en el principio de todo o nada, es decir o no conducen sel
alguna o poseen un nivel m 匤 i mo de tensi. Estas E/S se manejan nivel de bit dentro
del programa de usuario.
Las E/S analicas pueden poseer cualquier valor dentro de un rango determinado
especificado por el fabricante. Se basan en conversores A/D y D/A aislados de la CPU
(ticamente o por etapa de potencia). Estas seles se manejan a nivel de byte o
palabra (8/16 bits) dentro del programa de usuario.
Las E/S son le 冝 as y escritas dependiendo del modelo y del fabricante, es decir pueden
estar incluidas sus im 疊 enes dentro del 疵 ea de memoria o ser manejadas a trav 駸 de
instrucciones especificas de E/S.
Interfases.
Todo PLC, salvo casos excepcionales, posee la virtud de poder comunicarse con otros
dispositivos (como un PC).
Lo normal es que posea una interfase serie del tipo RS-232 / RS-422.
A trav 駸 de esta l 匤 ea se pueden manejar todas las caracter 﨎 ticas internas del
controlador, incluida la programaci del mismo, y suele emplearse para
monitorizaci del proceso en otro lugar separado.
Unidades de Programaci.
La programaci del PLC puede ser hecha por una unidad de programaci que suele
ser en forma de calculadora. Es la forma m 疽 simple de programar el equipo, y se suele
reservar para peques modificaciones del programa o la lectura de datos en el lugar de
colocaci del equipo.
Tambi 駭 se puede usar una consola de programaci. Es un terminal a modo de
ordenador que proporciona una forma m 疽 coda de realizar el programa de usuario y
observar par 疥 etros internos del PLC. Desfasado actualmente.
El modo m 疽 empleado para programar un Plc es mediante una computadora tipo PC.
Permite programar desde un ordenador personal est 疣 dar, con todo lo que ello supone:
塗 erramientas m 疽 potentes, posibilidad de almacenamiento en soporte magn 騁 ico,
impresi, transferencia de datos, monitorizaci mediante software SCADA,
SUCOSOFT, etc�
Para cada caso el fabricante proporciona lo necesario, bien el equipo o el
software/cables adecuados. Cada equipo, dependiendo del modelo y fabricante, puede
poseer una conexi a uno o varios de los elementos anteriores. En el caso de los
micro-plc se escoge la programaci por PC o por unidad de programaci integrada en
la propia CPU.
La entrada digital I 1.0 puede emplearse para una reacci r 疳 ida del autata,
independiente del tiempo del ciclo, ante cualquier posible incidencia. La
programaci como entrada r 疳 ida se realiza en combanaci con el mulo de
funci�FALARMO� Puede utilizarse tamto el impulsor de flanco ascendente
como el descendente.
Los diodos luminosos (LED) se encargan de indicar los estdos f 﨎 icos de las
entradas.
Salidas digitales:
El PS4-141-MM1 dispone de 14 salidas digitales de 24 V/0,5 A. Las entrdasa
est 疣 aisladas galv 疣 icamente y protegidas contra cortocircuito y sobrecarga.
Pueden conectarse en paralelo hasta cuatro salidas.
Entradas/salidas analicas:
El autata disponen de dos entradas analicas y una salida analica. El
margen desel oscila entre 0 y 10 V. La resoluci de las entrdas es de 10
bits( 1.024 incrementos); la de la salida analica es de 12 bits(4.096 incrementos)
Los diodos luminosos (LED) indican los estados licos de las salidas
(9) Interface de Suconet K:
A trav 駸 del inerface RS 485 se conectan entre los participantes del Suconet ( por
ejemplo, con el mulo de ampliaci EM 4..). Socunet K es el bus distribuido
est 疣 dar abierto de Klockner – Moeller. Como alternativa, pueden intercambiarse a
trav 駸 de este interface datos de forma transparente con perifericos asociados v 僘
RS 232 o RS 485. La comunicaci recibe el apoyo de un mulo funcional de
programaci.
1. Preparado (Ready):
No se ejecuta el programa de usuario.
2. Funcionando (Run):
Se ejecuta el programa de usuario.
3. No preparado ( Not Ready):
No hay programa en el autata o bien hay un error en el programa
de usuario ( por ejemplo, excedido el tiempo de ciclo)
4. Bater 僘 ( Battery):
No hay bater 僘 o bien la bateri� no suministtra sufuciente tensi.
Posee una extensa libreria con muchos bloques de funci que reduce el tiempo
requerido de programaci. Una nueva caracteristica de la versi 4.0 es que es posible
la creaci de las librerias definidas por el usuario e incorporaci de otras. Moeller
tambi 駭 tiene una gama amplia de librerias para el control de ciclos cerrados y
aplicaciones de HVAC ( Aire acondicionado).
El uso de 駸 tos bloques de funci ya probados reduce el tiempo requerido por crear
una aplicaci complejas. La red de programaci, facilita la habilitaci de todos los
controladores de un sistema descentralizado al programar y diagnosticar desde un punto
central. Sucosoft S40 es la herramienta de programaci central para PS4-
141/151/201/271/341 y PS416. Puede correrse en Windows 95/98 y Windows NT 4.0,
y se puede selecionar entre cinco idiomas (alem�n, ingl 駸, franc 駸, espa l, italiano).
6.2. Estructura de programaci:
La estructura del software 鉄 ucosoftS4�de la empresa Klockner Moeller opera de
la misma forma que la mayoria de los software administrador por Windows.
6.2.1. Proyecto :
En este menu se puede crear un nuevo archivo, abrir o borrar algun archivo
ya existente. Permite guardar los cambios realizados a proyectos existentes,
entre otras tareas.
6.2.2. Editar:
En el menu editar, es posible crear o renombrar los archivos ya existentes,
as� como permite ver informaci y propiedades del archivo.
6.2.3. Visualizaci:
El menu visualizaci muestra y permite controlar las barras de simbolos ,
herraminetas y l 匤 ea de estado.
6.2.4. Generaci:
El tiempo de ciclo para la ejecuci del programa se puede seleccionar entre 1ms
hasta 255ms. El standard es 60ms. Cuando el tiempo de ciclo del programa es m 疽
grande como el tiempo elegido, la CPU se cambia autom 疸 icamente al estado 哲 OT
READY�
En el submen�敵 ama de Marcas�se selecciona para los marcadores los campos
activos en la memoria de datos. El campo activo es elegible entre 0 hasta 16383
byte. Inicialmente todos los campos est 疣 desactivados.
- Editor POU:
El editor POU se compone del editor para la declaraci de las variables y el editor
para la programaci. Este puede contener programa, bloque funcional, funciones
y variables.
El editor para la declaraci ofrece la posibilidad de declarar las variables con una
gu 僘 de usuario o en forma libre para programadores experimentados.
El editor para la programaci ofrece las posibilidades de programar en:
-La lista de instrucci
-El esquema de contacto
-El plano de funci
Adem 疽 obtiene el editor-POU un control de la sintaxis autom 疸 ico de la
programaci y el submen�para imprimir la documentaci del programa.
- Editor de Formulario:
Aqu�se puede elegir el formato del formulario para la documentaci del programa.
Tambi 駭 es posible de desarrollar su propio formato seg 佖 de sus necesidades.
- Configurador de Topolog 僘:Aqu�se configura la estructura del hardware del sistema de automatizaci. Se
elijen los parametros de los mulos del PLC y otros equipos como variadores de
frecuencia y paneles de operador que trabajar 疣 en la aplicaci. Hay un men�para
indicar el grado de utilizaci de las entradas y salidas de la configuraci. Adem 疽
se calcula el tiempo del ciclo para todos los participantes del bus de campo.
6.2.6. Extras:
En este submenu es posible encontrar una bibioteca, as� como la indicaci
del idioma, herramientas y opciones utilizado por el software.
Para crear un nuevo proyecto se debe crear una nueva carpeta con el nombre
del proyecto en la cual se almacenar 疣 los archivo gererados por el software. Es
preciso indicar la ubicaci en la CPU de la carpeta del nuevo proyecto. Al hacer
clik en OK, el software genera automaticamente una carpeta llamada �SOURCE�
en la cual se ubicar 疣 los archivos compilados.
6.3.2. Configuraci del Hardware:
- Tipo:
Se diferencian entre dos distintos tipos de datos para las variables:
El tipo de dato elemental es predefinido y marcado con una palabra clave (Tabla 1).
El tipo de dato deducido con cual se puede crear su propio tipo de dato.
En el editor de modo libre se declara este tipo de dato con las palabras clave
TYPE....END_TYPE.
- Valor:
La asignaci de un valor inicial a una variable p.e. del tipo INT.
En el editor de modo libre se asigna el valor inicial con el s 匇 bolo �=� Sin este
asignaci el valor inicial es ��
- Atributos:
La variable puede obtener el atributo 迭 ETAIN�o 鼎 ONSTANT� Una variable
con el atributo RETAIN se queda con su valor despu 駸 de un arranque en caliente.
Con el atributo CONSTANT la variable no puede cambiar su valor.
- Direcci:
Es la direcci de una variable f 﨎 ica como una entrada o salida del PLC. Por
ejemplo I0.0.0.0.1 o Q0.0.0.0.3
- Comentario:
Puede indicarse la descripci de la funci de la variable.
Adem 疽 se puede elegir entre la variable de tipo, local y global. La variable local
solamente tiene validez en la POU correspondiente. La variable global tiene validez
ta mbi 駭 en todos los bloques funcionales que est 疣 llamados en la POU
correspondiente.
Despu 駸 de la declaraci de las variables se comienza con la programaci.
En la ventana 摘 ditor LI�se programa con el m 騁 odo de la lista de instrucci. En
el submen�摘 xtras�se puede cambiar a los otros lenguajes de programaci.
Con el submen�鄭 rchivo�y 敵 uardar como�hay que grabar el programa. El
nombre de fichero puede tener hasta 8 signos. El programa siempre tiene que estar
grabado en el subdirectorio 都 ource.sys�del proyecto elegido.
Despu 駸 de la grabaci del programa se activa con 撤 rueba de Sintaxis�ubicado
en el menu �Archivo� Si hay errores aparece una ventana con una lista de las
fallas.
- Con el bot�n 敵 eneraci �en el men�principal se abre una ventana donde hay
que elegir en el submen� la opci 鄭 rchivo MAKE nuevo� Se habre una
nueva ventana donde se puede seleccionar el programa del tipo POU y el
fichero de configuraci. Cuando se ejecut� la 鏑 ista de Generaci�sin
errores, aparece un mensaje 鄭 rchivo Make creado con 騙 ito�
Con la opci 天 er estados�se camb ia al modo 徹 n-line� Este modo permite ver
los cambios de los estados de las entradas, marcadores, salidas y bloques
funcionales durante de la ejecuci del programa. As�se puede verificar si el
programa funciona en la forma planificada. Con la opci 溺 odificar�se realiza
cambios en el programa.
Cuando ocurren errores durante la ejecuci del programa, los submen 俍 摘 stado
CPU�y 泥 iagnostico programa�pueden entregar informaciones sobre el tipo de
error.
6.4. Lenguaje de Programaci:
1. AND (Y)
La figura muestra una bobina que no se energiza a menos que dos interruptores, en
general abiertos, se cierren. Si los interruptores A y B est 疣 cerrados, se obtiene la
funci lica AND(Y). El diagrama de escalera empieza en A, la segunda entrada
representa al interruptor B. La l 匤 ea termina en ( ) y representa a la salida.
2. OR (O)
La figura ilustra una bobina que no se energiza hasta que uno de los interruptores A
o B, en general abiertos, se cierra, situaci que corresponde a una compuerta lica
OR(O). El diagrama de escalera empieza en el A o B. La l 匤 ea termina en ( ), que
representa a la salida.
3. ORN (O - NO)
La figura muestra co representar el diagrama del programa de escalera para una
compuerta ORN (O-NO). Dado que debe haber una salida cuando ni A ni B tengan
entrada, entonces cuando existe entrada en A o en B no hay salida, el programa
escalera muestra la entrada A en paralelo con la entrada B, ambas representadas por
contactos en general cerrados ( permantemente cerrado).
4. ANDN (Y – NO)
La figura muestra una compuerta ANDN (Y- NO ). No hay salida cuando tanto A
como B tienen una entrada. El diagrama del programa de escalera indica que para
que haya salida, ni la entrada A ni la entrada B deben estar activadas.
5. XOR (O EXCLUYENTE)
Dentro de una secuencia hay que usar siempre el mismo formato(Bit, Byte, Word)
de los operandos. No es posible p.e. de conjugar la entrada I0.0 con un marcador del
formato byte o word. La operaci tiene que tener tambi 駭 el formato adecuado al
operando. La operaci 鉄 et�p.e. se puede utilizar solamente con oper 疣 dores del
formato bit. Utilizando un mando negado, el estado del operando o el estado del
registro de trabajo se act 俉 en forma negada.
6.4.2. El Esquema de Contacto.
Con estos elementos se pueden realizar en forma gr 畴 ica las distintas vinculaciones
licas con AND y OR.
Adem 疽 se pueden elegir las otras funciones y bloques funcionales al hacer clik en
el segundo boton del rat, se desplega una ventana donde se puede insertar la
variables y los operadores.
?? Para adir otros contactos en una vinculaci de AND o ANDN se marca con
el rat el lugar donde se insertar�la variable y se presiona el boton derecho
del rat, se desplegar�un submenu desde donde se selecciona
登 peradores� Luego aparece una ventana de 登 peradores� tal como muestra
la figura siguiente, en dicha ventana se seleciona el operador lico
鄭 ND�y luego se presiona 鍍 ransferir�
El resultado de esta operaci se visualiza en la figura.
?? Para
variable y continuar dirque
al aigual unacon
vinculaci de
la viculaci OR o pero
AND, ORN esta
hay que
vez marcar el lugar de la
seleccionar el operador lico OR o ORN.
Timing FBs
17 MS_TimeFalling Off-delay timer, milliseconds
18 MS_TimeRising On-delay timer, milliseconds
19 S_TimeFalling Off-delay timer, seconds
20 S_TimeRising On-delay timer, seconds
21 TimeGenerator Clock generator
22 TimePulse Pulse generator
23 TOF Off delay
24 TON On delay
25 TP Pulse
Counter and comparison
26 _16BitCounter FBs
16-bit up/down counter
27 _32BitCounter 32-bit up/down counter (only PS416, PS4-300)
28 CounterLE Control of the Counter LE module (only PS4-200,
PS4-300)
29 CTD Down counter
30 CTU Up counter
31 CTUD Up and down counter
32 _16Bit_Compare 16-bit comparator
33 _32Bit_Compare 32-bit comparator (only PS416, PS4-300)
34 SSI-Encoder Absolute value encoder (only PS4-300)
35 IncEncoder Incremental encoder (only PS4-300)
Register
36 SR_xoperations 1-bit shift register
37 SRB_x 8-bit shift register
38 SRW_x 16-bit shift register
39 LifoBx 8-bit LIFO register
40 LifoWx 16-bit LIFO register
41 FifoBx 8-bit FIFO register
42 FifoWx 16-bit FIFO register
Code converters
43 _16BitBinaryToBCD 16-bit binary/decimal code converter
44 _32BitBinaryToBCD 32-bit binary/decimal code converter (only PS416,
PS4-300)
45 BCDTo16BitBinary 16-bit decimal/binary code converter
46 BCDTo32BitBinary 32-bit decimal/binary code converter (only PS416,
PS4-300)
Array operations Data block comparison or value search
47 CompareArray
48 TransferArray Copy or initialise array
49 Serialize Copy data structure to array
50 Deserialize Extract data from array
51 BlockCompare Data block comparison or value search (only PS4-
200, PS4-300)
52 BlockTransfer Copy or initialise data block (only PS4-200, PS4-300)
Sequence control
53 SFC_x Sequence control function block (only PS4-200, PS4-
300)
String processing
54 COMtoSTR Convert received characters to STRING
55 STRtoCOM Copy string to marker area
56 ADRtoSTR Convert received characters to STRING (only PS4-
200, PS4-300)
57 STRtoADR Copy string to marker area (only PS4-200, PS4-300)
Communication
58 SCO Serial communication function block (only PS4)
59 COM Serial communication function block (only PS416)
60 DialOrHangup Establish or clear a connection to a DTE via modem
(only PS416, PS4-300)
61 SendATCommand Send AT command to a modem (only PS416, PS4-
300)
62 SUCOM_A Protocol emulation for direct memory access (only
PS416)
63 MOD200 Serial communication via MODBUS /IBUS (only
PS416)
64 ASi_PARAM Change slave parameters during operation:
ASi_PARAM (only PS4-200, PS4-300)
65 PSCO Profibus-FMS communication (o nly PS4-200, PS4-
300)
66 SuconetP PROFIBUS-FMS communication (only PS416)
67 SuconetS_BGKS InterBus communication (only PS416)
68 PdpStationDiag Request diagnostics data from PROFIBUS -DP station
(only PS416)
69 PdpFreezeSync PROFIBUS-DP control commands (PS416, PS 4-
300)
70 DE4netDP Frequency inverter DF 4 (PS416, PS 4-300)
71 DE4netK Frequency inverters DF4
72 MI4netK Communication function block MI4
73 MI4K Communication function block MI4 (only PS4-200,
PS4-300)
Reading and writing the memory card
74 ReadMC Read data from memory card
75 WriteMC Save data on memory card
76 SetMCFileLength Create and initialise data file (only PS416)
77 ReloadData Read data from memory card (only PS4-200, PS4-
300)
78 SaveData Save data on memory card (only PS4-200, PS4-300)
79 CounterAlarm Alarm
Counter FBs
alarm (not for PS 4-271)
81 EdgeAlarm Edge alarm (not for PS 4-271)
81 TimerAlarm Timer alarm
Descripci
Con un flanco positivo en la entrada 鉄 et�el bloque funcional TimeGenerator toma
a su cargo el factor del tiempo de perio T de la entrada 撤 eriod� La salida
撤 ulseOutput�entrega un impulso con una proporci de ciclo/pausa de 1:1.
Con un flanco negativo a la entrada 鉄 et�se desacciona la salida 撤 ulseOutput�
El tiempo de perio tiene que ser mayor que el tiempo del ciclo del PLC.
Un cambio del valor a la entrada 撤 eriod� se registra solamente con un cambio del
flanco (positivo a negativo y nuevamente positivo) en la entrada 鉄 et�
Ejemplo:
VAR
TG : TimeGenerator;
S1 I0.0.0.0.6 : BOOL;
Periodo: UINT := 320;
K1 Q0.0.0.0.2: BOOL;
END_VAR
PROGRAM
IN Condici de inicio
PT Valor de tiempo predefinido
Q Estado binario del temporizador
ET Valor actual de tiempo
Descripci
Con un flanco de impulso positivo en la entrada 的 N� el temporizador toma a su
cargo el factor del tiempo de retraso que se ubica en la entrada 撤 T�y la salida 轍�
se acciona. Con un flanco de impulso negativo en la entrada 的 N�la salida 轍�se
desacciona con el factor del tiempo de retraso predefinido en la entrada 撤 T�
A la salida 摘 T�se puede registrar el tiempo transcurrido.
El tiempo de retraso elegido tiene que ser mayor que el tiempo de ciclo del PLC.
Ejemplo:
PROGRAM
VAR
Timer : TOF;
S1 I0.0.0.0.1 : BOOL;
TimeDuration : TIME := 125;
K1 Q0.0.0.0.2 : BOOL;
ActualTime : TIME;
END_VAR
END_PROGRAM
6.4.3.4.Bloque funcional TON (Temporizador con retraso en la partida)
IN Condici de inicio
PT Valor de tiempo predefinido
Q Estado binario del temporizador
ET Valor actual de tiempo
Descripci:
Con un flanco de impulso positivo en la entrada 的 N� el temporizador toma a su
cargo el factor del tiempo de retraso que se ubica en la entrada 撤 T� La salida 轍�
se acciona con retraso seg 佖 del factor del tiempo de retraso a la entrada 撤 T�
Con un flanco de impulso negativo en la entrada 的 N� la salida 轍�desacciona
tambi 駭.
A la salida 摘 T�se puede registrar el tiempo transcurrido. El tiempo de retraso
elegido tiene que ser mayor que el tiempo de ciclo del PLC.
Ejemplo:
PROGRAM
VAR
Timer2 : TON;
Start I0.0.0.2.5 : BOOL;
TimeDuration : TIME := 12;
Output Q0.0.0.1.4 : BOOL;
ActualTime : TIME;
END_VAR
7. Ejemplos
CAL Timer2(IN := Start, PT :=(vistas en de
TimeDuration) Aplicaciones:
clases)
LD Timer2.Q
ST Output
LD Timer2.ET 8. Bibliografia:
ST ActualTime
?? Ficha T 馗 nica: Automatas Compactos PS4-141-MM1/ PS4-151-MM1.
END_PROGRAM Klockner Moeller. 1997.
?? PLC, Los Controladores Licos Programables: Horacio D. Vallejo:
http//www.editorialquark.com.ar
6.5. Retenci ( condiciL
?? Programaci de Controladores set - reset).
icos seg 佖 la Norma Internacional IEC
1131: Ricarda Brockmeyer. 1998.
Con
?? frecuencia
Ayuda se presentan
en Software situaciones
Sucosoft S40. en las que es necesario mantener
energizada una bobina, aun cuando ya no exista la entrada que proporciona la
energ 僘. Para lograr lo anterior se utiliza lo que se conoce como circuito de
retenci. Este es un circuito de autosostenimiento, ya que despu 駸 de ser
energizado mantiene ese estado hasta que recibe otra entrada. Es decir, recuerda su
伃 timo estado.