Sunteți pe pagina 1din 13

Automate programabile vectoriale.

Unitatea de învăţare nr. 5


Automate programabile vectoriale
Cuprins
Obiectivele unităţii de învăţare nr. 5
Clasificarea automatelor programabile vectoriale
Structura automatelor programabile vectoriale
Fazele execuției unui program pe un automat programabil vectorial
Inițializarea automatului programabil vectorial
Limbaje de programare pentru automate programabile

Răspunsuri şi comentarii la întrebările din testele de autoevaluare


Bibliografie – unitatea de învăţare nr. 5

OBIECTIVELE unităţii de învăţare nr. 5

Principalele obiective ale Unităţii de învăţare nr. 5 sunt:


- Familiarizarea, recunoasterea functiilor, rolului
automatului programabil vectorial
- Familiarizare cu modul de initializare si de executie a
unui program pe un automat programabil vectorial

1
Automate programabile – Curs
 
Automate programabile vectoriale.
 
Automatele programabile vectoriale sunt microcalculatoare simple destinate
pentru a trata logica secvențială prin program. Acestea sunt folosite pentru a
înlocui automatizările sevențiale cu relee și contacte cu sisteme de automatizare
moderne, ușor de programat, reconfigurat și extrem de fiabile.
Automatele programabile vectoriale sunt echipamente care permit efectuarea
de legături logice între un număr mare de intrări și ieșiri fără circuite suplimentare
de interfață. Acestea simulează prin program (software) structuri de porți
integrate, înlocuind structura cablată printr‐o logică programată. Execuția
programului este sincronă1, ceea ce elimină complicațiile determinate de logica
cablată (cu fire).
Ele lucrează cu variabile binare booleene simple2. De asemeni, aceste
echipamente evoluate pot lucra cu grupuri de date de 8, 16, 32 de biți, în scopul de
a fi utilizate în sisteme complexe.

Clasificarea automatelor programabile vectoriale
Această categorie de automate programabile se clasifică în:
 automate programabile de clasă redusă
 automate programabile de clasă medie
 automate programabile de clasă ridicată
Automatele programabile de clasă redusă sunt echipamente cu număr mic de
semnale de intrare/ieșire (între 16 și 128 de semnale). Acestea sunt cele mai
uzuale echipamente de automatizare.
Automatele programabile de clasă medie sunt echipamente cu număr mediu de
semnale de intrare/ieșire (între 100 și 500 de semnale). Acestea sunt întâlnite în
automatizări complexe.

                                                            
1
 Execuția sincronă impune citirea sincronă a intrărilor și comada simultană a ieșirilor, preîntâmpinând întârzieri 
determinate de alte circuite logice combinaționale sau alte circuite cu relee. 
2
 Opereză cu valori unare binare ∈ 0, 1  
2
Automate programabile – Curs
 
Automate programabile vectoriale.
 
Automatele programabile de clasă ridicată sunt echipamente cu număr foarte
mare de semnale de intrare/ieșire (câteva mii de semnale). Acestea sunt rar
întâlnite, se pot folosii în automatizări foarte complexe.

Structura automatelor programabile vectoriale

Structura automatelor programabile vectoriale este asemănătoare cu
structura unui sistem de calcul. Astfel ele sunt compuse din:
Unitate centrală de prelucrare și procesare
Memorie
o de program
o de date


Module de intrare / ieșire


Unitatea centrală de prelucrare și procesare este parte constituentă a
modului de CPU. Această unitate este responsabilă cu execuția programului salvat
în memoria de programe din modulul CPU, de asemeni cu controlul și coordonarea
modulelor automatului programabil. Unitatea centrală de prelucrare și procesare
poate fi implementată printr‐un microprocesor sau un microcontroller.

3
Automate programabile – Curs
 
Automate programabile vectoriale.
 
Memoria de programe se află pe modulul de CPU. Această memorie este o memorie
nevolatilă de tip ROM3. În această memorie sunt salvate:
 pachetul de biblioteci al automatului programabil
 drivere de module
 sistemul de operare al automatului programabil vectorial.
