Sunteți pe pagina 1din 25

UNIVERSITATEA DE TIINE AGRICOLE I MEDICIN VETERINAR

A BATATULUI TIMIOARA
FACULTATEA DE TEHNOLOGIA PRODUSELOR AGROALIMENTARE

Proiect la disciplina: Automatizarea proceselor


din industria alimentar
Tema: Automate programabile

Coordonator:
S.l.Dr. Heghedu-Mndru Gabriel
Student
Barbu Cosmin
Timioara
2012

Cuprins:

1.

Etapele procesului de proiectare a sistemelor de automatizare ...3

2.

Clasificarea automatelor programabile dup dimensiunea


magistralei de date...............................................................................7

3.

Descrierea elementelor schemei bloc a unui AP .............................8

4.

Operaiile pentru executarea unei instruciuni ..............................13

5.

Instruciuni de prelucrare a informaiei ...........................................14

6.

Noiuni de baz n alegerea soluiei de automatizare ...................19

7.

6.1.

Alegerea hardware-ului .19

6.2.

Alegerea limbajului de programare.19

6.3.

Crearea unui proiect .................................................................20

6.4.

Scrierea, analiza i salvarea unui program ............................20

Prezentarea unei staii de automatizare frecvent utilizat...............21


7.1.

Componentele unei staii de automatizare SIMATIC ............21

7.2.

Uniti centrale SIMATIC ..........................................................21

7.3.

Limbaje de programare ............................................................23

1. Etapele procesului de proiectare a sistemelor de automatizare


Sistemele de conducere automatizate pot fi realizate:

n logic cablat

n logic programat

mixt, coninnd ambele tipuri de structuri, att n logic cablat ct i n logic


programat
n cazul sistemele realizate n logica cablat, funcia realizat depinde de conexiunea
dintre module, deci de cablaj i orice modificare a funciei ce trebuie realizat de sistemul de
conducere necesit modificri hardware
Sistemele realizate n logic programat funcioneaz pe baza unui program nscris
ntr-o memorie. Aceste tipuri de sisteme pot imlementa orice funcii fr a necesita modificri
hardware. n acest caz pentru fiecare tem de proiectare activitatea const in programarea
memoriei sistemului
Etapele procesului de proiectare a sistemelor de conducere automatizate
Desi logica programat se extinde tot mai mult in raport cu logica cablat, fiecare
structur prezint caracteristici care determic utilizarea lor n situaii specifice:

Sistemele n logic cablat permit obinerea vitezei maxime de rspuns;

Sistemele n logic programat pot rezolva probleme de mare complexitate


pentru care se prelucreaz un volum mare de date cu algoritmi compleci.
Acolo unde apar ambele cerine se realizeaz sisteme mixte care conin att parte de
logic cablat, ct i parte de logic programat.
Etapele proiectrii unui astfel de sistem pot fi reprezetate ntr-o diagram mprit n
dou pri: o parte de proiectare a sistemului n logic cablat i o parte de proiectare a
sistemului n logic programat.

Start

Definirea problemei. Divizarea sistemului n logic cablat i n


logic programat

Partajarea blocurilor

Alegerea configuraiei sistemului

Sinteza blocurilor cu
logic cablat

Proiectare program

Implementarea cu circuite
logice

Scrierea programului surs

Testarea blocurilor
componente

Asamblarea programului

Testarea programului
Lucreaz

Este corect ?

corect ?

Nu

Da

Testare prototip

Satisface
performanele
impuse ?

Lucreaz

Nu

Da

corect ?

nscrierea programului n PROM

Proiectare produs final

Elaborarea documentaiei

Fig.1.1. Diagrama etapelor de proietare a unui sistem de automatizare mixt

Definirea problemei
4

n faza de definire a problemei se determin:

semnalele de intrare i de ieire din sistem;

viteza de variaie a acestora;

viteza de prelucrare cerut;

tipul de erori i modul lor de tratare.


Divizarea sistemului n logic cablat i logic programat
n divizarea sistemelor n logic cablat i logic programat se pot ntlni 3 situaii:
1. Exist un numr mic de semnale de intrare i de ieire i logica de prelucrare a
acestora e simpl, n aceast situaie un sistem cu logic cablat special construit este
mai economic dect un sistem cu logic programat cu configuraie minim.
2. Cerinele de performan ale sistemului nu sunt deosebite i n acest caz funciile
pot fi implementate de un sistem n logic programat.
3. Logica de programare a semnalelor este complex, cu un volum important de date
ce trebuie prelucrat presupune utilizarea unui sistem n logic programat. Dac
performanele cerute nu pot fi satisfcute de acesta se impune n acest caz s se
realizeze o prelucrare parial a semnalelor cu circuite logice specializate. n acest
caz se atribuie sistemului cu logic programat ct mai multe funcii de ndeplinit,
astfel nct partea de logic cablat sa fie ct mai simpl cu putin.
Etapele proiectrii n logic cablat
n acest caz se parcurg urmtoarele etape:
1. Identificarea blocurilor componente
Se identific pe baza unor criterii funcionale sau poziionale pri ale sistemului care
pot fi considerate blocuri componente ale acestuia. Pentru identificarea blocurilor
componente se va avea n vedere:
- complexitatea blocurilor - s fie ct mai redus pentru a putea fi realizate i testate
uor;
- numrul de blocuri - s fie ct mai mic posibil pentru a nu se crea probleme
suplimentare la interconectarea lor
2. Sinteza blocurilor componente
Se realizeaz sinteza blocurilor pe baza unor din metodele
3. Realizarea/Sinteza celorlate componente
Alturi de blocurile funcionale trebuie realizate i alte componente care se realizeza
fie pe plci de circuit imprimat, sau plcui universale (prin vrapare). Apoi se realizeaz
legurile ntre cirvuite
4. Testarea blocurilor componente
Testarea se realizeaz n condiii ct mai apropiate de condiiile reale. n cazul
blocurilor care nu au fost realizate acestea se vor simula
5. Testarea prototipului
5

