. Proiectarea Unui Dispecerat de Productie Pentru Estimarea Cantitatii de Carbune Excavat

PREFAȚĂ

Intorducere

Necesitatea modernizării echipamentelor de automatizare prin folosirea echipamentelor numerice de reglare și control

Tema Proiectului

Aplicația dezvoltată în cadrul proiectului.

1.Introducere

Alegerea temei lucrării a avut drept scop familiarizarea cititorului cu sistemele automate de reglare și control dezvoltate în jurul unui microcontroler. S-a avut în vedere implementarea unui sistem pentru îmbunatațirea performanțelor tehnologice într-un mediu industrial concret. Lucrarea nu se dorește a fi numai o decriere teoretică a unui sistem de automatizare ci va încerca o descriere detaliată a felului în care un astfel de sistem este implementat și dezvoltat. S-a dorit, prin alegerea unei teme corespunzătoare să se abordeze cât mai multe din aspectele necesare cunoscute de către un viitor inginer automatist. Astfel, s-a ales un sistem ce cuprinde atât o problematică teoretică a unor sisteme automate de reglare cât și felul în care sunt rezolvate probleme concrete de implementare a sistemului conexe domeniului automaticii. Urmând acest principiu, proiectul va include diferite secțiuni ce urmaresc o problematică diversă a sistemelor automate. S-a urmărit nu numai abordarea unor probleme cu grad complex de dificultate ci și implementarea unor diferite teme cunoscute și studiate într-un sistem unitar integrat. Astfel sistemul cuprinde parți de analiză de proces, de identificarea sistemelor, de determinarea modelelor matematice, de elaborarea unor algoritmi de reglare și control, de proiectare a unui echipament hardware, transmisii de date, circuie electrice de comandă,sistem integrat de programe software,etc.

2. Necesitatea modernizării echipamentelor de automatizare prin folosirea echipamentelor numerice de reglare și control

Odată cu progresul tehnologic, din ce în ce mai des în domeniul automaticii s-a renuntat la folosirea unor echipamente analogice de conducere și control în favoarea unor echipamente numerice. Aceste echipamente prezintă numeroase avantaje atât prin modul robust în care sunt construite, prin costul scăzut cât mai ales datorită modului variat în care un singur echipament de acest tip poate îndeplini mai multe funcții implementate de către proiectant în structura software a acestora. Ehipamentele numerice, pot fi de grade diferite de complexitate. Există circuite integrate numerice dedicate, ce realizează o funcție dinainte stabilită prin construcție, Există echipamente numerice ce includ într-o placă de conexiuni mai multe circuite integrate în jurul unui microprocesor programabil și echipamentele cele mai complexe –computerele.

Foarte folosite în mediul industrial sunt echipamentele numerice dezvoltate în jurul microcontrolerelor. Acestea prezintă avantajul unor dimensiuni și costuri reduse, precum și unei versatilități ridicate. Odată cu folosirea lor la scară largă s-au standardizat și celelalte echipamente industriale ce sunt capabile acum să primeasca și să trimita informatii către microcontroler sau să accepte comenzi de la acesta. Spre deosebire de calculatoare controlerul mai degrabă lucrează cu informații despre sistemul controlat: care este starea unui motor electric, temperatura unui lichid etc., funcție de acestea și de algoritmul de lucru programat luând deciziile necesare. Deci, controlerele pot fi considerate calculatoare obișnuite în care predomină interfețele către exterior. Datorita faptului că microcontrolerele permit implementarea funcțiilor necesare a fi executate într-un program, ele sunt foarte folosite în implementarea unor legi de reglare complexe, devenind de foarte multe ori un echipament de tip regulator.

3. Tema proiectului

După cum sugerează și numele, s-a urmărit implementarea unui sistem de tip dispecer integrat pentru monitorizarea și estimarea cantității de cărbune excavat. Sistemul prezentat în lucrarea de față are rolul de a eficientiza procesul de extragere a cărbunelui din carierele de cărbune. Necesitatea realizării unui astfel de sistem este dată de faptul că în mod convențional, cantitatea de cărbune excavată era estimată doar prin calculul efectuat de către geologi asupra volumului de material excavat, cu mari erori datorate inconstanței stratului de cărbune cât și a variației densitătii acestia în solul carierei. Prin implementarea sistemului s-a obținut o estimare riguroasă pe baza unor calcule matematice a cantității de material excavat precum și urmărirea diferiților parametri de funcționare.

Echipamentul dezvoltat permite realizarea următoarelor funcții

Achiziționeaza datele de tip curent, tensiune de la motorul de antrenare al benzii și datele de tip start / stop bandă; Calculul energiei consumate;

Estimarea cantității de cărbune / steril excavate; Înregistrarea în baza de date;

Determinarea timpului de funcționare, staționare, pe perioade, schimburi;

Afisarea locală a datelor și a stării benzii (Funcțională / Nefuncțională);

Transmitere date către Echipament către nivelul ierarhic superior – dispecerul de producție (stație PC);

Raportări la dispecer (monitor și la imprimantă).

Interfață grafică

4. Aplicație dezvoltată în cadrul proiectului

Proiectul de față este constituit dintr-o descriere a echipamentului dezvoltat pentru estimarea cantității de cărbune cât și dintr-o dezvoltare a unui sistem de uz didactic ce simuleaza printr-o platforma realizată fizic sistemul compus din bandă transportoare și echipament de automatizare. Cele două echipamente sunt realizate similar în jurul aceluiași echipament numeric, numai că în cazul machetei de laborator s-a folosit un motor de curent continuu la angrenarea benzii spre deosebire de motorul trifazat condus în instalația industrială (din motive evidente ce țin de dimensiunea machetei, cât și al costului de realizare). Mai mult, macheta de laborator fiind necesar să servească unui scop didactic, s-au implementat în plus funcții de control al motorului și implementarea unor legi diferite de reglare precum și alte funcții suplimentare.  

. ANALIZA DE PROCES CU CERINȚE DE MONITORIZARE ȘI ESTIMARE

1.Necesitatea implementării sistemului

Companiile miniere sunt intersate de derularea unor programe pentru modernizarea utilajelor și a fluxurilor tehnologice de producție în scopul reducerii consumurilor specifice și în special a costurilor de energie electrica și al cresterii nivelului tehnic per ansamblu al extractiei.

Sistemul prezentat în lucrarea de față are rolul de a eficientiza procesul de extragere al cărbunelui din carierele de cărbune.

Echipamentul are următoarele funcții:

Achiziționeaza datele de tip curent, tensiune de la motorul de antrenare al benzii și datele de tip start / stop bandă; Calculul energiei consumate;

Estimarea cantității de cărbune / steril excavate; Înregistrarea în baza de date;

Determinarea timpului de funcționare, staționare, pe perioade, schimburi;

Afisarea locală a datelor și a stării benzii (Funcțională / Nefuncțională);

Transmitere date către nivelul ierarhic superior PC– dispecerul de producție;

Afisare schema sinoptica, situații pe excavatoare și pe total Exploatarea Minieră

Raportări la dispecer (monitor și la imprimantă)

Raportări opționale:

Utilizatorul alege să vadă raportul despre un anumit excavator (tabelar) pe luni, saptamani, zile, schimburi (se predefinesc de către beneficiar de la ce ore și cât timp dureaza un schimb).

Utilizatorul alege să vadă opririle unui anumit excavator intre două perioade predefinite (la alegere). Opririle se vor vedea într-o listă printabilă.

Necesitatea realizării unui astfel de sistem este dată și de faptul că în mod convențional, cantitatea de cărbune excavată era estimată doar prin calculul efectuat de către geologi asupra volumului de material excavat, cu mari erori datorate inconstanței stratului de cărbune cât și a variației densitații acestuia în solul carierei.

2.Descrierea procesului de tehnologic

În cariere extragerea se face prin excavarea cantității de steril ce acoperă stratul de lignit, iar apoi, după decopertarea perimetrului se trece la excavarea cărbunelui. Stratul de lignit nu este însă repartizat uniform în solul carierei, iar săparea în stratul de steril și lignit este strans legată de performanțele operatorilor umani ce conduc utilajul cât și a geologilor ce cartografiază straturile de lignit. Din punct de vedere al fluxului tehnologic, extragerea se realizează în etapele următoare : geologii delimitează perimetrul necesar a fi excavat, cu ajutorul unui excavator de mari dimensiuni se sapă în malul de pamant, iar apoi cantitatea de material extas de către cupele rotative este transportat printr-un sistem de benzi (unele parte a utilajului de extractie, altele independente) către locurile de depozitare a sterilului,respectiv al cărbunelui.

3. Analiza de proces.  Generalizare sistem. Soluție implementată. Funcții

Echipamentul de Estimare Cantitate Cărbune Excavat se bazeaza pe următoarele considerații:

Cantitatea de Cărbune Excavată este proporțională cu energia consumată de motoarele de angrenare bandă;

Precizia de estimare este afectată de pierderile datorate frecarilor, uzurii benzii și rolelor, altor elemente;

Măsurarea pierderilor trebuie să se faca periodic, la intervale de timp mici, de cate ori se porneste utilajul și să duca la calibrari automate;

Analiza structurii consumurilor energetice ale unui utilaj de excavare în flux continuu conduce la concluzia că ea poate fi exprimată prin următoarea relație:

E proces = E proces taiere + E proces avans + E proces transport + E proces alte mecanisme

Consumurile energetice aferente altor mecanisme din componența excavatorului sunt practic constante, indiferent de cantitatea excavată.

Celelalte componente ale relației de mai sus sunt puternic dependente de aceasta capacitate, de caracteristicile rocilor excavate și de caracteristicile și starea tehnica a mecanismelor în cauză fiecare cu propria lege de variație, de mare complexitate.

Sistemul se bazează pe măsurari directe și indirecte, cu traductoare inteligente și echipamente de achiziție și control.

Echipamentul este inclus în sistemul informatic și ofera posibilitatea calculului indicilor de utilizare ai excavatorului și reducerii consumului energetic.

Echipamentul inteligent în jurul caruia graviteaza intreg sistemul de estimare și raportare a cantităților de masa excavată și implicit de indicatori de productivitate și de performanța a elementelor taietoare, este echipament cântarire bandă (ECB)

Echipamentul ECB se compune din 4 parti distincte la nivel de blocuri funcționale:

1. traductori de curent și tensiune

2. sistemul digital de achiziție date , stocare și comunicație

3. echipament pentru vizualiare date în timp real la distanta

4. structura de comunicație cu nivelul ierarhic superior

Echipamentul digital realizează produsul dintre valoarea efectivă a tensiunii, valoarea efectiva a curentului și cosinusul defazajului dintre cele două mărimi. Valoarea efectiva a unei mărimi sinusoidale este calculată prin calcul numeric de către procesorul central (80C552, microcontroller pe 8 biți din familia 8051).

Puterea instantantanee este astfel calculată, pentru achiziția de date folosindu-se un convertor analog-numeric rapid pe 12 biți cu un timp de achiziție satisfăcător problemei de rezolvat (în cazul concret timpul de raspuns este de maxim 5 microsecunde per achiziție).

Procesorul central de pe placa de baza, microcontroller pe 8 biți repetă operațiile de inmultire cu o anumită rată de achiziție și cu o anumită rată de calcul.

Procesorul central mai are rol de a filtra numeric mărimile achiziționate .

Se obține astfel prin calcul digitalizat puterea instantanee pe un motor. În mod similar se achiziționeaza date despre puterea instantanee pe celalalt motor (bandă pe care se dorește a fi pus echipamentul poate avea unul sau două motoare) .

În acest fel automatul cunoaste puterile, tensiunile, curenții, defazajele de pe cele două motoare .

S-a constatat experimetoare .

S-a constatat experimental că cuplul motorului este o funcție legată de energia activă consumată intre două cuante de timp foarte apropiate (cateva secunde) sau cu puterea instantanee.

Procesorul de pe placa de bază efectuează nu numai calcule legate de putere ci chiar le stochează într-o miniarhiva în vederea comunicației cu nivele superioare.

. PROIECTAREA ECHIPAMENTELOR HARWARE

II.1.Alegerea configurației hardware

II.1.2 Alegerea microcontrolerului

Din analiza procesului condus au reieșit funcțiile ce trebuie îndeplinite de către echipamentul numeric. Astfel acesta trebuie să achiziționeze două mărimi analogice (tensiune și curent) și o mărime numerică reprezentată de trenul de impulsuri ce sunt furnizate de către traductorul de poziție și viteza, TIRO 1000. De asemenea trebuie să aibă un port de ieșire de tip transmisie serială pentru a se putea realiza transferul de date între placa de achiziție și platforma PC.

S-a mai avut în vedere alegerea unui procesor care să aibă suficientă putere de calcul pentru a putea efectua diferite operații matematice necesare în executarea programului. Datorită faptului că se doreste și o comandă în tensiune prin intermediul unui modulator în durată de impulsuri s-a dorit un circuit integrat care să contina și o implementare hardware (o ieșire specifică) de tip PWM.

II.1.3 Descrierea microcontrolerul 80C552

Un microcontroler care corespune cerințelor stabilite în paragraful anterior este 80C552 produs de către PHILIPS Semiconductors.

Familia 8xC552 este reprezentată de o serie de circuite de 8 biți de înaltă performanță destinate utilizării în aplicații în timp real, cum ar fi automatizări industriale, controlul unor sisteme automate, aparate de măsură și control etc.

Această familie constituie o perfecționare a controlerului 8051, în sensul adăugării de noi periferice, creșterii vitezei de lucru sau a integrării de facilități suplimentare. Setul de instrucțiuni al 8xC552 este compatibil cu cel al lui 8051, în sensul că programele pentru 8051 pot rula și pe 8xC552. Funcție de tipul memoriei ROM interne, cei trei membri ai familiei 8xC552 sunt:

87C552, cu memorie EPROM de 8 kB;

83C552, cu memorie PROM de 8 kB;

80C552, fără memorie ROM internă.

O modificare a familiei 8xC552 față de modelul inițial 8051 constă în adăugarea a două moduri cu consum redus de energie selectabile prin program:

inactiv (IDLE), care lasă în funcțiune numai componentele existente și în 8051 (numărătoarele 0 și 1, memoria RAM, interfața serială asincronă);

oprit (POWER-DOWN), care blochează oscilatorul circuitului, lăsând activă numai memoria RAM.

Controlerul 8xC552 conține:

• unitate centrală de 8 biți;

• 256 octeți de memorie RAM, suprapuși cu 128 octeți de memorie alocați registrelor speciale;

• controler de întreruperi;

• șase porturi de intrări/ieșiri digitale;

• două timere/numărătoare de 16 biți;

• un numărător de 16 biți cu registre de captură și comparație;

• un timer pentru deblocarea sistemului (watchdog);

• un convertor analog/numeric de 10 biți cu 8 intrări;

• două ieșiri de impulsuri modulate în durată (utilizabile pentru convertoare numeric/analogice);

• două interfețe seriale (una asincronă, compatibilă RS-232, cealaltă sincronă, compatibilă I2C).

Structura internă a controlerului 8xC552 este prezentată în figura de mai jos

Fig. II.1. Microcontrolerul 80C552. Schema bloc

II.1.4.Modulatorul de impulsuri în durată (PWM)

Familia 8xC552 conține două modulatoare de impulsuri în durată, codificate PWM0, respectiv PWM1. Impulsurile generate de aceste modulatoare au controlate independent durata și perioada de repetiție. Structura internă a modulatorului de impulsuri al circuitului 8xC552 este prezentat în figura de mai jos

Fig.II.2.Modulator in impulsuri (PWM)-Schema bloc

Frecvența de repetiție pentru ambele modulatoare este stabilită de un prescaler care furnizează frecvența de ceas pentru numărător. Coeficientul de divizare al prescalerului este definit de registrul special PWMP. Perioada de repetiție a modulatorului PWM este dată de relația:

și, pentru un oscilator de 12 MHz semnifică frecvențe de repetiție de la 92 Hz la 23.5 kHz.

Valoarea contorului numărătorul de 8 biți (între 0 și 254) este examinată de două comparatoare comandate de câte un registru special pentru fiecare modulator: PWM0, respectiv PWM1.

Coeficientul de umplere stabilit de cele două registre se determină cu formula:

Această structură este capabilă să asigure celor două ieșiri impulsuri cu coeficienți de umplere între 0 și 1, în incremente de 1/255.

II. 1.5 Modulul analog-numeric

Modulul analogic constă într-un multiplexor analogic cu opt intrări, un registru de aproximații succesive de 10 biți, un comparator, un convertor numeric/analogic și logica de comandă a acestor blocuri. Tensiunea de referință și alimentările sunt asigurate din exterior, pe pini separați.

O conversie durează 50 de cicluri mașină iar semnalul analogic de intrare trebuie să îndeplinească condiția:

0≤AVSS≤VREF– ≤ Semnal ≤VREF+ ≤AVDD ≤+5V, unde AVSS și AVDD reprezintă tensiunile de alimentare analogice iar VREF tensiunile de referință.

Structura funcțională a modulului analogic este prezentată în figura de mai jos

Fig.II.3. Modulul de achizitie marimi analogice

Valoarea numerică a tensiunii analogice convertite este dată de relația:

Este recomandabil că toate tensiunile analogice (AVSS, AVDD și VREF) să fie asigurate de o sursă de alimentare separată.

II.1.6. Interfața serială asincronă

Această interfață serială, cunoscută și sub numele de SIO0, poate transmite și recepționa date simultan, adică este o interfață full duplex. De asemenea, registrul de recepție este bufferat: modulul poate iniția o recepție a unui nou octet chiar dacă octetul anterior nu a fost citit din registrul de recepție. Suplimentar față de interfața serială a circuitelor 8051 are câteva facilități suplimentare:

protecția la erori de încadrare (framing error) prin intermediul bitului de stop;

protecția la erori de paritate, fiind posibilă transmisia bitului de paritate;

are un mod de lucru destinat comunicației multiprocesor.

Interfața serială SIO0 în modul 0

În acest mod interfața este capabilă să transmită sau să recepționeze mesaje de 8 biți (mai întâi bitul mai puțin semnificativ), la o viteză de transmisie egală cu fOSC/12. Datele seriale sunt recepționate sau transmise numai de pinul RXD, TXD fiind folosit pentru semnalul de ceas.

II.2 Placa de achiziție dezvoltată

