Documente Academic
Documente Profesional
Documente Cultură
Fig.1. Exemplu de extindere a numărului de contacte serie prin folosirea unui releu intern
Eliminarea situaţiilor de tip „nested input”, se face ţinând cont de proprietăţile algebrei binare.
În exemplul din figura de mai jos, contactul C a ajuns într-o poziţie „nested” ca urmare a aplicării
factorului comun între termenii BC şi DC. Prin reintroducerea termenului C în paranteză se obţine o
nouă schemă ce poate fi implementată fără probleme.
AP – Curs 4 Page 1 of 16
Eliminarea contactelor verticale se poate face prin introducerea unor noi căi paralele în diagrama
iniţială, astfel încât, în diagrama modificată să se regăsească toate căile posibile de semnal, de la L1
spre L2. În exemplul prezentat în fig. Xx, faţă de căile paralele iniţiale, AD şi BE, sunt introduse
încă două trasee noi, BCD respectiv ACE, pentru a acoperi toate traseele posibile de la stânga la
dreapta rung-ului. Şi acest mod de lucru este bazat tot pe proprietăţile algebrei binare, se poate
demonstra că expresia algebrică a schemei din dreapta este echivalentă cu expresia schemei iniţiale.
AP – Curs 4 Page 2 of 16
- În cadrul legăturilor serie, contactele se ordonează de la stânga la dreapta în ordinea
crescătoare a probabilităţilor de a fi găsite adevărate (primul contact are probabilitatea cea
mai mică iar ultimul probabilitatea cea mai mare)
Procedând astfel, viteza de execuţie creste pentru că, după ce găseşte prima condiţie falsă,
procesorul opreşte căutarea pe respectiva legătură serială, nemaifiind necesară testarea
celorlalte contacte.
AP – Curs 4 Page 3 of 16
Pentru schema din figura 6a, funcţionarea este următoarea:
- La prima scanare după ce intrarea 10 devine ON,
Rung 1: Bobina internă 100 este activată (ON)
Rung 2: Bobina internă 101 este activată deoarece contactul 100 este ON de
la evaluarea rung-ului anterior;
Rung 3: Bobina internă 102 este activată deoarece contactul 101 este ON de
la evaluarea rung 2;
Rung 4: Bobina internă 103 este activată deoarece contactul 102 este ON de
la evaluarea rung 3
După evaluarea rung 4, automatul trece la etapa de reactualizare a ieşirilor
fizice, conform informaţiilor scrise în timpul evaluării programului. Deşi în
memorie, adresele 100, 101, 102, 103 au fost scrise la momente de timp
diferite, activarea ieşirilor se face simultan, la finele primei scanări;
- La scanările 2, 3, 4, funcţionarea este similară cu prima scanare;
- La scanarea cu numărul 5, intrarea 10 este OFF, valoare ce provoacă scrierea succesivă a
valorii de 0, pentru adresele 100, 101, 102, 103. La finele scanării 5, toate ieşirile sunt
trecute în zero
Pentru schema din figura 6b, funcţionarea este următoarea:
- La prima scanare după ce intrarea 10 devine ON:
Rung 1: Bobina 103 rămâne OFF deoarece contactul 102 este OFF;
Rung 2: Bobina 102 rămâne OFF deoarece contactul 101 este OFF;
Rung 3: Bobina 101 rămâne OFF deoarece contactul 100 este OFF;
Rung 4: Bobina 100 devine ON deoarece contactul 10 este ON;
După rung 5, sunt reactualizare ieşirile: 100=ON iar restul sunt în OFF;
- La scanarea 2
Rung 1: Bobina 103 rămâne OFF deoarece contactul 102 este OFF;
Rung 2: Bobina 102 rămâne OFF deoarece contactul 101 este OFF;
Rung 3: Bobina 101 devine ON deoarece contactul 100 este ON de la
scanarea anterioara, cu numărul 1;
Rung 4: Bobina 100 rămâne ON deoarece contactul 10 este ON;
După rung 5, reactualizare ieşiri: 100=ON, 101=ON iar restul sunt în OFF;
- La scanarea 3
Rung 1: Bobina 103 rămâne OFF deoarece contactul 102 este OFF;
Rung 2: Bobina 102 devine ON deoarece contactul 101 este ON de la
scanarea cu numărul 2;
Rung 3: Bobina 101 rămâne ON deoarece contactul 100 este ON;
Rung 4: Bobina 100 rămâne ON deoarece contactul 10 este ON;
După rung 5, reactualizare ieşiri: 100=ON, 101=ON, 102=ON, 103=OFF;
AP – Curs 4 Page 4 of 16
- La scanarea 4
Rung 1: Bobina 103 devine ON deoarece contactul 102 este ON de la
scanarea cu numărul 3;
Rung 2: Bobina 102 rămâne ON deoarece contactul 101 este ON;
Rung 3: Bobina 101 rămâne ON deoarece contactul 100 este ON;
Rung 4: Bobina 100 rămâne ON deoarece contactul 10 este ON;
După rung 5, reactualizare ieşiri: 100=ON, 101=ON, 102=ON, 103=ON;
Observaţii:
- Pentru diagrama din figura 6a, activarea celor 4 ieşiri se face simultan, după prima scanare;
- Pentru schema din figura 6b, activarea celor 4 ieşiri se face după ce au trecut 4 scanări;
- Timpul scurt necesar unei scanări (circa 10ms) nu ne permite să vedem diferenţele de timp
între cele 4 activări;
- Pentru acţiuni de tip: Latch/Unlatch, Set/Reset, One Shot, declanşate de tranziţiile unui
contact, ordinea de activare a ieşirilor este vitală.
Spre exemplu, acţiunea de unlatch pentru bobina 100 nu va avea loc niciodată pentru
diagrama din figura 7a, deoarece validarea bobinei 11 este valabilă doar pe durata unui scan
şi este amplasată după ce condiţia de unlatch a fost deja verificată şi găsită falsă. Ordinea
corectă este prezentată în figura 7b.
Fig.7: Influenţa ordinii în care sunt aşezate rung-urile pentru o comandă Latch/Unlatch
Ca regulă generală, se poate afirma că: „O ieşire dintr-un rung A are efect asupra altei rung B, în
acelaşi scan, numai dacă rung A este amplasata înaintea rung B”
Precizăm că intrările sensibile la tranziţia pozitivă, respectiv negativă, au ca efect activarea bobinei
o singură dată pe durata unui proces de scanare, aşa cum se prezintă în figura 8.
AP – Curs 4 Page 5 of 16
3. Instrucţiuni pentru controlul programului
Instrucţiunile pentru controlului modului de execuţie a programului, în mod similar programării
clasice, sunt folosite pentru:
- Realizarea de programe modulare, uşor de proiectat şi de verificat;
- Reducerea timpului de execuţie a programelor;
- Utilizarea mai eficientă a memoriei automatului.
Instrucţiunile de control sunt similare limbajelor de programare (instrucţiuni de salt, apeluri de
subrutine, etc.) sau similare modului de operare a schemelor cu relee (Master Control Relay).
Ca mod de lucru, instrucţiunile de control au ca scop îngrădirea/izolarea unui grup de rung-uri din
diagrama Ladder şi lansarea acestora în execuţie numai dacă anumite condiţii sunt îndeplinite.
Modul de acţiune al instrucţiunilor de control este prezentat în figura 9.
AP – Curs 4 Page 6 of 16
Fig. 10: Lista instrucţiunilor pentru controlul programelor
b) Soluţia 2:
- Criteriile ce trebuie îndeplinite sunt folosite pentru activarea unui releu de control, denumit
Master Control Relay (MCR)
- Toate releele ce trebuie influenţate de criteriile iniţiale vor fi alimentate prin contactele
releului MCR, aşa cum se arată în schema de mai jos
AP – Curs 4 Page 7 of 16
Fig. 11: Exemple de scheme implementate hardware ce folosesc relee MCR
Utilizarea releului MCR este foarte utilă în schemele practice cu relee, deoarece numărul de
contacte pe care trebuie să le aibă releul MCR este mult redus faţă de metoda anterioară.
În cazul aplicaţiilor cu AP, există instrucţiuni ce permit simularea internă a unui releu MCR,
folosind principiul ilustrat în figura de mai jos.
AP – Curs 4 Page 8 of 16
o ieşirile cu retenţie (bobine latch/unlatch, numărătoare, etc.) nu sunt afectate, rămân
în ultima lor stare
o se face un salt până la prima linie de program de după instrucţiunea END
AP – Curs 4 Page 9 of 16
Pentru început trebuie să determinăm care este porţiunea de circuit controlată de releul MCR. Din
analiza schemei se constată că MCR controlează liniile 9, 10 si 11 (reprezentate cu albastru în
figura 14b. Liniile 12, 13, 14, deşi sunt desenate sub MCR, ele nu sunt influenţate de acesta, din
punct de vedere electric aceste linii sunt alimentate prin linia 7 (înainte de MCR).
O problemă ce trebuie rezolvată este dată de amplasarea contactului CR4:
- dacă CR4 ar fi scos din schemă, întreaga linie cu numărul 9 ar fi sub influenţa MCR
- în prezenţa lui CR4, o porţiune din linia 9 (formată din CR3, TDR1, SOL1) este dublu
influenţată: prin linia 7 respectiv prin linia 9.
- Se constată că SOL1 poate fi activat chiar şi în cazul în care MCR este dezactivat, din acest
motiv secţiunea CR3÷SOL1 din linia 9 nu trebuie cuprinsă în zona izolată controlată de
MCR;
AP – Curs 4 Page 10 of 16
Introducerea CR1000 ne permite să lăsăm în afara zonei izolate începutul liniei 7 şi contactul CR4.
c) Jump (JMP),
Este o instrucţiune ce operează similar celei folosită în limbajele de programare a calculatoarelor.
Instrucţiunea JMP este considerată o instrucţiune de ieşire pe un bit. Pentru a putea lucra corect,
instrucţiunea JMP trebuie să fie urmată de o LBL (etichetă).
a) Dacă condiţiile de intrare din instrucţiunea JMP sunt îndeplinite,
- programul de lucru al automatului execută un salt înainte, la eticheta LBL ce are aceeaşi
adresă (referinţă) cu bobina instrucţiunii JMP;
- instrucţiunea LBL trebuie să fie după cea de JMP, deoarece se acceptă doar salturi înainte;
- toate instrucţiunile dintre liniile JMP şi LBL sunt omise, lasă ieşirile în starea lor anterioară
execuţiei saltului (practic nu sunt afectate de salt)
- eticheta LBL nu participă la verificarea continuităţii logice a liniei în care este amplasată
- starea timerelor şi a numărătoarelor nu este afectată
AP – Curs 4 Page 11 of 16
Fig. 16: Modul de lucru al instrucţiunii JMP
b) Dacă condiţiile de intrare din instrucţiunea JMP sunt false,
- saltul nu este permis;
- toate instrucţiunile de după linia cu JMP sunt evaluate normal
Obs:
- un program poate avea mai multe instrucţiuni de salt
- o etichetă poate fi folosită de mai multe instrucţiuni de salt
AP – Curs 4 Page 12 of 16
d) Go to Subroutine (GOSUB),
GOSUB este o instrucţiune de ieşire la nivel de bit folosită pentru scrierea modulară a programelor.
De regulă subrutinele sunt folosite pentru scrierea porţiunilor de program ce se repetă de mai multe
ori pe parcursul execuţiei programului.
Pentru unele implementări, în loc de GOSUB se foloseşte notaţia JSB (Jump to Subroutine)
Pentru unele AP, subrutinele se scriu într-o zonă rezervată/dedicată de memorie, amplasată după
terminarea programului (cazul figurii 18a). Fiecare subrutină trebuie să aibă etichete unice şi
instrucţiuni proprii de întoarcere, RET.
AP – Curs 4 Page 13 of 16
Aplicaţii simple
1. Oscilatorul
Un oscilator se poate obţine destul de uşor pe baza unui releu intern şi a unui contact normal închis
aparţinând aceluiaşi releu. Modul de conectare este prezentat în figura de mai jos,
Funcţionare:
- iniţial, înainte de pornirea programului, toate releele interne sunt nealimentate (în starea OFF), aceasta
înseamnă că avem valoarea TRUE pentru contactul normal închis CR1;
- la prima scanare a intrărilor, contactul CR1 este înlocuit cu TRUE, ceea ce determină alimentarea
bobinei CR1;
- alimentarea bobinei determină deschiderea contactului CR1, dar acest lucru nu va fi sesizat de AP
decât în următorul proces de scanare a intrărilor, până atunci bobina rămâne activă;
- la a doua scanare a intrărilor, CR1 este găsit FALSE şi provoacă dezactivarea bobinei CR1;
- la scanarea cu numărul 3, contactul CR1 este TRUE şi activează bobina;
Funcţionarea se bazează pe inversiunea logică introdusă de contactul normal închis precum şi pe diferenţa de
timp între două scanări succesive ale intrărilor. Frecvenţa de oscilaţie va fi egală cu frecvenţa cu care se fac
scanările.
AP – Curs 4 Page 14 of 16
O ieşire permanent în starea ON se obţine legând în paralel două contacte ale aceluiaşi releu: unul normal
închis iar celălalt normal deschis (aşa cum se arată în figura b). Pentru această conexiune, condiţiile de
intrare sunt satisfăcute în permanenţă, fapt ce face ca bobina contactului CR2 sa fie permanent ON.
Obs:
- releul CR2 întră în starea ON numai după evaluarea liniei în care se găseşte CR2, până în acel moment
el este în starea OFF;
- dacă CR2 este amplasat la finele programului, CR2 devine ON începând cu scanarea numărul 2.
o un contact normal închis al lui CR2, poate condiţiona anumite acţiuni să fie luate doar pentru
prima scanare a programului,
o un contact normal deschis al lui CR2 poate condiţiona alte acţiuni să fie active după prima
scanare a programului.
- contactele CR2 pot fi implicate în scheme de semnalizare a situaţiilor de cădere a alimentării AP.
AP – Curs 4 Page 15 of 16
- la evaluarea rung 2, IN1 este ON (timpul scurs între evaluarea rung1 la evaluarea rung 2 este foarte
mic şi putem considera că IN1 este în continuare în starea ON), CR 2 devine ON;
- la următoarea scanare, pe rung 1, contactul normal închis CR2 este OFF (CR2 este trecut în ON din
scanarea anterioară) CR 1 devine OFF;
- CR2 devine OFF la prima scanare după ce IN1 devine OFF;
Concluzii:
- ieşirea One-Shot este CR1;
- intrarea de declanşare (IN1), poate fi de la o intrare fizică a automatului, de la un releu intern sau de la
un releu de ieşire;
- durata activă este egală cu timpul necesar unei scanări;
- pentru rearmare, IN1, trebuie să treacă prin OFF şi apoi să redevină ON
- acest tip de circuit este util în implementarea bistabililor de tip T sau JK
AP – Curs 4 Page 16 of 16