n aceast faz se idenific erorile de sintez , conexiunile greite, etc. n acest


moment se va pune n eviden corectitudiea prioiectrii sau eventual necesitatea
reproiectrii unor pri sau a ntreguli sistem
6. Proiectarea produsului final
Se realizeaz dup ce prototipul a trecut probele de testare. n aceast etap trebuie
finalizate configuraiile finale ale circuitelor (dac acestea au fost realizate pe plci universale
de test). Se proiecteaz circuitele imprimate astfel nct acestea s corespund criteriilor
economice i tehnice de realizare a acestora.
Etapele proiectrii n logic programat
1.
Alegerea tipului automatului programabil (AP)
Se realizeaz pe baza analizei cerinelor pe care trebuie s le ndeplineasc sistemul.
n acest moment trebuie determinat:

Numrul de porturi de intrare i de ieire;

Numrul de dipozitive de transmiterr a informaiei;

Capacitatea de memorie;

Tipurile i numrul dispozitivelor de interfa cu procesul.


De asemenea trebuie realizat o analiz a performanelor cerute precum i a modului
n care acestea pot fi atinse.
2.
Proiectare programului
Se realizeaz o schem logic a programului care descrie etapele/aciunile pe care le
realizeaz sistemul pentru a eraliza sarcile impuse.
3. Scrierea programului
Se scrie programul n limbaj de asamblare. Limbajul de asamblare reprezint un set
de instruciuni asociat controlerului, precizat de fiecare productor, care permite descrierea
aciunilor pe care trebuie s le realizeze acesta.
4. Asamblarea programului
n aceast etap programul scris n limbaj de asamblare este tranformat n format
executabil. Aceast etap este realizat de obicei n mod automat de mediul de programare.
5. Testarea programului
n aceast etap se verific dac programul realizeaz ntr-adevr sarcinile pentru
care a fost proiectat. n cazul identificrii unor erori se parcurge din nou ciclul scriereasamblare-testare; n general acest ciclu se parcurge pn cnd programul funcioneaz
corect.
n aceast etap trebuie verificate i performanele sistemului, n special viteza de
rspuns, dac ea corespunde cerinelor impuse de condiiile de proiectare. Dac nu se obin
valorile dorite trebuie cutate modaliti de optimizare a sistemului. n cazul n care prin
optimizare nu se pot mbunti performanele sistemului, se reia analiza sistemului i iar o
parte din funciile ndeplinite de logica programat se vor transfera logicii cablate cele care
pot fi sintetizate cel mai uor n aceast logic.

2. Clasificarea automatelor programabile dup dimensiunea magistralei de date


n fig 2.1. este reprezentat schema bloc a unui AP fiind evideniat modul de
circulaie a informaiilor n interiorul dispozitivului

Fig 2.1. Schema bloc a unui AP


Elementele componente ale AP sunt:

Unitatea de control primete semnale de la perifericele de intrare i n


funcie de valoarea acestora i a instruciunilor programului stocat n memoria UC genereaz
semnale ctre perifericele de ieire;

Consola de programare - este dispozitivul care permite nscrierea programului


ce trebui eexecutat n memoria unitii centrale. n cele mai multe situaii aceast consol
este de fapt un laptpo pentru aplicaii industriale;

Perifericele de intrare sunt module/circuite care au rolul de a prelua semnalele


de la senzori, traductoare, butoane, etc i a le transforma ntr-un format care poate fi
interpretat de ctre unitatea central (fomat digital binar, cel mai adesea);

Perifericele de ieire furnizeaz semnalele de comnd dispozitivelor ce


trebuie comandate: pornire/oprire motoare, nchidere/deschidere comutatoare, pornire/oprire
semnalizri, etc;

Periferice/module interne de temporizare/contorizri - realizeaz ntrzierea


transmiterii unor semnale de comand cu anumite intervale de timp, fixate de program i
impuse de desfurarea proceselor tehnologice;

Magistrala intern este un set de ciruvite logice care asigur transferul


informaiilor n interiorul AP. Exist 3 tipuri de infotmaii care circul n interiorul AP:
- Adrese - sunt numere n format binar care sunt asociate diverselor componente
ale AP i care permit identificarea acestora n procesul de generare, transmitere,
recepionare a informaiilor
- Date - sunt informaii reprezentate n cod binar reprezentnd semnale provenind de
la perifericele de intrare, semnale ce trebuie trimise perifericelor de ieire, alte informaii cu
caracter intermediar care apar n urma
executrii programului nscris n memoria
procesorului,
- Informaii de control sunt informaii n cod binar, generate de unitatea central
prin intermediul crora aceasta controleaz activitatea celorlate componente ale AP. Cu alte
cuvinte semnalul provenind de la un traductor de intrare este preluat de perifericul de intrare
corespunztor doar dac acesta este activat de un semnal de control corespunztor generat
de UC, perifericul de ieire genereaz semnalul de ieire destinat dispozitivelor de execuie
numai dac primete semnalul de control corespunztor de la UC .a.m.d.
7

La unele categorii de AP cel 3 tipuri de informaii circul pe magistrale separate aa


cum se poate observa n fig 2.2:
Magistrala de date asigur transmiterea datelor
Magistrala de adrese realizeaz transmiterea adreselor componentelor
Magistrala de control pe care circul informaiile de control i comenzile UC

Magistral de date

Magistral de adrese

Magistral de control

MAGISTRALA INTERN

Fig.2.2. Magistrala intern a unui AP


Una din caracteristicile magistralei de date se refer la numrul de bii pe care i poate
transmite la fiecare semnal de tact. Astfel pe magistrala de date se paote transmite la fiecare
impuls al semnalului de ceas, 1 bit, sau mai muli bii, de regul, multipli de 8bii (8bii
formeaz un cuvnt), 16 bii (2 cuvinte), 32 de bii etc.
Dup dimensiunea magistralei de date AP se clasific n :

AP cu programare la nivel de bit - magistrala de date avnd capacitatea de 1


bit, operanzii cu care lucreaz UC avnd de asemenea dimensiunea de 1 bit;

