Sunteți pe pagina 1din 47

PROGRAMAREA AUTOMATELOR PROGRAMABILE

35

4. Programarea automatelor programabile


ncepnd cu sfritul anilor 1960, limbajele utilizate la programarea automatelor
programabile au evoluat continuu alturi de echipamentele pentru care au fost concepute.
Acest capitol cuprinde, printre altele, prezentarea limbajului Ladder, unul dintre cele mai
longevive i uzuale limbaje de programare a automatelor programabile. De asemenea, se va
acorda o atenie deosebit instruciunilor Ladder, att n contextul standardului IEC 61131,
care reglementeaz limbajele de programare pentru automatele programabile, ct i n cazul
unor implementri specifice a acestor sisteme de control. Automatele programabile Siemens
din familia S7-200, cu particularitile lor (structur, instruciuni speciale etc.) vor furniza
cadrul pentru studiile de caz necesare consolidrii aspectelor specifice programrii Ladder.
4.1 LIMBAJE DE PROGRAMARE
Toate sistemele de calcul bazate pe microprocesoare vor executa continuu programele
ncrcate n memorie. Aceste programe sunt reprezentate n memorie n cod main sub forma
unor secvene de bii care codific diferitele instruciuni ale programului.
Realizarea acestor programe presupune utilizarea unor limbaje de asamblare, bazate pe
diferite seturi de instruciuni (ex. instruciunea LD poate indica o operaie de ncrcare n
acumulator a operandului care urmeaz numelui instruciunii), respectiv a unor programe
denumite assembler care transform codul obinut n limbaj main.
Modalitatea de a realiza programele poate fi i mai mult simplificat prin utilizarea
limbajelor de programare de nivel nalt (ex. C, Pascal etc.). Acestea utilizeaz pachete de
funcii, simboluri i alte elemente specifice care permit o puternic abstractizare a detaliilor
referitoare la arhitectura sistemului de calcul. n cele din urm, prin utilizarea unor
compilatoare i interpretoare, aceste programe se traduc n cod main pentru a putea fi
ncrcate n memoria sistemelor de calcul.
Fig. 4.1 pune n eviden diferitele modaliti de a realiza programele i raportul n care se
afl cu sistemul de calcul.

Fig. 4.1. Limbaje de programare

Din pcate, utilizarea acestor metode pentru a scrie programe necesit abiliti de
programare mai deosebite, dar automatele programabile logice au fost concepute iniial pentru
ingineri i tehnicieni fr prea mari cunotine de programare. Drept consecin, s-a dezvoltat
programarea Ladder, care are la baz metodele de realizare a schemelor cu relee, utilizate nc
din timpul celui de-al doilea rzboi mondial, pentru a descrie conectarea sistemelor logice de
control industrial.
Aceast modalitate de a scrie programele a fost adoptat de marea majoritate a
productorilor de automate programabile, dar cu toate acestea fiecare productor a manifestat

36

PROGRAMAREA AUTOMATELOR PROGRAMABILE

tendina de a dezvolta versiuni proprii ale acestui limbaj. Astfel, s-a fcut simit nevoia de a
adopta un standard internaional pentru programarea Ladder, dar i pentru celelalte metode de
programare care s-au dezvoltat n paralel.
Standardul, publicat n 1993, sub denumirea IEC 1131-3 (ulterior IEC 61131-3) definete
urmtoarele limbaje de programare pentru automatele programabile:
Diagrame Ladder (en. LAD Ladder Diagram)
Liste de instruciuni (en. IL Instruction List sau STL Statement List)
Diagrame bloc funcionale (en. FBD Function Block Diagram)
Text structurat (en. ST Structured Text)
Diagrame funcionale secveniale (en. SFC Sequential Function Charts)
Chiar dac funcionalitatea i structura acestor limbaje este foarte diferit, standardul
amintit le trateaz sub forma unei familii de limbaje avnd elemente de configurare i de
structur comune. Aceste elementele comune sunt independente de limbajul ales sau de
structura hardware a sistemului i vizeaz, printre altelte: tipurile de date (ex. BOOL, BYTE,
INTEGER, DOUBLE, REAL etc. sau tipuri definite de utilizator), declaraia variabilelor,
reprezentrile simbolice prin etichete, unitile de organizare a programelor (ex. funcii
standard sau definite de utilizator, blocuri funcionale, rutine) etc.
Un avantaj pe care l aduce aceast familie de limbaje de programare este l reprezint
selecia flexibil a limbajului utilizat la dezvoltarea aplicaiei. Astfel, utilizatorul este liber s
aleag limbajul cel mai potrivit pentru rezolvarea diferitelor pri ale programului, programul
final putnd fi realizat n orice combinaie a limbajelor de programare.
Unificarea i standardizarea acestor cinci limbaje marcheaz un compromis din punct de
vedere istoric, regional, dar i al cerinelor din domeniu. Standardul asigur, bineneles, i
dezvoltarea ulterioar (ex. principii de constituire a funciilor bloc, principii de dezvoltare i
extindere a funcionalitii oferite de diferitele limbaje etc.) i cuprinde elemente specifice
diferitelor tehnologii existente (ex. numeroase tipuri de date).
n continuare, se va prezenta, cu ajutorului unui exemplu, specificul fiecrui limbaj de
programare a automatelor programabile.
Exemplu: Proces de producie. Procesul utilizat pentru exemplificarea diferitelor limbaje
de programare va realiza comanda unui sistem de gurit piese. Se consider mai multe tipuri
de piese care pot ajunge pe linia de producie. Dac piesele prezente sunt de Tipul A sau de
Tipul B, iar burghiul nu este ocupat cu gurirea altei piese se permite acionarea mainii de
gurit.
Diagramele Ladder (LAD)
Limbajul de programare Ladder este un limbaj grafic derivat din schemele de
automatizare cu relee. Structura diagramelor Ladder cuprinde dou bare verticale de
alimentare conectate ntre ele prin intermediul mai multor trepte pe care se gsesc diferite
elemente (contacte normal nchise sau normal deschise) care nchid sau deschid cile de
curent create ntre cele dou bare, realiznd astfel acionarea unor bobine de ieire.

Fig. 4.2. Exemplu de diagram Ladder

PROGRAMAREA AUTOMATELOR PROGRAMABILE

37

Diagramele Bloc Funcionale (FBD)


Limbajul de programare bazat pe Diagrame Bloc Funcionale i are originea n schemele
logice specifice circuitelor electronice i este caracterizat de interconectarea unor blocuri care
realizeaz diferite funcii (logice, matematice etc.). FBD este foarte util pentru specificarea
fluxului de semnale i date ntre diferitele blocuri componente ale algoritmului sau logicii de
control.

Fig. 4.3. Exemplu de diagram bloc funcional

Lista de instruciuni (IL)


Acest limbaj de programare face parte din categoria limbajelor textuale, avnd o sintax
asemntoare limbajelor de asamblare, ce permite specificarea programului prin intemediul
unor instruciuni simple.
LD
OR
AND
ANDN
ST

piesa_TipA
piesa_TipB
piesa_prezenta
burghiu_ocupat
start

Fig. 4.4. Exemplu de list de instruciuni

Textul Structurat (ST)


Textul Structurat i are originile n limbajul Pascal i face parte din categoria limbajelor
de programare de nivel nalt. ncurajnd programarea structurat, elementele tipice ale acestui
limbaj cuprind: expresii, operatori, instruciuni, funcii, elemente de control al execuiei
(IF...THEN...ELSE, FOR, WHILE) etc.
start := (piesa_TipA OR piesa_tipB) AND piesa_prezenta AND (NOT burghiu_ocupat);
Fig. 4.5. Exemplu de text structurat

Diagramele funcionale secveniale (SFC)


n general, diagramele funcionale secveniale caracterizeaz un formalism utilizat la
proiectarea, descrierea sau structurarea programelor de control secvenial. SFC este impropriu
denumit limbaj de programare de ctre standardul IEC 61131-3. El asigur de fapt o structur
de organizare pentru programele de control secveniale, coordonnd practic utilizarea celor
patru limbaje de programare tipice (LD, FBD, IL, ST) pentru realizarea diferitelor
componente ale programului. De asemenea, permite o viziune de ansamblu asupra
programului de control, lucru care ajut la o depanare mai rapid.
Structura SFC se aseamn diagramelor de activitate ntlnite n programarea clasic.
Elementele specifice SFC sunt: etapele, tranziiile, aciunile, ramificaiile paralele sau mutual

38

PROGRAMAREA AUTOMATELOR PROGRAMABILE

exclusive etc. Fiecare etap reprezint cte o stare a programului de control care poate fi
activ sau inactiv la un moment dat, tranziiile asigur succesiunea secvenial a diferitelor
etape i realizarea aciunilor (care pot fi i ele secveniale) specifice etapelor. Prin utilizarea
diagramelor funcionale secveniale, chiar i cel mai complex comportament secvenial al
unui sistem poate fi descompus i descris.

Fig. 4.6. Exemplu de diagram funcional secvenial

Odat cu dezvoltarea automatelor programabile s-au dezvoltat i aceste limbaje de


programare, dobndind instruciuni noi i versatile care ofer putere computaional crescut.
De exemplu, automatele programabile pot transfera acum blocuri de date dintr-o locaie de
memorie n alta, pot executa operaii complexe sau algoritmi avansai de control.
Toate direciile de dezvoltare s-au realizat n contextul satisfacerii nevoilor din industrie.
Astfel s-a creat o cerere de instruciuni noi i puternice care s permit o programare ct mai
uoar, compact i orientat pe funcii a automatelor programabile.
4.2 DEZVOLTAREA PROGRAMELOR DE CONTROL
Realizarea programelor pentru automatele programabile trebuie vzut ntr-un context mai
larg, fiind doar o etap, foarte important de altfel, n dezvoltarea sistemelor de automatizare
cu automate programabile. Astfel, programele de control trebuie realizate sistematic, trebuie
s fie bine structurate i complet documentate pentru a asigura sistemului:
funcionarea corect, marcat de lipsa erorilor;
operaiuni de mentenan minime;
costuri sczute.
Procesul de dezvoltare al programelor, testat i verificat n practica industrial, cuprinde
mai multe etape i este prezentat n Fig. 4.7. Structurarea sa pe mai multe etape vizeaz
atingerea unor obiective bine stabilite, folosind o abordare sistematic care va furnizeaza
rezultate clare ce pot fi verificate n contextul aplicaiei cerute.
Procesul de dezvoltare al programelor cuprinde urmtoarele etape:
Stabilirea specificaiilor: descrierea aplicaiei;
Proiectarea: descrierea soluiei;
Realizarea: implementarea soluiei;
Punerea n funciune: predarea proiectului ctre beneficiar, integrarea i testarea
soluiei n cadrul sistemului final.
n general, aceast abordare poate fi aplicat la dezvoltarea majoritii proiectelor tehnice,
existnd deosebiri doar n metodele i uneltele folosite la realizarea etapelor individuale.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

39

Fig. 4.7. Etapele dezvoltrii programelor pentru automatele programabile

Modelul prezentat n Fig. 4.7 poate fi aplicat cu succes n dezvoltarea programelor de


control de orice complexitate, fiind absolut necesar n cazul aplicaiilor complexe.
Etapele individuale ale acestui model sunt prezentate n cele ce urmeaz.
4.2.1 Stabilirea specificaiilor (Formularea problemei)
n acest etap se formuleaz o descriere detaliat i precis a legilor de control dorite.
Descrierea riguroas a funciilor sistemului de control va scoate la iveal eventualele cerine
conflictuale sau specificaiile incomplete sau eronate ale problemei. La sfritul acestei etape
vor fi disponibile urmtoarele:
- Descrierea sarcinii de control dorite
- Structura i poziionarea sistemului
- Arhitectura general a sistemului care va contura n mare structura soluiei
4.2.2 Proiectarea (Forma concret a soluiei concepute)
Aceast etap cuprinde dezvoltarea soluiei pe baza specificaiilor stabilite n etapa
anterioar. Metoda utilizat la descrierea soluiei trebuie s asigure att descrierea grafic ct
i descrierea orientat spre proces a funciilor i a comportamentului sistemului de control
propus i nu trebuie s depind de realizarea tehnic.
Aceste cerine se ndeplinesc prin realizarea unor diagrame funcionale, care descriu
comportamentul prilor secveniale ale sistemului de control. Pentru acest lucru se folosesc
unelte metodologice (ex. GRAFCET, standardizat prin norma IEC 60848) care furnizeaz n
un limbaj de descriere pentru sistemul de control, dar asigur, n acelai timp, i un limbaj
comun de comunicare ntre dezvoltatorii sistemului i utilizatorii lui.
Astfel, prin utilizarea acestei metodologii, se ncepe cu o imagine de ansamblu asupra
sistemului de control, care ulterior este rafinat pas cu pas pentru a se ajunge n cele din urm
la un nivel de descriere ce conine toate detaliile soluiei.

