Acest manual va detalia proiectarea, simularea, construcția și testarea convertorului dc-dc și controlerului sistemului de control pentru modul de comutare a motorului de curent continuu.
Convertorul va fi apoi utilizat pentru controlul digital al motorului de curent continuu cu șunt de sarcină.
Circuitul va fi dezvoltat și testat în diferite etape.
Prima fază va construi un convertor care funcționează la 40 V.
Acest lucru se face pentru a se asigura că nu au inductanță parazită de la fire și alte componente ale circuitului care deteriorează driverul la tensiuni înalte.
În a doua fază, convertorul va rula motorul la o tensiune de 400 V la o sarcină maximă.
Ultima etapă este să utilizați arduino pentru a controla valul pwm pentru a regla tensiunea și a controla viteza motorului cu sarcină variabilă.
Componentele nu sunt întotdeauna ieftine, așa că încercați să construiți sistemul cât mai ieftin posibil.
Rezultatul final al acestui utilitar va fi construirea unui
convertor dc-DC și controler al sistemului de control, viteza motorului este controlată cu 1% la punctul de setare în regim de echilibru, iar viteza este setată în 2 s sub sarcină variabilă.
Motorul meu existent are următoarele specificații.
Specificații motor: Armătură: 380 Vdc, 3. 6 AExcitație (shunt): 380 Vdc, 0.
Viteza: 1500 r/minPutere: aproximativ 1.
1 kWDC sursa de alimentare a motorului = 380 VOptocupler și alimentarea driverului = 21 VAceasta înseamnă că curentul și tensiunea maximă conectate vor avea un control mai mare de curent sau tensiune echivalentă a motorului. rating.
Dioda roată uscată marcată ca D1 în schema circuitului este utilizată pentru a furniza o cale de curgere către potențialul invers invers al motorului pentru a preveni inversarea curentului și deteriorarea ansamblului atunci când alimentarea este oprită -
Motorul încă se rotește (mod generator).
Tensiunea inversă maximă nominală este de 600 V, iar curentul continuu maxim înainte este 15.
Prin urmare, se poate presupune că dioda volantului va putea funcționa la niveluri suficiente de tensiune și curent pentru această sarcină.
IGBT este folosit pentru a comuta sursa de alimentare a motorului prin primirea unui semnal pwm de 5 V de la Arduino prin cuplul optic și driverul IGBT pentru a comuta o tensiune foarte mare de alimentare a motorului de 380 V.
Curentul maxim continuu de colector al IGBT utilizat este de
4.5A la o temperatură de joncțiune de 100 °c
Tensiunea maximă a emițătorului este de 600 V.
Prin urmare, se poate presupune că dioda volantului poate funcționa la niveluri suficiente de tensiune și curent pentru aplicare practică.
Este important să adăugați caloriferul la IGBT, de preferință un radiator mare.
MOSFET-ul cu comutare rapidă poate fi utilizat fără IGBT.
Tensiunea de prag de poartă a IGBT este între 3, 75 V și 5,
75 V și este necesară o unitate pentru a furniza această tensiune.
Circuitul funcționează la o frecvență de 10 kHz, astfel încât timpul de comutare al IGBT trebuie să fie mai rapid de 100 us, adică timpul unui val plin.
Timpul de comutare al IGBT este de 15ns, ceea ce este suficient.
Timpul de comutare al driverului TC4421 selectat este de cel puțin 3000 de ori mai mare decât al valului PWM.
Acest lucru asigură că șoferul poate comuta suficient de rapid pentru funcționarea circuitului.
Driverul trebuie să furnizeze mai mult curent decât poate oferi Arduino.
Driverul primește curentul necesar pentru a opera IGBT-ul de la sursa de alimentare, nu de la Arduino.
Acest lucru este pentru a proteja Arduino, deoarece întreruperea de curent va supraîncălzi Arduino, va ieși fum și Arduino va fi distrus (
Încercat și testat).
Driverul va fi izolat de micro-controlerul care furnizează unde PWM prin utilizarea cuplajului optic.
Cuplajul fotoelectric izolează complet Arduino, care este cea mai importantă și mai valoroasă parte a circuitului.
Pentru motoarele cu parametri diferiți, este necesar doar să schimbați IGBT-ul cu un IGBT cu proprietăți similare cu motorul, care poate gestiona tensiunea inversă necesară și curentul de colectare continuă.
Condensatorul WIMA este utilizat împreună cu condensatorul electrolitic de pe sursa de alimentare a motorului.
Aceasta stochează încărcarea sursei de alimentare stabile și, cel mai important, ajută la eliminarea inductanței cablurilor și conectorilor din sistem. Pentru a minimiza distanța dintre componente, inductanța inutilă pentru structura circuitului este listată
în special în bucla dintre driverul IGBT și IGBT.
Se încearcă eliminarea zgomotului și sunetului de la sol între Arduino, cuplaj optic, driver și IGBT.
Ansamblul este sudat pe Veroboard.
O modalitate ușoară de a construi un circuit este să desenați componentele schemei de circuit pe veroboard înainte de a începe sudarea.
Sudarea în zone bine ventilate.
Utilizați calea conductivă a fișierului Scrath pentru a crea un spațiu între componentele care nu ar trebui să fie conectate.
Cu ambalajul DIP, componentele pot fi înlocuite cu ușurință.
Acest lucru ajută fără a fi nevoie de sudarea componentelor și de rezolvarea pieselor de schimb atunci când acestea eșuează.
Am folosit mufe banane (
Priză în negru și roșu)
Pentru a conecta cu ușurință sursa de alimentare la veroboard, este posibil să omitem acest lucru, iar firul este sudat direct pe placă.
Prin includerea Arduino pwm Library (
Atașat ca fișier ZIP).
Un controler pi al controlerului Proportional Integral
Utilizat pentru a controla viteza rotorului.
Raportul și câștigul integral pot fi calculate sau estimate înainte de a se obține un timp suficient de stabilire și depășire.
Controlerul PI este implementat simultan cu bucla () Arduino.
Tahometrul măsoară viteza rotorului.
Utilizați analogRead pentru a introduce măsurătorile arduino într-una dintre intrările analogice.
Eroarea este calculată prin scăderea vitezei curente a rotorului din viteza de referință a rotorului și setată la egalitate cu eroarea.
Integrarea timpului se face prin adăugarea timpului de eșantionare la fiecare buclă și setarea acestuia la timp egal, crescând astfel cu fiecare iterație a buclei.
Intervalul ciclului de lucru pe care îl poate scoate Arduino este de la 0 la 255.
Utilizați pwmWrite în biblioteca PWM pentru a calcula ciclul de funcționare și a-l scoate pe pinul PWM de ieșire digitală selectat.
Eroare dublă de implementare a controlerului PI = ref-rpm;
Timp = timpul 20e-6;
Pwm dublu = kp initial * eroare ki * timp * eroare;
Implementarea senzorului PWMdublu = analogRead (A1); pwmWrite(3, pwm-255);
Puteți vedea codul complet al proiectului în ArduinoCode. fișier rar.
Codul din fișier este ajustat pentru a inversa driverul.
Acționarea inversă are următorul efect asupra ciclului de funcționare a circuitului, ceea ce înseamnă nou_dutycycle = 255-dutycycle.
Pentru unitățile neinversate, aceasta poate fi schimbată inversând ecuația de mai sus.
În cele din urmă, circuitul a fost testat și măsurat pentru a determina dacă au fost obținute rezultatele dorite.
Controlerul este setat la două viteze diferite și este încărcat pe arduino.
Alimentarea este pornită.
Motorul accelerează rapid mai repede decât era de așteptat și apoi se stabilizează la vitezele selectate.
Tehnologia acestui motor de control este foarte eficientă și poate funcționa pe toate motoarele de curent continuu.