Documente Academic
Documente Profesional
Documente Cultură
Ieirile automatelor programabile pot fi de dou tipuri: ieiri sub form de tranzistor i ieiri sub
form de releu (fig. 3). Exist, de obicei trei borne: una la care se cupleaz sursa exterioar,
borna de ieire propriu-zis i borna de legtur cu pmntul. Uneori borna de legtur cu sursa
exterioar este comun pentru mai multe ieiri, legtura fiind fcut n interior. Aceasta se poate
vedea n cataloagele firmei productoare. Activarea unei ieiri sub form de tranzistor are ca
efect deschiderea tranzistorului, dac este alimentat. Sarcina ieirii trebuie s fie alimentat ca n
fig. 3, astfel nct la activarea ieirii s fie legat la sursa de alimentare.
Activarea unei ieiri sub form de releu are ca efect nchiderea contactului acestuia. Sarcina
ieirii trebuie s fie alimentat astfel nct la activarea ieirii s fie legat la surs.
1
constant zecimal:
constant binar:
constant octal:
constant hexazecimal:
constant ASCII:
Atunci cnd se scrie un program n limbajele acceptate de acest pachet software se pot utiliza
dou moduri de adresare: direct i indirect.
Adresarea direct specific aria de memorie, dimensiunea i locaia. Se pot adresa diferite arii de
memorie: V, M-pentru locaii din memoria intern, I-pentru locaii reprezentnd imaginile n
memoria RAM ale intrrilor automatului, Q-pentru locaii reprezentnd imaginile n memoria
RAM ale ieirilor automatului, T-pentru temporizatoare, C-pentru contoare, HC-pentru
contoarele de mare vitez, AC-pentru acumulatoare, L-pentru variabile locale, AQ/AI-pentru
ieirile/intrrile analogice, S-pentru variabilele utilizate pentru mprirea programului n
segmente logice i SM-pentru locaii speciale de memorie, adresate ca bit, octet, cuvnt sau
dublu cuvnt. Pentru aceasta se folosete pe lng arie i terminaia B, pentru octet, W, pentru
cuvnt i D, pentru dublu cuvnt. Locaiile V i M sunt de acelai tip. Amndou sunt n
memoria principal la CPU200. Exist mici diferene n unele aplicaii, de exemplu TD200 are
nevoie de octei M pentru funciile tastelor i de octei V pentru mesaje.
La adresarea pe byte, cuvnt sau dublu cuvnt se specific byte-ul de start al adresei. La
variabilele care ocup mai muli octei se folosete memorarea big-endian byte order*.
Big-endian byte-order nseamn c primul octet este interpretat ca octetul cel mai semnificativ, iar
urmtorii octei sunt n ordinea e la cel mai semnificativ spre cel mai puin semnificativ.
3
Variabilele care ncep cu litera T sunt variabile legate de temporizatoarele (timere) automatului.
Acestea sunt de fapt numrtoare de impulsuri, care au perioade diferite, asociate cu numrul
care urmeaz dup litera T. Valorile perioadei sunt la CPU S7-200 egale cu 1 ms, 10 ms sau 100
ms. Fiecrui timer i se asociaz dou valori:
Ambele valori sunt accesate utiliznd aceeai variabil, compus din litera T urmat de un
numr. Accesul la una din cele dou valori este funcie de context.
Instruciunile cu operanzi pe bit au acces la valoarea de bit, n timp ce instruciunile cu operanzi
pe cuvnt acceseaz valoarea curent (fig. 4).
Variabilele care ncep cu litera C sunt variabile legate de contoarele automatului. Acestea sunt
numrtoare de impulsuri care provin din exterior i care trebuie asociate unei intrri. Fiecrui
contor i se asociaz dou valori:
Ambele valori sunt accesate utiliznd aceeai variabil, compus din liter C urmat de un
numr. Accesul la una din cele dou valori este funcie de context, la fel ca la timere.
Instruciunile cu operanzi pe bit au acces la valoarea de bit, n timp ce instruciunile cu operanzi
pe cuvnt acceseaz valoarea curent.
Contoarele de mare vitez au de asemenea un mod de adresare direct, care se realizeaz prin
folosirea literelor HC, urmate de numrul contorului. Contoarele de mare vitez sunt folosite
pentru evenimente rapide, care nu pot fi controlate n cadrul ciclurilor automatului, adic a
acelora care au schimbri de stare aa de rapide nct pot fi pierdute dac sunt legate de intrrile
obinuite ale automatului. La CPU S7-200 sunt disponibile trei contoare de mare vitez al cror
coninut, pe patru octei, poate fi accesat direct, utiliznd variabilele HC0, HC1 i HC2.
Intrrile acestor contoare sunt de obicei legate la traductoare incrementale, care dau un numr
de impulsuri pe rotaie i un impuls de reset la fiecare rotaie.
HC0 este un contor UP/DOWN, care accept o singur intrare de ceas cu frecvena de
maximum 2 KHz. Intrarea de numrare este legat la I0.0, iar direcia de numrare este setat
4
prin intermediul unui bit special de memorie SM37.1 (Dac este 0, contorul numr direct i
dac este 1 contorul numr invers).
Contoarele HC1 i HC2 sunt contoare de mare vitez, foarte flexibile care pot fi configurate s
funcioneze n 12 moduri. Configuraiile posibile sunt: contoare bidirecionale cu control intern
al direciei de numrare, contoare bidirecionale cu control extern al direciei de numrare,
contoare UP/DOWN cu intrri diferite din exterior pentru numrare direct i invers i
contoare de impulsuri n cuadratur.
nainte de a fi utilizat, un contor de mare vitez, trebuie realizat setarea unor bii din categoria
biilor speciali de memorie, legai de contor. Aceti bii stabilesc nivelul de activare, al resetrii i
startului. Ei sunt SM47.0, pentru HC1 i SM57.0, pentru HC2, pentru reset respectiv SM47.1 i
SM57.1 pentru start. Dup setarea acestor bii contorul trebuie configurat i validat.
Configurarea se realizeaz prin alegerea unuia din cele 12 moduri de lucru posibile. Se utilizeaz
pentru aceasta instruciuni din setul de instruciuni al automatului.
Diagramele de semnale i alte indicaii n legtur cu modul de utilizare al contoarelor de mare
vitez se gsesc n manualele firmei productoare.
Acumulatorii sunt dispozitive care pot fi utilizate ca memorii. Acetia se pot utiliza pentru
transferul datelor ctre proceduri. La CPU S7-200 exist patru acumulatori (AC0, AC1, AC2,
AC3). Un acumulator poate fi adresat i setat ca octet, cuvnt sau dublu cuvnt, n funcie de
instruciunea utilizat.
Variabilele care ncep cu literele SM sunt asociate biilor speciali de memorie. Acetia sunt un
mijloc de comunicare ntre CPU i program, fiind utilizai pentru selectarea i controlul unor
funcii speciale:
Pentru mai multe detalii se poate consulta help-ul programului Step 7 MicroWIN 32 sau
manualele firmei.
Bitul special de memorie SM0.1 este 1 n primul ciclu i 0 n celelalte cicluri. El este utilizat la
pentru introducerea marcajului iniial. n cadrul unui program n Ladder Diagram (LAD),
introducerea marcajului iniial se va face ca n fig. 5.
Se observ c transferul marcajului iniial n locaiile corespunztoare (aici MB0) se face numai
n primul ciclu, deoarece validarea blocului de transfer n memorie a vectorului I0 este realizat
numai n primul ciclu.
La automatul S7-200 este posibil adresarea prin intermediul pointerilor care se numete adresare
indirect. Acest lucru este posibil pentru ariile de memorie de tip I, Q, M, V, T, C. Valorile pe bit
sau analogice nu pot fi adresate indirect.
5
Pentru a adresa o locaie n mod indirect trebuie creat mai nti un pointer ctre acea locaie. La
CPU S7-200, pointerii sunt locaii de memorie pe dublu cuvnt, care conin adrese ale altei
locaii de memorie. Pentru pointeri se pot folosi doar locaiile de tip V i acumulatorii. Un
pointer se creeaz mutnd adresa unei locaii de memorie ntr-o alt locaie. La mutare,
operandul care va reprezenta pointerul este precedat de caracterul &. n cazul n care se dorete
accesarea unei valori specificate printr-un pointer se folosete caracterul * n faa operandului.
Utilizarea adresrii indirecte este ilustrat n exemplul din fig. 6.
Asupra pointerilor se pot efectua operaii aritmetice. Dac, n programul de mai sus, se
intercaleaz instruciunea +D +4, AC1, atunci programul de mai sus va conduce la
transferul n AC0 a datelor de la adresa VB104.
n continuare vom descrie modul de lucru cu versiunea 4.0 a programului de consol STEP 7
MicroWIN 32. Aceast versiune are o serie de mbuntiri fa de versiunile anterioare printre
care amintim: posibilitatea configurrii aplicaiilor cu noile tipuri de automate din seria 22x,
posibilitatea configurrii unor reele Modbus, ASi i Ethernet, posibilitatea utilizrii unor vrjitori
(Wizard) pentru configurare etc.
n acest paragraf nu ne propunem s prezentm numai modul de realizare a unui program,
utiliznd cea mai simpl legtur, realizat printr-un cablu cu convertor de reea serial. Vom
presupune deci, c programul este instalat i c un anumit tip de automat din seria S7-200 este
legat prin intermediul unui cablu cu convertor de la RS-232 la RS-485 la interfaa serial a
calculatorului.
La pornirea programului pe ecran va apare interfaa din fig. 7. Fereastra conine diferite
componente ale mediului. Cea mai mare parte a spaiului de lucru este rezervat ferestrei de
editare, a arborelui de instruciuni i ferestrei de navigare. Fereastra de ieire n care se afieaz o
serie de informaii asupra operaiilor pe care le execut programul i eventualele erori de
compilare. Fereastra de instruciuni mai conine i fereastra arborelui proiectului. Aceasta
permite schimbarea n fereastra de editare a editorului de program, a editorului tabelei de
simboluri, a editorului tabelei de stare, a editorului de blocuri de date. Aceste ferestre se pot
maximiza, minimiza sau cascada. Lansarea diferitelor editoare este posibil i din fereastra de
navigare.
Fereastra editorului de program este o fereastr de editor de semigrafic sau text n funcie de
tipul editorului lansat i de limbajul ales pentru editare.
Primul lucru care trebuie fcut este setarea comunicaiei ntre program i automat. nainte de a
seta comunicaia cu programul de consol se va avea n vedere realizarea prin intermediul
comutatoarelor de pe convertor a vitezei de transmisie dorite.
Pentru a ajunge n fereastra de setare a comunicaiei, exist mai multe ci:
La oricare cale aleas va apare fereastra Communication. Aceasta arat ca n fig. 8. Dac se apas
butonul Set PG/PC Interface, n care se poate alege interfaa adecvat (n cazul nostru PC/PPI
cable), iar prin apsarea butonului Properties se pot seta proprieti pentru interfaa selectat.
Aceste proprieti trebuie s coincid cu cele ale cablului de legtur i portului la care este
conectat acesta.
Dup realizarea setrilor dorite, la revenirea n fereastra din fig. 8 parametrii de comunicaie vor
fi modificai corespunztor, iar prin efectuarea unui dublu clic n fereastr se va realiza i
vizualiza legtura cu automatul. Cu aceasta faza de setare a comunicaiei se consider ncheiat
Se poate realiza o editare a programului ntr-unul din limbajele STL, LAD sau FBD. Comutarea
ntre acestea este posibil chiar n timpul editrii din meniul View. Deoarece scrierea unui
program n LAD este mai comod dect n limbajul STL, vom descrie n cele ce urmeaz numai
programarea n LAD i vom face numai unele precizri asupra programrii n FDB, care a
devenit mai bine implementat n aceast versiune.
Un program n LAD este alctuit din una sau mai multe reele. Fereastra editorului LAD este
mprit n celule. n fiecare celul poate fi plasat o instruciune, poate fi scris un operand al
instruciunii (parametru) sau poate fi plasat o linie de legtur orizontal sau vertical.
Linia de alimentare stng este prezent n fiecare reea, iar linia de alimentare dreapt nu exist.
Construirea unei reele se face prin plasarea n celulele din suprafaa editorului a unui obiect al
limbajului. Plasarea se poate face n mai multe moduri. Cel mai comod este alegerea obiectului
din arborele de instruciuni i realizarea unui dublu clic pe acesta.
Orice obiect plasat are unul sau mai muli parametri pe care programatorul trebuie s-i seteze
nainte de compilarea programului. Recomandat este ca parametrizarea s se realizeze imediat
dup plasarea obiectului. Pentru a realiza parametrizarea se utilizeaz tastatura, dup ce n
prealabil se selecteaz celula pentru parametru. Orice parametrizare trebuie realizat n
8
Utilizarea subrutinelor ntr-un program este util pentru mprirea acestuia n mai multe pri
mai mici, mai uor de gestionat i documentat. n acest fel se obin performane mai bune n
programare. Iniial un program are n componen o subrutin (SUBR_0) i o rutin de
ntrerupere (INT_0). Pentru scrierea instruciunilor acestora se selecteaz ferestrele
corespunztoare din editorul de program.
Pentru a crea o nou subrutin se poate realiza un clic dreapta n fereastra de editare i apoi se
alege Insert Subroutine.
ntreruperile sunt generate de evenimente. naintea apelului unei rutine de ntrerupere trebuie
stabilit o asociere ntre eveniment i segmentul de program, care se execut atunci cnd
evenimentul apare. Pentru aceasta se folosete instruciunea ATCH (fig. 9).
Invalidarea acestei asocieri se realizeaz cu instruciunea DTCH (fig. 10), care realizeaz
dezactivarea ntreruperii. Pentru a crea o nou rutin de ntrerupere se poate realiza un clic
dreapta n fereastra de editare i apoi se alege Insert Interrupt. Numrul evenimentului asociat
unei ntreruperi este funcie de tipul automatului folosit. n help-ul programului Step 7
MicroWin se gsesc tabele de asociere a evenimentelor cu numere. De asemenea sunt precizate
n aceste tabele i prioritile asociate acestor ntreruperi.
Servirea cererilor de ntrerupere multiple se face n tehnica LIFO i n funcie de prioriti. Stiva
LIFO are 128 locaii. Din momentul n care ncepe execuia unei rutine de ntrerupere ea nu mai
poate fi ntrerupt dect de o ntrerupere cu prioritate mai mare.
Versiunea 4.0 a programului are un editor FBD mai bine pus la punct dect versiunile
anterioare. La fel ca i editorul LAD, editorul FBD este semi-grafic bazat pe reele i celule n
care se pot introduce blocuri i parametri. Nu mai exist linii de alimentare i legarea blocurilor
se face automat sau manual, n acest ultim caz utilizndu-se Line Down, Line Up, Line Right i
Line Left de pe bara de scule. Legarea manual este destul de greoaie.
Pentru a putea utiliza bistabilele R-S i S-R trebuie ca n ToolsOptionsGeneral s fie selectat
Programming Mode: IEC 1131-3 i Mnemonic SetInternational, ca n fig. 11.
n fig. 12 este prezentat o tabel de variabile globale, iar n fig. 13 modul n care aceast tabel
este reflectat n programul MAIN.
10
Fiecare unitate de program (POU) a unui proiect are propria sa tabel de variabile locale de 64
octei de tip L. Aceast tabel definete variabile cu domeniu de vizibilitate restrns la unitatea
de program respectiv. Utilizarea variabilelor locale este recomandat atunci cnd se dorete
elaborarea unor subrutine generale, utilizabile i n alte programe.
Dac este vorba de subrutine atunci variabilele locale pot fi de mai multe tipuri:
11
1
255, 233
La compilare sunt specificate erorile i din Data Block. Dac n fereastra de ieire se realizeaz un
dublu clic pe eroare, se deschide fereastra i cursorul este poziionat pe acea eroare.
Dac se alege PLC Create Data Block from RAM, valorile curente din RAM sunt introduse n
blocul de date. Pentru aceasta trebuie ca automatul s fie conectat la PC i s fie n modul
STOP.
n pagina Input Filters se pot realiza parametrizri ale filtrelor digitale de pe intrrile automatului.
Parametrizarea unui filtru digital nseamn stabilirea timpului ct un semnal de intrare trebuie s
rmn activ pentru a fi acceptat ca valid. n felul acesta, un astfel de filtru rejectez zgomotele
care apar pe linii de intrare impunnd condiia ca acestea s rmn stabile un timp nainte da a
fi acceptate de automat.
n pagina Analogue Input Filters, dac automatul are module de intrri analogice, se poate seta o
filtrare software a anumitor intrri. Filtrarea software se realizeaz prin medierea unui numr de
eantioane de pe intrarea analogic.
13
Filtrul realizeaz modificarea unei intrri analogice la ultima valoare de intrare, dac aceasta
depete o valoare numit band moart (dead band), fa de valoarea medie. Numrul de
eantioane i banda moart se stabilete pentru toate intrrile care se bifeaz n pagin.
n pagina Pulse Catch Bits se poate realiza gestionarea impulsurilor scurte de pe intrrile
automatului. Pe intrrile automatului pot apare impulsuri scurte a cror schimbare de stare i
revenirea n starea iniial nu poate fi sesizat de automat deoarece au loc ntr-un timp mai scurt
dect durata ciclului automatului. Modelele CPU-22x permit prin aceste setri prelungirea
impulsului pn la ciclul urmtor, astfel nct s fie citite n faza PIIT (Process Image Input Table) a
noului ciclu. n pagin trebuie efectuat bifarea intrrilor care s realizeze prelungirea
impulsului. Acest lucru nu poate fi realizat la modelele CPU-21x.
n pagina Communication Port(s) se poate realiza schimbarea adresei automatului i a vitezei de
comunicaie. Valorile implicite ale adresei i vitezei sunt 2 respectiv 9600 bps.
Toate modificrile fcute n fereastra System Block devin operaionale dup ncrcarea acestuia n
automat.
Utiliznd instruciuni i variabile SCR se pot defini segmente ntr-un program, care pot fi
activate prin setarea unor bii. Aceste segmente sunt ncadrate de instruciunile LSCR (STL) i
SCR (LAD/FBD), care definesc nceputul i SCRE, care definete sfritul.
Instruciunea SCRT, n cadrul unui segment, realizeaz setarea unui bit de tip S, permind
activarea unui alt segment i respectiv dezactivarea segmentului, care a apelat instruciunea de
setare. n cadrul unui program, instruciunile care nu fac parte din segmente se execut ciclic.
Pentru coninutul unui segment SCR sunt urmtoarele restricii:
15
Un exemplu de implementare a unei divergene AND de mai sus este prezentat n fig. 22.
Implementarea unei convergene AND1 este mai dificil. Pentru ca tranziia 1 din fig. 23 s fie
parcurs este necesar ca etapele 1 i 2 s fie active i condiia de parcurgere a tranziiei s fie
adevrat. Activarea etapelor 1 i 2 este dependent de parcurgerea unor tranziii anterioare lor
i este legat de ceea ce se ntmpl n sistemul condus. Se implementeaz o reea de activare
a etapei 3 n care se testeaz dac ambele etape 1 i 2 sunt active ct i condiia C1. Reeaua
aceasta este n partea ciclic a programului i este situat de obicei la sfritul acestuia. Din
aceast cauz biii corespunztori etapelor, care se activeaz sau se dezactiveaz trebuie
setai/resetai cu instruciuni care nu sunt din setul SCR. n fig. 24 este prezentat reeaua
pentru implementarea divergenei din fig. 23.
16
5. Caietul de sarcini
n figura 25 este prezentat schema de principiu a instalaiei de vopsit piese. Aceasta este
alctuit dintr-un cilindru pneumatic, alimentat de la o surs de aer comprimat prin intermediul
unui distribuitor 5/2 cu arc i dou restrictoare de o cale. Deplasarea n sus a pistonului are loc
atunci cnd este alimentat bobina Y a distribuitorului, iar deplasarea n jos are loc atunci cnd
bobina nu este alimentat i sub aciunea arcului distribuitorul se afl n poziia de jos.
Instalaia, care vopsete piese pe o singur parte, funcioneaz n felul urmtor: O pies va
trebui vopsit cu ajutorul unui pulverizator, prin mai multe cicluri (trei, patru sau cinci
parcurgeri de jos n sus a suprafeei de vopsit). Numrul de cicluri se va alege cu ajutorul a trei
butoane B1, B2 i B3. Dac se apas B1, va realiza vopsirea n trei cicluri, dac se apas B2,
instalaia va realiza vopsirea n patru cicluri, iar dac se apas B3, instalaia va realiza vopsirea n
cinci cicluri. Apsarea unui anumit buton va avea ca efect aprinderea unei lmpi incluse n
butonul respectiv sau a unui LED asociat butonului (L1, L2 respectiv L3) care indic numrul
actual de cicluri ales.
Pulverizatorul este antrenat de un piston pneumatic (fig. 25), care are traductoare de proximitate
la capetele cursei (S1, pentru poziia sus i S2 pentru poziia jos). Dac bobina Y a
distribuitorului cu arc care alimenteaz traductorul este alimentat capul de vopsire se
deplaseaz n sus, n caz contrar se deplaseaz n jos.
Instalaia pornete la apsarea unui buton de pornire BP. nainte de pornirea instalaiei trebuie
apsat butonul care selecteaz numrul de cicluri, iar aceast apsare trebuie s fie memorat
pn operatorul va selecta un alt numr de cicluri prin apsarea altui buton.
17
6. Modul de lucru
n cadrul lucrrii de va folosi un singur automat (S7-214), care se afl montat pe panoul care
reprezint fundul cofretului realizat pentru aceast automatizare.
Se procedeaz n felul urmtor:
18
19