40

PROGRAMAREA AUTOMATELOR PROGRAMABILE

n cazul sistemelor complexe, soluia se structureaz sub forma unor module soft
individuale. Aceste module vor implementa diferite etape ale algoritmului de control (ex.
aciuni recurente, comunicaii, funcii speciale etc.)
4.2.3 Realizarea (Programarea soluiei concepute)
Transpunerea soluiei concepute n forma unui program de control se realizeaz prin
utilizarea limbajelor de programare definite n standardul IEC 61131-3. Este vorba despre
LAD, FBD, IL, ST i SFC.
Diagramele funcionale realizate n etapa anterioar pot fi cu uurin implementate n
program prin utilizarea limbajului SFC. Chiar dac nu este un limbaj de programare n
adevratul sens al cuvntului, SFC utilizeaz aceleai componente pentru structurarea
programelor ca i cele utilizate la descrierea sistemului de control prin diagrame funcionale
realizat conform standardului IEC 60848. De altfel, limbajul de programare SFC
(standardizat n IEC 61131-3) a evoluat din GRAFCET (standardizat n IEC 60848). Dac
primul s-a orientat spre programarea automatelor programabile, asigurand un cadru de
organizare al programelor i coordonnd, printre altele, utilizarea celor patru limbaje de
programare tipice (LAD, FBD, IL, ST), cel de-al doilea s-a orientat spre asigurarea unei
metodologii comune de descriere a sistemelor de control secveniale.
n general, diagramele Ladder (LAD), diagramele bloc funcionale (FBD) i listele de
instruciuni (IL) sunt limbajele de programare cel mai bine adaptate pentru formularea
operaiilor de baz ale programului de control, care pot fi descrise prin instruciuni logice
simple cu semnale binare, limbajul de nivel nalt, textul structurat (ST), fiind utilizat n special
pentru a crea module soft care implementeaz algoritmi de control compleci.
n msura n care sistemele de dezvoltare a aplicaiilor pentru automatele programabile
dispun de aceast facilitate, ar trebui realizat simularea programelor nainte de predarea
sistemului de control ctre beneficiar. Acest lucru va permite idetificarea i eliminarea erorilor
chiar din faza de implementare.
4.2.4 Punerea n funciune (Integrarea i testarea sistemului)
n aceast etap se testeaz interaciunea dintre sistemul de automatizare i procesul
condus. n cazul sistemelor complexe se recomand punerea n funciune treptat, pe
subansamble. Astfel, eventualele defecte ale sistemului sau ale programului de control pot fi
detectate i elimintate cu uurin.
Predarea spre beneficiar a sistemului trebuie s fie nsoit de furnizarea unei documentaii
tehnice. Elaborarea documentaiei tehnice este o cerin esenial pentru realizarea ntreinerii
sistemului de automatizare sau a unei eventuale extinderi. Documentaia tehnic ar trebui s
includ urmtoarele elemente:
- Descrierea problemei
- Schema tehnologic i de poziionare a sistemului de automatizare
- Schema circuitului
- Programele de control (att n form listat ct i pe suport de stocare) cu blocurile de
comentarii aferente
- Diagrama cu terminalele
- Lista de alocare a intrrilor i ieirilor
- Referinele ncruciate
- Valorile impuse temporizatoarelor i numrtoarelor
- Lista i starea condiiilor de forare
- Alte documente adiionale.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

41

4.3 PROGRAMAREA LADDER


4.3.1 Introducere
Programarea Ladder s-a consacrat ca principalul limbaj de programare pentru automatele
programabile logice. Avnd n vedere c automatele programabile au fost iniial concepute
pentru a nlocui sistemele de control cu relee, un pas firesc n evoluia acestor sisteme l-a
reprezentat apariia unui limbaj de programare asemntor diagramelor utilizate la
documentarea schemelor cu relee. Limbajul de programare rezultat, care utiliza simbolurile de
baz specifice diagramelor ladder cu relee, a fost denumit limbaj ladder. Avantajul pe care l
aducea acest limbaj viza faptul c inginerii i tehnicienii care utilizau automatele logice
timpurii nu necesitau pregtire special pentru a nelege programele de control.
Pentru a introduce limbajul de programare ladder se consider, n exemplul urmtor, un
cicuit electric simplu i reprezentrile sale echivalente prin diagrame logice ladder cu relee,
respectiv prin program realizat n limbajul ladder, specifice implementrilor circuitului prin
logic fix respectiv prin logic programat.
Exemplu. Circuit I. Se consider dou comutatoare n serie, notate cu X i Y, care comand
un bec, conform Fig. 4.8-a. Pentru circuitul propus, se va implementa aceei funcionalitate
mai nti sub forma unui sistem de comand cablat cu relee electromagnetice (Fig. 4.9
logic fix), iar apoi sub forma unui sistem de comand cu automat programabil (Fig. 4.10 logic programat). Pentru ambele sisteme de comand, cele dou comutatoare se vor
considera intrri distincte, iar becul ieire. n cele din urm, se vor prezenta diagramele ladder
corespunztoare celor dou variante de implementare.
Comanda realizat de circuitul din Fig. 4.8-a poate fi descris n felul urmtor: Becul este
aprins cnd comutatorul X este nchis i comutatorul Y este nchis. Toate combinaiile
posibile ale celor dou comutatoare i efectul acestora asupra becului comandat sunt
reprezentate prin tabelul de adevr din Fig. 4.8-b.

Fig. 4.8. Circuit electric (a); tabel de adevr (b)

Pentru a implementa aceeai funcionalitate cu ajutorul releelor electromagnetice,


comutatoarele A i B, nu vor mai fi conectate direct la bec, ci vor fi conectate la bobinele
releelor RX i RY, a cror contacte normal deschise legate n serie vor comanda bobina
releului RB, i implicit prin contactele sale becul (Fig. 4.9-a). n acest caz, comutatoarele X i
Y reprezint intrri ale circuitului de comand. Cnd comutatoarele A i B vor fi nchise,
releele RX i RY vor fi acionate, iar prin nchiderea contactelor lor bobina releului RB va fi
alimentat, nchizndu-i contactele i alimentnd astfel becul.
Ieirea (becul n acest caz) este comandat de releul RB care asigur izolarea acesteia de
circuitul care implementeaz logica, iar releele RX i RY, comandate prin comutatoarele X i
Y, asigur izolarea intrrilor de logica de comand. Aceast configuraie permite ca o singur
legtur ntre un comutator i bobina unui releu de intrare s poat fi utilizat de mai multe ori
n logica de comand. Acest lucru este posibil datorit faptului c releele industriale pot fi

42

PROGRAMAREA AUTOMATELOR PROGRAMABILE

prevzute cu numeroase contacte acionate de o singur bobin. De exemplu, dac releul RX


dispune de 6 contacte (doar unul fiind reprezentat n Fig. 4.9-a), atunci celelalte cinci pot fi
utilizate fr a fi necesare alte cinci conexiuni la comutatorul A.
nainte de apariia automatelor programabile, exista deja un formalism de reprezentare al
cicuitelor electrice de tipul celor din Fig. 4.9-a. Reprezentrile utilizate erau cunoscute sub
denumirea de diagrame logice ladder cu relee. n Fig. 4.9-b se prezint diagrama logic
ladder cu relee corespunztoare circuitului din Fig. 4.9-a.
n aceste diagrame, comutatoarele se reprezint prin simbolurile cunoscute, cercurile
simbolizeaz bobinele releelor, iar contactele normal deschise ale releelor sunt reprezentate
prin dou bare verticale paralele. Cele dou bare verticale paralele aflate la capetele diagramei
marcheaz barele de alimentare ale circuitului.

Fig. 4.9. Logica fix: Circuitul electric cu relee echivalent (a);


Diagrama logic ladder cu relee echivalent (b);

Pentru a obine aceeai funcionalitate a sistemului de comand cu ajutorul unui automat


programabil comutatoarele A i B se conecteaz la dou canale de intrare distincte ale
automatului, iar becul la un canal de ieire, conform Fig. 4.10-a.
Limbajul ladder, utilizat la programarea automatelor programabile, deriv din diagramele
ladder convenionale pstrnd specificul i formalismul acestora. Astfel, pentru exemplul
considerat, diagrama ladder realizat, de aceast dat, sub forma unui program memorat (Fig.
4.10-b) va pstra doar cea de-a treia linie a diagramei ladder convenionale din Fig. 4.9-b, care
cuprinde contactele releelor RX i RY i bobina releului de ieire RB care comand becul.
ntruct automatele programabile au fost concepute pentru a nlocui logica fix realizat
cu ajutorulul schemelor de comand cu relee, notaiile utilizate de limbajul de programare
ladder pornesc de la premisa c intrrile automatului programabil, la care sunt conectate
comutatoarele X i Y, sunt echivalente bobinelor releelor de intrare RX i RY din Fig. 4.9-b,
iar ieirea automatului este echivalent contactului normal deschis RB al releului de ieire din
Fig. 4.9-b care comand becul.
Astfel, n diagrama ladder din Fig. 4.10-b, denumirile menionate deasupra simbolurilor
contactelor, sunt denumirile intrrilor fizice care comand contactele respective prin

PROGRAMAREA AUTOMATELOR PROGRAMABILE

43

intermediul bobinelor releelor de intrare. Convenia se aplic i n cazul denumirii specificate


deasupra simbolului bobinei de ieire care caracterizeaz denumirea ieirii fizice comandat
de aceasta.
Ieirea, plasat n extremitatea dreapt a diagramei va fi activat cnd fluxul de putere
parcurge nentrerupt circuitul cuprins ntre bara de alimentare din stnga i bara de alimentare
din dreapta. Programul ladder rezultat poate fi interpretat n felul urmtor: Dac intrarea in1
(contactul X) este nchis i intrarea in2 (contactul Y) este nchis atunci ieirea out (becul)
este aprins. Aceast afirmaie este echivalent celei care descrie funcionarea circuitului din
Fig. 4.8-a.

Fig. 4.10. Logic programat: Sistemul de comand cu automat programabil (a);


Diagrama ladder echivalent realizat ca program folosind limbajul ladder (b)

Exemplul anterior evideniaz modalitatea de realizare a unei comenzi logice


combinaionale simple n varianta cablat (logic fix), prin prezentarea schemei circuitului
de comand i a reprezentrii sale cu ajutorul diagramei ladder convenionale, respectiv n
logic programat prin prezentarea programului echivalent n limbaj ladder specific
automatelor programabile. Ceea ce este important de reinut din Fig. 4.9 se refer la
asemnarea existent ntre cele dou reprezentri ale aceleiai legi de comand: diagramele
ladder convenionale i digramele ladder realizate sub form de program memorat utiliznd
limbajul de programare ladder specific automatelor programabile.
4.3.2 Structura diagramelor Ladder
Uurina cu care se realizeaz i se impementeaz diagramele ladder, au fcut din limbajul
ladder una din metodele principale de realizare a programelor pentru automatele
programabile. ntruct limbajul de programare n sine s-a dezvoltat din diagramele ladder
electrice, scrierea programului pentru automatele programabile a devenit echivalent cu
desenarea diagramei circuitului de comand. Astfel, principiile de realizare i interpretare a
diagramelor ladder convenionale i a diagramelor ladder programate s-au pstrat aceleai,
singurele diferene ntre cele dou viznd simbolistica, simplificat i optimizat pentru
vizualizarea pe ecran n cazul limbajului de programare ladder i mai apropiat de
echipamentele reale n cazul simbolurilor ladder convenionale.
Limbajul ladder (limbajul de programare bazat pe diagrame ladder) face parte din
categoria limbajelor de programare grafice care utilizeaz un set de instruciuni simbolice
pentru realizarea programelor. Prin interconectarea simbolurilor caracteristice instruciunilor
ladder se obine logica de control dorit sub forma unui program (diagram ladder) care se
ncarc n memoria automatului programabil.

44

PROGRAMAREA AUTOMATELOR PROGRAMABILE

n Fig. 4.11 se prezint diagrama ladder electric asociat unui circuit de comand i
reprezentarea echivalent a aceleiai logici de comand n limbajul ladder cu ajutorul
instruciunilor contact i bobin. Exemplul considerat pune n eviden i diferena dintre
simbolistica utilizat n cadrul celor dou tipuri de diagrame ladder.

Fig. 4.11. Diagram ladder electric (a), diagram ladder realizat sub form de program (b)

