Sunteți pe pagina 1din 107

CUPRINS

Lista figurilor ........................................................................3


Lista tabelelor ......................................................................6
I. Dezvoltarea automatelor programabile .............................7
II. Structura automatelor programabile................................14
II.1. Sursa de alimentare ...................................................16
II.2. Unitatea de procesare ................................................18
II.3. Module de intrare ........................................................24
II.4. Module de ieire .........................................................25
II.5. Interfaa de comunicaii ..............................................27
III. Sistemul binar de numeraie i elemente de logic
boolean .................................................................................33
III.1. Sistemul binar de numeraie ......................................33
III.2. Elemente de logic boolean ....................................35
III.2.1. Funcii booleene .................................................37
III.2.2. Funcii booleene derivate. ...................................39
IV.Programarea Automatelor Programabile ........................46
IV.1. Standardul IEC 61131 ...............................................46
IV.2. Limbaje de programare .............................................47
IV.3. Tipurile de date i de variabile ...................................48
IV.4. Limbajul Ladder diagram (LD) ...................................49
IV.4.1. Realizarea funciilor logice utiliznd limbajul LD 54
IV.4.2. Programe elementare realizate in LD .................57
IV.4.3. Numrtoare i temporizatoare ..........................66
IV.4.3.1 Temporizatoare ................................................68
IV.4.3.2 Numrtoare (contoare) ...................................75
IV.5. Limbajul Instruction List (IL) ......................................78
IV.6. Limbajul Structured Text (ST) ...................................83
IV.6.1. Elemente de sintaxa a limbajului Structured
Text (ST) ..................................................................................84
IV.6.2. Structurii de iteraie REPEAT-UNTIL; WHILE-
DO ; FOR .................................................................................89
IV.6.3. Execuie condiionat IF-THEN-ELSE; CASE ....90
IV.6.4. Definirea temporizatoarelor n limbajul ST ..........91
IV.7 Limbajul Sequential function chart .............................92
IV.7.1 Regulile de evoluie a unui Grafcet. .....................99

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

Fig. 1 - Sistem de control 1965 [39] ...................................................... 7


Fig. 2 - Automatul programabil Modicon 084 [15] .................................. 10
Fig. 3 - Automat programabil EATON MOELLER EASY512-DC-RC [27]
..................................................................................................................... 12
Fig. 4 - Automate programabile Unitronics cu ecran tactil integrat [38] . 12
Fig. 5 - Structura general unui automat programabil. ........................... 14
Fig. 6 - Automat programabil compact OMRON [35] ............................. 15
Fig. 7 - Automat programabil modular REXROTH IndraControl L10 [23]
..................................................................................................................... 16
Fig. 8 - Sursa de alimentare Mitsubishi PSU 25 (intrare 85-245 V C.A.,
ieire 24V C.C.) [22] .................................................................................... 17
Fig. 9 - Ciclu de execuie a unui program n cadrul unui AP .................. 21
Fig. 10 - Modul de intrare binar, schema electric [9] .......................... 25
Fig. 11 - Modul de ieire binar, schema electric [9] ........................... 26
Fig. 12 - Automat programabil T910 cu dou porturi RS 232 [20] ...... 28
Fig. 13 - Arhitectura unei reele de PLC-uri (Arhitectur stea) ............... 31
Fig. 14 - Structura unui sistem PROFIBUS DP [19] ............................... 32
Fig. 15 - Simbolul grafic al funciei NU .................................................. 37
Fig. 16 - Simbolul grafic al funciei SAU ................................................. 38
Fig. 17 - Implementarea prin contacte a funciei SAU ........................... 38
Fig. 18 - Simbolul grafic al funciei I ..................................................... 38
Fig. 19 - Implementarea prin contacte a funciei SAU ........................... 39
Fig. 20 - Simbolul grafic al funciei NOR ............................................... 40
Fig. 21 - Circuit integrat CD4001B-MIL, Texas Instruments [36] .......... 40
Fig. 22 - Dispunerea pinilor i semnificaia lor pentru un CI standard de
tip 4001 care implementeaz porile NOR [40] ........................................... 40
Fig. 23 - Simbolul grafic al funciei NOR ................................................ 41
Fig. 24 - Dispunerea pinilor i semnificaia lor pentru un CI standard de
tip 7400 care implementeaz porile NAND si un CI 7400 produs de Texas
Instruments. ................................................................................................. 41
Fig. 25 - Realizarea funciei SI utiliznd pori logice NAND .................. 42
Fig. 26 - Realizarea funciei SI utiliznd pori logice NOR ..................... 42
Fig. 27 - Realizarea funciei SAU utiliznd pori logice NAND ............... 43
Fig. 28 - Realizarea funciei SAU utiliznd pori logice NOR ................. 43
Fig. 29 - Realizarea funciei NOT utiliznd poarta logic NAND ............ 44
Fig. 30 - Realizarea funciei NOT utiliznd poarta logic NOR .............. 44
Fig. 31 - Realizarea fizic a porilor logice de tip NAND [16] ................. 45
Fig. 32 - Contact normal deschis (a) i contact normal nchis (b) [30] ... 49

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

Un controler logic programabil sau automat programabil,


este un calculator industrial care ndeplinete funcii de control
discrete sau continue ntr-o varietate mare de aplicaii. [5]
Automatul programabil a fost conceput de ctre Dick
Morley, n anul 1968. Automatul programabil dezvoltat de ctre
Morley, la momentul apariiei sale a fost denumit PC pentru
controler programabil, iar mai trziu, dup introducerea
computerelor personale (PC) a fost numele schimbat la PLC
(Programmable Logic Controller) i a fost produs de compania
sa numit Modicon (MOdular DIgitial CONtroller). [7]
Primul PLC a fost conceput pentru a ndeplinii
specificaiile stabilite de ctre divizia Hydramatics al General
Motors (GM). Scopul principal al designului a fost de a elimina
costurile extrem de ridicate pe care le implica utilizarea
circuitelor de comanda bazate pe relee electromecanice i
lipsa de flexibilitate asociat cu acest tip de circuite "cablate".

Fig. 1 - Sistem de control 1965 [39]

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.)

Avnd n vedere aceste dezavantaje majore compania


General Motors prin divizia Hydramatics a elaborat un set de
criterii pe care un controler standard de main ar trebui s le
ndeplineasc. Acest set de criterii au fost prezentate de ctre
Bill Stone la Westinghouse Conference. [5] Conform acestor
prime criterii dispozitivele menite s nlocuiasc sistemele de
comand i control bazate pre relee i logic cablat trebuiau
s elimine dezavantajele legate de costul mare al instalrii si
demontrii acestor sisteme (datorit lipsei de flexibilitate a
acestor sisteme, era necesar nlocuirea lor la fiecare
schimbare a unui produs, in cazul GM pentru fiecare model de
autoturism produs) precum i s duc la eliminarea
problemelor cauzate de fiabilitatea sczut. Pe lng aceste

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.)

Aceste specificaii, mpreun cu o cerere de propunere


pentru a construi un prototip, au fost transmise la patru
productori consacrai de sisteme de control i anume Allen-
Bradley, Digital Equipment Corporation, Century Detroit,
Bedford Associates [5]
n cele din urm, n 1969, propunerea ctigtoare a
venit de la Bedford Associates i Modicon, atunci cnd acestea
au demonstrat la GM Modicon 084. Modicon 084 a constat din
trei componente distincte, placa procesor, memoria, i placa
logic, care rezolva algoritmii asociai logicii cu relee.

9
Fig. 2 - Automatul programabil Modicon 084 [15]

n anii 1970, existau deja apte societi care produceau