S-a folosit o placă de cablaje imprimate pe care s-au adăugat componentele necesare. Astfel s-au adăugat memorii EPROM, memorii NVRAM, circuit de tip WATCHDOG, CEAS DE TIMP REAL (RTC72421), o ieșire de tip serial RS232 cu conector DB 9 mama (9 pini), sursă de alimentare (IN 12Vcc/că;Out +5Vcc).

Placa mai include și conectori pentru iesiri/intrari analogice și numerice precum și un afisaj cu Led-uri pentru secvente de test.

Schema bloc a placii dezvoltate este cea din figura următoare

Fig.II.4. Placa de calcul si achizitie.Schema bloc

Alocarea adreselor pentru periferice:

Port paralel de ieșire: 0x40;

Port paralel de intrare: 0x40;

Port semnalizări: 0x50 (jumper JP4 OFF) / 0x40 (jumper JP4 ON);

Afișaj LCD: 0x20 (adresă de bază);

RA16, RA17 (paginare memorie RAM): 0x60;

Watchdog: 0x70;

RTC (ceas de timp real): 0x30(adresă de bază).

Schema de conexiuni este prezentată în figura următoare :

Fig. II.5.Schema de conexiuni

II.3. Electronica de comandă

Datorită faptului că motorul este de dimensiuni medii curenții și tensiunile furnizate la ieșirile analogice ale microcontrolerului nu pot fi suficienți pentru realizarea unui control asupra uneia din cele două mărimi. Din acest motiv se folosesc diferite metode de a alimenta motorul fie prin intermediul unui montaj electric fie un circuit integrat ce poate fi comandat de către microcontroler să furnizeze motorului o tensiune variabilă. Schema de principiu a unui astfel de control este descrisă de figura :

II.3.1.Circuitul integrat L6203

În cazul nostru convertorul de putere este reprezentat de către un circuit integrat de tip L6203 produs de SGS-Thompson Microelectronics. Circuitul integrat este conectat la sursa de tensiune continuă de 17 V realizată. Prin intermediul semnalelor de nivel TTL emise de către microcontroler prin portul PWM circuitul se află în conducție sau nu realizându-se astfel o variație de tip Chopper a tensiunii de alimentare a motorului. Vom folosi în continuare denumirea de Driver pentru un astfel de circuit.

Circuitul integrat este o punte special realizată pentru aplicațiile referitoare la controlul motoarelor și este realizat în tehnologia BCD (combina tranzistoarele izolate DMOS cu CMOS și alte circuite bipolare într-un singur cip). Ieșirea tranzistoarelor de tip DMOS poate opera la tensiuni de pana la 48 V cu o foarte bună eficiență de comutație. Toate intrările logice sunt de tip TTL și CMOS, compatibile cu toate microcontrolerele. Fiecare canal este controlat de o intrare logică separată.

Circuitul integrat permite tensiuni de intrare de pana la 48 V, curenți de maxim 5 A și o frecvență de operare de pana la 100 Khz. De asemena în cazul unei supra încălziri circuitul isi opreste automat funcționarea astfel încât să se evite distrugerea lui.

Schema logică a circuitului este descrisă în figura

II.3.2 Montaj. Circuite integrate. Cablaje

Componenta elctronică descrisă mai sus a fost integrată într-o placă de circuite ce inglobează toate conexiunile si componentele electronice necesare pentru comanda motorului de curent continuu.

Placa de comandă realizază urmatoarele funcții :

Primește la intrare semnalele ce inglobează informațiile de sens

Primește la intrare marimea de comandă în tensiune (semnal PWM)

Realizază o legatura izolată prin optocuploare între semnalele provenite dinspre microcontroler către celelalte componente electronice

Realizează funcții logice care comandă motorul prin intermediul unei punți H.

Principiul de comandă :

Pentru a putea fi realizată o schimbare de sens a motorului, acesta din urmă trebuie alimentat prin intermediul unui montaj de tip Punte, circuit prezentat în schema de mai jos :

Atat timp cat Q1 si Q4 sunt închise iar Q2 si Q3 deschise curentul circulă într-un sens iar motorul are un sens de rotație. Acest sens este schimbat odată cu deschiderea Q1 si Q4 si închiderea Q2 si Q3 . Aceasta punte este realizată de catre circuitul integrat LM6203 descris în paragraful anterior.

Pentru a se realiza toate funcțiile dorite pe placa de comandă dezvoltata s-au mai adaugat urmatoarele componente :

O sursă de 5 V, un bloc de optocuploare pentru izolarea semnalelor, un circuit integrat ce are rolul de a oferi o tensiune stabilă pentru alimentarea acestora, un circuit de tip PLD pentru implementarea unor porți logice si cele două circuite LM6203 pentru realizarea punții. S-au folosit două circuite puse în paralel pentru a se putea lucra cu o intensitate a amperajului de pana la 10 A.

Schema bloc a plăcii dezvoltate este prezentată în figura de mai jos :

Logica Circuitului programabil PLD :

Urmărind logica de funcționare a punții L6203, care are ca semnale de intrare pe En (Enable), In1 si In2 obținem urmatoarele relații :

Deci obținem sistemul de relații :

Corespondenta relațiilor între intrarile ST (Stanga), DR (Dreapta), PWM si ieșirile IN1, IN2, EN este data de tabelul

Modul de comutație al circuitului este descris de diagrama de mai jos

Schemele ce descriu construcția plăcii si plasarea componentelor este prezentată în figurile de mai jos :

Placa circuite de comanda

.PROIECTAREA BLOCULUI DE COMUNICAȚIE ȘI PROTOCOALELOR DE TRANSMISIE DE DATE

Între echipamentul de achiziție de date dezvoltat și platforma PC folosită de operatorul uman trebuie să existe un mod de comunicare în timp real. Cele două dispozitive au fost conectate prin intermediul unei linii seriale de transmitere a datelor. În cazul sistemului de cântarire propus pentru mediul industrial (cariera) comunicația mai este desfașurată și prin intermediul unui sistem radio-modem pe 2,4 Ghz. Datorită faptului că acest sistem este propriu societații miniere vom prezenta doar modul în care se face comunicația intre placa de achiziție și PC (comunicația intre echipament și computer fiind similară doar că este intermediata de radio modem).

3.1 Transmiterea pe linii seriale RS232

Datorită faptului că atât microcontrolerul folosit cât și platforma PC sunt dotate prin construcție cu port de ieșire serială de tip RS 232 s-a ales acest standard de comunicarev serială, dezvoltandu-ne bineinteles propriul protocol de comunicație.

Un protocol standard de comunicație pe linia serială este descris de următoarele patru setari :

Rata Baud (BAUD rate) masoară viteza de comunicație și indică numărul de transferuri de biți pe secundă. De exemplu, 300 baud este o viteză de 300 de biți pe secundă. Când inginerii se referă la un ciclu de ceas, asta inseamnă rata baud, astfel încât dacă protocolul care are o rată baud de 4800, inseamnă că ceasul merge la 4800 de Hz. Asta înseamnă că portul serial eșantionează linia de date la 4800 HZ. Ratele baud specifice liniilor telefonice sunt 14400, 28800 și 33600. Ratele baud mai mari sunt posibile, dar aceste rate reduc distanța la care se pot separa dispozitivele. Se folosesc aceste rate baud înalte pentru comunicația intre dispozitive, unde dispozitivele sunt localizate împreună, precum este cazul tipic cu dispozitivele GPIB.

Biții de date sunt măsura efectivă a biților de date într-o transmisie. Când calculatorul trimite un pachet cu informație, cantitatea de date efectivă poate să nu fie fix 8 biți. Valorile standard pentru pachetele de date sunt 5, 7 și 8 biți. Care dintre setari se alege depinde de tipul de informație transferată. De exemplu, ASCII standard ia valori de la 0 la 127 (7 biți). ASCII extins foloseste 0 pana la 255 (8 biți). Dacă data transferată se referă la un transfer de un singur octet, incluzând și biții de start/stop, biții de date și de paritate. Deoarece numarul biților efectivi depinde de protocolul ales, se poate folosi termenul "pachet" pentru acoperirea tuturor cazurilor.

Biții de stop sunt folosiți pentru semnalizarea sfarșitului comunicației pentru un singur pachet. Valorile tipice sunt 1, 1.5 și 2 biți. Deoarece data este temporizată pe linii și fiecare dispozitiv are ceasul lui, este posibil că două dispozitive să devină ușor desincronizate. De aceea, biții de stop nu numai că indică sfarșitul comunicației, dar și permit calculatoarelor să aibă o toleranța în ceea ce privește viteza ceasurilor. Cu cât sunt folosiți mai multi biți de stop, cu atât mai mare este indulgența în sincronizarea diferitelor ceasuri, dar încetinește rata de transmisie a datelor.

4. Paritatea este o formă simplă de verificare a erorii folosită în comunicația serială. Există 4 tipuri de paritate – para, impara, mark și spatiu. De asemenea se poate să nu se folosească paritatea. Pentru paritatea pară și impară, porturile seriale seteaza bitul de paritate (ultimul bit după biții de date) la o valoare pentru a se asigura că transmisiunea are un număr par sau impar de biți de nivel logic inalt. De exemplu, dacă data este 011, pentru paritatea para, bitul de paritate este 0 pentru a ține numarul de biți de nivel logic inalt par. Dacă paritatea este impara, bitul de paritate este 1, rezultand 3 biți de nivel logic inalt. Paritatea mark și spatiu nu verifica efectiv biții de date, ci doar setează simplu bitul de paritate pe nivel inalt pentru paritate mark și nivel jos pentru paritate spatiu. Acest lucru permite dispozitivului de primire să cunoască starea bitului, astfel incât dispozitivul să determine dacă zgomotul corupe datele sau dacă ceasurile dispozitivelor de transmisie și recepție sunt desincronizate.