Iniial setul de instruciuni ladder era foarte restrns i cuprindea doar cteva elemente de
baz cum ar fi: contacte normal deschise, contacte normal nchise, bobine de ieire,
temporizatoare i numrtoare. Dar, odat cu apariia automatelor programabile bazate pe
microprocesoare setul acesta de instruciuni s-a extins, devenind disponibile i instruciuni pe
care sistemele convenionale nu le mai puteau oferi.
Evoluia limbajului ladder a condus la apariia unor instruciuni complexe, implementate
sub forma blocurilor funcionale care implementeaz diferite funcii asupra datelor (ex.
manipulare, transfer de date, operaii matematice complexe etc.). Totui, chiar i aceste
instruciuni sunt executate conform principiilor diagramelor ladder de baz. n Fig. 4.12 se
prezint un bloc funcional comandat prin instruciuni ladder de baz.

Fig. 4.12. Instruciune ladder de tip bloc funcional

Noile instruciuni funcionale marcheaz dezvoltarea limbajului ladder i, totodat, permit


clasificarea instruciunilor ladder n dou categorii:
- instruciuni ladder de baz;
- instruciuni ladder extinse.
ncadrarea instruciunilor existente n una din cele dou categorii difer de la un
productor la altul, dar de-a lungul anilor s-a ajuns la un consens general acceptat. Tabelul 4.1
prezint o clasificare tipic a celor dou categorii de instruciunilor.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

45

Tabel 4.1. Clasificarea seturilor de instruciuni ladder pentru automatele programabile

Instruciuni ladder de baz


Contacte
Bobine
Temporizatoare
Numrtoare
Adunare
Scdere
nmulire
mprire
Comparaie (>,<, =)
Controlul execuiei

Instruciuni ladder extinse


Operaii n virgul flotant (adunare, radical, sin, cos etc)
Transfer date (move)
Regitri de deplasare i rotire
FIFO, LIFO
PID
Comunicaii
Diagnoz
Manipulare iruri
Logica fuzzy
Secveniatoare

Indiferent de clasificarea instruciunilor, efectul acestora este evident: cu ct un automat


programabil dispune de mai multe tipuri de instruciuni, cu att se pot realiza programe de
control mai complexe. De obicei, automatele programabile mici sunt dotate doar cu
instruciuni ladder de baz i eventual cu cteva instruciuni extinse, dar dezvoltrile recente
continu s creasc puterea computaional a acestora.
n Fig. 4.13 se prezint structura i terminologia utilizat pentru diagramele ladder.

Fig. 4.13. Structura unei diagrame ladder

Elementele de baz ale diagramelor ladder sunt instruciunile. Structura fiecrei


instruciuni cuprinde dou componente, dup cum se poate vedea i n Fig. 4.14. Aceste
componente sunt: codul operaiei, identificat prin simbolul instruciunii, i unul sau mai muli
operanzi, care pot fi constante, adrese fizice, denumiri simbolice etc.

46

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.14. Structura instruciunilor ladder

Funcia principal pe care o ndeplinesc programele realizate prin diagrame ladder este de
a controla ieirile automatului programabil i de a realiza operaii funcionale pe baza
condiiilor de intrare. Diagramele ladder realizeaz controlul ieirilor cu ajutorul treptelor
ladder. Acestea reprezint structuri de organizare a operaiilor realizate de diagramele ladder.
n Fig. 4.15 se prezint structura tipic a treptei unei diagrame ladder. n general, treapta
(denumit i reea sau linie) conine un set de condiii de intrare (reprezentate prin
instruciunile contact) i o instruciune de ieire la captul treptei (reprezentat prin simbolul
unei bobine). Instruciunile de tip contact ale unei trepte ladder sunt cunoscute i sub
denumirea de condiii de intrare sau logic de control a treptei.

Fig. 4.15. Structura unei trepte ladder

Nodurile unei diagrame ladder caracterizeaz punctele de conexiune dintre dou sau mai
multe elemente.
n cadrul unei diagrame ladder elementele de circuit pot forma blocuri serie i paralel, ca
urmare a modului de interconectare al acestora. Blocul serie caracterizeaz dou sau mai
multe elemente conectate n serie care formeaz un singur circuit linie. Blocul paralel
reprezint un circuit paralel nchis format prin conectarea de elemente sau blocuri serie n
paralel.
n orice treapt a unei diagrame ladder se pot forma ramuri prin conectarea unei linii
verticale la stnga a dou sau mai multe linii de circuit.
n trasarea diagramelor ladder se aplic cteva convenii, dup cum urmeaz:
1.
Liniile verticale de la capetele diagramei reprezint barele de alimentare ntre care
sunt conectate circuite (trepte). Se consider c fluxul de putere parcurge circuitele
de la bara de alimentare din stnga (faza) spre bara de alimentare din dreapta
(nulul).
2.
Fiecare treapt a diagramei ladder implementeaz o singur operaie.
3.
Diagrama ladder este evaluat de la stnga spre dreapta i de sus n jos. n Fig. 4.16
se prezint modul n care automatul programabil scaneaz programul implementat
sub forma unei diagrame ladder. Mai nti se scaneaz prima treapt de la stnga
spre dreapta, apoi se scaneaz cea de-a doua treapt i se continu n acest fel pn

PROGRAMAREA AUTOMATELOR PROGRAMABILE

47

la ntlnirea unei instruciuni de tip END sau RET care marcheaz terminarea
programului. La ntlnirea acestei instruciuni se reia execuia de la prima treapt.
Procesul care presupune parcurgerea (scanarea) tuturor treptelor unui program
ladder poart denumirea de ciclu program (ciclu de scanare al programului).

Fig. 4.16. Scanarea programului ladder

4.
5.

6.

7.

Fiecare treapt a programului trebuie s nceap cu o condiie de intrare i trebuie s


se ncheie cu cel puin o ieire.
Elementele componentele ale diagramelor ladder se reprezint n starea lor normal.
Astfel, un comutator normal deschis care trebuie acionat ca s se nchid va fi
reprezentat printr-un contact deschis n diagrama ladder. De asemenea, un
comutator normal nchis va fi reprezentat ca un contact nchis.
Un anumit element al diagramei ladder se poate regsi n mai multe trepte ale
diagramei. De exemplu, un anumit releu poate comanda mai multe echipamente. De
fiecare dat se va folosi aceeai denumire (adresa sau nume simbolic) pentru a
identifica releul respectiv.
Elementele diagramelor ladder se identific prin adresa lor din memorie. Modul de
specificare al adresei difer de la un productor la altul.

O treapt ladder este evaluat ca fiind ADEVRAT (activeaz o ieire sau un bloc
funcional) dac are continuitate logic. Continuitatea logic se obine dac fluxul de putere
poate parcurge treapta evaluat de la bara de alimentare din stmga (faz) la bara de
alimentare din dreapta (nul). Continuitatea se produce cnd calea dintre cele dou bare de
alimentare conine contacte n stare nchis, care permit curentului s treac prin circuit de la
stnga spre dreapta. Aceste contacte se nchid sau rmn nchise n conformitate cu starea
intrrilor asociate, respectiv cu logica de control.
n Fig. 4.17 se evideniaz cteva ci care asigur continuitatea i care activeaz ieirea
treptei ladder. Astfel, bobina releului de ieire out va fi alimentat dac oricare din
urmtoarele condiii se produc:
1. intrarea in7 este zero (inactiv), intrarea in6 este unu (activ)
2. intrarea in7 este zero, intrrile in2 i in5 sunt unu
3. intrarea in7 este zero, intrrile in2 i in3 sunt unu
4. intrarea in1 este unu, intrrile in4 i in3 sunt unu
5. intrarea in1 este unu, intrrile in4 i in5 sunt unu

48

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.17. Ci de continuitate permise ntr-o diagrama ladder

Analiznd situaiile prezentate n figura de mai sus se poate constata c fluxul de putere
care asigur continuitatea ramurii parcurge circuitul de fiecare dat de la stnga spre dreapta.
Astfel, n cazul urmtor bobina releului de ieire out nu va fi alimentat:
Intrrile in1, in4, in2, in6 i in7 sunt unu, iar intrrile in3 i in5 sunt zero.
Acest lucru se ntmpl deoarece curentul al trebui s parcurg contactul in2 de la dreapta
spre stnga. Chiar dac n cazul unei diagrame ladder electrice curentul ar putea avea aceast

PROGRAMAREA AUTOMATELOR PROGRAMABILE

49

direcie, n limbajul ladder acest lucru contravine regulilor de implementare i interpretare al


diagramelor. n Fig. 4.18 se evideniaz fluxul invers de putere prin circuit.

Fig. 4.18. Flux invers de putere prin circuit

n continuare se va acorda o atenie deosebit instruciunilor ladder cuprinse n standardul


IEC 61131-3.
Pentru exemplificare instruciunile vor fi prezentate n contextul utilizrii lor la
programarea automatelor programabile Siemens S7-200. Astfel, adresele utilizate n
instruciuni vor caracteriza organizarea memoriei la aceste tipuri de automate programabile.
n msura posibilitilor, n anumite cazuri se vor considera adrese simbolice (nume simbolice
asociate adreselor), iar astfel exemplele vor fi mai generale. Exemplele considerate vor
conduce la buna nelegere a principiilor de funcionare i utilizare a instruciunilor ladder i
vor facilita utilizatorilor trecerea la programarea altor tipuri de automate programabile.
De asemenea, se vor trata i instruciunile ladder din limbajul SIMATIC. Acest limbaj
ladder este specific automatelor programabile Siemens i reprezint alternativa productorului
la utilizarea strict impus de instruciunile din standard. Dei multe instruciuni ale
limbajului SIMATIC sunt identice cu cele din standard, sau diferenele dintre ele sunt
nesemnificative, exist o serie de instruciuni care sunt specfice doar automatelor
programabile Siemens.
n esen, limbajul SIMATIC reprezint o versiune simplificat a limbajului ladder
standardizat n IEC 61131-3, optimizat pentru automatele programabile Siemens din familia
S7-200.
4.3.3 Instruciuni logice pe bit
Instruciunile logice pe bit sunt instruciunile de baz ale limbajului de programare ladder
i caracterizeaz starea nchis/Deschis (Activ/Inactiv) a intrrilor i ieirilor automatului
programabil sau a unor variabile interne. Din punct de vedere funcional, instruciunile logice
pe bit se pot clasifica n dou categorii: contacte i bobine. Contactele caracterizeaz
condiiile de intrare care trebuie evaluate n treptele diagramelor ladder n vedrea realizrii
comenzii ieirilor, iar Bobinele reprezint ieirile treptelor ladder.
Din punct de vedere al acestor instruciuni, automatele programabile pot fi considerate
drept o colecie de contacte, bobine i relee interne (soft). Releele soft sunt elemente de
programare care modeleaz principiul de funcionare al releelor convenionale, avnd
structura alctuit din bobine soft i diferite tipuri de contacte soft (ex. normal deschise,
normal nchise, tranziionale etc.). n Fig. 4.19 se prezint analogia ntre releele convenionale
i cele software.

50

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.19. Analogia dintre releele convenionale i releele ladder

n cadrul unui program ladder, contactele pot fi asociate intrrilor i ieirilor automatului
programabil sau unor variabile interne. Starea contactelor de intrare este determinat de
semnalele externe (ex. senzori, limitatoare de curs, ntreruptoare etc.) conectate la canalele
de intrare ale automatului programabil, iar starea contactelor interne este n strns legtur i
depinde de starea bobinelor releelor interne. Alimentarea bobinelor interne sau de ieire, ca
urmare a apariiei unei ci de continuitate (flux de putere) prin treapta ladder, va determina
acionarea contactelor interne, utilizate de regul la realizarea de diferite intercondiionri
impuse de program, respectiv a contactelor externe care comand echipamentele conectate la
ieirile automatului programabil.
n program, fiecare instruciune contact i bobin are asociat o adres. Aceast adres
specific ceea ce trebuie evaluat, n cazul instruciunilor contact, respectiv ceea ce trebuie
controlat, n cazul instruciunilor bobin. Adresa utilizat poate indica o locaie de memorie
(de 1 bit) din tabelul imagine al intrrilor i ieirilor sau din memoria intern.
Modul n care se specific adresa pentru aceste instruciuni difer de la un productor de
automate programabile la altul, dup cum se poate vedea n Fig. 4.20.

Fig. 4.20. Notaii: Mitsubishi (a); Allen-Bradley (b); Telemecanique (c); Siemens (d)

De asemenea, pot exista unele mici deosebiri i n simbolistica utilizat pentru diferite
instruciuni, pstrndu-se totui aceeai funcionalitate (Tabel 4.2).
Tabel 4.2. Simboluri echivalente utilizate pentru diferite instruciuni

Simboluri echivalente

Descriere
Bobina
Contact normal deschis
Contact activ pe front (detectare front pozitiv)

PROGRAMAREA AUTOMATELOR PROGRAMABILE

51

