Driver pentru motorul brushless [305203]
Driver pentru motorul brushless
Conducător științific:
Conf. dr. ing. Mihai PANU
Absolvent: [anonimizat]: Electromecanică
Sibiu, 2017
UNIVERSITATEA “LUCIAN BLAGA” DIN SIBIU
FACULTATEA DE INGINERIE
DEPARTAMENTUL DE CALCULATOARE ȘI INGINERIE ELECTRICĂ
” Driver pentru motorul brushless”
Conducător științific:
Conf. dr. ing. Mihai PANU
Absolvent: [anonimizat]: Electromecanică
Sibiu, 2017
CUPRINS
1. INTRODUCERE……………………………………………………………………………………………………..4
2. NOȚIUNI TEORETICE 6
2.1 Motoare brushless 7
2.2 Construcția motoarelor brushless 8
2.3 Principiu de funcționare și comandarea unui BLDC 12
2.4 Puntea H 18
2.5 Semanalul PWM 24
2.6 Microcontroler 28
3. PROIECTUL TEHNIC 40
3.1 Caracteristicile microcontrollerului 40
3.2 Descrierea circuitelor 48
3.3 Alegerea componentelor 56
3.4 [anonimizat] 62
4. REALIZARE PRACTICĂ 72
4.1 Determinări experimentale 72
4.2 Concluzii 64
5. BIBLIOGRAFIE……………………………………………………………………………………………………
[anonimizat], le-a realizat în anii 1740. [anonimizat] a lui Ampere, a [anonimizat] 1820. Conversia energiei electrice în energie mecanică prin metode electromagnetice a [anonimizat], în anul 1821.
În 1827 fizicianul maghiar Anyos Jedlik a început să experimenteze cu bobine electromagnetice. După ce Jedlik a [anonimizat] a numit primele sale dispozitive “autorotoare electromagnetice”. [anonimizat] 1828 Jedlik a demonstrat primul dispozitiv care conținea trei părți principale a unui motor electric pe curent continuu (motor CC): statorul, rotorul și comutatorul. [anonimizat].
În mai 1834 [anonimizat] a [anonimizat]. Pe 13 septembrie 1838, [anonimizat], inventatorul a realizat prima plimbare cu o barcă la bordul căreia se aflau șase pasageri. Barca era acționata de un motor electric cu o putere de 220 W.
Primul motor CC comutator capabil să acționeze mașinării a fost inventat de savantul britanic William Sturgeon în anul 1832. [anonimizat], dar toate s-au confruntat cu aceeași problemă legată de costurile ridicate ale bateriilor. [anonimizat] a existat o piață comercială practică pentru aceste motoare.
Primul motor CC care a avut un succes comercial a fost demonstrat de către Zenobe Gramme în anul 1871, când a [anonimizat] a rezolvat problema pulsațiilor de curent continuu. În 1873 Gramme a [anonimizat] l-a prezentat cu un mare succes la expozițiile din Viena si Philadelphia prin conectarea a două astfel de motoare CC la o distanță de până la doi kilometri între ele, unul fiind folosit drept generator.
În anul 1824 fizicianul francez, Francois Arago a formulat existența câmpurilor magnetice rotative, denumite rotațiile lui Arago, pe care, prin oprirea și pornirea manuală, Walter Baily le-a demonstrat în 1879 ca un efect al primului motor primitiv cu inductie.
Motoarele electrice și-au găsit rapid locul în aplicații, spre exemplu, primul ascensor electric, prezentat de Siemens în anul 1880, a fost acționat de un motor electric.
În ziua de azi ,datorită tuturor progreselor tehnologice motoarele electrice au un rol important în industrie. Acestea se găsesc în multe aplicații începând cu industria și până la aparatele electrocasnice . În prezent se găsesc foarte multe tipuri de motoare electrice atât de current continuu cât și de current alternativ.
Printre aceste numeroare tipuri de motoare se regăsește și motorul de curent continuu fără perii colectoare (Brushless/BLDC).
Motorul Brushless este în principal construit ca un magnet permanent rotativ față de o înfășurare parcursă de curent. În această privință el este echivalent cu un motor de c.c inversat, în care magnetul se rotește în timp ce conductoarele rămân fixe.
În ambele cazuri, curentul prin conductoare trebuie să-și reverseze polaritatea de fiecare dată când un pol magnetic trece pe lângă conductoare, pentru a asigura unidirecționalitatea cuplului.
Figura 1 Secțiunea transversală a unui motor de c.c cu collector.
Noțiuni teoretice
Motoare brushless
Un motor de curent continuu fără perii (cunoscut sub numele de BLDC) este un magnet permanent cu motor electric sincron, care este acționat de curentul continuu (CC) și care se comandă printr-un sistem de comutare controlat electronic (comutația este procesul de producere a cuplului de rotație în motor prin schimbarea curenților de faza la intervale de timp corespunzătoare) în locul unui sistem de comutație mecanică. Motoarele BLDC sunt, de asemenea, menționate ca motoare trapezoidale cu magneți permanenți.
Spre deosebire de motorul convențional cu perii colectoare unde periile fac contactul mecanic cu comutatorul pe rotor astfel încât să se formeze o cale între sursa de curent continuu și înfășurarea armăturii rotorice, motorul brushless utilizează o comutare electrică cu magneți permanenți și un stator cu o secvență de bobine. În acest motor magneții permanenți se rotesc și conductoarele de curent sunt fixe.
Figura 2 Bobinaj motor brushless
Bobinele de armătură sunt activate electronic de tranzistori sau redresoare controlate cu siliciu la poziția corectă a rotorului într-un așa fel astfel încât armătură câmpului este plasată în cuadratura cu polii câmpului rotoric. Prin urmare forță care acționează asupra rotorul duce la rotirea acestuia . Senzorii Hall sau encoderele rotative sunt cele mai des întâlnite și utilizate pentru a sesiza poziția rotorului , acestea sunt poziționate în jurul statorului.
Feedback-ul venit de la senzor în legătură cu poziția rotorului ajută la determinarea timpului când trebuie schimbat curentul prin armătură.
Acest tip de comutatie electronică duce la eliminarea periilor colectoare și a comutatorului într-un motor de curent continuu. Motorul devine mai fiabil și mai puțin zgomotos, din cauza dispartiei periilor colectoare motoarele BLDC sunt capabile să ruleze la viteze mai mari . Eficiența unor astfel de motoare este în general în jurul a 85-90% , în timp ce la cele cu perii eficiența se încadrează între 75-80%. Există o varietate destul de mare de motoare BLDC disponibile variind de la gama de putere mică până la puterii foarte mari.
Construcția motoarelor brushless
Motoarele BLDC pot fi construite în diferite configurații. În funcție de înfășurările statorice acestea pot fi configurate cu o singură faza , cu două faze sau cu trei faze. Cu toate acestea sunt utilizate cel mai frecvent motoarele BLDC cu rotor cu magneți permanenți și trei faze.
Figura 3 Construcția unui motor BLDC
Există două tipuri de motoare fără perii colectoare și anume: inrunners și outrunners.
Există diferențe de construcție între cele două , astfel la motoarele BLDC de tip inrunner magneții permanenți sunt plasați în interior și bobinele în exterior . Motoarele BLDC de tip inrunner se aseamănă cu motoarele cu perii colectoare exceptând poziționarea magneților permanenți.
Figura 4 Motor BLDC de tip inrunner
Motoarele BLDC de tip outrunner au bobinele plasate în interior și magneții permanenți în exterior.
Figura 5 Motor BLDC de tip outrunner
Cu cât un motor se învârte mai repede cu atât mai eficient devine. Motoarele de tip inrunner se învârt foarte repede și sunt mai eficiente decât cele de tip outrunner . De obicei în aplicații cele de tip inrunner necesită o cutie de viteză pentru a adapta viteza.
Dezavantajul lor îl reprezintă numărul în plus de componente ce se pot strica.
Comparație între motoarele BLDC de tip inrunner și outrunner
Tabel 1 Specificațiile motoarele de tip inrunner si outrunner
Părțile componente ale unui motor brushless
Figura 6 Părți componente BLDC
Construcția acestui motor de CC are multe similitudini cu motorul de inducție cu trei faze, precum și cu motorul convențional de curent continuu. Cele mai importante piese la acest motor sunt statorul , rotorul si senzorul Hall.
Statorul
Statorul unui motor BLDC alcătuit din tole de oțel stivuite pentru a transporta înfășurări. Aceste înfășurări sunt plasate în spații care sunt tăiate axial de-a lungul periferiei interioare a statorului. Aceste înfășurări pot fi aranjate atât în stea cât și în triunghi. Cu toate acestea, majoritatea motoarelor BLDC cu trei faze au statorului conectat în stea.
Fiecare înfășurare este construită cu numeroase serpentine interconectate, în cazul în care una sau mai multe bobine sunt plasate în fiecare fantă. Pentru a forma un număr par de poli, fiecare dintre aceste înfășurări este distribuită pe circumferința statorului.
Figura 7 Stator motor brushless
Statorul trebuie să fie ales cu o rată corectă a tensiunii în funcție de capacitatea de alimentare. Pentru robotică, aplicații de acționare în automotive sunt preferate motoarele BLDC de 48 V sau mai puțin. Pentru aplicații industriale și sisteme de automatizare, sunt folosite motoarele de 100 V sau mai mari .
Rotorul
Motor BLDC încorporează un magnet permanent în rotor. Numărul de poli în rotor poate varia de la 2 la 8 perechi de poli, cu sud, alternativ și polii de nord, în funcție de cerința de aplicare. Pentru a atinge cuplul maxim în motor, densitatea de flux a materialului trebuie să fie ridicată. Un material magnetic adecvat pentru rotor trebuie să producă o densitate câmp magnetic.
Figura 8 Rotor motor brushless
Magneții din ferită sunt ieftini , dar aceștia au un flux de densitate scăzut pentru un volum dat . Magneții din aliaje rare de pământ sunt utilizate în mod obișnuit pentru creearea unor noi modele. Câteva dintre aceste aliaje sunt samariul de cobalt(SmCo) , neodimul (Nd) , ferite și bor (NdFeB). Rotorul poate fi construit cu diferite configurații de baza cum ar fi miezul circular cu magnetul permanent situat la periferie, miez circular cu magneți rectangulari etc.
Senzorii Hall
Senzorii Hall furnizează informații pentru a sincroniza excitația armăturii statorului cu poziția rotorului. Din moment ce comutatia unui motor BLDC este controlată electronic înfășurările statorului trebuie alimentate într-o anumită ordine astfel încât să se învârtă motorul.
Înainte de a se alimenta o anumită înfășurare statorica trebuie cunoscută poziția rotorului. Astfel senzorul Hall este încorporat în stator și semnalizează poziția rotorului.
Majoritatea motoarelor BLDC încorporează trei senzori hall care sunt plasați pe stator. Fiecare senzor generează câte un semnal „Low” și unul „High” în momentul în care polii rotorului trec prin apropierea acestuia. Secvență de comutatie exactă către înfășurarea statorului poate fi determinată pe baza răspunsurilor primite de la cei trei senzori hall.
2.3 Principiu de funcționare si comandarea unui motor BLDC
Motorul BLDC funcționează pe principiul similar cu cel al unui motor convențional de curent continuu și anume pe baza legii forței a lui Lorentz care prevede că ori de câte ori un conductor care transportă curent electric plasat într-un câmp magnetic experimentează o forță. Ca o consecință a forței de reacție, magnetul va experimenta o forță egală și opusă. În cazul în care motorul BLDC, conductorul care transportă curent este staționar, în timp ce se mișcă cu magneți permanenți.
Când bobinele statorului sunt comutate electric de la o sursă de alimentare, acestea încep să producă câmpul uniform în întrefier. Cu toate că sursă de alimentare este de curent continuu , comutarea duce la generarea unei formă de undă de tensiune de curent alternativ cu formă trapezoidală. Datorită forței de interacțiune dintre electromagnetul statorului și magnetul permanent din rotor duce la rotirea continuă a acestuia.
Luând în considerare figura de mai jos în care statorul motorului este excitat în funcție de diferitele faze ale comutației. Cu schimbarea înfășurărilor că și semnale High(„1”) și respectiv Low(„0”) ,înfășurările corespunzătoare se alimentează că și polii nord și sud. Magnetul permanent din rotor cu polii nord și sud se aliniează cu polii statorului ducând la rotirea motorului în sensul acelor de ceasornic.
Figura 9 Secvența de comutație
O întrebare des întâlnită este cum ne dăm seama ce bobină trebuie alimentată și când. Ne întrebăm acest lucru deoarece rotirea motorului de cc depinde de secvența de comutație din jurul bobinelor. Cum s-a explicat mai devreme senzorul hall oferă un feedback către controlerull electronic în ceea ce privește poziția rotorului. Bazându-ne pe semnalul primit de la sensor , microcontrollerul decide în particular ce bobină trebuie alimentată . Senzorii Hall generează semnale High și Low de fiecare dată când polii rotorului trec prin apropierea acestuia.
Așa cum este descris mai sus că circuitul controlat electronic alimentează înfășurările motorului prin intermediul unor tranzistori comutați într-o anumită ordine astfel încât motorul să se învârtă în mod continuu. Figura de mai jos ne prezintă driverul unui motor BLDC alcătuit din o punte de tranzistoare (Mosfet) , un controller electronic , senzori hall și motor BLDC.
Figura 10 Schemă bloc driver BLDC
În plus față de comutarea pentru o viteză nominală a motorului , circuitele electronice din figură ne ajută la schimbarea vitezei motorului în funcție de aplicație . Unitățile de control a vitezei sunt în general implementate cu microcontrollerul pentru a avea un control precis.
În ceea ce privește comutația la motoarele brushless avem 2 tipuri mari de comutație :
1.Comutația sinusoidală
2.Comutația trapezoidală
Comutația sinusoidală este posibilă în momentul în care avem suficiente date despre poziția rotorului. Deoarece curenții de fază sunt sinusoidali în funcție de poziția rotorului unul din aceștia are nevoie de o rezoluție minimă pentru a creea o sinusoidă cât mai precisă. În plus avem nevoie și de poziția magnetului pe rotor . Feedback`ul în ceea ce privește poziția rotorului trebuie să fie absolut, dar din cauză că nu ne putem permite un feedback absolut există două tehnici pentru a determina cât mai precis poziția rotorului.
Obținerea unui curs de poziționare absolut în momentul alimentării , iar apoi folosim feedback`ul de incrementare pentru a obține o rezoluție cât mai mare.
Obținerea unghiului electric al rotorului folosind doar feedback-ul de incrementare prin intermediul unei rutine de “găsire a fazei”.
De obicei prima varianta este utilizată în combinație cu senzorii hall și un encoder de incrementare . A două metodă se poate aplică doar dacă câteva mișcări necontrolate sunt premise în timp pornirii.
Figura 11 Comutație sinusoidală
În această imagine observăm cei trei curenți de fază în timp ce motorul accelerează. Curentul de referință este “modulat” de către unghiul electric al rotorului. Comutatia sinusoidală oferă un control optim al cuplului dar impune anumite cerințe în ceea ce privește feedback`ul. În aplicațiile ce necesită controlul poziției aceste cerințe de feedback nu sunt în general o problemă.
Comutația trapezoidală
Aplicațiile care nu necesită controlul poziției (ex viteză sau controlul cuplului) pot profită de o comutatie mai simplă , costuri mai mici de comutare alternative prin intermediul comutării trapezoidale. Acest tip de comutare nu încearcă să mențină un unghi ideal de 90 de grade între stator și câmpul magnetic al rotorului în orice moment.
Comutarea trapezoidală (comutația în șase etape) este comună în cazul aplicațiilor de mare viteză sau atunci când este necesar un cuplu de pornire mai mare. Comutația trapezoidală este, de asemenea, mai puțin costisitoare decât alte metode, datorită algoritmilor de control simplificați. În majoritatea aplicațiilor, poziția rotorului este determinată de trei senzori cu efect Hall care sunt montați pe stator, la o distanță de 120 de grade. Când rotorul trece peste senzori, ele produc fie un semnal High, fie un semnal Low, pentru a indica care pol de rotor (N sau S) trece.
Schimbarea de la înaltă la joasă (sau joasă înaltă) a celor trei senzori Hall oferă informații despre poziția rotorului la fiecare 60 de grade, ceea ce înseamnă că sunt necesare șase etape pentru a completa un ciclu electric – astfel, termenul "comutație în șase etape". Secvența de comutare corectă este determinată de combinația semnalelor senzorului Hall. Comutarea trapezoidală poate fi efectuată și pe baza EMF din spate a motorului, care permite eliminarea senzorilor Hall.
Într-un motor tipic trifazat BLDC cu curent trapezoidal, o înfășurare este pozitivă, o înfășurare este negativă și una este deschisă. Înfășurarea deschisă poate fi utilizată pentru a detecta punctul de trecere a EMF din spate, care corespunde cu ceea ce ar fi o schimbare a semnalului într-un senzor Hall. Cu toate acestea, EMF din spate este proporțional cu viteza motorului.
Acest lucru înseamnă că la viteze foarte scăzute (și mai ales la pornire), EMF-ul din spate va fi foarte scăzut, astfel încât motorul trebuie pornit în modul cu buclă deschisă până când se generează o viteză suficientă și un EMF înapoi. În acel moment, controlerul poate fi comutat înapoi în EMF pentru comutare.
Figura 12 Semnal senzor Hall , EMF(ideal trapezoidal) , riplul cuplului ,curentul de fază pentru un BLDC
Dezavantajul comutării trapezoidale (în șase trepte) este acela că rezultă riplul cuplului la fiecare pas al comutării (la fiecare 60 de grade). Și, deși teoretic, EMF din spate a motorului BLDC este trapezoidal, în realitate, forma de undă EMF din spate nu este pur trapezoidală. Inductivitatea în motor măsoară EMF-ul din spate într-o formă mai sinusoidală. Și deoarece EMF din spate este mai sinusoidal decât trapezoidal, este posibilă utilizarea comutației sinusoidale cu motoare BLDC. Aceasta necesită adăugarea unui codificator sau a unui resolver pentru a urmări cu precizie poziția rotorului, ceea ce adaugă costuri sistemului, dar duce la o reducere semnificativă a cuplului.
O altă opțiune este utilizarea controlului orientat pe câmp (FOC). Aceasta este o metodă în care vectorul curent (magnitudinea și direcția) este determinat relativ la rotor, mai degrabă decât pe baza undelor sinusoidale, așa cum se face în comutația sinusoidală. În timp ce comutația sinusoidală are o eficiență scăzută la viteze mari, FOC asigură o eficiență ridicată într-un interval de viteză mare, precum și o mișcare foarte ușoară.
În timp ce nomenclatura poate fi confuză, referindu-se la motoarele BLDC ca motoare trapezoidale care le distinge de motoarele BLAC. Abilitatea de a utiliza comutație trapezoidală sau sinusoidală sau control orientat pe câmp face ca motoarele BLDC să fie aplicabile la o gamă largă de aplicații cu opțiuni de echilibrare a cerințelor de performanță cu complexitate și costuri de control.
2.4 Puntea H
O punte H este un circuit electronic care permite aplicarea unei tensiuni pe o sarcină în ambele direcții. Aceste circuite sunt adesea folosite în robotică și alte aplicații pentru a permite motoarelor DC să circule înainte sau înapoi.
Majoritatea convertoarelor DC-to-AC (convertoarele de putere), majoritatea convertoarelor AC / AC, convertorul DC-to-DC, majoritatea controllerelor de motoare și multe alte tipuri de electronice de putere utilizează punțile H. În particular, motoarele pas cu pas , cu perii colectoare , fara perii colectoare sunt controlate de un driver de motor care conține punte H.
În general configurația de punte H este un circuit simplu , care conține de obicei patru elemente de comutație , iar sarcina este plasată in mijloc formând o configurație de tip H.
Figura 13 Configurație Punte H
În aceasta schema elementele de comutație (Q1…Q4) sunt deobicei tranzistoare bipolare sau de tip FET, în unele aplicații unde este nevoie de un nivel mare de tensiune se folosesc și IGBT-uri. Partea de sus a punții este conectată la alimentare , în timp ce partea de jos este conectată la ground(împământare).
În general toate cele patru elemente de comutație pot fi pornite și oprite independent , dar există și câteva restricții. În teorie sarcină poate fi orice ne dorim , însă în practică de cele mai multe ori întâlnim un motor ca și sarcină pentru puntea H. Pentru configurația cu patru tranzistoare motoarele întâlnite sunt cele pas cu pas și cu perii colectoare.
Modul de funcționare:
Pentru a rotii motorul în sensul acelor de ceasornic vor fi acționate tranzistoarele Q1 si Q4 permițând curentului sa treacă prin motor și astfel acesta se va învârtii.
Figura 14 Rotirea motorului în sensul acelor de ceasornic
Pentru a rotii motorul in sens invers acelor de ceasornic se vor acționare tranzistoarele Q2 și Q3
Figura 15 Rotirea motorul în sens invers acelor de ceasornic
Într-o punte H nu trebuie niciodată să închideți elementele de comutație Q1 și Q2 (sau Q3 și Q4) în același timp. Dacă ați făcut asta, tocmai ați creat o cale de rezistență foarte scăzută între putere și GND, scurtcircuitând în mod eficient sursa de alimentare. Această condiție este numită "trage-prin" și este o modalitate aproape garantată de a distruge rapid puntea H sau altceva în circuit.
Puntea H cu tranzistoare este probabil cea mai întâlnită pentru controlul bidirecțional al unui motor de current continuu . Aceasta folosește tranzistoare complementare în pereche atat NPN cât și PNP pe fiecare ramură pentru a contola motorul.
Figura 16 Punte H cu tranzistoare complementare (PNP și NPN)
Comanda de intrare A acționează motorul într-o direcție, (rotirea în sensul acelor de cearsornic), în timp ce intrarea B acționează motorul în direcția opusă (rotația în sens invers acelor de ceasornic). Apoi, prin comutarea tranzistorilor "ON" sau "OFF" în "perechile diagonale" rezultă controlul direcțional al motorului.
De exemplu, atunci când tranzistorul TR1 este "ON" și tranzistorul TR2 este "OFF", punctul A este conectat la tensiunea de alimentare (+ Vcc) și dacă tranzistorul TR3 este "OFF" și tranzistorul TR4 este "ON" 0 volți (GND). Apoi, motorul se va roti într-o direcție corespunzătoare terminalului motorului A pozitiv, iar borna motorului B va fi negativă.
Dacă stările de comutare sunt inversate astfel încât TR1 este "OFF", TR2 este "ON", TR3 este "ON" și TR4 este "OFF", curentul motorului curge acum în direcția opusă, determinând motorul să se rotească în sens invers direcție.
Apoi, prin aplicarea unor niveluri logice opuse "1" sau "0" la intrările A și B direcția de rotație a motoarelor poate fi controlată după cum urmează.
Tabel 2 Tabel de adevar al puntii H
La fel ca în cazul controlului unidirecțional al motorului DC, așa cum se vede mai sus, viteza de rotație a motorului poate fi de asemenea controlată prin modulul Pulse Width Modulation sau PWM. Apoi, prin combinarea comutării punții H cu control PWM, direcția și viteza motorului pot fi controlate cu exactitate.
În ceea ce privește motorul brushless vom avea o configurație cu șase tranzistoare.
Motivul pentru care în cazul motorului BLDC avem o punte H formată din șase tranzistoare îl reprezintă cele trei înfășurări .
Figura 17 Înfășurări BLDC
Figura 18 Punte H pentur un BLDC
Secvența de comutație pentru aceasta punte H va fi asemănătoare cu cea precedent, astfel tranzistoarele vor fi acționate pe diagonală. Pentru a induce curent prin înfășurările A și B trebuie acționate tranzistoarele comandate de semnalele INHA pentru înfășurarea A și INB pentru înfășurarea B.
Având alimentarea legată la tranzistorul comandat de semnalul INHA atunci mișcarea motorului va fi în sensul acelor de ceasornic. Pentru a realiza o rotație completă a motorului trebuie sa inducem curent prin înfășurările B și C . Acestea vor acționa tranzistoarele comandate de semnalele INHB și INC atunci când înfășurarea B este conectata la alimentare , iar înfășurarea C la GND.
Ca să realizăm rotația completă mai trebuie să inducem curent prin înfășurările C și A. Aici tranzistoarele vor fi acționate de semnalele INHC și INA când înfășurarea C este conectată la alimentare și înfășurarea A la GND.
Cu ajutorul semnalului PWM putem controla viteza motorului .
2.5 Semnalul PWM (Pulse width modulation)
Modularea lățimii impulsurilor (PWM) sau modulația cu durată a impulsului (PDM) este o tehnică de modulare utilizată pentru a codifica un mesaj într-un semnal de pulsație. Deși această tehnică de modulație poate fi utilizată pentru a codifica informații pentru transmisie, utilizarea sa principală este aceea de a permite controlul energiei furnizate dispozitivelor electrice, în special a sarcinilor inerțiale ,cum ar fi motoarele. În plus, PWM este unul dintre cei doi algoritmi principali utilizați în încărcătoarele fotovoltaice pentru baterii solare, celălalt fiind urmărirea punctului maxim de putere.
Valoarea medie a tensiunii (și a curentului) alimentată de sarcină este controlată prin rotirea și întreruperea comutatorului între alimentare și încărcare la un ritm rapid. Cu cât comutatorul este mai lung în comparație cu perioadele de oprire, cu atât este mai mare puterea totală furnizată încărcăturii.
Frecvența de comutare PWM trebuie să fie mult mai mare decât ceea ce ar afecta încărcătura (dispozitivul care utilizează puterea), adică forma rezultată a formei de undă percepută de încărcătură trebuie să fie cât mai lină posibil. Rata (sau frecvența) la care alimentarea cu energie electrică trebuie să se schimbe poate varia foarte mult în funcție de încărcare și de aplicație, de exemplu
Comutarea trebuie să se facă de câteva ori pe minut într-o sobă electrică; 120 Hz într-o lampă de dimmer; Între câțiva kilohertz (kHz), la zeci de kHz pentru un motor; Și bine în zeci sau sute de kHz în amplificatoare audio și surse de alimentare pentru computer.
Ciclul de sarcină termen descrie proporția de timp "la" la intervalul regulat sau "perioada" de timp; Un ciclu de funcționare redus corespunde unei puteri scăzute, deoarece alimentarea este oprită în cea mai mare parte a timpului. Ciclul de funcționare este exprimat în procente, 100% fiind pe deplin.
Principalul avantaj al PWM-ului este că pierderea de putere în dispozitivele de comutare este foarte scăzută. Când un întrerupător este oprit, practic nu există curent, iar atunci când acesta este pornit și puterea este transferată la sarcină, nu există aproape nici o scădere de tensiune pe întrerupător. Pierderea de putere, fiind produsul tensiunii și curentului, este astfel, în ambele cazuri, aproape de zero. PWM funcționează bine și cu comenzile digitale, care, din cauza naturii lor on / off, pot seta cu ușurință ciclul de sarcină necesar.
PWM-ul a fost, de asemenea, utilizat în anumite sisteme de comunicații în care ciclul său de funcționare a fost utilizat pentru a transmite informații pe un canal de comunicații.
PWM-ul se poate utiliza pentru a controla cantitatea de energie livrată unei sarcini fără a suferi pierderile care ar rezulta din furnizarea de energie liniară prin mijloace resistive.
Dezavantajele acestei tehnici sunt că forța trasă de sarcină nu este constantă, ci mai degrabă discontinuă iar energia livrată la sarcină nu este nici continuă. Cu toate acestea, sarcina poate fi inductivă și cu o frecvență suficient de ridicată, iar dacă este nevoie forma pulsului poate fi netezită cu ajutorul filtrelor pasive(RC) și forma medie a undelor analogice recuperată.
Sistemele de control al puterii cu un PWM de înaltă frecvență pot fi realizate folosind comutatoare semiconductoare. Aproape nici o putere nu este disipată de comutatorul în starea "on" sau "off". Cu toate acestea, în timpul tranzițiilor între stările de pornire și oprire, atât tensiunea, cât și curentul sunt nenuloase și astfel puterea este disipată în comutatoare. Prin schimbarea rapidă a stării între complet deschis și complet închis (deobicei mai puțin de 100 ns), disiparea de putere a comutatoarelor poate fi destul de scăzută în comparație cu puterea livrată la sarcină.
Comutatoarele moderne cu semiconductoare, cum ar fi MOSFET-urile sau tranzistoarele bipolare cu izolație (IGBT), sunt componente potrivite pentru controlerii de înaltă eficiență.
Convertoarele de frecvență utilizate pentru a controla motoarele cu curent alternativ pot avea o eficiență mai mare de 98%. Sursele de alimentare de comutare au o eficiență mai scăzută datorită nivelurilor scăzute ale tensiunii de ieșire (adesea chiar mai puțin de 2 V pentru microprocesoare), dar se poate obține încă o eficiență de peste 70-80%.
Un dispozitiv digital, cum ar fi un microcontroler, poate lucra cu ușurință cu intrări și ieșiri care au doar două stări, pornite și oprite. Deci, puteți să-l utilizați cu ușurință pentru a controla starea unui LED, adică pornit sau oprit. În același mod îl puteți folosi pentru a controla orice dispozitiv electric pornind / oprit utilizând driverele corespunzătoare (tranzistor, triac, relee etc.). Dar, uneori, aveți nevoie de mai mult decât controlul "on" și "off" asupra dispozitivului. Dacă doriți să controlați luminozitatea unui LED (sau a oricărei lămpi) sau viteza motorului DC, atunci semnalele digitale (on / off) pur și simplu nu o pot face. Această situație este foarte inteligent manipulate de o tehnică numită PWM sau Pulse Width Modulation.
PWM este tehnica utilizată pentru a genera semnale analogice de la un dispozitiv digital cum ar fi un MCU. Aproape toate MCU-urile moderne au hardware dedicat pentru generarea de semnale PWM. În acest tutorial vom învăța elementele de bază ale tehnicii PWM și mai târziu vom vedea cum să implementăm generarea PWM cu microcontrolerele AVR.
Figura 19 Semnal PWM
Duty cycle reprezintă raportul între perioada în care semnalul este activ sau un sistem și perioada întregului semnal.Duty cycle-ul este în general exprimat ca procent sau raport.
O perioadă este timpul necesar pentru ca un semnal să finalizeze un ciclu de pornire și oprire. Ca și formulă acesta poate fi scris :
Perioada reprezintă timpul total [s]
În electronica digitală, semnalele sunt folosite în formă de undă dreptunghiulară reprezentată de logica 1 și logica 0. Logica 1 reprezintă prezența unui impuls electric și 0 pentru absența unui impuls electric. De exemplu, un semnal (10101010) are un ciclu de funcționare de 50%, deoarece impulsul rămâne ridicat pentru 1/2 din perioada respectivă sau scăzut pentru o jumătate din perioada. În mod similar, pentru puls (10001000), ciclul de funcționare va fi de 25%, deoarece pulsul rămâne ridicat numai pentru 1/4 din perioadă și rămâne scăzut timp de 3/4 din perioadă. Motoarele electrice folosesc de obicei mai puțin de un ciclu de funcționare de 100%. De exemplu, dacă un motor rulează pentru unul din 100 de secunde sau 1/100 din timp, atunci ciclul său de funcționare este 1/100 sau 1%.
Modularea lățimii impulsurilor (PWM) este utilizată într-o varietate de situații electronice, cum ar fi furnizarea energiei și reglarea tensiunii.
În muzica electronică, sintetizatorii de muzică variază ciclul de funcționare a oscilatoarelor lor de frecvență audio pentru a obține un efect subtil asupra culorilor tonurilor. Această tehnică este cunoscută sub numele de modulație cu lățimea impulsurilor.
În industria imprimantei / copiatoarelor, specificația privind ciclul de funcționare se referă la cantitatea nominală (respectiv paginile imprimate) a unui dispozitiv pe lună.
Într-o sursă de alimentare prin sudură, ciclul maxim de sarcină este definit ca procentul de timp într-o perioadă de 10 minute, care poate fi operat în mod continuu înainte de supraîncălzire.
2.6 Microcontroller
2.6.1 Introducere
Privind evoluția istorică a operației de comandă a unui proces putem contura imaginea unui microcontroller (MC – se va folosi în continuare această prescurtare pentru a numi un microcontroller).
Un controller este un sistem folosit pentru a comanda și a prelua stări de la un proces sau un aspect al mediului înconjurător. La început un controller era un echipament de mari dimensiuni. După apariția microprocesoarelor dimensiunile controller-elor s-au redus.
Procesul de miniaturizare a continuat, toate componentele necesare unui controller au fost integrate pe același chip. S-a născut astfel calculatorul pe un singur chip specializat pentru implementarea operațiilor de control; acesta este microcontroller-ul.
Un microcontroller este un circuit realizat pe un singur chip care conține tipic:
• unitatea centrală;
• generatorul de tact (la care trebuie adăugat din exterior un cristal de cuarț sau în aplicații mai puțin pretențioase, un circuit RC);
• memoria volatilă (RAM);
• memoria nevolatilă (ROM/PROM/EPROM/EEPROM);
• dispozitive I/O seriale și paralele;
• controller de întreruperi, controller DMA, numărătoare/temporizatoare (timers), covertoare A/D și D/A, etc.; • periferice.
Desenele interne de bază ale microcontrolerelor sunt destul de asemănătoare. Figura de mai jos prezintă diagram bloc a unui microcontroler tipic.
Toate componentele sunt conectate printr-o magistrală internă și sunt toate integrate pe un singur cip.
Modulele sunt conectate la lumea exterioară prin pinii I / O.
Următoarea listă conține modulele de obicei găsite într-un microcontroler.O descriere detaliată a acestor componente în secțiunile următoare.
Figura 20 Componente microcontroller
Procesor Core: CPU-ul controlerului.
Acesta conține unitatea logică aritmetică, unitatea de control și registrele (indicatorul stack, contorul de programe, registrul acumulatorilor, fișierul de înregistrare, …).
Memorie:
Memoria este uneori împărțită în memoria programelor și memoria de date. La controalele mai mari, un controler DMA se ocupă de transferurile de date între componentele periferice și memoria.
Întreruperi de comandă:
Întreruperile sunt utile pentru întreruperea fluxului normal al programului în cazul evenimentelor (importante) externe sau interne. În combinație cu modurile de somn, ele ajută la economisirea energiei.
Timer / Counter:
Majoritatea controlorilor au cel puțin o probabilitate de 2-3 Timer / Counters, care pot fi folosite pentru a marca evenimentele, a măsura intervalele sau a număra evenimente.
Multe controale conțin, de asemenea, ieșiri PWM (modulație în lățime de impuls), care pot fi utilizate pentru a conduce motoare sau pentru a rupe în siguranță (sistem antiblocare frână, ABS). Mai mult, ieșirea PWM poate fi folosită împreună cu un filtru extern pentru a realiza un convertor digital / analog ieftin.
I / O digitale:
Porturile I / O digitale paralele sunt una dintre caracteristicile principale ale microcontrolerelor. Numărul pinilor I / O variază de la 3-4 la peste 90, în funcție de familia de controler și de tipul controlerului.
Analog I / O:
În afară de câteva controale mici, majoritatea microcontrolerelor au integrate convertoare analogice / digitale, care diferă în numărul de canale (2-16) și rezoluția lor (8-12 biți). De asemenea, modulul analogic prezintă un comparator analogic. În unele cazuri, microcontrolerul include convertoare digitale / analogice.
Interfețe:
Controllerele au în general cel puțin o interfață serială care poate fi folosită pentru a descărca programul și pentru a comunica cu PC-ul de dezvoltare în general. Deoarece interfețele seriale pot fi de asemenea utilizate pentru a comunica cu dispozitive externe periferice, majoritatea controllerelor oferă interfețe variante și variante precum SPI și SCI.
Multe microcontrolere conțin, de asemenea, controale integrate de bus pentru cele mai comune (camp) autobuze. Controalele IIC și CAN conduc câmpul aici. Microcontrolerele mai mari pot conține, de asemenea, interfețe PCI, USB sau Ethernet.
Watchdog Timer:
Deoarece sistemele critice de siguranță formează o zonă de aplicație majoră a microcontrolerelor, este important să se protejeze împotriva erorilor din program și / sau hardware. Temporizatorul de watchdog este folosit pentru a reseta controlerul în cazul în care software-ul "se blochează".
Unitatea de depanare:
Unii controlori sunt echipați cu hardware suplimentar pentru a permite depanarea la distanță a chip-ului de pe PC. Deci, nu este nevoie să descărcați software special de depanare, care are avantajul distinct că codul eronat al aplicației nu poate suprascrie depanatorul.
2.6.2 Arhitectura microcontrollerului
Arhitectura unui microcontroler prezintă atributele sistemului așa cum sunt ele văzute de un programator în limbaj de asamblare. Deoarece un microcontroller este un caz particular de calculator, (calculator specializat pentru operații I/O, realizat pe un singur chip), acesta este alcătuit din cele cinci elemente de bază:
unitate de intrare
unitate de memorie
unitate aritmetică și logică
unitate de control
unitate de ieșire.
Unitatea de control împreună cu unitatea aritmetică și logică alcătuiesc împreună unitatea centrală de prelucrare (UCP). Unitățile de intrare și ieșire vor fi tratate împreună și vor fi referite prescurtat ca sistem I/O.
Blocurile componente ale microcontrolerului sunt legate între ele printr-o magistrală internă (bus). Magistrala vehiculează semnale de adresă, de date și semnale de control. Una dintre cele mai importante caracteristici ale microcontrolerului o reprezinta mărimea acestor magistrale. Prin magistrala de adresă a unității centrale de prelucrare (UCP) selectează o locație de memorie sau un dispozitiv I/O, iar pe magistrala de date se face schimbul de informație între UCP și memorie sau dispozitivele I/O. Între UCP și memorie se pot transfera atât date cât și instrucțiuni. Acestea se pot transfera pe o singură magistrală de date sau pe magistrale de date diferite.
În ceea ce priveste arhitectura unui microcontroller întâlnim două tipuri clasice de arhitecturi:
-arhitectura von Neumann
-arhitectura Harvard
Arhitectura von Neumann prevede existența unui bus unic folosit pentru circulația datelor și a instrucțiunilor. Când un controller cu o astfel de arhitectură adresează memoria, bus-ul de date este folosit pentru a transfera întîi codul instrucțiunii, apoi pentru a transfera date. Accesul fiind realizat în doi pași, este destul de lent.
Arhitectura Harvard prevede un bus separat pentru date și instrucțiuni. Când codul instrucțiunii se află pe bus-ul de instrucțiuni, pe bus-ul de date se află șase microcontrolere datele instrucțiunii anterioare. Structura unui microcontroller este mai complexă, dar performanțele de viteză sunt mai bune.
Magistralele interne, după numele lor, nu sunt accesibile în exterior la nivel de pin. Această stare caracterizează regimul normal de funcționare. În anumite regimuri mai deosebite de funcționare, numite diferit la diferitele tipuri de microcontroler, semnalele magistralelor de adrese și de date sunt accesibile la nivel de pin sacrificând funcțiile inițiale ale pin-ilor respective.
Totodată este necesar să fie livrate în exterior și semnale de comandă (cel puțin comandă de scriere (WR) și comandă de citire (RD)). Această facilitate este utilă pentru extensii de memorie sau pentru a atașa sistemului interfețe suplimentare.
Ea nu este posibilă în mod normal de funcționare deoarece aceasta ar presupune existența unui număr foarte mare de pini, ceea ce ar fi neeconomic. Magistralele de adrese și de date pot fi aduse la pin multiplexat sau nemultiplexat.
Performanța microcontrolerului se poate determina în funcție de urmatoarele caracteristici ale magistralei interne:
• dimensiunea magistralei de dată;
• dimensiunea magistralei de adrese;
• accesibilitatea în exterior la magistrale;
• magistrale accesibile multiplexat sau nemultiplexat.
Unitatea centrală de prelucrare este compusă din unitatea aritmetică și logică (UAL) și din unitatea de control.
Unitatea centrală de prelucrare conține un set de registri interni, similare unor locații de memorie, care sunt folosiți pentru memorarea unor date care se apelează des sau pentru programarea unor anumite funcții. Fiecare familie de microcontrolere foloseste anumiti registrii însă exista câtiva care sunt comuni:
-registrul accumulator: acesta este folosit deseori pentru a stoca un operand și rezultatul operației aritmetice sau logice
-registru numărător de program (PC): acest registru stochează adresa următoarei instrucțiuni de executat. După un RESET, registrul PC se încarcă dintr-o locație de memorie numită vector de reset. Această locație conține adresa primei instrucțiuni de executat. Program counter-ul este incrementat automat la execuția unei instrucțiuni
– registrul indicator de stivă(SP=stack pointer): acest registru indică adresa curentă a stivei.
Stiva reprezintă o zonă de memorie accesibilă rapid în care se depun temporar informații importante în desfășurarea programului.
Stiva este definită de obicei în RAM. Implementarea accesului presupune existența unui registru de adresare (SP) și a mecanismului de memorare declanșat de instrucțiuni specifice (instrucțiunile PUSH/POP)
Figura 21 Arhitectura de bază a CPU
2.6.3 Memoria
Memoria reprezintă o componentă de bază pentru un microcontroller Astfel în cadrul unui microcontroller întâlnim mai multe tipuri de memorie:
-Memoria de registri(Register File): o memorie relativ mică (de obicei) încorporată pe CPU. Acesta este folosită ca un “caiet de schiță” pentru stocarea temporară a valorilor pe care CPU-ul lucrează. O putem numi și memoria temporală a CPU-ului.
-Memorie de date: folosită pentru stocarea pe termen mai lung.
Procesoarele generice folosesc de obicei o memorie externă care este mult mai mare decât memoria de registri. Datele stocate acolo pot fi de scurtă durată, dar pot fi valabile atâta timp cât CPU rulează. Ca să putem atașa o memorie externă la un procesor trebuie sa realizăm un efort in plus atât din punct de vedere hardware cât și economic. Din acest motiv, microcontrolerele folosesc, de obicei, memorie de date intregrată pe chip.
-Memoria de instrucțiuni: asemănatoare memoriei de date, memoria de instrucțiuni este de obicei o memorie externă relativ mare
Acum distincția funcțională a tipurilor de memorie formate mai sus se bazează pe modul în care este utilizată memoria. Din perspectiva unui programator, asta are sens. Cu toate acestea, designerii de hardware sau de chip văd de obicei o memorie destul de diferită: preferă să se distingă în funcție de proprietățile fizice ale părților electronice din care este construită memoria.
Acolo, distincția de bază ar fi volatilă față de memoria nevolatilă. În acest context, volatil înseamnă că conținutul memoriei se pierde de îndată ce alimentarea sistemului este oprită.
Desigur, există moduri diferite, fie că tipul de memorie poate fi implementat. Prin urmare, distincția bazată pe proprietățile fizice poate fi detaliată. Memoria volatilă poate fi statică sau dinamică și există o varietate largă de tipuri de memorie nevolatile: ROM, PROM, EPROM, EEPROM, FLASH, NV-RAM.
Figura 22 Tipuri de memorie
Memoria volatilă
După cum sa menționat mai sus, memoria volatilă își păstrează conținutul numai atâta timp cât sistemul este pornit.
Atunci de ce ar trebui să folosiți memoria volatilă, atunci când memoria nevolatilă este disponibilă imediat?
Problema este că memoria nevolatilă este, de obicei, mult mai lentă, mai mult implicată în lucrul cu ea și mult mai scumpă, în timp ce memoria volatilă din PC are timpi de acces în intervalul de nanosecunde, unele tipuri de memorie nevolatilă nu vor fi disponibile pentru milisecunde după ce le scrie un octet prost.
Fără a ține seama de epoca computerelor înainte de utilizarea circuitelor integrate, memoria statică de acces randomizat (SRAM) a fost primul tip de memorie volatilă care trebuie utilizată pe scară largă. Un chip SRAM constă dintr-o serie de celule, fiecare capabilă să stocheze câte un pic de informație. Pentru a stoca informații, se folosește așa-numitul flip-flop, care constă în principal din șase tranzistoare.
Știm deja că memoria de tip SRAM are de obicei nevoie de șase tranzistoare pentru a stoca un singur bit de informație. Desigur, cu cât sunt necesare mai mulți tranzistori pe celulă, cu atât mai mare va fi suprafața de siliciu.
Dacă am putea reduce numărul de componente necesare, să zicem că vom folosi doar jumătate din tranzistori, atunci vom obține aproximativ două ori capacitatea de stocare.
Asta a fost ceea ce sa obtinut cu Dynamic Access Memory Random (DRAM)
Numarul de tranzistori necesar pentru fiecare bit de informatie a fost redus la unul. Acest lucru a redus suprafața de siliciu pentru un anumit număr de celule. Deci la aceeași dimensiune a chipului o memorie de tip DRAM are o capacitate de stocare mult mai mare comparativ cu una de tip SRAM.
Ei bine, în loc să folosească o mulțime de tranzistori pentru a construi flip-flops, un pic de informație este stocată într-un condensator.Acestea funcționează ca niște baterii reîncărcabile (aplicați o tensiune pe ele și stochează tensiunea). După deconectare se va obține un condensator încărcat. Conectând pinii unui condensator încărcat printr-o rezistență un curent electric va curge și va descărca condensatorul.
Acum unde este tranzistorul unic pe celula de memorie despre care am vorbit, deoarece informația este stocată într-un condensator? Ei bine, informațiile sunt într-adevăr stocate într-un condensator, dar pentru a se putea folosii pentru citire sau scriere este nevoie de un tranzistor.
Până acum, ar trebui să fie evident modul în care funcționează o DRAM: dacă doriți să stocați “1” logic adresați celula de memorie pe care doriți să o accesați prin acționarea tranzistorului. Apoi se va aplica o tensiune, care percepe condensatorul. Pentru a stoca un “0” logic se selectează celula și se va descărca condensatorul. Dacă dorim să citim din nou informațiile trebuie doar sa verificăm dacă condensatorul este încărcat sau nu.
În concluzie memoria de tip DRAM trebuie să fie accesată la un interval de câteva milisecunde, altfel informațiile se pierd.
Memoria de tip DRAM are o capacitate de stocare de aproximativ patru ori mai mare decât cea de tip SRAM la aproximativ același cost și mărimea chipului. Aceasta înseamnă că DRAM-urile sunt disponibile în capacități mai mari.Cu toate acestea, acest lucru ar crește, de asemenea, numărul de pini de adresă ⇒ pachet mai mare pentru a le acomoda ⇒ cost mai mare.
Prin urmare, este logic să se reducă numărul de pini externi prin multiplexarea numărului rândului și coloanei: În primul rând, numărul rândului este prezentat la pinii de adrese pe care DRAM-ul le stochează intern. Apoi, este prezentat numărul coloanei. Memoria DRAM combină cu numărul rândului stocat anterior pentru a forma adresa completă.
În afară de nevoia de reîmprospătare a memoriei, există un alt dezavantaj sever al memoriei DRAM:
este mult mai lent decât SRAM. Cu toate acestea, datorită costului ridicat al SRAM-ului, aceasta nu este doar o opțiune pentru PC-urile desktop comune. Prin urmare, au fost concepute numeroase variante de tehnici de acces DRAM, crescând constant viteza de memorie DRAM.
În microcontrolere, veți găsi de obicei memorie SRAM, deoarece sunt necesare doar cantități moderate de memorie, iar logica de reîmprospătare necesară pentru DRAM ar folosi o zonă prețioasă de siliciu.
Memoria nevolatilă
Contrar SRAM-urilor și DRAM-urilor, memoriile non-volatile își păstrează conținutul chiar și atunci când se taie curentul.
Dar, așa cum am menționat deja, acest avantaj vine la un preț.Scrierea tipurilor de memorie nevolatilă este de obicei mult mai lentă și relativ complicată, deseori chiar deranjantă.
Memoriile de citire (ROM) au fost primele tipuri de memorii semiconductoare nevolatile.
Dacă doriți să folosiți ROM-uri trebuie să transmiteți datele către producătorul de cipuri, unde este produs un cip specific care conține datele dvs.
Un tip comun de ROM este așa-numitul Mask-ROM (MROM). Un MROM, ca orice chip IC, este compus din mai multe straturi. Aspectul geometric al acestor straturi definește funcția chipului. La fel ca o memorie RAM, un MROM conține o matrice de celule de memorie. Cu toate acestea, în timpul fabricării, pe un singur strat sunt create conexiuni fixe între rânduri și coloane, reflectând informațiile care trebuie stocate în MROM.
Ca și alternativă este disponibilă memoria programabilă doar pentru citire (PROM). Acestea sunt în esență matrice ale celulelor de memorie, fiecare conținând o siguranță de siliciu.
Inițial fiecare siguranță este intactă și fiecare celulă citește 1 logic. Prin selectarea unei celule și aplicarea unui impuls de curent scurt sau mare, siguranța celulei poate fi distrusă, programând astfel 0 logic în celula selectată.
Uneori veți întâlni așa-numitele microcontrolere One Time Programmable (OTP). Acestea conțin PROM ca memorie de instrucțiuni pe chip.
PROM-urile și microcontrolerele OTP nu sunt, desigur, potrivite pentru dezvoltare, unde este posibil ca conținutul memoriei să trebuiască să fie schimbat. Dar, odată ce procesul de dezvoltare este terminat acestea sunt potrivite pentru producția de masă de masă medie, atâta timp cât numărul este suficient de mic încât producția de MROM nu este fezabilă din punct de vedere economic.
Memoria memorabilă numai pentru citire programabilă (EPROM) depășește acest dezavantaj. Aici, programarea este nedistructivă. Memoria este stocată în așa-numitele tranzistoare cu efect de câmp (FET), sau mai degrabă într-unul dintre pini lor numit poarta. Este numită pur poarta plutitoare, deoarece este complet izolată de restul circuitului. Totuși, prin aplicarea unei tensiuni înalte corespunzătoare, este posibilă încărcarea porții plutitoare printr-un proces fizic numit injecție avalanșă.
Deci, în loc de a arde siguranțele, electronii sunt injectatați în poarta plutitoare, închizând astfel întrerupătorul tranzistorului.
Odată ce o celulă este programată, electronii ar trebui să rămână la poarta plutitoare pe termen nelimitat. Cu toate acestea, ca și în cazul memoriei DRAM-urilor, curenții minimali de scurgere trec prin izolații.
De-a lungul timpului, poarta plutitoare pierde suficienți electroni pentru a deveni ne-programată. În foaia de date a EPROM-ului, producătorul specifică cât timp conținutul memoriei va rămâne intactă.
De obicei, aceasta este o perioadă de aproximativ zece ani, cu toate acestea, în cazul EPROM-urilor, această durabilitate limitată este de fapt folosită într-un avantaj: prin expunerea cipului de siliciu la lumina UV, procesul poate fi accelerat. După aproximativ 30 de minute, lămpile UV vor fi descărcate porțile plutitoare, iar EPROM-ul va fi șters. Acesta este motivul pentru EPROMS au o mică fereastră de sticlă în pachetul lor, prin care cipul este vizibil. De obicei, această fereastră este acoperită de o garnitură protectoare de protecție împotriva luminii.
Pentru a șterge EPROM-ul eliminați sigiliul și expuneți cipul la lumină intensă UV (deoarece această lumină este suficient de puternică pentru a deteriora permanent ochiul uman, de obicei se utilizează un dispozitiv de eroare EPROM, unde EPROM este pus într-o cutie apoi expuse la lumina UV).
De altfel, adesea EPROM-urile sunt folosite ca PROM-uri. Așa-numitele EPROM-uri programabile de o singură dată (OTP-EPROMs) sunt EPROM-uri comune, în ceea ce privește chipul, dar le lipsește fereastra de sticlă din pachet.
Desigur, ele nu pot fi șterse, dar din moment ce fereastra de sticlă încorporată face pachetul destul de scump, OTP-EPROMS este mult mai ieftin de fabricat. Avantajul față de PROM este că atunci când se face producție în masă, tipul componentelor de memorie utilizate nu se schimbă. La urma urmei, OTP-EPROM folosit pentru producția de masă este, de fapt, un EPROM la fel ca cel folosit în prototipuri și teste, doar fără fereastra mică.
Acum, EEPROM pare a fi alegerea perfectă pentru memoria nevolatilă. Cu toate acestea, există un dezavantaj: este destul de scump.
Ca un compromis Flash EEPROM este disponibil. Flash este o variantă a EEPROM unde ștergerea nu este posibilă pentru fiecare adresă, dar numai pentru blocuri mai mari sau chiar întreaga memorie (șterse "într-o clipă", ca să spunem așa). În acest fel, logica internă este simplificată, ceea ce la rândul ei reduce prețul considerabil. De asemenea, datorită faptului că nu este posibilă ștergerea singur octeți,
Flash EEPROM este frecvent utilizat pentru program, nu pentru memorie de date. Aceasta, la rândul său, înseamnă că rezistența redusă este acceptabilă – în timp ce este posibil să reprogramați destul de frecvent un EEPROM de date, de obicei nu veți reprograma programul de microcontroler Flash de 100.000 de ori.
Prin urmare, Flash-EEPROM-urile au adesea o rezistență ciclului de scriere / ștergere garantată mai scăzută comparativ cu EEPROM-urile – de la 1.000 la 10.000 cicluri. Acest lucru face ca Flash-EEPROM-urile să fie și mai ieftine.
3.Proiectul tehnic
3.1 Caracteristicile microcontrollerului
Având în vedere necesitățile pentru a realiza acest proiect de diplomă , cât și complexitatea acestuia am ales să realizez două modalități de realizare a driver-ului pentru motor. Ținând cont de complexitatea programării microcontrollerului pentru aceste plăci voi utiliza un microcontroller PIC18F și un Arduino_Nano.
Produsele din familia PIC18F conțin o unitate centrală de procesare pe 8 biți.
Microcontrollerele 18F pot opera la o viteză de până la 12 MIPS, iar din punct de vedere hardware acestea conțin multiplicatoare pentru a realiza mai repede calculul algoritmilor de control. Există variante de microcontrolere in familia 18F cu periferice specializate pentru controlul motorului. Se regăsesc aici ieșiri pentru semnalele PWM, cu ajutorul cărora se realizează controlul unui motor trifazat
Dispozitivele cu modulul PWM de comandă a motorului sunt potrivite pentru aplicațiile cu motor cu trei faze cu turație variabilă, în timp ce dispozitivele cu modul ECCP sunt utile pentru aplicațiile cu perii DC și pas cu pas.
Caracteristici familia PIC18F:
-viteză de execuție de până la 12 MIPS cu multiplicator hardware
-modul PWM de comandă a motorului cu până la 8 ieșiri
-unul sau mai multe module ECCP
-ADC-uri pe 8 sau 10 biți cu o rată de eșantionare de până la 200kb/s
-până la 3 comparatoare interne
-Interfețe de comunicare :USART, SPI, ,CAN și USB
Din aceasta clasa de microcontrolere am ales modelul PIC18F4431 pentru a realiza controlulul unui motor BLDC.
Caracteristicile principale ale acestui microcontroller sunt:
Tabel 3 Caracteristici PIC18F4431
Am ales acest model deoarece acesta are capacitatea de a transmite 6 semnale de PWM pentru controlul punții H. Cu aceste semnale se vor comanda pe rând câte două tranzistoare pentru a realiza secvența de comutație .
Figura 23 Schema bloc a microcontrolerului PIC18F4431
În figura de mai sus sunt prezentați pinii microcontrolerului și funcțiile acestora .
Rezistența la memorie: celulele Flash îmbunătățite atât pentru memoria programelor, cât și pentru EEPROM-ul de date sunt evaluate să dureze multe mii de cicluri de ștergere / scriere – până la 100.000 pentru memoria programelor și 1.000.000 pentru EEPROM. Stocarea datelor fără.Reîmprospătarea este conservator estimată a fi mai mare de 100 de ani.
Auto-programabilitate: Aceste dispozitive pot scrie în propriile spații de memorie program, sub control intern al software-ului. Prin utilizarea unei rutine de bootloader aflată în blocul de boot protejat din partea superioară a memoriei programului, devine posibilă crearea unei aplicații care să se poată actualiza în sine.
Printre alte funcții se numără oprirea automată a detectării defecțiunilor și oprirea automată pentru a reactiva ieșirile odată ce condiția a fost anulată.
USART îmbunătățit: Acest modul de comunicație serială este capabil să funcționeze standard RS-232 folosind blocul oscilator intern, eliminând necesitatea unui cristal extern (și a cerinței sale de alimentare însoțitoare) în aplicațiile care vorbesc.
Lumea exterioară. Acest modul include, de asemenea, detectarea autobaud și capacitatea LIN
La realizarea driverului am folosit doar o parte din caracteristicile microcontrolerului, astfel pentru generarea de semnale PWM am folosit PORTUL B, pentru connectarea display-ului LCD am utilizat PORTUL D, iar pentru alimentare și reglarea tensiunii prin intermediul unui potențiometru am folosit PORTUL A. În continuare voi prezenta câteva configurații de conectare a pinilor.
Pentru a alimenta microcontrolerul trebuie sa aducem tensiune pe pinul MCLR. Pentru ca acesta să fie conectat corect va trebuii să limităm curentul (mA),astfel vom conecta pe traseul de alimentare rezistențe și condensatoare ca sa ajugem la limitarea dorită.
Figura 25 Schema de conectare a pinului MCLR
Figura 26 Diagrama bloc a unui pin de I/O
Ceea ce este important să știm despre un pin de I/O este că intre Vcc(alimentare) și GND(masa) se conectează o diodă pentru protecție.
Mai departe voi continua cu prezentarea modulului de PWM al uC-ului. La generarea unui semnal PWM cel mai important este pinul CCP1 deoarece acesta poate produce un semnal de ieșire cu o rezoluție de 10 biți.
Figura 27 Diagrama bloc a modului de PWM
Semnalul PWM este alcătuit din perioadă și duty cycle după cum se poate observa în figura de mai jos.
Figura 24 Semnal PWM
Perioada semnalului PWM este specificată de ce scriem în registrul PR2, ea însă poate fi și calculată cu următoarea formulă. Pentru a simplifica vom nota perioada semnalului cu .
Atunci când valoarea din registrul TMR2 este egală cu cea din registrul PR2 se pot întâmpla următoarele lucruri în următorul ciclu:
-TMR2 este șters
-pinul CCP1 va fi setat (dacă duty cycle-ulul PWM-ului va fi = 0%, atunci pinul nu va fi setat)
-Duty cycle-ulul PWM-ului va fi copiat din CCPR1L în CCPR1H.
Duty cycle este specificat prin scrierea în regiștrii CCPR1L și CCP1CON<5:4>. Acesta este calculat cu următoarea formulă.
CCPR1L și CCP1CON pot fi scriși oricând dar valoarea duty cycle-ului nu va fi copiată in CCPR1H până când nu va găsii o egalitate între PR2 și TMR2. Astfel în modulul de PWM CCPR1H este un registru doar de citire. Registrul CCPR1H și un registru intern pe 2 biți sunt utilizați pentru a dubla duty cycle-ulul PWM-ului.
Această dublare este esențială pentru funcționarea PWM-ului fără probleme.Atunci când semnalul CCPR1H și blocul de 2 biți TMR2, concatenat cu un ceas Q intern de 2 biți sau cu doi biți de prescaler TMR2, pinul CCP1 este șters. Rezoluția PWM maximă (biți) pentru o anumită frecvență PWM este dată de următoarea ecuație.
Modulul PWM de control al puterii simplifică sarcina de a genera ieșiri multiple, sincrone cu lățimea pulsului (PWM), utilizate pentru controlul motorului.
Cea de-a doua plăcuță presupune utilizarea unui ARDUINO_NANO. Aceasta dispune de o serie de caracteristici necesare pentru obținerea rezultatului dorit.
Tabel 4 Caracteristici arduino_nano
Figura 25 Diagrama pinilor Arduino Nano
De la acest microcontroller am folosit pinii 6, 8,9,12,13 și 15 doar pentru semnalele de PWM , pinul 27 pentru a oferii microcontrolerului tensiunea de 5V , iar ultimii pini și anume 20,21,22,23,24 și 25 i-am folosit pentru configurarea display-ului LCD.
3.2 Descrierea circuitelor
Înainte de a începe explicarea circuitelor voi prezenta o schema bloc pentru a oferii o imagine de ansamblu asupra proiectului.
Figura 26 Schema bloc a circuitului
Figura 27 Configurație microcontroller
Microcontrolerul are un rol important în realizarea practică a proiectul deoarece cu ajutorul lui generez cele 6 semnale PWM pentru a comanda puntea H. Cu toate acestea doar microcontrolerul nu este suficient pentru a comanda direct tranzistoarele deoarece semnalele de la ieșirile microcontrolerului sunt de ordinal miliamperilor. Din această cauză microcontrolerul nu poate comanda direct puntea H , astfel avem nevoie de drivere pentru a amplifica semnalul.
Driverul ales pentru realizarea proiectul se numește IR2101. Am ales acest driver deoarece este capabil să amplifice 2 semnale în același timp, este compatibil cu nivelele logice de tensiune pe intrare de 3,3V ,5V și 15V și poate opera până la 600V.
Figura 28 Configurație driver IR2101
Figura 29 Configurația celor 3 drivere în schema electrică
În această configurație semnalele de la microcontroller vor intra în pinii HIN și LIN.
Pe pinul de HIN(high input) va intra semnalul care va comanda tranzistorul legat la alimentare, iar pe pinul de LIN(low input ) intra semnalul care comanda tranzistorul legat la masa.
Odată ajunsi în acest punct driverul va realiza amplificarea semnalelor și le va trimite mai departe către transistori prin intermediul pinilor de HO(high output) și LO(low output). Semnalele de pe acești pini vor intra direct în baza tranzistorilor.
Așadar avem nevoie de 3 astfel de drivere pentru a comanda toate cele 6 tranzistoare din puntea H. În acest punct tot ce mai trebuie să realizăm este secvența de comutație a tranzistorilor pentru a învârtii motoru. Tranzistoarele se vor comanda în cascadă două câte două.
Figura 30 Punte H cu 6 tranzistoare
Folosind acest exemplu voi explica comanda tranzistoarelor.
Secvența prezentată în figurile de mai jos se realizează când tranzistoarele sunt comandate in ordinea următoare:
Q1 și Q6 Q1 și Q4 Q5 și Q4 Q5 și Q2 Q3 și Q2 Q3 și Q6
Secvența de comutație se bazează pe alimentarea a două înfășurări lăsând-o pe cea de a treia liberă, iar curentul va circula de la alimentare spre masă.
Totuși trebuie să avem grijă sa nu comandăm tranzistoarele în același timp deoarece dacă cele 2 tranzistoare vor fi deschise în același timp prin ele va trece un curent foarte mare și există riscul de a “prăjii” tranzistoarele.
Această problemă se poate rezolva introducând un delay între comutația tranzistorului legat la alimentare (Q1 din exemplu) și cel legat la masa (Q4 tot din exemplu). Acest delay poartă denumirea de dead time(“timp mort”).
Pentru a realiza comutația în sensul acelor de ceasornic trebuie alimentate înfășurările în felul următor.
Tabel 5 Configurație pornire în sens orar
În ultima parte a schemei avem un șunt folosit pentru măsurarea curentului ce vine de la motor. Pe urmă avem un amplificator operational folosit pentru amplificarea semnalului care va intra in modulul de ADC al microcontrolerului.
În această aplicație se urmărește și afișarea turațiilor prin intermediul unui display LCD.
Acesta este conectat la microcontroller, iar feedback-ul pentru a afișa numarul de rotații de la motor vor fi citete de pe senzorii hall.
Schemele prezentate mai sus fac parte din driver-ul realizat cu microcontrollerul PIC18F4431.
Între cele două plăcuțe găsim diferențe la modul de conectare al microcontrolerului.
Cea mai semnificativă diferență o reprezintă alimentarea circuitelor. În ceea ce privește microcontrollerul PIC18F4431 acesta este alimentat separate de restul circuitului , în timp ce la plăcuța realizată cu Arduino Nano avem o singură alimentare . Cei 5V de care are nevoie Arduino Nano pentru a funcționa corespunzător sunt obținuți cu ajutorul unui regulator de tensiune.
Figura 31 Configurație arduino nano
Figura 32 Regulator de tensiune
În ambele scheme am folosit același display LCD (16×2) cu comunicare I2C.
Figura 33 Display LCD
Tabel 6 Pini display LCD
3.3 Alegerea componentelor
Alegerea componentelor reprezintă o parte foarte importantă pentru a realiza cât mai corect proiectul tehnic. Având în vedere câteva criterii lista componentelor din care putem alege s-a restrâns puțin câte puțin. Astfel pentru prima parte din schema bloc și anume microcontrollerul criteriile de alegere au fost destul de simple:
Capacitatea microcontrollerului de a genera 6 semnale PWM
Modul de comunicare I2C folosit la comunicarea cu display-ul LCD
Număr ridicat de pini pentru a putea realiza toate conexiunile
Tensiunea de alimentare
Nivel de tensiune compatibil cu celelalte componente din circuit
Dimensiunile/carcasa acestora
După ce am analizat aceste criterii am ales cele două modele pentru microcontroller și anume PIC18F4431 și Arduino Nano. Ambele corespund criteriilor de mai sus.
Figura 34 PIC18F4431
Figura 35 Arduino Nano
Continuând cu diagrama bloc următoarele componente vor fi driverele de comandă a tranzistoarelor. Criteriile de alegere ale acestora sunt următoarele:
Tensiunea de alimentare
Capacitatea acestora de amplificare a semnalului primit de la microcontroller
Posibilitatea de a comanda două tranzistoare folosind un singur driver.
Nivelul de tensiune pe care îl poate atinge
Blocare la alimentare cu tensiune insuficientă
Timpul de ON / OFF
Curentul de intrare
Pe baza acestor criterii am ales trei drivere din categoria IR modelul IR2101.
Aceste criterii nu au fost însă singurele , deoarece un rol important în alegerea acestor drivere l-a avut motorul BLDC.
Figura 36 IR2101
Ca și caracteristici ale acestui driver avem:
Compatibil cu diferite nivele de tensiune pe intrare , ex:3.3V , 5V , 15V etc
Motorul face parte din gama de produse SRYRC ARES PRO. Aceste motoare sunt folosite în special la aeromodele.
Caracteristicile acestuia:
3,5 înfășurări pe spiră
9100KV(RPM/VOLT)
600 Watts
Rotor cu 2 poli
Curent maxim: 130A
Curent fară sarcină : 9.7A
Senzori Hall
Protecție termică
Figura 37 Motor BLDC Skyrc Ares PRO 3,5T
Acest motor are nevoie de o tensiune de alimentare precisă ideal ar fi să se alimenteze la 8,6V. Din acest motiv am ales un driverul IR2101 cu tensiunea de alimentare de 10V , ceea mai apropiată de cerințele motorului și compatibilă cu restul componentelor.
În ultima parte a schemei bloc întâlnim puntea H cu cele șase tranzistoare. Acestea sunt de tip MOSFET cu canal N, iar alegerea lor a avut la bază
Tensiunea grilă-sursă
Rezistența internă
Curentul maxim ce trece prin drenă
Temperatura de operare
Pe cele două plăcuțe am folosit două modele de tranzistoare unul de tip SMD și unul THT
Modelul SMD ales este IRFR4104PBF . Acesta este un transistor de tip MOSFET cu canal N unipolar , iar caracteristicile lui sunt următoarele:
Figura 38 Tranzistor IRFR4104PBF
–
–
– P = 40 W
–
–
– Carcasa:DPAK
Acest tranzistor permite alimentarea motorului și la o tensiune mai mare chiar dacă acest lucru nu este indicat deoarece cu cât tensiunea de alimentare este mai mare cu atât curentul va fi mai mare . Este un pericol de a avea spike-uri de curent foarte mari deoarece acest lucru poate duce la arderea tranzistoarelor sau chiar explozia motorului.
Pentru cea de-a doua plăcuță conform criteriilor precizate mai sus am folosit un tranzistor de tip THT și anume modelul IRF3205.
Figura 39 Modelul IRF3205
Cele două modele sunt asemănătoare în ceea ce privește caracteristicile de funcționare.
P = 150 W
Carcasă : TO220
Folosirea tranzistorilor de tip THT ne permite montarea unor radiatoare pentru răcirea acestora , deoarece la un curent destul de mare cum avem în cazul de față tranzistorii se încălzesc foarte mult disipând căldură în circuit.
Ultima componentă folosită cu un rol important în circuit este regulatorul de tensiune LM7805.
Figura 40 Regulator de tensiune LM7805
Acesta este o compentă de tip THT cu trei terminale , fiecare terminal având rolul său.
Primul pin al componentei este legat la alimentare , cel de-al doilea este legat la împământare și ultimul reprezintă ieșirea cu noul nivel de tensiune.
Figura 41 Conexiuni LM7805
Această componentă este folosită la plăcuța cu Arduino deoarece în aceea plăcuță avem o singură alimentare (10V). Rolul regulatorului de tensiune este sa reducă tensiunea de la 10V la 5V pentru a oferii o funcționalitate optimă a plăcii Arduino Nano.
3.4 Realizarea PCB-ului
PCB-ul reprezintă o placă cu cablaj imprimat folosită atât din punct de vedere electric pentru realizarea conexiunilor între componente , trasee de curent , împământări , etc cât și din punct de vedere mecanic pentru susținere.
Procesul de realizare a pcb-ului conține un număr finit de pași.
Etapele de realizare a PCB-ului:
1.Realizarea layout-ului
Pentru realizarea atât a schematicului cât și a layout-ului am folosit programul KiCad.
Înainte de realizarea traseelor de layout trebuie să știm câteva lucruri grosimea traseelor , vias-uri , lungimea traseelor etc .
Primul lucru important pe care trebuie să-l știm este legat de grosimea traseelui deoarece în funcție de curentul care trece prin acel traseu acesta din urmă trebuie sa fie bine dimensionat astfel încât curentul sa nu ardă traseul. O regulă importantă în ceea ce privește design-ul de layout face referire la evitarea unghiurilor drepte pe traseu. Acest lucru este de evitat deoarece curentul parcurge traseul pe drumul cel mai scurt , asta înseamnă o solicitare a colțului traseului care poate duce din nou la arderea acestuia.
Tot ca și o regula de design se recomandă evitarea traseelor foarte lungi deoarece cu cât traseul este mai lung cu atât și pierderile vor fi mai mari.
Noțiunea de vias în procesul de realizarea layout-ului reprezintă trecerea printr-o gaura de pe un strat pe altul pcb-ului.
În continuare voi prezenta layout-ul celor două plăci.
Figura 42 Layout Stratul principal
PCB-ul este unul dublu stratificat , stratul din figura de mai sus fiind stratul principal. Acesta este stratul principal din cauză ca cele mai multe componente și trasee se afla pe acest strat.
Figura 43 Layout stratul al doilea
Figura 44 Layout complet dublu stratificat
Figura 45 PCB Arduino Layout
Figura 46 Setări design layout
2. Imprimarea traseului și expunerea la raze UV
În această etapă am printat layout pe o foaie transparentă folosită la printarea cu laser. Fiind vorba de un PCB dublu stratificat asta impune printarea ambelor părți și alinierea perfectă a acestora pentru a putea realiza legaturile între trasee dupa ce vom developa placa. După ce am verificat dacă cele două fețe ale pcb-ului sunt aliniate perfect am introdus plăcuța între cele doi foi transparente și le-am expus la lumină UV timp de 280s pentru fiecare parte.
Figura 47 Pregătirea plăcuței pentru imprimarea traseelor
Figura 48 Cutie de imprimare cu raze UV
După ce pcb-ul a fost expus la lumină UV acesta se va acoperii și se va trece la următorul pas.
3. Developarea
În acest punct am parcus deja jumătate din pașii pe care trebuie să-i efectuăm pentru realizarea unui PCB. Pentru a realiza procesul de developare avem nevoie de un amestec de apă cu soda caustică. Se omogenizează bine amestecul , pe urmă se va introduce placuța în lichidul obținut. Aici trebuie să mișcăm constant placa pentru o developare rapidă.
Figura 49 Developarea traseelor
Când traseele s-au format se scoata placa din amestec și se spală cu apă rece pentru îndepărtarea compoziției chimice.
4. Corodarea plăcuței
Acesta este penultimul pas din procesul de realizarea a unui PCB , însă totodată este unul din cei mai importanți deoarece necesită multă răbdare și atenție.
Ideea principală a acestui proces constă în indepardarea cuprului nefolosit astfel încât să rămână doar traseele proiectate de noi. Îndepărtarea cuprului s-a realizat utilizând o substanță chimică numită clorură ferică.
Modul de lucru cu această substanță este unul extrem de important deoarece clorura ferică este toxică și trebuie evitat cu orice preț contactul cu ochii.
Se toarnă clorura ferică într-un recipient destul de mare astfel încât pcb-ul să poată fi scufundat în soluție și se verifică progresul la 5 minute. Tot procesul de corodare durează aproximativ 20 de minute , dar dacă se dorește o corodarea mai rapidă atunci este recomandat să se încălzească soluția înainte.
Figura 50 Clorură ferică
5. Curățare , găurirea și protecția PCB-ului
Cu procesul de corodare încheiat ne mai rămân câteva lucruri de făcut. Primul ar fi curățarea plăcii de clorură , iar apoi folosind acetonă vom îndepărta impuritățile nedorite.
Ca să prelungim durata de viața a plăcuței se va da cu un strat de flux pe ambele părți și se va lăsa la uscat. Fluxul ajută la realizarea lipiturilor făcând cuprul mai aderent, dar în același timp protejează și impotriva oxidării cuprului în contact cu aerul.
La sfârșitul acestor etape plăcuțele pot fi folosite pentru găurire și respectiv lipituri.
Figura 51 PCB-urile la finalul procesului
Figura 52 Procesul de lipire
4. Realizare practică
4.1Determinări experimentale
Ținând cont de dificultatea proiectului și de impedimentele care pot apărea în procesul de creație și testare al acestuia am realizat câteva teste pentru a putea duce la bun sfârșit proiectul.
Astfel primul test din cadrul acestui proiect este legat de microcontroller. Așadar pentru a ne asigura că putem programa microcontrollerul fără a avea probleme am realizat cu ajutorul unei placuțe de test un mic circuit pentru conectarea la microcontroller.
Figura 53 Circut de test pentru microcontroller
Fiind vorba de un PIC18F4431 trebuie respectate anumite cerințe pentru a ne putea conecta la acesta și anume:
-legarea tuturor pinilor de alimentare și împământare
-conectarea pe pinul de de MCLR a unei rezistențe și un condensator (pentru limitarea curentului și pentru descărcare).
-setarea oscilatorului intern tot prin cadrul unei rezistențe și al unui condensator(valorile compoentelelor sunt R=10K, C=100nF)
-ledul a fost folosit pentru realizarea unui mic test de programare
Ajunși în acest punct următorul test se va axa pe realizarea secvenței de comutație prin intermediul unor LED-uri
Figura 54 Testare secvența de comutație a motorului
Pentru acest test am folosit șase LED-uri cu care am realizat secvența de comutație de comutație a motorului. Fiecare LED corespunde unui tranzistor din puntea H. LED-uri vor primii câte un semnal PWM , iar apoi acestea se vor aprinde într-o anumită ordine.
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: Driver pentru motorul brushless [305203] (ID: 305203)
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.