3.2 Tipuri de date transmise. Protocol de transmisie.

Intre echipamentul numeric și platforma PC se transmit datele următoare :

Tensiunea măsurată U

Curentul măsurat

Viteza măsurată

CRC (Cyclic Redundancy Check)

Intre Platforma PC și microcontroler sunt transmise următoarele date :

În mod offline

D0 (coeficient al sistemului de reglare),

D1 (coeficient al sistemului de reglare),

D2 (coeficient al sistemului de reglare),

On/Off

Wref (viteza de referință) 

Tr0 (selecție mod de lucru)

Tr1 (selecție mod de lucru)

CRC (Cyclic redundancy check)

În mod continuu

Wref (viteza de referință) 

On/Off

CRC (Cyclic redundancy check)

S-a ales pentru transmitere pachete de date formate din octeti (8 biți). Mărimile fizice sunt de diferite tipuri și valori, din acest motiv fiind necesară și o rescalare a lor.

Astfel valoarea estimată pentru U se incadrează în limitele 0-20 V prin urmare s-a ales reprezentarea acestei mărimi pe lungimea unui octet. Astfel cei 20 V vor fi imparțiți în 256 de pasi (0-255-corespunzatoare reprezentarii pe 8 biți). Rezultă astfel o rezoluție de 0,07 v considerată suficientă .

În același mod se rescalează valoarea curentului estimat a fi în intervalul 0-11 A. Făcând același tip de scalare se obține o rezoluție suficientă de 0,04 A.

Rescalarea valorii vitezei aflată între limitele 0-60 rot/min, are drept rezultat o rezoluție de 0,23 rpm.

În reprezentarea celor 3 coeficienți lucrurile sunt mai complicate datorită faptului că este vorba de mărimi reprezentate pe numere foarte mici de ordinul miimilor și sutimilor. De aceea pentru fiecare din ele s-a ales o reprezentare în virgulă mobilă (FLOAT) care este reprezentată pe 4 octeti. Pentru mărimile de selectie On/Off,Tr0,Tr1 este suficientă o reprezentare pe 1 bit (True or False).

La sfarșitul fiecarui pachet de date s-a ales trimiterea unui octet de control de tipul CRC (Cyclic Redundancy Check). Acesta este calculat de către transmitator la fiecare trimitere de pachet . Daca verificarea CRC-ului sugereaza ca a fost transmisa o informatie eronata pachetul este ignorat.

Prin urmare pachetele de date transmise vor fi de forma următoare :

Microcontroler PC

PC Microcontroler

Trasmisie off-line

Transmisia continuă

Cele două tipuri de tansmisii reprezintă cele două moduri în care microcontrolerul asteaptă informații de la PC. Astfel, înainte ca microcontrolerul să dea comenzi către sistemul reglat el asteaptă primirea parametrilor de inițialeizare. Acest lucru se face în dialogul off-line. Odată ce a primit parametrii și mai mult a primit și comandă de « On » microcontrolerul incepe să execute instrucțiunile din program. În acest mod de funcționare continuu microcontrolerul reactionează la parametrii trimiși de către PC (de exemplu sistemul permite schimbarea vitezei de referință « Wref » în timp real fara o oprire în prealabil a sistemului).

.APLICAȚIE : SISTEM DE REGLARE NUMERICĂ A VITEZEI ȘI POZIȚIEI ÎNTR-O ACȚIONARE CU MOTOR DE CURENT CONTINUU COMANDATĂ CU MIRCOPROCESOR

IV.1 Structura sistemelor de reglare utilizate

IV.1.1 Tipuri de structuri ale sistemelor de reglare automată a vitezei și poziției

Cea mai simplă structură, folosită doar pentru reglarea vitezei, este prezentată în figura următoare

Fig IV.1.Reglarea vitezei.Schema bloc

Notatiile din figură, conform cu cele curent folosite în automatică semnifică

-wv – viteza prescrisă,

-Rv –viteza măsurată (reactia de viteză)

-RG-V –regulator de viteză

-y- mărimea de comandă

-EE- Element de execuție

-Um-mărime de execuție (tensiunea medie aplicată la bornele motorului)

-Ω- Viteza unghiulară a motorului

-EM- elementul de măsură

Pentru a asigura atât reglarea vitezei cât și a poziției sunt necesare două bucle de reglare. Acestea se pot lega în cascadă sau în paralel. O tipologie de reglare în cascadă este prezentată în figura următoare :

Fig.IV.2.Reglarea vitezei si pozitiei.Schema bloc

Regulatoarele folosite uzual sunt :

Proporțional « P », cu funcția de transfer HRG (s)=KR

Integrator « I » , cu funcția de transfer HRG(s)=KR/s

Proporțional integrator « PI »,

Proporțional derivator « PI »,

Proporțional integrator derivator « PID »,

IV.1.2. Schemele bloc funcționale ale sitemelor de reglare automată proiectate

Cele două structuri concret implementate sunt : un sistem de reglare automată a vitezei (SRAN-V) și un sistem de reglare automată numerică a vitezei și poziției(SRAN-VP).

Schemele funcționale ale celor două SRAN sunt prezentate în figurile

Fig.IV.3 Schema functionala sistem de reglare a vitezei respectiv a vitezei si pozitiei

În ambele scheme, procesul (P) este o acționare cu motor de curent continuu (Mcc) comandată în imulsuri de tensiune de către echipamentul de execuție (EE). EE este un chopper comandat de către echipamentul de comandă numeric (ECN), construit în jurul unui microcontroler 8051.

Elementul de măsurare (EM) este un traductor incremental rotativ (TIRO). În cadrul SRAN-V, ECN asigură și funcția de măsurare a vitezei prin incrementarea impulsurilor date de TIRO. În SRAN-VP, ECN prin intermediul aceluiași traductor realizează și o codificare a poziției curente. Această informatie este utilizată de ECN atât ca atare, cât și ca o informatie asupra vitezei curente, proporțională cu diferenta dintre poziții curente din perioade de eșantionare succesive.

Mărimea prescrisă w este furnizată SRAN de către operatorul uman prin intermediul sistemului ierarhic superior (PC).

IV.2.Modelare matematica

IV.2.1. Modelul matematic operational al motorului de curent continuu

Ecuațiile care descriu funcționarea unui motor de curent continuu sunt:

(IV.1)

Aceste ecuații sunt liniare. Aplicând transformata Laplace în condiții inițiale nule se obține modelul matematic operațional

(IV.2)

Ecuația de mișcare a motorului este

(IV.3)

dar

(IV.4)

Aplicând și ecuației (IV.3) transformata Laplace, se obține

(IV.5)

Din (IV.2) și (IV.5) se obține funcția de transfer a procesului

(IV.6)

Vom nota

constanta de timp a motorului și

constanta de timp electrică a motorului

Se obține astfel

(IV.7)

Pentru un tip uzual de motor de curent continuu și se poate aproxima . Se obține în final funcția de transfer

(IV.8)

IV.2.2. Modelul matematic al elementului de execuție (CHOPPER)

Elementul de execuție este un variator de tensiune continuă. Rolul sau este de a alimenta motorul de curent continuu cu impulsuri de tensiune de amplitudine U1 și durata Tc cu frecvența de repetiție T.

Variatorul de tensiune continuă, sau chopperul, se utilizează frecvent la reglarea turației motoarelor de curent continuu, fiind un convertor care transformă o tensiune continuă, aplicată la intrare, în impulsuri dreptunghiulare la ieșire. Valoarea medie a tensiunii de la ieșirea unui chopper se poate modifica intre 0 și cea a tensiunii de alimentare, folosind unul din următoarele principii:

modificarea frecvenței de repetitie a unor impulsuri de durată constantă;

modularea în durată a unor impulsuri de frecvență constantă.

În acest fel este posibil să se efectueze reglajul prin tensiune al turației motoarelor de curent continuu

Schema de principiu a unui astfel de sistem de acționare este prezentată în figura urmatoare

Fig. IV.5. Schema functionala Chopper

În aceasta figura, CS reprezintă un contactor static (CHOPPER), CC circuitul sau de comandă și M indusul motorului de curent continuu.

Inchizând și deschizând contactorul CS, după o secvență repetată periodic, motorul va fi alimentat cu tensiunea medie:

(IV.9)

unde este durata de conectare a contactorului CS, iar T este perioada de repetiție a comenzii. Pentru a asigura continuitatea curentului prin motor, este necesar ca perioada de comandă a contactorului static să fie mult mai mică decât constanta de timp electromagnetică a motorului.

Elementul de execuție este un variator de tensiune continuă. Rolul sau este de a alimenta motorul de curent continuu cu impulsuri de tensiune de amplitudine U1 și durata Tc cu frecvența de repetitie T.

Indiferent de structura de chopper aleasă, valoarea medie a tensiunii de alimentare pentru motor este

(IV.10)