Instruciunile ladder tratate n acest paragraf permit realizarea unor funcionalitai de baz,
asemenea celor implementate prin schemele electrice cu relee, dar cu flexibilitatea specific
sistemelor de calcul. Instruciunile, care vor fi prezentate n detaliu n continuare, permit
examinarea strii (1 sau 0) anumitor bii din memorie i controlul strii unor bii de ieire
interni sau externi.

Contact normal deschis


Instruciunea contact normal deschis testeaz existena unui 1 logic la adresa specificat.
Contactul poate fi asociat unei intrri a automatului programabil i atunci bitul testat se va afla
la adresa specificat din tabelul imagine al intrrilor, poate fi asociat unui bit intern din
memorie sau poate fi asociat unei ieiri a automatului programabil i atunci bitul testat se
gsete n tabelul imagine al ieirilor.
n timpul execuiei instruciunii contact normal deschis procesorul va testa dac la adresa
specificat de instruciune se gsete un 1 logic. Dac la adresa respectiv se gsete 0 logic,
starea contactului nu se modific. Astfel, contactul rmne deschis i nu va asigura
continuitate prin treapta (Fig. 4.21-a). Dac la adresa menionat se gsete 1 logic, contactul
normal deschis se nchide i se asigur continuitate prin treapta ladder (Fig. 4.21-b).

Fig. 4.21. Instruciune contact normal deschis cu 0 logic la adresa specificat (a); Instruciune contact
normal deschis cu 1 logic la adresa specificat (b)

Contact normal nchis


Instruciunea contact normal nchis testeaz existena unui 0 logic la adresa specificat.
Asemenea contactului normal deschis adresa specificat n instruciunea contact normal nchis
poate indica spre un bit din tabelul imagine al intrrilor sau ieirilor sau din memoria intern.
n timpul execuiei instruciunii contact normal nchis procesorul va testa dac la adresa
specificat n instruciune se gsete un 0 logic. Dac starea bitului de la adresa respectiv

PROGRAMAREA AUTOMATELOR PROGRAMABILE

52

este 0 logic, starea contactului nu se modific. Astfel, contactul rmne nchis i va permite
trecerea fluxului de putere (Fig. 4.22-a). Dac adresa din instruciune indic spre un bit cu
starea 1 logic, contactul se va deschide i se va ntrerupe continuitatea fluxului de putere prin
treapta ladder (Fig. 4.22-b).

Fig. 4.22. Instruciune contact normal nchis cu 0 logic la adresa specificat (a); Instruciune contact
normal nchis cu 1 logic la adresa specificat (b)

Bobin
Instruciunea bobin este o instruciune de ieire care modeleaz funcionarea bobinelor
contactoarelor sau releelor electromagnetice din cadrul schemelor electrice. Instruciunea
poate asigura fie comanda unei ieiri fizice, conectat la un canal de ieire al automatului
programabil, fie modificarea strii unei variabile interne de un bit. Astfel, adresa asociat
acestei instruciuni va indica spre un bit din tabelul imagine al ieirilor sau din memoria
intern.
La fel ca i n cazul bobinelor din schemele electrice, bobinele din programale ladder pot
avea dou stri: alimentate sau nealimentate. n timpul execuiei instruciunii bobin
procesorul evalueaz toate condiiile de intrare ale treptei ladder. Dac nu exist continuitate
prin treapt (condiiile de intrare sunt evaluate ca fiind false, bobina fiind nealimentat),
procesorul nscrie un 0 logic la adresa specificat n instruciune (Fig. 4.23-a). Dac, n urma
evalurii condiiilor de intrare se gsete o cale care s asigure continuitate prin treapt i s
alimenteze bobina, procesorul va nscrie un 1 logic la adresa specificat n instruciune (Fig.
4.23-b).
Dac bitul spre care indic adresa din instruciune se gsete n tabelul imagine al ieirilor,
atunci, la sfritul ciclului de scanare al programului, n faza de actualizare a ieirilor, acesta
va comanda ieirea de cmp corespondent. Altfel spus, ieirea fizic va reflecta starea bitului
corespondent din tabelul imagine al ieirilor.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

53

Dac adresa din instruciune indic spre un bit intern atunci bobina va controla starea
acestuia. n general aceti bii interni sunt utilizai ca variabile intermediare n diferite
intercondiionri cerute de logica de control implementat de program, n situaii n care nu
este necesar comanda unei ieiri fizice

Fig. 4.23. Instruciune bobin cu 0 logic la adresa specificat (a);


Instruciune bobin cu 1 logic la adresa specificat (b)

Contactele normal deschise i normal nchise asociate diferitelor adrese din memorie se
vor nchide i se vor deschide n conformitate cu starea biilor referii. Dac biii n cauz (cei
a cror adrese sunt utilizate de instruciunile contact) sunt comandai de bobine, atunci se
poate considera c nchiderea sau deschiderea contactelor respective este comandat de
aceleai bobine. De asemenea, conform principiilor de realizare a diagramelor ladder, nu
exist restricii privind numrul de utilizri ale unei adrese ntr-un program ladder, iar aceeai
adres poate fi utilizat att de instruciunile contact ct i de instruciunile bobin.
n Fig. 4.24 se prezint un exemplu de diagram ladder simpl n care contacte normal
nchise i normal deschise asigur condiiile de intrare pentru treptele ladder. n acest
exemplu, pentru aprinderea becului conectat la ieirea Q0.0 a automatului programabil trebuie
ndeplinite urmtoarele condiii:
1. Butonul B1 trebuie s fie apsat pentru a activa intrarea I0.0
2. Limitatorul de curs LC nu trebuie s fie acionat pentru a menine pe 0 intrarea I0.1
n acest caz, procesorul testeaz existena unui 1 logic la adresa I0.0 i existena unui 0
logic la adresa I0.1 a tabelului imagine al intrrilor. Dac ambele condiii logice sunt
ndeplinite, bobina Q0.0 va fi alimentat i se va nscrie un 1 logic la adresa corespunztoare a
tabelului imagine al ieirilor. Faza de actualizare a ieirilor din ciclul de scanare al
programului va determina activarea ieirii fizice echivalente i aprinderea becului conectat la
automatul programabil.
n a doua i a treia treapt a diagramei ladder, prin utilizarea instruciunilor contact normal
deschis, respectiv contact normal nchis, se va realiza testarea bitului Q0.0. Dac acest bit este
0, contactele din aceste trepte i vor menine starea i va exista continuitate doar prin cea de-a
treia treapt. Astfel, starea bobinelor din cele dou trepte va conduce la resetarea bitului intern
M0.0 i setarea bitului intern M0.1. n caz contrar, dac bitul testat (Q0.0) este 1, contactul

PROGRAMAREA AUTOMATELOR PROGRAMABILE

54

normal deschis din cea de-a doua treapt se va nchide determinnd setarea bitului M0.0, iar
contactul normal nchis din cea de-a treia treapt se va deschide i va cauza resetarea bitului
M0.1.
Dup cum se poate vedea bobinele M0.0 i M0.1 nu realizeaz comanda unor ieiri fizice
ci modific starea unor bii interni, care nu sunt mapai n tabelul imagine al ieirilor. Aceti
bii pot fi utilizai ulterior n program pentru a modela contactele unor relee auxiliare necesare
pentru realizarea de diferite intercondiionri cerute de schema de comand.

Fig. 4.24. Contacte normal deschise i normal nchise care realizeaz comanda
unei ieiri fizice i a unor bii interni

Bobin negat
Instruciunea bobin negat furnizeaz, n esen, opusul funcionalitii instruciunii
bobin. Cnd condiiile de intrare sunt evaluate ca fiind false, deci nu exist continuitate prin
treapt, aceast instruciune va pune pe 1 bitul de adresa specificat. Dac exist continuitate,
ca urmare a ndeplinirii condiiilor de intrare, bitul referit va fi pus pe 0.
De asemenea, cnd bobina negat este alimentat, contactele asociate acesteia i vor
pstra starea: contactele normal deschise rmn deschise, iar cele normal nchise rmn
nchise. Dac bobina negat nu este alimentat contactele i vor schimba starea: contactele
normal deschise se nchid, iar cele normal nchise se deschid. Cele dou cazuri sunt puse n
eviden n Fig. 4.25.

Fig. 4.25. Bobina negat alimentat determin pstrarea strii contactelor asociate(a);
Bobina negat nealimentat determin schimbarea strii contactelor asociate (b);

Deoarece nu este att de intuitiv, utilizarea bobinei negate poate introduce o serie de
dificulti n implementarea logicii de control. De asemenea, n majoritatea sistemelor de
automatizare poziia de siguran a ieirilor automatului programabil este cea n care acestea
sunt decuplate (0 logic). n general, condiiile de intrare n serie cu o bobin de ieire trebuie

PROGRAMAREA AUTOMATELOR PROGRAMABILE

55

s fie satisfcute pentru a permite activarea ieirilor. n cazul utilizrii bobinei negate pentru
ieire, satisfacearea condiiilor de intrare va avea drept efect decuplarea ieirilor, lucru care
contravine majoritii cerinelor de siguran n exploatare. De altfel, exist implementri ale
automatelor programabile care nici nu ofer aceast instruciune n setul de instruciuni ladder
disponibil pentru programare.

Bobin Set (Latch)


Bobina Set permite unei ieiri s rmn activat chiar i atunci cnd condiiile de intrare
care au determinat iniial activarea ieirii i schimb starea. Astfel, instruciunea bobin Set
va pune pe 1 bitul de la adresa specificat atunci cnd condiiile de intrare sunt evaluate ca
adevrate i menine starea acestui bit, chiar dac treapta ladder i pierde continuitatea logic
i bobina nu mai este alimentat.
Ieirea setat va rmne pe 1 logic pn va fi pus pe 0 cu ajutorul unei alte instruciuni
ladder (ex. bobin, bobin Reset etc.). Acest caz se exemplific n Fig. 4.26.

Fig. 4.26. Exemplu de utilizare al instruciunii bobin Set

Bobin Reset (Unlatch)


Instruciunea Bobin Reset determin dezactivarea ieirii (aducerea n stare 0 logic) de la
adresa specificat atunci cnd condiiile de intrare sunt evaluate ca adevrate i menine starea
resetat a ieirii, chiar dac treapta ladder i pierde continuitatea logic i bobina nu mai este
alimentat.
n general, instruciunile Bobin Set i Reset se utilizeaz mpreun. n Fig. 4.27 se
prezint un exemplu de utilizare al acestor instruciuni.

Fig. 4.27. Exemplu de utilizare al instruciunilor bobin Set i Reset

56

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Specificul instruciunilor bobin Set, respectiv bobin Reset ridic o serie de probleme
care necesit atenie. Astfel, se recomand, n programe, asocierea celor dou instruciuni.
Dac ntr-un program se utilizeaz o instruciune bobin set pentru o anumit ieire, atunci
programul respectiv trebuie s conin i instruciunea opus, bobina reset, pentru aceeai
ieire. De asemenea, o atenie deosebit trebuie acordat acestor instruciuni n situaia n care
ele fac referire la ieirile fizice ale sistemului. Dac sistemul implic existena unor msuri de
siguran, iar o bobin set este utilizat pentru o anumit ieire, simpla invalidare a condiiilor
de intrare nu va cauza resetarea ieirii respective. De aceea, toate condiiile care ar trebui s
menin o anumit ieire pe 0 trebuie s se regseasc pe o treapt avnd o instruciune bobin
reset la ieire.
Bobine cu memorare
Standardul IEC 61131-3 permite valorilor s fie definite ca fiind cu memorare. Valorile cu
memorare i menin valoarea i dup ntreruperea i reconectarea alimentrii automatului
programabil. Spre deosebire de acestea, valorile fr memorare iau valoarea iniial (de obicei
0) dup un ciclu de deconectare-reconectare ka sursa de alimentare.
Bobinele cu memorare sunt caracterizate de faptul c bitul corespunztor din memorie
rmne nemodificat dup ntreruperea i reconectarea alimentrii. Bobinele care intr n
aceast categorie sunt:
- Bobina cu memorie ( M )
Pune pe 1 bitul de la adresa specificat atunci cnd condiiile de intrare sunt
validate i pune pe 0 bitul corespunztor atunci cnd condiiile de intrare sunt
invalidate.
- Bobina Set cu memorie (Latch) ( SM )
Pune pe 1 bitul de la adresa specificat atunci cnd condiiile de intrare sunt
validate i nu face nimic atunci cnd condiiile de intrare sunt evaluate ca fiind
false.
- Bobina Reset cu memorie (Unlatch) ( RM )
Pune pe 0 bitul de la adresa specificat atunci cnd condiiile de intrare sunt
validate i nu face nimic atunci cnd condiiile de intrare sunt evaluate ca fiind
false.
n majoritatea automatelor programabile doar temporizatoarele, numrtoarele i aceste
bobine sunt elemente cu memorare. Totui, n cazul anumitor implementri ale automatelor
programabile (ex. Familia S7-200 de la Siemens) se pstreaz, n mod automat, coninutul
anumitor zone de memorie i dup deconectarea automatului programabil de la sursa de
alimentare. n acest fel, nu sunt necesare instruciuni speciale pentru a face datele permanente
la pierderea alimentrii.