echipamente PLC, inclusiv Allen-Bradley, Modicon, General
Electric, Square D i Industrial Solid State Controls. Dei,
evident, PLC-'uri au fost o descoperire care au revoluionat
automatizrile industriale, acestea erau nc relativ primitive.
Ele au fost n mare parte elaborate i utilizate pentru aplicaii
specifice, cel mai adesea n industria de automobile. [5]
O problema important o constituia programarea PLC-
urilor. Primele PLC - uri aveau nevoie de o serie de terminale
hardware dedicate prin care se realiza programarea acestora.
Dificultatea programrii utiliznd aceste terminale a determinat

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]

Fig. 3 - Automat programabil EATON MOELLER EASY512-DC-RC [27]

Fig. 4 - Automate programabile Unitronics cu ecran tactil integrat [38]


n tabelul 1 sunt prezentate avantajele i dezavantajele
automatelor programabile.

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

Din punct de vedere hardware un automat programabil


este alctuit din patru componente majore:
- Unitatea de procesare, numit generic CPU;
- Sursa de alimentare;
- Modulul de intrri-ieiri;
- Interfaa de comunicare.

Fig. 5 - Structura general unui automat programabil.

Constructiv automatele programabile pot fi compacte


sau modulare.

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.

Fig. 6 - Automat programabil compact OMRON [35]

Dezavantajul major al acestor automate programabile


este legat de numrul i tipul modulelor de intrare i ieire care
nu poate fi modificat. Astfel dac intr-o aplicaie industrial cu
un automat programabil compact devine necesar utilizarea
unui numr mai mare de intrri sau ieiri dect cele disponibile
este necesar schimbarea ntregului automat programabil.
Acest dezavantaj este nlturat prin utilizarea
automatelor programabile modulare (fig. 7). Acest tip de
automate programabile este astfel realizat nct prin
adugarea sau nlocuirea unor module conectate la o structura

15
fix (numit asiu) numrul i pinul intrrilor sau a ieirilor
poate fi modificat.

Fig. 7 - Automat programabil modular REXROTH IndraControl L10 [23]

Dezavantajul acestor tipuri de automate programabile l


constituie necesitatea de configurrii suplimentare i un cost
mai ridicat comparativ cu automatele programabile compacte.

II.1. Sursa de alimentare

Rolul principal al sursei de alimentare este acela de a


furniza tensiunile de alimentare necesare pentru funcionarea
automatului programabil. Sursele de alimentare ofer la ieire
toate tensiunile necesare i specifice fiecrui modul al

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).

Fig. 8 - Sursa de alimentare Mitsubishi PSU 25 (intrare 85-245 V C.A.,


ieire 24V C.C.) [22]

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).

II.2. Unitatea de procesare

Unitatea de procesare este elementul central al


automatului programabil. Unitatea de procesare include
microprocesorul respectiv memoria.
n funcie de modelul automatului programabil i de
opiunile de care acesta le include (numr i tipuri de
intrri/ieiri, conexiuni de reea, posibilitatea de a conecta un
dispozitiv de afiare etc.) este ales si tipul microprocesorului.
Microprocesoarele utilizate pot avea o arhitectur pe 8 bit, 16
bit sau 32 bit.
Astfel automatul IndraLogic L10 produs de compania
Bosch i care este cel mai simplu automat programabil produs
ce aceast companie utilizeaz un microprocesor ST40 produs
de compania STMicroelectronics. Microprocesorul ST40 are o
frecven de 192 MHz si este un procesor de tip RISC
(Reduced Instruction Set Computing). Pentru generaia
18
IndraLogic L25 se utilizeaz un microprocesor Renesas SH
7785 cu o frecven maxim de funcionare de 600MHz, i
realizeaz o performan de procesare de 1080 MIPS (Millions
of Instructions Per Second).
Automatele programabile avansate produse de
compania BOSCH utilizeaz procesoare AMD sau INTEL cu
funcii avansate (AMD-Geode LX800, 500MHz, Intel Celeron
1 GHz, Intel Core2Duo - 1,2 GHz)
Principalele funcii ale procesorul sunt acelea de a
gestiona comunicaiile cu echipamentele externe,
interconectarea ntre diversele componente ale automatului
programabil, executa programul, managementul memoriei,
monitorizarea semnalelor de intrare i iniializarea semnalului
de ieire (n conformitate cu programul rulat). Un alt rol al
microprocesorului este cel legat de monitorizarea erorilor,
fiecare eroare fiind semnalizat intr-un anumit mod (modul de
semnalizare al erorilor este descris n manualul de utilizare al
fiecrui automat programabil).
Procesorul n sine are cteva moduri de operare diferite.
[25] i anume:
Mod de programare (Programming Mode);
Execuie (Run Mode);
Oprit (Stop Mode);
Reset (Reset Mode).
n modul de programare accept descrcarea unui
program de pe laptop sau PC. Dup descrcarea programului

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.

Fig. 9 - Ciclu de execuie a unui program n cadrul unui AP

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

Modulele de intrare sunt cele prin intermediul crora


automatul programabil primete informaii asupra
echipamentului / procesului pe care l controleaz sau
monitorizeaz.
Deoarece automatul programabil ruleaz un program
care n esen include o serie de condiionri de tipul dac o
anumit intrare sau combinaie de intrri este intr-o anumit
stare, o anumita ieire/combinaie de ieiri trebuie s fie ntr-o
anumit stare este evident de ce informaiile despre intrrile
automatului programabil trebuie s ajung la microprocesor.
La intrarea unui automat programabil pot fi conectate o
varietate mare de butoane, comutatoare, senzori etc., fiecare
cu un anumit semnal de ieire care in cele mai multe cazuri nu
este compatibil cu semnalul acceptat de unitatea de procesare.
Rolul modulelor de intrare este acela de a converti semnalul
provenit de la elementele exterioare automatului programabil n
semnale acceptate de unitatea de procesare.
n general modulele standard de intrare accept
semnale de 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 V C.C., i TTL(transistor-
transistor logic) [28] cu observaia c pentru fiecare tip de
semnal exista o intrare sau un modul separat n funcie de
arhitectura automatului programabil.
n figura 10 este prezentat schema electric a unui
modul de intrare binar. Elementul esenial al modului l
constituie optocuplorul (OC) care realizeaz o separare

24
galvanic ntre elementul conectat la automatul programabil i
unitatea de procesare.

Fig. 10 - Modul de intrare binar, schema electric [9]

Majoritatea automatelor programabile au intrri n curent


continuu fie PNP fine NPN. Dac se utilizeaz un senzor PNP
sau NPN aceste lucru trebuie avut n vedere, ns dac se
utilizeaz un buton sau comutator se poate utiliza o intrare
PNP sau NPN. [32]
Intrrile n C.A. sunt mai rare, n general sunt disponibile
pentru automatele programabile modulare care au o
complexitate mai mare. [32]

II.4. Module de ieire

Dispozitivele controlate de un PLC includ printre altele


relee, alarme, solenoizi, ventilatoare, indicatoare luminoase i
diverse circuite de pornire a motoarelor (prin intermediul unor
contactoare sau a altor dispozitive asemntoare). Aceste
dispozitive necesit diferite niveluri tensiune.

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.

Fig. 11 - Modul de ieire binar, schema electric [9]

Ieirile pot fi de tip relee (Relay Outputs), fiind una dintre


cele mai frecvente tipuri de ieiri ale automatelor programabile.
Avantajul major este acela ca ieirile tip relee pot comuta att
C.A. ct i C.C. i nu sunt polarizate. Ieirile utiliznd

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.

