Documente Academic
Documente Profesional
Documente Cultură
REPREZENTAREA CU RELEE
A VARIABILELOR LOGICE
2
2.1. Relee
Fig. 2.1.
45
http://slidepdf.com/reader/full/curs-programare-plcpdf 1/44
7/18/2019 CURS programare PLC.pdf
Butoanele
sunt acţionate manual (spre deosebire de relee),
starea complementară celei normale menţinându-se cât timp butonul
este apăsat.
Starea contactului unui releu se menţine cât timp este alimentată
cu tensiune bobina releului.
comutaContactele
curenţi dereleului
valorise pot
maiafla în circuite
mari sau maide mici
tensiune
în mare şi pot
funcţie de
construcţia acestora. Spre exemplu contactele unui releu suportă
curenţi de ordinul a 20 mA, iar contactele altui releu pot comuta
curenţi de până la 5 A. Există relele care au contacte pentru curen ţi
mici şi contacte („de forţă”) pentru curenţi de valori mari.
De fapt, aparatul care are rolul de a comuta, prin închiderea şi
deschiderea circuitului pe baza unei comenzi (de natură electrică),
curenţi de valori mari se numeşte contactor (care poate fi
electromagnetic sau static).
În aceeaşi ordine de idei aparatul care închide şi deschide
circuite electrice care nu sunt parcurse de curent se numeşte
separator. El are rolul de a specifica faptul c ă circuitul este sub
tensiune sau nu.
De regulă, un circuit electric care suferă dese intervenţii (spre
exemplu pentru a fi recondiţionat) se cuplează la sursa de energie prin
intermediul unui separator urmat de un contactor. Pornirea – oprirea
maşinii (circuitului) se face cu contactorul. În caz de intervenţii la
instalaţia electrică se opreşte maşina cu contactorul şi apoi se deschide
Fig. 2.2.
46
http://slidepdf.com/reader/full/curs-programare-plcpdf 2/44
7/18/2019 CURS programare PLC.pdf
În figura 2.2 sunt prezentate simbolurile folosite pentru
contactele releului, ND – normal deschise şi NI – normal închise.
Comanda unui releu constă, în cazul releelor electromagnetice
în conectarea bobinei acestuia la sursa de alimentare sau în conectarea
tensiunii
În de comand
cazul ă în cazul
releului releelor electronice.
electromagnetic (din figura 2.1) comanda se
face prin închiderea comutatorului din circuitul bobinei releului, iar în
cazul releului electronic (cu optotriac din figura 2.3) comanda se face
prin acţionarea întrerupătorului din circuitul de alimentare al LED-
ului. [22]
Fig. 2.3.
47
http://slidepdf.com/reader/full/curs-programare-plcpdf 3/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.4.
În figura 2.5 este prezentat circuitul Ş I cu două intrări. Becul
luminează (este în starea „1” logic) dacă ambele contacte A şi B sunt
închise, realizând astfel conectarea becului la liniile de alimentare cu
energie electrică. [23]
Fig. 2.5.
48
http://slidepdf.com/reader/full/curs-programare-plcpdf 4/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.6.
http://slidepdf.com/reader/full/curs-programare-plcpdf 6/44
7/18/2019 CURS programare PLC.pdf
sincronizare).
Bobina releului este alimentată din tensiunea de sincronizare
(impulsurile din figura 2.8) după redresare şi filtrare. Dacă programul
s-a oprit lipseşte tensiunea de alimentare a releului şi contactul releului
se închide semnalizând starea sistemului sau alimentând circuitele de
protecţie.
Fig. 2.9.
închide şi becul
normal închis verde semnaleaz
se deschide şi becul roăş upornirea
se stinge.corectă. Contactul
Fig. 2.10.
Pentru a inversa sensul de rotaţie al unui motor se impune
schimbarea sensului de rotaţie al câmpului magnetic învârtitor produs
de înf ăşurările statorice ale maşinii. După cum se ştie rotaţia câmpului
magnetic se produce în sensul succesiunii fazelor tensiunii de
alimentare a circuitului statoric ( R – S – T) . Pentru a schimba sensul
de rotaţie al rotorului (antrenat în mişcare de rotaţie de câmpul
magnetic învârtitor) este suficient să se schimbe ordinea alimentării cu
tensiune a două din înf ăşurările statorice.
Pentru sensul direct ( în sensul de rotaţie al acelor ceasornicului)
fazele R, S, T sunt conectate la înf ăşurările statorice notate cu 1, 2, 3
52
http://slidepdf.com/reader/full/curs-programare-plcpdf 8/44
7/18/2019 CURS programare PLC.pdf
( astfel 1-R, 2-S, 3-T) de către contactele releului M 1 , iar pentru
rotirea în sens invers releul M 2 conectează înf ăşurările motorului
astfel 1-R, 3-S, 2-T (faza 2 a fost inversată cu faza 3).
Fig. 2.11.
normalConstat
închis ăalmceluilalt
că fiecare
releubobin
( M 2ăa cu
de M
releu are,
1 şi M 1aîn
cuserie,
M 2 ).un contact
Contactul
serie se numeşte contact de interblocare şi are rolul de a nu permite
alimentarea cu tensiune a celuilalt releu (când unul dintre ele este sub
tensiune). Previne astfel manevrele greşite de conectare inversă a
alimentării motorului când acesta se află în mişcare de rotaţie
(operatorul apasă greşit butonul de inversare a sensului).
Conectarea releului de schimbare a sensului se impune s ă se
facă numai după ce motorul s-a oprit.
Se impune această condiţie, pentru a nu solicita nici sarcina mecanic ă,
dar nici înf ăşurările maşinii – dacă rotorul maşinii are un sens de
rotaţie şi câmpul magnetic învârtitor alt sens, cresc solicitările
mecanice, creşte valoarea curentului prin înf ăşurări şi creşte
temperatura înf ăşurării.
Contactele M1b, M2b, aflate, în paralel, cu butoanele de sens se
numesc contacte de automen ţ inere.
Butoanele de sens conectează alimentarea pe bobina releului, cât timp
sunt apăsate, după care circuitul se deschide şi bobina releului este
53
http://slidepdf.com/reader/full/curs-programare-plcpdf 9/44
7/18/2019 CURS programare PLC.pdf
de 12 Vcc
Observ Vccc, ă5, Vcc,
, 24ăm faţă 100-120 Vac, 200-240
de controlerele de Vac, ş.a.).controlerele
început,
actuale au pe lângă intrări de tip contact (de releu) atât intrări cât şi
ieşiri analogice. O parte din intrările analogice sunt folosite pentru a
prelua semnale de la traductoare în scopul controlului şi protecţiei
instalaţiei şi o mică parte pentru a implementa funcţia de reglare a unor
parametri (spre exemplu debit, temperatură, nivel ş.a.).
De remarcat faptul că tipul intrării şi domeniul valorilor
semnalului de intrare pot fi stabilite prin program, la ini ţializarea
controlerului.
controlat, fluxul
Drept de materie
elemente de sau fluxul
execu ţie de energie
uzuale suntîntr-un proces.
motoare electrice,
maşini hidraulice, maşini termice, contactoare statice, dispozitive
mecanice ş.a.
Pentru prelucrarea numerică (de către microprocesorul
controlerului) a mărimilor analogice, după adaptarea domeniului
semnalul de intrare (în sensul c ă semnalul de la intrarea analogică este
convertit – amplificat sau atenuat – într-un semnal care să se încadreze
în domeniul intrării convertorului analog – numeric CAN) acesta este
transformat într-un semnal numeric de către CAN.
timp prestabilite;
număr ătoare (care numără spre exemplu de câte ori s-a
•
modificat o intrareprestabilit
ajuns la o valoare şi generează un semnal când numărătorul a
ă), regiştrii şi memorii;
• oscilatoare, care permit sincronizarea în timp a unor activităţi;
• comparatoare, care permit compararea a dou ă semnale şi
evidenţierea egalităţii sau inegalităţii acestora;
• sisteme de întrerupere a unui program şi comutarea pe o altă
secvenţă în cazul unor evenimente deosebite (spre exemplu în
caz de defect al sistemului, în caz de nefuncţionare a unui
traductor ş.a.).
56
http://slidepdf.com/reader/full/curs-programare-plcpdf 12/44
7/18/2019 CURS programare PLC.pdf
ale unor producători diferiţi pot comunica între ele, datorită faptului că
au protocoale de comunicaţie diferite.
Notă: Prin termenul de protocol de comunica ţ ie se înţelege o
specificaţie a modului de codare a mesajelor schimbate între două
entităţi. De fapt nu se referă numai la codarea datelor, ci şi la modul în
care- decurge dialogul.
E1 trimite Spreo cerere
către E2 exemplu:
de conectare (connect request ),
- E2 către E1 un răspuns la cerere prin care acceptă conectarea,
- în continuare se transferă date de la E1 la E2 şi invers,
- după ce E1 a terminat de transferat datele trimite c ătre E2 o
cerere pentru eliberarea conexiunii (disconnect request ),
- E2 trimite o confirmare (disconnect confirmation) şi legătura
este eliberată, canalul de comunicaţie putând fi utilizat de alte
echipamente.
ce ordine se
vehiculate pe transmit
liniile de datele, câteş.a.).
conectare, date, ce semnifica ţie au semnalele
Cea mai simplă interfaţă este RS232 care are avantajul că poate
fi conectată atât la PLC cât şi la orice calculator care dispune de un
port serial. Dezavantajele interfeţei RS232 se referă la viteza de
transfer de maximum 19,2 kbps şi la distanţa mică dintre echipamente
( de maximum 15 m).
Datorită faptului că echipamentele lucrează în timp real,
comunicarea trebuie să decurgă în deplină siguranţă, f ără erori şi cu
întârzieri cât mai mici. Din acest motiv se adoptă protocoale de
comunicaţie elaborate de diferite firme.
Spre exemplu protocolul MAP al firmei General Motors este folosit în
U.S.A. iar în Europa sunt folosite Profibus (cu posibilitatea de
transmisie până la 1,2 km, rată de transfer de 9,6,.., 500 kbps, pentru
maximum 32 staţii) , Modbus Plus (cu posibilitatea de transmisie până
la 450 m, rată de transfer de 1 Mbps la care se pot conecta maximum
32 staţii) , FIP Bus, ş.a. [5]
57
http://slidepdf.com/reader/full/curs-programare-plcpdf 13/44
7/18/2019 CURS programare PLC.pdf
extins
la intrăă pentru
rile şi testarea func
la ieşirile ţionării corecte
sistemului. a echipamentelor
Pe lâng conectate
ă testarea hardware-ului
sistemului, sistemele evoluate au posibilitatea de a verifica
funcţionarea corectă a ansamblului de programe (soft-ul sistemului)
prin rularea controlată a unor programe de autotestare, în sensul că se
generează intrări impuse şi se verifică corectitudinea comenzilor.
O altă clasă de programe de diagnoză au drept scop ajustarea
parametrilor fizici ai sistemelor de măsur ă în scopul compensării
erorilor.
Spre exemplu, datorită temperaturii mediului ambiant, parametrii
adaptorului se modifică (f ără voia noastră). În aceste condiţii semnalul
numeric, corespunzător mărimii măsurate va fi mai mic sau mai mare
decât cel real. Controlerul generează la intrare un semnal care conduce
la o valoare numerică cunoscută. Dacă se obţine altă valoare,
controlerul modifică factorul de amplificare al adaptorului pentru a
obţine valoarea numerică corectă. Această caracteristică a sistemului
de a-şi modifica parametrii de funcţionare sau structura internă în
scopul micşorării efectului perturbaţiilor se numeşte adaptabilitate.
Elaborarea
calculator programului pentru controler se face pe un
oarecare utilizând:
- scheme de conexiuni (leadder logic diagram), similare celor din
figurile 2.9, 2.11;
- pe baza descrierii schemelor logice cu ajutorul unui program
specific controlerului, folosind instrucţiuni specifice;
- pe baza descrierii schemelor logice într-un limbaj de
programare (spre exemplu în C) acceptat de controler;
- pe baza unor limbaje standardizate pentru controlere, de cele
mai multe ori folosindu-se specificaţiile IEC 1131.
Pentru programe simple sau pentru modificarea unui program existent
în memoria PLC se poate folosi interfaţa locală a controlerului.
Introducerea programului pentru controler, în memoria acestuia, se
face prin intermediul unui conector, cu care este prev ăzut sistemul
PLC ( de regulă interfaţa asigură un transfer serial al datelor, fiind de
tipul RS232 sau USB - Universal Serial Bus ). Prin intermediul
conectorului elementul de programare (un laptop, un calculator sau un
circuit specializat de programare) are acces la o magistrală.
58
http://slidepdf.com/reader/full/curs-programare-plcpdf 14/44
7/18/2019 CURS programare PLC.pdf
Limbajele folosite de controlere nu au fost încă standardizate,
fiecare producător folosind alte instrucţiuni, care de fapt au acelaşi
scop – de implementare, prin intermediul controlerului, a unor func ţii
logice.
Controlerele
evoluate, maiînperformante
spre exemplu limbajul C. acceptă instrucţiuni în limbaje
Sunt speranţe de unificare a limbajelor de programare a PLC
prin intermediul standardului IEC 1131 elaborat de Comisia
Internaţională de Electrotehnică IEC ( International Electrotechnical
Commision) – vezi paragraful următor. De fapt producătorii de
echipamente PLC nu au renunţat în totalitate la sistemul propriu de
programare, ci au introdus suplimentar posibilitatea programării pe
baza specificaţiilor standardului menţionat. Această facilitate este
indicată prin compatibilitatea echipamentului cu standardul ( IEC 1131
compliant ).
Nu trebuie confundată funcţia de comunicare cu funcţia de
programare a controlerului. Cele două sunt separate atât fizic (pentru
ca să se evite reprogramarea accidentală a controlerului) cât şi
funcţional.
Pentru programarea PLC şi testarea funcţionalităţii există
soft-uri dedicate (CAD) puse la dispoziţie de producătorii de
echipamente. Spre exemplu “ PicoSoft” cu ajutorul căruia se pot
desena schemele şi se poate simula funcţionarea este pus la dispoziţie
gratuit
desc (pentru
ărcat platforme
de la adresa [25].Windows) de firma Allen-Bradley. Poate fi
Tabelul 1.
59
http://slidepdf.com/reader/full/curs-programare-plcpdf 15/44
7/18/2019 CURS programare PLC.pdf
Tabelul 2.
Fig. 2.12.
60
http://slidepdf.com/reader/full/curs-programare-plcpdf 16/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.13.
61
http://slidepdf.com/reader/full/curs-programare-plcpdf 17/44
7/18/2019 CURS programare PLC.pdf
Pentru
dou a aduce circuitul în starea iniţială se impune a debloca cele
ă butoane.
Constatăm că toată logica de comandă, inclusiv releele sunt
implementate de către PLC. În exteriorul acestuia se află numai
butoanele care constituie intrări ale PLC şi sarcina, conectată la una
din ieşirile controlerului.
Fig. 2.14.
conectate
acestor la PLCfizice,
elemente şi elementele
cu toate cdin programul
ă pot controler-ului
avea aceea şi denumire. asociate
În cazul figurii 2.14 programul din memoria controlerului
(exprimat prin schema din partea de jos a figurii) con ţine contactul
notat X 1(element de programare) care este asociat elementului fizic
conectat la prima bornă de intrare a PLC şi care ca element fizic se
poate numi tot X 1 sau altfel (spre exemplu START). De fapt,
elementul de programare X 1 are alocat un registru (o zonă de
memorie) în care se păstrează valoarea ON sau OFF. Programul va
prelua starea contactului din registrul asociat ( şi tot acolo va face
actualizarea stării).
Execuţia programului controlerului
început.
Etapele oricDurata
ărui unui ciclusunt
program poate fi în ţdomeniul
eviden 1,..., 100 ms.
iate în continuare.
A. Selftest
Controlerul efectuează o diagnosticare a stării sistemului şi în cazul
funcţionării corespunzătoare trece la etapa de preluare a mărimilor
conectate la intrările PLC – ului.
B. Actualizarea st ării intr ărilor
Secvenţialitatea înseamnă că la momente discrete de timp
controlerul execută o acţiune de testare a unui contact sau intrare
analogică, apoi al altui contact ş.a.m.d., până când efectuează
actualizarea stării tuturor elementelor conectate la intrările
controlerului . De fapt, actualizarea constă în memorarea stării
intrărilor într-o memorie RAM.
B. Analiza circuitului şi actualizarea în memorie a st ării
ie şirilor
În faza următoare analizează prima ramură a circuitului,
calculează rezultatele şi modifică în memorie starea ieşirilor.
63
http://slidepdf.com/reader/full/curs-programare-plcpdf 19/44
7/18/2019 CURS programare PLC.pdf
- se parcurge
rezultatul (adicprima ramur
ă starea ă de din
ieşirilor la stânga
ramuralarespectiv
dreaptaă),
şi se memorează
- se trece la următoarea ramură în josul schemei, până la sfârşit.
De reţinut faptul că se memorează, imediat ce se face calculul, starea
ieşirilor circuitului (din simplul motiv că starea memorată va fi
utilizată în restul calculelor, pe ramurile care urmează).
Notă: Există posibilitatea, ca în calculele care se execut ă, să se
folosească date ale intrărilor neactualizate, prin specificarea explicită a
acestei opţiuni. S-a prevăzut această posibilitate pentru a folosi în
calcule date considerate sigure sau date care se eşantionează la
intervale mai mari de timp.
C. Actualizarea st ării ie şirilor PLC
În această ultimă etapă se face actualizarea ieşirilor propriu-zise
de la bornele controlerului PLC, după care se reia programul de la
punctul A.
Aceast
necesitatea deă a modalitate de parcurgere
nu schimba ordinea a schemei
în care sunt pozi ţionatedetermin
ramurileă
circuitului, pentru că există probabilitatea ca să se obţină alte rezultate.
Dacă un contact condiţionează funcţionarea altuia, prin schimbarea
poziţiei se poate ca să fie testat mai întâi contactul al doilea – rezult ă
că primul contact nu va mai condiţiona funcţionarea celui de al doilea
(la testarea celui de al doilea contact se va lua în considerare starea
neactualizată , veche, din memorie a primului contact). Se impune
concluzia că o ramură de circuit nu poate condiţiona funcţionarea unei
ramuri din amonte (microprocesorul nu se întoarce să reanalizeze
ramurile deja parcurse).
Exemplul 3. Realizarea unui generator de oscila ţii
dreptunghiulare
C1 C1
L1 L2
Fig. 2.15.
A patra testare
Contactul C1 se gînchide.
ăseşte C1 deschis şi PLC taie alimentarea şi C1=L.
C1=L în intervalul de timp dintre testări, Ta.
Ş.a.m.d.
Constatăm c ă starea bobinei BC1 se modifică la fiecare testare,
obţinând astfel o formă de undă dreptunghiulară de perioadă 2Ta şi
factor de umplere de 50%.
Din punctul de vedere al programării, contactul C 1 reprezintă o
intrare pentru PLC iar bobina CR1 reprezintă o ieşire a controlerului.
Se justifică această afirmaţie prin faptul că intrarea C 1 determină
starea bobinei CR1 (alimentată sau nealimentată).
Intrările PLC sunt prezente în instrucţiunile condiţionale ale
programului iar ieşirile PLC sunt instrucţiunile care stabilesc starea
ieşirilor.
Structura hadware a unui PLC
singură sursvezi
exteriorul, ă defigura
alimentare
2.16. şi cu un bus de comunicaţie între ele şi cu
Fig. 2.15
Fig. 2.16.
66
http://slidepdf.com/reader/full/curs-programare-plcpdf 22/44
7/18/2019 CURS programare PLC.pdf
- osistemul
interfaţă pentru
intr ărilor; programarea PLC, care poate fi integrat ă în
- una sau mai multe interfeţe pentru comunicarea cu alte
echipamente (o magistrală de comunicaţie cu exteriorul), care
poate fi integrată de blocurile I/O.
- un sistem de afişare (display şi LED - uri) a stărilor
controlerului .
Fig. 2.17.
Intrările şi ieşirile sistemului sunt o parte digitale ( DISCRETE şi
REGISTER) şi altele (mai puţine) analogice ( ANALOG).
Semnalul analogic de la intrare este convertit în semnal numeric prin
intermediul unui CAN convertor analog – numeric la ieşirea căruia se
obţine o valoare pe 8, 10 sau 12 bi ţi în funcţie de rezoluţia
convertorului.
O caracteristică importantă a sistemului intrărilor analogice (
condiţionată de CAN) este viteza de conversie, exprimată prin timpul
dintre momentul aplicării semnalului analogic şi momentul de timp la
care este disponibil semnalul digital corespunzător valorii analogice de
la intrare. Dacă semnalele analogice din proces sunt rapid variabile în
timp se impune ca PLC să dispună de un CAN performant, cu timp de
conversie mic (spre exemplu de ordinul µ s ).
Pentru că traductoarele conectate la intrările analogice au diferite
domenii de variaţie a semnalului se impune prezenţa unui adaptor
67
http://slidepdf.com/reader/full/curs-programare-plcpdf 23/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.18.
Fig. 2.19.
68
http://slidepdf.com/reader/full/curs-programare-plcpdf 24/44
7/18/2019 CURS programare PLC.pdf
Constatăm că în ambele scheme se folose şte optocuplarea în scopul
separării semnalelor din proces de controlerul sistemului, pentru
protecţia acestuia.
În cadrul schemei din figura 2.18 diodele D1 şi D2 au rolul de limitare
a semnalului
Scheme de la intrare.
din figura 2.19 primeşte la intrare semnal de c.a. care este
redresat de puntea de diode PD, filtrat de grupul R1, R,C şi limitat ca
valoare de dioda Zener D z.
respectiva ieşire.
Fig. 2.20.
69
http://slidepdf.com/reader/full/curs-programare-plcpdf 25/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.21.
70
http://slidepdf.com/reader/full/curs-programare-plcpdf 26/44
7/18/2019 CURS programare PLC.pdf
schemelor
IL ( bloc (schemeList
Instruction logice);
) – limbaj text, pe baza listelor de
mnemonici;
ST (Structured Text ) – limbaj text pe baza unui set de
instrucţiuni, similare celor din limbajul BASIC clasic de programare;
SFC (Sequential Function Charts) – este o metod ă grafică,
specificând fluxul de date prin blocuri funcţionale, in care se înscriu
instrucţiuni ale unui alt limbaj de programare. [17,27]
Tabelul 3.
71
http://slidepdf.com/reader/full/curs-programare-plcpdf 27/44
7/18/2019 CURS programare PLC.pdf
Secvenţialitatea
stări succesive execuţiei instruc
ale automatului şi oţiunilor conduce
proiectare la foarte ămulte
necorespunz toare
determină stări nedorite ale sistemului, ceea ce conduce la un efort
considerabil pentru depanarea programelor. O proiectare
necorespunzătoare împarte bugetul de timp necesar implement ării
astfel : 10% stabilirea temei, 10% concepţie, 30% scrierea programului
(softul), 40% testare şi depanare, 10% elaborarea documentaţiei.
O programare structurată determină un sistem fiabil, care poate
fi cu uşurinţă completat (upgrade) şi care, de altfel, scurtează şi timpul
necesar implementării. Se afirmă [10]că o creştere la 30% a timpului
alocat concepţiei (structurării) va micşora timpul alocat scrierii
programului la 10% şi va scădea timpul necesar depanării la 10% (iată
o economie de 30%, adică o scădere a timpului necesar implementării
automatului).
În figura 2.21 este prezentat modul orientativ de structurare şi
indicaţii privind limbajul care ar trebui adoptat pentru sistemele
secvenţiale.
Fig. 2.21.
Tabelul 4.
Declaratia Descriere
VAR Începutul blocului de declarare a
variabilelor (în general)
END_VAR Sfârşitul blocului de declarare a
variabilelor
VAR_INPUT Declararea variabilelor ce se vor transfera
unei funcţii
VAR_OUTPUT Declararea variabilelor ce se vor transfera
dintr-o funcţie
VAR_IN_OUT Declararea variabilelor ce se vor transfera
între funcţie şi program apelant, atât ca
intrare cât şi ca ieşire
VAR_EXTERNAL Variabile externe
VAR_GLOBAL Variabile globale
VAR_ACCESS Variabile de acces
73
http://slidepdf.com/reader/full/curs-programare-plcpdf 29/44
7/18/2019 CURS programare PLC.pdf
În tabelul 5 sunt precizate cuvintele cheie asociate variabilelor,
prin intermediul cărora se fac precizări asupra proprietăţilor acestora.
Tabelul 5.
Declaratia Descriere
RETAIN Variabila î şi menţine valoarea şi după întreruperea
alimentării PLC
CONSTANT Valoare constantă ce nu poate fi modificată
AT Specifică locaţia de memorie ce se alocă vatiabilei
OF Pecizează tipul variabilei (INT, BOOL,...)
FUNCTION nume_func ţ ie şi END_FUNCTION .
Tabelul 6.
Operatori Descriere
aritmetici şi logici
>
>= Mai
Mai mare
mare şi egal
= Egal
<= Mai mic şi egal
< Mai mic
<> Diferit
AND(A,B) ŞI
OR(A,B) SAU
XOR(A,B) SAU EXCLUSIV
NOT(A) NU
! NU
74
http://slidepdf.com/reader/full/curs-programare-plcpdf 30/44
7/18/2019 CURS programare PLC.pdf
Tabelul 7.
Instrucţiunile Descriere
IF-THEN-ELSIF-ELSE- IF
END_IF;
CASE-valoare:-ELSE-END_CASE; CASE
FOR-TO-BY-DO- FOR
END_FOR;
WHILE-DO- WHILE
END_WHILE;
CASE N7:0 OF
0:
O:000/00 := 1;
1:
O:000/01 := 1;
2:
75
http://slidepdf.com/reader/full/curs-programare-plcpdf 31/44
7/18/2019 CURS programare PLC.pdf
O:000/02 := 1;
3:
O:000/03 := 1;
ELSE
O:000 := 0;
END_CASE;
Exemplu de buclă FOR:
F8:10 := 0;
FOR (N7:0 := 0 TO 4) DO
F8:10 := F8:10 + F8:[N7:0];
END_FOR;
Exemplu de buclă WHILE:
F8:10 := 0;
N7:0 := 1;
WHILE (N7:0 < 5) DO
F8:10 := F8:10 + F8:[N7:0];
N7:0 := N7:0 + 1;
END_WHILE;
Exemplu de program principal:
PROGRAM MAIN
VAR
I: INT;
END_VAR
76
http://slidepdf.com/reader/full/curs-programare-plcpdf 32/44
7/18/2019 CURS programare PLC.pdf
I:= 0;
REPEAT
I:=I+1;
UNTIL I>= 10;
END_REPEAT
END_PROGRAM
Exemplu de funcţie pentru un bistabil RS:
FUNCTION_BLOCK SR
(*Bistabilul RS*)
VAR_INPUT
S: BOOL;
R: BOOL;
END_VAR
VAR_OUTPUT
Q: BOOL;
END_VAR
IF S OR R THEN
Q: = S;
ELSE
(*nu se modifica starea ieşirii*)
END_IF
END_FUNCTION_BLOCK
Instrucţiuni speciale:
78
http://slidepdf.com/reader/full/curs-programare-plcpdf 34/44
7/18/2019 CURS programare PLC.pdf
De remarcat faptul că limbajul ST permite apelarea de subprograme
scrise în alte limbaje.
de celelalte
acelaşi moment limbaje, permite
de timp. De faptcaprogramele
mai multe seprocese săă concuren
activeaz fie activeţial
în
în sensul că se străduie să acapareze resursele sistemului, mai exact să
preia din timpul de lucru al controlerului.
Limbajul mai este cunoscut sub numele Grafcet sau IEC 848.
Principalele elemente ale grafurilor SFC sunt prezentate în figurile
2.22,...,2.27.
Prin intermediul liniilor se indică trecerea de la un pas la altul,
adică tranziţia automatului dintr-o stare în alta.
Simbolul
(de tipul din figura
IF sau WAIT) 2.22 specific
indicând faptul căă se
o instruc
va treceţiune condiurm
la pasul ţional
ătoră
când condiţia este îndeplinită.
Prin intermediul blocurilor (a dreptunghiurilor) se indic ă starea
circuitului. Spre exemplu simbolul din figura 2.23 indică prima stare a
circuitului.
De regulă o stare ( un pas al circuitului) are asociată o acţiune,
vezi figura 2.24.
Fig. 2.24.
79
http://slidepdf.com/reader/full/curs-programare-plcpdf 35/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.25.
În figura 2.26 este prezentat simbolul pentru selecţia unei căi.
Programul va urma numai una din cele două căi.
Fig. 2.26.
Fig. 2.27.
80
http://slidepdf.com/reader/full/curs-programare-plcpdf 36/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.28.
Fig. 2.29.
Fig. 2.30.
Există blocuri funcţionale definite (bistabili, timere, ş.a.), în cadrul
unor biblioteci, dar pot fi definite noi blocuri funcţionale. După
definirea blocului funcţional acesta poate căpăta oricâte instanţieri în
cadrul sistemului (folosind numele asociat blocului).
Blocul divide din figura 2.31 permite implementarea funcţiei de
împărţire a două valori c a / b . =
82
http://slidepdf.com/reader/full/curs-programare-plcpdf 38/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.31.
FUNCTION_BLOCK divide
VAR_INPUT
a: INT;
b: INT;
END_VAR
VAR_OUTPUT
c: INT;
END_VAR
IF b <> 0 THEN
c := a / b;
ELSE
c := 0;
END_IF;
END_FUNCTION_BLOCK
83
http://slidepdf.com/reader/full/curs-programare-plcpdf 39/44
7/18/2019 CURS programare PLC.pdf
Fig. 2.32.
În figura 2.33 [11] sunt prezentate modalităţile de ciclare.
Fig. 2.33.
Există blocuri pentru conversia valorilor din BCD în numere întregi şi
invers, pentru conversia valorilor din numere întregi în numere reale,
pentru rotunjire sau pentru trunchere.
84
http://slidepdf.com/reader/full/curs-programare-plcpdf 40/44
7/18/2019 CURS programare PLC.pdf
care se găsesc
Rândurile au re
înţele electriceţă(rânduri
componen , linii) conectate
temporizatoare, numărăîntoare,
paralel.
contacte
normal închise sau normal deschise - de intrare şi bobine ale unor relee
sau elemente de execuţie - de ieşire (vezi figurile 2.11, 2.13, 2.14).
Execuţia şi actualizarea se face de jos în sus şi pe linie de la stânga la
dreapta (un exemplu se află în figura 2.15) – fiecare linie fiind
numerotată pentru ca execuţia să se facă conform numărului de ordine.
În cadrul diagramelor pot fi intercalate blocuri funcţionale.
Figura 2.34 prezintă simbolizarea contactului normal deschis (IN001)
şi a contactului normal închis (IN002, IN003 )
a) b)
Fig. 2.34.
Elementele
negate de ieşire sunt bobinele (OUT001, OUT002) şi bobinele
(OUT003).
a) b)
Fig. 2.35.
Ieşire
Validare
Nr. temporizator
Baza de timp
Iniţializare Valoarea
prestabilit ă
Fig. 2.36.
Iniţializarea porneşte temporizarea. Baza de timp stabileşte
valoarea cu care se incrementează timpul (0,01s; 0,1s sau 1s). Numărul
de cuante de timp la care se termină temporizarea este specificat prin
program.
În figura 2.37 este prezentat un numărător.
Ieşire
Numărare
Nr. numărător
Ieşire negată
Iniţializare Valoare
prestabilită
Fig. 2.37.
86
http://slidepdf.com/reader/full/curs-programare-plcpdf 42/44
7/18/2019 CURS programare PLC.pdf
Tabel din “ Introduction to Programmable Logic Controllers”
Num
ber Description Link/info
1
2 PLC
PLC book
website http://claymore.engineer.gvsu.edu/~jackh/books/plcs
http://www.plcs.net/
3 PLC tutorial http://www.plcs.net/chapters/whatis1.htm
Quick PLC
4 http://support.automationdirect.com/docs/whatisaplc.html
description
5 PLC History http://www.softplc.com/history.php
6 Online Encyclopedia http://en.wikipedia.org/wiki/Programmable_logic_controller
7 PLC online Forum http://www.plctalk.net/qanda/
8 Course example http://claymore.engineer.gvsu.edu/~jackh/eod/egr450.html
9 Course example http://www.pueblocc.edu/tec/auto_023.htm
10 Course example http://www.cede.psu.edu/StudentGuide/EET220.htm
http://www.tech.mtu.edu/courses/eet3370/EET3370%20Class%20
11 Course example
Schedule%202.htm
12 Course example http://www.utexas.edu/cee/petex/training/courses/iplc.html
PLC simulation
13 http://www.tri-plc.com/trilogi.htm
software
PLC simulation
14 http://www.ab.com/plclogic/pico/picosoft.html
software
15 Mitsubishi http://www.meau.com/eprise/main/sites/public/PRODUCTS/default
16 Toshiba http://www.tic.toshiba.com/productgroups.php?family=PLCs
17 Siemens https://pia.khe.siemens.com/index.asp?Nr=2140
18 Sprecher & Schuh http://www.ssusa.cc/pages/mainpg/prodmainall.html
19 Allen Bradley http://www.ab.com/plclogic/
Programmable Logic Controllers An Introduction Third Edition W.
20 PLC book
Bolton 2003 Newnes Publications
PLC application
21 http://www.fbk.com/control-instrumentation/plctran.asp?menu=3
website
Verification of PLC
22 http://wwwhome.cs.utwente.nl/~mader/DEMOS/IPA2001.ppt
Applications
23 PLC Applications http://www.entertron.com/application.htm
24 PLC help thread http://www.plctalk.net/qanda/showthread.php?s=&threadid=12235
25 PLC Tutorial site http://www.freestudy.co.uk/plc.htm
http://www.mikroelektronika.co.yu/english/product/books/PLCbook
26 PLC Tutorial site
/plcbook.htm
27 PLC info and tutorial http://www.mrplc.com/kb/
28 Modicon http://www.modicon.com/Default.htm
29 PLC history http://www.barn.org/FILES/historyofplc.html
30 PLC primer http://www.industrialtext.com/freestuff.htm
http://www.control.com/links_page#PLCs%20and%20related%20q
31 PLC information uestions.
32 PLC example http://www.htservices.com/Tutorials/plc_tutorial_2.htm
http://www.sea.siemens.com/step/templates/lesson.mason?plcs:1:
33 Siemens PLC primer
2:1
34 AB Pico Solutions http://www.ab.com/plclogic/pico/picosolutions.html
Applications http://public.modicon.com/nRepository/index.nsf/aa_getdocs?Ope
35
examples nAgent&prod=nanocus
http://www.modicon.com/nRepository/index.nsf/aa_getdocs?Open
36 TSX PLC manual
Agent&prod=nanopro#
37 BORS oil application http://www.modicon.com/85256AE8006D78AB/all/AFB0118DEA9
87
http://slidepdf.com/reader/full/curs-programare-plcpdf 43/44
7/18/2019 CURS programare PLC.pdf
9C0AC85256BFA004F60F3!OpenDocument
http://www.mavrinac.com/technical/howto_plc_programming_for_b
38 PLC overview
eginners.txt
39 PLC intro http://www.canadu.com/hjhtml/plcs1-4.html
40 RTU vs PLC http://www.tetragenics.com/Articles/RTUvsPLC.htm
41 Ladder Logic Ideas http://xtronics.com/toshiba/Ladder_logic.htm
42 Ladder Logic editor http://home.scarlet.be/~dc11cd/dciplc.html
Ladder Logic
43 examples http://www.ibiblio.org/obp/electricCircuits/Digital/DIGI_6.html
44 PLC tutorial site http://www.plcman.co.uk/
45 Intro to IEC 61131 http://www.plcopen.org/TC1/intro_iec_61131-8.htm
46 IEC 61131-3 FAQ http://www.holobloc.com/stds/iec/sc65bwg7tf3/html/faq.htm
Thread on PLC Scan http://www.plctalk.net/qanda/showthread.php?t=8220&highlight=sc
47
time an+cycle+time
Seamans on scan http://www.sea.siemens.com/step/templates/lesson.mason?plcs:7
48
time 1:1
49 PLC operation www.crakker.com/PLC_Primer.PDF
http://www.lurpa.ens-
50 Info on Grafcet
cachan.fr/grafcet/generalites/presentation_uk.html
51 PLC failure info http://www.processwest.ca/Past_Issues.htm?ID=354
52 Programmable
Controllers Logic
Third W. Bolton Linacre House, Jordan Hill Oxford 2003
Edition
picture of industrial
53 http://www.monoequip.com/images/Equipment/ind_cake_mixer.jpg
mixer
54 PicoSoft http://www.ab.com/plclogic/pico/PicoSoftWeb6L.exe
http://www.meau.com/eprise/main/sites/public/DOWNLOADS/-
search_results?SType=0&DocType=035&SessionNum=&UserID=
55
&Division=00015&Opt1=Yes&submit1=Search&Family=00015200
GX-Developer 10&Series=000152001020030
56 picture of relay timer http://web.mit.edu/cjoye/www/ebay/RelayTimer/
picture of relay
57 http://www.icc-gb.com/lc4h.html
counter
58
59 picture
picture of
of box PLC
optoisolator http://www.controltech.cz/images/clanky/image30.jpg
http://searchnetworking.techtarget.com/WhatIs/images/optoisol.gif
60 plc shipment article http://www.drives.co.uk/news/worldnews/news_worldnews352.htm
http://customer.honeywell.com/Honeywell/CatalogNavigator.aspx?
Definition=Product&Catalog=Homes&Category=DP2030_10180&
61 Honeywell contactor
Product=DP2030B5011&ChannelID={2EB2F178-20ED-44E0-
97FB-CCFB4218DD64}#LiteratureDownload
Price on start http://www.mstores.umich.edu/catalog/grainger/electrical/relays/re
62
relay/mounting $20 ay_sockets/2A584.html
Price on timed relay- http://www.mstores.umich.edu/catalog/grainger/electrical/relays/ti
63
$48-$70 me_delay_relays/5YZ86.html
3 phase power http://www.metalwebnews.com/howto/phase-converter/phase-
64
converter example converter.html
65 ladder
3 phaselogic manual
converter http://www.iu.hio.no/~georgm/pls/doc/s7kop__b.pdf
66 http://www.phase-a-matic.com/PDF/RPL-2005-C.pdf
data sheet
67 PLC presentation http://www.kwandong.ac.kr/~sylee/cadcam_s/chap5Plc.ppt
http://slidepdf.com/reader/full/curs-programare-plcpdf 44/44