AP cu programare al nivel de cuvnt - care lucreaz cu operanzi reprezentai


pe cel puin 8bii (1 cuvnt) sau multipli, datele fiin reprezentate n acelai format

AP mixte conin dou uniti aritmetico-logice ce pot lucra cu operanzi


reprezentai pe un bit sau pe cuvinte.
3. Descrierea elementelor schemei bloc a unui AP
Vom considera n continuare un exemplu concret de AP cu prelucrare la nivel de bit i
anume, automatul AP101. Acesta este destinat automatizrii proceselor de complexitate
medie i poate fi programat s ndeplineasc urmtoarele funcii:
1. detecteaz schimbrile de stare ale semnalelor de pe intrri
2. realizeaz prelucrarea logic a semnalelor recepionate;
3. genereaz semnalele de ieire pe baza valorii semnalelor de intrare i a
instruciunilor programului;
4. semnalizeaz optic intrrile i ieirile.
8

Schema de principiu a AP este similar cu cea din fig.2.1. iar o schem mai detaliat
este redat n fig 3.1.

Fig. 3.1. Schema logic detaliat a AP101


Caracteristici, funcionare
AP0101 este construit modular i poate fi configurat s funcioneze cu maxim 512
intrri, 512 ieiri i 512 variabile de temporizare/contorizare

Intrri
Date provenind de la proces,
variabilele
procesului
sunt
furnizate de dispozitive cum ar fi
limitatoare de curs, butoane cu
meninere, cu autorevenire, de
comand,
comutatoare
bascualnte, senzori, traductoare
etc. (a se vedea fig 3.2.). Aceste
semnale
sunt
preluate
de
perifericele de intrare i sunt
adaptate astfel nct s poat fi Fig.3.2. Dispozitive care furnizeaz semnale de intrare AP
preluate i prelucrate n interiorul
(dup [8] pag. I 3)
AP.

Ieiri
Semnalele de ieire sunt:
comenzi - aplicate elementelor de
execuie (de tipul contactoarelor,
electrovalvelor, motoarelor, etc)
semnalizri

transmise
dispozitivelor
de
semnalizare
optice (ex. becuri, LED-uri ) sau
acustice, (ex. Buzzer)
( a se vedea fig.3.3)
Fig.3.3. Dispozitive crora li se aplic semnalele de
ieire ale AP (dup [8] pag. I 4)

Unitatea de Control UC
Realizeaz:

genereaz comenzile i semnalizrile ctre perifericele de ieire pe baza


semnaleor provenite de la perifericele de intrare i a programului nscris n memorie (MP)

controleaz transferul informaiilor pe magistrala intern a AP. (De exemplu,


pentru a citi semnalul furnizat de un periferic de intrare, UC plaseaz pe magistrala de
adrese adresa corespunztoare perifericului i pe magistrala de control semnalul care
permite transferul informaiei)
Blocuri componente i rolul acestora
MP Memoria Program are o capacitate maxim de de 4 Kilocuvinte (cu module
de 1 kilocuvnt). Organizarea memoriei este realizat pe cuvinte de 16 bii, cei mai
semnificativi 4 bii indic codul operaiei iar ceilali 12 indic adresa operandului. MP
stocheaz programul ce trebuie executat de AP i este e obicei o memorie de tip EPROM.
Programul este nscris n MP cu ajutorul consolei de programare. Programul nscris n MP
este parcurs ntr-o durat de timp numit durat de baleiere Pentru acest tip de AP durata
normal de baleiere este de 16 ms. Dac aceast durat este depit, un circuit special
10

care are rolul de a supraveghea baleierea meoriei, blocheaz BC i poziioneaz pe 0 toate


ieirile
NA - Numrtorul de Adrese furnizeaz adresele din MP de unde se citesc
instruciunile programului. Coninutul acestuia se poate modifica n urmtoarele moduri:
1. dup executarea fiecrei instruciuni coninutul acestuia se incrementeaz cu
valoarea 1 (adic la valoarea numeric corespunztoarei ultimei adrese se adun 1) ca
urmare a comenzii furnizate de blocul de comand BC;
2. poate lua orice valoare ntre 0 i 4095 n cazul n care programul are instruciuni de
salt care fac trimitere la o adresa cu alt valoare dect cea care trebuie s se succead n
mod normal;
3. se poziioneaz la adresa de debut, la punerea sub tensiune a modulului sau ori de
cte ori se acioneaz butonul de RESTART. Prin adresarea adresei de debut se lanseaz un
program de iniializare.
RIC- Registrul Instruciunii Curente stocheaz instruciunea curent i furnizeaz
valoarea de prepoziionare a numrtorului de adrese NA n cazul istruciunilor de salt
BA - Buffer de Adrese- pe baza valorii instruciunii curente alimenteat magistrala de
adrese
BC-Blocul de Comand primete codul operaiei , furnizat de instruciunea curent
(primii 4 bii ai instruciunii), pe baza valorii acestuia genereaz semnalele interne i externe
pentru executarea corecte a acesteia
UL- Unitatea Logic- execut toate operaile logice indicate de program, sub controlul
BC, recepioneaz datele de la perifericele de intrare i genereaz semnalele
corespunztoare pentru perifericele de ieire
MI- Memorie Intern- este o memorie de tip RAM cu capacitatea de 1024 de bii.
Aceast memorie se utilizeaz pentru :

Memorarea unor rezultate pariale - primii 512 bii

Memorarea valorilor semnalelor de intrare ceilali 512 bii


Rolul acestei memorii este importat ntruct automatul un poate citi n mod direct
valoarea semnalelor provenite de la intrare, aceste valori trebuie stocate n MI, de aici vor fi
apoi accesate de UL
Consola de Programare
Are n componena sa:
MCP- Memoria Consolei de Programare- are rolul de a stoca programul ce urmeaz
s fie transferat AP;
MUX- Circuite de multiplexare- permite multiplexarea semnalelor provenind de la AP
i din alte surse
Perifericele de intrare
Schema bloc a perifericelor de intrare este prezentat n fig.3.4.

