Biologie | Chimie | Didactica | Fizica | Geografie | Informatica | |
Istorie | Literatura | Matematica | Psihologie |
CONDUCEREA PROCESELOR CU AJUTORUL CALCULATOARELOR
1 Structura fizica a unui calculator secvential
Calculatorul numeric este un sistem fizic care prelucreaza automat informatia codificata sub forma de valori discrete, conform unui program ce indica o succesiune determinata de operatii aritmetice si logice.
Sistemul de calcul este alcatuir din doua subsisteme principale:
. subsistemul hardware (echipamentele fizice componente);
. subsistemul software (programele si structurile de date).
Structura de baza a calculatorului secvential cu program memorat, stabilita de Von Neumann in 1945, este reprezentata in figura 2.1 si cuprinde cinci unitati functionale:
. unitatea de intrare (UI);
. unitatea de memorare (M);
. unitatea de iesire (UE);
. unitatea aritmetica - logica (UAL);
. unitatea de comanda (UC).
Fig. Structura unui calculator secvential
In cadrul desenului s-a reprezentat prin linie continua fluxul de date si instructiuni, iar prin linie intrerupta fluxul de comenzi si stari.
Unitatea de intrare (UI) asigura introducerea informatiei in calculator, realizand conversia reprezentarii informatiei de la forma externa accesibila omului (numere, texte, imagini) la format intern binar. Formatul intern binar este urmarea utilizarii in constructia calculatoarelor a circuitelor electronice care prezinta la iesire numai doua stari stabile (nivele de tensiune). Conventional, cele doua stari se reprezinta prin cifrele binare "0" si "1".
Ca exemple de dispozitive de intrare se pot enumera: tastatura, soricelul (mouse), creion optic, scanerul, cititorul de banda de hartie, cititorul optic de caractere etc.
Unitatea de memorare (M) reprezinta unitatea functionala a unui calculator, in care se stocheaza informatia (date si programe). Capacitatea memoriei este reprezentata prin numarul de biti de informatie pe care ii poate stoca.
Se utilizeaza ca unitate de masura a capacitatii memoriei octetul sau byte (cuvant de 8 biti), impreuna cu multiplii sai, Koctet (2 octeti), Moctet (2 octeti) si Gocteti (2 octeti).
Memoria unui calculator este formata din:
. memoria interna (principala);
. memoria externa (secundara).
In memoria interna se pastreaza programele si datele ce se utilizeaza la un moment dat. Este realizata cu circuite electronice de memorie.
In memoria externa se pastreaza toate celelalte programe si date ce trebuia sa se afle la dispozitia sistemului de calcul. Implementarea memoriei externe se face prin echipamente fizice (periferice) de memorare, ca de exemplu: banda magnetica, discuri magnetice de diferite tipuri, unitati de caseta magnetica.
Unitatea aritmetica - logica (UAL) realizeaza prelucrarea informatiei preluate din memorie, iar rezultatele se depun din nou in memorie sau sunt furnizate in mediul extern. UAL realizeaza doua categorii de operatii:
. operatii aritmetice (adunare, scadere, inmultire, impartire);
. operatii logice (SI logic, SAU logic, SAU-EXCLUSIV, NEGATIE).
Unitatea de iesire (UE) realizeaza trimiterea in exteriorul sistemului de calcul a rezultatelor prelucrarilor. Daca rezultatele sunt destinate utilizatorului uman, unitatea de iesire executa conversia din format intern in format direct accesibil omului (cifre, texte, grafice, imagini). Cele mai utilizate dispozitive de iesire sunt display-ul, imprimanta, plotterul. Daca rezultatele sunt destinate actionarii unor echipamente, unitatea de iesire genereaza, prin intermediul unor circuite speciale numite convertoare numeric-analogice, semnale necesare actionarii echipamentelor.
Unitatea de comanda (UC) controleaza activitatea tuturor echipamentelor din sistem, pe baza unei secvente de instructiuni reprezentand programul memorat. Caracterul secvential al calculatorului rezulta din modul de executie a programului. Se parcurg urmatoarele etape:
. citirea instructiunii curente;
. decodificarea instructiunii (identificarea operatiilor ce trebuie realizate) si aducerea din memorie a operanzilor;
. executia operatiilor cerute de instructiune, dupa care se trece la urmatoarea instructiune.
Astfel, programul este executat secvential, instructiune cu instructiune.
Datele si programele sunt introduse in calculator prin intermediul unitatii de intrare, fiind apoi depuse in memorie. Unitatea de comanda trimite catre memorie semnale de control reprezentand adrese si obtine de la aceasta instructiunile programului de executat. Pe baza instructiunilor, unitatea de comanda furnizeaza semnalele de control necesare pentru citirea din memorie a datelor de prelucrat si pentru executarea operatiilor necesare in cadrul unitatii aritmetice - logice. Rezultatele sunt depuse din nou in memorie sau sunt trimise catre mediul extern prin intermediul unitatii de iesire.
Unitatea de comanda poate testa direct rezultatele obtinute in unitatea aritmetica - logica, iar pe baza unor instructiuni speciale ale programului poate lua decizii de executie a unei secvente de instructiuni din doua sau mai multe secvente posibile (realizarea de ramificatii in program).
2 Limbaje de programare
Calculatorul "stie" sa execute un set de operatii simple. Prin combinarea acestor simple se pot obtine prelucrari complexe. Combinarea operatiilor se supune unor reguli bine precizate. Studiul acestor reguli are la baza conceptul de algoritm. Prin algoritm se intelege un procedeu, o metoda de rezolvare a unei probleme.
In programare, conceptul de algoritm are rolul fundamental si se poate defini ca un set de reguli ce descriu secventa de operatii ce trebuie executate de calculator pentru solutionarea unui tip specific de probleme.
Pornind de la aceasta definite, rezulta urmatoarele doua proprietati ale algoritmilor:
. generalitatea - algoritmul determina modul de rezolvare a unui tip de problema si nu a unei probleme particulare;
. marginirea in timp - executia algoritmului trebuie sa se termine intr-un numar finit de pasi sau operatii.
Alte proprietati ale algoritmilor sunt:
. riguriozitatea - impune ca ficare pas al algoritmului sa fie precis definit;
. executabilitatea - impune ca ficare pas al algoritmului sa poate fi executat de calculator;
. eficienta - se determina atat din punct de vedere al timpului de executie, cat si al memoriei ocupate.
Rigurozitatea si executabilitatea algoritmilor sunt asigurate prin reprezentarea acestora in limbaje de programare. Un limbaj de programare este, ca si limbajul matematic, un limbaj artificial, folosit pentru comunicarea cu calculatorul. Putem acum defini programul ca fiind o reprezentare (codificare) a unui algoritm intr-un limbaj de programare.
Pentru a rezolva o problema cu calculatorul trebuie parcurse urmatoarele etape:
1) Specificarea problemei, care consta in formularea problemei si specificarea datelor de intrare si a datelor de iesire (rezultatelor).
2) Proiectarea algoritmului, utilizand pentru aceasta diferite metode de reprezentare: pseudocodul, organigramele. Pseudocodul se foloseste in general pentru algoritmi ce vor fi implementati intr-un limbaj de prgramare de nivel inalt. Utilizarea organigramelor este mai adecvata pentru implementarea unui algorritm in limbaj de asamblare.
3) Codificarea algoritmului intr-un limbaj de programare, sub forma unui program. Alegerea limbajului de programare depinde de natura aplicatiei si de programator.
Marea majoritate a programelor sunt scrise in limbaje de nivel inalt. Anumiti algoritmi sunt implementati insa in limbaj de asamblare. Principala diferenta intre cele doua tipuri de limbaje este aceea ca limbajul de asamblare specifica operatii simple, detaliate, actiuni complexe, mai apropiate de rationamentul uman decat de masina.
Un limbaj de programare opereaza cu doua categorii de date:
a) date elementare;
b) date structurate.
Din punct de vedere al valorilor, un program opereaza cu doua categorii de valori:
. constante - valorile acestora nu se modifica in timpul executiei unui program;
. variabile - valorile acestora se modifica in timpul executiei programului.
Valoarea unei variabile se memoreaza in una sau mai multe locatii de memorie, in functie de tipul sau.
Un limbaj de programare se defineste prin:
. vocabular - contine multimea semnelor si cuvintelor din care se pot forma propozitii;
. sintaxa - se refera la multimea regulilor ce descriu modul de alcaturie a propozitiilor;
. semantica - specifica regulile ce definesc intelesul (semnificatia) propozitiilor.
In prezent exista peste 200 de limbaje de programare, cele mai noi aparute fiind mai apropiate de utilizator si de tipurile de aplicatii noi, decat de codul masina.
Limbajele de programare se pot clasifica:
. limbaje de asamblare (de nivel scazut);
. limbaje de nivel inalt.
Un limbaj de asamblare este foarte apropiat de masina. Fiecare calculator dispune de propriul sau limbaj de asamblare. Un limbaj de asamblare se caracterizeaza prin aceea ca unei instructiuni din set ii corepsunde o instructiune in cod masina. Deosebirea este insa urmatoarea: o instructiune in limbaj de asamblare se specifica printr-un nume simbolic si nu prin cod numeric.
Un limbaj de nivel inalt contine instructiuni care sunt mai apropiate de utilizator, de rationamentul uman, decat de masina. Complexitatea operatiilor puse la dispozitia programatorului este mul mai mare decat in cazul limbajelor de asamblare. Un limbaj de nivel inalt se caracterizeaza prin aceea ca unei instructiuni din set ii corespunde o secventa de instructiuni in cod masina. Spre deosebire de programele in limbaj de asamblare, programele scrise in limbaj de nivel inalt sunt, in general, independente de masina fiind portabile de pe un calculator pe altul.
Pentru a executa un program scris intr-un limbaj de nivel inalt pe un anumit calculator, instructiunile acestuia trebuie transformate din instructiuni in limbaj masina. Aceasta operatie de transformare sau translatare a unui program din limbaj de nivel inalt in limbaj masina se realizeaza cu ajutorul unui program special, numit translator.
Translatoarele se impart in doua categorii: compilatoare - care translateaza un program scris in limbaj de nivel inalt intr-un program in limbajul de masina; interpretoare - care analizeaza fiecare instructiune din programul in limbaj de nivel inalt si executa secventa echivalenta de instructiuni in limbaj masina. Apoi trece la urmatoarea instructiune din programul sursa.
Translatarea unui program din limbaj de asamblare in limbaj masina se realizeaza cu ajutorul unui program numit asamblor.
3 Modelul functional al unui calculator
Pornind de la structura ierarhica de limbaje si de masini virtuale, prezentata in paragraful anterior, un sistem de calcul poate fi reprezentat, din punct de vedere functional, ca o ierarhie de niveluri, fiecare nivel fiind construit pe baza nivelurilor predecesoare.
Un sistem de calcul este alcatuit dintr-un ansamblu de resurse fizice si un pachet de programe, sistem ce realizeaza prelucrarea datelor pe baza unor algoritmi specificati de utilizator prin programe de aplicatie.
Resursele fizice ale calculatorului (cum ar fi, de exemplu: circuite integrate, dispozitive electronice, echipamente de intrare/iesire, memorii, surse de alimentare, cabluri) formeaza hardware-ul. Pachetul de programe sistem si programele de aplicatii formeaza software-ul de baza, respectiv software-ul de aplicatie. Compilatoarele si interpretoarele fac parte din software-ul de baza.
Fig. 2.2. Modelul functional al calculatorului
Termenul de firmware se refera la software-ul inclus in dispozitivele electronice in momentul fabricatiei acestora. Modelul functional al unui sistem de calcul este structurat pe 7 niveluri ierarhice (fig. 2.2).
Circuitele si dispozitivele care compun unitatile functionale ale calculatorului (procesor, memorie, subsistemul de intrare/iesire) sunt circuite digitale, desi au ca element de baza tranzistorul (care este un element de circuit analogic), deci intrarile si iesirile lor sunt semnale reprezentand valoarea 0 sau 1 logic.
Secventa numita microprogram are rolul de a interpreta instructiunile de pe nivelul 2. Pe acest nivel exista mai multe microprograme, pe care masina de pe nivelul 1 le poate executa. Programatorul nu are acces la acest microprogram care in multe calculatoare se gaseste in firmware.
Sistemul de operare este constituit dintr-un pachet de programe care creeaza o interfata intre utilizator si calculator si care egalizeaza gestiunea resurselor hardware si software din sistemul de calcul. Sistemul de operare este, la randul sau, structurat pe trei niveluri: nucleul (BIOS), executivul, supervizorul.
2.2. Retelele de calculator si sisteme distribuite
Retelele sunt constituite din calculatoare de diferite tipuri si din echipamente conectate intre ele. Clasificarea se poate face dupa doua criterii, si anume: distanta fizica si coerenta.
In functie de aria de raspandire geografica a elementelor care intra in componenta retelelor, se disting: retele locale, retele la distanta.
Indiferent de modul de conectare (local sau la distanta), transmisia datelor este seriala. O caracteristica importanta o constituie rata de transfer al datelor intre calculatoare. Pe liniile telefonice, rata de transfer este mica; ea nu poate depasi 9600 bps. In retelele specializate de transmisie a datelor, rata ajunge pana la 1 Gbps.
Conectarea calculatoarelor in retele la distanta ofera urmatoarele avantaje:
. posibilitatea schimbului de informatie intre utilizatorii ce lucreaza in retea pe calculatoare diferite. Utilizatorii pot comunica intre ei prin posta electronica, iar pentru transferul de informatie se foloseste FTP-ul (File Transfer Program);
. utilizarea unor resurse hardware de care utilizatorul nu dispune local;
. fiabilitatea retelei este mai buna decat cea a oricarui calculator component;
. repartizarea mai buna a lucrarilor, utilizand toate resursele din retea, astfel incat sa existe o incarcare egala a nodurilor, tinand cont de distributia lor in zone de timp diferite. Astfel, un utilizator poae folosi un calculator dintr-o zona in care nu se lucreaza, fiind noapte. Ideala ar fi o retea internationala care sa se intinda peste toate cele 24 zone de timp.
Conform celu de-al doilea criteriu de clasificare - coerenta - din punct de vedere al utilizatorului, se disting:
. retele de calculatoare - alcatuite din calculatoare independente ce comunica intre ele.
. sisteme distribuite - in care calculatoarele conectate actioneaza ca o singura entitate coerenta pentru utilizator.
2. Transmisia informatiei
Pentru transmisia seriala a informatiei digitale pe o linie analogica, fiecare secunda se imparte in n subintervale de timp. In fiecare subinterval de timp se pot transmite unul sau mai multi biti. Numarul de biti care se transmit intr-un subinterval de timp depinde de nivelurile de tensiune care pot fi stabilite pe acea linie. De exemplu, daca tensiunea pe linie se poate seta la patru valori diferite, atunci se pot transmite cate doi biti odata, intr-un subinterval de timp.
Informatia binara din calculator nu poate fi transmisa ca un semnal electric cu doua niveluri, pe o linie telefonica, deoarece un astfel de semnal este puternic distorsionat. De aceea se transmite un semnal sinusoidal, cu frecventa cuprinsa intre 1000 Hz si 2000 Hz, numit purtatoare. Acest semnal este putin distorsionat si se foloseste in sistemele de telecomunicatii.
Pentru a indica doua valori logice distincte, se poate varia amplitudinea, frecventa sau faza purtatoarei. Acest proces se numeste modulatie.
Pentru transmisia unui caracter, bitii se transmit serial pe linie, unul dupa altul. Dispozitivul care converteste bitii din/in forma unui semnal cu doua niveluri in/din purtatoare modulata in amplitudine, frecventa sau faza se numeste modem (modulator - demodulator).
Modemul emitator converteste bitii unui caracter si ii transmite grupat cate unul sau doi, la intervale de timp regulat distantate. Astfel, pentru o rata de 2400 bps, semnalul se schimba la fiecare 1/2400 s. Modemul receptor converteste purtatoarea intr-un numar binar, deoarece bitii sosesc la intervale regulat distantate in timp, modemul trebuie sa fie capabil sa determine inceputul transmisiei unui caracter, iar ceasul sau ii spune cand sa esantioneze linia (cand sa citeasca valorile individuale ale bitilor).
In transmisia seriala a datelor se folosesc doua metode:
. Transmisia asincrona in care intervalul de timp intre doua cuvinte (caractere) care se transfera nu este constant, in timp ce intervalul de timp intre doi biti succesivi ai cuvantului este fix si depinde de rata de transfer. Rata de transfer este stabilita si, deci, cunoscuta de ambele elemente care comunica.
. Transmisia sincrona in care blocul de date care se transfera, denumit in general "mesaj", impune ca transmisia bitilor care-i compun sa se faca in mod continuu, fara pauza intre cuvinte. In acest caz nu mai sunt necesari bitii suplimentari de start si stop, la nivel de cuvant transmis. In schimb, un mesaj va contine informatii referitoare la numarul octetilor care se transfera, precum si unul sau mai multi octeti necesari validarii corectitudinii receptiei intregului mesaj. Se folosesc, de asemenea, caractere de control care sa marcheze inceputul, respectiv sfarsitul transferului unui bloc de date. Dimensiunea unui mesaj poate fi de ordinul a mii de cuvinte.
Comunicatia pe o linie de transmisie poate fi:
a) simplex - cand se transfera date pe linie intr-un singur sens, de la emitator la receptor;
b) half-duplex - cand se transmit date in ambele sensuri, dar alternativ;
c) full-duplex - pe linie se pot transmite si receptiona date simultan, in cele doua directii.
2.2.2. Tipuri de retele
Calculatoarele care se conecteaza in retea pot fi de tipuri diferite. Un nod reprezinta un calculator mai mult sau mai putin specializat. In cazul conectarii calculatoarelor de tipuri diferite, trebuie sa se tina cont de diferentele de format de reprezentare a informatiei.
Intr-o retea Ethernet, toate calculatoarele si echipamentele se conecteaza, prin intermediul unor interfete de comunicatie, pe un cablu coaxial. Fiecare mesaj emis in retea este precedat de numele destinatarului, pentru a putea fi receptionat doar de resursa careia ii este destinat. Interfata nodului emitator trimite mesajul doar daca nu se transmite altceva pe cablu; altfel asteapta pana se elibereaza. Coliziunea apare in cazul in care cablul este liber si doua sau mai multe noduri vor sa emita simultan. Pentru rezolvarea acestei situatii conflictuale se practica metode specifice controlului distribuit pentru partajarea resursei comune, cablul de interconectare. O solutie mai simpla este ca interfata sa astepte un timp aleatoriu, dupa care sa reincerce transmisia mesajului.
La conectarea in inel, fiecare interfata are un buffer de 1 bit, ce constituie, la nivelul retelei, un registru de deplasare. Fiecare interfata poate citi sau scrie bitul buffer-ul lui. Accesul la cablul de conectare se distribuie prin recunoasterea unei configuratii specifice de biti in registrul de deplasare, configuratie numita token. Ca sa nu apara probleme de interferenta pe cablu, interfata emitatoare modifica ultimul bit din token; astfel, el nu mai poate fi gasit de nici un alt potential emitator. La sfarsitul emisiei interfata reface bitul modificat, dand astfel, unui alt nod, posibilitatea de a emite.
La conectarea in stea, nodul central are un rol particular: transfera mesajele provenite de la un emitator catre un receptor. Defectarea lui duce la blocarea intregului sistem.
Retelele distribuite sunt destinate transferurilor mari de date intre sisteme cu putere mare de prelucrare (main frame). Aceste calculatoare sunt, in general, degrevate de sarcinile de comunicatie. Comunicatia este asigurata de echipamente specializate, de tip minicalculatoare (IMP - Interface Message Processor) sau terminale (TIP - Terminal IMP). Terminalele TIP permit conectarea unor terminale online direct in retea, fara a utiliza un calculator gazda.
2.2.3. Sisteme distribuite
Sistemele distribuite pot fi considerate un caz special al retelelor de calculatoare. Ele sunt constituite din calculatoare care actioneaza ca o singura masina, din punct de vedere al utilizatorului. Calculatoarele conectate se clasifica in doua categorii:
. procesor dedicat sau server. Procesoarele dedicate pot fi impartite la randul lor in:
procesoare dedicate pentru gestiunea echipamentelor periferice: terminale, discuri magnetice, imprimante, benzi magnetice;
procesoare specializate pentru realizare unui tip de aplicatie ca de exemplu: gestiunea de baze de date, calcule matematice, transformari Fouriei, dezvoltare de programe.
. procesor nededicat - nu este destinat realizarii unei anumite functii. El poate fi utilizat pentru orice aplicatie pentru care nu exista server.
In cazul sistemelor distribuite, eficienta maxima pentru programator se obtine daca acesta isi proiecteaza aplicatia ca o colectie de procese cooperante. Aceasta strategie permite executia fiecarui proces, in modul paralel, de catre procesoare distincte. Comparand un procesor cu mai multe unitati de calcul cu un sistem distribuit se constata o similitudine intre ele. In ambele cazuri exista unitati dedicate unor anumite functii, diferenta constand in complexitatea acestora functii. In sistemele distribuite procesoarele executa in paralel modulele complex, iar intr-un procesor cu mai multe unitati de calcul, unitatile specializate pot lucra in paralel doar instructiuni din acelasi modul.
2.3. Notiuni generale privind functiile si structura sistemelor de conducere a proceselor cu ajutorul calculatorului
2.3.1. Introducere
Utilizarea pe scara larga a structurilor numerice in conducerea instalatiilor tehnologice se explica prin cateva avantaje esentiale pe care le au echipamentele digitale de conducere, fata de ele analogice.
Dintre acestea mentionam:
. capacitate deosebit de ridicata de procesare a datelor, care permite implementarea unor functii de automatizare de mare complexitate, cum sunt: monitorizarea grafica avansata a instalatiilor (incluzand si functiuni de diagnoza), optimizarea proceselor, conducerea automata utilizand tehnica de inteligenta artificiala;
. flexibilitatea ridicata a sistemelor de conducere, ca o consecinta a implementarii prin software a algoritmilor;
. in tehnica de calcul exista un nivel foarte ridicat de integrare a componentelor electronice, care da posibilitatea realizarii unor structuri de conducere automata perfomante, intr-o realizare constructiva, compacta, relativ ieftina si de inalta fiabilitate.
Valorificarea posibilitatilor oferite de echipamentele de conducere numerica nu este o problema simpla. Principalele probleme care se pun la proiectarea si realizarea unei aplicatii de conducere automata cu echipamente digitale sunt:
aplicarea unei metodologii adecvate pentru proiectarea de ansamblu aplicatiei, rezultand functiunile, structura, resursele hard si soft necesare;
configuratia hard si soft a aplicatiei si implementarea ei, presupunand ca proiectantul dispune de un ansamblu de metode, algoritmi, sisteme de operare pentru timp real, biblioteci de subprograme pentru probleme tipice etc.
2.3.2. Functiuni si structuri de conducere numerica
In functie de tipul procesului, de gradul de cunoastere a modelului sau matematic, de natura pertubatiilor ce actioneaza asupra procesului, de criteriile de performanta urmarite, de gradul de complexitate al procesului, se alege structura sistemului de conducere cu cele patru grupe principale de elemente (echipamente, programe pentru calculator, proceduri de operare si operatori umani).
Din punct de vedere informational, procesele in flux continuu si procesele discontinue prezinta caracteristici diferite. Astfel, procesele in flux continuu prezinta urmatoarele caracteristici:
parametrii tehnologici au in general variatii continue in timp
informatiile din proces pot fi culese direct cu mijloace automatizate (traducatoare de masura);
optimizarea desfasurarii procesului tehnologic necesita cunoasterea modelului matematic al procesului, identificarea acestuia;
sortimentul produs de o instalatie tehnologica este bine determinat;
actiunea asupra procesului in vederea asigurarii functionarii optime se poate realiza prin mijloace automate.
Procesele discontinue au urmatoarele caracteristici:
informatiile trebuie culese de la locurile de munca;
conducerea procesului tehnologic propriu-zis, respectiv a utilajelor tehnologice, si conducerea procesului de productie sunt distincte una fata de cealalta; in timp ce conducerea utilajelor ridica probleme legate de automatizarea operatiilor, coordonarea fluxului de productie ridica probleme de optimizare a programarii productiei, incarcarii optime a locurilor de munca etc.;
actiunea asupra fluxului de productie in scopul optimizarii desfasurarii sale necesita si interventia operatorului uman.
Tinand seama de aceste caracteristici si de indicatorii tehnico-economici ce trebuie realizati prin utilizarea calculatorului, in automatizarea complexa a proceselor tehnologice pot fi utilizate diferite configuratii de sisteme de conducere cu calculator ce realizeaza diverse functii.
Calculator "consultant" pentru conducerea procesului tehnologic. In aceasta configuratie reprezentata in figura 2.3 calculatorul nu este cuplat direct la proces, ci prin intermediul operatorului care, in anumite situatii, se "consulta" cu calculatorul in vederea asigurarii functionarii procesului la parametrii impusi. Operatorul, pe baza unor informatii privind evolutia procesului, introduse in calculator, primeste rezulatele unor calcule sau simulari ale acestuia, care-i permit a interveni asupra procesului direct sau asupra referintei din buclele de reglare ale diversilor paramteri. Aceasta configuratie de sistem de conducere cu calculatorul are o gama limitata de utilizare, acolo unde pertubatiile sunt relativ mari insa au frecventa redusa.
Fig. 2.3. Schema de conducere cu calculatorul in regim de "consultant"
In aceasta configuratie calculatorul este utilizat pentru efectuarea unor calcule tehnico-economice, prin efectuarea unor operatii de simulare a procesului sau a unor parti ale procesului, generand informatii utile pentru operator. Pe baza acestor informatii, operatorul intervine asupra referintelor regulatoarelor sau asupra procesului cu comenzi corespunzatoare unei bune functionari. O asemenea configuratie de sistem de conducere este tot mai rar intalnita.
Calculatorul pentru control centralizat. Este destinat culegerii datelor din proces si supravegherea desfasurarii procesului tehnologic (fig. 2.4). Calculatorul masoara si inregsitreaza periodic, automat, parametrii tehnologici cu ajutorul unor traducatoare cuplate direct la calculator; compara valorile masurate cu valorile limita si semnaleaza abaterile generand in unele cazuri comenzi simple spre elementele de executie EE corespunzatoare pentru readucerea parametrilor intre llimite; urmareste functionarea corecta a utilajelor si alarmeaza in caz de tendinte de functionare necorespunzatoare; elaboreaza periodic bilanturi de materiale si energie, protocoale asupra functionarii isi si incarcarii utilajelor.
Fig. 2.4. Schema unui sistem de control centralizat cu calculator de proces
Prin sistemul de interfata si in concordanta cu strategia implementara prin program se realizeaza functia de colectare de date si se obtin informatii asupra variabilelor si starii procesului condus.
Informatiile culese de la proces inainte de a fi utilizate in calcul si afisate sunt prelucrate astfel, incat acestea sa caracterizeze cat mai fidel variabilele si starea procesului. Astfel este necesara cercetarea erorilor sistematice in procesul de masurare, liniarizarea caracteristicilor neliniare ale unor traducatoare. La colectarea datelor privind evolutia procesului se impune adoptarea unei strategii adecvate, in functie de numarul si tipul parametrilor masurati.
Aceasta functie de control centralizat a unui calculator de proces este simpla, insa in multe aplicatii ofera un mijloc eficient de imbunatatire a conducerii procesului tehnologic, permitand mentinerea procesului in limitele de functionare admisibile si prevenirea functionarii necorespunzatoare a utilajelor.
In multe cazuri aceasta configuratie reprezinta doar o prima etapa in introducerea calculatorului de proces, urmand ca pe baza informatiilor acumulate in aceasta etapa calculatorului sa i se incredinteze functii mai complexe de conducere.
Pentru implementarea configuratiei "control centralizat" se cere prezenta cat mai aproape de proces si existenta unor blocuri de cuplare la proces, existenta traducatoarelor de masura a parametrilor tehnologici, cuplarea lor la calculator, automatizarea operatiilor de colectare si prelucrare a datelor.
Fig. 2.5. Schema de conducere cu calculatorul in regim de supervizare
Calculatorul "ghid" de conducere a procesului. In aceasta configuratie (fig. 2.5) calculatorul, in plus fata de functiile de culegere a datelor din proces si de supraveghere a desfasurarii in timp a procesului tehnologic, preia si urmatoarele functii suplimentare:
interpreteaza datele culese din proces, calculeaaza valorile unor parametrii masurabili direct si a unor indicatori tehnici si economici care caracterizeaza calitativ si cantitativ modul de desfasurare a procesului tehnologic inclusiv tendintele;
elaboreaza indicatii sub forma de "ghiduri" de conducere, pe baza carora operatorul tehnolog poate imbunatati desfasurarea procesului in sensul apropierii de regimul optim;
elaboreaza, pe baza informatiilor primite si a tendintelor de variatie a unor parametri, referinte pentru regulatoarele automate existente in cadrul automatizarii conventionale.
Acest mod de utilizare a calculatorului de proces este de complexitate medie si eficient in multe aplicatii industriale, in special pentru procese supuse unor pertubatii de frecventa mare.
Conducerea numerica directa a proceselor (CND). Calculatorul in acest caz actioneaza direct asupra procesului tehnologic, fara interventia operatorului tehnolog, fiind cuplat direct sau indirect cu elemente de executie ce actioneaza asupra procesului. Cu o asemenea configuratie se poate realiza reglarea normala cu reactie si cu predictie, optimizarea si dinamica a procesului, comanda secventiala (porniri - opriri) etc.
Algoritmii de reglare in cadrul unei asemenea configuratii pot fi de complexitate ridicata, asigurandu-se realizarea unor criterii de performanta la valoarea optima, productivitatea maxima, consum minim de materiale sau energie, pret de cost minim etc.
Fig. 2.6. Schema de conducere numerica directa a unui proces
Aceasta configuratie conduce la eficacitatea maxima a utilizarii calculatorului datorita functiei de optimizare a procesului tehnologic, insa implementarea unei asemenea structuri (fig. 2.6) presupune eforturi apreciabile de cercetare a procesului de identificare cu mare precizie a modelului matematic al procesului tehnologic condus, de stabilire a algoritmului de conducere optimala a acestuia, de a asigura o functionare cu o inalta fiabilitate
In figura 2.6 se prezinta structura unui sistem de conducere numerica directa a unui proces tehnologic, evidentiindu-se grupurile de echipamente necesare implementarii unui asemenea sistem.
Marimile caracteristice ale procesului sunt masurate cu ajutorul traducatoarelor si convertite in semnale numerice compatibile cu intrarea in calculator. Introducerea semnalelor in calculator, precum si transmiterea semnalelor spre elementele de executie se realizeaza prin intermediul sistemului de interfata. Pe baza datelor obtinute in mod nemijlocit de la punctele de masura, calculatorul in aceasta configuratie ia decizii implementate, de asemenea nemijlocit, fara interventia operatorului uman. Calculatorul poate interveni asupra referintei regulatoarelor deja existente ("conducerea in regim de supraveghere") sau poate actiona direct asupra elementelor de executie. In cazul conducerii directe, regulatoarele conventionale sunt inlocuite prin module software, iar functiile lor sunt exercitate prin rularea unor programe sau a unor subprograme (reprezentand codificarea algoritmului de conducere adoptat).
Calculatorul transmite semnale numerice direct la elementele de executie de tip pas cu pas sau alte elemente de executie a caror intrare este numerica.
Conducerea ierarhizata a proceselor tehnologice. Una dintre structurile de conducere numerica dezvoltata si implementata tot mai mult o constituie structura ierarhizata. In figura 2.7 se prezinta principiul conducerii ierarhizate a proceselor de productie, inclusiv nivelul de conducere al proceselor tehnologice. Procesul este condus automat, atat de regulatoarele numerice (nivelul I), cat si de un calculator de conducere numerica directa (nivelul II), legat si de regulatoarele numerice ale nivelului I.
In acest mod, regulatoarele numerice reprezinta si o rezerva pentru calculatorul CND, asigurand functionarea automata a procesului in cazul defectarii calculatorului. Conducerea numerica directa realizata in cadrul niveluluial doilea asigura fie modificarea referintelor regualtoarelor conventionale, fie comanda directa a elementelor de executie ce actioneaza asupra procesului.
Fig. 2.7. Schema generala de conducere ierarhizata a proceselor
Calculatorul de la nivelul III este destinat asigurarii conducerii optimale a procesului, coordonand nivelul al doilea pentru mai multe grupe de parametri ai procesului. Aceste trei niveluri asigura conducerea procesului tehnologic in timp ce nivelurile superioare IV si V asigura conducerea procesului de productie. In cadrul nivelului IV se face o conducere operativa prin programare si urmarirea productiei incluzand atat aspectele tehnice, cat si cele economice.
In ceea ce priveste conducerea procesului prorpiu-zis, se remarca dezvoltarea unor structuri de conducere distribuita (fig. 2.8). Astfel, functiile de conducere ale procesului tehnologic sunt distribuite intre mai multe calculatoare de capacitate mica, fiecaruia revenindu-i sarcini locale relativ specializate. Astfel, pentru grupuri de parametrii ai procesului se alege un microcalculator sau minicalculator asigurandu-se conducerea procesului prin descompunerea acestuia in subsisteme. Pentru fiecare subsistem se utilizeaza o conducere numerica directa (CND).
Fig. 2.8. Schema de conducere numerica distribuita
In ceea ce priveste conducerea preocesului propriu-zis, se remarca dezvoltarea unor structuri de conducere distribuita (fig. 2.8). Astfel, functiile de conducere ale procesului tehnologic sunt distribuite intre mai multe calcualtoare de capacitate mica, fiecaruia revenindu-i sarcini locale relativ specializate. Astfel, pentru grupuri de parametri ai procesului se alege un microcalculator sau un minicalculator asigurandu-se conducerea procesului prin descompunerea acestuia in subsiteme. Pentru fiecare subsistem se utilizeaza o conducere numerica directa (CND).
O asemenea structura distribuita asigura un grad ridicat de siguranta in functionare si o buna eficienta. Aceasta structura s-a dezvoltat datorita avantajelor oferite de aparitia minicalculatoarelor si microcalculatoarelor, care pot prelua functia de cnducere a unui numar parametri, rezolvand inclusiv problema identificarii procesului tehnologic.
Un exemplu de sistem de conducere distribuit cu performante bune utilizat pentru conducerea proceselor lente este sistemul TDC 2000 realizat de firma Honeywell. Utilizand un microcalculator pentru un grup de opt parametri pot fi conduse procese tehnologice, avand un numar de peste 1000 de parametri. Algoritmii de reglare utilizati sunt conventionali, insa se pot realiza prin programe si alti algoritmi de reglare. Sistemul permite pentru fiecare bucla de reglare, precum si evolutia in timp a marimilor controlate.
Sistemul TDC 2000 este compatibil cu un calculator de proces sau cu un minicalculator care poate indeplini functia de supervizare sau de fixare a referintelor pentru fiecare bucla de reglare si functia de conducere numerica dorita. De asemenea, calculatorul de proces poate fi utilizat pentru colectare de date, pentru efectuarea unor calcule tehnico - economice, pentru elaborarea unor comenzi corespunzatoare la depasirea limitelor normale de functionare etc.
O asemenea strucura prezinta o foarte buna fiabilitate in functionare, o usoara intretinere si un pret de cost redus.
Schema generala a unui sistem de conducere in care sunt utilizate microcalculatoare este prezentata in figura 2.9.
Aceasta structura, organizata pe trei niveluri, asigura conducerea unui sistem multivariabil decompozabil in subsiteme ce contin un numar redus de paramteri. Nivelul intai asigura transferul de informatie de la proces la sistemele de conducere. Microcalculatoarele de la cel de-al doilea nivel asigura reglarea parametrilor pentru fiecare sistem. Nivelul al treilea, alcatuit dintr-un calculator de proces sau minicalculator, permite coordonareafunctionarii microcalculatoarelor pentru intregul sistem cu asigurarea unui indice global de performanta, efectueaza identificarea procesului, liniarizarea caracteristicilor neliniare ale traducatoarelor si elementelor de executie.
Fig. 2.9. Schema generala de conducere a unui proces cu microcalculatoare
2.3.3. Exemple de sisteme de conducere automara cu calculatorul
Exemplul 1.
Un sistem de conducere automata a unui proces de reglare a temepraturii intr-un cuptor. Acest sistem ce poate fi realizat la nivel de laborator este prezentat in figura 2.10:
Sistemul de reglare este de dimensiuni mici si are o constanta de timp relativ mica, ceea ce permite repetarea experimentelor la intervale de timp relativ mici.
Schema bloc strucurala a sistemului de reglare a temperaturii ilustrata in figura 2.10, contine urmatoarele elemente:
. sursa de tensiune comandata ce joaca rol de element de executie;
. un traductor de temperatura cu ajutorul caruia se masoara temperatura din cuptor ce poate varia intre 21°C si 109°C;
. un cuptor miniatural, avand ca element de incalzire o rezistenta de nichelina de 2,2 Ohmi;
. placa de achizitie PCL 711, utilizata la masurarea temperaturii si comanda elementului de executie;
. un calculator numeric pe care se ruleaza algoritmi de reglare (bipozitional, PI si cu predictie), realizati in limbajul C.
Fig. 2.10. Sistem de conducere automata a unui proces de reglare a temperaturii intr-un cuptor
Sursa de tensiune comandata (fig. 5.11) este un stabilizator de tensiune obisnuit a carui referinta este generata de catre convertorul N-A a placii PCL 711.
Fig. 2.11. Sursa de tensiune comandata
R1=5K R2=5K T1=BD 237 T4=BC 171
R3=5K R4=221 T2=BD 237 C1=1000μf
R5=511 R6=0.2K T3=SDT 9206 D1=PL 132
Elementele active si reactive din figura sunt:
. puntea redresoare si condesatorul C, care redreseaza si filtreaza tensiunea din secundarul transformatorului Tr.
. dioda D, tranzistorul T si rezistorul R reprezinta stabilizatorul de tensiune fixa utilizat pentru alimentarea circuitului integrat βM 324;
. circuitul integrat βM 324 este utilizat in conexiune neinvertoare avand factorul de amplificare A = 1+R/R= 2;
. tranzistorul Teste utilizat pentru limitarea curentului de scurtcircuit si se deschide atunci cand curentul debitat de sursa depaseste 2A.
Traductorul de temperatura
Schema electrica a traducatorului de temperatura este data in figura 2.12:
Fig. 2.12. Schema electrica a traductorului de temperatura
R1, R2=2.2K R3, R4=511 R5, R6=9.1K R7, R8=200K
Traductorul are in componenta sa un termistor T a carui rezistenta scade o data cu cresterea temperaturii si care este conectat pe o latura a puntii de rezistori. Variatia tensiunii obtinuta pe diagonala puntii este direct proportionala cu variatia temperaturii din cuptor. La o variatie a temperaturii intre 21°C si 109°C se obtine o variatie a semnalului de iesire a traductorului in intervalul [05] V.
Placa PCL 711B este utilizata atat pentru achizitia marimilor din proces, cat si pentru transmiterea marimilor catre proces. Sistemul de achizite mentionat se paote conecta direct la magistralele unui calculator personal IBM - PC/XT/AT.
Sistemul PCL 711B contine urmatoarele elemente:
. un CAN cu aproximati succesive pe 12 biti care are un timp de conversie de maxim 25μs;
. 8 intrari analogice;
. domeniul de intrare a marimilor analogice programabil: ±5V, ±2,5V, ±1,25V, ±0,625V, ±0,3125V;
. un convertor numeric-analogic de 12 biti care permite obtinerea unei tensiuni in domeniul [0V5V] sau [0V10V];
. 16 intrari numerice si 16 iesiri numerice;
. transfer prin intrerupere a datelor obtinute de la convertorul A-N.
Exemplul 2.
Sistem pentru controlul proceselor industriale distribuite
In figura 2.13 este prezentata o schema generala a unui sistem de control distribuit de proces industrial. Exemplu poate fi asimilat cu un proces industrial al unei companii de transport a titeiului prin conducta. In acest sistem dispecerul central reprezinta sediu central al firmei, iar dispecerii locali sunt unitatile de pompare. Informatiile solicitate de dispecerul central sunt transmise prin diferite retele ce pot fi alese in functie de distanta la care se afla cele doua unitati ce trebuie sa comunice. In exemplul nostru am cuprins trei retele (GSM, telefonica, radio). Fiecare unitate de pompare este condusa de un PLC Master care achizitioneaza datele de la diferite puncte de lucru din statia de pompare. PLC Master poate transmite mai departe sau poate afisa aceste date unui dispecer local.
Un alt sistem utilizat pentru control procesului industrial de distributie a tensiunii electrice este prezentat in figura 2.14. Se poate constata ca utilizarea calculatorului este inevitabila atata timp cat informatiile trebuie culese, sortate, analizate si distribuite pe segmente unitatilor din subordine.
Practic, astazi, nu exista domeniu in care coordonarea unui proces tehnologic sa se faca fara calculator. Evident ca sunt impuse, in acest context, programe speciale si specialisti in acest sens.
Fig. 2.13. Sistem pentru controlul procesului industrial de distributie a tensiunii electrice
Fig. 2.14. Sistem de control automat al procesului de distributie a tensiunii electrice
Regulatorul este acest element de automatizare la intrarea caruia se aplica o marime numita eroare (sau abatere) ε si la a caruia iesire rezulta marimea de comanda x care determina actionarea elementului de executie.
Clasificarea regulatoarelor:
Copyright © 2024 - Toate drepturile rezervate