Caracterizarea chopperului din punct de vedere dinamic, în condițiile în care el se comandă prin Tc variabil la T= constant, se face prin funcția de transfer

(IV.11)

IV.2.3. Modelul matematic al traductorului TIRO

În cadrul oricarui sistem automat este necesară să se dispună, la intrare, de valoarea mărimii reglate că mărime de reacție. În acest scop, se utilizează diferite modele de traductoare. Acestea sunt dispozitive ce au rolul de a stabili o corespondență între o mărime de măsurat și o mărime aptă de a fi utilizată de echipamentele de prelucrare a datelor.

Traductorul utilizat în cazul de față este un traductor incremental rotativ optic TIRO 1000. Acest tip de traductor furnizează două trenuri de impulsuri de tip TTL, de frecvența proporțională cu turația, decalate între ele cu un defazaj de , în funcție de sensul de rotație. La o turație completă, lungimea unui tren este de N=1000 impulsuri. Prin urmare, rezoluția în determinarea deplasarii, cu un astfel de traductor este de sexagesimale.

Principiul de funcționare se explica pe baza schițelor și diagramelor din figura de mai jos

Fig. IV.6. Traductorul incvremental TIRO.Figura Piste

Fig. IV.7. Traductorul incvremental TIRO. Schema constructiva

Pe discul D, din material transparent,este depusă o rețea de linii echidistante, care formeaza un sistem de fante opace. Grila fixa G permite accesul la dispozitivele fotocaptoare FC. Semnalele de a ieșirea acestora , variază aproximativ sinusoidal, pentru o miscare aproximativa a discului D.

Prin combinarea lor rezultă semnalele V1-V3 și V2-V4, care sunt formate la niveluri TTL, prin cate un comaparator cu reacție pozitivă. Se obțin astfel două semnale A și B, defazate între ele în funcție de sensul de rotație.

Utilizând mijloace numerice de implementare a regulatoarelor din sistem se subintelege necesitatea alegerii unei perioade de eșantionare în proces.

Turatia măsurată în cadrul unei perioade de eșantionare este de fapt mărimea de reacție doar a pasului următor. Apare, deci, o întârziere egală cu diferența dintre lungimea periadei de eșantionare T și jumatatea intervalului de măsurare Tm , dacă se accepta că valoarea medie a vitezei este atinsă la mijlocul periadei de măsură. Ca urmare, măsurarea este afectata de un timp mort -tm :

(IV.12)

Funcția de transfer a TIRO, considerând viteza unghiulara ca mărime de intrare și numarul de impulsuri contorizate de ECN ca mărime de ieșire este data de relația

(IV.13)

În care Kt (coeficientul de transfer) și tm depind de modul concret de utilizare.

În cazul SRA-V, timpul de măsură TM este egal cu jumatate din perioada de eșantionare T. În acest interval de timp sunt contorizate atât fronturile crescatoare cât și descrescatoare ale impulsurilor sosite de la traductor. Rezultă, deci, o dublare a numărului contorizat față de numarul de impulsuri furnizate de TIRO. În consecință KT are expresia

(IV.14)

Iar funcția de transfer este

(IV.15)

În cazul SRA-VP, măsurarea facându-se pe toată durata perioadei de eșantionare expresia funcției de transfer a traductorului este

(IV.16)

IV.3.Filtrarea numerică a semnalelor

IV.3.1.Considerente teoretice.

Zgomotele care pot afecta semnalele într-un sistem de reglare automată pot proveni de la:

Inducția semnalelor de frecvența industrială datorită vecinațatii între cablurile de forță si cele de masură

Inducția unor impulsuri provenind de la regimurile tranzitorii din circuitele de fortă

Esantionarea cu o frecvență fE în condițiile în care semnalul eșantionat conține componente cu fE > fE/2. Apar zgomote de joasă frecvență (aliasing error) care pot deveni extreme de suparatoare

Pentru eliminarea zgomotelor se pot utiliza două etaje de filtrare. Primul, hardware, trebuie sa atenueze semnalele cu f > fE/2. Al doilea îmbunatățeste performanțele buclei de reglare și depinde de tipul algoritmului de reglare.

VI.3.2.Filtre de ordinul I

Funcția de transfer continuă care se discretizeaza este

Cu metoda dreptunghiului si T-perioada de eșantionare, se obține :

Cu rezultă funcția de transfer a filtrului

Efectul acestui filtru este dat de urmatorul tabel

IV.3.3.Necesitatea filtrării semnalelor

După cum s-a precizat și în subcapitolul precedent, de multe ori semnalele sunt perturbate de zgomote. În cazul sistemului nostru apar probleme de filtrare la achiziționarea mărimilor tensiune, current si viteză, precum și la valoarea erorii sistemului de reglare. Datorită impreciziei sistemului mecanic, a impreciziei sursei de current continuu apar zgomote. Astfel, de exemplu, curentul măsurat când motorul funcționeză în gol variază în jurul valorii de 2,5 A.

IV.3. Discretizarea modelelor matematice ale elementelor de transfer continue

Dintre procedeele de discretizare am utilizat metoda trapezului.

Prin această metoda se asociază unui element de transfer continuu un model matematic discret, aplicând ecuației acestuia o transformare liniară. Procedeul constă în următoarele :

Se integreaza de n ori ecuația elementului de transfer pe intervalul

[t-T,t], folosind următoarea relație de aproximare 

(IV.17)

Se particularizează în rezultatul obținut și se scrie ecuația discretă, inlocuind .

Fie o aplicație a metodei trapezului pentru cazul unui element de transfer rațional, de ordinul I, cu funcția de transfer

(IV.18)

Căreia ii corespunde ecuația diferentială

(IV.19)

Dacă se integrează ecuația utilizand metoda trapezului de discretizare se obține

(IV.20)

În acest fel, pentru funcția de transfer, ARN corespunzător obținut prin discretizare este

(IV.21)

Unde :

este mărimea de acționare (eroarea ; abaterea),

y-mărimea de comandă

IV.4. Proiectarea concreta a SRA-V

Pentru stabilirea perioadei de eșantionare T, se pornește de la determinarea constantelor Tm, și Te din Hp(s) (modelul matematic al motorului de curent continuu). Motorul folosit este de tip EP 400 (ANA IMEP Pitesti) având excitația cu magnet permanent și următoarele date de catalog.

Un=12 V, In= 3,5 A, Mn= 8.33 Kgf.cm, nn=2160, Li=8.5 mH, Ri=1,8 Ohm

Momentul de inerție al motorului este

8.5∙10-4 Kg∙m2

Constanta mecanică a motorului

Constantele de timp au următoarele valori

Cu aceste valori funcția de transfer Hp(s) a motorului utilizat este

Din calcule rezultă că valoarea cea mai semnificativă o are constanta Tm a motorului. Ca urmare, perioada de eșantionare trebuie să satisfacă condiția

Se adoptă T=0,01 s=10 ms iar timpul de măsură se alege ms.

Pentru a asigura o eroare nulă în regim staționar, se adopta o reglare de tip PI, corespunzătoare unui regulator cvasicontinuu cu funcția de transfer

(4.22)

Constanta de timp a regulatorului Ti se alege egală cu cea mai mare constantă de timp a procesului

Ti=Tm=0,15 s

S-a ales Kv=1,18·10-4 s

ARNC se determină prin discretizarea, cu ajutorul metodei trapezului a legii de reglare de tip PI, identificată cu ecuația (IV.18) în care

Folosind formulele de calcul  (IV.21) se obține forma ARNC-V :

IV.5. Proiectarea concreta a sistemului de reglare a vitezei si pozitiei.Reglare in cascada

SRA in cascada asigura performante superioare SRA conventionale, prin compensarea mai buna a perturbatiilor si reducerea inertiei pe care o prezinta procesul, in raport cu marimea de comanda, deci micsorarea timpului de reglare.

SRA-VP prezentat se incadreaza in acest tip de structura. Bucla de viteza este o bucla de reglare interna (auxiliara), iar bucla de pozitie este bucla principala.

Sistemul de reglare in cascada proiectat va avea structura figurii de mai jos

In cazul buclei interne de viteza, Algoritmul numeric de control este identic cu cel stabilit pentr SRA-V. :

Pentru regulatorul de pozitie se poate scrie :

Informatia de viteza se obtine din cea de pozitie :

Rezulta :

Se obtine astfel un ARN de ordinul 2 de forma :

In acest ARN,coeficientii au valorile :

. PROIECTAREA PLATFORMEI SOFTWARE

V.1. Proiectarea platformei PC. Functii si solutii implementate

In proiectarea platformei software pentru PC s-a avut in vedere realizarea unei aplicatii complexe care sa functioneze asemeni unei interfate grafice existente intr-o aplicatie de tip SCADA.

Sistemele SCADA ("Supervisory Control And Data Acquisition") s-au dezvoltat ca o tehnologie complexa ce include atat echipamente hardware cat si echipamente software intr-un sistem integrat. Dupa cum sugereaza si numele (SCADA-Sistem de control si achizitii de date) aplicatia doreste a realiza un control si o prelucrare complexa a datelor achizitionate.

Achizitia datelor si echipamentele hardware au fost descrise in paragrafele si capitolelor anterioare, astfel incat in acest capitol vom descrie platforma software.