11

Blocuri componente:
BDA - Blocul de Decodificare a Adreseloracesta primete adresa de pe magistrala de
adrese i o compar cu adresa proprie a
modului i n caz de coinciden emite un
semnal de recunoatere;
BPSI Bloc de Prelucrare a Semnalului de
Intrare realizeaz adaptarea semnalelor
aplicate la intrare astfel nct acestea s fie
compatibile cu nivelele acceptate de circuitele
AP. De asemenea realizeaz izolarea galvanic
ntre proces i AP. Acest bloc realizeaz
conversia semnalelorde intrare n semnale TTL,
dac este cazul
BMED - Blocul de Multiplexare a Datelor realizeaz multiplexarea datelor provenind de la
mai multe surse exterioare de semnal
Fig. 3.4. Schema bloc a perifericelor
de intrare
Perifericele de ieire
n fig.3.5 este reprezentat schema bloc a perifericelor de ieire
Blocuri componente:
BDA - Blocul de Decodificare a Adreselor
- ndeplinete aelai rol ca n cazul
perifericelor de intrare, adic, primete
adresa de pe magistrala de adrese, o
compar cu adresa proprie a modului i n
caz de coinciden emite un semnal de
recunoatere;
BCC- Blocul de Comand Canal are un
rol similar cu blocul de multiplexare al
perifericelor de intrare. Are n componen
un element de memorie pentru fiecare canal
de ieire pentru a memora starea canalului;
BE - Blocuri de Ieire
realizeaz
adaptarea de nivel a semnalelor de ieire
Fig. 3.5. Schema bloc a perifericelor
de ieire
Semnalele aplicate la intrarea modulelor de intrare/ieire sunt semnale de curent
continuu sau alternativ standardizate, tensiuni (5, 24, 48 V n curent continuu respectiv 110V,
220V n curent alternativ), sau cureni (6 mA, 0,15 A, 0,5 A, 1 A respectiv 2,5 A) acestea
aplicndu-se pe mai multe canale (8,16,24 sau 32)
12

Perifericele interne
Sunt realizate cu circuite de temporizare i contorizare. Relizeaz temporizri cu
durate cuprinse ntre cteva milisecunde i cteva ore i de asemenea contorizeaz
evenimentele procesului. Schema bloc este reprezentat n fig. 3.6

Fig. 3.6. Schema bloc a perifericelor interne


Blocurile componente:
BDA-Blocul de Decodificare a Adreselor realizeaz decodificarea adreselor prin
compararea adresei provenite de la magistrala de adrese cu adresa fixat cu
microntreruptoarele de pe modul. Biii mai puin semnificativi (3 sau 4) ai adresei se
utilizeaz pentru adresarea multiplexoarelor blocurilor de comand a canlului de ieire de
date;
BCC- Blocul de Comand al Canalului conine cte un bistabil pentru fiecare bloc
de temporizare Citirea blocului de temporizare se realizeaz prin blocul de multiplexare i
ieire date.
4. Operaiile pentru executarea unei instruciuni
Programul pe care trebuie s l execute AP este constituit dintr-o succesiune de
aciuni, fiecare aciune fiind descris de ceea ce numim o instruciune de program.
Programul va fi alctuit astfel, dintr-o succesiune de instruciuni care vor indica UC ordinea n
care trebuie realizate operaiile pentru ndeplinirea sarcinilor pentru care a fost proiectat,
Fiecare instruciune se refer la un singur tip de aciune (ex, adunarea a doi operanzi
A i B: AD A,B; stocheaz rezultatul ntr-o anumit locaie, STO C, amd). Fiecare
instruciune are o anumit mnemonic adic fiecare aciune este reprezentat de un grup
de litere care reprezint prescurtarea cuvntului (de obicei n limba englez) care descrie
aciunea. Exemple:

citirea datelor de la un periferic de intrare i atribuirea valorii citite unui operand


A: LD A unde LD este prescurtarea cuvntului load , a ncrca n limba englez

adunarea valorilor a doi operanzi A i B: AD A,B unde AD este prescurtarea


cuvntului add , adic adun n limba englez.
Fiecare AP (sau familii de AP) are un set de instruciuni propriu care sunt publicate de
productor, i numai prin cunoaterea acestora un programator poate s scrie programul AP
prin care se realizeaz conducerea automat a procesului
respectiv. Precizm c, n
principiu, seturile de instruciuni ale AP ale diverilor productori sunt asemntoare ntruct
13

ele reprezint un set de aciuni de baz pe care fiecare AP trebuie s le realizeze, dar pot s
difere n special n cazul mnemonicii (reprezentarea literal a instruciunilor)
Instruciunile sunt scrise n tr-un limbaj numit de asamblare. Reprezentarea literal a
fiecrei instruciuni pemite realizarea uoar a programului (programatorul trebuie pur i
simplu s ordoneze aciunile pe care APA trebuie s le realizeze) dar programul n acest
format nu este recunoscut de procesor. Programul , scris n limbaj de asamblare, trebuie
convertit (asamblat) pentru a putea fi executat de AP. Prin asamblare fiecrei instruciuni i
se asociaz un grup de bii, un cod binar unic care indic UL a AP ce operaii trebuie s
execute. Din acest motiv se mai spune c are loc a conversie din limbaj de asamblare n
cod main, adic n cod binar , codul pe care maina (AP-ul n acest caz) poate s-l
recunoasc
Formatul general al unei instruciuni reprezentate n cod main este reprezentat n fig
4.1. i cuprinde 2 cmpuri :
Cod instruciune
(n bii)

Adres/Date
(p bii)

Fig.4.1. Reprezentarea n cod


main a unei instruciuni

1. Primul cmp este rezervat reprezentrii n cod


binar a instruciunii;
2. Cel de-al doilea se nscriu informaii
reprezentnd date sau adrese dup cum
urmeaz:

a)
valoarea decodificat a unei adrese care localizeaz operandul curent, acesta
poate de intrare sau de ieire;
b)
valoarea decodificata locaiei de memorie la care tebuie realizat un salt
specificat de o instruciune a programului;
c)
o anumit dat care trebuie utilizat pentru realizarea unei temporizri, cnd
temporizarea este realizat prin programul software.
Dup inscrirerea programului n MP (reprezenat n cod main), pentru executarea
unei instruciuni n interiorul AP se parcurg urmtoarele etape:
1.
Se aduce instruciunea din MP n RIC ;
2.
Se incrementeaz (se adun 1 la valoarea curent) NA la MP pentru pregtirea
instruciunii urmtoare;
3.
Se transmite pe magistrala de adrese, adresa perifericului cu care UC trebuie
s comunice, iar dup recunoaterea perifericului, ntre cele dou componente ale AP se
stabilete schimbul de informaii necesar pentru executarea instruciunii;
4.
Se decodific codul operaiei i se realizeaz executarea propriuzis a
operaiei de ctre UL
Durata de timp necesar executrii ntrebului program se numete ciclu de program.
Dup prcurgerea unui ciclu de program UC revine la primai nstruciune a programului pentru
a esfectua un nou ciclu. n cazul AP101, un program care ocup 1 kilocuvnt are ciclu de
program de 4 ms.
5. Instruciuni de prelucrare a informaiei
Testare condiiilor i transferul datelor
Pentru realizarea aciunilor specificate de program UC tebuie s detecteze
modificarea semnalelor de intrare, ieire a valorilor mmemorate temporar, adic s detecteze
schimabarea de stare a semnalelor. Aceste semnale se transmit pe magistrala intern a
AP. Vom prezenta n continuae principalele categorii de instruciuni ale AP101 (reamintim
AP101 este un AP cu prelucrare la nivel de bit).

14

Instruciuni de testare a condiiei


Presupun aducerea/nscrierea unei anumite valori, aflat la o anumit adres ntr-o
locaie numit acumulator (notat de regul cu A), locaie cu care lucreaz instruciunea
curent i eventual urmtoarele. Acestea sunt indicate n tab. 5.1.:
Instruciune

Efectul obinut prin executarea instruciunii

LDadr

Se ncarc/aduce n acumulatorul A coninutul locaiei de


memorie identificat prin adresa adr

LDCadr

Se ncarc/aduce n acumulatorul A valoarea


complementar (negat) a coninutului locaiei de memorie
identificat prin adresa adr
Tab 5.1. Instruciuni ale AP101pentru testarea condiiei

De remarcat c grupul de litere asociat instruciunii, LD, reprezint o prescurtare a


cuvntului load care n englez semnific a ncrca, a aduce. Astfel simbolistica
instruciunii este sugestiv n ceea ce privete rezultatul executrii acesteia i ea uureaz
activitatea programatorului.
Instruciuni de transfer de date
Sunt instruciuni care realizeaz salvarea /nscrierea coninutului acumulatorului ntr-o
locaie specificat a memoriei RAM sau ncrcarea unuia din bistabilele canalelor de ieire,
temporizare/contorizare cu coninutul acumulatorului

Instruciune

Efectul obinut prin executarea instruciunii

STOadr

Se transfer coninutul acumulatorului A la locaia de memorie


identificat prin adresa adr

STOCadr

Se transfer valoarea complementar (negat) a coninutului


acumulatorului A la locaia de memorie identificat prin adresa
adr

STC adr

Se nscrie valoarea 1 n locaia de memorie identificat de


adresa adr dac valoarea acumulatorului A este 1

RTC adr

Se nscrie valoarea 0 n locaia de memorie identificat de


adresa adr dac valoarea acumulatorului A este 1
Tab 5.2. Instruciuni ale AP101 destinate transferului de date

De remarcat c transferul se realizeaz necondiionat n cazul primelor dou


instruciuni i este condiionat de valoarea acumulatorului n cazul ultimelor dou instruciuni.
15

Prescurtrile instruciunilor provin dde la urmtoarele cuvinte din limba englez: STO
de la store- a stoca, ST de la set a fixaiar RS de la reset cu sensul de a aduce la
valoarea iniial
Prelucrarea logic a datelor
Setul de instruiuni al AP cuprinde i instruciuni logice care permit implementarea
funciilorlogice booleene. Funciile logice pot fiexprimate n forme diverse, canonice, normale,
disjunctive, conjunctive.
O operaiune logic se poate realiza cu un singur operand - acumulatorul sau cu cu
doi operanzi, un operand din acumulator i unul provenind de la blocurile de inreare,
temporizare sau memorat n memoria RAM.
Setul de instruciuni logice al AP101 este prezentat n tab. 5.3
Instruciune

Efectul obinut prin executarea instruciunii

Instruciuni cu un singur operand


NOT
Se nscrie n acumulatorul A valoarea complementar (negat)
a coninutului acestuia
CLR
n acumulator se nscrie valoarea 0
Instruciuni cu doi operanzi
ANDadr
Se nscrie n acumulatorul A rezultatul operaiei logice I dintre
coninutul acumulatorului A i coninutul locaiei de memorie cu
adresa adr
ANDCadr
Se nscrie n acumulatorul A rezultatul operaiei logice I dintre
coninutul acumulatorului A i coninutul valorii complementare
(negate) a locaiei de memorie cu adresa adr
ORadr
Se nscrie n acumulatorul A rezultatul operaiei logice SAU
dintre coninutul acumulatorului A i coninutul locaiei de
memorie cu adresa adr
ORCadr
Se nscrie n acumulatorul A rezultatul operaiei logice SAU
dintre coninutul acumulatorului A i coninutul valorii
complementare (negate) a locaiei de memorie cu adresa adr
XORadr
Se nscrie n acumulatorul A rezultatul operaiei logice SAU
EXCLUSIV dintre coninutul acumulatorului A i coninutul
locaiei de memorie cu adresa adr
Tab 5.3. Instruciuni logice ale AP101
Remarcm c la finalul execuiei instruciunilor de mai sus rezultatul va fi supranscris
peste coninutul acumulatorului A.
Vom prezenta n continuare secvenele de program care realizeza cteva funcii
logice
Funcia logic

