Sunteți pe pagina 1din 105

UNIVERSITATEA DIN PITEȘTI

FACULTATEA DE ELECTRONICĂ, COMUNICAȚII ȘI CALCULATOARE


DEPARTAMENTUL: ELECTRONICĂ, CALCULATOARE ȘI INGINERIE ELECTRICĂ
PROGRAMUL DE STUDII: ELECTRONICĂ APLICATĂ

PROIECT DE DIPLOMĂ

Coordonator Științific
Șl.dr.ing BOSTAN IONEL

Absolvent
PĂTRAȘCU VALENTIN BOGDAN

Pitești

Sesiune iulie 2016

1
UNIVERSITATEA DIN PITEȘTI
FACULTATEA DE ELECTRONICĂ, COMUNICAȚII ȘI CALCULATOARE
DEPARTAMENTUL ELECTRONICĂ, CALCULATOARE ȘI INGINERIE ELECTRICĂ
PROGRAMUL DE STUDII: ELECTRONICĂ APLICATĂ

PROIECT DE DIPLOMĂ
TITLUL

SISTEM DE AUTOMATIZARE CU AUTOMAT PROGRAMABIL FESTO

Coordonator Științific
Șl.dr.ing BOSTAN IONEL

Absolvent
PĂTRAȘCU VALENTIN BOGDAN

Pitești

Sesiune iulie 2016

2
3
4
5
CUPRINS

Introducere

Capitolul 1: Automate programabile 14


1.1 Generalități 14
1.1.1 Rolul Automatelor Programabile în automatizare 15
1.1.2 Automat programabil (AP) vs Logică cu relee (LR) 15
1.1.3 Automat programabil (AP) vs Calculator personal (PC) 17
1.1.4 Analiza și clasificarea automatelor programabile 18
1.1.4.1 Clasificarea automatelor programabile 18
1.2 Structura internă a unui automat programabil 21
1.2.1 Unitatea centrală de procesare 22
1.2.2 Memoria 22
1.2.3 Programarea automatelor programabile 22
1.2.4 Sursa de alimentare 23
1.2.5 Intrările automatului programabil 23
1.2.6 Ieșirile automatului programabil 27
1.2.7 Extensia numărului de intrări/ieșiri 29
1.2.8 Funcționarea automatului programabil 30
1.3 Interfațarea senzorilor și a elementelor de execuție la A.P 30
1.3.1 Sistemul de interfață de intrare 31
1.3.2 Sistemul de interfață de ieșire 32
1.4 Automatul Programabil FEC (Front End Controler) 33
1.4.1 Montarea automatului programabil pe șină DIN 35mm 35
1.4.2 Montarea automatului programabil pe perete 35
Capitolul 2: Limbaje de programare specifice automatelor programabile 36
2.1 Clasificarea limbajelor de programare 36
2.2 Limbajul Ladder 37
2.3 Limbajul Instruction List 38
2.4 Limbajul Structured Text 40
2.5 Limbajul Function block diagram 41
2.6 Limbajul Sequential function chart 42
2.7 Programarea automatelor de tip FESTO 43
2.7.1 Programarea în limbaj Statement List 43
2.7.2 Operanzi STL 43
2.7.3 Operatori de un bit și multibit în limbajul STL 45
2.7.4 Structura unui program STL 46
2.7.4.1 Program cu pași 46
2.7.4.2 Program paralel 47
2.7.4.3 Program executiv 47
2.8 Prezentarea mediului de programare Ladder pentru automatele programabile
produse de firma Festo 48
2.8.1 Modul de actualizare al intrărilor / ieșirilor 49
2.8.2 Temporizatoare (Timers) 50
2.8.3 Numărătoare (Counters) 51
2.8.4 Blocuri funcționale 52
2.8.5 Restricţii în scrierea programelor în limbajul Ladder 52
2.8.6 Realizarea unei combinaţii între funcţiile logice ŞI, SAU, NU 53

6
Capitolul 3 Proiectarea părții hardware 55
3.1 Motivarea temei 55
3.2 Descrierea elementelor de intrare 57
3.2.1 Descrierea senzorului magnetic de poziție 57
3.3 Proiectarea circuitului de interfață cu elementele de intrare 61
3.4 Descrierea elementelor de execuție 63
3.4.1 Piston pneumatic cu dublu sens 63
3.4.2 Piston pneumatic cu revenire prin arc 64
3.4.3 Valve de distribuție a aerului 65
3.4.3.1 Noțiuni teoretice 65
3.4.3.2 Numărul de căi 65
3.4.3.3 Numărul de poziții 65
3.4.3.4 Reprezentarea simbolică a unei valve 66
3.4.3.5 Electrovalve 67
3.5 Proiectarea circuitului de interfață cu elementele de ieșire 69
3.6 Proiectarea schemei electrice a întregului sistem 71
3.7 Proiectarea circuitului pneumatic 73
3.7.1 Proiectarea circuitului electric necesar simulării circuitului pneumatic 76
3.7.2 Simularea sistemului de acționare electropneumatic 78
3.8 Realizare practică 83
3.8.1 Montajul de comandă 84
3.8.2 Montajul elementelor de execuție și dispozitivele de intrare 85
Capitolul 4: Proiectarea părții software 86
4.1 Etape în realizarea unei aplicații cu automat programabil de tip FESTO FC34 86
4.2 Program de dificultate mică 88
4.3 Program de dificultate medie 93
4.4 Program de dificultate mare 96

Concluzii

Anexa A1- Elementele de conexiune aferente intrărilor


Anexa A2 – Elementele de conexiune aferente ieșirilor
Anexa A3 – Sursă de alimentare
Anexa A4 – Specificații tehnice senzor Solid State
Anexa A5 – Specificații tehnice senzor Reed

7
Lista figurilor

Tablou comandă logică cu relee 15


Tablou comandă cu AP 15
PLC Telemecanique Zelio SR2 din categoria Micro 19
Modelul Siemens S7-1500 – PAC 19
Schemă bloc a unui PLC 21
Schemă de alimentare la rețea 23
Schemă de alimentare de la o sursă de 24V DC 23
Principalele elemente ce se conectează la intrările unui A.P 23
Intrările de curent continuu și de curent alternativ 24
Automat programabil cu intrări comune (neizolate) 24
Automat cu intrări separate (izolate) 24
Conexiune dispozitiv tip sursă → intrare tip receptor 25
Conexiune dispozitiv tip receptor → intrare tip sursă 25
Conectarea dispozitivelor de tip sursă la intrări de tip receptor ( intrări cu punct comun) 26
Conectarea dispozitivelor de tip sursă și receptor la intrări separate ( fară punct comun) 26
Principalele elemente ce se conectează la ieșirile unui A.P 27
Schema bloc a unei ieșiri a automatului programabil 27
Contact normal deschis 27
Contact normal închis 27
Contact cu ambele tipuri de contacte 27
Ieșiri cu terminal comun 28
Ieșiri complet separate 28
Ieșire cu tranzistor PNP → ieșire de tip sursă 29
Ieșire cu tranzistor NPN → ieșire de tip receptor 29
Ciclu de scanare al automatelor programabile 30
Circuit de intrare 31
Circuit de ieșire 32
Montare PLC pe șină DIN 35
Montare PLC pe perete 35
Limbaje de programare specifice AP-urilor 36
Exemplu program în limbajul Instruction List 39
Exemplu salt condiționat 41
Exemplu program în limbajul FBD cu simboluri logice 41
Exemplu program în limbajul Sequential function chart 42
Proces cu imagine de proces 48
Proces fără imagine de proces 48
Structura unui temporizator în programele Ladder Diagram 50
Program de recunoaștere a fronturilor crescătoare ale semnalului 52
Schema circutului electropneumatic 53
Schema circuitului electric 53
Programul Ladder 54
Schema bloc a montajului 56
Panou de comandă 57
Senzor Reed 57
Senzor Solid State 57
Schemă constructivă sensor Reed 57
Montare senzor Reed 58
Senzor Reed neacționat 58
8
Senzor Reed acționat 58
Diagramă circuit I/O 59
Schemă de conectare 59
Componentele unui senzor Solid State 59
Schemă internă 60
Schemă de conectare 60
Montare senzor Solid State 60
Schema de principiu a interfațării elementelor de intrare 61
Schema electrică a circuitului de interfațare a intrărilor 62
Piston pneumatic cu dublu sens și anti-rotire 63
Secțiune transversală a pistonului cu dublu sens 63
Simbol piston cu dublu sens 63
Piston pneumatic cu revenire prin arc și anti-rotire 64
Secțiune transversală a pistonului cu revenire prin arc 64
Simbol piston cu revenire prin arc și anti-rotire 64
Numărul căilor de conexiune 65
Numărul de poziții 65
Simbolul unei valve cu trei căi două poziții 66
Tipuri de acționări 66
Electrovalvă SY5220-3D0-01F 67
Simbol electrovalvă 5/2 67
Electrovalvă VF1120 68
Simbol electrovalvă 5/2 cu arc 68
Schema de principiu a interfațării elementelor de ieșire 69
Schema electrică a circuitului de interfațare a ieșirilor 70
Sursă Mean Well DR-75-24 71
Schemă electrică finală 72
Simbol sursă de aer comprimat 73
Simbol unitate de procesare a aerului 73
Simbol distribuitor 5 căi / 2 poziții 74
Simbol distribuitor 5 căi / 2 poziții cu arc 74
Simbol piston cu dublu sens 74
Simbol piston cu revenire prin arc 74
Circuitul pneumatic al sistemului 75
Schema electrică necesară simulării circuitului pneumatic 77
Proprietațile simulării 78
Bara de control a simulării 78
Acționare buton Start 79
Acționarea buton EXT_C1, extindere piston C1 79
Acționarea buton EXT_C2, extindere piston C2 80
Acționarea buton EXT_C3, extindere piston C3 80
Acționarea buton RET_PST, retragere pistoane C1, C2, C3 81
Simularea sistemului pneumatic cu vizualizarea mărimilor pneumatice şi electrice, retragere 81
Simularea sistemului pneumatic cu vizualizarea marimilor pneumatice şi electrice, extindere 82
Partea de comandă a machetei 84
Modulul de alimentare al machetei 85
Butoanele fizice 85
Elementele de execuție 85
Elementele de distribuție a aerului 85
Creare program 86
Introduceți numele proiectului 86
Selectați tipul controler-ului și adăugați un comentariu 87
9
Creare program nou 87
Alegerea limbajului de programare 87
Bara de realizare programe 87
Diagramă de tranziție a stărilor program dificultate mică 88
Listare program dificultate mică 89
Panou frontal program 90
Intrări aferente senzori capăt de cursă 90
Extindere pistoane 91
Activare senzori capăt de cursă aferente extinderii pistoanelor 91
Retragere pistoane 92
Activare ieșiri aferente retragerii pistoanelor 92
Diagramă de tranziție a stărilor program dificultate medie 93
Listare program dificultate medie 94
Diagramă de tranziție a stărilor program dificultate mare 96
Listare program dificultate mare 98

10
Lista tabelelor

Comparație AP vs LR 16
Comparație AP vs PC 17
Date tehnice Festo FC34 33
Caracteristici hardware 34
Operatori Instruction List conform standardului IEC 1131-3 39
Operatori Structured Text 40
Operanzi STL de un singur bit 43
Operanzi STL de mai mulți biți 44
Operatori utilizați în construcția programelor STL 45
Listă de distribuție 54
Listă alocare I / O pentru A.P de la Festo 54
Tipuri de senzori Solid State 60
Alocare intrări 61
Specificații tehnice piston cu dublu sens 63
Specificații tehnice piston cu revenire prin arc 64
Specificații tehnice electrovalvă SY5220-3D0-01F 67
Specificații tehnice electrovalvă VF1120 68
Alocare ieșiri 69
Specificații tehnice sursă DR-75-24 71
Elemente folosite in realizarea schemei electrice 76
Necesar piese machetă 83

11
Lista acronimelor din proiect

A.P – Automat programabil


CNT_1 – Numărător 1
CNT_2 – Numărător 2
CNT_3 – Numărător 3
EXT_C1-Extindere piston C1
EXT_C2-Extindere piston C2
EXT_C3-Extindere piston C3
F.B.D- Diagramă cu funcții bloc
F.S – Prima scanare
IL-Listă de instrucțiuni
LR- Logică cu relee
LD- Diagramă Ladder
PC- Calculator personal
RET_PST- Retragere piston
ST- Text structurat
SFC-Diagrama funcților secvențiale
S1 – Senzor capăt de cursă extindere piston 1
S2 - Senzor capăt de cursă retragere piston 2
S3 - Senzor capăt de cursă extindere piston 2
S4 - Senzor capăt de cursă retragere piston 3
S5 - Senzor capăt de cursă extindere piston 3
τi - intervale de timp (i=1....6)

12
Introducere

Acest proiect propune o soluție de realizare a unei machete cu caracter didactic și caracter
interdisciplinar. Caracterul didactic este reprezentat de faptul că macheta se dorește a fi un suport
pentru disciplina Automate programabile. Prin comanda electrică și pneumatică prezentă pe
machetă se accentuează caracterul interdisciplinar al acestui proiect. Macheta este un suport pentru
învățarea programării și utilizării automatelor programabile, complexitatea programelor este
limitată doar de imaginația studenților.

13
Capitolul 1

AUTOMATE PROGRAMABILE

1.1 Generalități

Automatele programabile (AP) sunt echipamente electronice destinate realizării instalaţiilor


de comandă secvenţiale în logică programată. Din punct de vedere al complexităţii automatele
programabile sunt situate între echipamentele clasice cu contacte sau cu comutaţie statică, ale
instalaţiilor de comandă şi calculatoarelor electronice.
Utilizând o logică programată, circuite logice integrate şi elemente semiconductoare de
putere, automatele programabile, în comparaţie cu sistemele logice secvenţiale, bazate pe logica
cablată prezintă următoarele avantaje:
- gabarit redus;
- consum redus de energie electrică;
- facilităţi la punerea în funcţiune;
- fiabilitate ridicată;
- consum redus de conductoare de conexiuni şi de cablaj;
- realizarea facilă a unor funcţiuni specifice;
- reducerea ciclului de proiectare, execuţie şi punere în funcţiune prin
posibilitatea supravegherii unor faze.
Faţă de calculatoarele electronice utilizarea automatelor programabile are avantajele:
- preţ de cost redus;
- viteză de răspuns ridicată;
- imunitate sporită la perturbaţii;
- funcţionare sigură în mediu industrial obişnuit;
- limbaj de programare simplu.

"General Motors" a fost prima companie care a recunoscut nevoia înlocuirii tehnicii de
cablare clasică a panourilor de automatizare. Înlocuirea vechii tehnologii de cablare a panourilor de
automatizare a sporit competiţia producătorilor de autoturisme prin creşterea productivităţii şi
calităţi. Nu numai industria auto a avut de câştigat de pe urma noii tehnologii. Flexibilitatea,
întreţinerea ieftină şi uşoară, dar şi posibilitatea schimbării rapide a ciclurilor de producţie a devenit
o necesitate crucială în actuală evoluţie a economiei de piaţă. Ideea companiei "General Motors" a
constat în implementarea logicii cablate într-un microcalculator, logică care a înlocuit tehnica
clasică de cablare a releelor. În majoritatea aplicaţiilor, microcalculatorul are la bază soluţii cu
microcontrolere pe 8 sau 16 biţi, în funcţie de complexitatea sistemului de automatizare. Deci,
calculatorul avea să ia locul blocurilor sau panourilor de automatizare cu numeroase relee. Orice
schimbare a ciclurilor de operare sau de producţie se poate face foarte uşor modificând programul
scris în automatul programabil.
Noile dispozitive trebuie să aibă anumite caracteristici: să funcţioneze corect în medii
industriale (vibraţii, temperaturi ridicate, praf…), să fie flexibile şi de dimensiuni reduse ca un
computer şi să permită reprogramarea acestora daca se dorea realizarea altor operaţii. Ultimul
criteriu şi cel mai important era acela ca noile dispozitive să poată fi programate şi întreţinute uşor
de către electricieni şi tehnicieni. După ce cerinţele au fost trasate, General Motors a căutat
companii interesate care pot să proiecteze aceste dispozitive în corelaţie cu aplicaţiile unde urmau
să fie implementate.
La început PLC-urile (Programmable Logic Controller) au fost dispozitive simple. La
intrările acestora erau conectate comutatoare, senzori digitali etc, iar la ieşiri se comanda pornirea şi
oprirea funcţionării altor dispozitive. Când au apărut primele PLC-uri acestea nu erau capabile să
14
controleze procese mai complexe, cum ar fi: controlul temperaturii, a poziţiei, presiunii etc. Cu
toate acestea, odată cu trecerea anilor, au apărut şi PLC-uri care au fost capabile să realizeze aceste
funcţii. În prezent, automatele programabile sunt capabile să controleze procese foarte complexe,
inclusiv controlul poziţiei. Modul de realizare şi programare a acestora a fost mult îmbunătăţit. Au
fost concepute module speciale care ataşate PLC-ului pot lărgi aria de operabilitate a acestuia. Un
exemplu în acest sens este modulul de comunicaţie, care permite interconectarea mai multor
automate programabile. În prezent este foarte greu să ne imaginăm un proces care să nu fie
controlat de un automat programabil!

1.1.1 Rolul Automatelor Programabile în automatizare

În general automatele programabile sunt destinate automatizării proceselor secvenţiale de


complexitate medie. Ele realizează prin logica programată următoarele funcţii:
- detectează schimbările de stare ale semnalelor aplicate pe intrări;
- prelucrează logic pas cu pas informaţiile primite conform programului stocat în memoria
program (MP);
- emit semnale de comandă corespunzătoare programului stocat în memorie;
- semnalizează optic valorile semnalelor de pe intrări şi ieşiri(valoare logică 1, LED
aprins);
În mod obișnuit, automatele programabile se folosesc pentru controlul unor utilaje sau
procese industriale. Deși nu reprezintă singura soluție de control, automatele
programabile oferă multe beneficii față de logica cu relee (cablată) și chiar față de
implementarea cu ajutorul PC-ului.
În cele ce urmează va fi prezentată o comparație între PLC și celelalte două metode de
implementare.

1.1.2 Automat programabil (AP) vs Logică cu relee (LR)

Figura 1.1-Tablou comandă logică cu relee Figura 1.2-Tablou comandă cu AP