Această memorie nu‐și pierde conținutul, în urma căderii de tensiune.
Memoria de date se află pe modulul de CPU. Această memorie este o memorie
volatilă de tip RAM4. În această memorie sunt salvate:
 date, variabile, semnalizări etc
 variabile locale de programe și stiva CPU pentru aplicații.
Din punct de vedere funcțional al utilizatorului, memoria de date este împărțită în:


Fig. 1

Zona de variabile de intrare este zona de memorie alocată pentru stocarea


datelor de intrare, citite de pe toate intrările5. Setarea acestei zone de memorie se
face de către CPU într‐o fază specială a execuției programului (faza PIIT6). Mai

                                                            
3
 Sau flash‐ROM pentru a putea fi reprogramată. 
4
 Această memorie se pierde la căderea tensiunii de alimentare. In special aceasta memorie este menținută de o baterie 
sau un accumulator (acest circuit mai poartă denumirea de RAM cu ACCU). 
5
 Se citesc toate intrările, indiferent dacă sunt utilizate sau nu. 
6
 PIIT = Process Image Input Table –en‐ 
4
Automate programabile – Curs
 
Automate programabile vectoriale.
 
departe programul utilizator lucrează cu valori din această arie, fără să citească în
mod direct porturile de intrare/ieșire.
Zona de variabile de ieșire este zona de memorie alocată pentru stocarea
datelor de iesire, completate de către program. Setarea acestei zone de memorie se
face de către CPU în faza de a execuției programului (faza PP7). Mai departe
programul utilizator lucrează cu valori din această arie, fără să scrie în mod direct
în porturile de intrare/ieșire. Scriere datelor din memorie în porturi se face de
către procesor într‐o faza specială (faza PIOT8).
Zona de variabile interne este folosită pentru stocarea de date și parametrii
locali folosiți de programul utilizator.


Fazele execuției unui program pe un automat programabil vectorial