Element Durata Dimensiune Vitez de Cost


de via comutare
Tranzistor Mare Mic Mare Mic
FET
Triac Mare Mic Medie Mic
Relee Medie Foarte mare Medie Mare
Tab. 2 Tabel comparativ al principalelor caracteristici ale elementelor
utilizate pentru ieirile AP.

II.5. Interfaa de comunicaii

Toate automatele programabile sunt dotate cu o


interfa de comunicaie ns tipul i complexitatea acesteia
variaz n funcie de capacitile pe care la are un anumit
automat programabil.
n primul rnd toate automatele programabile trebuie s
permit scrierea unui program astfel c ele includ un modul de

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.

Fig. 12 - Automat programabil T910 cu dou porturi RS 232 [20]

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)

n sistemele industriale se utilizeaz n general


protocoale dedicate de comunicaie menite s ndeplineasc
condiiile specifice impuse de mediul industrial.
Standardul PROFIBUS a fost introdus n Germania n
anul 1989 i a fost ulterior acceptat ca standard internaional.
PROFIBUS este o reea de mare vitez pentru echipamente
distribuite. [4]
Actualmente ca standard se utilizeaz dou variante ale
protocolului PROFIBUS:
PROFIBUS DP (Periferice descentralizate) este
folosit pentru a interaciona cu senzori i
actuatori, prin intermediul unui controler
centralizat n aplicaii de producie (fabric) i n
aplicaiile de automatizare. Majoritatea de
31
diagnostic standard ale mainilor, centrelor de
prelucrare sau echipamentelor utilizate n
sistemele avansate de producie, utilizeaz acest
protocol. [44]
PROFIBUS PA (Process Automation) este
protocolul utilizat pentru a monitoriza
echipamentul de msurare printr-un sistem de
control al proceselor n aplicaii de automatizare.
Aceast variant este proiectat pentru utilizarea
n medii explozie / zone periculoase.
PROFIBUS DP utilizeaz ca mediu de transmisie a
datelor structura RS 485.
PROFIBUS PA utilizeaz tehnologia MBA (Manchester
coding and Bus Powered). [4]

Fig. 14 - Structura unui sistem PROFIBUS DP [19]

32
III. SISTEMUL BINAR DE NUMERAIE I
ELEMENTE DE LOGIC BOOLEAN

III.1. Sistemul binar de numeraie

Sistemele de numeraie ofer baza pentru transmiterea


i cuantificarea informaiei. [1] Sistemul binar descrie un sistem
de numeraie, n care exist doar dou valori posibile pentru
fiecare cifr: 0 i 1. Aceast baz de numeraie este folosit n
calculatoare, deoarece toate numerele pot fi reprezentate ca
un ir de semnale electrice cu dou niveluri corespunztoare
pentru 1 logic i 0 logic (low /high). [17]
Pentru conversia unui numr din baza 10 n baza 2,
metoda cea mai simpl o constituie metoda mpririi. Numrul
ntreg n baza zece se mparte la 2. nmulind doar ntregul
rezultatului cu doi si realiznd diferena fa de numrul
mprit obinem un rest. Se noteaz restul, care poate fi 1 sau
0 pornind de la dreapta la stnga (sau de jos n sus n cazul
notrii tabelare, asemntor cu exemplul de mai jos).
Algoritmul se repet pn se obine ctul 0.
233:2 =116,5 116x2=232 233- 1
232=1
116:2= 58 58x2=116 116- 0
116=0
58:2=29 29x2=58 58-58=0 0
29:2=14,5 14x2=28 29-28=1 1
14:2=7 7x2=28 28-28 0
7:2=3,5 3x2=6 7-6=1 1
3:2=1,5 1x2=2 3-2=1 1
1:2=0,5 0x2=0 1-0=1 1
(233)10 = (11101001)2

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

n tabelul 3 sunt prezentate cifrele de la 1 la 60 n baza


10 respectiv baza 2.

Baza 10 Baza 2 Baza 10 Baza 2 Baza 10 Baza 2


1 1 21 10101 41 101001
2 10 22 10110 42 101010
3 11 23 10111 43 101011
4 100 24 11000 44 101100
5 101 25 11001 45 101101
6 110 26 11010 46 101110
7 111 27 11011 47 101111
8 1000 28 11100 48 110000
9 1001 29 11101 49 110001
10 1010 30 11110 50 110010
11 1011 31 11111 51 110011
12 1100 32 100000 52 110100
13 1101 33 100001 53 110101
14 1110 34 100010 54 110110
15 1111 35 100011 55 110111

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

III.2. Elemente de logic boolean

Creatorul logicii matematice moderne, al algebrei


booleene, care, mai trziu, va sta la baza informaticii si a
realizrii computerului a este George Boole (n. 2 noiembrie
1815 la Lincoln - d. 8 decembrie 1864 la Ballintemple, Cork), st
matematician, logician si filozof britanic. [14]
Pentru studiul circuitelor numerice (digitale) se folosete
ca suport matematic algebra boolean. Ea are la baz o serie
de postulate (axiome) i teoreme. [13]
Algebra boolean poate fi definit printr-o mulime B, cu
elementele a, b,.. care ndeplinete urmtoarele condiii. [18]
1. Mulimea B are dou operaii (operaia logica I,
operaia logic SAU) care s ndeplineasc
urmtoarele condiii:
a. Idempoten (Proprietate a elementelor unei
mulimi avnd o operaie binar, astfel ca prin
compunere cu ele nsele s rmn
neschimbate.)
= =

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

Logica binar are la baz premiza c o propoziie poate


avea doar unul din dou rezultate: adevrat sau fals.
Alternativele A sau F pot fi reprezentate prin 1 i 0.
O funcie boolean cu n intrri i m ieiri este o funcie
matematic f:Bn->Bm. [21]
n logica binar se definesc trei legi de compoziie:
complementarea (negare, NU,NOT, inversare logic),
disjuncia (sum logic, +,SAU, OR, ) i conjuncia
(produs logic, , I, AND, ).[13]

Complementarea(negare)
A
1 0
0 1
Tab. 4 Tabelul de adevr al funciei compelentare (negarea)

Fig. 15 - Simbolul grafic al funciei NU

Disjuncia (sum logic, SAU)


A B AUB
1 0 1

37
1 1 1
0 0 0
0 1 1
Tab. 5 Tabelul de adevr al funciei SAU

Fig. 16 - Simbolul grafic al funciei SAU

Fig. 17 - Implementarea prin contacte a 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

Fig. 18 - Simbolul grafic al funciei I

38
Fig. 19 - Implementarea prin contacte a funciei SAU

III.2.2. Funcii booleene derivate.

n afar de operaiile de baz, de obicei se mai folosesc


i alte operaii derivate, n special n domeniul informatic. [47]

Funcia NOR (NEGATIV OR)

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

Funcia NOR are valoare 1 doar dac ambele intrri sunt


0. Dac intrarea SI (OR) are valoare 0 doar in situaia n care A
si B sunt 0, funcia NOR reprezint negaia rezultatelor funciei
OR.

39
Fig. 20 - Simbolul grafic al funciei NOR

Practic porile logice NOR sunt implementate n circuite


integrate, un exemplul fiind integratul CD4001B-MIL (fig. 21)

Fig. 21 - Circuit integrat CD4001B-MIL, Texas Instruments [36]

Fig. 22 - Dispunerea pinilor i semnificaia lor pentru un CI standard de


tip 4001 care implementeaz porile NOR [40]

Se observ ca in general un IC integreaz mai multe