Se poate observa cu ușurință că logica cu relee (Figura 1.1 ) este mult mai voluminoasă și mai
complexă decât cea cu automat programabil (Figura 1.2).
15
Automat programabil (AP) Logică cu relee (LR)
Mediul de lucru Industrial Industrial
Ușurință în utilizare DA – diminuarea cu cca. 80% NU – logica de control este
a timpului necesar proiectării cablată
schemelor de comandă. Față
de cele cu relee
Flexibilitate Mare Redusă
- schemele de comandă sunt - schemele de comandă se
implementate prin programul proiectează greu și au caracter
de lucru al AP; permanent;
- modificarea programului de - modificarea schemei de
lucru se face foarte ușor prin control este foarte dificilă sau
modificarea sau adăugarea de chiar imposibilă (trebuie
noi linii de program; refăcute legături fizice, uneori
- mașinile cu funcționalități este necesară adăugarea de noi
diferite pot folosi același tip elemente); toate acestea
de tablou de comandă, necesită timp îndelungat și
deoarece programul de control abilități din partea
este situat în AP; tehnicianului;
- funcționarea schemei poate fi - mașini cu funcționalități
testată prin simulare; diferite necesită scheme
- verificarea vizuală a diferite de comandă, deci
funcționării, în regim de necesită tablouri de comandă
monitorizare AP-urile permit diferite;
afișarea secțiunilor de circuit - funcționarea schemei de
active la un moment dat, iar pe comandă poate fi testată
acestea pot fi făcute numai după realizarea fizică a
comentarii sugestive; acesteia;
- foarte utile pentru liniile - verificarea funcționării
flexibile de producție unde se schemei se poate face numai
impune schimbarea rapidă a pe baza urmăririi semnalelor
produsului asamblat. de ieșire;
Viteză Mare Limitată
- este dependentă de mărimea - din cauza inerției părților
programului de lucru; mecanice.
-parcurgerea întregului
program nu depășește câteva
milisecunde.

Fiabilitate Mare Mică


- un AP realizează funcția - releele electromagnetice au
logică a mai multor elemente fiabilitate redusă din cauza
din schemele electrice de componentelor mecanice
automatizare; aflate în mișcare;
- dimensiuni reduse; - dimensiuni mari;
- putere disipată redusă; - putere disipată mare;
- număr redus de conexiuni - număr foarte mare de
electrice; conexiuni electrice;
- nu necesită intervenții dese - timp scurt între două
de întreținere. defectări

16
Limbaje de programare DA NU
- programe asemănătoare cu
schemele cu relee (Ladder);
- programe asemănătoare cu
limbajele de programare ale
calculatoarelor (STL)
Cost - inițial costurile au fost mai - costurile pot crește
mari;
- în prezent oferta de AP este
mare și prețurile sunt în
scădere;

Tabel 1.1 - Comparație AP vs LR

1.1.3 Automat programabil (AP) vs. Calculator personal (PC)

Automat programabil (AP) Calculator personal (PC)


Mediul de lucru AP-urile sunt proiectate în PC-urile comercializate în
mod special pentru operarea mod curent nu pot lucra în
în medii foarte medii grele. PC-urile
grele(perturbații magnetice și industriale fac față mediilor
electrice, vibrații umiditate grele dar sunt destul de
sporită, temperaturi extreme, scumpe.
etc.)
Ușurință în utilizare Utilizarea AP este asimilată Dezvoltarea aplicațiilor pe PC
rapid de tehnicienii necesită un grad mai mare de
familiarizați cu schemele de instruire a proiectantului.
comandă realizate cu relee. Accesul la resursele I/O nu
Accesul la resursele I/O se este întotdeauna ușor de
face foarte ușor. realizat.
Flexibilitate Construcția modulară, de tip În mod tipic, un PC acceptă un
rack, permite o extensie rapidă număr limitat de carduri iar
a resurselor I/O precum și extensia resurselor I/O nu este
înlocuirea ușoară a ușoară
eventualelor module defecte.
Viteză Într-un AP rulează un singur PC-ul împreună cu sistemul de
program cu execuție
operare este conceput pentru
secvențială. Surprinderea și tratarea ”simultană” a mai
tratarea evenimentelor în timp multor task-uri. Din acest
real este mult mai bună față demotiv, aplicațiile pe PC pot
cazul PC. avea dificultăți în tratarea în
timp real a evenimentelor.
Fiabilitate De regulă AP nu se defectează Pentru perioade lungi de
atunci când sunt folosite funcționare defectarea PC-
perioade foarte lungi de timp. urilor este relativ frecventă.
Rata de defectare este mult
mai mică în raport cu cea a
PC.

17
Limbaje de programare Limbaje fixe de programare. Flexibilitate foarte mare în
alegerea limbajului de
programare dorit.
Managementul datelor Capacitate limitată de stocare Capacitate mare de stocare a
a variabilelor și a datelor. datelor din cauza prezenței
unui HDD (Hard Disk Driver)
Cost Pentru automatele de clasă Este greu de precizat care este
mică și medie, costurile sunt soluția optimă între un PC
inferioare PC- urilor industrial și un AP de mare
complexitate

Tabel 1.2 - Comparație AP vs PC

1.1.4 Analiza şi clasificarea automatelor programabile

În general analiza unui dispozitiv cu o structură dată, bine definită înseamnă urmărirea
evoluţiei în timp a dispozitivului respectiv.
Analiza automatelor finite presupune aplicarea la intrarea automatului a unei secvenţe de
intrare, obţinându-se la ieşire o secvenţă de ieşire şi urmărindu-se în vectorul de stare realizarea
unei anumite secvenţe de stări.
Procesul de analiză se realizează pe baza aplicării unor experimente asupra automatelor. Un
experiment se defineşte ca fiind identificarea secvenţei de stare şi de ieşire pentru o anumită
secvenţă de intrare şi obţinerea unor concluzii privind starea sa. Experimentele pot fi fixe sau
rigide şi adaptive. Cele fixe implică o secvenţă de intrare cunoscută aprioric, iar pentru cele
adaptive secvenţa de intrare se alege în funcţie de rezultat sau starea în care se găseşte şi evoluţia
anterioară acestei stări.
Automatele programabile pot fi programate pornind fie de la ecuaţiile logice
corespunzătoare sistemului, fie de la schemele de comandă realizate cu contacte şi relee, sau cu
circuite logice cu comutaţie statică, în logică cablată sau folosind organigrama care descrie procesul
tehnologic condus.
Folosind automatele programabile se pot realiza instalaţii de comandă automată secvenţiale,
de complexitate medie de conducerea a proceselor tehnologice din metalurgie, construcţii de
maşini, chimie, din industriile: alimentară, a materialelor de construcţii, electrotehnică, etc.
Orice automat programabil conţine şi module speciale care sunt utilizate pentru temporizări,
contorizări, intrări programabile, test şi realizează legăturile dintre modulele AP.

1.1.4.1 Clasificarea automatelor programabile

a) După corelarea în timp a variabilelor de intrare şi de stare ale automatului avem:


- automate sincrone – variabilele din structura automatului sunt sincrone cu un anumit tact
extern (modificarea stării automatului se face sincron cu tactul extern);
- automate asincrone – modificarea stării automatului se face o dată cu schimbarea palierului
variabilelor de intrare.
Obs! Majoritatea circuitelor implementate cu automate programabile au un tact extern care fac
inseparabile automatele sincrone de cele asincrone.

18
b) După nivelele logice (tipul de logică) folosite pentru variabile:
- automate cu logică binară (0, 1);
- automate cu logică ternară (-1, 0, 1) sau (-1/2, 0, 1/2);
- automate cu logică multivariabilă care depinde de modul de organizare al spaţiilor X si Z.

c) După tehnologia folosită pentru realizarea automatului avem:


-automate realizate cu logică cablată:
-automate cu contacte şi relee;
-automate cu componente electronice discrete;
-automate cu tehnologie integrată;
-automate cu miezuri magnetice cu CHD (ciclu histerezis dreptunghiular);
-automate folosind logică microprogramată şi programată;
Aceste automate sunt foarte flexibile, uşor de programat şi au mare diversitate constructivă în
funcţie de firmele producătoare şi aplicaţia care le solicită. Prezintă un set de instrucţiuni cu
care se programează foarte uşor.

d) După complexitatea circuitului de reacţie (complexitatea memoriei) avem:


- automate de gradul 0 - A0 – degenerate (simple fără circuit de reacţie). Acestea se mai
numesc circuite logice combinaţionale la care ieşirea depinde numai de intrare.
e) Din punct de vedere constructiv se clasifică în două categori:
- automate programabile monobloc – aceste PLC-uri se încadrează de obicei în clasă Pico/Nano
sau Micro/Mini PLC datorită numărului redus de intrări și ieșiri (de obicei 10-16 intrări și 8-10
ieșiri)

Figura 1.3 – PLC Telemecanique Zelio SR2 din categoria Micro

-automate programabile modulare – acest tip de PLC se încadrează în clasă standard sau în clasa
PAC (Programmable Automation Controller – Controler Programabil de Automatizare). Acestea
din urmă reprezintă vârful tehnologiei în materie de automate programabile, având o putere de
procesare foarte mare, timp de procesare foarte scurt și un număr extraordinar de mare de intrări și
ieșiri, prin intermediul extensiilor.

Fig 1.4 - Modelul Siemens S7-1500 - PAC

19
Analiza oricărui automat prin aplicarea unui experiment se face printr-o metodă grafică
denumită arbore de experiment. Arborele automatelor programabile (PLC - Programmable Logic
Controller), pe lângă conexiunile cu instrumentele de măsură şi senzorii din procesul de
automatizare, permit comanda întregului proces şi comunică operatorului stările procesului prin
semnale vizuale şi sunet şi/sau printr-o reţea de comunicaţie la un computer local. Aceste
caracteristici permit exploatarea automatizări la un înalt grad de flexibilitate, prin schimbarea şi
monitorizarea mult mai comodă a parametrilor de bază a procesului.
Fiecare componentă din sistemul de control a procesului joacă un anumit rol, în concordanţă cu
importanţa sa. Spre exemplu, fără nici un senzor, PLC-urile nu ar putea ştii modul de variaţie în
timp a parametrilor principali ai procesului (consideraţi parametri de intrare). În sistemele automate,
PLC-urile sunt partea centrală a sistemului de control sau a automatizării.
Prin executarea programului înregistrat în memorie, PLC-ul monitorizează în mod continuu
stările sistemului prin recepţia semnalelor de la dispozitivele de intrare (senzori). Pe baza logicii
implementate în program PLC-ul determină ce acţiune trebuie executată pentru a comanda un
instrument. Pentru a comanda mai multe procese simultan este posibil să conectăm mai multe PLC-
uri la o unitate centrală (un calculator). Odată cu invenţia automatului programabil, s-au schimbat
foarte multe în proiectarea sistemelor de control automate. Au apărut mai multe avantaje.

Avantajele panourilor de automatizare cu automate programabile se pot prezenta în câteva


subpuncte:

 În comparaţie cu un panou de automatizare clasic, numărul necesar de conductoare este


redus cu 80%;
 Consumul este foarte mult redus deoarece PLC-ul consumă mult mai puţin decât releele din
panoul de automatizare convenţional;
 Funcţia de detectare a erorilor din automatul programabil este foarte rapidă şi foarte uşor de
utilizat;
 Schimbarea secvenţelor de operare din cadrul aplicaţiei este diferită de la proces la proces şi
poate fi făcută foarte uşor înlocuind sau modificând programul scris în automatul
programabil cu ajutorul unui PC (aceasta acţiune nu necesită schimbarea conductoarelor sau
recablarea panoului de automatizare – aşa cum se întâmpla la panourile de automatizare
clasice – ci se rezumă doar la interconectarea dispozitivelor necesare la intrarile şi/sau
ieşirile PLC-ului);
 Panourile de automatizare cu PLC necesită câteva piese de schimb;
 Este mult mai ieftin în comparaţie cu un sistem de automatizare clasic, deoarece fiind dotat
cu un număr larg de intrări-ieşiri, se poate conecta un număr mare de periferice atunci când
se doreşte realizarea unor funcţii complexe;
 Repunerea în funcţie a unui PLC se face mult mai repede şi uşor decât orice releu
electromecanic sau de timp.

Dintre dezavantajele lucrului cu automate programabile putem menţiona:

1. aplicaţii ‘fixe’: unele aplicații nu au nevoie de automat programabil datorită gradului foarte
mic de complexitate neexistând astfel necesitatea achiziţionarii unui automat programabil
relativ sofisticat;
2. probleme de mediu: în unele medii există temperaturi ridicate sau alte condiţii care pot
duce la deteriorarea automatelor programabile astfel că acestea sunt greu sau chiar imposibil
de utilizat;
3. funcţionare ‘fixă’: dacă nu apar schimbări în cadrul procesului, de multe ori folosirea
automatului poate fi mai costisitoare.

20
1.2 Structura internă a unui automat programabil

PLC-ul este actualmente un sistem industrial cu microcontroler (iniţial a fost numit procesor
în loc de microcontroler) care se compune dintr-o parte hardware şi software specifică şi adaptată să
funcţioneze în medii industriale. Arhitectura generală a unui automat programabil este desfăşurată
în jurul unei magistrale de date la care sunt conectate circuitele de intrare-ieşire, unitatea centrală
şi memoria sistemului.
Variabilele de intrare sunt realizate sub forma diverselor elemente de comandă şi
măsurare incluse în sistemele operaționale şi auxiliare ale roboților: limitatoare de poziție,
mărimi mecanice de la traductoare de deplasare incrementală sau absolute sau chiar de la sisteme
de măsurare analogică după o conversie analog numerică. Variabilele de ieşire dirijează
acționarea elementelor de execuție de tipul contactelor, electrovalvelor, elementelor de afişare
etc.Circuitele de interfață intrare-ieşire au rolul de a converti semnalele de intrare de diverse
forme în semnale logice adaptate unității centrale şi de a transforma semnalele logice ale unității
în semnale de ieşire corespunzătoare acționării impusă de sistemul de forță al maşinii.

Figura 1.5 - Schemă bloc a unui PLC

O atenţie deosebită trebuie acordată separării galvanice a microcontrolerului faţă de partea


de forță și execuție din mediul industrial.
Componentele pot diferi ca numar de la un exemplar la altul dar elementele care se regăsesc
în general sunt următoarele:

1. unitatea centrală: reprezintă partea cea mai importantă a automatului programabil si este
compusă din 3 parți importante: procesor, memorie și sursa de alimentare. Prin intermediul
acesteia se realizează practic conducerea întregului proces;
2. unitatea de programare: la ora actuală este reprezentată în multe cazuri de către un
calculator prin intermediul căruia pot fi scrise programe care apoi sunt încărcate pe unitatea
centrală şi rulate. În cazul în care se doreşte o unitate mai uşor de manevrat sunt puse la
dispoziţia programatorilor (de catre majoritatea firmelor) console (sisteme de gen laptop)
prin intermediul cărora pot fi scrise programe pentru automate;
3. modulele de intrare/ieşire: permit interconectarea cu procesul primind sau transmiţând
semnale către acesta. Acestea pot fi cuplate direct cu unitatea centrală sau prin control la
distanţă (dacă este cazul pentru un anumit proces);
4. şina: dispozitivul pe care sunt montate unitatea centrală, modulele de intrare/ieşire şi alte
module funcţionale adiţionale (dacă este cazul).

21
1.2.1 Unitatea centrală de procesare

Unitatea centrală de procesare (CPU) este creierul automatului programabil. CPU-ul este în mod
uzual un microcontroler. Odinioară, aceste microcontrolere erau pe 8 biţi, cum ar fi 8051, iar
actualmente sunt microcontrolere pe 16 sau 32 de biţi. În automate programabile de marcă, cum ar
fi Siemens, Hitachi şi Fujitsu, o să regăsiţi diferite tipuri de microcontrolere produse de diferite
firme, cum ar fi Motorola. Modulul de comunicaţie este ataşat la unul din porturile
microcontrolerului. Automatele programabile au diferite rutine pentru verificare memoriei, asta din
motive de siguranţă. La modul general vorbind, unitatea generală de procesare efectuează o serie
întreagă de rutine de verificare a stării tehnice a PLC-ului. Pentru semnalizarea diferitelor erori sau
stări de funcţionare PLC-urile sunt dotate cu indicatori optici (diode luminiscente sau leduri).

1.2.2 Memoria

Memoria sistemului - actualmente de tip FLASH, este utilizată de automatul programabil


pentru stocarea programului folosit la controlul automatizării. Înainte să fie scris în memorie,
programul trebuie compilat, cu ajutorul altui program cu ajutorul căruia a fost scrisă logica
automatizării în ladder diagram. Reprogramarea sau rescrierea memoriei se realizează, de regulă, cu
ajutorul unui cablu serial. Memoria utilizată este împărţită în diferite blocuri cu diferite funcţii.
Anumite părţi ale memoriei sunt folosite pentru a înregistra stările porturilor (intrare sau ieşire).
Fiecare stare a memoriei este stocată printr-un bit: 1 sau 0. Fiecărei intrări sau ieşiri îi corespunde
un bit din memorie. Alte părţi ale memoriei stochează variabilele pe care le foloseşte programul.
Spre exemplu, perioada de temporizare ori valoarea numărată pot fi stocate în această parte a
memoriei. Fiecare PLC este în esenţă un sistem cu microcontroler, unitatea centrală de procesare a
automatului programabil se bazează pe un microcontroler, sau mai recent, pe un procesor PC de
generaţie mai veche – care are conectate diferite periferice: intrări ieşiri digitale sau relee ca în cazul
nostru. Iniţial s-a utilizat programarea în ansambler, care se mai utilizează şi în prezent la
programarea microcontrolerelor. Firmele producătoare de PLC-uri au trebuit să dezvolte acest mod
de programare pentru a fi mult mai uşor înţeles de către electricieni şi tehnicieni, şi bineînţeles,
pentru a se aprofunda într-un timp cât mai scurt.

1.2.3 Programarea automatelor programabile

PLC-ul poate fi reprogramat cu ajutorul unui computer (cea mai comodă cale), dar poate fi
programat şi manual cu ajutorul unei console. Acest lucru înseamnă că fiecare automat programabil
poate fi programat cu ajutorul unui computer care are instalat un program special pentru operaţia
asta. Astăzi calculatoarele pot utiliza linii de transmisie pentru interconectarea PLC-urilor şi
programarea lor. Este un avantaj enorm pentru industrie. O dată ce PLC-ul este conectat la PC,
pentru început se poate citi programul deja scris în acesta ( dacă a mai fost programat anterior).
Comunicaţia cu PLC-ul este foarte importantă deoarece, pe lângă celelalte avantaje care le aduce,
permite monitorizarea procesului de automatizare de la distanţă, inclusiv verificarea stării PLC-ului.

