Asist.univ.dr.ing. Florin Stîngă Februarie , 201 6 CRAIOVA UNIVERSITATEA DIN CRAIOVA FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI ELECTRONICĂ… [600306]
UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI ELECTRONICĂ
DEPARTAMENTUL DE AUTOMATICĂ, ELECTRONICĂ ȘI
MECATRONICĂ
PROIECT DE DIPLOMĂ
Cioablă Cătălin – Ionuț
COORDONATOR ȘTIINȚIFIC
Asist.univ.dr.ing. Florin Stîngă
Februarie , 201 6
CRAIOVA
UNIVERSITATEA DIN CRAIOVA
FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI
ELECTRONICĂ
DEPARTAMENTUL DE AUTOMATICĂ, ELECTRONICĂ ȘI
MECATRONICĂ
Controlul în timp real al unei instalaț ii Quanser utiliz ând placa dsPIC PRO4
Cioablă Cătălin – Ionuț
COORDONATOR ȘTIINȚIFIC
Asist.univ.dr.ing. Florin Stângă
Septembrie, 2015
CRAIOVA
“Unde o școală se ivește, pământul se -mbogățește. „
Proverb popular
DECLARAȚIE DE ORIGINALITATE
Subsemnatul Cio ablă Cătălin – Ionuț , student: [anonimizat], Calculatoare și Electronică a Universității din Craiova, certific prin
prezenta că am luat la cunoștință de cele prezentat e mai jos și că îmi asum, în acest context, originalitatea
proiectului meu de licență:
cu titlul Controlul în timp real al unei instalații Quanser utilizând placa dsPIC PRO4 ,
coordonată de Asist.univ.dr.ing. Florin Stângă,
prezentată în sesiunea Septembr ie, 2015
La elaborarea proiectului de licență, se consideră plagiat una dintre următoarele acțiuni:
reproducerea exactă a cuvintelor unui alt autor, dintr -o altă lucrare, în limba română sau prin
traducere dintr -o altă limbă, dacă se omit ghilimele și referința precisă,
redarea cu alte cuvinte, reformularea prin cuvinte proprii sau rezumarea ideilor din alte lucrări,
dacă nu se indică sursa bibliografică,
prezentarea unor date experimentale obținute sau a unor aplicații realizate de alți autori fără
menționarea corectă a acestor surse,
însușirea totală sau parțială a unei lucrări în care regulile de ma i sus sunt respectate, dar care are
alt autor.
Pentru evitarea acestor situații neplăcute se recomandă:
plasarea între ghilimele a citatelor directe și indicarea referinței într -o listă corespunzătoare la
sfărșitul lucrării,
indicarea în text a reformul ării unei idei, opinii sau teorii și corespunzător în lista de referințe a
sursei originale de la care s -a făcut preluarea,
precizarea sursei de la care s -au preluat date experimentale, descrieri tehnice, figuri, imagini,
statistici, tabele et caetera,
precizarea referințelor poate fi omisă dacă se folosesc informații sau teorii arhicunoscute, a căror
paternitate este unanim cunoscută și acceptată.
Data, Semnătura candidat: [anonimizat],
UNIVERSITATEA DIN CRAIOVA
Facultatea de Automatică, Calc ulatoare și Electronică
Departamentul de Automatică, Electronică și Mecatronică
Aprobat la data de
…………………
Șef de departament,
Prof. dr. ing.
Emil PETRE
PROIECTUL DE DIPLOMĂ
Numele și prenumele student: [anonimizat]/ -ei:
Cioablă Cătălin – Ionuț
Enunțul temei:
Controlul în timp real al unei instalații Quanser
urilizând placa ds PIC PRO4
Datele de pornire:
Conținutul proiectului:
Rezumat
Descriere placa dsPIC PRO4
Sistem e de reglare automată
Material grafic obligatoriu:
Imagini
Consultații:
Periodice
Conducătorul științific
(titlul, nume și prenume, semnătura): Sef lucr.univ.dr.ing. Stîngă Florin
Data eliberării temei:
Termenul estimat de predare a
proiectului:
Data predării proiectului de către
student și semnătura acestuia:
UNIVERSITATEA DIN CRAIOVA
Facultatea de Automatică, Calculatoare și Electronică
Departamentul de Automatică, Electronică și Mecatronică
REFERATUL CONDUCĂTORULUI ȘTIINȚIFIC
Numele și prenumele candidatului/ -ei: Cioablă Cătălin – Ionuț
Specializarea: Automatică și Informatică Aplicată
Titlul proiectului: Controlul în timp real al unei instalații Quanser utilizând
placa dsPIC Pro4
Locația în care s -a realizat practica de
documentare (se bifează una sau mai
multe din opțiunile din dreapta): În facultate □
În producție □
În cercetare □
Altă locație:
În urma analizei lucrării candidatului au fost constatate următoarele:
Nivelul documentării Insuficient
□ Satisfăcător
□ Bine
□ Foarte bine
□
Tipul proiectului Cercetare
□ Proiectare
□ Realizare
practică □ Altul
[se detaliază ]
Aparatul matematic utilizat Simplu
□ Mediu
□ Complex
□ Absent
□
Utilitate Contract de
cercetare □ Cercetare
internă □ Utilare
□ Altul
[se detaliază ]
Redactarea lucrării Insuficient
□ Satisfăcător
□ Bine
□ Foarte bine
□
Partea grafică, desene Insuficientă
□ Satisfăcătoare
□ Bună
□ Foarte bună
□
Realizarea
practică Contribuția autorului Insuficientă
□ Satisfăcătoare
□ Mare
□ Foarte mare
□
Complexitatea
temei Simplă
□ Medie
□ Mare
□ Complexă
□
Analiza cerințelor Insuficient
□ Satisfăcător
□ Bine
□ Foarte bine
□
Arhitectura Simplă
□ Medie
□ Mare
□ Complexă
□
Întocmirea
specificațiilor
funcționale Insuficientă
□ Satisfăcătoare
□ Bună
□ Foarte bună
□
Implementarea Insuficientă
□ Satisfăcătoare
□ Bună
□ Foarte bună
□
Testarea Insuficientă Satisfăcătoare Bună Foarte bună
□ □ □ □
Funcționarea Da
□ Parțială
□ Nu
□
Rezultate experimentale Experiment propriu
□ Preluare din bibliografie
□
Bibliografie Cărți
Reviste
Articole
Referințe web
Comentarii
și
observații
În concluzie, se propune:
ADMITEREA PROIECTULUI
□ RESPINGEREA PROIECTULUI
□
Data, Semnătura conducătorului științific,
1
CUPRINS
REZUMATUL PROIECTULUI…………………………………….. ………………………… ..3
MULȚUMIRI………………………………………………………………… ………………………….4
CAPITOLUL 1 Conceptele reglării automate………………………….. ………………. .5
1.1 Definirea și Caracter izarea Sistemelor …………… ………………………5
1.2 Problema Reglării……………………………………………………………….. 6
1.3 Sisteme de Reglare Automată………………………………………………. 7
1.4 Clasificarea Sistemelor de Reglare Automată……………………….. ..9
1.5 Principiile Reglării Automate……………………………………………… 11
1.5.1 Principiul Reglării după Efect…………. ……………. …………. 11
1.5.2 Principiul Reglării după Cauză………. ……………………… …12
CAPITOLUL 2 Prezentarea plăcii de dezvoltare DSPIC Pro4……………… ….13
2.1 Prezentare generală…………. ……………… ………………………… ……..13
2.1.1 Principalele avantaje ale plăcii DSPIC Pr o4……….. ……..14
2.1.2 Comutatoare………………………………….. …………….. ……….15
2.1.3 Jumperi……………………………………………………………. ……1 5
2.1.4 Suportul microcontroller -ului………………………. …….. ……16
2.1.5 Alimentarea…………. ……………………………………………….. 16
2.1.6 Conector USB……………………………………………………….. 17
2.1.7 Interfața serială RS -232……………………………………….. ….17
2.1.8 Interfața Ethernet…………… …………………….. ………………..18
2.1.9 Senzor de temperatur ă DS1820……………….. ……………….18
2.1.10 Convertorul Analogic – Digital……………… ……………….19
2
2.1.11 Ceas î n timp real…………………………………… …….. ……..1 9
2.1.12 Circuit de comunicare RS -485………………………………. 20
2.1.13 Modul CAN…………………………….. ………. ………………… 20
2.1.14 Led-uri……………. ………………………. ………………………… 21
2.1.15 Butoane…. …………. ………………………… ……………………..2 1
2.1.16 Afișaj LCD ( 2×16 caractere )………………… ……….. ……22
2.1.17 Afișaj LCD Grafic… ……………………… …………………….. 22
2.1.18 Touch Panel……. ………………….. …………………………….. .23
2.1.19 Convertor Analog – Digital. ……………………….. …………. 23
2.1.20 Pini pentru acces la microcontroller……….. ……………… 24
2.1.21 Card multimedia …………………………. ………………………. 25
2.2 Programarea microcontroller -ului dsPIC30F6014A…………………..2 5
2.2.1 Mediul de programare MikroC………… …………….. ………2 5
2.2.2 Cuvinte cheie ale com pilatorului MikroC………. ………… 26
2.2.3 Limbajul de programare C………………. …………… ………..28
BIBLIOGRAFIE ……………………………………………………………. ………………………..30
3
REZUMATUL PROIECTULUI
Capitolul 1. În capitolul 1 sunt prezentate concepte ale reglării automate ;
Capitolul 2. În capitolul 2 este prezentată placa de dezvoltare dsPIC PRO4 ;
Capitolul 3. In capitolul 3 este prezentat motorul Quanser;
Capitolul 4. In capitolul 4 este prezentata lucrearea practica.
4
CAPITOLUL I
CONCEPTELE REGLĂ RII AUTOMATE
1.1. Definirea ș i Caracterizarea Sistemelor
Un sistem este un ansamblu de elemente ce interac ționea ză între ele ș i cu exteriorul, în
vederea atingerii unei finalităț i (sens, obiectiv, scop). [Cîrtoaje, 2004] . In cazul sistemelor reale
interacțiunea se realizeaz ă pri n intermediul fluxurilor de masă și energie, purtătoare de
informație.
Sistemul automat este un sistem tehnic cu ajutorul cărora se realizează supravegherea și
comanda proceselor și instalaț iilor tehnologice, fără intervenția direct ă a omului.
Un sistem automat (SA) este alcătuit din două părți principale: proce sul de automatizat
(P) ș i dispozitivul de automatizare (DA).
Un sistem este c aracterizat de trei tipuri de mărimi fizice, și anume: mărimi de intrare,
mărimi de stare și mărimi de ieșire.
Mărimile de intrar e sunt independente de sistem ș i influențează din ex terior starea și
evoluția sistemului.
Mărimile de stare sunt dependente de mărimile de intrare ș i au rolul de a caracteriza
starea internă curent ă a sistemului.
Mărimile de ieș ire sunt dependente de mă rimile de stare, u neori și direct de mărimile de
intrare și au rolul de a transmite în exterior (sistemelor învecinate) , informaț ie referitoare la
starea curentă a sistemului.
Mărimile de stare ale unui sistem au două proprietăți esenț iale:
– de mediere a tra nsferului intrare -ieșire (I -E);
– de acumulare într -o formă co ncentrată a întregii informații privind evoluția anterioară
a sistemului, adic ă a istoriei trecute a sistemului.
Sistemele pot fi împăr țite în clase și categorii de sisteme cu trăsături și comportamente
asemănă toare, cum ar fi d e exemplu: sistemele continue și discrete, sistemele liniare ș i neliniare,
sistemele cu și fără memorie, sistemele staționare și nestaț ionare, sistemele monovariabile ș i
multivariabile, si stemele cu parametri concentrați și distribuiți, sistemele cu și fără timp mor t,
sistemele deterministe ș i stochastice, sistemele deschise ș i închise.
Sistemel e automate se pot clasifica dup ă mai multe criterii, astfel:
după natura elem entelor din componenț a d ispozitivului de automatizare și a
semnalelor de comunicaț ie între acesta , sistemele automate pot fi: electronice,
5
pneumatice, hidraulice, mecanice ș i mixte. Când sistemul automat conține elemente
de natură diferită , interconectarea acestora se face prin intermediul elementelor
convertoare;
după gradul de universali tate a ele mentelor din componenț a dispozitivului de
automatizare, sistemele automate pot fi unificate sau speciali zate. Sistemele unificate
con ț in elemen te universale ce funcționeaz ă cu semnal unificat (standard), cum ar fi: 4
… 20 mA c.c., tensiune în gama 1 … 5 V, semnal pneumatic în domeniul 0,2 … 1,0 bar.
Sistemele automate specializate sunt ut ilizate în cazul unor automatizări de mai mic ă
amploare, când nu se pune problema tr ansmiterii semnalelor la distan ță ;
în raport cu fun cția îndeplinit ă , sistemele automate se clasific ă în:
– sisteme auto mate de supraveghere , prin măsurare ș i/sau semnalizare;
– sisteme automate de protecț ie care au ca scop oprirea parțială sau totală a
procesului (instalaț iei), atunci când un parametru iese în afa ra domeniului
admisibil de funcț ionare, afectâ nd calitatea produsului finit și/sau securitatea
instalaț iei respective.;
– sisteme autom ate de comandă directă , dup ă un program prestabilit;
– sisteme automate de r eglare ce au ca scop aducerea ș i men ținerea valorii ieș irii
procesului la o valoare dorită (referință ), în condițiile modificării în timp a valorii
referinței ș i a acțiunii perturbaț iilor asupra procesului reglat;
– sisteme automate de conducere (prin supraveghere, protecție, comand ă , reglare).
1.2. Problema Regl ării
În figura 1.1 . este reprezentat schematic un proces supus reglă rii automate, punându -se în
evidență mă rimile de intrare (c, v 1 ,v 2 ) și de ieș ire (y).
Fig .1 .1. Mărimile fizice asociate unui proces reglat (P)
Mărimile de intr are ale unui proces sunt de două tipuri: comenzi și perturbaț ii. Prin
interm ediul comenzilor se poate inter veni asupra p rocesului astfel încât acesta să evolueze dup ă
6
o traiectorie dori tă. Perturbațiile acționeaz ă arbitrar asupra procesului având drept con secin ță
devierea pro cesului de la traiectoria dorită .
Reglarea este operația de menținere a mărimii de ieș ire a unui proce s la o valoare cât mai
apropiat ă de cea a un ei mărimi de referință , în condițiile modifică rii în timp a mărimii de
referință și a a cțiunii perturbaț iilor asupra procesului reglat, (fig.1.2). [Cîrt oaje ș .a., 2003] .
Problema reglării const ă în elaborarea unei comenzi (c) asupra proce sului reglat (P),
astfel încât mărimea de ieșire a procesului (y) să urmărească cât mai aproape o mărime de
referință dată (r), în condițiile acțiunii perturbaț iilor (v 1 și v2 ) asupra procesului. Comanda este
elaborată de că tre un element d ecizional, numit regulator, dup ă un algoritm adecvat (lege de
reglar e), pe baza valorii curente a mărimii reglate (ieșirea procesului – y), a referinței (r) și a
perturbațiilor mă surate (v 1 ).
1.3. Sisteme de Reglare Automată
Un Sistem de Reglare Automat ă (SRA) este un sistem tehnic cu ajutorul căruia se urmăreș te
aducerea s au menținerea valorii mărimii de ieș ire di ntr-un proces la o valoare de referință în mod
automat, fără intervenț ia omului, pe baza unei legi de reglare. Un SRA este format dintr -un
dispozitiv de automatizare (DA) ș i procesul de automatizat (P), (fig.1.2).
Fig.1.2. Schema bloc si mplificată a unui SRA (a – după efect, b – după cauz ă ):
DA – Dispozitiv de Automatizare, P – Proces, u – mărime de execuț ie.
7
Dispozitivul de automatiza re are rolul de a primi informaț ie referitoare la starea cu rentă a
procesului reglat (P), ș i de a genera comenzi convenab ile as upra procesului, în vederea
menținerii sau aducerii stării acestuia într -o anumită stare dorită (de referință ).
[Cîrtoaje ș .a., 2003]
Dispozitivul de automatizare cuprinde în structura sa traductorul (T) – ce furnizează
informația cu privire la starea curentă a procesului, prin mă surare , regulatorul (R) – ce generează
comenzile astfel încât să se îndeplinească obiectivul reglării (menținerea sau aducerea stă rii
curente a unui proces la o anumită stare de referin ță ) și elementul de execuț ie (EE) – ce are
rolul de a aplica comanda regulatorului în proces (fig.1.3).
Fig.1.3. Schema bloc detaliată a unui SRA (a – după efect, b – după cauz ă ):
R – Regulator, EE – Element de Execuț ie, T – Traductor, P – Proces, r – referință , c – comandă ,
u – mărime de execuție, m – măsură , y – ieșire, v1, v2 – perturbaț ii.
8
Sistemul de reglare realizează , în cazul ideal, condiț ia de reglare y(t) ≡ r(t), or icare ar fi
intrarea de referință r(t) și pertur bațiile v1 (t) și v2 (t). Problema reglării poate fi descompusă în
problema rejecției efectului perturba țiilor și problema urmăririi referinței.
Problema rejecției exacte exprimă cerința ideal ă ca în ipo teza r(t) ≡ 0 și v2 (t) ≡ 0 s ă
avem y(t) ≡ 0, oricar e ar fi v1 (t). Problema urmăririi exacte exprimă cerința ideală ca în ipoteza
v1 (t) ≡ 0 și v2 (t) ≡ 0, s ă avem y(t) ≡ r(t) , oricare ar fi r(t).
În aplicaț iile prac tice, problema reglării trebuie relaxată , în sensul înlocuirii condiției
rigide ca mări mea reglată (y) să urmărească exact mă rimea de referință (r), cu condiția ca ieșirea
să urmărească referinț a cu un anumit grad de precizie.
Un SRA poate funcționa pe baza a două principii de reglare, și anume principiul reglării
după cauză și principiul r eglării după efect, ale căror enunț uri sunt prezen tate în paragraful 1.3.
În funcție de principiul reglării, care st ă la baza legii de regl are, un SRA poate avea cele dou ă
tipuri de structuri prezentate în figurile 1.2 a și b și detaliat în figurile 1.3 a și b.
1.4. Clasificare a Sistemelor de Reglare Automat ă
Există mai multe posibilităț i de clasificare a unui SRA, în f uncție de criteriul adoptat, ș i
anume: [Oprea, 2003]
1. După dependențele, în regim sta ționar, dintre mărimile de ieșire ș i de intrare ale
elementelor componente se deosebesc:
– SRA liniare – când dependenț ele sunt liniare; din punct de vedere matematic sistemele
liniare sunt descrise prin ecuații liniare;
– SRA neliniare – când cel puțin una din dependențe este neliniar ă ; din punct de vedere
matematic sistemele neliniare sunt descrise prin ecua ț ii neliniare;
2. După caracterul pre lucrării semnalelor se deosebesc:
– SRA continue – când toate mă rimile care intervin sunt continue în timp;
– SRA discrete – când cel puțin una dintre mărimi are o variație discret ă în timp;
3. După viteza de ră spuns a procesului reglat la un semnal aplicat la intrare se deosebesc :
– SRA pentru procese rapide – când constantel e de timp ale procesului nu depășesc 10
secunde (acționă rile electrice);
– SRA pentru procese lente – când procesul a re constante de timp mai mari ș i, de cele mai
multe ori au ș i timp mort;
4. După principiul de funcț ionare, pot fi:
9
– SRA după efect – care mențin sau aduc valoarea ieșirii procesului la valoarea mărimii
de referință prin măsu rarea permanentă a ieșirii ș i compararea valorii acesteia cu valoarea
mărimii de referin ță ;
– SRA după cauză – mențin sau aduc valoarea ieșirii procesului la valoarea mărimii de
referință prin m ăsurarea permanentă a perturbațiilor și/sau a referinț ei ast fel încât la
modificarea perturbaț iilor ieșirea s ă nu se modif ice, iar la modificarea referinței ieșirea să
devină egal ă cu aceasta;
5. După caracteristicile construcț iei dispozitivelor de automatizare se deosebesc:
– SRA unificate – când toate mă rimile sun t semnale unificate, adică au aceeași gamă și
aceeași natură . De exemplu, se folosesc semnale standardizate 4…20 mA, pentru
semnale electrice, ș i 0,2…1 bar, pentru semnalele pneumatice.
– SRA specializate – nu folosesc semnale standardizate;
6. După agentul pu rtător de semnal se deosebesc:
– SRA electronice ,
– SRA pneumatice ,
– SRA hidraulice ,
– SRA mixte .
7. În funcție de evoluț ia strategiilor de reglare, se disting: [Dumitrache, 2005]
– SRA convenționale având la baz ă strategii clasice de reglare
SRA după efect – ce funcționează pe baza principiului reglării dup ă efect;
SRA după cauz ă – ce funcționeaz ă pe baza principiului reglării după cauz ă ;
SRA în cascad ă – ce folosesc tehnica buclelor multiple, prin cu plarea
regulatoarelor în cascad ă ;
SRA mixte – au în structură atât SRA după efect cât și SRA după cauz ă ;
-SRA avansate având la baz ă strategii clasice de reglare
SRA cu decuplare – folosesc un dispozitiv, numit decu plor, pentru diminuarea
interacț iunilor naturale ce apar între di feritele canale ale unui proces
multivariabil;
SRA selectiv e – se folosesc atunci când numărul agen ților de reglare este mai mic
decât numărul mă rimilor reglate;
SRA inferenț iale – ce se folosesc atunci când o mărime ce trebuie reglată nu
poate fi măsurată , dar poate fi estimată pe baza altor mărimi ce se pot mă sura;
-SRA avansate a vând la baz ă strategii moderne de reglare
10
SRA adaptive – folosesc metoda de identificare online a parametr ilor procesului
în scopul acordă rii regulatorului; primele tipuri de sisteme adaptive au fost
folosite începând cu anul 1950 în industria aerospa țială ;
SRA predictive – calculează mărimea de comandă astfel încât evoluția prezisă a
ieșirii procesului, pe baza unu i model al procesului reglat, s ă urmeze cât aproape
o traiectorie impus ă ;
SRA cu model intern – calculează mă rimea d e comand ă pe baza unui model al
procesului reglat;
– SRA avansate având la baz ă modele complexe
SRA robuste – spre deosebire de SRA adaptive, SRA robu ste nu permit adaptarea
dinamic ă a param etrilor, ci regul atorul este proiectat offline ț inând cont de
anumite incertitudini de model;
SRA neliniare – folosesc modele neliniare;
SRA optimale – sunt sistemele de reg lare la care semnalul de comandă se
calculeaz ă pri n optimizarea unei anumite funcț ii obiectiv;
– SRA avansate având la baz ă tehnici inteligente – folosesc diferite tehnici de reglare cum
ar fi reț elele neurale, logica fuzzy, algoritmi genetici, probabilităț i etc.
– SRA inteligente au la baz ă tehnici avansate de procesare a informațiilor și a
cunoștințelor, care integreaz ă tehnicile neurale, tehni cile fuzzy, tehnicile inteligenței
artificiale și programarea evoluționist ă .
1.5. Principiile Reglă rii Automate
Sistemele de reglare pot funcționa pe baza principiului acțiunii dup ă efect (eroare,
abatere) sau pe baza p rincipiului acțiunii după cauză . Sistemele cu reglare dup ă efect (fig. 1.3 a)
se numesc sisteme cu acțiune inversă (cu reacț ie sau cu “feedback ”) iar sistemele cu reglare după
cauză (fig.1.3 b) se mai numesc sisteme cu acțiune direct ă (cu precompensare sau cu
“feedforward”).
1.5.1. Principiul Reglării dup ă Efect
Principiul reglării (acțiunii) după efect presupune intervenț ia asupra sis temului reglat, pe
baza informației obținute prin măsurarea mă rimii reglate, în vederea menținerii acestei mă rimi la
o valoare cât mai apropiată de valoarea referinț ei, (fig. 1.3 a). La sistemele cu acțiune după efect,
apariția erorii (diferența dintre valoarea referinței și valoarea mă rimii reglate) nu poate fi
11
prevenit ă , dar acț iunea de r educere a ac esteia începe din momentul prod ucerii celei mai mici
erori sesizabile, indiferent de cauza care a provocat eroarea.
1.5.2. Principiul Reglării după Cauz ă
Principiul reglării (acțiunii) după cauz ă presupune inter venția asupra p rocesului reglat, pe
baza cunoașterii valorii curente a intrării perturbatoare (cazul reglării după perturbație) sau a
intrării de referință (cazul reglării după referință ).
La reglarea dup ă perturba ție se urmăreș te menținerea constant ă a mărimii de ieș ire a
procesu lui, prin compensar ea efectului produs de perturbație, iar la reglarea după referință se
urmărește aducerea și menținerea mă rimii reglate la o valoare apropiată de cea a referinț ei, (fig.
1.3 b). Deoarece acț iunea compensatorului la reglarea după perturbaț ie are loc în paralel și
simultan cu acț iunea perturbației mă surate, si stemul de reglare poate, cel puțin teoretic, să
prevină modificarea mărimii reglate de către perturbația respectivă .
Pentru obț inerea unui rezultat apro piat de cel ideal, este necesar ă cunoașterea foarte
exact ă a modelului dinamic al pro cesului reglat. De remarcat însă faptul că efectul perturbației
nemăsurate v2 rămâne în totalitate necompensat.
12
CAPITOLUL II
PREZENTAREA PLĂCII DE DEZVOLTARE DSPIC PRO4
2.1. Prezentare generală
Placa de dez voltare DSPIC PRO 4 este produsă de MikroElektronika și este o alegere
excelentă pentru studenți ș i pentru ingineri de a testa și a explora capabilităț ile microcontroller –
elor dsPIC .
Această placă permit e acestor microcontrollere de a interacționa cu circuite externe ș i cu
o mare varietate de dispoziti ve periferice. Acest lucru ajută utilizatorul î n a se concentra asupra
strict dezvoltă rii software.
Fig. 2.1. Placa de dezvoltare dsPIC PRO4
13
2.1.1 . Principale avantaje ale plă cii de dezvoltare dsPIC PRO4 :
1. Sursa externă , 9-32 V AC/ DC ;
2. Slot USB 2.0 ;
3. Conector RS232 -A;
4. Conector RS232 -B;
5. Referinț a voltajului de 4.096V ;
6. Modul integrat de ethernet;
7. Afișaj LCD 2×16;
8. Potenț iometru pentru modificare a contrastului LCD -ului;
9. Convertor Analog ic / Digital pentru testarea intră rilor;
10. Senzor de temperatură DS1820;
11. Rezistor 8x10k;
12. Ceas î n timp real;
13. Convertor Analogic / Digital;
14. Circuit de comunicare RS-485;
15. Modul CAN;
16. Fiecare LED corespunde unui pin al micr ocontrelerr -ului;
17. Întrerupă tor DIP pentru activarea/ dezactivarea LED -urilor;
18. Suport pentru microcontroller -e cu 64 sau 80 de pini;
19. Microcontroller inclus dsPIC30F6014A;
20. Întrerupătoarele DIP SW2 ș i SW5 sunt folosite pentru activarea ș i dezactivarea
compone ntelor periferice ;
21. Conectori pentru acces direct;
22. Slot pentru card multimedia MMC/ SD;
23. Buton pentru resetarea circuitului;
24. Butoane tip push;
25. Conector GLCD;
26. Potenț iometru pentru contrastul GLCD;
27. Jumper pull up/ pull down;
14
2.1.2 . Comutatoare
Sistemul de dezvoltare al dsPICPRO4 conține un numă r de dispozitive periferice. Cu
scopul de a le activa inainte de începerea programării, jumperii și întrerupătoarele
corespunzătoare trebuie să fie corect setate. Întrerupă toarele sunt dispozitive mecanice create
pentru a stabili sau întrerupe conecția dintre două contacte.
Fig. 2.2. Grupul de întrerupă toare SW5
Întrerupă torul SW1 activează / dezactivează LED- urile;
Întrerupă torul SW2 activează / dezactivează LCD, GLCD -BCK, CAN, RS -485 si RTC -INT;
Întrerupă torul SW3 activează/ dezactivează conectorul Touch Panel ș i pe cel ethernet;
Întrerupă torul SW4 activează/ dezactivează MMC -CS, DAC ș i SPI;
Întrerupă torul SW5 activează/ dezactivează rezistorii portului B.
2.1.3 . Jumperi
Jumperi sunt folosiț i pentru a întrerupe sa u pentru a stabili o conexiune între două
puncte. Sub înveliș ul de plastic al unui jumper, se afla un conector de metal care stabileș te o
conexiu ne atunci cand jumper -ul este aș ezat peste doi pini. Un jumper este deseori folosit ca un
selector între două posibile conexiuni realizate printr -un conector cu 3 pini.
Așa cum este reprezentat î n figura 2.3, conectorul din mijloc poa te fi conectat fie la
pin-ul stâng sau la cel drept, în funcție de poziț ia jumper -ului.
Fig. 2 .3. Jumper -ul ca întrerupă tor
15
2.1.4 . Suportul Microcontroller -ului
Placa de de zvoltare dsPICPRO4 vine echipată cu un microcontroll er dsPIC30F6014A
pe 80 de pini însă acesta poate fi schimbat cu orice alt microcontroller pe 64 sau 80 de pini.
Fig. 2.4. Microcontroller -ul dsPIC30F6014A
2.1.5 . Alimentarea
Placa de dezvolta re dsPICPRO4 poate fi alimentată prin USB de la un computer sau
printr -o sursă externă cu tensiunea între 9 ș i 32 V ( adaptor curent continuu sau alternativ ).
Atunci când este alimentată printr -o sursă externă , placa de dezvoltare dsPICPRO4
produce 5V folosind un regulator MC34063 A .
Fig. 2.5. Alimentarea
16
2.1.6 . Conector USB
Nu este nevoie de echipament exterior pentru programare, deoarece programarea pe
placa de dezvoltare dsPICPRO4 se face direct de pe computer printr -un cablu USB.
Fig. 2 .6. Conector USB
2.1.7 . Interfața serială RS-232
Interfața serială RS -232 activează transferul de date și este deseori folosită în aplicații
pentru achiziț ii de date pentru a transfera date î ntre microcontroller și computer.
Cum voltajul diferă între microcontroller ș i computer este nevoie de un convertor
precum MAX232.
Fig. 2 .7. Interfața Serială RS-232
17
2.1.8 . Interfața Ethernet
Ethernet este cea mai utilizată tehnologie pentru rețelele locale. Stațiile Ethernet
comun ică între ele trimițând pachete de date î ntre ele.
Fiecărei stații îi este atribuită o singură adresă MAC pe 48 de biți care este folosită
pentru a specifica atât destinația cât și sursa fiecă rui pachet de date.
Etherne t are un controller pe 28 de biț i ENC 28J60 ș i dispune de o memorie de tampon
de 8KB.
Fig. 2 .8. Interfaț a Ethernet
2.1.9 . Senzor de temperatură DS1820
Termometrul digita l DS1820 este potrivit pentru mă surarea temper aturii mediului fiind
capabil să măsoare temperaturi între -55 și 125 de grade Celsius cu o acurateț e de plus/ minus
0.5 grade Celsius.
Fig. 2 .9. Senzorul de temperatură DS1820
18
2.1.10 . Convertorul analogic digital
Placa de de zvoltare dsPICPRO4 este echipată cu un conve rtor analogic/ digital pe 12
biți MCP4921 care este folosit pentru a efectua conversia digital/ analogica.
Fig. 2. 10. Convertorul Analogic / Digital
2.1.11 . Ceas în timp real
Placa de de zvoltare dsPICPRO4 este echipată cu ceasul î n timp real PCF8583P care
folosește o comunicare serială pentru a face schim b de date cu microcontroller -ul.
Fig. 2.1 1. Ceas î n timp real
19
2.1.12 . Circuit de comunicare RS -485
Circuitul de comunicare RS -485 permite transferul de date. Cel mai adesea este fol osit
pentru transferul de date î ntre mai multe microcontroller -e.
Fig. 2. 12. Circuit de comunicare RS -485
2.1.13. Modul CAN
Modulul CAN este o rețea de tip serial care inițial a fost creată pentru industria auto dar
care între timp a devenit populară și în alte aplicaț ii. Modulul CAN este un sistem rapid care
leaga microcontroller e-e. Acest modul poate trimite ș i primi date însă nu în acelaș i timp.
Placa de dezvoltare dsPICPRO4 are un astfel de circuit de comunicare.
Fig. 2. 13. Modul CAN
20
2.1.14. Led-uri
Led-urile ( Light emitting diode ) , diode emițătoare de lumină , sunt compo nente des
folosite pentru a afiș a digital starea pinilor microcontroller -elor.
Placa de dezvoltare dsPICPRO4 are 64 de led -uri conectate la microcontroller.
Aceste led -uri pot fi activate sau dezactivate folosind grupul de comutatoare SW1.
Fig. 2. 14. Led-urile
2.1.15. Butoane
Placa de dezvoltare dsPICPRO4 are 67 de butoane care pot fi folosite pentru a furniza
intrări digitale î n port -urile microcontroller -ului. Există de asemenea un buton roșu cu funcț ia de
RESET.
Fig. 2. 15. Butoane
21
2.1.16. Afișaj LCD ( 2×16 caractere )
LCD -ul standard 2×16 poate afiș a caractere standard și este probabil cea mai folosită
componentă de vizualizare a datelor.
Poate afișa mesaje în două linii care pot conține până la 16 caractere alfanumerice fiecare.
Fiecare caracter este realizat din 5×8 pixeli. LCD -ul comunică cu microcontroller -ul
printr -o magistrală de date pe 4 biț i.
Fig. 2. 16. Afișaj LCD
2.1.17. Afișaj LCD grafic
Un LCD grafic oferă o metodă avansată de afișare a mesajelor. În timp ce un afișaj LCD
cu caractere poate afiș a numai caractere alfanumerice, un LCD grafic poate fi folosit pentru a
afișa mesaje sub formă de poze ș i desene.
Acest LCD are o rezoluț ie de 128×64 pixeli , iar contrast ul poate fi modificat din
potențiometrul P2 care este situat în partea dreaptă de sus a LCD -ului.
Fig. 2. 17. Afișaj GLCD
22
2.1.18 Touch panel
Touch panel -ul este un panou care se poziționează peste afisaje L CD grafice. Este
format din două folii separate care formează o structură de tip „sandwich”.
Este foarte sen sibil la atingere, iar orice mică atingere va modifica voltajul de ieș ire.
Fig. 2. 18. Touch Panel Fig. 2. 19. Conector Touch Panel
2.1.19 . Convertor analog/ digital
Placa de dezvoltare dsPICPRO4 are două potențiometre. Ieșirile ambelor potențiometre
sunt cuprinse între 0 ș i 5 V.
Aceste semnale analogice pot fi conectate la doi pini analogici de intrare în acelaș i timp.
Conversia A/ D poate fi folosită într -o largă varietate de aplicaț ii.
Microcontroller -ul primeș te un semnal an alogic de la pin -ul de intra re și î l transformă
într-o valoare digitală ceea ce face posibilă măsurarea orică rui semnal analogic care se potrivește
în gama de mă surare a microcontroller -ului care pentru dsPICPRO4 este de 0 – 5V.
Fig. 2.20. Convertor -ul Analog / Digital
23
2.1.20 . Pini pentru acces direct la microcontroller
Toți pinii de intrare și de ieș ire ai mic rocontroller -ului pot fi accesaț i prin cone ctorii
IDC-10 care sunt amplasați pe partea dreaptă a plă cii de dezvoltare. Pentru fiecare por t al
microcontroller -ului există un conector care oferă până la 8 pini plus 2 adiționali conectați la
VCC ș i GNC.
Fig. 2.21. Pini pentru acces direct la microcontroller
Acești conectori pot fi folosiț i pentru a conecta sistemul la dispozitive externe. În cazul
în care periferice le integrate ș i cele externe folosesc aceiaș i pini, p erifericele integrate trebuie să
fie deconectate de la microcontroller prin comutarea jumper -ilor corespunză tori.
Fig. 2.22. Conexiune î n port pentru acces direct
24
2.1.21 . Card multimedia
Cardul multimedia este ca ș i mediu de stocare a datelor pentru dispozitive portabile.
Prin ac est card datele pot fi foarte ușor transferate î n computer. Microcontroller -ul de pe
placa de dezvoltare dsPICPRO4 comunică cu acest card multimedia prin comunicare SPI.
Fig. 2 .23. Card multimedia
2.2. Programarea microcontroller -ului dsPIC30F6014 A
2.2.1 . Mediul de programare mikroC dsPIC
MikroC dsP IC este un mediu de programare î n limbaj C.
MikroC dsP IC este un mediu de programare î n limbaj C , cu compilator p entru
microcontrollerele dsPIC și se instalează de pe CD -ul prim it împreună cu placa de dezvo ltare.
Pentru testare se poate î ncerca un program simplu astfel:
a. se deschide O pen Project din meniul Project ș i se alege „led?blinking.dpc”;
b. din acelaș i meniu P roject, se alege Build programul fiind compilat și transformat î n
cod HEX el putând fi acum încărcat î n memoria microcontroller -ului cu ajutorul
dsPIC Flash.
Codul C folosit pentru scrierea programelor pe ntru microcontroller este același cod C
folosit și în alte medii de programare.
Caracteristici:
25
– Editor de cod performa nt ( auto corecț ie, tipare de cod, plia re cod, sublinierea sintaxelor
și multe altele );
– Explorator de cod cu ajutorul că ruia se poate monitor iza structura programului, funcțiile
și variabilele;
– Depanare î n timp real;
– Rapoarte detaliate ș i grafice pentru: harta ROM și RAM, statistici despre cod ș i altele;
– Oferă multe exemple de la care se poate construi un program;
– Oferă multe libră rii;
– Sistem de Ajutor foarte bine dezvoltat.
Memo ria unui microcontroller din familia dsPIC30F reține informații pe 16 -biți.
Compilatorul suportă de asemenea informații pe 1 bit și pe 4 biți. Sunt suportate atât
numerele întregi cât și cele raț ionale.
Fig 2.24 . prezintă variabilele numerelor î ntregi suportate de compilatorul dsPIC mickroC
2.2.2 . Cuvinte cheie ale compilatorului mikroC
Cuvâ ntul cheie ASM
Cuvântul ASM specifică începutul unui set de instrucțiuni scris î n limbajul de
ansamblare.
Exemplu:
asm {
MOVLW 10 // just a test
MOVLW _myvar
MOVLW 0 // just a test
MOVLW _myvar+1
}
26
Cuvâ ntul cheie ABSOLUTE
Cuvâ ntul cheie ABSOLUTE este folosit atunci când este necesar ca o variabilă să fie
memorată într -o adresă de memorie care este deja cunoscută .
Exemplu:
Cuvâ ntul cheie ORG
Cuvâ ntul cheie ORG este folosit în anumite situații în care este necesar ca o anumită
metodă să fie memorată într -o adresă prestabilită a memoriei pro gramului. Folosirea acestui
cuvânt ORG este necesar atunci când se scriu funcții pentru î ntrerupere.
Exemplu:
2.2.3. Limbajul de programare C
Limbajul de programare C a fost dezvoltat de AT & T’s Bell Laboratories, SUA î n 1972.
Puterea ș i flexibilitatea limbajului de programare C a devenit aproape imediat evidentă,
iar sistemul de ope rare UNIX care a fost scris inițial î n limba j de ansamblare a fost rescris î n C
ceea ce a făcut ca C să devină foarte popular în toate universităț ile din SUA.
Acest limbaj de programare a fost dezvoltat și scris de Dennis Ritchie și este un limbaj
ușor de folosit care a supravieț uit peste 4 decenii fiind un limbaj de programare care constituie o
baza pentru alte limbaje de programare ca C++ sau JAVA.
int coef[10] absolute 0x0900;
double series[16] absolute 0x1900;
void ADC1_Int() org 0x2A{
int s;
IFS0.F11 = 0; //clear AD1IF
s = ADCBUF0; //fetch sample
}
27
C este un limbaj de programare foarte puterni c și flexibil care dezvoltă o viteză de
execuție foarte mare și care nu limitează aproape deloc utilizatorul.
Puterea ș i rapiditat ea C -ului sunt datorate abilităț ii sale de a accesa comenzi de nivel jos,
precum un limbaj de asamblare dar cu sintaxe de nive l înalt, flexibilitatea venind din varietate a
cu care utilizatorul poate obține acelaș i rezultat.
O altă caracteristică imp ortantă a acestui limbaj de programare este capa citatea de a
memora anumite parți de cod în libră rii pentru a putea fi folosite mai t arziu atunci câ nd este
nevoie.
Foarte multe componente ale unor sisteme popular e ca Windows, UNIX, LINUX sunt
încă scrise î n C, acesta fiind un limbaj de programare cu o execuție foarte rapidă .
Orice literă, cifră sau simbol, pot fi numite caractere.
Mai jos sunt prezentate caracterele permise î n C:
Litere:
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W , X, Y, Z
a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w , x, y, z
Cifre:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Simboluri:
~ ‘ ! @ # % ^ & * ( ) _ – + = | \ { }
[ ] : ; ” ’ < > , . _ ? /
Mai jos sunt prezentate princi palele tipuri de date folosite î n C:
1. Tipul de date numerice: se ocupă cu datele numerice precum integer ș i float;
2. Tipul de date non -numerice: se ocupă cu datele non-numerice precum characters ;
3. Tipul de date reale: se ocupă cu datele care includ fracț ii;
4. Tipul de date enumerate: sunt ac ele date definite de utilizator .
28
Cel mai cunoscut exemplu de program realizat cu ajutorul C este afișarea faimosului mesaj
“Hello Word”.
Codul necesar realiză rii acestui program este:
#include <stdio.h>
main()
{
printf("hello, world ");
}
Un program realizat î n C, indiferent de mărimea sa este format din funcții ș i variabile. O
funcție conț ine declaraț ii care specifică operațiile necesare realiză rii,
Funcț ia din exemplul nostru este “main” . În mod normal funcțiile pot avea orice nume
dorește utilizatorul însa funcț ia “main” este una specia lă, programul î ncepand execuț ia cu
“main’’ceea ce înseamnă că orice program trebuie să conțină un “main”.
“Main” apelează de obicei alte f uncții scrise de u tilizator sau din librării.
Prima linie d in program, #include <stdio.h> îi spune compilatorului să includă informații
despre librăria standard de intrare/ ieșire. Această linie apare î n foarte multe programe realizate
în limbajul de programare C.
O metodă de comunicare a datel or între funcții, este aceea ca funcția apelată să furnizeze
o listă de valori numite “argumente” (“arguments”) funcției pe care o apelează . Parantezele de
după numele funcției înglobează lista de argumente. Î n exemplul nostru funcția “main” nu
conține nici un argument, după cum se poate observa din lista goală .
Declarațiile unei funcții sunt situate î n interiorul unor acolade “{}” . Funcț ia “main”
conține numai o declaraț ie, printf(“hello world”);
O funcție este apelată prin numirea ei, urmată de o listă de argumente cuprinse î ntre
paranteze. Exemplul nostru apelează “printf” cu argumentul “hello world”.
“Printf ” este o funcție din librărie care afișează ieșiri., în acest caz, ș irul de caractere
dintre ghilimele.
29
Motorul de curent continuu
Motorul de curent continuu a fost inventat în 1873 de Zénobe Gramme prin conectarea unui
generator de curent continuu la un generator asemănător. Astfel, a putut observa că mașina se
rotește, realizând conversia energiei electrice absorbite de la generator. Astfel el a constatat, că
generatorul "inițial" era de fapt o mașină electrică reversibilă, care putea lucra ca un convertizor
de energie bidirecțional.
Motorul de curent continuu are pe stator polii magnetici și bobinele polare concentrate care
creează câmpul magnetic de excitație. Pe axul motorului este situat un colector ce schimbă
sensul curentului prin înfășurarea rotorică astfel încât câmpul magnetic de excitație să exercite în
permanență o forță față de rotor .
În funcție de modul de conectare a înfășurării de excitație motoarele de curent continuu pot fi
clasificate în:
1. motor cu excitație independentă – unde înfășurarea statorică și înfășurarea rotorică sunt
conectate la două surse separate de tensiune
2. motor c u excitație paralelă – unde înfășurarea statorică și înfășurarea rotorică sunt legate
în paralel la aceași sursă de tensiune
3. motor cu excitație serie – unde înfășurarea statorică și înfășurarea rotorică sunt legate în
serie
4. motor cu excitație mixtă – unde înfășurarea statorică este divizată în două înfășurări, una
conectată în paralel și una conectată în serie.
Înfășurarea rotorică parcursă de curent va avea una sau mai multe perechi de poli magnetici
echivalenți. Rotorul se deplasează în câmpul magnetic de excitație până când polii rotorici se
aliniază în dreptul polilor statorici opuși. În același moment, colectorul schimbă sensul curenților
rotorici astfel încât polaritatea rotorului se inversează și rotorul va continua deplasarea până la
următoarea alini ere a polilor magnetici.
Pentru acționări electrice de puteri mici și medii, sau pentru acționări ce nu necesită câmp
magnetic de excitație variabil, în locul înfășurărilor statorice se folosesc magneți permanenți.
Turația motorului este proporțională cu t ensiunea aplicată înfășurării rotorice și invers
proporțională cu câmpul magnetic de excitație. Turația se reglează prin varierea tensiunii aplicată
motorului până la valoarea nominală a tensiunii, iar turații mai mari se obțin prin slăbirea
30
câmpului de ex citație. Ambele metode vizează o tensiune variabilă ce poate fi obținută folosind
un generator de curent continuu (grup Ward -Leonard), prin înserierea unor rezistoare în circuit
sau cu aj utorul electronicii de putere ( redresoare comandate, choppere ).
Cuplul dezvoltat de motor este direct proporțional cu curentul electric prin rotor și cu câmpul
magnetic de excitație. Reglarea turației prin slăbire de câmp se face, așadar, cu diminuare a
cuplului dezvoltat de motor. La motoarele serie același curent străbate înfășurarea de excitație și
înfășurarea rotorică. Din această considerație se pot deduce două caracteristici ale motoarelor
serie: pentr u încărcări reduse ale motorului, cuplul acestuia depinde de pătratul curentului
electric absorbit; motorul nu trebuie lăsat să funcționeze în gol pentru că în acest caz valoarea
intensității curentului electric absorbit este foarte redusă și implicit câmp ul de excitație este
redus, ceea ce duce la ambalarea mașinii până la autodistrugere. Motoarele de curent continuu cu
excitație serie se folosesc în tracțiunea electrică urbană și feroviară (tramvaie, locomotive).
Schimbarea sensului de rotație se face fie prin schimbarea polarității tensiunii de alimentare, fie
prin schimbarea sensului câmpului magnetic de excitație. La motorul serie, prin schimbarea
polarității tensiunii de alimentare se realizează schimbarea sensului ambelor mărimi și sensul de
rotație r ămâne neschimbat. Așadar, motorul serie poate fi folosit și la tensiune alternativă, unde
polaritatea tensiunii se inversează o dată în decursul unei perioade . Un astfel de motor se
numește motor universal și se folosește în aplicații casnice de puteri mici și viteze mari de
rotație (aspirator, mixer).
31
Motorul de curent continuu Quanser
Motorul de curent continuu Qua nser este un dispozitiv ieftin, performant, percet pentru a
studia fundamentele controlului unui motor.
Cum functioneaza
Motorul de curent continuu Quanser este compus dintr -un motor dotat cu un decodor.
Motorul este alimentat folosind un alimentator liniar. Puterea sistemului este asigurata de
un acumulator.
Semnale spre si dinspre sistem sunt disponibile de asemenea ca si conectori standard de
control printr -o placa de achizitie, sistemul putand fi folosit utilizand un computer extern,
echipat cu o p laca de achizitie.
Exista de asemena un soclu pentru un controller PIC. Acest controller poate masura
decodorul, aplica voltaje amplificatorului motorului si poate comunica cu un computer
sau un laptop utilizand un cablu USB. In plus contolleri analogici pot fi montati pe placa.
Specificatiile dispozitivului:
Cuplul constant al motorului 0.0502 N.m/A
Rezistenta armaturii motorului 10.6 Ω
32
Inductanta armaturii motorului 0.82 mH
Cuplul maxim continuu al motorului 0.035 N.m
Puterea motorului 18 W
Momentul inertiei rotorului motorului 1.16 x 10-6 kg.m²
Constanta mecanica de timp a motorului 0.005 s
Incarcatura inertiala a masei discului 0.068 kg
Incarcatura inertiala a razei discului 0.0248 m
Voltajul liniar maxim de iesire 15 V
Tensiunea liniara maxima de iesire 15 V
Puterea liniara maxima de iesire 22 W
Castigul liniar amplificat 3 V/V
Proprietatiile tehince:
– Metode flexibile de control;
– Analogic, cu placa inclusa;
– Digital, cu placa externa de achizitie si program software;
– Embedded, cu microcontroller inclus;
– Amplificator digital;
– Vitezometru;
– Potentiometru analogic.
33
Realizare Practica
Multe dintre aplicatiile folosite in domeniul microcontrollerelor au scopul de a actiona niste
motoare. Puteam lua exemplu aplicatiile de la geamurile actionate electric, motoarele
indicatoarelor de bord sau aplicatiile folosite de imprimante, hard disk -uri, etc…
Schema bloc a unei actionari cu motor de current continuu
Timpul de deplasare este td = ta + tc + tf
Timpul de pozitionare este tp = td + ts
Pentru a obtine viteza variabila se poate aplica o tensiune variabila . Acest lucru se poate realiza
in mai multe feluri:
– Prin conversia informatiei numerice in informative analogical si aplicarea acesteia unui
transistor ( pentru a aplica comanda in ambele sensuri informatia trebuia aplicata la 2
tranzistori). Tensiunea obtinuta se aplica motorului de current continuu.
– Prin crearea unui semnal PWN cu o frecventa mare, ca datorita iner tiei sa integreze
impulsurile. Astfel, motorul va avea o viteza proportional cu factorul de umplere. Acest
mod este mai simplu iar tranzistorul nu disipa.
Motorul de current continuu se roteste cu o viteza proportionala cu tensiunea aplicata.
In caz in care tensiunea aplicata este sub forma de impulsuri, motorul se va rotii proportional cu
valoarea media a tensiunii.
Un motor poate fi comandat atat direct de catre un microcontroller cat si indirect prin anumite
interfete specializate.
34
Prezent are
Experimentul presupune controlul in timp real al unui motor de current continuu folosind placa
de dezvoltare dsPIC PRO 4.
Echipamentele folosite pentru realizarea acestui experiment sunt:
– Placa de dezvoltare dsPIC PRO4 ;
– Motorul de current continuu Qu anser.
Pasii urmati in realizarea experimentului:
– Se realizeaza conexiunea intre placa de dezvoltare dsPIC PRO4 si PC printr -un cablu
USB;
– Se realizeaza conexiunea intre placa de dezvoltare si motorul Quanser;
– Se alimenteaza motorul Quanser;
– Se porneste placa de dezvoltare dsPIC PRO 4 de pe comutatorul ON/OFF si se poate
confirma conexiunea daca cele 2 led -uri de pe placa , POWER, respectiv USB LINK
sunt aprinse ;
– Se porneste MikroC si se creeza un proiect nou in felul urmator:
1. File > New > New Project
35
2. In fereastra urmatoare se apasa “Next”;
3. Se introduce numele proiectului, locatia in care se doreste salvarea proiectului, se
selecteaza dispozitivul si se seteaza frecventa;
36
4. In caz ca se doreste adaugarea unor fisiere la proiect se apasa add si se aleg fisierele
respective, in caz contrar
5. Se selecteaza Include All pentru a putea folosii toate librariile disponibile. In caz in care
nu se doreste acest lucru se poate selecta Include None
37
6. Se apasa “Finish” pentru a finalize operatiunea de creeare a unui proiect MikroC;
7. Codul se va scrie in fereastra de lucru;
8. Pentru rularea programului si implementearea acestuia pe placa de dezvoltare se apasa pe
butonul Build and Programm sau pe scurtatura CTRL + F11
38
9. Dupa ce va fi apasat butonul prezentat in pasul anterior se va lansa programul mikroProg
Suite prin care se poate citii, verifica, scrie, sterge, reseta codul incarcat prin mikroC sau
se pot incarca direct file in format hex.
39
unsigned int pwm_period=0, current_duty;
unsigned adcRes;
float x = 0;
char txt[3];
void main() {
UART1_Init(9600); // Se initializeaza modulul Uart la 9600 bps
Delay_ms(100); // Se asteapta stabilizarea modulului UART
PORTB = 0 // Port B este setat la o valoare inițială
TRISB = 0xffff; // Portul B este setat ca iesire
PORTD = 0; // Portul D este setat ca intrare – necesar pentru ca ADC -ul sa functioneze
ADC1_I nit(); // Se initializeaza ADC -ul
TRISD = 0;
ADPCFG = 0xffff; // Toti pinii portului B sunt analogici
pwm_period = PWM_Init(5000 , 1, 1, 2);
PWM_Start(1); // Start modul PWM1
current_duty = pwm_period/1.61; // Valoarea initiala a variabilei current_duty
Delay_ms(3000);
while (1) {
adcRes = ADC1_Read(11);
Delay_ms(1500); // Se intarzie functia cu 1500 ms
//current_duty = ((adcRes*4.99)/4095);
//current_duty = current_duty*100/4.99;
PWM_Set_Duty (current_duty, 1);
Delay_ms(200);
x = (adcRes*4.99)/4095;
FloatToStr(x ,txt);
UART1_Write_Text(txt);
UART1_Write_Text(" ");
Delay_ms(100);
}
}
40
Parametrii folositi in realizarea programului sunt:
MHz = 40
K = 46.8
T = 1.2
V = 3
1V=667 RPM
1V = 69.8 radians / s
3V = 2001 RPM
3V = 209.4 radians / s
Ω = 209.4
t1 = 0.1 s
41
MULȚUMIRI
În primul rând mulțumesc domnului Asist.univ.dr.ing. Florin Stângă pentru timpul și
sprijinul acordat în realizarea acestui proiect.
Mulțumesc de asemenea tuturor profesorilor din cadrul facultății de Automatică,
Calculatoare și Electronică din Craiova, care mi -au oferit pe parcursul anilor de studiu o bază
solidă în acest domeniu, care cu siguranță mă va ajuta în cariera profe sională.
42
BIBLIOGRAFIE ȘI REFERINȚE WEB
1. http://www.mikroe.com/products/view/40/dspicpro4 -development -system/
2. http://www.cprogrammingexpert.com/C/introduction_to_c_programming_language.aspx
3. http://www.learnconline.com/2015/07/introduction -c-programming -language.html
4. http://www.ni.com/white -paper/4604/en/
5. https://ro.wikipedia.org/wiki/Motor_electric
6. http://www.quanser.com/products/qnet -dcmotor
7. Băieșu, Alina -Simona – Tehnica Reglării Automate, Editura : Matrixrom
8. Brian W. Kernighan – The C Programming Language 2nd Edition,
Dennis M. Ritch Publisher: Prentice Hall
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Asist.univ.dr.ing. Florin Stîngă Februarie , 201 6 CRAIOVA UNIVERSITATEA DIN CRAIOVA FACULTATEA DE AUTOMATICĂ, CALCULATOARE ȘI ELECTRONICĂ… [600306] (ID: 600306)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
