Académique Documents
Professionnel Documents
Culture Documents
1. TEMPORIZADORESYCONTADORESEN
STEP7
1.1. TEMPORIZADORES
Un temporizador es un dispositivo capaz de permanecer en un estado
transcurrido un tiempo desde que se produce un evento. El tiempo y el evento son
parmetrosconfigurabledeltemporizador.
EnunPLC,latemporizadoresformanpartedelamemoriaRAMdesistemade
la CPU (ver arquitectura). El contenido de estas "celdas de tiempo" se actualiza
automticamente por el sistema operativo de forma asncrona y concurrente con la
ejecucin del programa de usuario. En los autmatas Siemens, el lenguaje STEP7
permite configurar una funcin temporizador que rige el comportamiento de cada
celda asignando valores a sus parmetros. En cuanto al nmero de celdas, el
ensamblador de STEP7 permite direccionar 256 temporizadores como mximo. El
nmerorealadisposicindelprogramadordependerdelmodelodeCPU.
Enlenguajedecontactos,STEP7haprevistoelinterfazdelafigura11(bloque
funcin) para poder configurar el comportamiento de cada temporizador. El bloque
constadetresentradas(izquierda)ytressalidas(derecha)conelsiguientesignificado:
Tiempo a contar: Tiempo inicial que se carga en el registro (RAM) del
temporizador.LanormalodenominaconlassiglasPT(delinglsPresetTime).
Sealdedisparo:Eventoqueactivaeltemporizadoriniciandounacuentaatrs.
El tringuloen laconexin con el bloque de lafigura 11 indica que seactiva
porflanco(cambiodeestado),nopornivel.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 2
T<N>: Nombre de la variable temporizador (T1, T2, T3, etc.). Usada como
operandoenAWLidentificasureadememoria.
Reset:EventoqueponeacerolasalidalgicaQdeltemporizador
Salida lgica: Valor lgico del temporizador (su estado) determinado por el
SistemaOperativoencadainstante.
Salida analgica: Valor del tiempo que falta para finalizar la cuenta atrs (en
binario).
Salida analgica (BCD): Idem que el anterior pero en formato BCD (Binary
CodedDecimal),dondecadanmerodecimalocupaunbyte.
FiguraXXX
Figura11.BloquetemporizadordellenguajeKOPdeSTEP7.Elsmbolotriangularenla
entradaSindicaquefuncionaporflanco
LasentradasS,RylasalidaQsonbooleanas.Elrestodeparmetrossontodos
tamaoWORD(16bits),elmismotamaodelregistrotemporizadoridentificadopor
sunombre(T<N>).ElformatodeltiempoacontaresdetipoS5TIME,untipoquelleva
elnombredelaversinanteriordellenguajeSTEP5,porquesecreaparamantenerla
compatibilidad.UnaconstanteS5TIMEenAWLseescribe:
S5T#aHbbMccSdddMS
donde las unidades son a: Horas, b: Minutos, c: Segundos y d: Milisegundos y el
smboloS5T#indicaformatoS5TIME(elsmbolo#enunaconstantenumricaindica
findeespecificacindeformato).PorejemploS5T#2S100MSson2,1s.
El formato S5TIME almacena el tiempo en BCD, ocupando los tres primeros
bytes del registro del temporizador. El cuarto byte dedica los dos primeros bits a
codificarlaBasedeTiempos,quedefineelintervalodetiempoenquesedecrementa
en una unidad el valor de temporizacin. La arquitectura del PLC maneja 4 bases de
tiemponumeradasde0a3:10ms,100ms,1s,10sycomponeelvalorcargadoapartir
destastalque,amenorbase,mayorprecisin.EnSTEP5eranecesarioespecificarla
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 3
base de tiempos, pero en STEP7 se ajusta automticamente, lo que supone una
comodidad.Deloanteriorsededuceque:
Elmximotiempoquepuedealmacenarelregistrodetemporizacines999,quepara
labasedetiemposmayorsuponeunintervalomximode9990s(2h46my30s)
Para medir intervalos de tiempo superiores es necesario combinar adecuadamente
variostemporizadores.
FUNCIONAMIENTO. Una vez que se han definido adecuadamente los parmetros, el
temporizadorcargaelvalordetiempoenelregistroyquedaalaesperadelcambiode
estado de la seal de disparo. Tras el disparo, comienza una cuenta atrs (asncrona
conelprogramaenejecucin)hastaqueelvalordetiempollegaaceroactualizndose
entonceselvalordelasalidalgicaQ.
1.2. TIPOSGENERALESDETEMPORIZADORES
La norma IEC 611313 define explcitamente 3 tipos de temporizadores que
debensersoportadosporcualquierlenguajedeprogramacinparaPLC:
Temporizadordepulso(TP):SeactivalasalidalgicaQtrasunflancodesubida
delasealdedisparo.SedesactivaaltranscurrirPT.
Temporizador de retardo a la conexin (TON): Se activa Q despus de
transcurrirPTtrasproducirseunflancodesubidadelasealdisparo.
Temporizador de retardo a la desconexin (TOFF): Se desactiva Q cuando
transcurrePTtrasproducirseunflancodebajadadelasealdedisparo.
Intuitivamente el temporizador TP sigue al disparo y cae tras el paso del
tiempo.Encambio,eltemporizadorTONtardauntiempoenseguiralasealunavez
conectada(deahelnombre).Finalmente,elTOFFseactivatrasconectarselasealy
tras su desconexin, Qtarda un tiempo en caer. La figura12 muestra un bloquede
temporizacindepulsodescritoenlanorma.LasealINeslasealdedisparo,laseal
PT (Preset Time) es el valor de carga, Q es la salida lgica y ET (Elapsed Time) es el
tiempotranscurridodesdelapuestaenmarcha(convalormximoPT).Observequela
norma solo indica los elementos fundamentales. La implementacin que ofrece
SIEMENSencontactos(figura11)tienemsparmetros.
Figura12.BloquetemporizadorTPprevistoenlanormaIEC611313
Adems de estas tres tipologas bien definidas, existen dos propiedades muy
importantes para caracterizar el comportamiento del temporizador: la memoria y la
redisparabilidad(eninglsretriggerability).
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 4
Memoria: Describe el comportamiento de un temporizador activo con la
llegadadelprimerflancoopuestoaldeactivacindelasealdedisparo(sise
disparaconelflancodesubida,lamemoriahacereferenciaalcomportamiento
anteelprimerflancodebajadaposterioryviceversa).
Sedicequeuntemporizadortienememoriacuandotrassupuestaenmarcha,contina
conlatemporizacinantelallegadadelprimerflancoopuestoaldedisparo.
Es decir, el temporizador se acuerda de lo que estaba haciendo antes del
eventoycontinaconello.Sinotienememoria,paralacuentaysedesactiva(Q=0).
Redisparabilidad:Describeelcomportamientodeuntemporizadoractivocon
la llegada del primer flanco de disparo posterior al de activacin. Esta
propiedadslodescribealostemporizadoresconmemoriayaquelosqueno
tienenmemoriavenalredisparocomoundisparoconvencional.
Sedicequeuntemporizadoresredisparablecuando,trassupuestaenmarcha,reinicia
lacuentaatrsconelsiguientedisparo.
1.3. TIPOSDETEMPORIZADORESENSTEP7
STEP7 realiza la especificacin ofreciendo 5 temporizadores distintos que se
describenenlatabla11:
Tabla11.TemporizadoresenSTEP7
SI TP SIMPULS
SV x x TP SVIMP
SE TON SEVERZ
SS x x TON SSEVERZ
SA x x TOFF SAVERZ
La columna de la izquierda es el nemnico del operador AWL para cada
temporizador.Seempleacomooperadorenunainstruccindeltipo:
S<LETRA>T<N>
ytienedosargumentosimplcitos,lasealdedisparoyelvalordetiempodecarga,
que los obtiene de los registros de la ALU: la seal del biestable RLO y el tiempo de
carga de un registro denominado Acumulador de 32 bits que se emplea para
manipulartamaosdedatossuperioresalbit.Examinaremosendetalleestoregistros
en secciones posteriores. Por ahora basta saber que para almacenar un dato en el
Acumuladorlainstruccinenensambladores:
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 5
L<DATO>
yparaextraerundatodelAcumuladorlainstruccines:
T<DATO>
Dicho esto, ya es posible programar un temporizador bsico en AWL de
cualquieradelos5tipos.Comoejemploelcdigosiguienteconfigurauntemporizador
depulsosinmemoriaSIenelreadememoriaT1yconuntiempoestablecidode10s
y2ms.
//Configuracin del TEMPORIZADOR T1 de tipo SE en AWL
U Reset
R T1 //Entrada reset (por nivel)
U T1
= A 124.0 //Asigna a A124.0 la salida lgica Q
L T1
T MW10 //Asigna la salida DUAL a MW10
LC T1
T MW12 //Asigna la salida DEZ a MW12
1.3.1 TemporizadordepulsoSI
Lafigura13muestraelcomportamientodeltemporizadorSI.Eltemporizador
sigue a la entrada tras ser disparado y se desconecta cuando pasa el tiempo. Al no
tenermemoria,sedesactivasilasealdedisparocae.Lagrficatambinmuestrala
variacin de la salida DUAL correspondiente a la cuenta atrs desde que se puso en
marcha.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 6
Figura13.TemporizadordepulsoSI.
Ejercicio11.Programacindeunasealrectangularcontiemposde5sy10sparalos
nivelesbajoyaltorespectivamente
UN M1.0
L S5T#5s
SI T1 //TP1
UN T1
L S5T#10s
SI T2 //TP2
U T2
= M1.0
Figura14.Implementacindeunasealrectangular
Elprimertemporizadorsedisparaenelinicioyllevalacuentadeladuracin
delnivelbajodelaseal.Ladesactivacindesusalidasirvecomosealdemandoy
disparaeltemporizadorT2quemideeltiempodelnivelaltodelaseal.Mientraslos
temporizadoresestnenmarcha,elvalordeM1.0alfinaldelciclosecorrespondecon
laespecificacindelasalida.Porltimo,lostemporizadoresenmarchasiempretienen
lasealdedisparoanivelaltoporloquenonecesitanmemoria.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 7
1.3.2 TemporizadordepulsoprolongadoSV
La figura 15 muestra el comportamiento del temporizador de impulso
prolongado. Se comporta de manera similar al de pulso normal (SI) en la puesta en
marcha,perotienememorialuegocontinafuncionandoantelacadadelasealde
disparo.Finalmente,alserredisparablereinicialacuentaatrsanteunnuevoevento
disparo.Seindicaenlafiguraeleventoquereflejaambaspropiedades.
Figura15.TemporizadordepulsoprolongadoSV.
1.3.3 TemporizadorderetardoalaconexinSE
La figura 16 describe el comportamiento del TON sin memoria que ofrece
STEP7. Con la puesta en marcha el temporizador empieza la cuenta atrs pero no
sigue a la seal de disparo hasta que termina la cuenta. Como no tiene memoria el
temporizadorsedesactivaconelflancodebajadadelasealdedisparo.Activadala
salida lgica, el temporizador se mantiene en este estado hasta que cae la seal de
activacin.ElfuncionamientodelaentradaResetesanlogoaloscasosanteriorespor
loquesehaomitido.
Figura16.TemporizadorretardoalaconexinsinmemoriaSE.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 8
Ejercicio12.GeneraruntrendepulsoscadaXsegundos
Un tren de pulsos es una seal muy til como elemento de control interno pues se
puedenusarlospulsospararealizaraccionesendgenas(porejemploincrementarun
contador)oconstruirsealesperidicascuadradas.Sepuedeimplementarfcilmente
conuntemporizadorSEdelasiguientemanera:
//TREN DE PULSOS cada 5s en la marca M 1.0
UN M1.0
L S5T#5S
SE T1 //Configura el temporizador
U T1
= M1.0 //M1.0 = NOT(Q)
quesecorrespondeconelsiguientebloquenormalizado:
Figura17.Implementacindeuntrendepulsos
Merecelapenadetenerseunpocoenestecircuito.Enelinicio,lasealdisparo
M1.0 est desactivada y, por tanto, se pone en marcha T1. Al ser de tipo TON, su
estadonocambia(Q=0),lasealdedisparotampoco(IN=NOT(Q)=1)perocomienzala
cuenta atrs de los 5s. La situacin se mantiene estale hasta que T1 se desconecta
(Q=0) al finalizar la cuenta atrs, lo que provoca inmediatamente un nuevo disparo
(IN=NOT(Q)=1)ycomienzaunnuevociclo.LasealM1.0solamentetomaelvalor1en
elcicloscandeladesconexindeltemporizadorydura,comomximo,eltiempode
eseciclo.
Ejercicio13.GenerarunasealcuadradadeperiodoX
Como la seal es cuadrada solo existe un nico tiempo a medir y es posible realizar
una implementacin sucinta con un solo temporizador. La forma ms sencilla y
eleganteesempleareltrendepulsosdelejercicioanteriorparacambiarelestadode
unavariablebooleana.LaimplementacinenAWLrequiereunainstruccindeltipo:
IFFlancodesubidadeltrendepulsosTHENcambiaelestadodelavariable
ParaellosenecesitaenAWLalgunainstruccindesaltodentrodeunmismobloque
decdigo.LasmsempleadassonlosoperandosSPBySPBN:
SPB <Etiqueta>: El flujo de ejecucin salta a la instruccin que contiene la
etiqueta operando (y continua a partir de ah) siempre que RLO=1 en el
momentodelainterpretacin.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 9
SPBN <Etiqueta>: El flujo de ejecucin salta a la instruccin que contiene la
etiqueta operando (y continua a partir de ah) siempre que RLO=0 en el
momentodelainterpretacin.
Elcdigosolucinesunalgoritmoconstructivoquecomponelosnivelesaltoybajode
laseal,cadaunocontiempoT/2:
//Seal cuadrada en A 1.0 de periodo 10s
UN M1.0
L S5T#5S //Valor de carga la mitad del periodo
SE T1 //Configura el temporizador
U T1
= M1.0 //Tren de pulsos
U M1.0
FP M100.0 //RLO=1 si flanco de subida de un pulso
UN A1.0
= A1.0 //Cambio de estado de A1.0
Ejercicio14.Midaunacantidaddetiempode1000s
U E1.0
L S5T#9990s
SE T1 //Configura el primer temporizador con el tiempo max.
U T1
L S5T#10s //Carga el tiempo que falta hasta los 1000s
SE T2 //Dispara el temporizador con Q(T1)=0
U T2
= M1.0 //M1.0NOT(Q(T2))
SeeligenlosdostemporizadoresSEqueseconectanpasadoeltiempoconloquela
salidadecadatemporizadoresunasealdemando.Lasalidadelprimerodisparaal
segundo temporizador y la salida de este ltimo marca el evento deseado. Observe
quesieleventoE1.0cambiaradevalorlacuentaseparara.Si,apesardetodo, se
desea medir el intervalo de tiempo desde su activacin sera necesario emplear un
temporizadorTONconmemoria(SS).
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 10
Se recomienda al lector que trate de implementar este ejercicio usando
temporizadoresdepulsosinmemoria.
1.3.4 TemporizadorderetardoaladesconexinSS
Este temporizador es la versin con memoria del TON anterior. La figura 18
describe su comportamiento. Los cronogramas reflejan el comportamiento esperado
habidacuentadequeestetemporizadortienememoriayesredisparable.Comonota
destacablehayquetenerencuentaqueestetemporizador,unavezactivadasusalida
lgica, requiere un evento Reset (por nivel, como siempre) para que la salida se
desactive.EstandoanivelaltoQ,noatiendeaeventosdedisparo.
Estacaractersticanoescompartidaporningunodelosotrostemporizadores,
y hay que tenerla muy presente. Se resume en que, una vez necesita un reinicio
explcitoparavolveraserutilizado.
Figura18.TemporizadorretardoalaconexinconmemoriaSS.
Ejercicio15.ProgramacindeunatransicinentredosetapasX2yX3condicionada
a que hayan transcurrido 3s desde la activacin de una etapa anterior X1 en otra
secuenciadelgrafcet.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 11
U X1
L S5T#3s
SS T1
//
U "X2"
U T1
S "X3"
R "X2"
FP M100.0
R T1
Figura19.SolucinalejercicioX.
Aqu,lareceptividadamodelarseproduceentreetapasdistintasaleventode
temporizacinporloqueeltemporizadortienequeseguirlacuentaatrsaunquela
seal de disparo (la etapa 1) se desactive, es decir tiene que tener memoria. Esto
justificalaeleccindeltemporizadorSS,elnicoTONconmemoriaenAWL.
Finalmente, es necesario activar la entrada Reset del temporizador para que
pueda ser reutilizado la siguiente vez que el grafcet active la etapa1. En la
implementacin se utiliza el propio franqueamiento de la transicin como eventode
inicio.Seusaelflancoyaqueloseventosdearranquesontodostransitoriosqueno
deben durar ms de un ciclo. Este detalle de implementacin se ha recogido en el
propiografcet.
1.3.5 TemporizadorderetardoaladesconexinSA
Este es el nico temporizador de tipo TOFF programable en STEP7, tiene
memoriayesredisparable.Lafigura110resumesucomportamiento.
Figura110.TemporizadorderetardoaladesconexinSA.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 12
Alserderetardoaladesconexin,estetemporizadoractivasusalidalgicacon
elnivelaltodelasealdedisparo.Estandoconectadoytrasrecibirunflancodebajada
porlaentradadedisparoseponeenmarchaynosedesconecta(Q=0)hastaqueha
pasadoeltiempoestablecido.Alponerseenmarchaconelflancodebajadadelaseal
dedisparo,lamemoriatienequeverconelflancodesubidasiguienteyelredisparo
conunnuevoflacodebajada.
Ejercicio16.Programeelcontroldeunaluminariaparaqueseencienda3sdespus
de la activacin de un interruptor y se apague 5 segundos despus de la
desactivacindelinterruptor.
U "Interruptor"
L S5T#5s
SE T1
U "Interruptor"
L S5T#10s
SA T2
O T1
O T2
= "Luz"
Figura111.Activacinydesactivacintemporizadadeunaluz
1.3.6 Accionestemporizadasenelgrafcet
LatraduccinaAWLdelasaccionesretardadasylimitadasdelaespecificacin
IEC611313semuestraenlafigura112.Enamboscasosseempleauntemporizador
sin memoria disparado por la etapa. En el caso de la accin retardada se emplea el
temporizador TON sin memoria (SE) y en el segundo caso el temporizador TP sin
memoria(SI).
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 13
U "X2"
L S5T#0.5S
SE T1
U "X2"
U "c"
S "Nuevaetapa"
R "X2"
U T1
= "LuzON"
Accinretardada Accinretardada
U "X4"
L S5T#3S
SI T1
U "X4"
U "c"
S "Nuevaetapa"
R "X4"
U T1
= "LuzOn"
Accinlimitada Accinlimitada
Figura112.ImplementacindeaccioneslimitadasyretardadasenAWL
1.3.7 Consideracionesgeneralesdeuso
A la hora de incorporar elementos de temporizacin en la programacin es
importanteesimportantetenerencuentalassiguientesconsideracionesprcticas:
A) No escatimar en el uso de diferentes temporizadores: Como regla general se
recomiendausaruntemporizadorporcadaeventodetiempo.Lareutilizacin
detemporizadoresendiferentespuntosdelcdigohacenelprogramamenos
legible y mucho ms difcil de mantener, adems de aumentar
exponencialmenteelriesgodeerror.Estoesextensibletambinalosbloques
decontaje.
B) Usar, cuando se posible, temporizadores sin memoria: Son ms fciles de
manteneryaque,normalmente,eleventoquelosponeenmarchatambinlos
desactiva.Lostemporizadoresconmemoriarequierenunpocomsdecuidado
y se recuerda que el temporizador SS necesita un Reset explcito para su
reutilizacin,unavezqueQ=1.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 14
C) Emplearsolucionesestndarcuandoseaposible.Porejemplo,elretardoenla
desactivacin de una etapa es un temporizador TON sin memoria que se
disparaconlapropiaetapa(verseccin1.3.3).
1.4. CONTADORES
Un bloque funcin contador es un dispositivo dedicado a incrementar y
decrementar en una unidad un registro de la memoria de sistema. En AWL, este
registrosedireccionamediantelasintaxis:
Z<N> con 0 N
En el contexto de autmatas programables, el rango de los contadores est
acotado a valores enteros positivos. En el caso del los contadores en STEP7 solo
puedenllegara999,porrazonessimilaresalasvistasenelcasodetemporizadores:el
registrotiene16bitsyelvalordelcontadorocupalos3primerosbytesytieneformato
BCD.
EllenguajedecontactosdeSTEP7 ofreceelinterfazgeneralqueapareeenla
figura113paradeterminarelcomportamientodeuntemporizador.Comosiempreel
tringuloenlaentradasignificaqueseactivaporflanco,nopornivel.
Figura113.BloquecontadorgeneralenlenguajeKOPdeSTEP7
LasentradasZV,ZR,ZWylassalidassondetamaoWORD(16bits);elrestode
parmetros son booleanos. La seal de carga permite almacenar el nmero en la
entradaZW(conformatoBCD)comovalorinicial.FlancosdesubidaenZVyZRsuman
o restan una unidad al contador entre 0 y 999. Un flanco simultneo de ambos no
alteraelvalordelcontador,comotampocoloalteraordenesdesumasorestasenlos
lmitesdelrango.
Lasalidalgicadelcontador(Q)eselvalorlgicodelcontador(0Falsoymayor
que 0 Verdadero). Las salidas DUAL y DEZ son anlogas al bloque de temporizacin,
valordelcontadorencadainstanteenbinariooenformatoBCD.Laactivacindela
entrada Reset pone el contador a cero y funciona por nivel a diferencia del resto de
entradas.
Es importante tener en cuenta que la carga de un valor inicial habilita las
entradasSumayRestaparaquefuncionencomosealdemandoencuantosedetecte
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 15
unnivelalto,independientementedesuvaloranterior.Elconceptodehabilitacinse
examinamsendetalleenlaseccin1.5.
ElcdigoenAWLquetraduceelbloqueKOPeselsiguiente:
//Configuracin del CONTADOR Z1 en AWL
U "Suma"
ZV Z1 //Configura la suma de una unidad
U "Resta"
ZR Z1 //Configura la resta de una unidad
U Reset
R Z1 //Configuira entrada de reset
U Z1
= A 124.0 //A124.0 Q
L Z1
T MW10 //Asigna la salida DUAL a MW10
LC Z1
T MW12 //Asigna la salida DEZ (BCD) a MW12
Lasintaxisesmuysimilaralcasodelosbloquesdetemporizacinynorequiere
excesiva explicacin. La vinculacin con las entradas lgicas se estable a travs del
valordelRLOenelmomentodelaejecucindelainstruccin.Laasignacindelvalor
delcontadorsehaceatravsdelasinstruccionesdecagaytransferenciayadescritas
(vercaptuloXXXparaunaexplicacinmsdetalladadeambosoperadores).
Para comprender bien la configuracin del boque contador es interesante
razonar acerca del resultado del siguiente trozo de un programa, en funcin de la
entradaE1.0.
SET //RLO1
ZV Z1
U E1.0
L C#4
S Z1 //DUAL4 y redispara las entradas "Suma" y "Resta"
Laprimeravezqueseejecutaelcdigoelvalordelcontadorsiempretomael
valorpordefecto0yZV Z1sumaunaunidadalcontador(RLO=1).Observequenolo
hace en los sucesivos ciclos porque solamente cuenta por flanco no por nivel. SI lo
hicierapornivel,sumariaunaunidadavelocidaddeciclo.EnelcicloenelqueE1.0=1
se carga el valor 4 en el contador y, como consecuencia, se habilitan las entradas
"Suma"y"Resta",conloqueelvalorfinaldelcontadorser4+1=5.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 16
Ejercicio17.Programaruntrende10pulsosconseparacinde10s
Solucin: Se aade un contador con valor inicial de 9 y se realiza una cuenta atrs,
detectandolemomentoenquesusalidalgicaesfalsa.Paracomprenderelcdigoes
importanterecordarquelasentadasdecarga,sumayrestafuncionanporflanco.
//TREN DE PULSOS cada 10s en la marca M 1.0
UN M1.0
L S5T#10S
SE T1
U T1
= M1.0
//CONTADOR DE 10 pulsos
SET
L C#9
S Z1 //Valor inicial9
U M1.0
ZR Z1 //Resta una unidad por cada pulso (flanco de subida)
U Z1
//...
Ejercicio18.Indiquequehaydeincorrectoenlaimplementacinsiguiente
Lafigura114muestraunasituacinhabitualdondeunmismocontadoractualizasu
valorenfuncindelaactivacindediversasetapas.Laimplementacinpropuestano
es correcta porque en un mismo ciclo scan se presenta un nivel alto y bajo en la
entradasumacuandounadelasdosetapas2,4seactiva.Enconsecuencia,enlugar
de ver un nivel est viendo un flanco de subida en la entrada suma al evaluar la
instruccin ZV Z1 inmediatamente posterior a la instruccin de carga de la etapa
activaenelRLO.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 17
U "X2"
ZV Z1
//
U "X4"
ZV Z1
Figura114.Implementacinincorrectadelaconfiguracindeleventosumadeuncontador
Paraevitaresteproblemaesnecesarioagrupartodosloseventossumaenunanica
funcinlgicaqueseconectaalaentradadelcontador.Enconcreto:
U "X2"
O "X4" //RLOX2+X4
ZV Z1 //Suma una unidad cuando RLO=1 ((X2+X4) es verdadero)
Estaideadeagrupamientoserepiteenmuchosotroscontextos,comoporejemploen
laimplementacindelamismaaccincontinuacomoconsecuenciadelaactivacinde
diferentesetapas.
1.5. HABILITACINDETEMPORIZADORESYCONTADORES
EnensambladorSTEP7existeunoperadormuytilenlaprcticaqueborralas
memorias biestables asociadas a las entradas que funcionan por flanco. Estas
memorias equivalen a las marcas de flanco auxiliares que se emplean en la
caracterizacindelflanco.Msformalmente:
Sedenominahablitarunaentradaquefuncionaporflancoalborradodelamarcade
flanco que tiene asociada. En consecuencia si dicha entrada est activa por nivel
funcionarcomosealdemando
Laordendehabilitacinsiemprefuncionaporflanco,puestoqueesunaaccin
decontrolinternoynounaaccincontinua.Eloperadorqueseencargadehabilitaren
STEP7es:
FR<Identificadordebloquedetiempoodecontaje>
Elefectodelainstruccindependedelbloque:
FR<Temporizador>:FRborralamarcadeflancodelasealdedisparoconlo
queeltemporizadorseredisparasilasealestabaanivelalto.
FR <Contador>: FR borra las marcas de flanco de las entradas Suma y Resta,
conloqueelcontadorincrementarodecrementarsuvalorsialgunadeellas
estanivelaltoenelmomentodelaejecucindelainstruccin.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM
IntroduccinalmodeladoGRAFCET 18
EnlaprcticalainstruccinFRseempleaparamostrarelceroaltemporizador,esdecir
evitarqueunvalorespreodelamarcadeflancoenlaentradadedisparoimpidaque
eltemporizadorfuncionenormalmente,comoseverencaptulosposteriores.
U X2
ZV Z1
//
U a
FR Z1 //HabilitaZ1
//
Figura115.Ejemplodehabilitacindeuncontador
Como ejemplo, la figura 115 muestra un grafcet parcial que tiene una
implementacin sencilla en AWL con el uso del operador FR. El grafcet describe
contador que tiene que incrementar su valor cada vez que se activa la etapa 2 y
cuandoestandolaetapadosactiva,sevalidalacondicina.Aladerecha,elprograma
habilitaelcontadorconlapropiacondicin.
PPabloSanSegundo UniversidadPolitcnicadeMadridUPM