Aproape fiecare program pentru programarea automatelor programabile include diferite opţiuni
utile ca: trecerea din ON în OFF a intrărilor și ieșirilor, simularea programului în timp real ş.a.m.d.
Aceste opţiuni sunt necesare pentru determinarea erorilor sau a funcţionării defectuoase a
programului. Programatorul poate adăuga comentarii, numele intrărilor şi ieşirilor, foarte utile în
întreţinerea sistemului. Spre exemplu, adăugarea comentariilor ajuta electricienii şi tehnicieni să
înţeleagă mult mai bine schema de comandă schiţată în mediu de programare ladder diagram.
Aceste comentarii ajuta foarte mult la întreţinerea şi depanarea automatizării.

22
1.2.4 Sursa de alimentare

Sursa de alimentare are rolul de a alimenta cu energie electrică automatul programabil. Majoritatea
PLC-urilor lucrează cu tensiunii de 24V DC sau 230 VAC. Unele automate programabile se
alimentează printr-un modul separat. PLC-urile cu sursă de alimentare separată sunt automate
programabile mari. Pentru a determinarea puterea electrică a sursei de alimentare va trebui să
cunoaştem consumul PLC-urilor, determinat în mare parte, de către necesarul de curent al ieşirilor.
Sursa de alimentare trebuie să îndeplinească anumite cerinţe de compatabilitate electromagnetică,
ca de exemplu: să fie imună la perturbaţii electromagnetice, medii corozive, întâlnite cu
preponderenţă în mediul industrial.

Figura 1.6- Schemă de alimentare la rețea Figura 1.7- Schemă de alimentare de la o sursă de 24 V DC

1.2.5 Intrările automatului programabil

Inteligenţa unui sistem de automatizare depinde în mare măsură de capabilitatea automatului


programabil să citească semnalul provenit de la diferiţi senzori şi dispozitive de intrare. Taste,
keypad-uri, comutatoare cu şi fără automenţinere, sunt câteva din elementele care au făcut legătura
dintre om şi maşina. Pe de altă parte, pentru a verifica piesele care sunt în mişcare, pentru a verifica
presiunea sau nivelul de fluid, veţi avea nevoie de traductoare care să transmită la ieşirea lor un
semnal unificat (0…5V sau 4…20mA), recunoscut de automatul programabil.

Figura 1.8 - Principalele elemente ce se conectează la intrările unui A.P

Intrările unui automat programabil pot fi de curent continuu sau de curent alternativ, intrările de
curent alternativ acceptă și semnale de curent continuu, dar sensul invers nu este posibil.

23
Figura 1.9 – Intrările de curent continuu și de curent alternativ

Un automat programabil poate fi prevăzut cu intrări comune sau cu intrări separate.Varianta de


intrări comune este mai economică dar poate impune anumite restricții de conectare a elementelor
de intrare.Varianta cu intrări separate (izolate una față de celelalte) necesită un număr mai mare de
terminale de intrare, dar permite o libertate mai mare în conectarea elementelor de intrare.

Figura 1.10 - Automat programabil cu intrări comune (neizolate)

Figura 1.11 –Automat cu intrări separate (izolate)

24
Intrările de curent continuu pot fi:

 Tip receptor ( sinking input)


 Tip sursă ( sourcing input)
 Biderecționale ( sinking-sourcing input)

Figura 1.12 – Conexiune dispozitiv tip sursă → intrare tip receptor

Figura 1.13 – Conexiune dispozitiv tip receptor → intrare tip sursă

În funcție de tipul intrării este necesar să fie respectate câteva reguli atunci când legăm
contacte sau senzori la acestea. Senzorul sau contactul care furnizează curent în starea ON este de
tip sursă (sourcing device), în vreme ce senzorul sau contactul care primește curent în starea ON
este de tip receptor (sinking device).
Intrarea care primește curent în starea ON este de tip sinking input, iar intrarea care furnizează spre
exterior curent în starea ON este de tip sourcing input.
În mod obligatoriu elementele care furnizează curent trebuie legate la intrările care primesc curent,
iar în mod analog, elementele care primesc curent trebuie legate la intrările care furnizează curent
spre exterior.

25
Figura 1.14 – Conectarea dispozitivelor de tip sursă la intrări de tip receptor ( intrări cu punct
comun)

Din punct de vedere al tipului modulului de intrări, dacă avem intrări discrete cu punct comun,
acestea nu permit conectarea ambelor tipuri de elemente de intrare.
În cazul modulelor de intrări separate, putem conecta ambele tipuri de elemente de intrare, fară
restricții.

Figura 1.15 – Conectarea dispozitivelor de tip sursă și receptor la intrări separate ( fară punct
comun)

26
1.2.6 Ieşirile automatului programabil

Un sistem de automatizare este incomplet dacă la ieşirile sale nu este conectat niciun dispozitiv.
Cele mai întâlnite dispozitive sunt: motoare, bobine, relee, indicatoare, sunete de semnalizare
ş.a.m.d. Pentru a porni un motor sau alimenta un releu, PLC-ul transmite “1” logic la ieşirea
aferentă – în funcţie de caracteristicile programului. În acest caz spunem că ieşirea automatului
programabil este digitală. Totuşi, ieşirile pot fi şi analogice. O ieşire analogică este utilizată pentru a
genera un semnal analogic (ex. un motor funcţionează cu o anumită viteză care corespunde unei
anumite tensiuni).

Figura 1.16-Principalele elemente ce se conectează la ieșirile unui A.P

Figura 1.17 – Schema bloc a unei ieșiri a automatului programabil

Ieșirile cu relee se folosesc atât pentru dispozitive de ieșire de curent continuu cât și pentru
dispozitive de curent alternativ. Acest tip de ieșire are următoarele caracteristici:

 elementul de comutație este reprezentat de un releu ce poate avea: contact normal deschis,
contact normal închis, sau ambele tipuri de contacte.

Figura 1.18-Contact normal deschis Figura 1.19 – Contact normal închis

Figura 1.20 – Contact cu ambele tipuri de contacte

27
 acest tip de ieșiri au câteva dezavantaje, acestea fiind:

1. fiabilitate redusă
2. viteză mică de comutație datorită inerției părților mecanice aflate în mișcare
3. arcul electric produs la închiderea sau deschiderea contactelor creează interferențe
electromagnetice

 ieșirile pot fi complet separate sau pot avea un terminal comun, situație asemănătoare cu
intrările

Figura 1.21 – Ieșiri cu terminal comun

Figura 1.22 – Ieșiri complet separate

28
Ieșirile cu tranzistoare se folosesc doar pentru dispozitive de ieșire de curent continuu.
Acest tip de ieșire prezintă următoarele caracteristici:

 elementul de comutație este un tranzistor de putere, aflat în configurație Open Collector


 în vederea protejării tranzistorului, ieșirile sunt prevăzute cu elemente de protecție la
suprasarcini ( siguranțe fuzibile) sau elemente de protecție la supratensiuni ( diode montate
antiparalel pe sarcină, varistoare sau diode Zener)
 pot avea comportament de tip sursă sau de tip receptor

Figura 1.23 – Ieșire cu tranzistor PNP → ieșire de tip sursă

Figura 1.24 – Ieșire cu tranzistor NPN → ieșire de tip receptor

1.2.7 Extensia numărului de intrări / ieşiri

Orice automat programabil are un număr limitat de intrări / ieşiri. Numărul de intrări sau ieşiri poate
fi mărit prin conectarea unui modul extern. Acest modul este o extensie de intrări și ieșiri, extensie
care diferă de la PLC la PLC (ex. Dacă ieşirea este un releu, atunci tranzistorul care acţionează
releul poate fi un mod extensie).

29
1.2.8 Funcţionarea automatului programabil

Funcţia de bază a unui automat programabil este aceea de scanare continuă a stărilor programului.
Prin scanare se înţelege verificarea continuă a condiţiilor programului într-o perioadă de timp.
Acest proces de scanare a stărilor se compune din trei paşi:

Testarea intrărilor (Input Scan). Pentru început PLC-ul testează fiecare intrare cu intenţia de a
depista care este în starea “ON” şi care este în starea “OFF”. Cu alte cuvinte, PLC-ul verifică dacă
este conectat vreun senzor sau comutator la intrări. După aceea, acest pas este memorat şi va fi
folosit în următorul pas.
Executarea programului (Program Scan). Aici PLC-ul execută programul, instrucţiune cu
instrucţiune. Cunoscând starea intrărilor obţinută din pasul precedent, atunci programul va executa
paşii necesari. Reacţia executării unui pas se poate observă prin activarea unei ieşiri, care poate fi
memorată şi utilizată în pasul următor.
Verificarea şi corectarea stări ieşirilor(Output Scan). În pasul final, PLC-ul verifică starea
ieşirilor şi corectează, dacă este cazul, aceste erori, utilizându-se de logica programului.

Figura 1.25 - Ciclu de scanare al automatelor programabile

1.3 Interfațarea senzorilor și a elementelor de execuție la A.P

Conectarea unui automat la dispozitivele de intrare-ieşire ale unei maşini se realizează prin
intermediul unor circuite de interfață ce asigură compatibilitatea în tensiune şi putere a semnalelor
transmise. Aceste circuite primesc de la sistemele de măsurare şi senzoriale ale maşinii informația
de măsurare corespunzătoare sau generează către sistemul de acționare al acesteia mărimile de
comandă adecvate. Primul tip de circuit defineşte sistemul de interfațare pe intrarea automatului, iar
al doilea pe ieşire. Mărimile transmise pot reprezenta variabile de tip secvențiale sau variabile
numerice în conformitate cu structura algoritmilor de comandă utilizați şi cu modalitățile de
prelucrare internă, în automat, a informației de operare. Aceste mărimi sunt captate de la maşină sau
sunt transmise către aceasta în mod periodic, conform procedurii de dialogare utilizată de automat.
Trebuie subliniată, încă o dată, absența unui sistem de întreruperi în structura internă a automatului
ceea ce impune interogarea periodică a mărimilor de intrare (de la maşină) şi activitatea tot periodică
a canalelor de ieşire (spre robot).

30
Dialogul automat-maşină poate fi realizat în trei moduri:
 la fiecare început de ciclu al programului sunt achiziționate toate mărimile de intrare,
se generează toate ieşirile determinate în ciclul precedent iar ulterior se trece la
execuția programului propriu-zis;
 sunt achiziționate întâi intrările, se execută programul şi se generează ieşirile obținute
după noua execuție a programului;
 intrările şi ieşirile sunt achiziționate sau generate la cerere, în conformitate cu
structura logică a programului.

1.3.1 Sistemul de interfață de intrare

Informațiile de intrare în automat sunt reprezentate de o serie de variabile de tipul „totul sau
nimic” ce definesc anumite poziții sau stări funcționale ale maşini precum şi de variabilele numerice
obtinute la ieşirea traductoarelor de deplasare. Aceste mărimi definesc, în ansamblu, câmpul de
variabile de intrare ce constituie sursa unor operanzi primari în prelucrarea ulterioară a informației.
Selecția acestor mărimi se obține prin mai multe nivele de adresare în funcție de numărul de intrări
aplicate şi modul lor de organizare.
Pentru realizarea compatibilității electrice cu magistralele automatului, semnalele primare de
la intrare sunt prelucrate în circuite specializate CI (circuite de intrare). Acestea asigură adaptarea de
impedanță necesară, separarea galvanică a sursei primare, traductorul, circuitele interne ale
automatului, formarea semnalului electric în tensiune la parametrii acceptați de logica internă a
acestuia, etc.
Circuitul reprezentat în figura următoare constituie o configurație utilizată pe larg în acest
scop.

Figura 1.26 - Circuit de intrare

Acest circuit conține un prim grup de elemente ce asigură detecția semnalelor pozitive cu o
amplitudine suficient de mare (deci eliminarea semnalelor pozitive de amplitudine redusă), diodele
D şi DZ şi un circuit de intrare de tip trece-jos, R1, R2, C1. A doua parte a circuitului este obtinuță
dintr-un formator cu prag de tip Schmith ce permite obținerea caracteristicilor rectangulare şi de
nivel constant pentru semnalele prelucrate. Cele două părți sunt cuplate printr-un element optocuplor
(OC) ce asigură totodată separarea galvanică față de sursa primară.
Sistemul acesta asigură transferul mărimilor de intrare pe magistrala de date a automatului.
Dacă prelucrarea logică a automatului este numai de tip secvențial, magistrala de date cuprinde
numai o singură linie pe care vehiculează informatia respectivă. În cazul în care procesul
automatului este de tip numeric atunci magistrala cuprinde în mod curent 8 linii D0,D1, …D7.
Variabilele de intrare de tip secvențial sunt preluate de linia D0 iar vectorul de intrare numeric este
transferat în paralel pe cele 8 linii ale magistralei.
Robotul poate accepta ca variabile de tip secvențial toate mărimile generate după principiul
„totul sau nimic”, deci limitatoare de poziție, limitatoare de cap de cursă, senzori de proximitate,

31
anumiti senzori tactili, traductoare de forță–moment cu prag, etc. Toate aceste mărimi sunt
organizate pe module şi conectate direct, sau după câteva adaptări, la bornele de intrare ale
interfeței.
Valorile numerice provin direct din traductoarele de măsurare absolute sau din circuitul
numeric (numărătorul de impulsuri) asociat măsurării incrementale. În această categorie pot fi
incluse, de asemenea, mărimile furnizate de traductoare senzoriale de tip analogic după conversia
acestora în mărimi numerice. Se pot enumera astfel traductoare de tip potențiometric, majoritatea
senzorilor tactili, traductoare de forță – moment, etc.

1.3.2 Sistemul de interfaţă de ieşire

Transferul datelor de la automat spre sistemul de acționare al maşinii sau spre anumite
dispozitive ale instalației tehnologice se realizează prin tehnici de demultiplexare succesivă, în
paralel în funcție de numărul variabilelor controlate. Variabilele de ieşire furnizate de automat pot fi
de tip secvențial pentru acționarea unor circuite de forță cu sistem de comandă pe poartă (tiristoare,
triacuri), a unor relee intermediare, contactoare, etc, fie de tip numeric pentru controlul unor bucle de
reglare din sistemul de conducere al maşinii.
Cuplarea sistemului de interfață la maşină se realizează prin circuite de ieşire specializate ce
permit adaptarea electrică cu sistemul de acționare al maşinii, realizarea nivelului de putere solicitat
de circuitele de forță precum şi separarea galvanică a etajelor.
Circuitul este construit sub forma unui etaj amplificator de tip Darlington (după cum se poate
vedea în figura de mai jos) la care comanda este dată printr-un element optocuplor (OC). În ieşirea
amplificatorului este montată sarcina propriu-zisă, protejată la supratensiuni printr-o dioda de
protectie.

Figura 1.27 - Circuit de ieșire

Ansamblul acestor mărimi defineşte câmpul variabilelor de ieşire secvențiale sau


numerice. În majoritatea programelor de conducere, aceste mărimi sunt generate la sfârşitul unor
operații logice sau aritmetice şi marchează de obicei finalizarea unor secvențe funcționale. În
unele cazuri, prelucrarea logică executată într-o anumită fază necesită apelarea unor variabile de
ieşire determinate într-o fază anterioară. Pentru a facilita aceste operatii, unele automate conțin o
memorie suplimentară (RAM) în care se înscriu valorile ieşirilor simultan cu înscrierea în
circuitele de ieşire. Se obține astfel în memorie o imagine a mărimilor de ieşire ce poate constitui
o sursă pentru operanzii implicați în programele automatului.

32
1.4 AUTOMATUL PROGRAMABIL FEC ( Front End Controler )

Automatul programabil FEC a fost conceput pentru aplicaţii de automatizare şi poate înlocui
cu succes panourile de comandă cu relee tradiţionale.
Aceste automate reprezintă un sistem de comandă ideal pentru aplicaţii cu număr limitat de
puncte de control ( intrări / ieşiri ).
Se pot utiliza pentru aplicaţii de control, măsurare, reglare, monitorizare şi comunicaţie în
domenii industriale foarte diverse cum ar fi: reglarea presiunii, a debitului, a temperaturii, a
nivelului, etc.
Automatul are 12 intrări şi opt ieşiri.
În interiorul automatului programabil intrările sunt împărţite în două grupuri ( datorită
senzorilor care pot fi pnp sau npn).
În interiorul automatului programabil toate intrările dintr-un grup sunt conectate la un nod
comun.: S0 pentru primele 8 intrări şi S1 la ultimele intrări.
În cazul intrării de tip pnp , nodul comun S0 respectiv S1 este conectat la tensiunea de 0V
iar un senzor de câmp ( limitator, buton ) comută la intrare o tensiune de 24V.
În cazul intrării de tip npn, nodul comun este conectat la tensiunea 24V iar un senzor de
câmp comută intrarea la potenţialul de masă 0V.
Ieşirile automatului sunt în numar de 8 , existând ca şi în cazul intrărilor grupuri de ieşiri
conectate la acelaşi nod.
Există trei astfel de grupuri: primele patru ieşiri formează primul grup – C0, următoarele
două ieşiri formează al doilea grup –C1, iar ultimele două ieşiri formează al treilea grup – C2.
Cele trei noduri de lucru pot fi alimentate din exterior cu aceeaţi tensiune: 24V, sau pot fi
alimentate, în funcîie de nevoile de comandă ale utilizatorului cu tensiuni diferite:Co cu 12V c.c.,
C1 cu 110V c.a., C2 cu 220V c.a.
La comanda de activare a unei ieşiri, releul acesteia se închid, la borna ieşirii fiind
disponibili 24V.
Pentru protecţia la scurtcircuit a releelor de ieşire. Între sursele de tensiune şi bornele C0,
C1, C2 se pot monta siguranţe fuzibile ce au rolul de a prelungi durata de viaţă a automatului
programabil.

DATE GENERALE
Dimensiuni (WxHxD) 130x80x35 mm
Temperatura de funcţionare 0÷55ºC
Tensiune de lucru 100...265 V c.a.
Putere consumată 1,6 W
Protecţie IP 20
Conexiuni de intrare / ieşire Terminale cu şurub

INTRĂRI DIGITALE
Număr total 12 (pnp sau npn)
Intrări pentru numărare rapidă 2( max.4 kHz)
Tensiune de intrare / curent 24Vc.c./7 mA
Tensiunea minimă pentru 1 logic 15V c.c.
Tensiunea maximă pentru 0 logic 5 V c.c.
Constanta de timp a filtrului de zgomot pentru 5 ms
intrări
Izolaţie electrică Da (cuplare optică )
Indicarea stării intrării Cu L.E.D-uri