Secvena de
instruciuni
LD I1

Descrierea aciuni acestora


Se ncarc n acumulator valoarea a
provenind de la locaia I1
Se realizeaz operaia I logic ntre
coninutul acumulatorului (a) i
valoarea (b) stocat n locaia I2,
rezultatul se suprasubscrie n
acumulator

I
ANDI2
f=a.b

16

STOE1

Rezultatul aflat n acumulator se


transfer n locaia de memorie
identificat de adresa E1
Se ncarc n acumulator valoarea a
provenind de la locaia I1
Se realizeaz operaia SAU logic
ntre coninutul acumulatorului (a) i
valoarea (b) stocat n locaia I2,
rezultatul se suprasubscrie n
acumulator
Valoarea complementar (negat) a
rezultatului aflat n acumulator se
transfer n locaia de memorie
identificat de adresa E1
Se ncarc n acumulator valoarea a
provenind de la locaia I1
Se realizeaz operaia I logic ntre
coninutul acumulatorului (a) i
valoarea (b) stocat n locaia I2,
rezultatul se suprasubscrie n
acumulator
Rezultatul aflat n acumulator, adic
a . b se transfer n locaia de
memorie identificat de adresa M1
Se ncarc n acumulator valoarea c
provenind de la locaia I1
Se realizeaz operaia I logic ntre
coninutul acumulatorului (c) i
valoarea (d) stocat n locaia I2,
rezultatul se suprasubscrie n
acumulator
Se realizeza operaia SAU logic
ntre coninutul locaiei M1 (adic a . b)
i coninutul acumulatorului (care este
c . d) iar rezultatul se suprasubscrie
n acumulator
Rezultatul aflat n acumulator, adic
a . b + c . d se transfer n locaia de
memorie identificat de adresa M1
Se ncarc n acumulator valoarea e
provenind de la locaia I5
Se realizeaz operaia I logic ntre
coninutul acumulatorului (e) i
valoarea (f) stocat n locaia I6,
rezultatul se suprasubscrie n
acumulator
Se realizeaz operaia SAU logic
ntre coninutul locaiei M1 (adic a . b
+ c . d) i coninutul acumulatorului
(care este e . f) iar rezultatul se
suprasubscrie n acumulator
Valoarea complementar (negat) a
rezultatului aflat n acumulator, adic

LD I1
SAU NU

ORI2

STOCE1

LD I1
I-SAU-NU

ANDI2

STOM1
LD I3
ANDI4

ORM1

STOM1
LD I5
ANDI6

ORM1

STOCE1
17

a . b + c . d + e . f se transfer n
locaia de memorie identificat de
adresa E1
Tab 5.4. Realizarea unor funcii logice cu instruciunile logice ale AP101
Realizarea salturilor
Parcurgerea programului se reliazeaz de regul prin executarea instruciunilor n
succesiunea n care au fost scrise (parcurgere secvenial). Exist ns situaii n care dac
se ndeplinesc anumite condiii (valorile semnalelor de la intrare se schimb, de exemplu)
trebuie executat un alt set de instruciuni aflat ntr-o alt zon de memorie. Pentru a se
accede la aceste secvene trebuie realizat un salt. Instruciunile de salt sunt cele care
permit trimiterea execuiei programuluii ctre o alt adres , dac anumite condiii au fost
ndeplinite. n tab.5.4 sunt prezentate instruciunile de salt ale AP101
Instruciune

Efectul obinut prin executarea instruciunii

JMP adr

Se ncarc n numrtorul de adrese NA adresa adr, ca urmare


programul i va continua execuia de la aceast adres
continund cu adresele sucesiv urmtoare
Se ncarc n numrtorul de adrese
NA valoarea
complementar a adresei adr, ca urmare programul i va
continua execuia de la aceast adres continund cu adresele
sucesiv urmtoare
?????

JMPC adr

NOP

Tab .5.4 Instruciuni de salt ale AP101


Grupul delitere asociat instruciunilor de salt JMP este o prescurtare a cuvntului
jump care n limba englez semnific salt.
Generarea temporizrilor
Pentru generarea temporizrilor s eutilizeaz module conectate al magistral intern a
AP. Fixarea duratei de timp corespunztoare temporizrii se poate realiza manual , realizat
de opertor prin acionarea unor comutatore de pe modul fie prin program. n cazul
temporizrilor hardware realizate de circuite specializate comandate pri program se
utilizeza o linie de ieire care aclaneaz un circuit monostabil sau iniiaz decrementarea
unui numrtor. Ieirea circuitului de temporizare este interpretat de AP ca o linie de intrare.
Astfel UC realizeaz periodic interogri pentru a se informa asupra momentului cnd
temporizarea a expirat.
Realizarea unei temporizri cu durata T este prezentat n fig. 5.1, iar mai jos
secvena de instruciuni corespunztoare.

18

LD I1
STO R1
LDR1
STOE1

- lansare temporizare
- transfer la ieire

Programul
realizeaz
aplicarea
semnalului de intrare, care va declana
procesul de temporizare, la intrarea
modului de temporizare i apoi transferul
la ieirea E1
Fig. 5.1 Diagrama semnalelor corespunztoare
generrii temporizrii T
6. Noiuni de baz n alegerea soluiei de automatizare
n prima faz trebuie elaborat de client, sau n colaborare cu clientul un caiet de sarcini
care s specifice clar modul n care acesta se ateapt s funcioneze sistemul dup
automatizare. Este o etap extrem de important ntruct pornindu-se de la datele prezentate
i performanele solicitate soluiile care se vor contura pot fi simple sau dimpotriv foarte
complexe
6.1. Alegerea hardware-ului
Este condiionat de tipul aplicaiei ce trebuie realizat. Astfel pentru aplicaii de nivel
redus (comanda unei maini umelte de exemplu) sunt importante:

Numrul de intrri i ieiri

Dimensiunea programului
n cazul proceselor complexe sunt critice:

Viteza de rspuns