pori NOR (IC 4001 integreaz patru pori 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

Fig. 23 - Simbolul grafic al funciei NOR

Fig. 24 - Dispunerea pinilor i semnificaia lor pentru un CI standard de


tip 7400 care implementeaz porile NAND si un CI 7400 produs de
Texas Instruments.

41
Funciile derivate pot fi utilizate pentru obinerea
funciilor logicii booleene (NOT, AND, OR), conform
diagramelor:

Obinerea funciei SI utiliznd pori logice

Fig. 25 - Realizarea funciei SI utiliznd pori logice NAND

Dac A =1 i B=1 conform tabelului 8 A NAND B= 0.


Acest rezultat se aplic ambelor pori ale celei de a doua pori
logice NAND (pentru a doua poart logic A=0, B=0). La cea
de a doua poart logic, conform tabelului 8 rezultatul va fi 1.
Comparnd acest rezultat cu rezultatul funciei SI pentru A=1 i
B=1 observam ca se obine acelai rezultat.

Fig. 26 - Realizarea funciei SI utiliznd pori logice NOR

Dac A =1 i B=0 i vom aplica la intrrile porilor logice


acelai valori (1,1 pentru prima poart; 0,0 pentru a doua

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.

Obinerea funciei SAU utiliznd pori logice

Fig. 27 - Realizarea funciei SAU utiliznd pori logice NAND

Dac A =0, B=0, si aplicam porilor NAND aceste valori


vom obine la ieire (conform tabelului 8) valorile i (1 i 1).
Aplicnd aceste valori pe cea de a treia poart NAND vom
obine conform tabelului 7 rezultatul 0. Conform tabelului 4,
rezultatul 0 SI 0 va fi 0.

Fig. 28 - Realizarea funciei SAU utiliznd pori logice NOR

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.

Obinerea funciei NOT utiliznd pori logice

Fig. 29 - Realizarea funciei NOT utiliznd poarta logic NAND

Dac A=0, se aplic la ambele intrri ale porii NAND si


conform tabelului 7 0 NAND 0 =1. Dac A este 0 NOT A este
1.

Fig. 30 - Realizarea funciei NOT utiliznd poarta logic NOR

Dac A=0, se aplic la ambele intrri ale porii NOR si


conform tabelului 6 0 NOR 0 =1. Dac A este 0 NOT A este 1.
n figura 30 este exemplificat realizarea fizic a unor
pori logice.

44
Fig. 31 - Realizarea fizic a porilor logice de tip NAND [16]

45
IV. PROGRAMAREA AUTOMATELOR
PROGRAMABILE

IV.1. Standardul IEC 61131

Standardul IEC 61131 conine o sintez a tuturor


caracteristicilor pe care un AP modern trebuie s le
ndeplineasc. Cerinele se refer att la echiparea hardware a
automatelor programabile ct i la modul de programare al
acestora. [8]
Standardul IEC 61131 reprezint o colecie i
mbuntire a diferitelor standarde aplicabile in domeniul AP.
IEC 61131 se refer la zece alte standarde. [8]
Standardul IEC 61131 este are 9 seciuni: [42]
Partea 1: Informaii generale
Partea 2: Cerine i ncercri ale echipamentelor
Partea 3: Limbaje de programare
Partea 4: Ghiduri de utilizare
Partea 5: Comunicaii
Partea 6: Siguran funcional
Partea 7: Programarea controlului Fuzzy
Partea 8: Linii directoare pentru aplicarea i punerea n
aplicare a limbajelor de programare
Partea 9: Interfa de comunicare digital pentru senzori
mici i elemente de acionare (SDCI)

46
Standardul IEC 61131 este elaborat de International
Electrotechnical Commission, al crui birou se afl n Geneva,
Elveia ( 2015).

IV.2. Limbaje de programare

Conform standardului IEC 61131 partea a 3-a


automatele programabile se por programa utiliznd
urmtoarele limbaje:
Ladder diagram (LD) - Diagrama tip scar
Function block diagram (FBD)- Diagrama cu
blocuri funcionale
Structured text (ST)- Text structurat
Instruction list (IL) - List de instruciuni
Sequential function chart (SFC) - Diagrama
secvenial de funcii
Continuous Function Chart (CFC) - Diagram
continu de funcii

Limbajul Ladder diagram (LD) are la baz metoda de


documentare a circuitelor de comand cu relee.
Function block diagram (FBD) este un limbaj grafic
pentru automatele programabile, [10] care poate descrie
funcia dintre variabilele de intrare i variabilele de ieire. O
funcie este descris ca un set de blocuri elementare. Variabile
de intrare i ieire sunt conectate la blocurile de linii de
conectare.

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.

IV.3. Tipurile de date i de variabile

A. iruri de bii [43]


a. BOOL - 1 bit
b. BYTE - 8 bii - 1 octet
c. WORD - 16 bii (2 octei) cuvnt
d. DWORD - 32 bii (4 octei) cuvnt dublu
e. LWORD - 64 bii (8 octei) cuvnt lung
B. INTEGER numere ntregi [43]
a. SINT numr ntreg scurt (1 octet)
b. INT numr ntreg (2 octei)
c. DINT numr ntreg dublu (4 octei)
d. LINT numr ntreg lung (8 octei)
C. REAL numr real conform IEC 60559 [43]
a. REAL - numr real (4 octei)
b. LREAL - numr real lung (8 octei)
48
D. TIME durata temporizatoarelor sau a diferitelor
procese.
E. Data i ora [43]
a. DATE Data
b. TIME_OF_DAY ora
c. DATE_AND_TIME - data i ora

IV.4. Limbajul Ladder diagram (LD)

Limbajul Ladder diagram (LD) are la baz metoda de


documentare a circuitelor de comand cu relee. Limbajul este
unul de tip grafic i utilizeaz contacte respectiv bobine
pentru a implementa elementele de logic boolean.
Denumirea de ledder care n traducere nseamn scar vine de
la aspectul acestui tip de program. Un program de tip ladder
conine dou linii verticale care pot fi echivalate cu intrrile
respectiv cu ieirile. Elementele care leag cele dou linii
verticale reprezint elementele de logic boolean.
Pentru limbajul LD standardul IEC 61131-3 stabilete
urmtoarele simboluri.
Contacte - acestea sunt asociate intrrilor AP.

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.

Fig. 34 - Front se und cresctor

50
Fig. 35 - Front de und descresctor

Dac la o intrare a unui AP la care n program se


asociaz o intrare de tip contact tranziie pozitiv (front
cresctor) apare un semnal de tipul celui prezentat n figura 34,
intrarea va trece din 0 logic n 1 logic, ns acest lucru nu se
va ntmpla dac la aceeai intrare apare un semnal de tipul
celui din figura 35 (semnal descresctor). Pentru a realiza
trecerea de la 0 logic la 1 logic a intrrii pentru semnalul din
figura 35 se va utiliza un contact de tip contact tranziie
negativ care este sensibil doar la semnalele cu front de und
descresctor.
Bobinele sunt asociate ieirilor AP.

Fig. 36 - Bobin (a), bobin negat (b) [30]

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. 37 - Bobin SET cu reinere (a), bobin RESET cu reinere(b) [30]

n cazul n care este necesar meninerea uni ieiri chiar


i n cazul n care condiii care a activat acea ieire nu mai
exista se utilizeaz bobinele SET / RESET ( n cadru anumitor
productori aceste funcii se numesc LATCH / UNLATCH,
terminologia provenind de la releele electromecanice care
ndeplineau aceste funcii). O bobin SET va trece n 1 logic
dac va fi alimentat i va rmne n 1 logic chiar dac
alimentarea va fi ntrerupt. Dezactivarea bobinei de tip SET
(LATCH) se realizeaz cu bobina RESET (UNLATCH).

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

Fiecare instruciune (3,4,5,6 din figura 39) ocup un bit


de memorie. n general automatele programabile au mai multe
module de intrri i ieiri. Atunci cnd o instruciune de tip bit
este asociata unei intrri, adresarea are urmtoarea forma Ik.j,
I reprezentnd faptul c este o intrare, j reprezentnd numrul
terminalului de intrare i k reprezentnd modulul din care face
parte terminalul j [29]. Majoritatea productorilor de programe
utilizeaz pentru intrri litera I sau X. Astfel o adresa de forma
I8.4 reprezint terminalul de intrare numrul 8 al modulului 4.
n cazul n care o instruciune de tip bit este asociat
unei ieiri, adresarea are forma Q k.j, unde j este numrul
terminalului de ieire iar k reprezint modulul din care face
parte terminalul j. In general productorii utilizeaz pentru
adresele de ieire literele O sau Q.

IV.4.1. Realizarea funciilor logice utiliznd limbajul LD

54
Fig. 40 - Realizarea funciei SAU in limbaj LD

Daca A i B sunt dou intrri, oricare dintre ele va trece


n starea 1 logic va determina trecerea bobinei (A sau B) n
starea 1 logic.

Fig. 41 - Realizarea funciei SI in limbaj LD

Daca A i B sunt dou intrri, bobina A i B va trece n


starea 1 logic doar dac ambele intrri vor fi n 1 logic.

Fig. 42 - Realizarea funciei NU utiliznd limbajul 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.

Fig. 43 - Realizarea funciei NAND utilnd limbajul LD

Se observ ca singura posibilitate ca bobina A NAND B


s aib valoare 0 logic este atunci cnd intrarea A i B sunt 1
logic, atunci vor fi negate li vor avea ambele valoare 0 logic,
bobina fiind i ea n zero logic. Oricare din situaiile posibile(
intrrile sa fie ambele 1 logic sau sa aib stri logice diferite)
vor determina trecerea bobinei n starea 1 logic, ceea ce
corespunde cu tabela de adevr a funciei NAND.

Fig. 44 - Realizarea funciei NOR utiliznd limbajul LD

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.

IV.4.2. Programe elementare realizate in LD

Exemplu de program pentru funcia START-STOP

Avnd un montaj similar celui din figura 45 (schema


simplificar), pentru pornirea becului conectat la ieirea PLC se
va realiza programul LD.

Fig. 45 - Montaj PLC, dou butoane ND cu revenire, bec. - schem


simplificat

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.

Fig. 46 - Program pornire element acionat - nefuncional

Pentru nlturarea problemei aprute la programul din


figura 46 se poate utiliza programul din figura 47.
Se observ c i acest program are o singur treapt
ns s-a mai adugat o ramur. Aceast ramur conine o
bobin ns adresa bobinei este chiar adresa elementului
acionat (Q0.0). Astfel daca I0.1 trece n 1 logic (B1 este
acionat) i I0.1 rmne n 1 logic (B2 nu este acionat) ieirea
Q0.0 este activat. Dac B1 nu mai este acionat (I0.0 trece n
0 logic) ieirea rmne activat ( Q0.0 n 1 logic) deoarece
este ndeplinit condiia de pe treapta 0 i ramura 1, condiie
de forma Q0.0 n 1 logic i I0.1 n 1 logic determin Q0.0 n 1
logic (se auto-menine). n aceast situaie doar apsarea
butonului B2 i trecerea I0.1 n 0 logic determina automatul
programabil sa opreasc becul (s treac Q0.0 n 0 logic)
deoarece nu mai sunt ndeplinite nici condiiile din treapta 0
(rung 0 ) i nici condiia din ramura don treapta 0 i ramura 1
(Q0.0 n 1 logic i I0.1 n 1 logic determin Q0.0).

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)

Fig. 47 - Program pornire element acionat

Programul prezentat n figura 47 se realizeaz corect


utiliznd bobinele de tip SET respectiv RESET

Fig. 48 - Implementarea funciei START-STOP utiliznd bobine de tip


SET/RESET (LATCH/UNLATCH)

Exemplu de program care include condiionri

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.

Fig. 49 - Schema electric pentru implementarea condiionrii

Analiznd schema observm ca pornirea motorului se


va realiza daca B1 sau B2 sunt acionate, ns acionarea
oricrui dintre butoanele B3-B5 va duce oprirea motorului.

61
Schema electric din figura 49 poate fi nlocuit cu
montajul din figura 50.

Fig. 50 Montaj utiliznd un AP pentru implementarea schemei electrice


din figura 49

Analiznd montajul din figura 50 observm c toate


butoanele sunt cu reinere mecanic, B1 si B2 sunt butoane
ND, B2,B3 i B4 sunt NI. Din punct de vedere al programrii
PLC-uiui nseamn ca nu trebuie s folosim butoane de tip
SET/RESET (LATCH/UNLATCH) deoarece reinerea este
asigurat mecanic. Totodat avnd butoanele B3-B5 de tip NI
ne permite utilizarea unor contacte ND in program, nchiderea
acestor contacte fiind realizata mecanic. Programul LD pentru
realizarea condiionrii impuse utiliznd montajul din figura 50
este prezentat n figura 51. n tabelul 9 este prezentat
corespondena ntre butoane i intrrile alocate n program.

62
Adresa Buton
%I0.0 B1
%I0.1 B2
%I0.2 B3
%I0.3 B4
%I0.4 B5
Tab. 9 - Corespondena Adrese - Intrri fizice

Fig. 51 - Programul LD pentru ndeplinirea condiionrii stabilite cu


montajul din figura 50.

La intrarea A.P- ului n modul RUN, acesta realiza


verificarea intrrilor. Butoanele B1 si B2 fiind ND, intrrile
asociate acestora (%I0.0 respectiv %0.1) vor fi 0 logic.
Butoanele B3, B4 i B5 fiind NI intrrile asociate acestora
(%I0.2, %I0.3 i %I0.4) vor fi n 1 logic. La apsarea oricrui
dintre butoanele B1 sau B2 intrarea acestuia va deveni 1 logic
ceea ce va determina ca treapta sa fie adevrat si implicit
activarea ieirii (%Q0.0). Meninerea n aceast stare se
realizeaz mecanic (datorit butoanelor utilizate n montaj.)

63
Fig. 52 Montaj utiliznd un AP si butoane ND fr reinere
implementarea schemei electrice din figura 49

Dac se utilizeaz montajul din figura 52, programul din


figura 51 nu este funcional. n figura 52 butoanele sunt fr
reinere, astfel chiar dac se obine activarea ieirii acest lucru
nu va fi meninut. Datorit faptului c butoanele B3, B4 si B5
sunt ND, pornirea motorului (activarea ieirii) este posibil doar
daca sunt simultan apsate i meninute astfel B3, B4 si B5
mpreuna cu B1 sau B2, lucru care nu este in primul practic i
nu corespunde condiionrii propuse.
Programul din figura 53 poate realiza funcia necesar
respectnd condiionrile impuse utiliznd montajul din figura
52.

64
Fig. 53 Programul LD pentru ndeplinirea condiionrii stabilite cu
montajul din figura 52.

Programul conine dou trepte. Prima treapt este


similar cu programul din figura 51, intrrile %I0.0 respectiv
%I0.1 sunt amplasate n paralel, n serie cu acestea fiind
%I0.2, %I0.3, %I0.4 ns pentru acestea se utilizeaz un
contact negat, astfel nct valoarea lor s fie 1 logic daca nu
sunt apsate. Pentru ieire se utilizeaz o bobina de tip SET
deoarece butoanele din montaj sunt cu revenire, meninerea
realizndu-se prin program. Cea de a doua treapt a
programului conine Intrrile %I0.2, %I0.3, %I0.4 (bobine ND)
montate n paralel. Oricare dintre aceste butoane dac sunt
apsate intrarea corespunztoare va trece n 1 logic si va
reseta ieirea deoarece se utilizeaz o bobina de tip RESET.

65
IV.4.3. Numrtoare i temporizatoare

n figura 54 este prezentat o schema pneumatic


simplificat pentru acionarea unui cilindru pneumatic cu dubla
aciune.
Schema conine un compresor, un distribuitor avnd
comanda electromagnetica si revenire cu arc, cilindrul
pneumatic cu dubl aciune. n schema exista i un contact
electric ND care este acionat de tija cilindrului pneumatic,
atunci cnd aceasta este extins la limita cursei sale. Contactul
normal deschis este conectat l intrarea unui automat
programabil iar electromagnetul distribuitorului este conectat la
ieirea unui AP.

Fig. 54 Schema pneumatic - simplificat - pentru acionarea unui


piston

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.

Fig. 55 Programul LD pentru acionarea pistonului

In cazul programului prezentat n figura 55 nu se pot


impune condiii de meninere a unei anumite poziii (spre
exemplu poziia extins) pentru un anumit interval de timp.
Pentru a putea temporiza diverse aciuni n cadrul automatelor
programabile este necesar utilizarea temporizatoarelor.
Pentru a determina numrul de extensii ale tijei cilindrului este
necesar utilizarea unui numrtor.

67
IV.4.3.1 Temporizatoare

In limbajul LD exist trei tipuri de temporizatoare i


anume:
TON (Timer On-Delay): utilizat pentru a controla
timpul de pornire ntrziat a unei aciuni.
TOF (Timer Off-Delay): utilizat pentru a controla
timpul de oprire ntrziat a unei aciuni.
TP (Timer - Pulse): utilizat pentru a crea un
impuls temporizat.

Temporizatorul TON

Acest tip de temporizator este utilizat pentru a temporiza


activarea unei variabile de ieire cu o anumita valoare de
temporizare.

Fig. 56 Simbolizarea temporizatorului TON (TwidoSuite V2.31)

68
Fig. 57 Simbolizare temporizator TON (Allain Bradley) [48]

Indiferent de productorul automatului programabil


respectiv de aplicaia software utilizat pentru programare,
temporizatorul TON are o serie de caracteristici i elemente
obligatorii. Astfel toate temporizatoarele au un identificator al
funciei (in figura 56, pentru TwidoSuite identificatorul este
%TM0 iar n figura 57 pentru Allain Bradley identificatorul este
T4:1 ). Adresa temporizatorului nu are legtur cu tipul
acestuia astfel c pentru ambele temporizatoare este necesara
setarea tipului de identificator ( TYPE TON). Totodat este
necesar setarea valorii de temporizare. n general aceasta se
face printr-o baza de temporizare si o valoare de multiplicare a
bazei. In figura 56 se observa ca baza de timp ( TB- Time
Base) este de un minut iar valoarea de multiplicare 9999, astfel
ca temporizatorul va avea valoarea de temporizare 9999
minute. In cazul figurii 57, TB este 0,1 sec si valoarea de
multiplicare 100 astfel ca temporizatorul va avea valoarea de
temporizare 10 secunde.
Funcionarea temporizatorului TON este prezentat n
figura 58.

69
Fig. 58 Funcionarea temporizatorului TON

Temporizatorul pornete n momentul n care la intrare


apare un front cresctor (un semnal care trece de la 0 logic la 1
logic), astfel ca pornete temporizarea msurnd timpul scurs
de la pornire. Ieirea Q va trece in 1 logic (va fi activat) doar
dac valoarea actuala a timpului (msurat) este cel puin
egal cu valoarea setat. Att timp cat aceast condiie este
ndeplinit si intrarea are valoarea 1 logic ieirea va avea
valoarea 1 logic. Daca intrarea trece in 0 logic ieirea va fi i ea
trecut n 0 logic.
n figura 58 II se prezint situaia in care intrarea trece
din 0 logic n 1logic ns aceast stare nu este meninut
suficient pentru ca valoarea actuala (timpul msurat) sa fie cel
puin egal cu valoarea setat. n acest caz dei temporizatorul
pornete, ieirea Q nu va fi activata, la oprirea impulsului de
intrare toate valorile vor fi resetate.

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

Fig. 59 Exemplu de utilizare a funciei TON

Astfel la apsarea butonului conectat la intrarea %I0.0


se trece ieirea %Q0.0 in starea 1 logic si fiind utilizata funcia
SET COIL se menine n aceast stare. Cnd tija pistonului
atinge butonul conectat la %I0.1 in loc sa porneasc imediat
retragerea tijei (aa cum se ntmpl n programul prezentat in
figura 55) se pornete temporizatorul care nu va reseta %Q0.0
dect dup 5 secunde de la activarea intrrii %I0.1.
Modul n care se realizeaz setarea temporizatorului
este prezentat n figura 60.

71
Fig. 60 Setarea parametrilor pentru un temporizator (TwidoSuite V2.31)

Temporizatorul TOF

Acest tip de temporizator este utilizat pentru a temporiza


dezactivarea unei variabile de ieire cu o anumita valoare de
temporizare.
Simbolizarea acestui tip de temporizator este similara cu
cea a temporizatorului TON.

Fig. 61 Simbolizarea temporizatorului TOF (TwidoSuite V2.31)


Funcionarea lui este prezentat n figura 61.

72
Fig. 62 Funcionarea temporizatorului TOF

La detectarea unui front cresctor la intrare (intrarea NI


trece de la 0 la 1 logic) ieirea trece i ea la 1 logic (ieirea
activat) ns temporizatorul este pornit. La detectarea unui
front descresctor (trecerea de la 1 logic la 0 logic) pe intrarea
IN a temporizatorului, pornete temporizarea efectiva, valoarea
actuala (msurat) creste spre valoarea setat. Ieirea Q este
meninut activ pn cnd valoarea actual (msurat) este
cel puin egal cu valoarea setat.
La detectarea unui front cresctor, temporizatorul este
resetat .

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)