Contact activ pe front pozitiv


Contactul activ pe front pozitiv asigur un impuls scurt atunci cnd condiiile din stnga
instruciunii se valideaz, adic realizeaz o tranziie de la starea logic 0 la starea logic 1.
Impulsul generat corespunde nchiderii contactului i va determina validarea prii drepte a
instruciunii pe durata unui ciclu de scanare. Altfel spus, contactul va asigura continuitate
logic, doar n ciclul de scanare curent, apoi se va deschide, chiar dac semnalul declanator,
asociat condiiilor de intrare din stnga instruciunii, a rmas n starea logic 1.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

57

Contactul se va nchide din nou pe durata unui ciclu de scanare al programului la apariia
unui nou front cresctor n condiiile de intrare. Fig. 4.28 evideniaz principiul de funcionare
al instruciunii contact activ pe front pozitiv.

Contact activ pe front negativ


Contactul activ pe front negativ are la baz acelai principiu de funcionare cu cel al
contactului activ pe front pozitiv.
Instruciunea va asigura continuitate n (va valida) partea sa dreapt pe durata unui ciclu
de scanare al programului pentru fiecare invalidare a condiiilor de intrare din partea sa
stng, adic pentru fiecare tranziie de la starea logic 1 la starea logic 0 a acestor condiii.
Fig. 4.28 evideniaz principiul de funcionare al instruciunii contact activ pe front negativ.

Fig. 4.28. Exemplu de utilizare al contactelor active pe front

ntruct instruciunile contact activ pe front pozitiv, respectiv negativ necesit modificarea
frontului fluxului de putere incident, primul ciclu de scanare din execuia programului nu va
putea detecta apariia tranziiilor, deoarece nu exist o stare anterioar la care s se poat
raporta. n consecin, aceste instruciuni nu au efect n primul ciclu program. n ciclurile
program ulterioare, aceast problem nu se va mai ntlni

Bobina activat pe front pozitiv


Instruciunea bobin activat pe front pozitiv va pune pe 1 bitul de la adresa specificat
atunci cnd condiiile de intrare, din stnga instruciunii, trec din starea invalidat n starea
validat. Bitul respectiv va fi meninut pe 1 pe durata unui singur ciclu de scanare al
programului, chiar dac starea condiiilor de intare rmne pe 1 logic.

Bobina activat pe front negativ


Instruciunea bobin activat pe front negativ va pune pe 1 bitul de la adresa specificat
atunci cnd condiiile de intrare, din stnga instruciunii, trec din starea validat n starea
invalidat. Bitul respectiv va fi meninut pe 1 pe durata unui singur ciclu de scanare al
programului, chiar dac starea condiiilor de intare rmne pe 0 logic.
n Fig. 4.29 se evideniaz principiul de funcionare al bobinelor activate pe front.

58

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.29. Exemplu de utilizare al bobinelor activate pe front

n general, contactele i bobinele care detecteaz tranziia n condiiile de intrare sunt


utilizate pentru diverse iniializri sau detectarea modificrii strii intrrilor (de exemplu:
detectarea apsrii unui buton).
Nu toate variantele de implementare ale automatelor programabile pun la dispoziia
utilizatorilor ambele categorii de instruciuni: contacte active pe front, respectiv bobine
activate pe front. De obicei, este implementat doar una din cele dou categorii de
instruciuni.
4.3.4 Instruciuni logice pe bit specifice automatelor programabile
Siemens S7-200
Automatele programabile Siemens implementeaz sub denumirea limbaj SIMATIC o
variant simplificat a limbajului ladder standardizat. Aceasta variant a limbajului ladder
respect cerinele impuse de standard, dar este orientat spre arhitectura specific a
automatelor programabile Siemens i spre simplificarea modalitii de programare a acestora.
n general, o parte a instruciunilor ladder disponibile vor avea aceeai form cu cea din
standard, altele vor avea anumite particularitati (mici modificari nesemnificative din punct de
vedere al funcionalitii, menite s simplifice realizarea programelor), iar unele vor
implementa functionaliti noi, specifice automatelor programabile pe care le deservesc.
Este cunoscut faptul c limbajul ladder standardizat este puternic tipizat, fiind orientat
spre o utilizare strict a tipurilor de date. Aceasta particularitate asigur, printre altele,
posibilitatea utilizrii unui limbaj comun pentru automate programabile cu arhitecturi diferite
provenind de la diveri producatori, dar i evoluia continu a acestui limbaj prin respectarea
specificaiilor din standard.
Diferitele modificri prezente n structura instruciunilor ladder SIMATIC vizeaz o
relaxare n ceea ce privete utilizarea diferitelor tipurilor de date, dar i reducerea numrului
de parametri ai anumitor instruciuni. De asemenea, introducerea unor instruciuni noi,
specifice automatelor programabile Siemens S7-200, construite pe baza specificaiilor din
standard contribuie la creterea versatilitii i eficienei limbajului SIMATIC n raport cu
limbajul ladder IEC 1131-3 n deservirea automatelor programabile Siemens S7-200. De
altfel, toate modificrile prezente n setul de instruciuni ladder SIMATIC au drept scop
uurarea sarcinii programatorului.
Tabelul 4.2 cuprinde prezentarea instruciunilor logice pe bit din limbajul ladder
SIMATIC i o scurt descriere a particularitailor acestor instruciuni n raport cu cele din IEC
1131-3.
Dup cum se poate vedea cu uurin din tabel, instructiunile ladder SIMATIC pstreaz
specificul instruciunilor ladder prezentate n paragraful anterior, modificrile prezente
neafectnd semnificativ principiile lor funcionale. O noutate, n ceea ce privete structura
diagramelor ladder i formatul instruciunilor de ieire, const n dispariia barei verticale de
alimentare aflat n extremitatea dreapt a diagramelor, a crei existen este considerat
implicit.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

59

Tabel 4.3. Instruciuni ladder SIMATIC

Denumire
Contact normal deschis
Contact normal nchis

Simbol

Descriere
Contactul se nchide
cnd bitul specificat
este 1
Contactul se deschide
cnd bitul specificat
este 0

Contact normal deschis


cu efect imediat

Contactul se nchide
cnd bitul specificat
este 1

Contact normal nchis


cu efect imediat

Contactul se deschide
cnd bitul specificat
este 0

Contact activ pe front


pozitiv

Contact activ pe front


negativ

Contact NOT

Bobina

Particulariti
Nu sunt. Funcionalitate
identic cu a instruciunilor
ladder IEC 1131-3
Instruciunile contact cu efect
imediat obin valoarea intrrii
fizice n momentul execuiei,
fr a se realiza o actualizare
prealabil
a
regitrilor
imagine ai intrrilor.
Contactul cu efect imediat nu
ine cont de ciclul de scanare
al programului pentru a
realiza
citirea
intrrilor.
Intrrile se citesc imediat.
Aceste
instruciuni
se
utilizeaz n mod exclusiv cu
bii asociai direct intrrilor
(I).

Contactul
asigur
continuitate pe durata
unui ciclu de scanare
pentru fiecare front
pozitiv al semnalului
Nu sunt. Funcionalitate
de intrare
identic cu a instruciunilor
Contactul
asigur
ladder IEC 1131-3
continuitate pe durata
unui ciclu de scanare
pentru fiecare front
negativ al semnalului
de intrare
Fluxul de putere incident va
Contactul
NOT fi ntrerupt;
schimb
starea Lipsa fluxului de putere
fluxului de putere incident,
va
determina
incident.
generarea unuia n partea
dreapt a contactului
nscrie o valoare nou Nu sunt. Funcionalitate
la adresa specificat identic cu a instruciunii
n
funcie
de ladder IEC 1131-3
condiiile de intrare

PROGRAMAREA AUTOMATELOR PROGRAMABILE

60

Tabel 4.3. Instruciuni ladder SIMATIC (continuare)

Denumire

Simbol

Bobina Set

Bobina Reset

Bobina set cu efect


imediat

Bobina reset cu efect


imediat

Descriere
Pune pe 1 un numr
de N bii ncepnd de
la adresa specificat
(bit)
Pune pe 0 un numr
de N bii ncepnd de
la adresa specificat
(bit)

Particulariti
Se pot seta simultan pn la
128 bii
Se pot reseta simultan pn la
128 bii

n
momentul
execuiei
acestor instruciuni, noua
valoare este nscris att la
ieirea fizic, ct i n
locaiile corespunztoare ale
regitrilor imagine ai ieirilor.
Pune imediat pe 0 un Se pot modifica simultan
numr de N bii pn la 128 bii.
instruciuni
se
ncepnd de la adresa Aceste
utilizeaz
n
mod
exclusiv
cu
specificat (bit)
bii asociai ieirilor (Q)
Pune imediat pe 1 un
numr de N bii
ncepnd de la adresa
specificat (bit)

4.3.5 Implementarea comenzilor cu ajutorul instruciunilor logice pe bit


Exist numeroase situaii n care comanda ieirilor automatelor programabile se realizeaz
ca urmare a ndeplinirii unor combinaii ale condiiilor de intrare. Urmtoarele exemple
prezint comenzi simple implementate prin operaii booleene i realizate cu ajutorul
automatelor programabile.
Pentru familiarizarea cititorilor cu seria de automate programabile Siemens S7-200,
exemplele urmtoare vor fi realizate utiliznd limbajul ladder SIMATIC.
Funcii logice elementare
Exemplu: Operaia I. n Fig. 4.30-a se prezint o situaie n care ieirea circuitului
(becul) poate fi alimentat doar atunci cnd cele dou comutatoare, normal deschise, sunt
nchise. Aceast situaie corespunde unei implementri a operaiei logice I, creia i
corespunde poarta logic din Fig. 4.30-b i tabelul de adevr din Fig. 4.30-c.

Fig. 4.30. Ciruit I (a); Poart logic I (b); Tabel de adevr (c)

n cadrul diagramelor ladder, operaia logic I se realizeaz prin conectarea n serie a


contactelor. Acest lucru este pus n eviden prin diagrama ladder din Fig. 4.31-a, dar i prin

PROGRAMAREA AUTOMATELOR PROGRAMABILE

61

diagrama de timp asociat din Fig. 4.31-b. n aceast figur etichetele asociate instruciunilor
ladder corespund unor denumiri simbolice alocate intrrilor i ieirii automatului programabil.

Fig. 4.31. Diagram ladder care implementeaz operaia logic I (a); Diagram de timp (b)

Exemplu: Operaia SAU. n Fig. 4.32-a se prezint un circuit electric a crui ieire este
alimentat cnd comutatorul A sau comutatorul B se nchide. Acest circuit descrie aceeai
funcionalitate cu cea a unei pori logice SAU (Fig. 4.32-b). Tabelul de adevr asociat acestei
operaii logice se prezint n Fig. 4.32-c.

Fig. 4.32. Ciruit SAU (a); Poart logic SAU (b); Tabel de adevr (c)

Operaia logic SAU se implementeaz n cadrul diagramelor ladder prin conectarea n


paralel a contactelor aceleiai trepte. Astfel, cile alternative de continuitate, obinute ca
urmare a desprinderii unor ramuri paralele dintr-o treapt ladder conduc la realizarea
operaiilor logice SAU. Fig. 4.33-a pune n eviden realizarea operaiei logice SAU n
limbajul ladder. Diagrama de timp asociat este prezentat n Fig. 4.33-b.

Fig. 4.33. Diagram ladder care implementeaz operaia logic SAU (a); Diagram de timp (b)

Exemplu: Complementul. n Fig. 4.34-a se prezint un circuit electric comandat printr-un


buton normal nchis. Prin acionarea butonului circuitul se deschide realizndu-se astfel
ntreruperea curentului. Funcionarea acestui circuit se poate asocia unei pori inversoare (Fig.
4.34-b), caracterizat prin faptul c produce o ieire n lipsa unei intrri i nu produce ieire n
cazul existenei unei intrri (Fig. 4.34-c).

62

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.34. Ciruit inversor (a); Poart inversoare (b); Tabel de adevr (c)

Funcionalitatea asociat operaiei logice de negare se implementeaz n cazul


diagramelor ladder prin utilizarea contactului normal nchis asociat intrrii n serie cu bobina
de ieire. O alt variant de implementare presupune utilizarea instruciunilor contact normal
deschis i contact NOT n serie cu bobina de ieire.(Fig. 4.35-a)