Dimensiunea memoriei
n cazul unei maini unelte, de exemplu, se va utiliza un singur automat. n funcie de
numrul de intrri/ieiri, dimensiunea memoriei, viteza de rspuns se poate alege dintre S7200, S7-300 sau S7-400, AP realizate de firma Siemens.
Dac procesul se desfoar n mai multe locuri se utlizeaz module I/O dispuse n
aceste locuri (soluia se numete automatizare distribuit) mai degrab dect module
amplasate pe automat.Se obin urmtoarele avantaje:

reducerea lungimii cablurilor de conectare cu procesul

secvenele de program corspunztoare acestor module sunt mai scurte i pot


fi rulate independent unele de altele ceea ce conduce la creterea vitezei de rspuns
Pentru asigurarea transferului de date ntre automat i modulele acestuia se utilizeaz
un modul de comunicare n reea specializat (SIMANTIC NET, n cazul AP Siemens) .
6.2.Alegerea limbajului de programare
Limbajul de programare conine setul de instruciuni ce trebuie utilizate pentru scrierea
programului. n condiiile n care pe pia exist mai muli productori de AP, s-a pus
problema standardizrii limbajelor de programare ale AP. Astfel organismul internaional de
standardizare n domeniul electric, IEC - International Electrotehnic Commitee, n colaborare
cu firmele interesate, a elaborat un standard, IEC 1131 care cuprinde principalele
recomandri privind programarea AP. Setul de instruciuni propus de IEC este, de regul, mai
mic dect setul de instruciuni specific unui anumit tip de AP ntruct productorii introduc i
19

alte instruciuni care perrmit realizarea unor sarcini specifice pentru care este specializat
AP-ul. Limbajele de programare descrise n standardul IEC 1131 sunt:

Limbaje (semi) grafice

LAD Ladder Diagram, diagrame Ladder sau diagrame releu utilizeaz simboluri
specifice programrii cu relee. Este un limbaj de nivel jos i poate fi utilizat de personal cu
pregtire medie.
FBD- Function Block Diagram, diagrame cu blocuri funcionale fiecare funcie este
reprezentat printr-un bloc. Programarea se realizeaz asemntor cu LAD i este de
asemenea un limbaj de nivel sczut

Limbaje literale

STL Statement List sau IL, Instruction List are o structur asemntoare
limbajelor de asamblare utilizate pentru programarea microprocesoarelor. Se bazeaz pe AW
(AnWeigungsListe) realizat de firma Siemens. O caracteristic a acestuia este utilizarea unui
singur acumulaor. Este de asemenea un limbaj de nivel sczut.
ST- Structured Text este un limbaj de nivel nalt cu o structur asemntoare cu
limbajul Pascal. Permite automatizarea proceselor complexe care nu pot fi programate uor
cu limbajele grafice.
Productorii ofer medii de programare care faciliteaz programarea AP ntr-unul sau
mai multe limbaje de programare. Alegerea limbajului de programare se realizeaz n
general, n funie de complexitatea aplicaiei, pentru prelucrarea semnalelor binare se prefer
LAD i FBD, pentru utilizarea variabilelor complexe este de preferat STL, iar n cazul
programelor pentru aplicaii de automatizare complexe care utilizeaz o cantitate mare de
date se utilizeaz ST.
6.3. Crearea unui proiect
Proiectul programului se elaboreaz pe baza caietului de sarcini i inndu-se seama
detipul AP ce va fi utilizat. De regul proiectul programulu se elaboreaz sub forma unui
graf.Acesta este o succesuni de simboluri grafice care fiecare semnific, starea (etapa) prin
care trece un sistem, tranziiile de la o stare la alta, aciunile, condiiile de realizare a
tranziiilor, etc. Pentru realizarea grafului coerspunztor proiectului programului se utilizeaz
cel mai adesea regulile i simbolurile GRAFCET (de asemenea standardizate de IEC).
6.4. Scrierea, analiza i salvarea unui program
Pentru scrierea
programului se utilizeaz medii de programare furnizate de
productor. Programatorul va transpune graful automatizrii n instruciuni ale programului.
Programul poate fi organizat pe blocuri de instruciuni care realizeaz, un astfel de bloc
realiznd o anumit parte a procesului sau pot realiza anumite funcii (de ex comunicarea n
blocuri).
Dup realizarea programului, acesta este testat fie prin ncrcarea pe AP fie utiliznd
un program de simulare, cum ar fi PLCSIM. Ulterior se genereaz documentaia programului.

20

7. Prezentarea unei staii de automatizare frecvent utilizat


Componentele staiei
7.1. Componentele unei staii de automatizare SIMATIC
Ne vom referi n continuare la automatele programabile ale firmei Siemens din seria
SIMATIC.
Se consider c o staie de automatizare este un automat programabil mpreun cu
modulele I/O. Componentele unei astfel de staii sunt:

ina de montare pentru conectarea modulelor individuale. Dimensiunile inei


depinde de numrul maxim de module care se pot conecta, numr prevzut prin proiectare;

Sursa de alimentare pentru alimentarea ntregii staii;

Unitatea central realizeaz memorarea i execuia programului utiizator,


asigur comunicarea dispozitivului de programare cu module, cu alte staii prin intermediul
magistralei;

Module de I/O - permite adaptarea semnalelor de intrare/ieire ale procesului;

Moule de intefa pentru conectarea mai multor ine de montare;

Module funcionale- realizeaz funcii pe care unitatea de control nu le poate


realiza;

Procesor de comunicaie- se utilizeaz atunci cnd se conecteaz staiile de


automate n reele.
Modulele I/O se numesc locale, dac sunt montate n imediata vecintate a uniti
centrale sau distribuite dac sunt amplasate la distan de unitatea central n diversele
puncte de desfurare ale procesului. Modulel distribuite sunt maser sau slave dup cum a
fost proiecat configuraia staiei. Att modulele locale ct i cele distribuite au alocate adrese
prin care pot fi idenificate i apelate de unitatea central.
Module
de
interfa

Module
Terminale ale
modulelor