Fig. 64 Funcionarea temporizatorului TP

La detectarea unui front cresctor la intrare (intrarea NI


trece de la 0 la 1 logic) ieirea trece i ea la 1 logic (ieirea
activat) respectiv temporizatorul pornit. Ieirea Q este
meninut activa (n 1 logic) pan n momentul n care valoarea
actual (msurat) este cel puin egal cu valoarea setat.
Temporizatorul TP nu poate fi resetat, odat iniializat
temporizarea, aceasta va menine ieirea Q activ mana la
momentul n care valoarea actual (msurat) este cel puin
egal cu valoarea setat indiferent de starea variabilei de
intrare.

74
IV.4.3.2 Numrtoare (contoare)

Funcia de contorizare a impulsurilor cresctoare sau


descresctoare ofer o metoda simpla de a genera aciuni
dup de o intrare a fost realizat de un anumit numr de ori.
Simbolizarea unui numrtor este prezentat n figura
65 (exemplu valabil pentru TwidoSuite).
Semnificaia elementelor unui numrtor aa cum este
el prezentat n figura 65 este [11]:
%Ci reprezint numrul contorului (un program
poate avea maxim 128 de numrtoare);
%Ci.V reprezint valoarea curenta a
numrtorului;
%Ci.P reprezint valoarea setat a
numrtorului;
R reprezint intrarea utilizat pentru resetarea
numrtorului (cnd R are valoarea 1 logic,
%Ci.V = 0.)
S reprezint intrarea utilizat pentru resetarea
numrtorului (cnd S are valoarea 1 logic,
%Ci.V = %Ci.P.) ;
CU reprezint intrarea prin care se monitorizeaz
semnalul cresctor i care indexeaz %Ci.V la
prezenta semnalului cresctor;
CD reprezint intrarea prin care se monitorizeaz
semnalul cresctor li care la apariia unui semnal
cresctor scade cu un increment valoarea %Ci.V;

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