33
IEŞIRI DIGITALE
Număr 8
Tip Contacte releu
Izolaţie electrică Da (cuplare optică )
Grupuri de izolaţie electrică 3 grupuri – 4/ 2/ 2 contacte
Tensiune maximă de comutaţie 250 V c.a./ 30 V c.c.
Curent maxim de comutaţie 2ª
Număr de cicluri mecanice de comutaţie ( fără 20 milioane
curent )
Număr de cicluri pentru sarcină rezistivă / la curent 1 000 000/ 0,2 A
de.. 500 000 / 1 A
300 000/ 2 A
Număr de cicluri pentru sarcină inductivă / la 800 000 / 0.2 A
curent de.. 300 000 / 1A
100 000 / 2 A
Timp de răspuns 10 ms
Indicarea stării ieşirii Cu L.E.D.- uri

Tabel 1.3 - Date tehnice Festo FC 34

Procesor Intel 80186


Memoria de programe compilate 256kB x 16 biţi, flash (› 100 000 cicluri citire )
Memoria de stocare a programelor sursă 32 kB în memoria flash
Memoria de lucru 512 kB DRAM, (480 kB liberă)
Memoria de date 32 kB ( date permanente 2 kB în memoria Flash )
Interfaţa de comunicare pentru programare Comunicaţie serial RS232, 3 fire, 9600 baud, izolaţie
optică, conector RJ11 mini
Extensie de intrări / ieşiri Posibilitate de cuplare a maxim 2 FEC-uri prin cablu de
extensie cu 4 fire, comunicaţie serial asincronă, tehnologie
TTL, conector tip R112, viteza de comunicaţie maxim
115 kbaud
Comenzi operaţionale Întrerupător RUN / STOP
Indicator de stare LED cu trei culori, cu semnificaţiile:
Galben – funcţionare oprită, STOP
Verde – funcţionare normală, RUN
Roşu – eroare în funcţionare, ERROR
Sistem de operare Runtime kernel FST- IPC / FEC

Tabel 1.4- Caracteristici hardware

Unitatea centrală a automatului programabil FEC este un microprocesor AM186 care funcţionează
la 20 MHz .
Pentru programarea aplicaţiilor de automatizare se poate alege între două medii de programare:
 Mediul FST ( Festo Software Tools ) şi FEC ( Front End Controler ) este rulat ca aplicaţie
MS- DOS şi suportă limbajele de programare STL ( Statement List ) şi Ladder Diagram
(LDR ), care sunt un standard în programarea automatelor programagile.
 Mediul FEC DOS – SPC care oferă posibilitatea programării, aplicaţiilor de automatizare cu
limbaje de nivel înalt (Pascal, C, Basic, etc ).

34
1.4.1 Montarea automatului programabil pe șină DIN 35mm

1.Montați automatul programabil în partea superioară a șinei după care apăsați cu ambele mâini.

2.În acest mod automatul programabil se va monta pe șina DIN 35 mm.

Figura 1.28-Montare PLC pe șină DIN

1.4.2 Montarea automatului programabil pe perete.

Automatul programabil este prevăzut cu două gauri cu un diametru de 4mm, acestea fiind dispuse
pe diagonală.Astfel sunt necesare pentru montarea automatului programabil pe perete două șuruburi
cu un diametru de 4mm.

Figura 1.29-Montare PLC pe perete

35
Capitolul 2

Limbaje de programare specifice automatelor programabile

2.1 Clasificarea limbajelor de programare

Documentul care definește metodele de programare ale AP este standardul Comisiei


Internaționale pentru Electrotehnică (IEC) IEC 1131-3.
Standardul IEC 1131-3 creat de Comisia Europeană de Electricitate, este cel mai important
standard internaţional creat în scopul dezvoltării şi programării automatelor programabile.
Standardul IEC 1131 -3 se referă la :
 standardizarea limbajelor de programare;
 crearea programelor independente;
 deschiderea interfeţelor în sistemele de programare;
 portabilitatea programelor pe diferite calculatoare.
Într-un singur automat programabil, pot coexista mai multe limbaje de programare, combinate
în diferite programe şi proceduri.
IEC 1131 este un standard pentru programarea automatelor programabile, care definineşte
cinci limbaje de programare:
 Instruction List - IL, cu structură asemănătoare limbajelor de asamblare ale
microprocesoarelor;
 Structured text - ST, care folosește instrucțiunile de atribuire, selecție și control al
subprogramelor cu o structură apropiată de limbajele de programare de nivel înalt;
 Ladder Diagram - LD, este un limbaj semi grafic, asemănător schemelor cu circuite cu
relee și contacte și operează în special cu variabile logice;
 Function block diagram - FBD, este o extensie a limbajului LD care permite și lucrul cu
blocuri complexe;
 Sequential function chart - SFC, este un limbaj grafic secvențial, asemănător
organigramelor funcționale, care permite utilizarea de funcții complexe și proceduri.

Figura 2.1-Limbaje de programare specifice AP-urilor

36
Unificarea şi standardizarea acestor cinci limbaje reprezintă un compromis în conformitate cu
necesităţile istorice, regionale şi specifice ramurii în care se lucrează. Elementele limbajului
sunt explicate cu ajutorul proceselor executate de maşinile implicate în procesul de producţie.
În Germania se utilizează la scară largă Instruction List şi Function Block Diagram, în timp ce
în SUA şi UK se utilizează îndeosebi Ladder Diagram.

2.2 Limbajul Ladder

Ladder diagram constă dintr-o linie verticală, regăsită în partea stângă a programului, şi una sau mai
multe linii orizontale, pe care se înseriază, spre exemplu: contactele de intrare, ieşire şi anumite
elemente logice de program. Linia din partea stângă se numeşte “bus bar” iar linia orizontală este
linia de instrucţiuni. Pe linia de instrucţiuni se dispun elementele logice ale programului (contacte
normal-închise, normal-deschise, porți logice, contactoare etc). Combinând mai multe condiții sau
elemente logice pe linie, se poate determina care instrucțiune urmează să se execute şi în final care
element de ieşire îl poate comanda.
Cele mai multe instrucţiuni se pot realiza cu ajutorul unui singur operand iar altele cu mai mulţi
operanzi. Acest operand poate să fie o cifră binară dintr-o anumită locaţie a memoriei sau un număr.
Într-un exemplu precedent am prezentat operandul 0 din locatia de memorie IR000. În acest caz,
când veţi dori să apelaţi acest operand, atunci folosiţi semnul „#” sub cifra scrisă (precizarea asta e
foarte importantă pentru un compilator, ca să poată facă diferenţa dintre o constantă şi o adresă de
memorie).
Ladder diagram este un limbaj de programare grafic . Elementele principale din acest limbaj
sunt contactele ( contacts ) şi spirele (coils ) în diferite forme şi cu diferite semnificaţii. Ele sunt
legate într-o secvenţă logică cu ajutorul unor trasee grafice numite rungs şi branches, similare cu
conductoarele de legătură din circuitele electrice.
Acest limbaj este utilizat pentru realizarea aplicaţiilor de către programatorii ce au
experienţe anterioare în proiectarea aplicaţiilor cu relee şi contacte. Este de fapt o reprezentare
grafică a operaţiilor booleene ce realizează o combinaţie între contacte (variabilele de intrare ) şi
bobine (variabilele de ieşire).
Programul se face de sus în jos, iar o reţea este executată de la dreapta la stânga. O reţea Ladder este
conectată la stânga şi la dreapta la bare de alimentare de la o sursă de putere. Componentele de bază
ale limbajului sunt contactele şi bobinele. Un program cu componente de bază este un program
Ladder pur. În afara simbolurilor de bază într-o reţea Ladder, pot apărea şi o serie de blocuri ce
realizează funcţii ale automatului: numărătoare și temporizatoare, operaţii matematice sau logice,
comparaţii sau deplasări.
Un astfel de program este, de fapt, o combinaţie dintre limbajul Ladder şi FBD.
Contactele şi bobinele sunt conectate la barele de alimentare prin linii orizontale şi verticale.
Fiecare segment al unei linii poate avea valoarea TRUE sau FALSE. Starea booleană a segmentelor
legate împreună este aceeaşi. Orice linie orizontală legată la bara de alimentare stângă se află în
starea TRUE. Deasupra simbolului grafic se află variabila asociată acestuia.Contactele de bază sunt:
Contactul direct
Contactul invers
Contacte de sesizare a frontului crescător sau descrescător.

Contactul direct realizează o operaţie booleană între starea legăturii stângi şi variabila booleană
asociată. Starea legăturii drepte este obţinută printr-un AND logic între starea legăturii stângi şi
valoarea variabilei asociate contactului.

Contactul inversat realizează o operaţie booleană între starea legăturii stângi şi negația variabilei
booleene asociate. Starea legăturii drepte este obţinută printr-un AND logic între starea legăturii
stângi şi valoarea negată a variabilei asociate contactului.

37
Contactul de sesizare a frontului crescător realizează o operaţie booleană între starea legăturii
stângi şi frontul crescător al variabilei booleene asociate. Starea legăturii drepte este setată în TRUE
atunci când starea legăturii stângi este TRUE şi variabila asociată contactului trece din FALSE în
TRUE. Starea este FALSE în orice alt caz.

Contactul de sesizare a frontului descrescător realizează o operaţie booleană între starea


legăturii stângi şi frontul descrescător al variabilei booleene asociate. Starea legăturii drepte este
setată în TRUE atunci când starea legăturii stângi este TRUE şi variabila asociată contactului trece
din TRUE în FALSE. Starea este FALSE în orice alt caz.

Bobinele de bază sunt:


Bobina directă
Bobina inversă
Bobinele de setare şi de resetare.

Bobina directă realizează o asociere între o variabilă de ieşire booleană şi starea legăturii stângi. La
unele implementări starea legăturii stângi se propagă spre legătura dreaptă şi se pot conecta mai
multe bobine în serie. La alte implementări, pentru a conecta mai multe bobine trebuie realizată o
derivaţie. Legătura dreaptă se consideră legată la bara de alimentare sau este efectiv legată.
Bobina directă realizează o asociere între o variabilă de ieşire booleană şi starea negată a legăturii
stângi. La unele implementări starea legăturii stângi se propagă spre legătura dreaptă şi se pot
conecta mai multe bobine în serie. La alte implementări nu există acest tip de bobină.

Bobina de setare realizează o setare a variabilei de ieşire asociate atunci când starea legăturii
devine TRUE. Valoarea variabilei rămâne TRUE până când o instrucţiune inversă, de resetare, se
aplică aceleiaşi variabile.

Bobina de resetare realizează o resetare a variabilei de ieşire asociate atunci când starea legăturii
stângi devine TRUE. Valoarea variabilei rămâne FALSE până când o instrucţiune inversă, de
setare, se aplică aceleiaşi variabile.
Etichete, salturi necondiţionate şi condiţionate.
Într-un program Ladder se pot utiliza etichete, salturi condiţionate şi necondiţionate pentru a
controla execuţia programului.
Eticheta se pune pe bara de alimentare stângă sau într-o reţea separată. Primitivele ( obiectele
grafice ) utilizate sunt diferite, în funcţie de implementarea limbajului.
Majoritatea mediilor de programare au posibilitatea de a converti un program LD într-unul STL şi
invers. Aceasta poartă numele de reversibilitate. În esenţă reversibilitatea arată că, indiferent de
limbajul în care este scris, un program ( LD sau STL ), el va fi memorat sub formă STL.

2.3 Limbajul Instruction List

Instruction List este un limbaj- text de asamblare, formulat pe baza instrucţiunilor de control
transmise între operator şi operant. În seria de instrucţiuni transmise fiecare instrucţiune începe pe
o nouă linie. Instrucţiunea porneşte cu operatorul şi opţiunile pentru modificări.
Pentru o anumită operaţie se pot folosi unul sau mai mulţi operanzi, separaţi prin virgulă.
Instrucţiunile trebuie să fie precedate de o etichetă urmată de două puncte. Eticheta acţionează ca o
adresă – salt. Etichetele pot fi identificate cu ajutorul simbolurilor. În cazul utilizării unui
comentariu, acesta se introduce între două steluţe şi trebuie să fie ultimul element al liniei.

38
Exemplu:

Instrucţiune

Eticheta Operator şi Operand Comentariu


modificare

Start: LD % I 1.2 (* piesa prezentă * )


AND % M 3.7 (* orificiu gata * )
ST % Q 2.4 (* semn * )
(* avans * )

Figura 2.2 - Exemplu program în limbajul Instruction List

Valoarea IMPUT % I1.2 este încărcată în acumulator şi ataşată cu valoare, FLAG-ului % M3,7 .
Rezultatul este Ouput % Q2.4.

Operator Modificare Operand Descriere / Semnificaţie


LD N Citeşte operandul specific acumulatorului şi
e şi egalează curentul rezultat cu acest operand
ST N Stochează curentul rezultat la operanzii specificaţi

S BOOL Rese Resetează operandul boolean la valoarea 1,