Surs de
alimentare 24
V cc

in de
montare

Terminale ale
modulelor de
interfa
Terminale de
contact

Conector la
magistrala
PROFIBUS

Fig 7.1.1. Staie de automatizare SIMATIC ET 200iSP

21

7.1.2. Modul de alimentare

7.1.3.Modul de interfa

7.1.4.Modul I/O

Pentru modulele I/O s-au prevzut urmtoarele funcii:

modulele digitale numrtor (pn la 5 Khz), frecvenmetru (1Hz-5 Khz),


acionarea unor contactoare, relee de c.c., valve hidraulice, magnetice, lumini indicatoare,
etc.

Modulele analogice se utilizeaz pentru conecarea termorezistenelor,


termocuplurilor, etc.
7.2. Uniti centrale SIMATIC
Aplicaiile prin care se realizeaz automatizri ale proceselor sunt extrem de diverse i
pentru a rspunde caracteristicilor acestora firma SIEMENS furnizeaz urmtoarele familii de
uniti centrale SIMATIC:
1. S7-200

Se utilizeaz pentru automatizri de


complexitate redus.
Permite utilizarea mai multor module de
extindere i conectarea n reea a mai
multor uniti centrale de acelai tip
(pn la 31) sau conectarea cu alte
automate din aceiai familie SIMATIC.

Fig. 7.2.1 Unitate central SIMATIC S7-200


2. S7-300
Se utilizeaz pentru aplicaii de automatizare de complexitate medie i are n general
aceleai caracteristici ca i S7-200. Sunt realizate module care pot funciona n condiii
dificile (temperaturi foarte sczute i/sau foarte ridicate, vibraii, umiditate, etc.)
22

Fig.7.2.2 Staie de automatizare realizat Simatic S7-300


3. S7-400
Se utilizeaz pentru aplicaii de automatizare complexe. Are o capacitate de
prelucrarea a informaiei mai mare dect familia 300. Este prevzut posibilitatea de lucru
multiprocesor prin conectarea a dou uniti centrale la aceeai surs de alimentare.
Familiile de AP 300/400 permit realizarea unor sisteme
de automatizare a proceselor redundante, fiind astfel
posibil, n cazul n care un automat i ntrrupe
funcionarea preluarea conducerii procesului de un alt
automat.
n cazul sistemelor de automatizare complete sse
prevede i conecarea uni panou operator prin care un
operator uman poate interaciona cu varaibilelel
procesului.

Fig.7.2.3 Staie de automatizare


realizat cu SIMATIC S7-400
7.3. Limbaje de programare
Limbajul de programare permite scrierea programului pe care trebuie executat de AP.
n cazul AP-urilor SIMATIC firma productoare furnizeaz un mediu de programare
STEP7 care permite programatorilor realizarea programelor n unul din cele 3 moduri de
programare a AP-urilor:

LAD diagrame Ladder

FBD- cu blocuri funionale

STL- List de instruciuni

23

7.3.1. Programarea n LAD, FBD, STL. Concepte de baz


Programarea folosind LAD (diagramele Ladder)
Iniial diagramele Ladder au fost utilizate pentru descrierea circuitelor logice cu relee,
fiind utilizate pentru reprezentrea circuitelor electrice. Dup paparii aprimelor AP s-au uitlizat
n continuare aceste diagrame datorit faptului c utilizatorii erau deja familiarizai cu
realizarea lor.
Programarea n LAD presupune aranjarea unor elemente grafice, acesea vnd
anumite semnificaii bine definite. Elementele grafice utilizate la programarea LAD sunt :

contacte

bobine i

cutii
Aceste elemente sunt grupate n reele (networks), aceste reele succedndu-se n
ordinea n care automatul trebuie s execute aciunile programate. Elementele componente
se identific n program prin adrese (ex. I0.1) sau etichete.
Contactele sunt folosite ca simboluri pentru intrri, i pot fi aranjate n serie sau
paralel dup cum se dorete realizarea unor operaii logice ( I, SAU). Contactele normal
deschise sunt testate penru valoaera 1 a semnalului reprezentat de contactul respectiv , cele
normal nchise sunt testate pentru valoarea 0 a semnalului de intrare. De asemenea se
utilizeza contacte care reprezint bii de stare care, dup ce le-a fost citit valoarea , sunt
readui la valoarea inial
Bobinele- sunt atribuite, de regul, ieirilor. n cazul bobinelor obinuite bitul de la
adresa bobinei este setat dac valoarea operaiei este 1. n cazul bobinelor care au asociate
litere sau simboluri apare o funcionare suplimentar (salt n alt loc al programului, controlul
timerului, funcii de numrare, etc)
Cutiile se utilizeaz n cazul elementelor de program care un au o funcionare
binar. Unele au terminale pentru validare (EN pentru validarea intrrilor i respectiv ENO,
penru validarea ieirilor). Aceste intrri permit conectarea blocurilor n serie i asigur c
blocul i realizeaz funcia numai dup ce s-au realizat cele de dinaintea ei.

Fig.7.3.1.1. Tipuri de contacte

7.3.1.2. Tipuri de bobine

7.3.1.3 Tipuri de cutii n LAD


Programarea folosind FBD (function block diagram)
Este de asemenea un mod grafic de programare. Pentru reprezentarea funciilor se
utilizeaz cutii, la fel ca i cele utilizate pentru programarea LAD. n cazul programrii FBD
24

bobinele se nlocuiesc u cutii simple. Se folosesc de asemenea parametri de vlidare


(EN/ENO) cu acelai ca n cazul diagramelor LAD

Fig. 7.3.1.3 Elemente de programare FBD


Programarea folosind STL (Structured Text Language)
Programarea STL este practic o programare asemntoare cu limbajul de asamblare
folosit la microprocesoare. Programul este o list de instruciuni, fiecare linie de program
determinnd o anumit aciune a AP-ului.
Instruciunile la nivel de bit:
A I ;

O - OR;

N Negare

Instruciuni de atribuire:
se realizeaz prin semnul =
Structuri de control:

25