Fig. 4.35. Diagrame ladder care implementeaz complementul logic (a); Diagram de timp (b)

Exemplu: Operaia I-NU. Operaia logic I-NU, descris prin tabelul de adevr din
Fig. 4.36-c, se obine prin conectarea ieirii unei pori logice I la un inversor (Fig. 4.36-a).
Un circuit echivalent se obine lund n considerare axiomele logicii booleene (formulele
DeMorgan: A B = A + B ). Acest circuit, prezentat n Fig. 4.36-b produce acelai rezultat la
ieirea unei pori logice SAU care are la intrare semnalele iniiale negate.

Fig. 4.36. Poarta logic I-NU (a); Circuit logic echivalent (b); Tabel de adevr (c)

n Fig. 4.37-a se prezint dou variante de implementare ale operaiei logice I-NU n
limbajul ladder. Cele dou diagrame sunt echivalente i se obin pornind de la circuitele logice
din figura anterioar. Diagrama de timp din Fig. 4.37-b descrie funcionarea acestor diagrame.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

63

Fig. 4.37. Diagrame ladder care implementeaz operaia I-NU (a); Diagram de timp (b)

Exemplu: Operaia SAU-NU. Operaia logic SAU-NU, avnd tabelul de adevr din Fig.
4.38-c, se obine prin conectarea ieirii unei pori logice SAU la un inversor (Fig. 4.38-a). Un
circuit echivalent se obine lund n considerare axiomele logicii booleene (formulele
DeMorgan: A + B = A B ). Acest circuit, prezentat n Fig. 4.38-b produce acelai rezultat la
ieirea unei pori logice I care are la intrare semnalele iniiale negate.

Fig. 4.38. Poarta logic SAU-NU (a); Circuit logic echivalent (b); Tabel de adevr (c)

n Fig. 4.39-a se prezint dou variante de implementare ale operaiei logice I-NU n
limbajul ladder. Cele dou diagrame sunt echivalente i se obin pornind de la circuitele logice
din figura anterioar. Diagrama de timp din Fig. 4.39-b descrie funcionarea acestor diagrame.

Fig. 4.39. Diagrame ladder care implementeaz operaia SAU-NU (a); Diagram de timp (b)

64

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Exemplu: Operaia SAU-EXCLUSIV. Operaia logic SAU-EXCLUSIV are tabelul de


adevr din Fig. 4-40-c i se caracterizeaz prin faptul c va produce o ieire cnd doar una
dintre cele dou intrri este 1, n celelalte cazuri ieirea fiind 0. Circuitul care implementeaz
operaia logic SAU-EXCLUSIV se poate obine prin utilizarea porilor I, SAU i a porilor
inversoare, dup cum se poate vedea n Fig. 4-40-b. Simbolul utilizat n circuitele logice
pentru a desemna poarta logic SAU-EXCLUSIV este prezentat n Fig. 4.40-a.

Fig. 4.40. Poarta logic SAU-EXCLUSIV (a); Circuit logic echivalent (b); Tabel de adevr (c)

n Fig. 4.41-a se prezint o diagram ladder care implementeaz operaia logic SAUEXCLUSIV. Cnd ambele intrri sunt inactive, nici una din ramurile treptei nu se valideaz i
astfel ieirea rmne 0. Acelai lucru se ntmpl i n cazul n care ambele intrri sunt active
n acelai timp. Cnd doar intrarea A este activat se valideaz ramura superioar a treptei
ladder, alimentnd astfel bobina de ieire care aduce ieirea n starea logic 1. Prin activarea
intrrii B se valideaz ramura inferioar a treptei ladder, producnd acelai efect asupra ieirii.
n acest exemplu, intrrile A i B au fiecare asociate cte dou contacte: unul normal nchis i
cellalt normal deschis. ntruct, instruciuniloe contact fac referire la locaii de un bit din
memoria automatului programabil, mai exact din zona de memorie alocat regitrilor imagine
ai intrrilor, n programele ladder se pot utiliza orict de multe contacte care fac referire la
aceeai adres. Diagrama de timp asociat acestui exemplu se prezint n Fig. 4.41-b.

Fig. 4.41. Diagrama ladder care implementeaz operaia SAU-EXCLUSIV (a); Diagrama de timp (b)

Sisteme logice de comand cu funcii de memorare


Exist numeroase situaii n care este necesar meninerea strii de alimentare a unor
ieiri, chiar i dup ncetarea comenzii. Un exemplu concludent este cel al unui motor care se
pornete prin apsarea unui buton normal deschis cu revenire. Dup apsarea butonului,
contactele acestuia vor reveni la starea iniial deschis, dar motorul va trebui s funcioneze
pn la apsarea unui buton de oprire.
Un circuit care ndeplinete aceast funcionalitate poart denumirea de circuit de
meninere, care odat activat i pstreaz starea pn la apariia unei noi comenzi.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

65

Exemplu: Circuit de meninere. n Fig. 4.42-a se prezint o diagram ladder care


implementeaz funcionalitatea unui circuit de meninere. nchiderea contactului de intrare A
determin alimentarea bobinei de ieire. Alimentarea bobinei produce att activarea ieirii
fizice a automatului programabil, ct i nchiderea contactului care face referire la bitul de
ieire respectiv.
Prin punerea n paralel a contactului asociat bitului de ieire cu cel asociat intrrii A se
realizeaz o operaie logic SAU, care are ca efect pstrarea alimentrii ieirii chiar i atunci
cnd intrarea A nu mai este acionat i contactul ei se deschide Singura cale de a ntrerupe
alimentarea ieirii din acest circuit presupune deschiderea contactului normal nchis asociat
intrrii B.

Fig. 4.42. Variante de implementare n limbjaul ladder ale unui circuit de meninere

n Fig. 4.42-b se prezint o alt variant de implementare a circuitului de meninere sub


forma unei diagrame ladder n care se utilizeaz pentru ieire instruciuni bobin Set i bobin
Reset.
Exemplu: Comanda unui motor. Una din cele mai uzuale aplicaii ale unui circuit de
meninere l reprezint comanda unui motor. Astfel, n acest exemplu, se va considera cazul
unui motor comandat prin dou butoane cu rol de pornire i oprire. Se vor mai utiliza dou
lumini indicatoare care vor semnaliza starea motorului. n Fig. 4.43-a se prezint structura
simplificat a sistemului de comand cu automat programabil, iar n Fig. 4.43-b se prezint
programul n limbaj ladder, care realizeaz comanda motorului.

Fig. 4.43. Structura sistemului de comand (a); Diagrama ladder de command


a motorului i a lmpilor de semnalizare (b)

Analiznd circuitul de meninere din acest exemplu (prima treapt a diagramei ladder) se
observ cu uurin o diferen fa de circuitul de meninere din exemplul anterior (Fig. 4.42-

PROGRAMAREA AUTOMATELOR PROGRAMABILE

66

a). Diferena const n utilizarea unui contact normal deschis pentru Stop, n locul celui
normal nchis, care aprea n exemplul anterior. Acest lucru, corelat cu utilizarea butonului de
oprire normal nchis la intrarea automatului programabil contribuie la asigurarea unei
funcionri sigure a sistemului1.
Din punct de vedere funcional, la nceputul execuiei programului, contactul I0.1 va fi
nchis. La apsarea butonului de pornire Start, contactul I0.0 se va nchide, se va valida
treapta ladder, bobina de ieire Q0.0 va fi alimentat, motorul va porni, iar contactele asociate
acestei bobine de ieire vor fi acionate (cele normal deschide se nchid, iar cele normal
nchise se deschid). Acest lucru va determina pstrarea alimentrii ieirii Q0.0 chiar i dup
revenirea la starea iniial a butonului de pornire Star). n acelai timp contactele asociate
ieirii Q0.0 vor realiza comanda celor dou lmpi indicatoare prin intermediul bobinelor de
ieire Q0.1 i Q0.2.
Pentru a opri motorul va trebui apsat butonul de oprire Stop, ale crui contacte fizice se
vor deschide. n program, acest lucru va determina deschiderea contactului I0.1, ntreruperea
alimentrii bobinei Q0.0 i implicit a motorului. De asemenea, n a doua treapt a
programului, bobina Q0.1 va fi alimentat, iar aprinderea lmpii indicatoare va marca starea
oprit a motorului. n cead de-a treia treapt, bobina Q0.2 nu va fi alimentat, iar lampa
indicatoare a strii pornti a motorului va fi stins.
Ieiri multiple
Diagramele ladder permit conectarea mai multor instruciuni de ieire la aceeai treapt. n
Fig. 4.44 se prezint o asemenea situaie cu diagrama de timp asociat. Este vorba despre
dou bobine de ieire conectate la acelai contact. La nchiderea contactului de intrare ambele
bobine vor fi alimentate i se vor produce ieiri.

Fig. 4.44. Diagram ladder cu dou ieiri

n cazul unei configuraii a unei trepte ladder, cum e cea din Fig. 4.45, ieirea A se va
activa la apariia intrrii A, iar ieirea B se va activa doar atunci cnd ambele intrri A i B se
produc.

Fig. 4.45. Diagram ladder cu dou intrri i dou ieiri


1

Paragraful Programarea intrrilor normal nchise descrie pe larg modalitatea n care aceast metod
contribuie la asigurarea securitii n operare.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

67

Exemplu: Ieiri secveniale. Pornind de la diagrama ladder din Fig. 4.45 se poate realiza o
diagram ladder care va realiza comanda secvenial a unui set de ieiri. Comanda n secven
a ieirilor din Fig. 4.46 va fi n strns corelaie cu succesiunea n care se nchid contactele de
intrare. Astfel, ieirile A, B i C se vor activa n aceast ordine, doar dac intrrile de
comand se nchid pe rnd respectnd aceeai succesiune A, B i C. Dac intrarea A nu se
nchide, nicio ieire nu poate fi activat. Cnd se nchide intrarea A, se activeaz ieirea A.
Apoi, cnd se nchide intrarea B, se activeaz ieirea B. n cele din urm, cnd se nchide
intrarea C, se activeaz ieirea C.

Fig. 4.46. Ieiri secveniale

Implementarea comenzilor logice decizionale (combinaionale)