Rolul principal al acestei platforme este de a se constitui intr-o aplicatie de tip GUI (Graphial User Inteface), adica a unei interfate grafice care sa-i permita operatorului uman sa vizualizeze date din procesul condus precum si sa ia masuri de control precum si sa furnizeze comenzi catre instalatia tehnologica.

Un alt rol al software-ului dezvoltat este de a ingloba in structura sa algoritmi si functii de reglare ce au rol de a controla diferite evenimente ce au loc in instalatia tehnologica.

Nu in ultimul rand aplicatia mai are rolul si de a constitui o baza de date cu diferite date de proces, diferite actiuni, alarme si alte informatii ce pot fi apoi prelucrate, interogate si afisate.

Toate aceste solutii implementate fac din sistemul nostru o aplicatie complexa ce poate fi descrisa foarte bine de denumirea generica de “Dispecer” (DISPÉCER ~i m. Slujbaș sau sistem automat, care urmărește și reglementează în permanență desfășurarea unui proces (tehnic sau de producție) /<engl., fr. Dispatcher –DEX’98).

V.2. Alegerea mediului de programare

Pentru programare s-a folosit mediul Microsoft Visual Studio .NET.

.NET este o platforma software, realizata de Microsoft, destinata dezvoltarii de aplicatii. Cele mai importante caracteristici ale acestei platforme sunt urmatoarele:

Programatorii au la dispozitie o serie de limbaje de programare de nivel înalt din care pot alege.

Pot fi dezvoltate o varietate larga de aplicatii, de la programe pentru desktop pâna la aplicatii pentru dispozitive mobile, aplicatii si servicii web sau servicii Windows, de la programe izolate si pâna la sisteme distribuite de dimensiuni enorme.

Mediul de executie este strict controlat de un motor de executie, care ofera o serie de facilitati ce ridica mult nivelul de calitate al aplicatiilor (managementul automat al memoriei si securitatea fiind primele doua care ies în evidenta).

Datorita flexibilitatii majore, mediul permite realizarea unei varietati largi de aplicatii folosind concepte orientate pe obiecte. Librariile de clase grupate în .NET Framework, împreuna cu extensiile care le pot fi aduse si posibilitatea de a le utiliza pe toate dintr-un mediu unitar, ca de exemplu Visual Studio, permit crearea de aplicatii într-o maniera consistenta, indiferent de natura proiectului dezvoltat.

Platforma .NET face posibile doua scenarii foarte importante pentru dezvoltatori: programarea orientata pe componente si arhitecturile orientate pe servicii.

Programarea orientata pe componente duce notiunea de programare pe obiecte (OOP) cu un pas mai departe. Pentru toate componentele utilizate, fie ele vizuale sau non-vizuale, si indiferent de tipul aplicatiei în care sunt folosite, modul de dezvoltare este de obicei acelasi – functiile unor componente mai simple sunt folosite pentru a dezvolta componente si sisteme mai complexe. Aceasta consistenta se traduce de obicei în viteza mai mare de dezvoltare, în reutilizarea eficienta a codului si în calitatea sporita a aplicatiilor.

V.3. Interfata grafica

S-a realizat sub forma unui panou de control ce grupeaza mai multe TAB-uri si mai multe sectiuni. El include in principal butoane (de tip- selectie, boolean on/off, de tip potentiometru), indicatoare de afisare a parametrilor de functionare a instalatiei (de tip ceas indicator,turometru,etc ), led-uri de semnalizare, grafice de evaluare si interpretare precum si o sectiune de elaborare rapoarte si interogare baza de date.

La deschiderea aplicatiei programul se deschide in TAB-ul de setari al comunicatiei de date.

Fig. V.1. Captura ecran setari seriale

Firesc, inainte de a se putea folosi de functiile de dispecerat programul trebuie sa fie conectat la comunicatia seriala. In aceasta fereastra utilizatorul seteaza protocolul de transmitere pe seriala. Selecteaza portul ( COM1, COM2, etc), baud rate-ul, Timeout (in milisecunde-cat timp asteapta seriala sa primeasca un caracter).

Dupa cum s-a descris in sectiunea “Protocoale de transmisie” datele transmise au fost rescalate pentru a se obtine o rezolutie mai buna. Intr-unele din text-box-uri utilizatorul seteaza parametrii de scalare.

Odata butonul Conecteaza apasat utilizatorul a stabilit conexiunea intre PC si UC-Unitatea de calcul (Microcontroler).

Panoul princpal este TAB-ul denumit Panou de control. Interfata este prezentata in screenshot-ul de mai jos:

Fig. V.2. Captura ecran Panou principal de control

Utilizatorul are la dispozitie mai multe grupe de indicatoare si butoane. In partea de sus au fost adaugate trei grafice pentru a vizualiza variatia marimilor din proces in timp. Pentru o mai buna vizualizare, s-au mai adaugat si indicatoare de diferite tipuri (turometru-pentru viteza, si afisoare de tip “analogic” pentru curent si tensiune):

.

Fig. V.3. Captura ecran Bloc de afisare

Tot in panoul de control se gasesc si butoanele de selectie ale diferitelor moduri de functionare.

Fig. V.4. Capturi ecran. Butoane de control

Coeficientii sistemului de reglare (parametrii legii PI,PID, coeficientul filtrului numeric de ordinul 1) sunt selectabili in panoul de Setari coeficienti

Fig. V.5. Captura ecran Setari coeficienti

Tot in sectiunea Panoului de control s-a adaugat spre vizualizare si indicatoare de depasire a nivelului alarmelor. Aici operatorul uman are posibilitatea de a vizualiza grafic atat nivelul valorii in functie de nivelul de alarmare cat si un indicator luminos ce-si schimba culoarea din verde in rosu odata cu atingerea nivelului de alarmare.

Aceste niveluri de alarme sunt setate in prealabil in goup-box-ul Setari niveluri

alarme.

Fig. V.6. Captura ecran Nivele alarmare

Fig. V.7. Captura ecran Setari Nivele alarmare si Timpi de reactie moduri

In aceasta fereastra operatorul alege nivelurile de alarmare cat si intervale de timp in care sistemul reactioneaza intr-un anumit mod (MOD1,MOD2,MOD3 setate in prealabil).

Daca nivelul de alarma a fost atins, sistemul deschide o fereastra de tip POP-UP in care ii prezinta operatorului modalitatile de a reactiona la alarma : Ori o ignora, prin apasarea unui buton ori lasa sistemul sa actioneze intr-un anumit mod presetat.

Fig. V.8. Captura ecran Fereastra de alarmare

Exista un ceas de timp care se decrementeaza. Conform timpului presetat in TAB-ul setari alarme sistemul reactioneaza dupa trecerea unui interval de timp prin aplicarea modului 1, apoi urmatorul si in final va opri sistemul daca alarma tot persista.

In fine, ultimul TAB este cel destinat bazei de date. In acest tab, utilizatorul poate alege un interval de tipul zile/ore si un eveniment dupa care sistemul va ineroga baza de date. De exemplu operatorul poate alege un interval de timp in care sa i se arate din baza de date evenimentele de tip depasire alarma. Analog, sistemul inregistreaza in baza de date evenimentele de tip aplicare comanda, setari alarme, puteri masurate, curent, tensiuni,viteze la diferite momente de timp.

Fig. V.9. Captura ecran Baza de datee

V.4. Functii implementate

Functiile realizate de platforma PC sunt

Achizitioneaza datele de pe comunicarea seriala

Prelucreaza datele de pe comunicatia seriala

Afiseaza datele primite

Transmite coeficienti si parametrii catre microcontroler

Stabileste rutine de reactie la diferite evenimente aparute in instalatie

Efectueaza calculul pentru estimarea cantitatii de material transportat

Construieste o baza de date

Vom descrie algoritmul de estimare a cantitatii de material transportat

Principiul de estimare :

Echipamentul de Estimare Cantitate Cărbune Excavat se bazeaza pe urmatoarele consideratii:

Cantitatea de Cărbune Excavata este proportionala cu energia consumata de motoarele de angrenare banda;

Precizia de estimare este afectata de pierderile datorate frecarilor, uzurii benzii si rolelor, altor elemente;

Masurarea pierderilor trebuie sa se faca periodic, la intervale de timp mici, de cate ori se porneste utilajul si sa duca la calibrari automate;

Analiza structurii consumurilor energetice ale unui utilaj de excavare in flux continuu conduce la concluzia ca ea poate fi exprimata prin urmatoarea relatie:

E proces = E proces taiere + E proces avans + E proces transport + E proces alte mecanisme

Prin urmare sistemul nostru de calcul primeste ca marimi de intrare date de tipul curent si tensiune iar pe baza acestora efectueaza o operatiune de calcul.

In cazul nostru puterea consumata de catre motorul de curent continuu este data de relatia

P=I∙U

Intr-un regim nestationar oarecare daca un element din circuit are la un moment dat de timp u(t)=u si un curent i(t)=i atunci produsul

P=u∙i

se numeste puterea instantanee absorbita de receptor.

Energia se determina ca integrala in timp a valorii puterilor:

W=P(t2-t1)=UI(t2-t1)

