Sunteți pe pagina 1din 27

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 ntro 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 Implementarea cu circuite logice Testarea blocurilor componente

Proiectare program

Scrierea programului surs

Asamblarea programului

Testarea programului Lucreaz corect ? Testare prototip


Este corect ? Da

Nu

Lucreaz corect ?

Satisface performanele impuse ?

Nu

Da

nscrierea programului n PROM

Proiectare produs final

Elaborarea documentaiei

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

Definirea problemei 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 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 scriere-asamblare-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. 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. 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

ntrebri 1. Identificai circuitele logice din schema de mai sus, precizai funcia acestora i respectiv ce rol ndeplinesc n aceast schem 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 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. Blocuri componente: BDA - Blocul de Decodificare a Adreselor acesta 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) 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 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). 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 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

LDCadr

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. Exerciiu: Dac n locaia de memorie cu adresa 1101, valoare stocat este 1, precizai efectul executrii instruciunilor LD1101 i respectiv LDC1101. 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 STOadr Efectul obinut prin executarea instruciunii Se transfer coninutul acumulatorului A la locaia de memorie identificat prin adresa adr Se transfer valoarea complementar (negat) a coninutului acumulatorului A la locaia de memorie identificat prin adresa adr Se nscrie valoarea 1 n locaia de memorie identificat de adresa adr dac valoarea acumulatorului A este 1 Se nscrie valoarea 0 n locaia de memorie identificat de adresa adr dac valoarea acumulatorului A este 1

STOCadr

STC adr

RTC adr

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. 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 Descrierea aciuni acestora

LD I1 I ANDI2 f=a b
.

STOE1 LD I1 SAU NU ORI2

STOCE1

LD I1 I-SAU-NU ANDI2

STOM1 LD I3 ANDI4

ORM1

STOM1 LD I5 ANDI6

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 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 ORM1 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 STOCE1 Valoarea complementar (negat) a rezultatului aflat n acumulator, adic 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 JMP adr JMPC adr Efectul obinut prin executarea instruciunii 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 ????? 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

NOP

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. LD I1 - lansare temporizare STO R1 LDR1 - transfer la ieire STOE1 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 S7-200, 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, sa 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 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.

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 Module alocate adrese prin care pot fi idenificate i apelate de unitatea central Module
de interfa Terminale ale modulelor Surs de alimentare 24 V cc

in de montare

Terminale ale modulelor de interfa Conector la magistrala PROFIBUS Terminale de contact

Fig 7.1.1. Staie de automatizare SIMATIC ET 200iSP

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

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

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 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 ; Instruciuni de atribuire: se realizeaz prin semnul = Structuri de control: O - OR; N Negare