n funcie de productorul automatului programabil,


funciile pot sa difere n ceea ce privete modul de funcionare
sau setare ns principial toate aceste funcii corespund
standardului.

76
Fig. 65 Simbolizarea unui numrtor (TwidoSuite V2.31)

Fig. 66 Exemplu de utilizare a unui numrtor

n figura 66 este prezentat un exemplu de utilizare a


unui numrtor. La intrarea R (reset) a numrtorului este
conectat intrarea %I0.0. a automatului programabil, la intrarea

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.

IV.5. Limbajul Instruction List (IL)

O list de instruciuni (IL) const dintr-o serie de


instruciuni. Fiecare instruciune ncepe intr-o noua linie i
conine un operator i, n funcie de tipul de operaiune, unu
sau mai muli operanzi separai prin virgule. n faa unei
instruciuni poate fi o marc de identificare (eticheta), urmat
de dou puncte (:) [45].

78
Fig. 67 Exemplu de instruciune IL

n tabelul sunt prezente instruciunile specifice limbajului


IL[I34].

Nr. Operator Modificatori Operand Semantica


1 LD N Note 2 Seteaz rezultatul curent
egal cu operandul
2 ST N Note 2 Stocheaz rezultatul curent
in locaia operandului
3 S BOOL Seteaz operatorul
boolean la valoarea 1
R BOOL Reseteaz operatorul
boolean la valoarea 0
4 AND N, ( BOOL SI
5 & N, ( BOOL SI
6 OR N, ( BOOL SAU
7 XOR N, ( BOOL SAU EXCLUSIV
8 ADD ( Adunare
9 SUB ( Scdere
10 MUL ( nmulire
11 DIV ( mprire
12 GT ( Comparaia: >
13 GE ( Comparaia: >=
14 EQ ( Comparaia: =
15 NE ( Comparaia: <>
16 LE ( Comparaia: <=
17 LT ( Comparaia: <
18 JMP C, N Eticheta Sari la eticheta
19 CAL C, N NAME Apelare funcie bloc
20 RET C, N Revenire de la funcia bloc
apelata sau de la funcia
bloc
21 ) Obine o valoare din
acumulator
Tab. 10 Instruciunile specifice 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

Fig. 69 Funcia SAU n limbaj LD respectiv IL

Fig. 70 Exemplu de program in LD si IL utiliznd funcia SET

81
Fig. 71 Exemplu de program complex in limbaj LD si IL

n figura 71 este prezentat un exemplu de program in IL


care utilizeaz un temporizator de tip TP. In limbajul IL acesta
se definete prin funcia BLK (linia 4 in exemplul din fig. 71).
Pentru contactul negat %I0.2 se utilizeaz funcia LD cu
modificatorul N rezultnd LDN %I0.2 (linia 5 in exemplul din fig.
71) care apoi este definit in acumulatorul programului ca intrare
in temporizatori prin funcia IN. Prin operatorul LD este stocat
rezultatul blocului in Q (ieirea blocului), in acest moment
acumulatorul programului are valoarea lui Q aferent

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.

Fig. 72 Program in LD si IL utiliznd un numrtor

IV.6. Limbajul Structured Text (ST)

Limbajul de tip Structured Text este una din modalitile


de programare definite prin standardul IEC61131-3. Limbajul

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)

IV.6.1. Elemente de sintaxa a limbajului Structured Text


(ST)
Pentru a declara variabilele in cadrul unui program
realizat n ST se vor utiliza cuvintele cheie VAR i END_VAR
[31].

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

Declararea unei variabile de tip boolean

VAR
X : BOOL;
END_VAR

Declararea simultana a trei variabile de tip integer (numr


ntreg)

VAR
X,Y,Z : INT ;
END_VAR

Declararea unei variabile de tip cuvnt i asocia o variabil


ntr-o locaie specific (in acest exemplu memoria %B2)

VAR
AT %B2:1 : WORD;
END_VAR

Declararea unei variabile de ieire de tip WORD cui valoarea


000 di definirea ei ca i variabila reinut si dup resetare

VAR RETAIN
AT %O:000 : WORD ;
END_VAR

Declararea unei variabile constante de tip real si asocierea


unei valori

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 *)

Pentru a realiza comparaii intre variabile in cadrul unui


program scris n limbajul ST, se por utiliza urmtorii operanzi:
<> diferit (nu este egal)
<= mai mic sau egal
< mai mic
> mai care
>= mai mare sau egal
= egal
MAX(A,B) - maximul intre variabila A si B.

Funciile matematice disponibile n limbajul ST sunt [24]:


:= atribuirea valorii la o variabile
+ adunare

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

IV.6.2. Structurii de iteraie REPEAT-UNTIL; WHILE-DO ;


FOR

Structurile de tip FOR pot fi utilizate pentru a executa o


operaiune de un anumit numra de ori. Bucla de tip FOR este
iniiat prin FOR si se nchide prin END_FOR.

FOR variabila := valoare iniial TO valoare finala BY


increment DO[37]
< expresie >;
END_FOR;

FOR i:=1 TO 10 BY 1 DO
i=i+1;
END_FOR

Structurile de tip WHILE sunt utilizate pentru a repeta


bucla, atta timp ct anumite condiii sunt adevrate. Bucla de
tip WHILE este iniiat prin WHILE si se nchide prin END_
WHILE.

WHILE [expresie booleana] DO


<expresie>;
END_WHILE;

89
WHILE numrtorul < 100 DO
numrtorul := numrtorul + 1;
c := numrtorul * 2;
END_WHILE;

Structurile de tip REPEAT sunt utilizate pentru a repeta


bucla, pana cnd o expresie boolean este adevrat. Bucla
de tip REPEAT este iniiat prin REPEAT si se nchide prin
END_REPEAT.

REPEAT
<expresie>;
UNTIL [expresie booleana]
END_REPEAT;

REPEAT
numrtorul := numrtorul + 1;
UNTIL numrtorul = 100
END_REPEAT;

IV.6.3. Execuie condiionat IF-THEN-ELSE; CASE

Structurile de tip IF se utilizeaz pentru a executa


expresia dup cuvntul cheie THEN daca expresia booleana
utilizata ca i condiie este adevrat. Structura de tip IF este
iniiat prin IF si se nchide prin END_IF.

IF [expresie booleana]
THEN
<expresie>;
END_IF ;

90
IF X = 0 THEN
C := 0;
END_IF ;

IF [expresie booleana] THEN


< expresie >;
ELSIF [boolean expression] THEN
< expresie >;
ELSE
< expresie >;
END_IF ;

n esen, declaraiile CASE i declaraiile IF sunt


asemntoare. Declaraiile CASE utilizeaz expresii numerice
n loc de expresii booleene. Declarata CASE are, de
asemenea, o sintax uor diferit, care o face mai potrivite
pentru anumite scopuri [31].

CASE [expresie numeric]OF


result1: < expresie >;
resultN: < expresie >;
ELSE
< expresie >;
END_CASE;

IV.6.4. Definirea temporizatoarelor n limbajul ST

Pentru a utiliza un temporizator n cadrul unui program


scris n limbajul ST, acesta trebuie declarat ca o variabil.
Pentru a declara un temporizator de tip TON se va
utiliza urmtoarea sintax:

VAR
TIMER_A: TON;

91
END_VAR

Pentru a declara un temporizator de tip TOF se va


utiliza urmtoarea sintax:
VAR
TIMER_B: TOF;
END_VAR

Pentru apelarea unui temporizator se utilizeaz sintaxa


urmtoare
TIMER_A (IN:= expresie booleana,PT:= temporizarea);
IESIREA ALEASA := TIMER_A.Q;

IN:= expresie booleana - este variabila booleana care


determina iniializarea temporizatorului
PT:= temporizarea - reprezint durata de temporizare
pentru acel temporizator
Q - reprezint ieirea temporizatorului si poate fi utilizata ca o
variabila boolean

IV.7 Limbajul Sequential function chart

Sequential Function Chart (SFC) este un limbajde


programare grafic pentru controlerele logice programabile.
Este unul dintre cele cinci limbi definite de standardul IEC
61131-3. Standardul SFC este definit ca, Pregtirea de
diagrame funcionale pentru sistemele de control, i sa bazat
pe GRAFCET (care la rndul sau sa bazat pe reele Petri [6]).
Denumirea de GRAFCET apare in standardul IEC 848 si
provine de la " Graphe de Commande Etape-Transition" [3].

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.

Fig. 73 Reprezentarea etapelor intr-un grafic SFC

Fig. 74 Reprezentarea unei etape iniial active

94
Legtura orientat

Fig. 75 Reprezentarea unei aciuni asociate unei etape i legtura


orientat

Tranziie

Fig. 76 Tranziia

Fig. 77 Receptivitate asociat unei tranziii

95
Fig. 78 Exemplu de SFC

In cadrul diagramelor SFC exista posibilitatea apariiei a


dou sau mai multe ramuri. Ramurile ntr-o diagrama SFC pot
s fie ramuri de selecie sau ramuri paralele.
n cazul ramurilor de selecie doar una dintre aceste
ramuri este executat. n cazul ramurilor paralele acestea pot
evolua paralel.

96
Fig. 79 Ramificaie de selecie (doar o singura ramur se va executa)

Selecia ramurilor care se vor executa se poate face prin


utilizarea receptivitii.

I
II

Fig. 80 Selecia unei ramuri utiliznd receptivitatea


n figura 80 se prezint modul de alegere a uneia dintre
ramurile SFC, ramuri de selecie utiliznd receptivitatea. Astfel
daca receptivitatea a=0 este adevrat se va executa ramura I.

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)

Fig. 81 Saltul peste etape [3].

98
Fig. 82 Ramificaie paralel

n cazul ramificaiei din figura 82 care este o ramificaie


paralel, ambele ramuri sunt executate, n acest caz nu se
pune problema unei selecii. Ramificaia paralel se identific
prin liniile orizontale duble de la nceputul i de la sfritul
ramificaiei.

IV.7.1 Regulile de evoluie a unui Grafcet.

Regula 1 - Situaia iniial

Situaia iniial a unei Grafcet caracterizeaz


comportamentul iniial a prii de control n ceea ce privete

99
partea operativ, pentru operator i / sau la elementele
exterioare. Aceasta corespunde etapelor activei la nceputul
activitii: aceste etape sunt paii iniiali [12].

Regula 2 - Iniializarea unei tranziii


O tranziie este validat atunci cnd toi paii anteriori
conectai la aceast tranziie sunt activi. Tranziia se va
declana dac este validat i dac receptivitatea asociat
tranziiei are valoarea logic 1. [12], [3].

Regula 3 - Evoluia unei etape active


Activarea unei tranziii implic simultan i imediat
activarea tuturor etapelor urmtoarele i inactivarea tuturor
etapelor imediat precedente. [12]

Regula 4 - Evoluia simultan


Dac exist mai multe tranziii care ndeplinesc simultan
condiiile de declanare, acestea vor fi simultan declanate.
[12]
Regula 5 - Activarea i dezactivarea simultan
Dac n timpul funcionrii acelai pas este
concomitent activat i dezactivat, acesta rmne activ.

100
IV.7.2 Exemplu de utilizare a unui SFC pentru realizarea
unei aplicaii

O diagrama SFC simpl pentru controlul unei prese de


tanare este prezentat n figura 83. n diagrama presa ncepe
ntr-o stare de repaus. Atunci cnd un buton este apsat
automat se va porni alimentarea presei i luminile. Cnd este
detectat o component tana presei avansa pn cnd va
atinge comutatorul de limitare situat n partea de jos a presei.
Cnd acest comutator este acionat presa va retrage
automat tana pn cnd contractatul comutatorului de
limitare situat n partea de sus va fi acionat, iar tana va fi
oprit.
Un buton de oprire poate opri presa numai atunci cnd
aceasta avanseaz. Atunci cnd presa este oprit un buton de
resetare trebuie s fie acionat nainte ca butonul de pornire al
ciclului de tanare s poate fi acionat din nou.
Dup pasul 6 (din figura 83) presa va atepta pn cnd
n zona de lucru nu este detectat nici o pies (cu alte cuvinte
piesa stanat a fost scoas din pres) nainte de ateptare a
urmtoarei piese pentru tanat. Fr aceast parte logic
SFC aferent presei, aceasta ar funciona ntr-un ciclu.
continuu ciclu [6].
.

101
Fig. 83 SFC pentru o pres de tanat[6A]

102
BIBLIOGRAFIE

Adrian Moise - Automate programabile de tip


[1] industrial, Editura Matrix Rom, 2010, ISBN 978-973-
755-622-6
Basic-PLC-Programming-eBook-program-
[2]
plc.blogspot.com
Daniel Popescu - Automate programabile: construcie,
[3] funcionare, programare i aplicaii, Editura
MatrixRom,2005, ISBN 973-685-942-8
Mrgineanu Ion - Reele PROFIBUS - curs,
[4]
Universitatea Transilvania din Braov, 2007
Vanessa Romero Segovia and Alfred Theorin - History
of Control History of PLC and DCS
[5] (http://www.control.lth.se/media/Education/DoctoratePr
ogram/2012/HistoryOfControl/Vanessa_Alfred_report.p
df)
Fernandez, J. L.; Sanz, R.; Paz, E.; Alonso, C. (1923
May 2008). "Using hierarchical binary Petri nets to
build robust mobile robot applications: RoboGraph".
[6]
IEEE International Conference on Robotics and
Automation, 2008. Pasadena, CA, USA. pp. 1372
1377. doi:10.1109/ROBOT.2008.4543394.
Hugh Jack - Automating Manufacturing Systems with
PLCs - Version 4.7, April 14, 2005) Copyright (c) 1993-
[6A]
2005 Hugh Jack (jackh@gvsu.edu). GNU Free
Documentation License
John G. (Skip) Todora - The PLC/PAC Tutorial
[7]
http://theplctutor.com/history.html
Karl-Heinz John, Michael Tiegelkamp, IEC61131-3:
[8] Programming Industrial Automation Systems, Springer
Verlag Berlin Heidelberg, ISBN 3540677526
Mrgineanu Ion - Automate vectoriale - curs,
[9]
Universitatea Transilvania din Braov, 2007
R. W Lewis (2001) Modelling Distributed Control
[10]
Systems Using IEC 61499. p. 9
[11] *** TwidoSuite Programming Software - Online Help

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

Tipurile de date definite n IEC 61131-3[31]

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