dacă curentul rezultat are valoarea booleană 1.
R BOOL Rese Resetează operandul boolean la valoarea 0,
dacă curentul rezultat are valoarea booleană 1.
AND N, ( BOOL Funcţia booleană ŞI
& N, ( BOOL Funcţia booleană ŞI
OR N, ( BOOL Funcţia booleană SAU
XOR N, ( BOOL Funcţia booleană SAU EXCLUSIV
ADD ( Adunare
SUB ( Scădere
MUL ( Înmulţire
DIV ( Împărţire
GT ( Comparaţie: >
GE ( Comparaţie: ≥
EQ ( Comparaţie: =
NE ( Comparaţie: <>
LE ( Comparaţie: ≤
LT ( Comparaţie: <
JMP C, N Etichetă Săritură la etichetă
CAL C, N Nume Invocarea schemei logice (Function blocks )
RET C, N Reîntoarcere la nume sau la schema logică
) Procesarea operaţiei RESET

Tabel 2.1- Operatori Instruction List conform standardului IEC 1131 -3

39
2.4 Limbajul Structured Text

Structured text este un limbaj de programare la nivel înalt bazat pe limbajul de programare
Pascal, care constă în expresii şi instrucţiuni ( de selecţie: IF, THEN, ELSE, etc; de repetiţie: FOR,
WHILE; de invocare a schemelor logice ).
Acest limbaj face posibilă formularea numeroaselor aplicaţii similare problemelor cu
algoritmi, de comandă a datelor şi de procesare a unei structuri complexe de date.

Operaţia Simbolul Prioritatea


Paranteză ( expresie ) Principală
Funcţie procesată Nume funcţie (lista para-
metrilor de transfer )
Exemplu:LOG(x), SIN(Y)
Exponenţială **
Semn -
Complement NOT
Înmulţire *
Împărţire /
Modulo MOD
Adunare +
Scădere -
Comparaţie <, >, ≤, ≥
Egalitate =
Inegalitate <>
ŞI boolean &, AND
SAU EXCLUSIV boolean XOR
SAU boolean OR Ultimă

Tabel 2.2 - Operatori Structured Text

O funcţie poate fi invocată cu o anumită expresie, cu condiţia să se specifice numele funcţiei


şi lista argumentelor ( între paranteze ).
Exemple de expresii în limbaj Structured text:
SIN (X)
4* COS(Y)
A≤B
A+B+C
Repartizarea unei sarcini este cea mai simplă instrucţiune. Această operaţie schimbă
valoarea variabilei din stânga semnului := cu valoarea expresiei din dreapta semnului :=. Fiecare
sarcină se încheie cu punct şi virgulă.
Exemplu:
A:=B semnifică faptul că valoarea variabilei B este înlocuită cu variabila A

CV : =CV+1 semnifică faptul că variabila CV este incrementată cu 1, ca rezultat al expresiei


CV+1 .

40
2.5 Limbajul Function block diagram

Function block diagram este un limbaj de programare grafic. Elementele acestui limbaj sunt
reprezentate grafic prin scheme logice. Acestea sunt interconectate prin linii de semnal, care fac
legătura directă cu reţeaua. Direcţia semnalului în reţea este de la stânga la dreapta. Dacă programul
face legătura cu mai multe reţele, secvenţele sunt proceste de sus în jos. Derularea secvenţelor
programului poate fi influenţată de folosirea elementelor de execuţie. Acest grup de elemente
include saltul condiţionat şi necondiţionat.
Saltul condiţionat ( reprezentat printr-o dublă săgeată ) este executat dacă condiţia de salt este pusă.
Exemplu: Dacă atât Imput %I1.1, cât şi Flag %M2.5 au semnalul 1, atunci saltul va fi executat în
reţeaua în care va fi identificată Varianta_1 şi procesarea va continua de la acest punct.
Dacă saltul va fi executat în reţea, corespondentul reţelei va avea un prefix-flag săltăreţ- cu un nume
simbolic, iar instrucţiunea va fi încheiată cu două puncte. Flagul săltăreţ va fi identificat în
concordanţă cu regulile simbolurilor.

AND
%I1.1
M2.5 >>Varianta_1
_

Figura 2.3-Exemplu salt condiționat

Programul FBD ce conţine simboluri logice (ex. & = ŞI logic ) şi se poate privi ca o cutie neagră cu
mai multe intrări şi o ieşire.

AND
Input0_0
Input0_1
Input0_2

AND OR
Input0_0
Input0_1
Input0_2 Output0_0

AND
Input0_0
Input0_1
Input0_2

Figura 15

Figura 2.4-Exemplu program în limbajul FBD cu simboluri logice

41
2.6 Limbajul Sequential function chart

Sequential function chart este un limbaj sursă folosit pentru structurarea secvenţelor de
control. Elementele limbajului sunt paşi, tranziţii, ramificaţii alternante și paralele. Fiecare pas
reprezintă o situaţie de prelucrare a programului de control, care poate fi activ sau inactiv.
Pasul este activ dacă acţiunea asociată este executată la timp.
Un pas conţine un număr de părţi de execuţie ale programului de control. Părţile de execuţie
asimilate unui pas, supranumite acţiuni, sunt formulate în blocuri de acţiune.
Toţi paşii dintr-un program trebuie să primească nume diferite. Chiar dacă doi paşi au
aceleaşi părţi de execuţie acestea vor fi reprezentate de două ori, deoarece informaţia este stocată în
controler pentru fiecare pas. Singura asociere a informaţiei cu pasul, ca şi accesul la date, este
efectuată cu ajutorul numelui.
Utilizatorul poate obţine astfel informaţii privind:
 Starea curentă a pasului: activ sau inactiv
 Timpul de la activarea iniţială a fiecărui pas.
Între paşi există condiţii care dau informaţii ( ex. Dacă se poate trece la pasul următor ). După
depăşirea unui pas se citesc condiţiile următoare. Dacă acestea sunt îndeplinite se trece mai departe,
dacă nu se aşteaptă îndeplinirea condiţiei.

S001 R Output0_0
R Output0_3
AN
Input0_1 D
Input0_3

S002 S Output0_0

OR Input0_7
Input0_4
Input0_5

S003 S Output0_3

Input0_6

S004 R Output0_0
R Output0_3

TRUE

Figura 2.5-Exemplu program în limbajul Sequential function chart

42
2.7 Programarea automatelor de tip FESTO

2.7.1 Programarea în limbaj Statement List

La programarea în limbajul STL programele sunt scrise în limbajul textn şi ca orice limbaj
text foloseşte un set de cuvinte cheie. Ordinea de scriere a instrucţiunilor şi tipul acestora determină
structura programului şi modul de funcționare al acestuia.
Menţionăm că limbajele STL implementate de alte firme respectă aceeaşi logică a
programelor chiar dacă folosesc alte cuvinte cheie.

2.7.2 Operanzi STL


Operanzii sunt identificatori ai sistemului (intrări, ieşiri, temporizatoare, numărătoare, etc) şi
reprezintă numele acestor resurse. Într-un program utilizarea acestor operanzi este singurul mod de
accesare a resurselor pe care le prezintă.
După dimensiunea lor există două tipuri de operanzi:
 operanzi de un singur bit (SBO- single bit operands);
 operanzi cu mai mulţi biţi (MBO-multibit operands)- în general 16 biți care formează
un cuvânt (word).
Operanzii de un bit pot fi evaluaţi ca adevăraţi sau falşi (1 logic sau 0 logic). De asemenea ei
pot fi modificaţi din 0 logic în 1 logic sau invers. Evaluarea şi modificarea operanzilor de un bit se
realizează cu ajutorul câtorva instrucţiuni specifice. În timpul interogării şi modificării operanzilor
de un bit, aceştia se încarcă într-un registru special de un bit al procesorului, numit: Single Bit
Accumulator (SBA).
Operanzii multibit sunt acele resurse care se pot accesa într-un octet (8 biți) sau cuvânt
(word, 16 biţi) şi reprezintă numere întregi. Ei pot lua valori în domeniile:
 0...255, pentru un octet (8 biti);
 0...65535, pentru un cuvânt (16 biţi) reprezentat ca număr întreg;
 -32767...32767, pentru un cuvânt (16 biţi) reprezentat ca întreg cu semn.
Valoarea operanzilor MBO poate fi testată prin comparare (<, >, =, etc.) cu valori constante
sau cu alţi operanzi multibit. Instrucţiuni STL permit modificarea conţinutului unui operand MBO
prin:
 Scrierea în aceştia a unor valori constante sau a valorilor altor operanzi MBO;
 Incrementarea (adunarea cu o unitate a valorii operandului);
 Manipulare a valorii MBO prin intermediul operatorilor multibit aritmetici sau a
celor logici).
În momentul modificării operanzilor MBO , aceştia sunt încărcaţi într-un registru special al
procesorului numit: MultiBit Accumulator (MBA).

Operand Forma STL Sintaxa: n reprezintă Parte a sentinţei în


un număr oarecare care poate fi folosită:
C*-condiţională;
E*-executivă
Cuvânt de intrare IW Iwn C
Cuvânt de ieşire OW Own C
E
Cuvânt de memorie FW Fwn C
E
Cuvântul (valoarea) CW Cwn C
unui numărător E
Cuvânt prestabilit al CP CPn C
unui numărător E
43
Cuvântul (valoarea) TW Twn C
unui temporizator E
Cuvântul prestabilit TP TPn C
al unui temporizator E
C FU FUn C
EC E
E Unitate funcţională
Registru R Rn C
E

Tabel 2.3 – Operanzi STL de un singur bit

Operand Forma STL Sintaza: n reprezintă Parte a sentinţei în


un număr oarecare care poate fi folosită:
C*-condiţională;
E*-executivă
Cuvânt de intrare IW Iwn C
Cuvânt de ieşire OW Own C
E
Cuvânt de memorie FW Fwn C
E
Cuvântul (valoarea) CW Cwn C
unui numărător E
Cuvânt prestabilit al CP CPn C
unui numărător E
Cuvântul (valoarea) TW Twn C
unui temporizator E
Cuvântul prestabilit TP TPn C
al unui temporizator E
C FU FUn C
EC E
E Unitate funcţională
Registru R Rn C
E

Tabel 2.4 – Operanzi STL de mai mulți biți

Operanzii sunt accesibili din orice program al proiectului curent. În lista de alocare se pot da
nume simbolice tuturor operanzilor SBO sau MBO. Lista de alocare se poate alcătui şi pe parcursul
editării programului.

44
2.7.3 Operatori de un bit și multibit în limbajul STL

Se numesc operatori acele simboluri care apar pe lângă operanzi, modificând sau folosind
valoarea numerică sau logică a acestora. De exemplu simbolul „+” este operandul de adunare şi se
aplică între doi operanzi multibit, rezultatul va fi suma celor doi operanzi.
Există operatori care se aplică operanzilor de un singur bit şi operatori care se aplică operanzilor
multibit.

Simbol Utilizare Aplicabil la operanzi de tip:


N Not-negaţie SBO
V Valoare zecimală; folosit la MBO
introducerea valorilor constante
de către utilizator
V$ Valoare hexazecimală; folosit MBO
la introducerea valorilor
constante de către utilizator
V% Valoare binară;folosit la MBO
introducerea valorilor constante
de către utilizator
+ Adunarea a doi operanzi MBO
- Scăderea a doi operanzi MBO
* Înmulţirea a doi operanzi MBO
/ Împărţirea a doi operanzi MBO
< Compararea a doi MBO
operanzi...mai mic decât
> Compararea a doi MBO
operanzi...mai mare decât
= Compararea a doi MBO
operanzi...egal cu
<> Compararea a doi MBO
operanzi...diferit de
<= Compararea a doi MBO
operanzi...mai mic sau egal ca
>= Compararea a doi MBO
operanzi...mai mare sau egal ca
(...) Parantezele sunt folosite pentru SBO,MBO
stabilirea priorităţilor de
evaluare în expresii complexe

Tabel 2.5 – Operatori utilizați în construcția programelor STL

45
2.7.4 Structura unui program STL
Pentru scrierea unui program în limbajul STL se poate alege între trei structuri posibile:
 Program cu paşi (STEP program);
 Program paralel;
 Program executiv.

2.7.4.1 Program cu pași

Programul cu paşi este cel mai general, celelalte două sunt cazuri particulare obţinute din
simplificarea acestuia.
Un program cu paşi poate conţine până la 255 de paşi. Paşii programului sunt determinaţi de
instrucţiunea STEP, urmat (opţional) de un nume sau un număr dat de utilizator. Următorul pas
începe cu următoarea instrucţiune STEP. Numărul sau numele pasului este folosit pentru claritatea
programului şi pentru instrucţiuni de salt la pasul de interes din oricare parte a programului.
Un pas al programului cuprinde una sau mai multe sentinţe. O sentinţă este definită prin
instrucţiunile IF-THEN-OTHRW.
O sentinţă conţine:
 condiţie formată din cuvântul cheie IF... urmat de o expresie logică simplă sau
complexă care se va evalua ca adevărată sau falsă. În expresia logică pot apărea
operanzi SBO, operatori de comparaţie cu operanzi MBO, alte instrucţiuni;
 parte executivă formată din cuvântul cheie THEN...urmat de un set de instrucţiuni
care se vor executa numai în cazul în care condiţia este adevărată;
 parte executivă formată din cuvântul cheie OTHRW...urmat de un set de instrucţiuni
care se vor executa dacă expresia logică din partea condiţională IF este falsă.
Instrucţiunea OTHRW poate să lipsească.
Toate instrucţiunile din partea executivă THEN, se execută numai dacă expresia logică care
urmează după cuvântul cheie IF, este adevărată. Partea executivă cuprinde toate instrucţiunile care
urmează cuvântului cheie THEN şi până la întâlnirea unuia din cuvintele cheie:IF; STEP; OTHRW.

Exemplu de program cu paşi


Programul PO
Step 1 (pasul de iniţializare)
IF N dacă nu există nici o comandă
THEN SET P1 atunci se execută programul 1
LOAD V0 încarcă valoarea 0
TO OW0 în toate ieşirile resetate
LOAD V 1000 încarcă valoarea 1000=10sec
TO TP1 în temporizatorul T1
LOAD V 100 încarcă valoarea 100=1 sec
TO TP2 în temporizatorul T2
RESET F0.0 în flagul F0.0 se forțează valoarea 0=STOP necesară pentru butonul START
IF(OW0=V0)AND Ni0.0 dacă la ieşiri şi la cele două intrări avem valoarea 0
AND N I0.1
THEN NOP atunci nu se face acţiune (acţionarea porneşte numai dacă se apasă butonul START)
STEP 2
IF I0.0 OR F0.0 dacă se activează intrarea I0.0 (butonul Start), sau flagul
THEN SET O0.0 atunci se activează ieşirea O0.0 (se transmite 24 V la releul R1)şi porneşte
motorul M1
SET T1 se activează temporizatorul T1
...

46
În prima sentinţă din cadrul primului pas (imediat după STEP) se poate omite partea
condiţională şi se poate începe direct cu o instrucţiune THEN, aceasta fiind o sentinţă incompletă.
Instrucţiunile din această parte a programului și până la întâlnirea unuia din cuvintele cheie IF şi
STEP, se vor executa întotdeauna.
Un program STEP este executat pas cu pas . Programul va trece la pasul următor numai dacă, la
ultima sentinţă a pasului curent se execută:
 Fie instrucţiunile care urmează după THEN (condiţia este adevărată)
 Fie cele care urmează după OTHRW, dacă există (condiţia este falsă)
Dacă nu există partea OTHRW şi condiţia este falsă atunci programul reia instrucţiunile pasului
curent (se execută pasul de la început). În acest fel se aşteaptă îndeplinirea ultimei condiţii pentru
trecerea la pasul următor.
În ultima sentinţă IF...THEN a pasului curent , se stabileşte dacă programul trece la pasul
următor sau reia instrucţiunile pasului curent.

2.7.4.2 Program paralel

Este alcătuit din una sau mai multe sentinţe. În acest program nu există paşi. Tot programul
este echivalent cu un pas dintr-un program STEP. Prima sentinţă dintr-un astfel de program poate fi
una incompletă, poate începe direct cu THEN. Toate celelalte sentinţe trebuie să fie complete. Un
program paralel este rulat ciclic până la dezactivare cu comanda RESET Pn (n este numărul
programului). Comanda de dezactivare se poate da din oricare alt program sau chiar din programul
Pn. Un program paralel nu conţine cuvântul cheie STEP.

2.7.4.3 Program executiv

Acest program este echivalent cu o sentinţă incompletă dintr-un program paralel. Diferenţa
constă în faptul că nu există o introducere cu cuvântul cheie THEN. Instrucţiunile dintr-un program
executiv se execută în totalitate deoarece nu există o clauză condiţională. Dacă se va introduce o
clauză IF în interiorul programului va rezulta o eroare de sintaxă la compilarea programului.
Exemplu de program executiv:
SET F0.0 setează flagul F0.0
RESET O0.1 nu transmite semnalul la ieşirea O1.0
LOAD V50 încarcă valoarea 50
TO FW7 în cuvântul memoriei F7
Un program executiv nu conţine cuvintele cheie STEP, IF şi THEN.

47
2.8 Prezentarea mediului de programare Ladder pentru automatele programabile produse de
firma Festo.

Un program Ladder diagram este construit din ramuri principale –rungs. Fiecare ramură
principală are minim un contact şi maxim 12 contacte în serie. De asemenea fiecare ramură
principală este formată din minim șase secţiuni ( asamblate succesiv în nodurile rung–ului ) şi
conţine cel puţin o spiră ( coil ). Adiţional , până la 9 ramuri paralele (branches) pot fi înseriate
rezultând astfel maxim 10 contacte în paralel. Ramurile paralele pot fi conectate la orice nod al
ramurii principale cu condiţia ca ele să nu se suprapună. Mai multe spire pot fi configurate în
paralel dar ele trebuie să aibă toate o intrare comună. Altfel se folosesc mai multe ramuri principale.
Deci programul Ladder diagram conţine: ramuri principale, ramuri paralele, secţiuni de ramură,
contacte normal deschise şi normal închise, casete de instrucţiuni, spirale şi spirale paralele. O
casetă de instucţiuni poate fi folosită pentru a înlocui un contact sau o spiră dar de obicei se
foloseşte pentru funcţii care sunt imposibil de reprezentat grafic în Ladder diagram (de exemplu
operaţia aritmetică de adunare a două numere).
Programele Ladder Diagram sunt executate în ordine, ramură după ramură şi ciclic, după
terminarea tuturor ramurilor se reîncepe execuţia de la prima ramură. Ramurile principale (rungs)
sunt numerotate în mod automat de către mediul de programare. Din acest motiv există o secvenţă
clară de procesare a mai multor ramuri principale. Înainte de încărcarea programului Ladder
Diagram în automatul programabil, programul este translatat în cod maşină cu ajutorul unui
program special numit compilator. Instrucţiunile cuprinse în ramuri sunt translatate consecutiv,
conform numerotării şi ordinii apatiţiei în program. Chiar şi în cazul unei singure ramuri principale
compilatorul va respecta secvenţa programată de utilizator. Astfel o a doua spiră în paralel va apare
în programul cod maşină ca fiind executată după prima spiră.
În cazul automatelor programabile multiprocesor, cea de-a doua spiră va fi comutată după prima cu
o întârziere de câteva microsecunde.
Automatele programabile cu un singur procesor folosesc în general metoda imaginii de proces
pentru actualizarea intrărilor şi a ieşirilor. La acestea , actualizarea intrărilor şi a ieşirilor fizice are
loc independent de secvenţa de program concepută de utilizator, la sfârşitul fiecărui ciclu al
programului. Întregul program este executat strict în secvenţa rezultată la compilare. Când se
porneşte automatul programabil (cu întrerupătorul RUN/STOP sau prin alimentare cu tensiune)
instrucţiunile se execută de la prima linie de program. Această logică secvenţială este utilizată, în
particular atunci când se folosește operandul binar special, F1, numit bit de inițializare
(initialization flag). F1 are valoarea 1 logic pentru primul ciclu al programului. Începând cu al
doilea ciclu şi până la oprirea automatului, operandul F1 va avea valoarea 0 logic. Cu ajutorul
operandului F1 este posibilă aducerea oricărui operand în starea iniţială dorită la începutul
programului.

Figura 2.6 -Proces cu imagine de proces Figura 2.7- Proces fără imagine de proces
48
2.8.1 Modul de actualizare al intrărilor / ieşirilor

Procesarea internă a programelor Ladder Diagram este diferită în funcţie de modul de


actualizare a semnalelor de intrare/ieşire.
Automatele programabile cu un singur procesor folosesc un tampon de memorie numit imagine de
proces (process image).
Funcţionarea automatelor programabile cu imagine de proces este următoarea:
 Înainte de intrarea în ciclul unui program, în această memorie se încarcă valoarea semnalelor
fizice de intrare;
 Pe parcursul rulării unui ciclu, valorile intrărilor sau ieşirilor folosite în program sunt cele
din memoria imaginii de proces (chiar dacă pe parcursul ciclului unele intrări se pot
schimba). Imaginea de proces este actualizată cu comenzi de setare sau resetare a ieşirilor;
 La terminarea ciclului ieşirile fizice sunt actualizate corespunzător valorilor din imaginea de
proces. După aceasta ciclul se repetă.
 Memoria cu imaginea de proces se actualizează şi dacă în acelaşi program se sare la o
ramură principală anterioară celei curente (cu instrucţiune de salt)
 Dacă proiectul are mai multe programe Ladder Diagram, imaginea de proces este actualizată
înainte de execuţia primei ramuri principale a fiecărui program.
Automatele programabile multiprocesor nu utilizează memorie pentru imaginea de proces. Starea
intrărilor fizice este citită imediat cum apar în partea condiţională a ramurilor. Semnalele de ieşire
sunt de asemenea actualizate imediat ce instrucţiunile din partea executivă sunt executate, ieşirile
fizice fiind comutate înainte de terminarea ciclului.
Pentru un automat programabil care utilizează imaginea de proces , ieşirea O0.1 nu va fi
comutată de mai multe ori ( din 1 logic în 0 logic sau invers). La terminarea unui ciclu al
programului, ieşirea O0.1 va fi dezactivată dacă I0.1 este 0 logic sau va fi activată dacă I0.1 este 1
logic, deoarece acesta este ultimul lucru care se întâmplă la comandă, înainte de actualizarea
imaginii de proces.
Un automat programabil care accesează intrările şi ieşirile în mod direct (automat multi-
procesor) va comuta ieşirea O0.1 din 1 logic în 0 logic şi invers de mai multe ori, pe măsură ce se
execută fiecare instrucţiune.
 Avantajele metodei imaginii de proces constau în faptul că starea logică a intrărilor nu se
modifică pe parcursul unui ciclu al programului ; ieşirile îşi menţin starea logică rezultată
după ultimul ciclu (ceea ce permite scrierea, la sfârşitul programului, de rutine de verificare
şi control cu care se pot depista erori de programare), iar execuţia programului este mult mai
rapidă.
Dacă aceste verificări sunt absolut necesare pentru automatele cu acces direct la intrări / ieşiri,
programarea se face folosind flag-uri. Aceste flag-uri se copiază la ieşiri numai la sfârşitul
programului, după ce valorile lor sunt validate de rutinele de verificare.
 Avantajele metodei de acces direct la intrări / ieşiri constau în faptul că este posibilă
funcţionarea în paralel a mai multor module cu procesor, astfel realizându-se un sistem
multiprocesor; se asigură utilizarea stării curente , practic instantanee, a unei intrări; în ciclul
programului nu se mai consumă timp pentru actualizarea imaginii de proces; se poate utiliza
o comutare rapidă a ieşirilor pentru comanda unor periferice electronice ( de exemplu:
motoare pas cu pas, numărătoare electronice, afişaje electronice, multiplexoare electronice).
În funcţie de specificul aplicaţiei, de complexitatea acesteia şi de mărimea programului final se
alege una sau cealaltă dintre cele două metode.

49
2.8.2 Temporizatoare (Timers)
Temporizatoarele sunt elemente de programare care modelează funcţionarea releelor de timp
şi a contactelor temporizate.
Ele sunt utilizate pentru acţiuni întârziate sau ce durează un interval de timp. Producătorii
de automate programabile furnizează atît funcţii elementare de temporizare cît şi funcţii mai
complexe. Astfel temporizatoarele utilizate în programele Ladder au o flexibilitate mult mai mare
decât cele utilizate în schemele electrice.
Materializarea temporizatoarelor în automatele programabile se face utilizând circuite de
numărare. Ca urmare indicarea temporizării se face precizând numărul de increment (baza de timp).
În cazul în care implementarea limbajului permite utilizarea unor baze de timp diferite pentru
temporizatoare diferite, trebuie precizată pentru fiecare temporizator această bază de timp.
Valorile uzuale pe care le poate avea baza de timp sunt 0,01 s; 0,1 s; 1s.
Temporizatoarele au cel puţin o intrare de iniţializare (la activarea căreia începe
temporizarea) şi o ieşire. În unele variante, acestea sunt prevăzute şi cu o intrare de validare şi încă
o ieşire care reprezintă negarea primei ieşiri. De regulă temporizatoarele utilizate în programele
Ladder au o intrare de iniţializare și una de validare şi două ieşiri, cea de a doua ieşire reprezentând
negarea primei ieşiri.

Nr.
Temporizat
or
Baza de
timp
Valoarea
prestabilită

Figura 2.8 - Structura unui temporizator în programele Ladder Diagram

Automatele FEC pot lucra cu 256 de temporizatoare numerotate de la 0 la 255.


Într-un program pentru un temporizator trebuiesc declaraţi doi operanzi, la alocarea listei cu
componente:
 Tn-Timer Status- este un operand SBO, prin care se declară temporizatorul T1, T2,... Tn (
adică numele temporizatorului );
 TPn-Timer Preselect- este un operand MBO (16 biţi) care conţine valoarea setată a
temporizatorului ( timpul la care acesta se setează). Acest operand poate fi încărcat cu o
valoare constantă, cu conţinutul unui operand MBO ( regiştrii, cuvânt de memorie sau de
intrări, etc.).
Pentru temporizatoare automatul mai lucrează cu un al treilea operand (care nu trebuie declarat
în lista de alocări):
 TWn- Timer Word- este un operand MBO (16 biţi) care reprezintă valoarea curentă a
temporizatorului. La activarea unui temporizator, valoarea setată TPn este încărcată
automat în TWn, unde începe să fie decrementată, pănă ajunge la zero. Valoarea de
decrementare depinde de baza de timp a automatului. La automatul programabil FEC baza
de timp este de 0,01 secunde, deci pentru a înscrie în temporizator 10 secunde, va trebui
înscrisă valoarea de 1000 în TPn
Declararea temporizatoarelor se face în pasul de iniţializare ( primul pas).
Activarea temporizatoarelor se face cu instrucţiunea SET Tn.
Exemplu de utilizare a temporizatoarelor :
50
STEP iniţializare
...........................
LOAD V 1000, încarcă valoarea 1000 (10 sec) în temporizatorul T1 (această valoare este timpul la
care este setat temporizatorul)
TO TP1
LOAD V300, încarcă valoarea 300 (3 sec) în temporizatorul T2
............................
STEP 3
IF I0.2 , dacă este activată intrarea 0.2
THEN SET T1 , atunci setează (porneşte) temporizatorul T1
.........................
STEP4
IF N T1 , dacă temporizatorul t1 este dezactivat ( a ajuns la 0)
THEN SET Q03 , atunci setează ( activează) ieşirea Q0.3
...........................

2.8.3 Numărătoare (Counters)


Numărătoarele sunt elemente de programare ce pot primi o serie de impulsuri care sunt
analizate în cadrul programului Ladder pentru a detecta numărul de apariţii al unor evenimente cum
ar fi : numărul de paşi efectuaţi de un motor pas cu pas, numărul de conectări, deconectări ale unui
aparat, numărul de obiecte care trec printr-un anumit loc etc.
Numărul acestor evenimente poate fi comparat cu anumite valori prestabilite şi în funcţie de
rezultatul acestor comparaţii pot fi luate unele decizii şi date comenzile corespunzătoare.
Numărătorul are cel puţin două intrări, una de numărare şi una de iniţializare ( la activarea acesteia
numărătorul începe să numere impulsurile sosite la intrarea de numărare ) şi o ieşire. Numărătoarele
din cadrul programelor Ladder au două ieşiri, a doua ieşire reprezintă negarea primei ieşiri.
Automatele FEC pot lucra cu 256 de numărătoare, numerotate de la 0 la 255. Există două
tipuri de numărătoare : incrementale şi decrementale. Tipul standard în STL este cel incremental.
Ca şi temporizatoarele, numărătoarele lucrează cu trei operanzi:
 Cn- Counters Status- este un operand SBO, prin care se declară numărătorul C1, C2, ...Cn
(adică numele numărătorului). Numărătorul poate fi activat cu instrucţiunile SET Cn şi
RESET Cn.
 CPn- Counter Preselect- este un operand MBO (16 biţi) care conţine valoarea setată a
numărătorului ( numărul la care se setează ). Acest operand poate fi încărcat cu o valoare
constantă, cu conţinutul unui operand MBO ( regiştrii, cuvânt de memorie sau de intrări,
etc.).
 CWn- Counter Word- este un operand MBO (16 biţi) care conţine valoarea curentă (
contorizată) a numărătorului. Valoarea curentă se modifică prin operaţia de incrementare, cu
instrucţiunea INC Cn.
Ca şi pentru temporizatoare , la alocarea listei de componente, se declară valoarea înscrisă în
numărător cu instrucţiunea LOAD.
Activarea unui numărător se face cu instrucţiunea SET Cn, prin aceasta automat operandul
CWn se încarcă cu valoarea 0. Dacă numărătorul incremental este activ şi se reactivează cu
comanda SET Cn atunci el este automat pus pe valoarea 0. Resetarea (punerea pe zero) se face
cu comanda RESET Cn.
Într-un program, pentru operaţia de numărare a unor evenimente (obiecte) în loc de numărătoare
se pot folosi regiştrii. În acest caz sunt necesari doi regiştrii: unul pentru valoarea setată R1 care
este echivalent cu CPn şi R2 (contorul) care este echivalent cu valoarea curentă CWn.

51
2.8.4 Blocuri funcţionale
Pentru materializarea unor funcţii mai complexe menite să uşureze scrierea în programul
Ladder sunt utilizate blocuri funcţionale. Dintre acestea cele mai utilizate sunt următoarele: funcţii
de încărcare a unor constante numerice, funcţii aritmetice, funcţii logice pe 8 sau 16 biţi, funcţii de
conversie a informaţiei din diferite forme ( binar, BCD, Gray, etc.), funcţii de tratare a
întreruperilor, funcţii pentru detectarea fronturilor crescătoare sau descrescătoare a semnalelor,
funcţii pentru realizarea controlerelor şi secvenţiatoarelor, funcţii pentru actualizarea rapidă a
intrărilor şi ieşirilor, funcţii pentru comanda numărătoarelor de mare viteză.
De obicei formatul şi modul de funcţionare a blocurilor funcţionale diferă de la un automat
la altul fiind specific fiecărui producător în parte.
Prin intermediul standardului IEC 61131-3 şi a altor iniţiative recente se încearcă
standardizarea acestor blocuri funcţionale astfel încât ele să aibă nu numai aceeaşi interfaţă dar şi
aceealaşi comportament, diferenţa fiind dată numai de modul în care acestea sunt materializate
pentru fiecare automat în parte. Standardul are drept scop asigurarea că aceste blocuri funcţionale
pot fi utilizate folosind aceeaşi interfaţă în oricare din celelalte patru limbaje.

R_TRIG_1
Output0_0
Input0_0 R_TRIG Input0_1
CLK Q S

Output0_0
Input0_2
R

Figura 2.9 – Program de recunoaștere a fronturilor crescătoare ale semnalului

2.8.5 Restricţii în scrierea programelor în limbajul Ladder

În realizarea scrierii unui program Ladder pentru un automat programabil concret trebuie să
ţină seama de intrările pe care pachetul de programe le poate avea.
Limitări importante pe care le pot avea pachetele de programe ce utilizează limbajul Ladder
sunt legate de formatul diagramei care materializează schema cu contacte. O parte din aceste
limitări ţin de proprietăţile intrinseci ale limbajului; altele sunt specifice diferitelor programe
comerciale și sunt datorate soluţiilor tehnice adoptate de firmele producătoare pentru implementarea
diverselor elemente ale limbajului. Dintre aceste limitări enumerăm:
 Bobina trebuie să fie alimentată întotdeauna printr-un contact;
 Bobina trebuie să fie introdusă întotdeauna la capătul din dreapta al liniei;
 Toate contactele trebuie să fie în poziţie orizontală;
 Numărul contactelor pe o linie de alimentare a unei bobine este limitat prin program;
 Un grup de contacte poate alimenta o singură bobină;
 Realizarea buclelor se poate face într-un singur mod sau nu este permisă;
 Sensul curentului prin circuit este de la stânga la dreapta diagramei.
Scrierea unui program în limbajul LD poate fi realizată pornind de la schema cu contacte a
unui circuit care ar îndeplini aceeaşi funcţie. Programatorul va transpune schema respectivă
folosind elementele de programare ale limbajului. Pentru aceasta trebuiesc parcurse următoarele
etape:
 Definirea listei dispozitivelor conectate la intrările şi ieşirile automatului programabil;
 Atribuirea unor identificatori de intrare şi de ieşire acestor dispozitive;
 Trasarea diagramei Ladder;
 Indicarea conexiunilor la automatul programabil a elementelor de comandă;
52
2.8.6 Realizarea unei combinaţii între funcţiile logice ŞI, SAU, NU

Un dispozitiv de ștanțare poate fi acționat din trei parți. Se introduce o piesă de prelucrat
printr-un ghidaj, cu ajutorul căruia intră în contact cu două din cele trei intrerupătoare de
proximitate B1, B2 si B3. Ca urmare, cilindrul pneumatic 1.0 se extinde printr-un ventil solenoid
(bobina Y1), ștantând astfel un canal circular pe piesa de prelucrat.
Ciclul de ștanțare va fi declanșat doar dacă se apelează două generatoare de semnal. Din
motive de siguranță, cilindrul nu trebuie lăsat să avanseze daca toți cei trei senzori de proximitate
sunt în contact.

Figura 2.10- Schema circuitului electropneumatic

Figura 2.11-Schema circuitului electric

53
Operator Operator Nota
absolut simbolic

I0.0 B1 Senzor de proximitate 1


I0.1 B2 Senzor de proximitate 2
I0.2 B3 Senzor de proximitate 3
O0.0 Y1 Extindere cilindru
Tabel 2.6 - Listă de distribuție

Name Attrib Addr Comment

Input0_0 [Input] 0000 Proximity Sensor B1


Input0_1 [Input] 0000 Proximity Sensor B2
Input0_2 [Input] 0000 Proximity Sensor B3
Flag1 [Internal] 0000 Internal Relay 1
Flag2 [Internal] 0000 Internal Relay 2
Flag3 [Internal] 0000 Internal Relay 3
Output0_0 [Output] 0000 Cylinder Extends Y1
Tabel 2.7 – Listă alocare I / O pentru A.P de la Festo

Ordinea de procesare este specificată în grafic

Input0_0 Input0_1 Input0_2 Output0_0

Input0_0 Input0_1 Input0_2

Capitolul 3
Input0_0 Input0_1 Input0_2
Proiectarea părții hardware

Figura 20- Ladder Diagram

Figura 2.12 – Programul Ladder

54
Capitolul 3

Proiectarea părții hardware


3.1 Motivarea temei

Macheta proiectată și realizată în cadrul acestei lucrări are caracter predominant didactic, ea se
dorește a fi un suport pentru activitățile de laborator de la disciplina Automate Programabile.
Macheta este concepută având în vedere următoarele aspecte:

 să permită dezvoltarea unei game largi de aplicații practice în scopul învațării programării și
utilizării automatelor programabile;
 să fie ușor de utilizat;
 să fie atractivă pentru studenți;
 să aibă caracter multidisciplinar (comandă electrică respectiv pneumatică)

Macheta simulează un sistem de comandă pentru un ansamblu electropneumatic compus din


elementele aferente:
 automat programabil
 trei pistoane pneumatice ( două cu dublu sens, unu cu revenire prin arc)
 doi senzori pentru detectarea capetelor de cursă la fiecare piston
 electrovalve
 simularea panoului frontal al echipamentului compus din șapte butoane cu revenire
de tip NO/NC
 circuite pneumatice
 circuite electrice
 sursă de alimentare 24V

55
Schema bloc de principiu a machetei didactice este prezentata in fig 3.1

Figura 3.1 - Schema bloc a montajului

56
În schema anterioară se remarcă pe lângă două categori de elemente:
 elementele de intrare ( butoane și senzori de poziție)
 elemente de ieșire (bobinele electrovalvelor, lămpi de semnalizare)
Ambele categori de elemente necesită o tensiune de alimentare de 24V DC, tensiune ce este
asigurată de o sursă de tip pulsatoriu modelul DR-75-24 Mean Well.

3.2 Descrierea elementelor de intrare

Ca elemente de intrare în automatul programabil am folosit butoane cu revenire de tip


NO respectiv NC și senzori de capăt de cursă de tip Reed respectiv Solid State.
Butoanele sunt folosite pentru a controla modul de lucru al machetei dar și pentru controlul
individual al pistoanelor.
Senzori de capăt de cursă sunt folosiți pentru a marca faptul că pistonul se află în poziția complet
extins sau complet retras.

Figura 3.2 – Panou de comandă Figura 3.3-Senzor Reed Figura 3.4 – Senzor Solid State

3.2.1 Descrierea senzorului magnetic de poziție

Senzorul magnetic este folosit în cadrul acestei machete didactice pentru detecția poziției
pistonului pneumatic.
Senzori de proximitate magnetici reacționează la câmpurile magnetice produse de magneţi
permanenţi sau electromagneţi. Senzori magnetici pot fi de mai multe tipuri:
 REED,
 Cu efect Hall,
 Electronici – cu miez închis de ferită şi circuit oscilant LC care funcţioneză la rezonanţă .
 Solid State
Senzorul reed (reed = trestie, subţire în engleză) este alcătuit din două lamele feromagnetice,
de obicei aurite, iar zona de contact electric este amalgamată cu mercur. Lamelele sunt închise
ermetic într-un tub de sticlă din care ies către exterior doi electrozi (terminale) pentru legături
electrice. În prezenţa câmpului magnetic, liniile de câmp se concentrează în zona lamelelor, care
constituie o cale de reluctanţa mică. Între lamele apare o forţă de atracţie magnetică. Când forţă este
suficient de puternică pune în contact lamelele şi închide contactul electric.

Figura 3.5 – Schemă constructivă senzor Reed

57
Cei mai simpli sunt senzorii magnetici REED. Aceştia reprezintă de fapt un contact electric,
cei doi electrozi fiind din materiale care se magnetizează uşor şi se atrag, închizând un circuit
electric. Contactul, realizat din material feromagnetic precum aliaje FeNi(permalloy), este sigilat
într-un tub de sticlă sau material epoxidic.
Acest tub este plin cu gaz inert – nitrogen – pentru a reduce fenomenul de arc electric.
Dacă pe mai mulţi cilindrii pneumatici sunt instalaţi senzori de proximitate REED, este
necesară o distanţă minimă de 60 mm între cilindri, pentru ca inelul magnetic de pe piston să nu
influenţeze senzorii aflaţi pe cilindri vecini.

Figura 3.6 – Montare Senzor Reed

În figura următoare este prezentat principiul de funcţionare al unui senzor de proximitate


magnetic care detectează poziţia pistonului într-un cilindru. În acest caz contactul este deschis iar
senzorul nu este acţionat (LED-ul este stins).

Figura 3.7 – Senzor Reed neacționat

Când pistonul a ajuns în dreptul senzorului, câmpul magnetic al magnetului acţionează


lamelele contactului şi LED-ul se aprinde .

Figura 3.8 – Senzor Reed acționat


58
Figura 3.9 - Diagramă circuit I/O Figura 3.10 – Schemă de conectare

Senzorul Solid State are în general o interfață, aceasta este reprezentată de obicei de un circuit
oscilator. Această interfață transformă distanța într-un semnal electric. Un declanșator sau un
detector al nivelului de prag este folosit pentru a acționa circuitul de ieșire, când semnalul ajunge la
un nivel prestabilit. Circuitul de ieșire este interfațat cu un sistem de achiziții de date ( PLC-uri,
controlere dedicate), sau alte circuite de control ( relee, numărătoare, temporizatoare, etc).

Figura 3.11 – Componentele unui senzor Solid State

59
Avantaje Dezavantaje Aplicații
Operare preț mic; identificare selectivă a magnet necesar securitatea și
magnetică obiectelor sensibil la câmpuri siguranța
(releu reed) magnetice interblocajelor
detecție prin
metal
Efect Hall frecvență de operare până la 150 kHz doar obiecte magnetice tastaturi
temperatură înaltă (150 0C) sensibilitate ridicată
rezoluție bună pentru medii industriale
Ultrasonic detectarea tuturor materialelor sensibil la schimbări de anticoliziune
mediu (vehicule
ghidate
automat)
Inductiv rezistente la medii dure distanță de acțiune detecția tuturor
ușor de instalat limitată la 60 mm tipurilor de
mașini și
instalați
Capacitiv detecția tuturor materialelor sensibilitate ridicată la detecția
detecție prin ziduri schimbări de mediu nivelului pentru
lichide
Fotoelectrice detecția tuturor materialelor dispus la contaminări detectare
rază mare de detecție obiecte
împachetare
Tabel 3.1 - Tipuri de senzori Solid State

Figura3.12 Schema internă Figura 3.13 –Schemă de conectare

Figura 3.14 – Montare senzor Solid State

60
3.3 Proiectarea circuitului de interfață cu elementele de intrare

În cadrul acestui proiect mi-am propus realizarea unei machete didactice cu un PLC Festo
FC34, având ca elemente de execuție 3 pistoane pneumatice, iar ca elemente de intrare butoane cu
revenire de tip NC respectiv NO și senzori de capăt de cursă de tip REED și Solid State. Am ales
acest PLC prin prisma faptului că specificațile sale tehnice corespund cerințelor mele de proiectare,
având un număr de intrări respectiv ieșiri corespunzător cerințelor mele.
Pentru utilizarea PLC-ului este necesar ca fiecare element de intrare să fie alocat unei intrări a PLC-
ului, acest lucru fiind evidențiat de tabelul prezentat mai jos.

Nume variabilă Intrare


START I1.0
STOP I1.1
MOD I1.2
RET_PST I1.3
EXT_C3 I0.7
EXT_C2 I0.6
EXT_C1 I0.5
S4 I0.4
S5 I0.3
S2 I0.2
S3 I0.1
S1 I0.0
Tabel 3.2 - Alocare intrări

În vederea realizării circuitului de interfață cu elementele de intrare este necesară realizarea unei
scheme de principiu ce înglobează elementele esențiale ale circuitului, schemă ce va reprezenta un
șablon pentru schema electrică.

Figura 3.15 – Schema de principiu a interfațării elementelor de intrare

61
În vederea proiectării schemei electrice a circuitului de interfață cu elementele de intrare vom folosi
ca șablon schema de principiu a circuitului.Schema electrică este prezentată mai jos.

Figura 3.16 – Schema electrică a circuitului de interfațare a intrărilor

62
3.4 Descrierea elementelor de execuție

3.4.1 Piston pneumatic cu dublu sens

Elementele de execuție sunt reprezentate de trei pistoane pneumatice produse de firma Festo.
Comanda de extindere a celor trei pistoane se poate face automat sau manual prin intermediul celor
trei butoane cu revenire de tip NO.

Figura 3.17 - Piston pneumatic cu dublu sens și anti-rotire

Diametru tijă (mm) 10

Acționare Dublu sens

Fluid Aer

Presiune maximă 1.0MPa


de operare

Presiune minimă 0.08MPa


de operare

Figura 3.18 - Secțiune transversală a pistonului cu Temperatură –20 to 80°C


dublu sens ambientală

Viteza pistonului 50 to 1500mm/s

Energie kinetică 0.03J


permisă

Toleranța cursei 0/+1

Figura 3.19 – Simbol piston cu dublu sens


Tabel 3.3–Specificații tehnice piston cu dublu sens

63
3.4.2 Piston pneumatic cu revenire prin arc

Figura 3.20 – Piston pneumatic cu revenire prin arc și anti-rotire

Diametru tijă (mm) 10

Acționare O singură acționare


Revenire prin arc
Fluid Aer

Presiune maximă de 1.0MPa


operare

Presiune minimă de 0.18MPa


Figura 3.21 – Secțiune transversală a
operare
pistonului cu revenire prin arc

Temperatură ambientală –20 to 80°C

Viteza pistonului 50 to 1500mm/s


Energie kinetică permisă 0.03J

Toleranța cursei 0/+1


Figura 3.22 – Simbol piston cu
revenire prin arc
Tabel 3.4 - Specificații tehnice piston cu revenire pe arc

64
3.4.3 Valve de distribuție a aerului

3.4.3.1 Noțiuni teoretice

Valvele de distribuție au capacitatea de a direcționa și întrerupe fluxul de aer comprimat către


elementele de acționare pneumatice. Aceste valve sunt cele care stabilesc acțiunea de control a
sistemelor pneumatice.
În funcție de cerințele diferitelor procese de utilizare, derivă caracteristicile principale de selecție,
acestea fiind: numărul de poziți și numărul de căi.

3.4.3.2 Numărul de căi

Reprezintă numărul găurilor de îmbinare a valvei de distribuție. Ca și număr de conexiuni acestea


sunt de la 2, 3, 4, 5 sau mai multe.

Figura 3.23 – Numărul căilor de conexiune

3.4.3.3 Numărul de poziți

Se distinge pentru numărul de poziții ale elementului de control, în majoritatea cazurilor se folosesc
două sau trei poziții.

Figura 3.24 – Numărul de poziții

Aceste două particularități sunt cele ce denumesc valvele după numărul de căi și poziți, ele fiind
definite după cum urmează:

No Căi / No Poziții

65
Ca și exemplu cele mai utilizate valve sunt următoarele:

 2/2- două căi / două poziții: acționează ca valve de flux, pot fi NO sau NC.
 3/2 -trei căi / două poziții: permite comutația, pe lângă alimentarea sistemului
 4/2 -patru căi / două poziții: permite operarea în cele două poziții de comandă
 5/2- cinci căi / două poziții: oferă două căi în vederea controlului vitezei
 5/3- cinci căi / 3 poziții: include o poziție central adițională care ajută la oprirea
elementului de execuție în orice poziție

3.4.3.4 Reprezentarea simbolică a unei valve

Reprezentarea funcționalității valvelor de distribuție prin intermediul simbolurilor.Valvele


au în componența lor un bloc central, care definește numărul de poziții al elementului de
interacțiune și mijloacele de conectare ale căilor, dar și două elemente externe care reprezintă
comanda pentru controlul valvei.
Caracteristicile simbolurilor unei valve sunt următoarele:
 Pozițiile de interacțiune ale valvei se reprezintă printr-un pătrat.
Numărul mare de poziții va determina creșterea numărului de pătrate.
 Funcțile se reprezintă în interiorul pătratelor, reprezentându-se prin săgeți direcția aerului.
 Conexiunile exterioare către elementele de acționare se reprezintă prin lini adiacente
pătratului.

Figura 3.25 – Simbolul unei valve cu trei căi două poziții

Controlul unei valve poate fi muscular, mecanic, manual, electric și pneumatic.

Figura 3.26 – Tipuri de acționări

66
3.4.3.5 Electrovalve

Se numesc electrovalve, valvele la care comutarea poziților este determinată de un semnal


electric, care determină excitația bobinei cuplate la element, iar prin câmpul magnetic generat se
realizează mișcarea unui element intern care permite sau nu trecerea aerului comprimat.
Pentru realizarea machetei didactice se vor folosi două tipuri de electrovalve pentru controlul
pistoanelor diferite din cadrul proiectului.
Primul tip este reprezentat de o electrovalvă cu 5 căi și 2 poziții, cu acționare pneumatică și
electrică. Cele două poziții posibile de funcționare sunt: poziție închisă sau de repaus și poziție
deschisă, în acestă poziție electrovalva permite trecerea aerului prin intermediul căilor către
cilindru, schimbând astfel poziția tijei.

Modelul acestei electrovalve este SY5220-3D0-01F produsă de firma SMC.

Figura 3.27 – Electrovalvă SY5220-3D0-01F Figura 3.28 – Simbol electrovalvă 5/2

Fluid aer

Presiune de funcționare (MPa) 0.1 – 0.7

Temperatură ambiantă ( 0C) -10 – 50

Debit (l/min) 658

Tensiune de alimentare ( V DC) 24

Tabel 3.5 – Specificații tehnice electrovalvă SY5220-3D0-01F

67
Al doilea tip este reprezentat de o electrovalvă cu 5 căi și 2 poziții, cu acționare pneumatică
și electrică. Această electrovalvă este prevăzută cu un arc mecanic ce permite revenirea în poziția de
repaus. Pozițiile de funcționare ale electrovalvei sunt: poziție închisă și poziție deschisă, poziție ce
permite trecerea aerului către cilindru, fapt ce determină schimbarea poziției tijei.
Modelul acestei electrovalve este VF1120 produsă de firma SMC.

Figura 3.29 – Electrovalvă VF1120 Figura 3.30 – Simbol electrovalvă 5/2 cu arc

Fluid aer

Presiune de funcționare (MPa) 0.15 – 0.9

Temperatură ambiantă ( 0C) -10 – 50

Debit (l/min) 580

Tensiune de alimentare ( V DC) 24

Tabel 3.6 – Specificații tehnice electrovalvă VF1120

68
3.5 Proiectarea circuitului de interfață cu elementele de ieșire

Automatul programabil FESTO FC34 corespunde cerințelor mele de proiectare, numărul de


ieșiri ale acestuia sunt suficiente pentru a acoperi numărul de ieșiri impuse de cerințele de
proiectare.
Elementele de ieșire sunt reprezentate de bobinele ce acționează distribuitoarele de aer.
În vederea realizării unui program cu ajutorul PLC-ului trebuie alocată fiecare ieșire cu o ieșire a
automatului, lucru evidențiat în tabelul de mai jos.

Nume variabilă Ieșire


Semnalizare contorizare C1 O0.0
Semnalizare contorizare C2 O0.1
Extindere C1 O0.2
Extindere C2 O0.3
Retragere C2 O0.4
Extindere C3 O0.5
Retragere C3 O0.6
Semnalizare contorizare C3 O0.7

Tabel 3.7- Alocare ieșiri

În vederea realizării circuitului de interfață cu elementele de ieșire este necesară realizarea


unei scheme de principiu ce înglobează elementele esențiale ale circuitului, schemă ce va reprezenta
un șablon pentru schema electrică.

Figura 3.31 - Schema de principiu a interfațării elementelor de ieșire

69
În vederea proiectării schemei electrice a circuitului de interfață cu elementele de ieșire vom
folosi ca șablon schema de principiu a circuitului.Schema electrică este prezentată mai jos.

Figura 3.32 Schema electrică a circuitului de interfațare a ieșirilor

70
3.6 Proiectarea schemei electrice a întregului sistem

După realizarea circuitelor de interfațare a intrărilor respectiv ieșirilor se poate realiza


schema electrică a întregului sistem. Pentru alimentarea sistemului este necesară o tensiune de 24V
DC, tensiune ce este asigurată prin intermediul unei surse. Sursa de alimentare amplasată pe această
machetă este o sursă de tip pulsatoriu, modelul DR-75-24- MEAN WELL. Această sursă se
alimentează de la rețea, producând la ieșire o tensiune de 24 V DC. Este o sursă de tensiune
standard folosită în industrie pentru tablouri electrice care necesită o tensiune de curent continuu.

Date tehnice Sursă DR-75-24- MEAN WELL

Tip alimentator pulsatoriu

Putere 76.8W

Tensiune ieşire 24V DC, 24...28V DC

Curent ieşire 3.2A

Tensiune alimentare 85...264V AC, 120...370V DC

Montare DIN

Temperatura de lucru -10...60°C

Eficienţă 80%
Dimensiuni exterioare 55.5 x 125 x 100mm

Figura 3.33- Sursă Mean Well DR-75-24 Tabel 3.8 – Specificații tehnice sursă DR-75-24

71
În figura 3.34 este prezentată schema electrică a întregului sistem

Figura 3.34 – Schemă electrică finală

72
3.7 Proiectarea circuitului pneumatic

Sistemele industriale moderne pot fi proiectate, modelate, simulate şi testate în medii


virtuale asistate de calculator, crescând astfel calitatea proceselor menţionate şi scurtând timpul de
dezvoltare. Ne propunem folosirea acestor noi metode în cadrul acestei lucrări, sistemul de
acţionare pneumatic cu trei pistoane fiind mai întâi proiectat și simulat pe un calculator personal
folosind aplicația Festo FluidSIM Pneumatics versiunea 4.2.
Pentru modelarea pneumatică va fi nevoie de o sursă de aer comprimat, o unitate de
procesare a aerului, un distribuitor, trei pistoane, dintre care unul este prevăzut cu revenire prin arc,
și o riglă de deplasare cu senzori de contact.[1]
Vom considera un sistem de acţionare pneumatic cu trei pistoane, unul dintre ele fiind
prevăzut cu revenire prin intermediul unui arc. Cursa celor trei pistoane, denumite C1, C2 respectiv
C3 este între poziţiile pe care le vom nota simbolic Si [i= 2, 4], respectiv Sj [j=1, 3, 5]. Procesul în
care va funcţiona acest sistem de acţionare pneumatic necesită un ciclu de piston ce porneşte din
poziţia Si, ca urmare a acționării butonului EXT_Ck [k=1,2,3] parcurge distanţa Si - Sj, atinge
poziţia Sj, după care parcurge distanţa Sj - Si ca urmare a acțiunii butonului RET_PST şi se opreşte
în poziţia Si. Se cere proiectarea sistemului de acţionare electric adecvat acestor cerinţe.
Din formularea cerinţelor mecanice, se deduce că este nevoie de un cilindru cu piston, care
se va poziţiona astfel încât în poziţia intrat complet pistonul să fie în Si, iar în poziţia ieşit complet
să fie în poziţia Sj. Se alege un cilindru cu două camere acţionate pneumatic pentru a permite
comanda independentă a acestuia și un cilindru cu o cameră acționată pneumatic, dar la care
revenirea se face prin intermediul unui arc.
Ca element de control al fluidului se va folosi un distribuitor cu comandă electrică. Comutarea
camerelor acestuia se face la alimentarea cu curent electric a bobinelor.
Pentru culegerea informaţiilor mecanice se vor folosi senzori de tip contact, acţionând ca nişte
comutatoare electrice.
Sursa de presiune alimentează circuitul pneumatic, debitând puterea necesară acţionării. [1]

Sursa de aer comprimat la care presiunea de lucru este de 6 bar.

Figura 3.35 –Simbol sursă de aer comprimat

Unitatea de procesare a aerului este responsabilă cu reglarea presiunii în sistem, dar și cu asigurarea
calității aerului, prin filtrarea acestuia.

Figura 3.36 – Simbol unitate de procesare a aerului

Elementul de execuție principal al sistemului este distribuitorul. Fiind de fapt o valvă de direcție,
acest element controlează umplerea, respectiv golirea camerelor pistonului.Comanda
distribuitorului va fi realizată electric, prin intermediul celor două relee, notate cu Ai, unde i=0...n.

[1] Modelararea şi simularea unui sistem de acţionare pneumatică cu un cilindru


cu cu dublă acţiune utilizând mediul FLUIDSIM PNEUMATICS.
73
Figura 3.37 – Simbol distribuitor 5 căi / 2 poziții

Distribuitorul pistonului C1 evidențiază faptul că revenirea lui în poziția Si se face prin intermediul
unui arc. Comanda distribuitoruli va fi realizată electric prin intermediul releului Ai.

Ai

Figura 3.38 – Simbol distribuitor 5 căi / 2 poziții cu arc

Elementul supus controlului este un cilindru cu dublă acționare. Acesta are ambele camere
accesibile din exterior, permițând un control elaborat.

Figura 3.39 – Simbol piston cu dublu sens

Figura 3.40 – Simbol piston cu revenire prin arc

74
În figura 3.41 este prezentat circuitul pneumatic al sistemului.

Figura 3.41 – Circuitul pneumatic al sistemului

75
3.7.1 Proiectarea circuitului electric necesar simulării circuitului pneumatic

Sistemele de acţionare pneumatice înglobează elemente din două domenii disjuncte,


pneumatică şi electronică, conferindu-le integrarea şi valoarea unitară necesară în aplicaţiile
moderne.
Aşadar, un sistem de acţionare pneumatic conţine un circuit pneumatic responsabil cu
acţiunea directă în procesul automatizat şi un circuit electric responsabil cu conducerea circuitului
pneumatic. De obicei, se consideră circuitul pneumatic ca fiind partea de forţă a sistemului, iar
circuitul electric ca fiind partea de decizie, implementând logica secvenţială de control.
Pentru culegerea informaţiilor mecanice se vor folosi senzori de tip Reed respectiv Solid State.
În vederea realizării schemei electrice avem nevoie de sursă de alimentare, contacte (buton, senzori
de contact), relee si interconectări. Simbolurile lor sunt redate mai jos. [1]

Element Simbol
Conector +24V
(electrical connection 24V)

Conector 0V
(electrical connection 0V)

Buton cu blocare
(detent switch – make)
Buton cu blocare
(detent switch – break)

Contact, comutator (normal deschis / normal


închis)
(make switch / break switch)

Bobina releului
(relay)
Bobina actuator distribuitor
(valve solenoid)

Tabel 3.9 – Elemente folosite in realizarea schemei electrice

Proiectarea schemei ţine seama de faptul că fiecare bobină a distribuitorului trebuie activată
independent, prin intermediul unui releu. De asemenea, se urmăresc condiţiile de activare a acestor
relee şi de menţinere a stării de activare.

76
Figura 3.42 – Schema electrică necesară simulării circuitului pneumatic

Conectarea releelor Ki (i=0….6) se realizează într-un circuit de tip releu cu auto-menţinere.


Prin apăsarea butonului Start se realizează alimentarea bobinei KA0 care are ca și consecință
închiderea comutatorului KA0, comutator prezent pe ramurile de extindere respective retragere a
pistoanelor.
Prin apăsarea butonului EXT_C1 se realizează alimentarea bobinei KA1, care are două
consecințe. Prima este reprezentată de comutarea camerei distribuitorului și alimentarea incintei din
stânga cilindrului. A doua consecința este auto-menținerea stării releului KA1.
Prin apăsarea butonului EXT_C2 se realizează alimentarea bobinei KA2, care are două
consecințe. Prima este reprezentată de comutarea camerei distribuitorului și alimentarea incintei din
stânga cilindrului și evacuarea incintei din dreapta. A doua consecința este auto-menținerea stării
releului KA2.
Prin apăsarea butonului EXT_C3 se realizează alimentarea bobinei KA3, care are două
consecințe. Prima este reprezentată de comutarea camerei distribuitorului și alimentarea incintei din
stânga cilindrului și evacuarea incintei din dreapta. A doua consecința este auto-menținerea stării
releului KA3.
Prin acționarea butonului RET_PST și având contactorul KA0 închis se produce alimentarea
bobinelor KA4,KA5,KA6, care are două consecințe. Prima este reprezentată de comutarea camerei
distribuitorului și alimentarea incintei din dreapta cilindrului și evacuarea incintei din stânga,
acțiuni valabile pentru pistoane cu dublu sens. Pentru pistonul C1 acționarea butonului RET_PST
are ca și efect dezactivarea bobinei KA1. A doua consecință este auto-menținerea stării releelor
KA4, KA5, KA6.
Prin acționarea butonului STOP se întrerupe alimentarea schemei electrice.

77
3.7.2 Simularea sistemului de acționare electropneumatic

Programul Festo FluidSIM Pneumatics permite atât proiectarea schemelor pneumatice și


electrice cât și simularea acestora. Pentru setarea parametrilor simulării, accesați opțiunea
Simulation aferentă meniului Options.
În vederea vizualizării detaliilor mișcării, se va configura factorul de încetinire a simulării (Slow-
motion Factor) la valoarea 30. [1]

Figura 3.43 - Proprietățile simulării

Odată stabiliţi parametrii simulării se poate începe cu simularea propriu-zisă. Pentru


controlul simulării există mai multe opţiuni. Se poate opta pentru simulare fluentă sau cu simulare
pas cu pas.
În cazul simulării fluente, sistemul este iniţializat şi aşteaptă stimuli externi, cum ar fi
apăsarea butonului START. Pentru intrarea în modul de simulare fluentă, se apasă butonul Play din
bara de control a simulării, sau se alege opţiunea Start din meniul Execute. Simularea fluentă poate
fi pornită şi prin apăsarea tastei F9.

Figura 3.44 -Bara de control a simulării

Simularea poate fi oricând întreruptă prin apăsarea butonului Stop sau a tastei F5. Dacă se
doreşte oprirea temporară a simulării, se va folosi butonul Pause, respectiv tasta F8.
După apăsarea butonului Play, sistemul este adus în condiţiile iniţiale, şi aşteaptă apăsarea
butonului START de pe schema electrică pentru a declanşa schema.

78
Figura 3.45 – Acționare buton Start

Figura 3.46- Acționarea buton EXT_C1, extindere piston C1.

79
Figura 3.47 - Acționarea buton EXT_C2, extindere piston C2.

Figura 3.48- Acționarea buton EXT_C3, extindere piston C3.

80
Figura 3.49 - Acționarea buton RET_PST, retragere pistoane C1, C2, C3.

Figura 3.50 - Simularea sistemului pneumatic cu vizualizarea mărimilor pneumatice şi electrice,


retragere

81
Figura 3.51 - Simularea sistemului pneumatic cu vizualizarea mărimilor pneumatice şi electrice,
extindere

82
3.8 Realizarea practică

Macheta realizată este compusă din două părți: montajul de comandă, montajul de execuție
și dispozitivele de intrare. În vederea realizării machetei didactice prezentate în cadrul acestui
proiect am folosit următoarele materiale:

Componentă Cantitate

Buton cu revenire Contact NO 4 buc.

Buton cu revenire Contact NC 1 buc

Buton cu came cu două poziți 1 buc

Carcasă pentru patru butoane 1 buc

Carcasă pentru un buton 1 buc

Carcasă pentru două butoane 1 buc

Conductor monofilar 40 ml

Conector cu montare pe șină GRI 25 buc

Conector cu montare pe șină G/V 3 buc

Sursă 24 V DC 1 buc

Pini terminali cablu 100 buc

Siguranță automată 6A 2 buc

Canal cablu 2 ml

Pistoane pneumatice 3 buc

Ștecher 1 buc

Tabel 3.10-Necesar piese machetă

83
3.8.1 Montajul de comandă

Partea de comandă a machetei include unitatea de control, reprezentată în cazul de față de


către automatul programabil, sursa de alimentare și legăturile electrice dintre bornele de I/O ale
automatului și elementele de intrare, respective de execuție; aceste legături sunt realizate prin
intermediul unor conectori cu montare pe șină.

Figura 3.52 – Partea de comandă a machetei

84
3.8.2 Montajul elementelor de execuție și dispozitivele de intrare

Această parte a machetei cuprinde elementele de intrare (butoanele fizice și senzorii Reed)
și elementele de ieșire ( pistoanele pneumatice).

Figura 3.53 – Modulul de alimentare al machetei Figura 3.54 – Butoanele fizice

Figura 3.55 – Elementele de excuție

Figura 3.56 – Elemetele de distribuție a aerului

85
Capitolul 4

Proiectarea părții software

Automatele programabile se diferențiază de alte sisteme de comandă și control prin limbajul


de programare specific.
Există cinci limbaje de programare dedicate automatelor programabile: limbajul Ladder
(LD) – care lucrează cu viariabile logice, limbajul Function Block Diagram (FBD) – o extensie a
limbajului LD, care permite lucrul cu funcții complexe, limbajul Sequential Function Chart (SFC,
GRAFCET) – un limbaj grafic secvențial, limbajul Insturction List (IL) – un limbaj asemănător
celor de programare a microprocesoarelor și limbajul Structured Text (ST) – este un limbaj
asemănător celor de nivel înalt.
PLC-ul folosit pentru acest montaj suportă două dintre cele cinci limbaje de programare
(LD și FST).
In acest capitol sunt prezentate diverse aplicatii cu automate Festo rulate pe macheta proiectata
anterior avand un grad de complexitate crescator de la o aplicatie la alta.
Prima aplicație constă în extinderea și retragerea manuală a pistoanelor acțiuni realizate cu ajutorul
butoanelor EXT_C1, EXT_C2, EXT_C3 respectiv RET_PST.
A doua aplicație este o aplicație de dificultate medie în care se realizează extinderea respectiv
retragerea pistoanelor, acțiuni ce prezintă o întârziere de timp dată de temporizatoare.
A treia aplicație este o aplicație cu regim automat de lucru în acțiunile de extindere și de retragere a
pistoanelor sunt condiționate atât de stările în care se află pistoanele, dar și de intervalele de
întârziere realizate cu ajutorul temporizatoarelor.

4.1 Etape în realizarea unei aplicații cu automat programabil de tip FESTO FC34

Fiecare producător de automate programabile au dezvoltat un mediu de programare specific


produselor lor. Automatele produse de firma Festo folosesc mediul Festo 4.21 .

Pentru a crea un program nou se selectează opțiunea ”Create new program” din fereastra de
start (Figura A).

Figura 4.1-Creare program Figura 4.2- Introduceți numele proiectului

86
Figura 4.3- Selectați tipul controlerului si adăugți un comentariu

Figura 4.4- Creare program nou Figura 4.5- Alegerea limbajului de programare

Ca limbaj de programare, am folosit limbajul LADDER datorită caracterului logic al mediului


de programare dar și al intuitivitații prin prisma analogiei cu circuitele electrice ce au în
componența lor relee si contacte.

Figura 4.6 – Bara de realizare progame

87
Tab-ul Ramură ( Rung) permite introducerea unei noi ramuri de execuție înainte sau după ramura
curentă.
Tab-ul Comentariu oferă posibilitatea introducerii unui comentariu pentru fiecare ramură.
Tab-ul Contact pune la dispoziția utilizatorului introducerea unui contact de tip NO, iar pentru
introducerea unui contact de tip NC se poate folosi combinatia de taste Ctrl+Shift+N.
Tab-ul Contact paralel oferă posibilitatea punerii în paralel a două sau mail multe contacte.
Tab-ul Cutie de comparație oferă posibilitatea introducerii unor elemente de comparație.
Tab-ul Bobine permite introducerea unor bobine, tipul acestora se poate seta în bobine de tip SET,
RESET, DEC, INC.
Tab-ul Operatori logici permite introducerea de operatori logici (AND, OR, NAND, …)
Tab-ul Timer oferă posibilitatea de introducere a temporizatoarelor în cadrul proiectului.
Tab-ul Counter permite introducerea numarătoarelor în cadrul programului.

4.2 Program de dificultate mică


Pentru a putea realiza întreg sistemul de comandă al acestei machete, am avut nevoie de un
număr de aplicații de test pentru a putea configura elementele de execuție să funcționeze corect.
Am început cu aplicații simple, de acționare a ieșirilor în funcție de intrări, în funcție de
temporizatoare sau numărătoare și ulterior dependent de starea a două sau mai multe intrări. Un
exemplu de program de test este pentru controlul bidirecțional al celor trei pistoane pneumatice.
Această aplicație m-a ajutat ulterior să implementez sistemul automat de acționare bidirecțional
pentru trei pistoane. Proiectarea secvenței de control aferentă programului de extindere respectiv
retragere manuală a pistoanelor necesită implementarea următoarei diagrame de stări:

F.S ST_1
Așteptatre

START

ST_2 EXT_C3
EXT_C1 Ready ST_8
ST_3 Extindere
EXT_C1 C3
Extindere
C1 ST_5
Extindere S5
S1 C2

S3
ST_4 ST_9
Așteptare ST_6 Așteptare
comanda Așteptare comanda
retragere comanda retragere
retragere
RET_PST
RET_PST RET_PST S4
ST_7
S2 ST_7 Retragere_PST
Retragere_PST

Figura 4.7 – Diagramă de tranziție a stărilor program dificultate mică


88
Figura 4.8 – Listare program dificultate mică

89
Prin apăsarea butonului ”START”- I1.0 contactorul M0.1 (RUN) va avea valoarea ”1” și
astfel se pot acționa cele trei pistoane (C1, C2, C3), prin intermediul celor trei butoane EXT-C1,
EXT-C2, EXT-C3. Retragerea pistoanelor ( C1, C2, C3) se realizează prin apăsarea butonului
”RET-PST” aferent intrări I1.3.
Extinderea și retragerea pistoanelor este condiționată în primul rând de acționarea butoanelor
aferente acestor acțiuni și în al doilea rând de către senzorii de capăt de cursă aferenți intrărilor (
I0.0; I0.2-I0.1; I0.4-I0.3).
Prin apăsarea butonului ” STOP ” aferent intrării I1.1 se modifică valoarea contactorului M0.1 fapt
ce determină imposibilitatea acțiunilor de extindere respectiv retragere a oricărui din cele trei
pistoane (C1, C2, C3).
Următoarele figuri sunt preluate din simularea aplicației de test.
În momentul pornirii automatului programabil intrările corespunzătoare senzorilor de capăt de cursă
ce semnalează că pistoanele sunt complet retrase sunt active.

Figura 4.9 – Panou frontal program Figura 4.10 – Intrări aferente senzori capăt de cursă

90
Pentru extinderea pistoanelor trebuie acționat butonul ” START ” și unul din cele trei
butoane EXT-C1, EXT-C2, EXT-C3 fapt ce determină extinderea pistoanelor și activarea intrărilor
corespunzătoare senzorilor de capăt de cursă.

Figura 4.11 – Extindere pistoane

Figura 4.12 – Activare senzori capăt de cursă aferente extinderi pistoanelor

91
Prin apăsarea butonului RET-PST se activează intrarea I1.3 și ieșirile, Q0.4, Q0.6
corespunzătoare bobinelor releelor aferente retrageri pistoanelor.

Figura 4.13 – Retragere pistoane

Figura 4.14 – Activare ieșiri aferente retragerii pistoanelor

92
4.3 Program de dificultate medie

Scopul realizării unui astfel de program este acela de a oferi studenților oportunitatea de a utiliza
noțiunile teoretice dobândite în cadrul cursurilor de Automate Programabile sau Robotică
Industrială în cadrul unor aplicații cu caracter didactic dar și practic.
Pentru realizarea unui program de dificultate medie vom folosi temporizatoare și numărătoare.
În vederea realizării programului propriu zis este necesară diagramă de stări deoarece aceasta
permite o realizare mai ușoară a programului dar totodată și o depanare rapidă si facilă.

F.S
ST_1
Așteptare

START

ST_2
Ready
EXT_C1
EXT_C2 EXT_C3

ST_3 ST_7 ST_12


Temporizare_1 Temporizare_2 Temporizare_3

τ2 τ3
τ1
ST_8 ST_13
Extindere Extindere
ST_4 C2 C3
Extindere
C1
S3 S5

S1 ST_9 ST_14
Așteptare Așteptare
comanda comanda
ST_5 retragere
Așteptare retragere
comanda
retragere RET_PST RET_PST

ST_10 ST_15
RET_PST
Temporizare_4 Temporizare_4

ST_6 τ4 τ4
Temporizare_4
S2 ST_11 ST_16
τ4
Retragere_PST Retragere_PST

S2 S4
Figura 4.15 – Diagramă de tranziție a stărilor program dificultate medie

93
94
Figura 4.16 – Listare program dificultate medie

95
Prin apăsarea butonului ”START”- I1.0 contactorul M0.1 (RUN) va avea valoarea ”1” și
astfel se pot acționa cele trei pistoane (C1, C2, C3), prin intermediul celor trei butoane EXT-C1,
EXT-C2, EXT-C3. Extinderea fiecărui piston este întârziată cu un anumit interval de timp de la
apăsarea butonului EXT_Ci. Retragerea pistoanelor ( C1, C2, C3) se realizează prin apăsarea
butonului ”RET-PST” aferent intrări I1.3. Astfel prin utilizarea temporizatoarelor retragerea
pistoanelor este întârziată cu un anumit interval de timp de la apăsarea butonului RET_PST.
Extinderea și retragerea pistoanelor este condiționată în primul rând de acționarea butoanelor
EXT_Ci și RET_PST, de intervalul de așteptare de la apăsarea butoanelor, iar în al doilea rând de
către senzorii de capăt de cursă aferenți intrărilor ( I0.0; I0.2-I0.1; I0.4-I0.3).
Prin apăsarea butonului ” STOP ” aferent intrării I1.1 se modifică valoarea contactorului M0.1 fapt
ce determină imposibilitatea acțiunilor de extindere respectiv retragere a oricărui din cele trei
pistoane (C1, C2, C3).

4.4 Program de dificultate mare

Scopul realizării unui astfel de program este acela de a oferi studenților oportunitatea de a
utiliza noțiunile teoretice dobândite în cadrul cursurilor de Automate Programabile sau Robotică
Industrială în cadrul unor aplicații cu caracter didactic dar și practic.
Acest program constă în rularea automată a secvențelor de extindere respectiv retragere a
pistoanelor. Funcționarea automată depinde în primul rând de acționarea butoanelor START, STOP
și MOD, iar în al doilea rând de valoarea intrărilor corespunzătoare senzorilor de capăt de cursă.
În vederea realizării programului propriu zis este necesară diagramă de stări deoarece
aceasta permite o realizare rapidă și facilă a programului.

F.S
ST_1 @
#
Așteptare
S1

ST_5
START
Temporizare_2

ST_2 τ2
Temporizare_1
ST_6
τ1 Extindere_C2

S3
ST_3
Exindere_C1 ST_7
Contorizare_C2
S1
S3
ST_4
Contorizare_C1
ST_8
Temporizare_3

#
$
96
τ3
$ * %
S1 S5
ST_9
Extindere_C3 ST_17 ST_25
Contorizare_C1 Contorizare_C3
S5
CNT_C1 CNT_C3
ST_10
Contorizare_C3 ST_18 ST_26
Activare O0.0 Activare O0.7
S5
ST_10 S1 S5
Temporizare_4
ST_19 ST_27
τ4 Temporizare_2 Temporizare_5
ST_11 τ2
Retragere_C1 τ5
ST_20
ST_28
Extindere_C2
Retragere_C2
ST_12
Temporizare_5 S3 S2

τ5 ST_21
ST_29
Contorizare_C2
Temporizare_6
ST_13
Retragere_C2 CNT_C2
τ6
S2 ST_22
ST_30
Activare O0.1
ST_14 Retragere_C3
Temporizare_6 S3 S4
STOP
τ6
ST_23
Retragere_C1 ST_31
ST_15 Resetare
Retragere_C3 numărătoare

S4
ST_24
ST_16 Extindere_C3
Extindere_C1

@
* %

Figura 4.17 – Diagramă de tranziție a stărilor program dificultate mare


97
98
Figura 4.18 – Listare program dificultate mare

99
Concluzii și dezvoltări ulterioare

Macheta proiectată și realizată în cadrul acestei lucrări are caracter didactic datorită
faptului că oferă studenților oportunitatea de a pune în aplicare noțiunile și principile aprofundate în
cadrul cursurilor de Automate programabile si Robotică industrială. De asemenea această machetă
prezintă și un caracter interdisciplinar prin prisma faptului că ea combină atât elemente din
electronică ( automatul programabil, senzori, butoane) cât și elemente din pneumatică ( pistoane,
electrovalve), fapt ce determină apariția interesului datorită combinării celor două domenii.
Construcția machetei permite dezvoltarea unei game largi de aplicații în scopul învățarii
programării și utilizării automatelor programabile, aplicații a căror complexitate depinde doar de
imaginația studenților. Pot fi imaginate secvențe de control cu sau fără timere, cu sau fără
numărătoare, secvențe repetitive sau secvențe executate o singură dată. Există și posibilitatea de a
concepe și verifica programe de control mai ample care să presupună schimbarea modului de lucru
sau chiar integrarea unor secvențe de tratare a situaților neprevăzute de tip avarie.
Cu ajutorul unor modificări minore în circuitul electric macheta poate fi îmbunatațită în
scopul schimbarii automatului programabil prin adăugarea de conectică suplimentară. Astfel s-ar
crea posibilitatea ca studenții să desfășoare aceeași gama de aplicatii pe două sau trei tipuri de
automate programabile diferite în scopul acoperirii unei game mai largi de automate, astfel încât
absolvenții să nu aibă dificultăți în momentul angajării la agentul economic.

100
Bibliografie

[1]
Bistriceanu Constanţa, “ Modelararea şi simularea unui sistem de acţionare pneumatică cu un
cilindru cu cu dublă acţiune utilizând mediul FLUIDSIM PNEUMATICS.” – accesat în 04.07.2016
1.Programming in Statement List and Ladder Diagram- S. Breuer, I. Walter, O. Westrik- accesat în
05.07.2016
2. Fundamentos de la técnica de automatización- F. Ebel, S. Idler, G. Prede, D. Scholz – accesat în
12.07.2016
3. Ș.l. dr. Ing. Ionel Bostan – Automate Programabile – note de curs
4. Ș.l. dr. Ing. Robert Beloiu – Robotică Industrială – note de curs
5. www.wikipedia.org – date informative – accesat în 07.07.2016
6. www.tme.eu/ro/ - date prezentare produs – accesat în 07.07.2016
7. www.festo.com - date prezentare produs – accesat în 08.07.2016
8. www.smcromania.ro - date prezentare produs - – accesat în 08.07.2016
9. www.learning.wintec.ac.nz/course/view.php?id=4900&section=5 accesat în 09.07.2016
10. www.festo-didactic.com/ - date prezentare produs – accesat în 09.07.2016
11. Michelle, Valve Direcționale I, 2012 - – accesat în 10.07.2016
12.www.newark.com/wcsstore/ExtendedSitesCatalogAssetStore/cms/asset/pdf/americas/common/st
orefront/schneider-electric/SolidStateSensing.pdf – accesat în 11.07.2016

101
Anexe

Anexa A1 – Elementele de conexiune aferente intrărilor

102
Anexa A2 – Elementele de conexiune aferente ieșire

103
L
N
PE

ÎG

F1 F2

230 VAC

24V DC

+
-

Anexa A3 – Sursă de alimentare

104
Anexa A4 – Specificații tehnice senzor Solid State

Anexa A5 – Specificații tehnice senzor Reed

105

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