Documente Academic
Documente Profesional
Documente Cultură
1
IV.7.2 Exemplu de utilizare a unui SFC pentru
realizarea unei aplicaii .......................................................... 101
Bibliografie .......................................................................... 103
ANEXA.................................................................................. 106
Tipurile de date definite n IEC 61131-3[31].................... 106
2
Lista figurilor
3
Fig. 33 - Contact tranziie pozitiva (a), contact tranziie negativ (b) [30]
.................................................................................................................... 50
Fig. 34 - Front se und cresctor ........................................................... 50
Fig. 35 - Front de und descresctor ..................................................... 51
Fig. 36 - Bobin (a), bobin negat (b) [30] ........................................... 51
Fig. 37 - Bobin SET cu reinere (a), bobin RESET cu reinere(b) [30]52
Fig. 38 - Bobina front cresctor (a), bobin front descresctor (b) [30] . 52
Fig. 39 - Elementele structurale ale limbajului LD ................................. 54
Fig. 40 - Realizarea funciei SAU in limbaj LD ....................................... 55
Fig. 41 - Realizarea funciei SI in limbaj LD .......................................... 55
Fig. 42 - Realizarea funciei NU utiliznd limbajul LD ............................ 55
Fig. 43 - Realizarea funciei NAND utilnd limbajul LD ........................ 56
Fig. 44 - Realizarea funciei NOR utiliznd limbajul LD ......................... 56
Fig. 45 - Montaj PLC, dou butoane ND cu revenire, bec. - schem
simplificat................................................................................................... 57
Fig. 46 - Program pornire element acionat - nefuncional .................... 59
Fig. 47 - Program pornire element acionat ........................................... 60
Fig. 48 - Implementarea funciei START-STOP utiliznd bobine de tip
SET/RESET (LATCH/UNLATCH) ............................................................... 60
Fig. 49 - Schema electric pentru implementarea condiionrii ............. 61
Fig. 50 Montaj utiliznd un AP pentru implementarea schemei electrice
din figura 49 ................................................................................................ 62
Fig. 51 - Programul LD pentru ndeplinirea condiionrii stabilite cu
montajul din figura 50. ................................................................................. 63
Fig. 52 Montaj utiliznd un AP si butoane ND fr reinere
implementarea schemei electrice din figura 49........................................... 64
Fig. 53 Programul LD pentru ndeplinirea condiionrii stabilite cu
montajul din figura 52. ................................................................................. 65
Fig. 54 Schema pneumatic - simplificat - pentru acionarea unui piston
.................................................................................................................... 66
Fig. 55 Programul LD pentru acionarea pistonului ............................... 67
Fig. 56 Simbolizarea temporizatorului TON (TwidoSuite V2.31) ........... 68
Fig. 57 Simbolizare temporizator TON (Allain Bradley) [48] .................. 69
Fig. 58 Funcionarea temporizatorului TON ........................................... 70
Fig. 59 Exemplu de utilizare a funciei TON .......................................... 71
Fig. 60 Setarea parametrilor pentru un temporizator (TwidoSuite V2.31)
.................................................................................................................... 72
Fig. 61 Simbolizarea temporizatorului TOF (TwidoSuite V2.31) ........... 72
Fig. 62 Funcionarea temporizatorului TOF ........................................... 73
Fig. 63 Simbolizarea temporizatorului TP (TwidoSuite V2.31) .............. 74
4
Fig. 64 Funcionarea temporizatorului TP .............................................. 74
Fig. 65 Simbolizarea unui numrtor (TwidoSuite V2.31) ...................... 77
Fig. 66 Exemplu de utilizare a unui numrtor ....................................... 77
Fig. 67 Exemplu de instruciune IL ......................................................... 79
Fig. 68 Funcia SI n limbaj LD respectiv IL ............................................ 81
Fig. 69 Funcia SAU n limbaj LD respectiv IL ........................................ 81
Fig. 70 Exemplu de program in LD si IL utiliznd funcia SET ............... 81
Fig. 71 Exemplu de program complex in limbaj LD si IL ........................ 82
Fig. 72 Program in LD si IL utiliznd un numrtor ................................ 83
Fig. 73 Reprezentarea etapelor intr-un grafic SFC ................................ 94
Fig. 74 Reprezentarea unei etape iniial active ...................................... 94
Fig. 75 Reprezentarea unei aciuni asociate unei etape i legtura
orientat ....................................................................................................... 95
Fig. 77 Receptivitate asociat unei tranziii ............................................ 95
Fig. 76 Tranziia ...................................................................................... 95
Fig. 78 Exemplu de SFC ........................................................................ 96
Fig. 79 Ramificaie de selecie (doar o singura ramur se va executa) . 97
Fig. 80 Selecia unei ramuri utiliznd receptivitatea ............................... 97
Fig. 81 Saltul peste etape [3]. ................................................................. 98
Fig. 82 Ramificaie paralel .................................................................... 99
Fig. 83 SFC pentru o pres de tanat[6A] ........................................... 102
5
Lista tabelelor
Tab. 1 Avantajele i dezavantajele automatelor programabile ............. 13
Tab. 2 Tabel comparativ al principalelor caracteristici ale elementelor
utilizate pentru ieirile AP. ........................................................................... 27
Tab. 3 Numerele 1-60 n baza 10 respectiv baza 2 ............................. 35
Tab. 4 Tabelul de adevr al funciei compelentare (negarea) .............. 37
Tab. 5 Tabelul de adevr al funciei SAU ............................................. 38
Tab. 6 Tabelul de adevr al funciei I ................................................. 38
Tab. 7 Tabelul de adevr al funciei NOR ............................................. 39
Tab. 8 Tabelul de adevr al funciei NAND .......................................... 41
Tab. 9 - Corespondena Adrese - Intrri fizice ..................................... 63
Tab. 10 Instruciunile specifice IL......................................................... 79
Tab. 11 - Declararea variabilelor in limbajul ST [25]. ........................... 85
6
I. DEZVOLTAREA AUTOMATELOR
PROGRAMABILE
7
Principalele dezavantaje al sistemelor de control cu
relee electromagnetice sunt:
Costuri ridicate legate de punerea in funciune i
mentenana lor.
Lipsa de flexibilitate pentru a extinde procesul,
precum i timpul foarte mare necesar pentru a
regla procesul.
Probleme mari n ceea ce privete mentenana
acestor sisteme, principalele probleme fiind
legate de contacte uzare, fire desfcute, volum
mare de informaie care trebuia actualizat n
cazul realizrii modificrilor n structura hardware
(cablaje, relee etc.)
8
criterii un controler standard de main mai trebuia s
permit:
Extinderea avantajele circuitelor statice la 90%
din mainile din fabric.
Reducerea timpilor de nefuncionare ale
instalaiilor datorate problemelor cu sistemul de
comand.
Extinderea facil a funciilor existente prin
realizarea unei structuri modulare.
Utilizarea n mediu industrial (umiditate ridicat,
temperaturi ridicate, vibraii etc.)
9
Fig. 2 - Automatul programabil Modicon 084 [15]
10
o serie de companii care activau in domeniul aplicaiilor
industriale s desfoare cercetri privind posibilitatea
programrii PLC-urilor utiliznd calculatorul care era n plin
proces de dezvoltare n aceea perioad i prin intermediul
cruia puteau fi nlocuite terminalele hardware dedicate.
Compania ICOM Software a fost prima care a oferit un mediu
de programare cu o interfa pentru automatele programabile
produse de Allen-Bradley. Compania ICOM Software a
fuzionat cu Rockwell Automation in 1993.
Compania Taylor Industrial Software a fost prima
companie care a oferit un mediu de programare utiliznd o
interfa pentru automatele programabile Modicon
n anii 80 PLC au cunoscut o dezvoltare intens
nglobnd funcii de control distribuit. n anii 90 n domeniul
automatelor programabile a nceput s apar
standardizarea,funciile Ethernet, peer-to-peer au devenit
disponibile de la aproape toi productorii de automate
programabile. EEPROM-ul i memoriile Flash nlocuit
memoriile EPROM din anii 1980. PC-ul i afiajele CRT au
devenit un standard acceptat n industrie i au nceput s
nlocuiasc comutatoarele i indicatoarele luminoase de pe
panourile de comand.
Redundana pentru PLC-uri a devenit un standard.
Primii ani ai secolului XXI au vzut o consolidare a
productorilor de PLC-uri. Au fost dezvoltate PLC-uri Nano sau
Pico avnd dimensiuni miniaturale, unele la fel de mici ca relee
industriale pe care le-au nlocuit. Au fost introduse PLC de
11
siguran oferind tripl redundan. Panourile LCD ca interfa
cu operatorul au nlocuit n mare msur afiajele CRT. [5]
12
Avantaje Dezavantaje
Numr mare de intrri i ieiri Nu utilizeaz la capacitate
maxim capacitatea de
procesare a
microprocesorului
Construcie special adaptat Modul lor de programare este
mediului industrial, sunt fiabile predispus erorilor.
i rezistente
Reprogramabil Util pentru decizii te tipul
DA/NU
Posibilitate de extensie (n Nu poate monitoriza n mod
unele cazuri) continuu intrrile
Adaptat pentru aplicaii de Flexibilitate redus
supervizare comparativ cu
microprocesoarele (sistemul
de operare al automatelor
programabile este proprietar,
productorii nu ofer acces la
aceast componenta)
Instalare facil
Tab. 1 Avantajele i dezavantajele automatelor programabile
13
II. STRUCTURA AUTOMATELOR
PROGRAMABILE
14
Automatele compacte au avantajul unei utilizri facile, o
structur mai simpl i un cost mai redus. Un exemplu de
automat programabil compact este prezentat n figura 6.
15
fix (numit asiu) numrul i pinul intrrilor sau a ieirilor
poate fi modificat.
16
automatului programabil. n general tensiunea de alimentare
ale surselor pentru AP este 220V c.a (pentru Europa) , 110V
c.a. (pentru S.U.A) sau 24 V c.c. Majoritatea productorilor
prefer s utilizeze ca tensiune de alimentare 24 V c.c.
deoarece astfel acelai automat programabil poate fi utilizat
indiferent de continent, obinerea tensiunii de 24 V C.C. de la
reea realizndu-se prin intermediu unei alte surse de
alimentare ( n general surse de alimentare n comutaie,
montate n majoritatea echipamentelor).
n funcie de tipul automatului programabil sursa de
alimentare poate fi inclus n automatul programabil (n general
n cazul automatelor programabile compacte) sau poate fi un
modul (n cazul automatelor programabile de tip modular).
17
n gazul automatului programabil prezentat n figura 7,
ultimul modul este modulul de alimentare. La acest modul
tensiunea de intrare este de 24 V C.C., prin acest modul se
realizeaz alimentarea tuturor componentelor automatului
programabil inclusiv a altor module de extensie care se pot
monta.
Majoritatea automatelor programabile includ i o baterie
sau acumulator pentru meninerea informaiilor scrise n
memoria volatil (n funcie de productor).
19
procesorul este i plasat n modul de funcionare, astfel nct s
poat executa programul i s opereze procesul dorit. [25]
n modul Execuie AP-ul este n deplina funcionare,
face toate verificrile parametrilor proprii de funcionare i de
exploatare conform programului pe care l ruleaz. Se
realizeaz citirea intrrilor i ieirile sunt activate n consecin.
n acest mod AP-ul poate realiza comunicarea cu alte uniti
prin intermediul RS232, Profibus, SCADA sau CC-Link
(protocoale de comunicaie). [25]
n modul oprit rularea programului procesorului, ieirile
nu sunt activate (toate ieirile AP tec n zero logic pentru ieirile
digitale respectiv 0V pentru ieirile analogice).
n modul reset se realizeaz trecerea AP n condiiile
iniiale de funcionare fr a tergerea registrelor sau memoriei.
Aceast funcie se mai numete i resetare la cald. Dac
resetarea se realizeaz cu tergerea totala a registrelor,
intrrilor i ieirilor aceasta se numete resetare la cald. [25]
n fig. 9 este prezentat modul n care un AP ruleaz
programul.
Viteza de scanare este foarte mare,deoarece AP-ul
controleaz situaii reale. Ciclul de execuie prezentat n figura
9 are loc n cadrul unui AP de aproximativ 1000 de ori pe
secund (valoarea este aproximativ, depinde de tipul AP,
numrul de intrri-ieiri, complexitatea programului, frecvena
procesorului, viteza memoriilor etc.). Uneori poate varia chiar
pe o scanare de baz de scanare n funcie de programul de
20
bucle fiind pornit i n afar de intrri i / sau ecuaii de
program.
21
Memoria utilizat n cadrul automatelor programabile
este de dou tipuri. Memoria ROM (Read Only Memory) care
este o memorie permanent utilizat pentru stocarea firmware-
ul automatului programabil (prin firmware se nelege un
program special, de mici dimensiuni, care asigur comanda i
controlul unor aparate i dispozitive de o oarecare complexitate
[46] ). Pentru stocarea unor informaii tranzitorii respectiv
statusul intrrilor si a ieirilor i date referitoare la diverse
temporizatoare sau numrtoare se utileaz memoria RAM (
Random Access Memory - este denumirea generic pentru
orice tip de memorie se poate acces aleator, oferind acces
orice locaie de memorie sau indiferent de ordine).
Programul automatului programabil se stocheaz n
memorii non volatile de tip EEPROM. Arhitectura memoriilor i
modul n care acestea sunt utilizate in cadrul automatelor
programabile difer de la un productor la altul. Afle n cazul
unor productori ( ex.GE-Fanuc) se utilizeaz memoria
EEPROM pentru stocarea programului ns la iniializarea
automatului programabil, programul va fi transferat n memoria
RAM pentru a fi executat de ctre procesor. n acest caz
automatele programabile sunt dotate cu o cantitate suficient
de memorie RAM pentru a stoca variabilele i programul.
Totodat acest tip de automate programabile necesit o
confinare speciala atunci cnd sunt programate, pentru a
transfera noul program din memoria RAM unde este stocat
iniial n memoria permanent EEPROM. [26]
22
Ali productori ( ex. Keyence) ruleaz programul direct
din memoria EEPROM. n acest caz cantitatea de memorie
RAM este mai redus iar n cazul programrii, programul nou
se scrie direct in EEPROM nlocuind vechiul program. [26]
Capacitile de memorie de PLC - uri variaz. Capaciti
de memorie sunt adesea exprimate n termeni de kilooctet (KB)
(eng. kilobyte). Un byte este o grupare de 8 bii. Un bit este o
locaie de memorie care poate stoca un numr binar care are
valoarea 1 sau 0. Memoria 1KB nseamn c exist 1024 bii
de RAM. Memorie 16K nseamn c sunt 16 x 1024 = 16384
bii de RAM. Datorit dezvoltrii rapide a memoriilor acestea au
devenit accesibile si ofer capaciti din ce n ce mai mari,
astfel ca la majoritatea AP actuale capacitatea de memorie
nevolatil se situeaz ntre 128 MB i 1GB, memoria RAM ntre
32 KB i 512 MB . Este de notat faptul c n ceea ce privete
cantitatea de memorie instalat sunt o serie de factori care
influeneaz acest lucru cum ar fi complexitatea funciilor
existente la nivelul AP i care influeneaz dimensiunea
programului i implicit impune o cantitate mai mare de memorie
nevolatil, la fel cum strategia de rulare a programului din
memoria nevolatila sau din memoria RAM influeneaz
cantitatea de memorie volatil instalat de ctre productor.
Cantitatea de memorie nu are o influen majora asupra
performanelor AP, memoria instalat de productor fiind
suficient n marea majoritate a aplicaiilor care pot fi
dezvoltate cu un anumit AP.
23
II.3. Module de intrare
24
galvanic ntre elementul conectat la automatul programabil i
unitatea de procesare.
25
Dispozitivele de ieire au rolul de a furniza semnal de
ieire corespunztor elementului conectat la ieire atunci cnd
unitatea de procesare transmite un semnal n acest sens.
Modulele standard de ieire ofer urmtoarele tipuri de
semnal 24 V C.A., 48 V C.A., 220 V C.A. , 120 V C.A., , 24 V
C.C., 48 V C.C., 120 V c.c., 220 Vc.c., i TTL, [28] cu
observaia c pentru fiecare tip de semnal exista o intrare sau
un modul separat n funcie de arhitectura automatului
programabil.
n figura 11 este prezentat schema electric a unui
modul de ieire binar. Elementul esenial al modului l
constituie optocuplorul (OC) care realizeaz o separare
galvanic ntre elementul conectat la automatul programabil i
unitatea de procesare.
26
tranzistoare pot comuta numai C.C. iar capacitatea de
comutare (curentul maxim) este n general mai mic dect n
cazul releelor. Ieirile pe tranzistoare pot fi PNP sau NPN.
Avantajul principal n constituie ns timpul de comutare, care
este semnificativ mai mic comparativ cu cel al releelor.
Ieirile utiliznd triace sunt utilizate pentru aplicaii unde
este necesar conectarea la AP a unor componente care
funcioneaz in C.A. [33]
n tabelul sunt prezentate comparativ caracteristicile
principalelor elemente utilizate ca elemente de comutaie
pentru modulele de ieire.
27
comunicaie chiar i numai pentru aceast funcie. n anii 80
automatele programabile se erau n general programate cu
echipamente furnizate de productorul AP-ului, n general
aceste echipamente nu erau standardizate.
n anii 90 majoritatea AP-urilor au nceput s fie
programate utiliznd o aplicaie dedicat care rula pe un PC.
Deoarece porturile PC-urilor erau standardizate i productorii
de automate programabile au fost nevoii s utilizeze
protocoale compatibile. n general programarea AP-urilor se
realiza utiliznd portul serial ( protocolul RS 232, conectorul tip
DE9).
n figura 12 este prezentat automatul programabil
Tengcontrol T910 care are dou porturi RS232.
28
n ultima perioad majoritatea automatelor programabile
includ i un port Ethernet care permite conectarea automatului
programabil ntr-o reea. Programarea se realizeaz n general
prin portul Ethernet.
n funcie de complexitatea automatului programabile,
pot exista o serie de alte porturi care s i permit comunicarea
cu alte echipamente sau automate programabile. Un exemplu
n acest sens este Modbus care este un protocol de
comunicaii seriale publicate iniial de Modicon (acum
Schneider Electric), n 1979 pentru utilizarea cu automatele
programabile produse de ei. Astzi Modbus este un standard
n industrie i are o serie de variante i un umr foarte mare de
aplicaii.
Modbus RTU - Aceasta este utilizat n
comunicaie serial i folosete o reprezentare
compact, binar a datelor de comunicare.
Modbus ASCII - Aceasta este utilizat n
comunicaie serial i utilizeaz caractere ASCII
pentru comunicare.
Modbus TCP / IP sau Modbus TCP - Aceasta
este o variant Modbus utilizat pentru
comunicarea prin reele TCP / IP.
O serie de automate programabile includ porturi seriale
de comunicaie care implementeaz protocolul Modbus,
acestea fiind utilizate pentru conectarea cu diverse periferice.
Principalele periferice care se pot conecta la automate
29
programabile pentru transmiterea de date utiliznd protocoale
din familia Modbus sunt:
Cititoare de coduri de bare;
Cantare electronice;
Afiaje LCD.
Pe msur ce sistemele de control devin tot mai
complexe, apare necesitatea ca acestea s dispun de o
comunicare eficient ntre componentele sistemului. Unele
echipamente sau sisteme complexe necesit ca automatele
programabile cu care sunt dotate s poat comunica ntre ele
astfel nct s poat fi realizat o anumit funcie (de exemplu
interconectarea a dou centre de prelucrare n cadrul unei linii
tehnologice, sau n cadrul unui sistem flexibil, transmiterea de
informaii ctre un calculator de proces, o baza de date etc.)
n sistemele avansate de producie, comunicarea tuturor
sistemelor de comand existente la nivelul sistemului este
obligatorie, prin acest tip de comunicaii fiind realizate o serie
de funcii cu ar fi monitorizarea parametrilor de funcionare a
fiecrei componente a sistemului respectiv a sistemului n
ansamblul lui, managementul produciei, monitorizarea calitii,
rapoarte privind planificarea mentenanei etc.
Primele reele PLC au constat dintr-un calculator gazd
multi-port cu fiecare port conectat la portul de programare a
unui PLC
30
Fig. 13 - Arhitectura unei reele de PLC-uri (Arhitectur stea)
32
III. SISTEMUL BINAR DE NUMERAIE I
ELEMENTE DE LOGIC BOOLEAN
33
Pentru conversia unui numr n baza doi n baza zece
acesta se scrie astfel: Pornind de la dreapta la stnga fiecare
element al numrului binar se nmulete cu 2n , unde n este in
intervalul [0, N-1], unde N este numrul de bii pe care i are
numrul binar ( pentru numrul (233)10 = (11101001)2 N=8,
astfel c intervalul pentru n este [0,7]).
7 6 5 4 3 2 1 0
11101001 2 =12 +12 +12 +02 +12 +02 +02 +12 =
128+64+32+0+8+0+0+1=233
100011 2 =125 +024 +023 +022 +121 +120 =
32+0+0+0+0+2+1=35
34
Baza 10 Baza 2 Baza 10 Baza 2 Baza 10 Baza 2
16 10000 36 100100 56 111000
17 10001 37 100101 57 111001
18 10010 38 100110 58 111010
19 10011 39 100111 59 111011
20 10100 40 101000 60 111100
Tab. 3 Numerele 1-60 n baza 10 respectiv baza 2
35
b. Comutativitate (Proprietate a unei relaii sau a
unei operaii matematice de a fi independent
de ordinea elementelor pe care le conine)
=
=
c. Asociativitate (Proprietate a unei operaii
matematice sau a unei legi de compunere de
a fi asociativ)
=
=
2. Operaiile satisfac legea absorbiei
= =
3. Operaiunile sunt reciproc distributive
=
= ()()
4. B include (mulimea vid) i I (mulimea tuturor
elementelor ), astfel nct acestea s satisfac:
=
=
=
=
5. B are un operator unar (operaiunea unar este o
funcie cu exact un operand, aa cum este rdcina
ptrat, negarea etc.) , astfel nct:
, =
36
, =
III.2.1. Funcii booleene
Complementarea(negare)
A
1 0
0 1
Tab. 4 Tabelul de adevr al funciei compelentare (negarea)
37
1 1 1
0 0 0
0 1 1
Tab. 5 Tabelul de adevr al funciei SAU
Conjuncia
A B AB
1 0 0
1 1 1
0 0 0
0 1 0
Tab. 6 Tabelul de adevr al funciei I
38
Fig. 19 - Implementarea prin contacte a funciei SAU
A B A NOR B
0 1 0
0 0 1
1 1 0
1 0 0
Tab. 7 Tabelul de adevr al funciei NOR
39
Fig. 20 - Simbolul grafic al funciei NOR
40
Funcia NAND (NEGATIV AND)
A B A NAND B
0 1 1
0 0 1
1 1 0
1 0 1
Tab. 8 Tabelul de adevr al funciei NAND
41
Funciile derivate pot fi utilizate pentru obinerea
funciilor logicii booleene (NOT, AND, OR), conform
diagramelor:
42
poart) vom obine la ieirea porilor NOR valorile i ,
conform tabelului 7. Astfel la intrarea celei de a treia pori
logice vom avea 0 i 1, conform tabelului 5 rezultatul la ieire
va fi 0. Conform tabelului 5 rezultatul funciei booleene SI
pentru 1, 0 este 0.
43
Daca A =0, B=1 conform tabelului 7 vom avea 0
NOR 1 = 0. Astfel pe cea de a doua poarta NOR vom aplica 0,
0 si vom obine 0 NOR 0 = 1. Pentru A =0 i B=1 funcia SAU
este 1.
44
Fig. 31 - Realizarea fizic a porilor logice de tip NAND [16]
45
IV. PROGRAMAREA AUTOMATELOR
PROGRAMABILE
46
Standardul IEC 61131 este elaborat de International
Electrotechnical Commission, al crui birou se afl n Geneva,
Elveia ( 2015).
47
Limbajul de tip Structured text (ST) este un limbaj de
nivel nalt, care este structurat pe blocuri i seamn din punct
de vedere sintactic cu limbajul Pascal, pe care se i bazeaz.
Limbajul Instruction list (IL) este un limbaj de nivel
sczut i este asemntor cu un limbaj assambly (limbajele
assambly sunt acele tipuri de limbaje n care n care exist o
corespondenta foarte puternic ntre limbaj i arhitectura
codului main - a procesorului [41] ).
Limbajele Sequential function chart (SFC) respectiv
Continuous Function Chart (CFC) sunt limbaje de
programare grafice.
Fig. 32 - Contact normal deschis (a) i contact normal nchis (b) [30]
49
Contactele ND (normal deschis) respectiv NC se pot
asocia unui buton care este ND, in cadrul programului avnd
acelai comportament ca si un buton ND in cadrul unui circuit
electric.
Fig. 33 - Contact tranziie pozitiva (a), contact tranziie negativ (b) [30]
Contactele de tip tranziie pozitiv (front cresctor)/
contact tranziie negativ (front descresctor) se utilizeaz
pentru a detecta dac semnalul este cresctor sau
descresctor.
50
Fig. 35 - Front de und descresctor
51
La realizarea condiiei logie specificate n program
activarea sau dezactivarea unei ieiri se realizeaz prin
intermediul bobinelor sau a bobinelor negate ( simbolul acestor
funcii se prezint n figura 36).
Fig. 38 - Bobina front cresctor (a), bobin front descresctor (b) [30]
52
Bobinele de tip front cresctor sau front descresctor
prezentate n figura 38 se utilizeaz pentru funcii care necesit
condiionri suplimentare. Astfel nu este suficient alimentarea
acestor bobine pentru a-i schimb starea logic. Bobina front
descresctor i va schimba starea logic doar dac semnalul
este descresctor (un semnal de tipul celui din figura 35),
bobina front cresctor i schimb starea logic doar dac va fi
alimentat cu o tensiune cresctoare (un semnal de tipul celui
din figura 34).
Din punct de vedere al structurii programele PLC in
limbaj ladder (LD) conin dou coloane verticale (numite in
unele cri de specialitate power line sau linii de alimentare)
poziiile 1 i 2 din figura 40. ntre cele dou lini verticale, linia
orizontal care le leag se numete treapt (rung), poziia 8 n
figura 39. Treptele conin instruciunile i ramurile. Instruciunile
sunt formate de bobine, relee i alte elemente, poziiile 3,4,5,6
n figura 39. Instruciunea 4 din figura 39 se afl pe o ramur a
treptei.
Ramurile nu sunt considerate trepte deoarece nu leag
direct cele dou coloane, ele fiind folosite pentru a activa o
ieire n cazul mai multor evenimente ( mai multe intrri care i
schimba starea logic).
n figura 38 exist singur treapt (Rung 0), 4
instruciuni i o ramur.
n general toate programele n care se poate realiza
programarea LD realizeaz numerotarea automat a treptelor
programului.
53
Fig. 39 - Elementele structurale ale limbajului LD
54
Fig. 40 - Realizarea funciei SAU in limbaj LD
55
Pentru realizarea funciei NU n limbajul LD se utilizeaz
un contact negat. Astfel dac intrarea fizic se afla n 1 logic
programul se va comportata ca si cum s-ar afla n 0 logic. Dac
intrarea fizic se va afla n zero logic, programul se va
comporta datorit contactului negat ca si cum s-ar afla n 1
logic i va activa bobina asociat ieirii.
56
Dac ambele intrri sunt n 0 logic , acestea vor fi
negate i vor trece n 1 logic, determinnd i bobina A NOR B
s i schimbe starea logic (s treac din 0 n 1 logic). orice
alt combinaie de stri ale intrrilor A i se va menine bobina
n starea 0 logic. Acest lucru corespunde tabelei de adevr a
funciei NOR.
57
Pentru a realiza programul n limbajul LD este necesar
s stabilim modul n care trebuie s funcioneze (logica
programului) i s realizam alocarea intrrilor fizice la adresele
pe care le vom utiliza.
Montajul trebuie s permit aprinderea becului la
apsarea butonului B1 i stingerea lui la apsarea butonului
B2.
Butonul B1 va fi alocat intrrii I0.0, butonul B2 va fi
alocat I0.1 (alocarea depinde de fiecare PLC si corespondena
intre intrrile fizice i adrese este specificat n manualul de
utilizare), ieirea Q0.0 o asociem becului din figura 45. Definim
butonul B1 (IO.0) ca fiind butonul de start i B2 (I0.1) ca fiind
butonul de stop.
Conform modului n care trebuie sa funcioneze
programul putem spune c la apsarea butonului B1 becul
trebuie s se aprind i la apsarea becului B2 acesta trebuie
s se sting.
Realiznd un program similar celui din figura observm
c avem o funcie SI. Pentru ca treapta 0 (rung 0) s devin
adevrat a acionarea butonului B1 (trecerea I0.0 la 0 logic la
1 logic), pentru B2 (I0.1) vom folosi un contact negat, astfel
dac butonul B2 nu este apsat, adresa contactul asociat (I0.1)
va avea valoarea 1 logic. Astfel dac B1 acionat, B2
neacionat ieirea Q0.0 va fi activat i indicatorul luminos va fi
aprins.
Aparent acest program corespunde cerinelor iniiale,
ns dezactivarea ieirii Q0.0 va avea loc i dac butonul B1 nu
58
este acionat, acesta fiind conform schemei din figura 1 un
buton cu revenire de unde rezult c becul va fi alimentat doar
att timp ct butonul B1 este acionat manual, lucru care nu
corespunde cerinelor iniiale.
59
Utiliznd acest program realizat n limbaj LD putem
putem realiza funcia START-STOP pentru un consumator
oarecare prin intermediul unui AP si utiliznd dou butoane ND
cu revenire (NO PUSH BUTTONS)
60
Presupunnd o condiionare care s impun pornirea
unui element acionat de la dou butoane (de la oricare dintre
ele) numai dac toate butoanele de oprire sunt neacionate
Electric aceast condiionare poate fi ndeplinit prin realizarea
schemei de conexiuni din figura 49.
61
Schema electric din figura 49 poate fi nlocuit cu
montajul din figura 50.
62
Adresa Buton
%I0.0 B1
%I0.1 B2
%I0.2 B3
%I0.3 B4
%I0.4 B5
Tab. 9 - Corespondena Adrese - Intrri fizice
63
Fig. 52 Montaj utiliznd un AP si butoane ND fr reinere
implementarea schemei electrice din figura 49
64
Fig. 53 Programul LD pentru ndeplinirea condiionrii stabilite cu
montajul din figura 52.
65
IV.4.3. Numrtoare i temporizatoare
66
Dac dorim un simplu ciclul extensie, pentru a menine
electrovalva in poziia acionat pentru ciclul de retragere pornit
prin apsarea butonului de start vom utiliza funcia SET COIL
iar pentru a asigura retragerea la atingerea contactului ND
prezentat in figura 54 se va utiliza funcia RESET. Programul
este prezentat in figura 55.
67
IV.4.3.1 Temporizatoare
Temporizatorul TON
68
Fig. 57 Simbolizare temporizator TON (Allain Bradley) [48]
69
Fig. 58 Funcionarea temporizatorului TON
70
Utiliznd aceast funcie se poate realiza n cazul
schemei din figura 54 un program care s menin cilindrul
extins un anumit timp. Programul este prezentat n figura
71
Fig. 60 Setarea parametrilor pentru un temporizator (TwidoSuite V2.31)
Temporizatorul TOF
72
Fig. 62 Funcionarea temporizatorului TOF
Terorizatorul TP
Acest tip de temporizator poate fi utilizat pentru a genera
un impuls cu o durat bine stabilit. Simbolizarea acestui
temporizator este prezentat n figura 63,
73
Fig. 63 Simbolizarea temporizatorului TP (TwidoSuite V2.31)
74
IV.4.3.2 Numrtoare (contoare)
75
E- reprezint o ieire a numrtorului cu un bit
asociat %Ci.E, care devine 1 logic cnd %Ci.V
trece de la 0 la 9999 (devine 1 daca %Ci.V este
9999 si se reseteaz la 0 daca %Ci.V coboar
sub 9999)
D reprezint ieirea care trece n 1 logic daca
valoarea numrtorului atinge valoarea setata
(%Ci.D = 1 dac %Ci.V=%Ci.P)
F - reprezint o ieire a numrtorului cu un bit
asociat %Ci.F, %Ci.F=1 cnd %Ci.V se schimba
de la 9999 la 0
76
Fig. 65 Simbolizarea unui numrtor (TwidoSuite V2.31)
77
S (set) a numrtorului este conectat intrarea %I0.2 a
automatului programabil, la intrarea CU (count up) a
numrtorului este conectat intrarea %I0.1 a automatului
programabil, la ieirea D (Done) este contactat ieirea %Q0.1
a automatului programabil. Ieirile E(empty) i F(Full) ale
numrtorului nu sunt utilizate n aceast aplicaie.
Numrtorul ave valoarea setat (%C0.P) egal cu 2.
Semnalul monitorizat este conectat la CU astfel ca se vor
numra fronturile cresctoare de und. Daca intrarea %I0.2 va
fi activata de 2 ori ( dou impulsuri) se va realiza condiia
(%C0.V=%C0.P) si se va activa ieirea D respectiv %Q0.1.
Dac se dorete activarea ieirii D respectiv %Q0.1 fr a se
genera cele dou impulsuri la intrarea CU (%I0.1) se poate
activa %I0.2 i care prin intermediul intrrii S a
temporizatorului va realiza condiia %C0.V=%C0.P.
Resetarea numrtorului se face prin activarea intrrii
%I0.0 a automatului programabil.
78
Fig. 67 Exemplu de instruciune IL
79
Modificatori
N - negarea operandului
C - foreaz o verificare a rezultatelor evaluate n
prezent n partea de sus a acumulatorului
( - pune o operaie n acumulator
IL este un aa numit limbaj orientat pe acumulator, adic
fiecare instruciune folosete sau modific coninutul curent al
acumulatorului (acumulatorul poate fi echivalat cu memoria
temporar).
n figura 68 este prezentat funcia SI in limbaj LD si IL.
Se observ ca in limbajul IL sunt necesare trei linii de
comanda. Astfel in prima linie se utilizeaz LD pentru a seta
rezultatul ca fiind egal cu operandul (cu %I0.0), in rndul doi se
specific faptul ca rezultatul trebuie sa fie egal si cu %I0.1. Prin
aceste instruciuni, cea de a treia instruciune i anume ST va
stoca rezultatul n locaia operandului ( n cazul exemplului din
figura 68 locaia fiind %Q0.1) doar daca ambele intrri %I0.0 si
%I0.1 au aceeai valoare ( fie ambele 1 fie ambele 0)
Daca nu sunt ambele intrri in starea 1 logic, ieirea
%Q0.1 va rmne n starea 0 logic.
80
Fig. 68 Funcia SI n limbaj LD respectiv IL
81
Fig. 71 Exemplu de program complex in limbaj LD si IL
82
temporizatorului,. Prin comanda ST %Q0.2 valoarea
acumulatorului este transferat la ieirea %Q0.2 a automatului
programabil.
Pentru nchiderea unui bloc indiferent de tipul sau se
funcia END_BLK.
n figura 72 este prezentat un exemplu asemntor
utiliznd un bloc numrtor.
83
de tip ST (Structured Text) este un limbaj de nivel nalt fiind
similar cu limbajele PHP, C sau Python.
Din punct de vedere al structurii programele in ST ncep
prin doua cuvinte cheie pentru delimitare. nceputul unu
program este delimitat prin PROGRAM iar sfritul unui program
este delimitat prin END_PROGRAM. Spre deosebire de alte
dispozitive, un automat programabil va relua programul de la
nceput dup de ntlnete cuvntul cheie END_PROGRAM,
conform ciclului de execuie a unui program n cadrul unui AP
(figura 9).
Execuia liniilor de comanda in cadrul unui program scris
n limbajul ST se realizeaz ca i n cazul programelor scrise in
LD, line cu linie. Tot din punct de vedere structural trebuie
avute in vedere urmtoarele reguli:
Toate declaraiile sunt separate prin punct i
virgul
Spaiul intre cuvinte si caractere nu are nici o
funcie
Limbajul ST nu face diferena ntre caracterele
majuscule i cele minuscule (nu este CASE
SENSITIVE)
84
Declararea unei variabile se realizeaz expresia
A: bool;
Aceast declaraie va crea o variabila cu numele A,
variabil care va conine date de tip boolean.
In limbajul ST variabilele pot fi de urmtoarele tipuri [31]:
virgul mobil;
numere ntregi;
timp;
iruri de caractere;
iruri de caractere bit;
Pentru a declara o variabil este necesar utilizarea
unor declaraii care s specifice tipul variabilei declarate,
conform tabelului 11 [24].
Declaraie Descriere
VAR Declararea unei variabile
VAR_INPUT Definete o list de variabile pentru o funcie
VAR_OUTPUT definete variabilele de ieire dintr-o funcie
VAR_GLOBAL Declararea unei variabile globale
RETAIN o valoare va fi reinut n cazul resetrii
CONSTANT O valoare care nu poate fi modificat
(constant)
AT poate asocia o variabil ntr-o locaie
specific n memorie (fr aceast
declaraie locaiile variabilelor sunt alese de
ctre compilator)
END_VAR nchide seciunea de declarare a variabilelor
Tab. 11 - Declararea variabilelor in limbajul ST [25].
85
Exemple
VAR
X : BOOL;
END_VAR
VAR
X,Y,Z : INT ;
END_VAR
VAR
AT %B2:1 : WORD;
END_VAR
VAR RETAIN
AT %O:000 : WORD ;
END_VAR
VAR CONSTANT
P:REAL:=3.1415 ;
END_VAR
86
Pentru a introduce un comentariu n cadrul unui program
n limbajul ST se pot utiliza urmtoarele structuri de
sintax[31].
// comentariu
expresie; /* comentariu */
< expresie >; (*comentariu *)
/* start comment
comentariu
end comment */
Exemplu
VAR CONSTANT
P:REAL:=3.1415 ; // declararea valorii constantei P
END_VAR
VAR
X : BOOL;
END_VAR (*declararea variabilei X *)
87
- scdere
/ mprire
* nmulire
MOD(A,B) - aceast funcie d restul mpririi a dou A i
B, variabile de tip numr ntreg.
SQR(X) - Rdcina ptrat a variabilei X
FRD(X) - transformare din codul BCD( binary coded
decimal) n zecimal
TOD(X)- transformare n codul BCD( binary coded decimal)
din zecimal
NEG(X)- schimbarea semnului +/-
LN(X) - logaritm natural
LOG(X)- logaritm in baza 10
DEG(X) - din rad in grad
RAD(X) - in rad sin grad
SIN(X)- sinus
COS(X) - cosinus
TAN(X) - tangenta
ASN(X) - arc sinus
ACS(X) - arc cosinus
ATN(X) - arc tangenta
XPY(X,Y) - X la puterea Y
A**B - A la puterea B
Funciile algebrei booleene disponibile n limbajul ST
sunt:
AND(A,B) SI
88
OR(A,B) SAU
XOR(A,B) SAU EXCLUSIV
NOT(A) NEGATIE
FOR i:=1 TO 10 BY 1 DO
i=i+1;
END_FOR
89
WHILE numrtorul < 100 DO
numrtorul := numrtorul + 1;
c := numrtorul * 2;
END_WHILE;
REPEAT
<expresie>;
UNTIL [expresie booleana]
END_REPEAT;
REPEAT
numrtorul := numrtorul + 1;
UNTIL numrtorul = 100
END_REPEAT;
IF [expresie booleana]
THEN
<expresie>;
END_IF ;
90
IF X = 0 THEN
C := 0;
END_IF ;
VAR
TIMER_A: TON;
91
END_VAR
92
Principalele caracteristici ale unui grafic GRAFCET sunt
[3]:
O etap se reprezint printr-un ptrat numerotat
i reprezint o stare particular a automatului la
un anumit moment dat. Etapa care corespunde
strii n care se afl sistemul la un moment de
timp t se numete etap activ. Etapa activ se
reprezint printr-un punct sub numrul din
interiorul ptratului.
Etapa iniial a unui sistem se reprezint printr-un
ptrat cu linie dubl. Un grafic poate s conin
una sau mai multe stri iniiale.
Aciunile asociate unei stri se reprezint printr-
un dreptunghi in dreapta etapei i legate de
aceasta printr-o linie. O aciune poate fi asociat
unei singure etape sau mai multor etape. O etapa
poate s nu includ nici o aciune.
Dou etape sunt legate ntre ele printr-o legtur
orientat reprezentat printr-o linie vertical.
Sensul de evoluie al unui GRAFCET este de sus
n jos.
ntre dou etape succesive legate printr-o
legtur orientat exist o tranziie. Legtura
dintre dou etape conine o singur tranziie. ntr-
un grafic GRAFCET o tranziie permite evoluia
de la etapa precedent ctre etapa urmtoare.
Atunci cnd etapa precedent este activ se
93
spune c tranziia este validat. Tranziia se
reprezint printr-o linie orizontal, perpendicular
pe legtur orientat ntre dou etape.
Receptivitatea asociat unei tranziii se noteaz
la dreapta liniei prin care aceasta se reprezint.
Receptivitile sunt propoziii logice al cror
rezultat poate fi adevrat sau fals.
94
Legtura orientat
Tranziie
Fig. 76 Tranziia
95
Fig. 78 Exemplu de SFC
96
Fig. 79 Ramificaie de selecie (doar o singura ramur se va executa)
I
II
97
Dac receptivitatea a=1 este adevrat se va executa ramura
II.
Selecia utiliznd receptivitatea poate fi utilizat i pentru
realizarea unei funcii prin care anumite etape s fie ignorate,
sa se realizeze saltul peste etape (fig.81)
98
Fig. 82 Ramificaie paralel
99
partea operativ, pentru operator i / sau la elementele
exterioare. Aceasta corespunde etapelor activei la nceputul
activitii: aceste etape sunt paii iniiali [12].
100
IV.7.2 Exemplu de utilizare a unui SFC pentru realizarea
unei aplicaii
101
Fig. 83 SFC pentru o pres de tanat[6A]
102
BIBLIOGRAFIE
103
***Grafcet Designer v.2.0 Reference Manual-April
[12]
2014, TecAtlant FRANCE
[13] http://andrei.clubcisco.ro/cursuri/1pl/asdn/1.pdf
[14] http://electronica-digitala.ascetis.ro/lectia1_2.html
[15] http://gozarian.net/
http://hyperphysics.phy-
[16]
astr.gsu.edu/hbase/electronic/nand.html
[17] http://mathworld.wolfram.com/Binary.html
[18] http://mathworld.wolfram.com/BooleanAlgebra.html
[19] http://profibus.felser.ch/en/index.html?dppa_link.htm
http://tengcon.en.made-in-
[20] china.com/product/CKUJYjixsnrW/China-Ethernet-Port-
and-RS485-232-Serial-Port-PLC-Tengcon-T-910.html
[21] http://thor.info.uaic.ro/~marta/caos/S1/#fn
http://www.acpd.co.uk/cgi-bin/site-editor.pl/8/-
[22]
ecommerce?action=item;item=PSU-25;eid=P422748
http://www.boschrexroth.com/dcc/Vornavigation/VorNa
[23] vi.cfm?Language=EN&Variant=internet&VHist=g97568
%2Cg244070%2Cg101270&PageID=p149994
http://www.infoplc.net/files/descargas/rockwell/infoplc_
[24]
net_plc_st.pdf
http://www.machine-information-
[25]
systems.com/How_PLCs_Work.html
http://www.micromodautomation.com/Docs/Specs/S-
[26]
MOD-MOD30ML.pdf
http://www.newark.com
[27]
/productimages/large/en_US/4216618.jpg
http://www.pdhonline.org/courses/e116a/PLC-
[28]
module1.pdf
http://www.pdhonline.org/courses/e116a/PLC-
[29]
module3.pdf
[30] http://www.plcacademy.com/ladder-logic-symbols/
[31] http://www.plcacademy.com/structured-text-tutorial/
[32] http://www.plcmanual.com/plc-input-units
[33] http://www.plcmanual.com/plc-output-units
http://www.plcopen.org%2Fpages%2Fpc2_training%2F
downloads%2Fdownloads%2Finstruction_list_textual.d
[I34]
oc&usg=AFQjCNGWrRBi7Qgka4ju755JuKoD5GlN2w&
sig2=RUvuL8gbTw640lDFED994A&bvm=bv.11015184
104
4,d.bGQ&cad=rja
http://www.saleplc.com/product/up_pic/CPM2A-
[35]
20CD.jpg
[36] http://www.ti.com/product/cd4001b-mil
http://www-plan.cs.colorado.edu/diwan/3155-
[37]
01/lectures/5-control.pdf
[38] http://www.t-uk.co.uk/plcs-overview.php
[39] http://www.xl-technology.com/control-upgrades.html
https://commons.wikimedia.org/wiki/File:NOR_Pinout.jp
[40]
g#/media/File:NOR_Pinout.jpg
[41] https://en.wikipedia.org/wiki/Assembly_language)
[42] https://en.wikipedia.org/wiki/IEC_61131
[43] https://en.wikipedia.org/wiki/IEC_61131-3
[44] https://en.wikipedia.org/wiki/Profibus
https://infosys.beckhoff.com/english.php?content=../co
[45] ntent/1033/tcplccontrol/html/TcPlcCtrl_Languages%20I
L.htm&id=
[46] https://ro.wikipedia.org/wiki/Firmware
https://ro.wikipedia.org/wiki/Logic%C4%83_binar%C4
[47]
%83
[48] https://www.courses.psu.edu/e_met/e_met430_jar14/t
mrct/ton.html
105
ANEXA
Numere ntregi
EC Data
Format Range
Type
Short Integer
SINT -128 127
Numr ntreg scurt
Integer
INT -32768 32767
Numr intreg
Double Integer (231) (231)
DINT
Numr ntreg dublu 1
Long Integer
LINT -263 (263) 1
Numr ntreg lung
Unsigned Short Integer
USINT 0 255
Numr ntreg scurt fr semn
Unsigned Integer
UINT Numr ntreg fr semn (doar 0 (2-16) 1
valori pozitive)
Long Double Integer
LDINT Numr ntreg dublu fr semn 0 (2-32) 1
(doar valori pozitive)
Unsigned Long Integer
ULINT Numr ntreg dublu fr semn 0 (2-64) 1
(doar valori pozitive)
Virgul mobil
IEC Data Type Format Range
Real Numbers
REAL 1038
Numere reale
Long Real Numbers
LREAL 10308
Numere reale lungi
106
Timp
IEC Data Type Format Use
Duration of time
after an event
T#10d4h38m57s12ms
TIME Durata de timp
TIME#10d4h38m
dup un
eveniment
Calendar date D#1998-01-20
DATE
Data in calendar DATE#2016-01-25
Time of day TOD#14:51:07
TIME_OF_DAY
Ora TIME_OF_DAY#14:51:07.77
Date and time of DT#2016-02-18-18:22:11.22
DATE_AND_TIME day DATE_AND_TIME#2011-
Ora si data 08-14-12:01:17.20
iruri de caractere
IEC Data Type Format Range
Character String
STRING exemplu sir caractere
ir de caractere
Siruri de bii:
IEC Data Type Format Range
Boolean
BOOL 1 bit
Boolean
Byte
BYTE 8 bits
Octet
Word
WORD 16 bits
Cuvnt
Double Word
DWORD 32 bits
Cuvnt dublu
Long Word
LWORD 64 bits
Cuvnt lung
107