Orice funcie logic combinaional se poate implementa cu uurin sub forma unei
diagrame ladder programate. Pentru a realiza acest lucru se va lua n considerare modul de
reprezentare al operaiilor logice elemenetare n limbajul ladder. De asemenea, cunoaterea
axiomelor logicii booleene i a diferitelor metode de minimizare a funciilor logice
combinaionale poate conduce, n anumite cazuri, la simplificarea diagramei ladder rezultate.
Un exemplu n acest sens este urmtorul.
Exemplu: Comand logic decizional. Funcia logic combinaional prezentat n Fig.
4.47 i descris prin ecuaia logic (4.1) se poate transpune cu uurin n diagrama logic
ladder din Fig. 4.48. Pentru realizarea diagramei ladder echivalente se face apel la exemplele
de reprezentare n limbaj ladder a operaiilor logice elementare. Aceste exemple au fost
prezentate ntr-un paragraf anterior.

) (

F = A B C + B B A + C

(4.1)

Fig. 4.47. Funcie logic combinaional

PROGRAMAREA AUTOMATELOR PROGRAMABILE

68

Fig. 4.48. Diagrama ladder echivalent funciei logice combinaionale (4.1)

Analiznd relaia (4.1) se constat cu uurin c aceasta nu este minimizat. Prin


aplicarea axiomelor logicii booleene aceast relaie poate fi adus la o form mai simpl.
Minimizarea este pus n eviden n ecuaiile (4.2). Forma minimal a funciei logice permite
att simplificare circuitului logic, ct i simplificarea diagramei ladder echivalente, dup cum
se poate vedea n Fig. 4.49.

) (

F = A B C + B B A + C

) (

F = A + B + C + B B AC

F = A B AC + B B AC + C B AC + B B AC

(4.2)

F = B AC + B AC + 0 + B AC
F = B AC

Fig. 4.49. Circuitul logic minimizat (a); Diagrama ladder echivalent funciei logice minimizate (b)

4.3.6 Evaluarea instruciunilor Ladder

Modul n care se face evaluarea instruciunilor reprezint un aspect important de


considerat n realizarea programelor, ntruct acesta definete ordinea n care procesorul
execut instruciunile diagramei ladder.
Procesorul va ncepe execuia programului Ladder dup prima etap a ciclului de scanare,
n care se citete starea tuturor intrrilor i se salveaz n regitrii imagine ai intrrilor.
Execuia instruciunilor ncepe cu prima treapt ladder i continu pe rnd, de sus n jos, cu
fiecare treapt care urmeaz. Pe msur ce procesorul execut programul, acesta va examina
pe rnd coninutul adresei specificate de fiecare instruciune n parte, n vederea determinrii
continuitii logice a treptei evaluate. Chiar dac instruciunile de ieire ale unei trepte
afecteaz trepte anterioare, prin intermediul variabilelor referite, procesorul nu va reveni la

PROGRAMAREA AUTOMATELOR PROGRAMABILE

69

execuia acestora, efectul instruciunii de ieire fcndu-se simit abia n ciclul de scanare
urmtor.
Ordinea de evaluare a instruciunilor este pus n eviden n exemplul urmtor din Fig.
4.50. Astfel, contactul normal deschis I0.0, asociat de exemplu unui buton, va activa prima
treapt. Dac instruciunea contact normal deschis I0.0 va fi evaluat ca adevrat (dac
butonul este apsat) atunci instruciunea de ieire Q0.0 va fi activat. n treaptele urmtoare,
contactul Q0.0 va activa ieirea Q0.1, contactul Q0.1 va activa ieirea Q0.2, iar contactul Q0.2
va activa ieirea Q0.3. n acest fel, efectul nchiderii butonului se va propaga, n acelai ciclu
program, prin toate treptele. Avnd n vedere c procesorul va actualiza ieirile fizice ale
automatului programabil la terminarea ciclului program, dac la ieirile Q0.0-Q0.3 ar fi
conectate patru becuri indicatoare, atunci acestea s-ar aprinde simulatan, cu toate c
instruciunile de ieire asociate aparin unor trepte ladder diferite.

Fig. 4.50. Diagrama ladder n care toate ieirile sunt activate n acelai ciclu program

Fig. 4.51 evideniaz aceeai logic de funcionare cu cea din Fig. 4.50, dar, de aceast
dat, treptele ladder sunt puse n ordine invers.
Presupunnd c butonul I0.0 este apsat n primul ciclu program, procesorul va trebui s
parcurg patru cicluri program pentru a activa ieirea Q0.3. Modul n care procesorul
realizeaz evaluarea instruciunilor n acest caz este urmtorul:
- n prima trept, procesorul examineaz coninutul adresei Q0.2 unde gsete 0 logic,
n consecin ieirea Q0.3 rmne inactiv.
- n a doua treapt, contactul Q0.1 este deschis, deoarece la adresa specificat bitul este
0, i astfel ieirea Q0.2 rmne inactiv.
- n a treia treapt, contactul Q0.0 este deschis, deoarece la adresa specificat bitul este
0, i astfel ieirea ieirea Q0.1 rmne inactiv.
- n a patra treapt, contactul I0.0 se nchide ca urmare a apsrii butonului i astfel
ieirea Q0.0 este pus pe 1.
n cel de-al doilea ciclu program, dac butonul de intrare rmne apsat, ieirea Q0.1 va fi
pus pe 1 deoarece la sfritul primului ciclu program a fost setat bitul de la adresa Q0.0.
Aceast logic va continua pn n cel de-al patrulea ciclu program, cnd toate ieirile vor
avea starea logica 1. Ieirile vor fi aduse la 0 n aceeai succesiune, odat ce butonul de intrare
va fi eliberat.

70

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.51. Diagrama ladder n care toate ieirile sunt activate succesiv cicluri program consecutive

Funcionarea unui circuit, cum e cel din Fig. 4.51, este aproape imposibil de observat cu
ochiul liber, avnd n vedere c procesorul execut un ciclu program n cateva milisecunde.
Toate becurile conectate la cele patru ieiri ar prea aprinse simultan, chiar dac acest lucru sa produs de fapt n cicluri de scanare diferite. Singura posibilitate de a observa ieirile
presupune rularea programului ciclu cu ciclu. Acest mod de funcionare al automatului
programabil permite rularea, sub controlul utilizatorului, a unuia sau a mai multor cicluri
program pe rnd. n general, acest mod de funcionare se utilizeaz pentru testarea i
depanarea programelor. Rulnd un singur ciclu program, procesorul va citi toate intrrile, va
executa logica, va actualiza ieirile i va atepta lansarea n execuie a urmtorului ciclu
program, fcnd astfel posibil observarea fiecrei ieiri n parte.
Ceea ce este important de reinut n cazul unui program ladder este urmtorul lucru:
pentru ca ieirea unei trepte s aib efect asupra altei trepte n acelai ciclu de scanare al
programului, aceasta trebuie programat naintea celei din urm (cauza trebuie programat
nainte efectului). Dac nu se face acest lucru pot aprea probleme cauzate de ordinea de
execuie a instruciunilor. Un asemenea caz este pus n eviden n Fig. 4.52, unde ieirea
Q0.0 nu va fi niciodat resetat. La nchiderea contactului I0.0 se va produce setarea bitului
Q0.0. Pentru a reseta acest bit contactul M0.0 trebuie s se nchid. La nchiderea contactului
I0.1, datorit utilizrii contactului activ pe front pozitiv, bitul M0.0 va fi setat doar pe durata
unui singur ciclu de scanare al programului (cel curent), situaie care nu va permite resetarea
ieirii Q0.0 n ciclul de scanare urmtor.

Fig. 4.52. Contactul activ pe front nu va reseta niciodat ieirea Q0.0

O problem asemntoare, n care starea anumitor ieiri nu corespunde logicii dorite,


poate se apar din cauza repetrii instruciunilor bobin care fac referire la aceeai ieire.
Pentru a ilustra aceast situaie nedorit se consider Fig. 4.53-a. n acest exemplul se
poate observa c n cele dou trepte ladder instruciunile bobin fac referire la aceeai adres.
Astfel, n urma evalurii primei trepte, bitul de ieire va fi pus pe 1, iar la evaluarea celei de a
doua trepte aceeai ieire va fi pus pe 0, realizndu-se practic suprascrierea rezultatului
obinut din evaluarea primei trepte.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

71

Aceast problem apare n general datorit tendinei pe care o au utilizatorii, de a realiza


diagrama ladder prin considerarea, ntr-o prim etap a condiiilor de intrare, iar abia apoi a
ieirii activate de acestea. Acest mod de a realiza diagramele, dei este mai intuitiv, poate
conduce la erori n logica de comand. De aceea se recomand ca iniial s se realizeze o
analiz a problemei n care s se determine prima dat ieirea care trebuie comandat, iar apoi
s se determine toate condiiile care duc la activarea ieirii respective. n acest fel se poate
evita repetarea instruciunilor bobin care fac referire la aceeai ieire i n consecin,
evitarea acestui tip de probleme.

Fig. 4.53. Diagram ladder cu ieire repetat (a); Diagrama ladder corectat (b)

Astfel, pentru exemplul considerat, dac toate condiiile din cele dou trepte sunt necesare
pentru a activa ieirea respectiv, atunci prin plasarea acestora n paralel se poate rezolva
problema aprut. Aceast situaie este evideniat n Fig. 4.53-b
Dup cum s-a menionat ntr-unul din paragrafele anterioare, fluxul invers de putere prin
ramurile diagramelor ladder programate nu este permis, ntruct procesorul realizeaz
evaluarea instruciunilor ntr-o ordine, bine stabilit: de sus n jos i de la stnga spre dreapta.
Nu acelai lucru se ntampl n cazul diagramelor logice ladder cu relee utilizate la
reprezentarea schemelor electrice, n care fluxul de putere poate parcurge un contact i de la
dreapta spre stnga. Dac logica de control implementat prin program necesit ntradevr
existena unui flux invers de putere prin circuit, atunci o posibil soluie pentru aceast
problem presupune introducerea unei trepte suplimentare care s poat fi evaluat de
procesor n modul obinuit, de la stnga spre dreapta, i care s nlocuiasc poriunea de
circuit care era supus apariiei unui flux invers de putere. n Fig. 4.54 sunt prezentate cele
dou situaii.

72

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.54. Flux invers (a); Flux invers corectat (b)

4.3.7 Programarea intrrilor normal inchise

Majoritatea exemplelor prezentate pn acum considerau la intrarea automatelor


programabile echipamente a cror stare normal era cea deschis. Aceste exemple s-au utilizat
pentru a evita apariia confuziilor. Totui, n funcionarea automatelor programabile se
ntlnesc i intrri normal nchise (ex. butoane care prin apsare se deschid).
Modul n care se realizeaz programarea intrrilor normal nchise ridic anumite
dificulti de nelegere, pe care acest paragraf va ncerca s le clarifice. n acest sens, s
considerm exemplul urmtor. S presupunem c se dorete implementarea cu ajutorul
automatului programabil a unei funcionaliti identice cu cea a circuitului din Fig. 4.55. n
aceste condiii, programul de control trebuie s asigure pentru sistemul cu automat
programabil acelai comportament cu cel al sistemului cablat: dac butonul nu este apsat,
becul este aprins; dac butonul este apsat, becul este stins.

Fig. 4.55. Circuit cablat

La prima vedere, ar prea c soluia prezentat n Fig. 4.56 este cea care rezolv aceast
problem. Din pcate, la o analiz mai amnunit se dovedete c nu aceasta este soluia
corect.
n Fig. 4.56, adresa de intrare asociat butonului (I0.0) este utilizat de instruciunea
contact normal nchis pentru a comanda becul de la ieirea automatului programabil prin
intermediul bobinei de ieire Q0.0.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

73

Fig. 4.56. Soluia incorect. Implementarea logicii de control cu butonul programat


printr-un contact normal nchis

La pornirea automatului programabil, n prima faz a ciclului program, se realizeaz


citirea strii intrrilor i salvarea acesteia n regitrii imagine ai intrrilor. Dac butonul de la
intrare nu este apsat (Fig. 4.57-a), procesorul va citi starea intrrii I0.0 ca fiind 1 logic i o va
salva n memorie. n timpul execuiei programului, procesorul va evalua instruciunea contact
normal nchis, i ntruct la adresa specificat de aceasta (I0.0) se gsete 1 logic, contactul se
va deschide, oprind continuitatea prin treapta ladder. Ca urmare, bobina de ieire nu va fi
alimentat, bitul referit de aceasta va fi 0, iar becul conectat la ieirea automatului va fi stins.
Dac butonul este apsat (Fig. 4.57-b), circuitul extern de la intrarea automatului se va
deschide, iar starea intrrii I0.0 va fi 0. n faza de execuie a programului, evaluarea
instruciunii contact normal nchis va duce la validarea treptei (deorece bitul referit este 0,
contactul normal nchis I0.0 rmne nchis). Astfel, bobina de ieire va fi alimentat, iar becul
va fi aprins.

Fig. 4.57. Funcionarea sistemului din Fig. 4.56 i cile de continuitate asociate cazurilor:
buton neapsat (a); buton neapsat (b)

Analiznd modul de funcionare al programului de control prezentat anterior se poate


constata c acesta nu respect principiul de funcionare al circuitului iniial din Fig. 4.55.
Soluia corect de implementare presupune utilizarea unui contact normal deschis pentru
intrarea la care este conectat butonul normal nchis. Aceast soluie este prezentat n Fig.
4.58 i va fi discutat n continuare.

Fig. 4.58. Soluia corect. Implementarea logicii de control cu butonul programat


printr-un contact normal deschis

74

PROGRAMAREA AUTOMATELOR PROGRAMABILE

n cazul programrii intrrii normal nchise printr-o instruciune contact normal deschis,
funcionarea sistemului este dup cum urmeaz. Dac butonul nu este apsat (Fig. 4.59-a),
intrarea I0.0 va avea starea 1 logic. n faza de execuie a programului, contactul normal
deschis care face referire la adresa I0.0 se va nchide i va permite alimentarea bobinei de
ieire Q0.0, becul de la ieire fiind aprins. Dac butonul este apsat (Fig. 4.59-b), starea
intrrii I0.0 va fi 0 logic, iar contactul normal deschis care face referire la adresa I0.0 va
rmne deschis. Astfel, nu va exista continuitate prin treapta ladder, bobina de ieire Q0.0 nu
va fi alimentat, iar becul de la ieire va rmne stins.

Fig. 4.59. Funcionarea sistemului din Fig. 4.58 i cile de continuitate asociate cazurilor:
buton neapsat (a); buton neapsat (b)

Soluia corect de programare a intrrilor normal nchise, din Fig. 4.58, scoate n eviden
un lucru important: Pentru ca un echipament normal nchis conectat la intrarea unui automat
programabil s aib comportamentul specific echipamentelor normal nchise, atunci acesta
trebuie programat printr-o instruciune contact normal deschis.
n alt ordine de idei, dup cum s-a vazut n cele dou cazuri considerate anterior, prin
utilizarea unei singure configuraii hardware a sistemului de control s-au obinut dou moduri
de funcionare diferite, doar ca urmare a programrii intrrii I0.0 iniial printr-un contact
normal nchis (Fig. 4.56 i Fig. 4.57), iar apoi printr-un contact normal deschis (Fig. 4.58 i
Fig. 4.59). De altfel, o parte din flexibilitatea de care dau dovad automatele programabile se
datoreaz tocmai faptului c: orice intrare a automatului programabil conectat la un
echipament extern, indiferent c acesta este normal nchis sau normal deschis, poate fi
programat att prin instruciuni contact normal nchis, ct i prin instruciuni contact
normal normal deschis n funcie de aplicaie.
Trebuie totui reinut faptul c alegerea instruciunilor utilizate la programarea intrrilor
este independent de tipul echipementelor fizice conectate la automatul programabil, dar este
decisiv pentru algoritmul de control rezultat.
Exemplu: Programarea unui buton cu dou contacte. Se consider circuitul electric din
Fig. 4.60, n care cele dou becuri sunt comandate de cele dou contacte ale aceluiai buton.
Acest exemplu prezint modul n care se realizeaz programarea acestui buton, n vederea
implementrii unei funcionaliti identice cu cea a circuitului electric din Fig. 4.60, n funcie
de modul de conectare al butonului la automatul programabil.
Se vor analiza urmtoarele trei cazuri:
- ambele contacte ale butonului sunt conectate la intrri distincte ale automatului
programabil;
- doar contactul normal deschis este conectat la o intrare a automatului programabil;

PROGRAMAREA AUTOMATELOR PROGRAMABILE

75

doar contactul normal nchis este conectat la o intrare a automatului programabil

Fig. 4.60. Circuit electric comandat de un buton cu dou contacte

n Fig. 4.61 se prezint implementarea funcionalitii circuitului electric cu ajutorul unui


sistem cu automat programabil, la care se consider ambele contacte ale butonului conectate
la dou intrri distincte ale automatului. Analiznd sistemul din Fig. 4.61 se constat c atunci
cnd butonul nu este apsat, contactul A este deschis, iar contactul B este nchis. Aceasta este,
de altfel, i starea normal a acestui buton (contactul A al butonului este normal deschis, iar
contactul B este normal nchis). Astfel, n faza de citire a intrrilor, la adresele I0.0 i I0.1 din
regitrii imagine ai intrrilor se va stoca un 0 logic, respectiv un 1 logic, valori binare
corespunztoare strii contactelor. Prin utilizarea n program a instruciunilor contact normal
deschis, n faza de execuie programului va realuiza invalidarea primei trepte ladder i
validarea celei de-a doua. n aceste condiii, doar bobina Q0.1 va fi alimentat i implicit
becul 2 va fi aprins, cellalt rmnnd stins. La apsarea butonului, contactul A se nchide, iar
contactul B se deschide. Starea intrrilor automatului va deveni: 1 logic pentru I0.0 i 0 logic
pentru I0.1. Contactul normal deschis I0.0 se va nchide, validnd prima treapt, iar contactul
normal deschis I0.2 se va deschide, invalidnd a doua treapt. n consecin, becul 1 este
aprins, iar becul 2 este stins. De asemenea, programul de control realizat respect
funcionalitatea specificat prin circuitul electric din Fig. 4.60

Fig. 4.61. Ambele contacte ale butonului conectate la intrri distincte ale automatului programabil:
buton neapsat (a); buton neapsat (b)

Fig. 4.62 prezint cazul conexiunii contactului normal deschis (contactul A) la automatul
programabil. Avnd n vedere c orice intrare (normal deschis sau normal nchis) poate fi
programat s aib comportamentul dorit de utilizator, prin considerarea a dou instruciuni,
una contact normal deschis, iar cealalt contact normal nchis, care fac referire la aceeai
adres se obine funcionalitatea impus de circuitul electric iniial. Din punct de vedere
funcional, dac butonul nu este apsat, contactul A, conectat la automatul programabil,
rmne deschis, starea intrrii I0.0 va fi 0 logic, contactele de pe cele dou trepte ladder i

76

PROGRAMAREA AUTOMATELOR PROGRAMABILE

pstreaz starea validnd doar ce-a de-a doua treapt i determinnd aprinderea becului 2.
Prin apsarea butonului, contactul A se nchide, starea intrrii I0.0 va fi 1 logic, contactul
normal deschis de pe prima treapt se nchide, iar contactul normal nchis de pe a doua treapt
se deschide. n consecin, prima treapt va fi validat i va determina aprinderea becului 1,
iar cea de-a doua treapt i va pierde continuitatea logic, becul 2 fiind stins.

Fig. 4.62. Contactul normal deschis al butonului conectat la intrarea automatului programabil:
buton neapsat (a); buton neapsat (b)

Fig. 4.63 prezint cazul conexiunii contactului normal nchis (contactul B) la automatul
programabil. n aceast variant de implementare becul 1 este comandat prin intermediul unei
instruciuni contact normal nchis, iar becul 2 printr-o instruciune contact normal deschis,
ambele instruciuni contact fcnd referire la aceeai adres de intrare. n timpul funcionrii,
contactul B al butonului asigur alimentarea intrrii I0.0 atunci cnd butonul nu este apsat.
Astfel, la adresa I0.0 din regitrii imagine ai intrrilor se va gsi un 1 logic. n program,
contactul normal nchis va fi deschis, iar contactul normal deschis va fi nchis ct timp
butonul nu este apsat. Drept urmare, va exista continuitate logic doar prin cea de-a doua
treapt ladder, iar becul 2 va fi aprins. Prin apsarea butonului, contactul B al butonului se
deschide, iar la adresa I0.0 din memorie se va gsi 0 logic. n program, cele dou contacte
care fac referire la aceast adres i vor pstra starea i astfel, doar prima din cele dou trepte
ladder va fi validat, iar becul 1 se va aprinde, becul 2 fiind stins.

Fig. 4.63. Contactul normal nchis al butonului conectat la intrarea automatului programabil:
buton neapsat (a); buton neapsat (b)

PROGRAMAREA AUTOMATELOR PROGRAMABILE

77

Exemplul anterior pune n eviden faptul c indiferent de tipul echipamentului (normal


deschis sau normal nchis) conectat la intrarea unui automat programabil, acesta poate fi
programat astfel nct s se comporte att ca i un contact normal deschis, ct i ca un contact
normal nchis.
Totui, din motive de singuran, se recomand ca echipamentele de intrare normal
nchise conectate la automatul programabil s se programeze prin instruciuni contact normal
deschis. O alt recomandare privete intrrile normal deschise care nu trebuie programate prin
contacte normal nchise, mai ales dac acestea sunt utilizate pentru a ntrerupe continuitatea
prin circuit atunci cnd intrrile se nchid (echipamentele de intrare sunt acionate).
Exemplu: Comanda unui motor. Pentru a pune n eviden recomandrile de siguran
referitoare la modul programare al intrrilor automatului programabil, n continuare, va fi
reluat problema comenzii unui motor cu ajutorul unui circuit de meninere. Se va studia
funcionarea sistemului n dou cazuri, corespunztoare utilizrii unui buton de oprire de tip
normal nchis, respectiv de tip normal deschis. Se va acorda o atenie deosebit funcionrii n
condiii de siguran a sistemului i vor fi pus n eviden soluia corect de implementare a
acestei probleme.

n Fig. 4.64 se prezint sistemul de comand n cazul utilizrii unui buton de oprire (Stop)
normal nchis cu rol de a ntrerupe alimentarea motorului. Programul de control al
automatului programabil ndeplinete rolul unui circuit de meninere.

Fig. 4.64. Sistemul de comand al unui motor cu buton de oprire normal nchis,
programat printr-un contact normal deschis

n Fig. 4.65 se evideniaz etapele ntlnite n funcionarea acestui sistem:


a) La apsarea butonului de pornire (Start), contactul normal deschis corespunztor
intrrii I0.0 la care este conectat acest buton se va nchide. Contactul normal
deschis corespunztor intrrii I0.1 la care este conectat butonul normal nchis de
oprire, va fi nchis i el, realizndu-se astfel o cale de continuitate prin treapta
ladder care va determina alimentarea bobinei de ieire Q0.0 i implicit alimentarea
motorului.
b) Contactul normal deschis Q0.0 din a doua ramur a treptei ladder furnizeaz
mecanismul de interblocare al sistemului. Odat alimentat bobina de ieire, acest
contact se va nchide, i va permite pstrarea alimentrii ieirii, chiar i n
condiiile eliberrii butonului Start.
c) Motorul va putea fi oprit doar prin apsarea butonului Stop, care va determina
ntreruperea continuitii prin treapta ladder ca urmare a deschiderii contactului
normal deschis I0.1.
d) Prin utilizarea unui buton de oprire normal nchis, apariia unui defect, cauzat de
ntreruperea legturii fizice ntre butonul de oprire i intrarea automatului
programabil, va fi perceput de automatul programabil ca o apsare obinuit a