Deci putem determina cantitatea de energie consumata pentru trasportul materialului dintr-o relatie de calcul in care Etotala(Tk) este cunoascuta iar Eavans banda(Tk) este aproximativ constanta. Aceasta energie este determinata prin aplicarea unei proceduri de calibrare prin calcularea ei la functionarea benzii descarcate. Desigur, la acest calcul avandu-se in vedere ca se lucreaza cu ordine de marimi foarte mari (tone de material) si nu se doreste o precizie desavarsita s-au neglijat anumite considerente ce afecteaza procesul de estimare (de exemplu factorul de crestere al coeficientilor de frecare nu este liniar).

Urmatorul principiu aplicat este ca intre energia consumata de motor si cantitatea de carbune transportata exista o relatie de proportionalitate. Astfel, prin deducerea experimentala a unui coeficient µ se poate deduce urmatoarea relatie de calcul

Cantitatea de material C este data de relatia

C=µ∙Etransport material

V.5. Proiectarea software-ului microcontrolerului

Functii realizate de catre Unitatea de calclul

Placa dezvoltata in jurul microcontrolerului (vom folosi denumirea de UC- unitate de calcul ) indeplineste urmatoarele functii

Achizitioneaza marimile analogice si numerice din proces

Prelucreaza aceste valori sub o forma numerica pentru a putea fi folosite de catre echipamentele digitale

Transmite la PC valorile achizitionate

Primeste de la PC diferite comenzi

Aplica reglarea ce necesita o reactie foarte rapida (am folosit un timp de esantionare de 10 ms )

Pentru programarea functiilor realizate de catre microcontroler s-a folosit mediul de dezvoltare IDE Keil μVision2 produs de catre KEIL Software

. μVision2 este un mediu de dezvoltare integrat (IDE-Integrated

Development Environment) cu ajutorul caruia se poate implementa întregul ciclu de dezvoltare a unei aplicatii software (sau proiect) pentru un microcontroler din familia

8051.

Avand in vedere ca subrutinele de calcul ale sistemului de reglare sunt de o complexitate medie de implementandu-se doar functii recurente ce au fost prezentate in Capitolul II, in paragrafele urmatoare vom descrie portiunile de program ce descriu modul de achizitie al marimilor analogice si a celor numerice, precum si modul de setare al transmisiei seriale. Portiunile de program sunt surse de cod scris in limbajul de programare C.

V.4.1. Subrutina achizitie marimi numerice

In cazul nostru marimea numerica este data de trenul de impulsuri furnizat de traductorul de viteza TIRO. Vom prezenta subrutina de estimare a vitezei motorului prin esantionarea trenului de impulsuri cu o frecventa de 10 ms. Formula de calcul este furnizata de ecuatia : ?????. Tot in aceasta prtiune de program vom exemplifica si setarea transmisiei seriale.

#include <stdio.h>

#include <reg52.h>

#include <absacc.h>

#include <string.h>

#include <ctype.h>

unsigned int contor,contor_old;

unsigned char viteza;

unsigned long i;

// **********************************************************

// * RUTINA INTR. EXTERNA 0 *

// **********************************************************

void intext0(void) interrupt 0

{

contor++;

}

// **********************************************************

// * RUTINA INTR. OVERFLOW. T0 *

// **********************************************************

void intovt1(void) interrupt 1

{

TL0 = 0xE4; //subrutina calcul viteza (vezi ???)

TH0 = 0xBE;

contor_old = contor;

contor = 0;

contor_old = 6 * contor_old;

viteza = contor_old / 55;

}

// **********************************************************

// * PROGRAM PRINCIPAL *

// **********************************************************

void main(void){

//setare seriala

SCON = 0x5A;

TMOD = 0x20;

TH1 = 0xF5;

PCON = 0x80;

TR1 = 1;

RI = 0;

TI = 0;

contor = 0;

contor_old = 0;

//setare timer 0

TL0 = 0xE4;

TH0 = 0xBE;

TMOD &= 0xF0;

TMOD |= 0x01;

//activare intreruperi

IT0 = 1;

ET0 = 1;

EX0 = 1;

EA = 1;

TR0 = 1;

while(1)

{

XBYTE[0x50] = 255;

XBYTE[0X40] = 255;

SBUF = viteza;

while (!TI){};

TI = 0;

XBYTE[0x50] = 0;

XBYTE[0X40] = 0;

for (i=0;i<5000;i++);

}

}

V.4.2. Programul achizitie marimi analogice

Marimile analogice pe care le vom achizitiona sunt tensiunea si curentul. Subprogramele care efectueaza aceasta operatiune sunt similare cu cel descris de codul sursa de mai jos :

#include <reg552.h>

void send(void);

void setare_seriala(void);

unsigned char car;

void main(void) {

//setare sriala

S0CON = 0x5A;

TMOD = 0x20;

TH1 = 0xF5;

PCON = 0x80;

TR1 = 1;

RI = 0;

TI = 0;

//setare timer0

TL0 = 0xE4;

TH0 = 0xBE;

TMOD &= 0xF0;

TMOD |= 0x01;

ADCON = (ADCON & 0xF8) | 0x00; /* setare canal analogic 0 */

ADCON |= 0x08; /* start achizitie */

EAD=1; //*activare intrerupere sfarsit conversie analogica*/

EA=1; //*activare globala intreruperi*/

while(1) {}

}

void adc_int() interrupt 10 { // rutina intrerupere achizitie analogica

car=ADCH;

send();

ADCON&=0xef;

ADCON = (ADCON & 0xF8) | 0x00;

ADCON |= 0x08; /* start achizitie */

}