Programul executat pe un automat
programabile este monotasking9. Acesta e
execută la infinit. Fazele execuției unui
program sunt:
 PIIT (process image input table. În cadrul
acestei faze CPU efectuează citirea

tuturor intrărilor și memorarea valorilor Fig. 2

citite în zona dedicată variabilelor de


intrare;
 PP (process the program). În această fază
                                                            
7
 PP = Process the Program –en‐ 
8
 PIOT = Process Image Output Table  –en‐ 
9
 Monotask = programul se execută pe un singur fir de execuție la un procesor. 
5
Automate programabile – Curs
 
Automate programabile vectoriale.
 
CPU tratează secvențial programul utilizator10. Rezultatele obținute în acest
pas ce vor genera comenzi sunt salvate în zona de variabile de ieșire. De
asemeni, variabilele interne sunt salvate în zona de variabile interne.
 PIOT (process image output table). În această fază CPU preia valorile din
variablele de ieșire și le transfera automat către modulelel de ieșire. Această
fază se numește actualizare ieșiri
O dată cu citirea valorilor, CPU validează funcționalitatea modulelelor de
intrare. În cazul în care un modul este nefuncțional sau o intrare nu este validă,
atunci CPU poate lua decizia de oprire a execuției programului și semnalizare unei
erori pe partea de module de intrare, indicând pe modulul CPU starea de eroare cât
și pe modulul de intrare ce a generat eroarea. În faza de actualizare ieșiri, în cazul
în care un modul de ieșire este invalid sau apare o problemă la activarea unei ieșiri,
atunci CPU va opri execuția programului și va semnaliza eroare, atât pe modulul
CPU cât și pe modulul care a generat eroare. Dacă în timpul execuției programului
(în faza de process the program) apare o eroare, programul este oprit, iar pe
unitatea de CPU se va indica eoare, iar programul se va opri.

                                                            
10
 Sau putem spune că CPU evaluează schema implementata. 
6
Automate programabile – Curs
 
Automate programabile vectoriale.
 

Inițializarea automatului programabil vectorial
Automatele programabile ca și alte echipamente numerice au o fază inițială,
denumită inițializare. Inițializarea automatului programabil se poate realiza:
 La punerea sub tensiune,
 La inițializare soft.
Pornirea la rece (cold restart), se realizează la punerea sub tensiune; în această
situație automatul programabil inițializează toate ieșirile, urmând trecerea la
execuția algoritmului, începând cu prima instrucțiune.
Pornirea la cald (warm restart), se face la cerere (prin program sau prin mediul
de configurare a echipamentului); în caz de pornire la cald, algoritmul se reia de la
prima instrucțiune, variabilele interne și ieșirile echipamentului păstrează valorile
de la ultima stare.
Pornirea fierbinte sau imediată (hot restart), se face la cerere; în acest caz
algoritmul se reia de unde a rămas, variabile interne și iesirile automatului
programabil se păstrează la ultima stare.

Limbaje de programare pentru automate programabile

Comisia Eletrotehnică Internațională a realizat un standard de programare
pentru automate programabile. Standardul are numele IEC‐1131. Acesta
cuprinde cinci părți:
 Informații generale. În această parte sunt cuprinse informații despre
automatizările cu automate programabile.
 Cerințe hardware. În această parte producătorul descrie modulele
constituente ale automatului programabil cât și specificațiile tehnice
ale acestora.

7
Automate programabile – Curs
 
Automate programabile vectoriale.
 
 Limbaje de programare. În aceast capitol este descris modul de
programare și structura limbajului folosit pentru programarea
automatului programabil.
 Ghidul utilizatorului. Aceast capitol descrie modul de operare cu
automatul programabil.
 Comunicații. În această parte este descris standardul de comunicații și
protocoalele suportate de cătra automatul programabil.
Numărul de instrucțiuni de bază privind programarea automatelor
programabile sunt descrise în standardul IEC 1131‐3. Normele IEC 1131‐1 definesc
ca mijloc pentru organizarea și structurarea unui program modelul SFC (Sequential
Function Chart). SFC are la bază reprezentarea GRAFCET (GRAphe Fonctionnel de
Commande Etapes/Transitions ‐fr‐).
Clasele de limbaje de programare se împart în:
 Limbaje literare
 IL (Instruction List) sau
STL(StaTement List) care se
aseamănă cu limbajele cod
mașină al microprocesoarelor


Fig. 3

 ST (Structured Text)
folosește instrucțiuni de
atribuire și de control
asemănătoare limbajelor
de nivel înalt11.
                                                            
11
 Libajul ST este asemănător cu libajul Pascal. Microsoft a implementat biblioteci de operare cu automatele programabile, 
permițând scrierea de programe în Visual Basic și Visual C .Net. De asemeni, Siemens oferă facilități de scriere a codului 
pentru automatele produse de ei, în limbajele C și C++. 
8
Automate programabile – Curs
 
Automate programabile vectoriale.
 

Fig. 4


 Limbaje semigrafice12
 LD (Ladder Diagram)
programarea aplicațiilor într‐o
manieră asemănătoare cu
proiectarea unui circuit electric.
Limbajul operează cu variabile de
Fig. 5
tip binar (booleene).
 FBD (Functional Block Diagram) este o extensie a limbajului ladder view,
cuprinzând blocuri descriptive complexe. Acest limbaj permite operarea cu
variabile de tip real, întregi și binare.

                                                            
12
 Sau limbaje grafice (în conformitate cu GRAFCET). 
9
Automate programabile – Curs
 
Automate programabile vectoriale.
 

De reţinut!
Automatele programabile vectoriale sunt microcalculatoare
simple destinate pentru a trata logica secvențială prin
program. Ele sunt folosite pentru a înlocui automatizările
sevențiale cu relee și contacte cu sisteme de automatizare
moderne, ușor de programat, reconfigurat și extrem de
fiabile.
Această categorie de automate programabile se clasifică în: 
 automate programabile de clasă redusă  
 automate programabile de clasă medie 
 automate programabile de clasă ridicată 
Automatele  programabile  ca  și  alte  echipamente  numerice  au  o  fază 
inițială,  denumită  inițializare.  Inițializarea  automatului  programabil  se 
poate realiza: 
 La punerea sub tensiune, 
 La inițializare soft. 
Clasele de limbaje de programare se împart în: 
 Limbaje literare 
 Limbaje semigrafice 
 
   

10
Automate programabile – Curs
 
Automate programabile vectoriale.
 
Test de autoevaluare
1. Ce sunt automatele programabile vectoriale? 
2. Clasificați automatelor programabile vectoriale? 
3. Care este structura unui automat programabil vectorial? 
4. Care  este  organizarea  memoriei  de  date  a  unui  automat  programabil 
vectorial, din punctul de vedere al utilizatorului? 
5. Care  sunt  fazele  execuției  unui  program  pe  un  automat  programabil 
vectorial? 
6. Ce este pornirea la rece? 
7. Ce este pornirea la cald? 
8. Ce este pornirea imediată? 
9. Ce este un limbaj Ladder Diagram? 
 

11
Automate programabile – Curs
 
Automate programabile vectoriale.
 

Răspunsuri la întrebările din testele de


autoevaluare
1 Sunt microcalculatoare simple destinate pentru a trata logica secven ială prin
program. Ele sunt folosite pentru a înlocui automatizările seven iale cu relee i
contacte. Acestea sunt echipamente care permit efectuarea de legături logice între un
număr mare de intrări i ie iri fără circuite suplimentare de interfa ă.
2 Acestea se clasifică în automate programabile:
 de clasă redusă : un număr mic de intrare/ieșire (16... 128) 
 de clasă medie: un număr de 100‐500 de intrare/ieșire 
 de  clasă  ridicată:  un  număr  de  câteva  mii  de  semnale  de 
intrare/ieșire 
3 Structura unui automat programabil vectorial:
 unitate centrală de prelucrare și procesare 
 memorie (de program și de date) 
 module de intrare și ieșire 
4 Structura memoriei de date automatului programabil vectorial este:

5 Fazele executiei unui program sunt:


 PIIT (process image input table) = citire intrări
 PP (process the program) = tratarea secven ială a programului
 PIOT (process image output table) = actualizare ie iri
6 Pornirea la rece (cold restart) = se face la punerea sub tensiune; în această situa ie
automatul programabil ini ializează toate ie irile, urmând trecerea la execu ia
algoritmului, începând cu prima instruc iune.

7 Pornirea la cald (warm restart) = se face la cerere. Algoritmul se reia de la prima


instruc iune, variabilele interne păstrează valorile de la ultima stare.
8 Pornirea fierbinte sau imediată (hot restart) = se face la cerere. Algoritmul se reia de
unde a rămas, variabile interne păstrează ultima stare.
9 LD (Ladder Diagram) este un limbaj semigrafic utilizat pentru programarea
aplica iilor într-o manieră asemănătoare cu proiectarea unui circuit electric. Limbajul
operează cu variabile de tip binar (booleene).

12
Automate programabile – Curs
 
Automate programabile vectoriale.
 
Bibliografie
- Axelson Jan, The microcontroller idea book: circuits, programs, &
applications featuring, Lakeview Research, USA; ISBN 0-
9650819-0-7
- Bolton W., Programmable Logic Controllers, NEWNES: ISBN:
978-0750681124
- Hellerman H., Digital computer system principles
- Kwaśniewski J., Programmable Logic Controllers, Published by
WIMiR AGH, Kraków, 2002
- Love J., Process automation handbook, Springer 2007
- Wackerly J. F., Digital design principles & practices
- Mărgineanu I., Automate programabile, Ed. Albastră, Cluj
Napoca, 2005
- Mărgineanu I., Utilizarea automatelor programabile în controlul
proceselor, Ed. Albastră, Cluj Napoca, 2010
- Sintea Sorin –„Automate Programabile” – Indrumar de laborator
- *** -PLC Handbook – Automation Direct – 2016
- *** - DL205 User Manual - vol 1 & 2 – 08/2004

13
Automate programabile – Curs
 

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