78

PROGRAMAREA AUTOMATELOR PROGRAMABILE

butonului de oprire. Astfel, chiar i n cazul nefavorabil al apariiei defectului n


conexiunea butonului de oprire cu automatul programabil, motorul va putea fi
oprit. Acest lucru este posibil ca urmare a utilizrii unui buton de oprire normal
nchis programat printr-un contact normal deschis.

Fig. 4.65. Sistemul de comand al unui motor cu buton de oprire normal nchis
programat prin contact normal deschis
(a) pornirea motorului prin apsarea butonului Start;
(b) meninerea alimentrii motorului ca urmare a interblocrii;
(c) oprirea motorului prin apsarea butonului Stop;
(d) oprirea motorului la apariia defectului (Caz favorabil).

PROGRAMAREA AUTOMATELOR PROGRAMABILE

79

Aceai logic de funcionare se poate obine i n cazul utilizrii pentru ntreruprerea


alimentrii motorului a unui buton de oprire (Stop) normal deschis care s fie programat prin
intermediul unei instruciuni contact normal nchis. n Fig. 4.66 se prezint acest caz de
implementare a sistemului de comand al unui motor, n care programul de control din
automatul programabil ndeplinete rolul unui circuit de meninere.

Fig. 4.66. Sistemul de comand al unui motor cu buton de oprire normal deschis,
programat printr-un contact normal nchis

n Fig. 4.67 se evideniaz etapele ntlnite n funcionarea acestui sistem:


a) La apsarea butonului de pornire (Start), contactul normal deschis corespunztor
intrrii I0.0 la care este conectat acest buton se va nchide. Butonul de oprire
(Stop) nefiind acionat va determina meninerea strii normal nchise a contactului
I0.1. Aceste condiii determin validarea treaptei ladder i alimentarea bobinei de
ieire Q0.0. Drept urmare, motorul pornete.
b) i n aceast variant de implementare a sistemului contactul normal deschis Q0.0
din a doua ramur a treptei ladder furnizeaz mecanismul de interblocare al
sistemului. Odat alimentat bobina de ieire, acest contact se va nchide, i va
permite pstrarea alimentrii ieirii, chiar i n condiiile eliberrii butonului Start.
c) Motorul va putea fi oprit doar prin apsarea butonului de oprire (Stop), care se va
nchide. Utiliznd, n program, instruciunea contact normal nchis pentru intrarea
I0.1, apsarea butonului Stop va determina deschiderea contactului respectiv care
va ntrerupe continuitatea treptei ladder. n consecin, motorul se oprete.
d) n cazul apariiei unui defect, ca urmare a ntreruperii legturii fizice dintre butonul
de oprire i automatul programabil (ex. firul de legtur este tiat accidental),
motorul nu va mai putea fi oprit, dect prin decuplarea ntregului sistem de la
alimentare. Acest lucru se datoreaz faptului c, la apariia defectului respectiv,
automatul programabil va sesiza la intrarea I0.1 starea logic 0, care pstreaz
neschimbat starea contactului normal nchis I0.1 din program, respectiv
alimentara bobinei de ieire Q0.0.

80

PROGRAMAREA AUTOMATELOR PROGRAMABILE

Fig. 4.67. Sistemul de comand al unui motor cu buton de oprire normal deschis
programat printr-un contact normal nchis
(a) pornirea motorului prin apsarea butonului Start;
(b) meninerea alimentrii motorului ca urmare a interblocrii;
(c) oprirea motorului prin apsarea butonului Stop;
(d) motorul continu s funcioneze la apariia defectului (Situaie periculoas).

Din motive de siguran n exploatare, datorit situaiei periculoase care poate s-i fac
apariia (Fig. 4.67-d), se recomand evitarea unei configuraii a sistemului de comand care
utilizeaz pentru oprire un buton normal deschis programat prin intermediul unei instruciuni
contact normal nchis.

PROGRAMAREA AUTOMATELOR PROGRAMABILE

4.3.8 Timere IEC


4.3.9 Timere S7-200
4.3.10 Numaratoare

81

S-ar putea să vă placă și