void send() { //transmisie seriala

S0BUF=car;

while(!TI);

TI=0;

. PLATFORMA ȘI MACHETA DE LABORATOR PENTRU SIMULARE

VI.1. Descrierea echipamentelor

Macheta de la laborator realizată are drept scop implementarea concretă într-un echipament fizic realizat a principiilor și metodelor folosite la realizarea Echipamentului de Cantarire Bandă descris în capitolele anterioare. Instalația are scop didactic, din acest motiv anumite probleme și reglaje subtile necesare unei performanțe ridicate au fost neglijate, punându-se accentul pe implementarea unor principii teoretice studiate și cunoscute. Din acest motiv, macheta realizată presupune și experimentarea unor funcții ce nu sunt prezente în echipamentul industrial.

Macheta de laborator este compusa dintr-o instalație mecanica, un echipament numeric de control (achiziție, reglare), o sursă de curent continuu și un calculator PC.

Instalația mecanica se doreste a fi o realizare aproximativa a unei benzi transportoare reale. S-a folosit un cadru metalic ce sustine patru tamburi, dintre care unul de angrenare al benzii. Pentru usurarea calculelor și evitarea unor probleme complexe de contrucție s-a folosit pentru angrenare un motor de curent continuu cu tensiunea nominala de 12 V de tip EP 400 (vezi doc.tehnica), spre deosebire de instalația reală unde benzile transportoare sunt angrenate de motoare trifazice de 16 Kw. Pentru achiziționarea de date privitoare la viteza unghiulara a motorului s-a folosit un traductor de turație (și poziție) de tip Tiro 1000. Acesta este legat sub raportul 1 : 1 cu axul motorului printr-o imbinare mecanica a axurilor. S-a avut în vedere o cuplare elastica a celor două astfel incat să nu fie introduse anumite descentrari în axul motorului datorat necoliniaritatii legarii axurilor. Traductorul de turație este de fapt un dispozitiv electro-optic, compus dintr-un disc prevăzut cu fante transparente și opace alternative și un ansamblu de fotodiode ce transformă în impulsuri electrice alternanta celor două zone. Astfel pentru o rotatie completă a axului taductorului, acesta scoate la ieșire un tren de 1000 impulsuri. Prin contorizarea acestor impulsuri de către unitatea centrală (placa de achiziție) se obține o valoare exactă a vitezei și poziției unghiulare. Modelul matematic și detaliile tehnice constructive amanuntite au fost descrise în capitolele precedente.

Echipamentul numeric

Este dezvoltat în jurul unui micocontroler Philips 80c552. Echipamentul este similar cu cel folosit în modulul ECB însă a fost programat să efectueze alte funcții suplimentare

Sursa de curent continuu

S-a realizat o sursă de transformare a tensiunii alternative 220 V în tensiune continuă 20 V și 15 A curent maxim, necesară pentru alimentarea motorului de angrenare.

Circuite de comanda

Având în vedere că se dorește și o reglare a turației motorului prin folosirea tensiunii ca mărime de comandă s-a folosit și un circuit integrat de tip Chopper construit în tehnologie CMOS (vezi Ml6203).

Platforma Pc

S-a folosit o platforma PC pentru a se realiza și a se experimenta o transmisie serială de date între echipamentul numeric de conducere (reglare) și pentru a se realiza o interfață grafica pentru operatorul uman. Pc-ul are și rol de sistem ierarhic superior prin funcțiile și comenzile ce le transmite către echipamentul numeric cât și pentru stocarea și realizarea raportarilor către baza de date..

Privita in ansamblu, macheta realizeaza sistemul din figura urmatoare :

VI.2.Funcțiile realizate de către macheta de laborator.

Macheta de laborator privită în ansamblu realizează un sistem de conducere, reglare și monitorizare a unei instalații de tip transport pe bandă. Din punct de vedere didactic are rolul de a explica modul general de realizare a unei instalații de automatizare avându-se în vedere toate elementele ce compun un astfel de echipament. Astfel se accentueaza necesitatea studiului instalației tehnologice necesar a fi automatizată, elaborarea modelelor matematice aferente, necesitatea alegerii unui echipament care să indeplineasca funcția de reglare, necesitatea stabilirii legilor de reglare necesar a fi implementate precum și înglobarea tuturor acestor considerente într-un sistem automatizat complet.

În mod concret, studentul are la dispoziție modalitatea de elaborare teoretică a sistemului (inclusiv problemele ce apar în decursul aestei operații (vezi cap precedente)), precum și o implementare practică. Platforma PC înglobează un modul grafic de tip GUI (Graphical User Interface – interfață grafică pentru utilizator) ce-i permite să aleaga și să vizualizeze diferite moduri de control al instalației prin transmiterea de comenzi dinspre platformă către echipament, precum și să vizualizeze și să evalueze parametrii de funcționare a instalației în diferite moduri de funcționare.

Utilizatorul are posibilitatea să selecteze unul din cele trei moduri diferite de lucru ale echipamentului. Astfel sistemul poate indeplini funcția de estimare a cantității de material transportată pe bandă, funcția de control al deplasării benzii în stânga sau în dreapta cu o anumită distantă dată sau în modul de regulator de turație al motorului (viteza de deplasare a benzii). Aceasta funcție permite prin selecția corespunzatoare a parametrilor din consolă să se obțina legi de reglare de tip PI ce sunt apoi executate de către microcontroler asupra instalației tehnologice.

Pentru modul de cantarire a cantității de material transportat s-a ales, din motive ce țin de incomoditatea incarcarii benzii cu material, să se simuleze cuplul rezistiv determinat de manipularea materialului pe bandă cu o frână mecanică . Astfel dacă se doreste încarcarea benzii se efectuează o activare a franei mecanice în diferite pozitii.

După efectuarea unei operații de orice tip, utilizatorul are la dispoziție într-un tab diferit o secțiune de jurnal (baza de date) ce monitorizează parametrii, care poate fi interogata și se pot obține diferite rapoarte.

. SIMULAREA UNUI SISTEM ASEMANATOR FOLOSIND PACHETUL DE PROGRAME MATLAB SI SIMULINK

IV.1. Simularea unui regulator PI

Pentru o mai bună ințelegere, vizualizare și comparare a modelului teoretic de automatizare cu modelul real supus perturbațiilor s-a creat un model de simulare folosindu-se platformele Matlab și Simulink.

S-a folosit o simulare a sistemului nostru, in acest mod putandu-se determina parametrii optimi folositi in sistemul de reglare.Am folosit un regulator de tip PI pentru reglarea vitezei, functia de transfer a instalatiei tehnologice fiind cea determinata in paragrafele anterioare. Pentru simularea cat mai aproape de realitate a sistemului am folosit și o marime perturbatoare, ce semnifica eventuala variatie de sarcina aplicata motorului (fie prin incarcare, fie prin aparitia unor frecari neprevazute).

Schema bloc este prezentata mai jos :

S-a ales ca intrare și ca perturbatie o marime de tip treapta. Regulatorul a fost parametrizat cu coeficientii implementati și in sistemul real pentru a se verifica reactia teoretica a sistemului.

In urma simularii s-a obtinut urmatoarea comportare:

Cu albastru a fost reprezentata marimea de referinta, cu mov perturbatia iar cu galben ieșirea sistemului. Se observa ca și in pezenta perturbatiei sistemul actioneaza corect ieșirea fiind adusa la valoarea dorita.

Valoarea comenzii poate fi urmarita pe graficul urmator:

Blocul de tip regulator PID are forma de mai jos :

O alta modalitate de a simula un regulator de tip PID, de data asta folosindu-se și un program Matlab precum și o schema Simulink este prezentata mai jos :

S-au obtinut graficele urmatoare :

Se observa influenta perturbatiilor in valoarea comenzii. Sistemul realizeaza insa o reglare exacta a marimii de ieșire conform evolutiei dorite.

Programul Matlab care descrie functia PID+Filtrarea :

function u=pid(x)

global Tpid Ts Tf t0 t1 t2 tf k

global sp ek uk uk_1 yk yk_1 vk vk_1 co_pv

% Filtru digital si control PID

% CO-comand Output-marimea de comanda

t=x(6); % Citeste timpul

g=10; % seteaza gain-ul

x(1)=x(1)/g; % seteaza PV (iesirea)

x(2)=x(2)/g; % seteaza SP (SET_point-referinta)

if t==0

k=0;

Tpid=1; % timpul buclei PID

Ts=1; % Perioada de esantionare pentru CO and PV

t0=0;

t1=0;

t2=0;

co_pv=[];

uk=x(8); % Initializare CO

yk=x(1); % Initializare PV

sp=x(2); % Initializare SP

ek=sp-yk;

Tf=0.1; % Constanta de timp a filtrului

tf=200; % Durata simularii

% Filtrarea yk

else

T0=t-t0;

yk=yk*Tf/(Tf+T0)+x(1)*T0/(Tf+T0);

t0=t;

end

% Sfarsitul opertaiei de filtrare

% Yk filtrat va fi folosit pentru

%(1)Calculul PID

%(2)acordarea controlerului PID

% The filtered yk will be used to

% Inceputul rutinei de calcul PID

if t-t1>=Tpid | x(2)~=sp %La fiecare Tpid sec calculeaza noua valoare CO

sp=x(2);

T=t-t1;

if T>0.0001 %Evita impartirea cu T=0

if x(7)==1 & k>=3 % Calcul PID

Kp=x(3);

Ki=x(4);

Kd=x(5);

ek=sp-yk;

vk=(yk-yk_1)/T;

ak=(vk-vk_1)/T;

Du=(Ki*ek-Kp*vk-Kd*ak)*T;

uk=uk_1+Du;

else

if k>=1 vk=(yk-yk_1)/T; end

if k>=2 ak=(vk-vk_1)/T; end

uk=x(8); % foloseste valoarea manuala uk – x(8)

k=k+1;

end

end

if uk>5 uk=5;end % uk trebuie sa fie <=limita superioara

if uk<-5 uk=-5;end % uk trebuie sa fie >= limita inferioara

if t+Tpid>=tf % Inaintea sfarsitului simularii, salveaza co si pv

save co_pv.txt co_pv -ascii

end

% Afiseaza rezultatele si reinoieste t1, yk_1, vk_1, uk_1

fprintf('time=%5.2f setpoint=%5.2f pv=%5.2f co=%5.2f\n',t,x(2),yk,uk)

t1=t;yk_1=yk;vk_1=vk;uk_1=uk;

end

% Sfarsitul PID

% Esantioneaza CO si PV la fiecare Ts secunde

if t-t2>=Ts

co_pv=[co_pv;uk yk]; %La fiecare Ts sec esantineaza co si pv odata

t2=t; % reinnoieste t2

end

u=uk;

IV.1.Simularea unui filtru numeric de ordinul 1

In software-ul microcontrolului este realizata o filtrare a semnalelor prin intermediul unor filtre de ordinul 1. Descrierea matematica a acestora a fost prezentata in capitolele precedente, insa pentru o mai buna descriere a modului de functionare a fost simulata o filtrare și s-au obtinut diverse comportari in functie de variatia coeficientului de filtrare.

Am folosit o schema bloc in care intrarea este reprezentata de un șir de numere naturale ce simuleaza un semnal cu o variatie aleasa. Semnalul simulat este trecut apoi prin filtre de ordinul I ce au fost parametrizati cu diferiti coeficienti.

Se observa ca pentru diferite valori ale oeficientilor, filtrarea are un efect neglijabil, un efect moderat sau un efect puternic. Se poate observa insa și efectul nedorit al unei filtrari prea puternice, concretizat intr-o deformare semnificativa a formei semnalului, fapt ce poate insemna si pierderea semnificatiei acestuia. Semnalul rosu reprezinta semnalul de intrare iar cele colorate iesirile de la cele trei filtre

-albastru -Filtrul cu coeficientul 0.1 (efect foarte puternic);

-mov -Filtrul cu coeficientul 0.33 (efect moderat);

-galben -Filtrul cu coeficientul 1 (efect neglijabil);

BIBLIOGRAFIE

Mihai,Dan ;Constantinescu Catalin " Echipamente numerice pentru instalatii electromecanice "-Reprografia Universitatii din Craiova-1998

Calin,s -Reglarea numerica a proceselor tehnologice-Editura tehnica Bucuresti-1984

Dumitrache, I.;Calin, S. ;Botan,C. ;Nitu,S.  Automatizari si echipamente Electronice –Editura didactica si pedagogica-1982

Shinskey,F.,G.,-« Practica sistemelor de reglare automata-Editura tehnica-1969

Calin, S. ; Belea, C.-Sisteme automate complexe-Editura tehnica-1973

BOGDANOV, IVAN – Microprocesorul in comanda actionarilor electrice-Editura Facla-1985

Marin, Constantin ; «Structuri si legi de reglare automata », Editura Sitech, 2003

Marin, Constantin ; «Sisteme discrete in timp ».Curs…

Vanatorul,Matei-« « Conducerea automata a proceselor industriale-Editura Universitaria 2003

Manolea,Gheorghe-Actionari electromecanice-EdituraUniversitaria

Bobasu, Eugen Conducerea automata a proceselor electrice Curs

Tal,J Motion Montrol By Microprocessors Galil Motion Control,1990

Similar Posts