STMicroelectronics-logo

STM32 Motor Control SDK 6 Step Firmware Sensor Less Parameter

STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter-produs
Specificații
  • Nume produs: SDK de control al motorului STM32 – optimizare a parametrilor fără senzor de firmware în 6 pași
  • Număr de model: UM3259
  • Revizie: Rev 1 – noiembrie 2023
  • Producator: STMicroelectronics
  • Website: www.st.com

Pesteview

Produsul este conceput pentru aplicații de control al motorului în care poziția rotorului trebuie determinată fără utilizarea senzorilor. Firmware-ul optimizează parametrii pentru funcționarea fără senzori, permițând sincronizarea comutației treptei cu poziția rotorului.
Detectare BEMF Zero-Crossing:
Forma de undă a forței electromotoare din spate (BEMF) se modifică odată cu poziția și viteza rotorului. Sunt disponibile două strategii pentru detectarea trecerii cu zero:
Detecție EMF înapoi în timpul PWM OFF-time: Obține volumul de fază plutitoaretage prin ADC când nu curge curent, identificând trecerea cu zero pe baza pragului.
Detecție EMF în spate în timpul PWM ON-time: Center=tap voltage ajunge la jumătatea voltage, identificarea trecerii cu zero pe baza pragului (VS/2).
SDK pentru controlul motorului STM32 – optimizare a parametrilor fără senzor de firmware în 6 pași

Introducere

Acest document descrie cum să optimizați parametrii de configurare pentru un algoritm în 6 pași, fără senzori. Scopul este de a obține o procedură de pornire lină și rapidă, dar și un comportament stabil în buclă închisă. În plus, documentul explică, de asemenea, cum să se ajungă la o comutare adecvată între detecția inversă EMF zero-crossing în timpul PWM OFF-time și PWM ON-time atunci când se rotește motorul la o viteză mare cu o vol.tagtehnica modului de conducere. Pentru mai multe detalii despre algoritmul firmware-ului în 6 pași și voltage/tehnica curentă de conducere, consultați manualul de utilizare aferent inclus în pachetul de documentație X-CUBE-MCSDK.

Acronime si abrevieri

Acronim Descriere
MCSDK Kit de dezvoltare software pentru controlul motorului (X-CUBE-MCSDK)
HW Hardware
IDE Mediu de dezvoltare integrat
MCU Unitate de microcontroler
GPIO Intrare/ieșire de uz general
ADC Convertor analog-digital
VM VoltagModul e
SL Fără senzori
BEMF Forța electromotoare înapoi
FW Firmware
ZC Trecerea cu zero
GUI Interfață grafică cu utilizatorul
MC Controlul motorului
OCP Protecție la supracurent
PID Proporțional-integral-derivat (controller)
SDK Kit de dezvoltare software
UI Interfață cu utilizatorul
Banc de lucru MC Instrument de lucru pentru controlul motorului, parte a MCSDK
Pilot de motor Instrument pilot motor, parte a MCSDK

Pesteview

În modul de conducere în 6 pași fără senzor, firmware-ul exploatează forța electromotoare din spate (BEMF) detectată în faza de plutire. Poziția rotorului se obține prin detectarea trecerii cu zero a BEMF. Acest lucru se face în mod obișnuit folosind un ADC, așa cum se arată în Figura 1. În special, atunci când câmpul magnetic al rotorului traversează faza Z înaltă, volumul BEMF corespunzător.tage își schimbă semnul (încrucișarea cu zero). The BEMF voltage poate fi scalat la intrarea ADC, datorită unei rețele de rezistențe care împarte voltage provenind din faza motorului.
Cu toate acestea, deoarece semnalul BEMF este proporțional cu viteza, poziția rotorului nu poate fi determinată la pornire sau la viteză foarte mică. Prin urmare, motorul trebuie accelerat într-o buclă deschisă până la un volum BEMF suficienttage se ajunge. Că BEMF voltage permite sincronizarea comutaţiei treptei cu poziţia rotorului.
În paragrafele următoare sunt descrise procedura de pornire și funcționarea în buclă închisă, împreună cu parametrii pentru reglarea acestora.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (2)
Detectarea trecerii cu zero BEMF
Forma de undă EMF din spate a unui motor fără perii se modifică odată cu poziția și viteza rotorului și are o formă trapezoidală. Figura 2 prezintă forma de undă a curentului și a CEM invers pentru o perioadă electrică, unde linia continuă denotă curentul (ondulurile sunt ignorate de dragul simplității), linia întreruptă reprezintă forța electromotoare din spate, iar coordonatele orizontale reprezintă forța electrică. perspectiva rotației motorului.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (3)
Mijlocul fiecărei două puncte de comutare de fază corespunde unui punct a cărui polaritate a forței electromotoare din spate este modificată: punctul de trecere cu zero. Odată identificat punctul de trecere cu zero, momentul de comutare de fază este setat după o întârziere electrică de 30°. Pentru a detecta trecerea cu zero a BEMF, robinetul central voltage trebuie cunoscut. Robinetul central este egal cu punctul în care cele trei faze ale motorului sunt conectate împreună. Unele motoare fac robinetul central disponibil. În alte cazuri, poate fi reconstruită prin voltage faze. Algoritmul în 6 pași care este descris aici are un avanstage a prezenței unei rețele de detectare BEMF conectată la fazele motorului care permite calcularea voltage.
  • Sunt disponibile două strategii diferite pentru identificarea punctului de trecere cu zero
  • Detecție EMF în spate în timpul PWM OFF-time
  • Detecție EMF înapoi în timpul PWM ON-time (acceptat în prezent în voltagnumai modul e)
În timpul PWM OFF-time, faza flotantă voltage este achiziționat de către ADC. Deoarece nu circulă curent în faza de plutire, iar celelalte două sunt conectate la pământ, atunci când BEMF trece de zero în faza de plutire, are polaritate egală și opusă pe celelalte faze: robinetul central vol.tage este deci zero. Prin urmare, punctul de trecere cu zero este identificat atunci când conversia ADC crește peste sau scade sub un prag definit.
Pe de altă parte, în timpul PWM ON-time, o fază este conectată la magistrala voltage, iar altul la pământ (Figura 3). În această stare, robinetul central voltage ajunge la jumătatea autobuzului voltage valoarea când BEMF în faza flotantă este zero. Ca și anterior, punctul de trecere cu zero este identificat atunci când conversia ADC crește peste (sau scade sub) un prag definit. Acesta din urmă corespunde VS / 2.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (4)
Proiectarea rețelei de detectare BEMF
În Figura 4 este prezentată rețeaua utilizată în mod obișnuit pentru a detecta BEMF. Scopul său este de a împărți faza motorului voltage să fie achiziționat corespunzător de către ADC. Valorile R2 și R1 trebuie alese în funcție de volumul magistraleitage nivel. Utilizatorul trebuie să fie conștient de faptul că implementând un raport R1 / (R2 + R1) mult mai mic decât este necesar, semnalul BEMF poate rezulta prea scăzut și controlul nu este suficient de robust.
Pe de altă parte, un raport mai mare decât este necesar ar duce la pornirea/oprirea frecventă a diodelor de protecție D1 al căror curent de recuperare poate injecta zgomot. Valoarea recomandată este:
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (5)
Valorile foarte mici pentru R1 și R2 trebuie evitate pentru a limita curentul preluat din faza motorului.
R1 este uneori conectat la un GPIO în loc de GND. Permite ca rețeaua să fie activată sau dezactivată în timpul rulării.
În firmware-ul în 6 pași, GPIO este întotdeauna în starea de resetare și rețeaua este activată. Totuși, eventuala prezență a lui D3 trebuie luată în considerare la setarea pragurilor BEMF pentru detecție în timpul PWM ON-time: de obicei adaugă 0.5÷0.7 V la pragul ideal.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (6)
C1 este pentru scopuri de filtrare și nu trebuie să limiteze lățimea de bandă a semnalului în intervalul de frecvență PWM.
D4 și R3 sunt pentru descărcarea rapidă a nodului BEMF_SENSING_ADC în timpul comutărilor PWM, în special în volum mare.tage scânduri.
Diodele D1 și D2 sunt opționale și trebuie adăugate numai în caz de risc de încălcare a valorilor maxime ale canalului ADC de detectare BEMF.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (7)
Optimizarea parametrilor algoritmului de control
Procedura de pornire
Procedura de pornire este de obicei alcătuită dintr-o secvență de trei stages:
  1. Aliniere. Rotorul este aliniat într-o poziție predeterminată.
  2. Accelerație în buclă deschisă. VoltagImpulsurile sunt aplicate într-o secvență predeterminată pentru a crea un câmp magnetic care face ca rotorul să înceapă să se rotească. Viteza secvenței este crescută progresiv pentru a permite rotorului să atingă o anumită viteză.
  3.  Schimba. Odată ce rotorul a atins o anumită viteză, algoritmul trece la o secvență de control în buclă închisă în 6 pași pentru a menține controlul asupra vitezei și direcției motorului.
După cum se arată în Figura 5, utilizatorul poate personaliza parametrii de pornire în bancul de lucru MC înainte de a genera codul. Sunt disponibile două moduri diferite de conducere:
  • Voltagmodul e. Algoritmul controlează viteza variind ciclul de lucru al PWM aplicat fazelor motorului: o fază țintă Vol.tage este definit pentru fiecare segment al startup-ului profile
  • Modul curent. Algoritmul controlează viteza variind curentul care curge în fazele motorului: o țintă de curent este definită pentru fiecare segment al programului de pornire.file
Figura 5. Parametrii de pornire în bancul de lucru MC
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (8)
Aliniere
În Figura 5, Faza 1 corespunde întotdeauna pasului de aliniere. Rotorul este aliniat la poziția în 6 trepte cea mai apropiată de „unghiul electric inițial”.
Este important de reținut că, implicit, durata Fazei 1 este de 200 ms. În timpul acestei etape, ciclul de funcționare este crescut liniar pentru a atinge Vol. de fază țintătage (Curentul de fază, dacă este selectat modul curent de conducere). Cu toate acestea, în cazul motoarelor voluminoase sau în cazul unei inerții mari, durata sugerată sau chiar faza țintă Vol.tage/Current poate să nu fie suficient pentru a începe corect rotația.
În Figura 6, este oferită o comparație între o condiție de aliniere greșită și una adecvată.
Dacă valoarea țintă sau durata Fazei 1 nu sunt suficiente pentru a forța rotorul în poziția de pornire, utilizatorul poate vedea motorul vibrând fără a începe să se rotească. Între timp, absorbția de curent crește. În prima perioadă a procedurii de pornire, curentul crește, dar cuplul nu este suficient pentru a depăși inerția motorului. În partea de sus a figurii 6 (A), utilizatorul poate vedea creșterea curentului. Cu toate acestea, nu există nicio dovadă de BEMF: motorul este apoi blocat. Odată începută etapa de accelerare, poziția incertă a rotorului împiedică algoritmul să finalizeze procedura de pornire și să pornească motorul.
Creșterea volumuluitagFaza e/current în timpul fazei 1 poate rezolva problema.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (9)
În voltage modul, ținta voltagÎn timpul pornirii, poate fi personalizat cu Motor Pilot fără a fi nevoie de regenerarea codului. În Motor Pilot, în secțiunea rev-up, aceeași accelerație profile din Figura 1 este raportat (vezi Figura 7). Rețineți că aici voltagFaza poate fi afișată ca impuls setat în registrul temporizatorului (unitatea S16A) sau ca corespunzătoare volumului de ieșiretage (unitate Vrms).
Odată ce utilizatorul găsește valorile potrivite care se potrivesc cel mai bine motorului, aceste valori pot fi implementate în proiectul MC workbench. Permite regenerarea codului pentru a aplica valoarea implicită. Formula de mai jos explică corelația dintre voltagfază în unități Vrms și S16A.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (10)
În modul curent, în GUI Motor Pilot, curentul țintă este afișat doar în S16A. Conversia sa în ampDepinde de valoarea de șunt și de ampcâștig de lificare utilizat în circuitul limitator de curent.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (11)
Accelerație în buclă deschisă
În Figura 5, Faza 2 corespunde fazei de accelerare. Secvența în 6 pași este aplicată pentru a accelera motorul într-o buclă deschisă, prin urmare, poziția rotorului nu este sincronizată cu secvența în 6 pași. Fazele curente sunt apoi mai mari decât optim și cuplul este mai mic.
În bancul de lucru MC (Figura 5), ​​utilizatorul poate defini unul sau mai multe segmente de accelerație. În special, pentru un motor voluminos, se recomandă accelerarea lui cu un r mai lentamp pentru a depăși inerția înainte de a efectua un r mai abruptamp. În timpul fiecărui segment, ciclul de lucru este crescut liniar pentru a atinge ținta finală a volumuluitage/faza curentă a acelui segment. Astfel, forțează comutarea fazelor la viteza corespunzătoare indicată în același tabel de configurare.
În figura 8, o comparație între o accelerație cu un volumtagFaza (A) prea scăzută și este prevăzută una adecvată (B).
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (12)
Dacă ținta voltage/curent al unei faze sau durata acesteia nu este suficientă pentru a permite motorului să atingă acea viteză corespunzătoare, utilizatorul poate vedea că motorul nu se mai rotește și începe să vibreze. În partea de sus a figurii 8, curentul crește brusc când motorul se oprește, în timp ce, atunci când este accelerat corespunzător, curentul crește fără discontinuități. Odată ce motorul se oprește, procedura de pornire eșuează.
Creșterea volumuluitage/faza curentă poate rezolva problema.
Pe de altă parte, dacă voltagFaza e/curent definită este prea mare, deoarece motorul funcționează ineficient în buclă deschisă, curentul poate crește și ajunge la supracurent. Motorul se oprește brusc și pilotul motor afișează o alarmă de supracurent. Comportamentul curentului este prezentat în Figura 9.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (13)
Scăderea volumuluitage/faza curentă poate rezolva problema.
La fel ca pasul de aliniere, ținta voltage/current poate fi personalizat timpul de funcționare în timpul pornirii cu Motor Pilot fără a fi nevoie de regenerarea codului. Apoi, poate fi implementat în proiectul MC workbench atunci când se identifică setarea adecvată.
Schimba
Ultimul pas al procedurii de pornire este comutarea. În timpul acestui pas, algoritmul exploatează BEMF detectat pentru a sincroniza secvența în 6 pași cu poziția rotorului. Comutarea începe în segmentul indicat în parametrul subliniat în Figura 10. Este configurabilă în secțiunea parametrilor de pornire fără senzori a bancului de lucru MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (14)
După un semnal valid de detectare a trecerii cu zero BEMF (pentru a îndeplini această condiție, vezi Secțiunea 2.1), algoritmul trece la o operație în buclă închisă. Etapa de comutare poate eșua din următoarele motive:
  • Viteza de comutare nu este configurată corect
  • Câștigurile PI ale buclei de viteză sunt prea mari
  • Pragurile pentru detectarea evenimentului de trecere cu zero BEMF nu sunt setate corect
Viteza de comutare nu este configurată corect
Viteza la care începe comutarea este în mod implicit aceeași cu viteza țintă inițială care poate fi configurată în secțiunea de setare a acționării a bancului de lucru MC. Utilizatorul trebuie să fie conștient de faptul că, de îndată ce bucla de viteză este închisă, motorul este accelerat instantaneu de la viteza de comutare la viteza țintă. Dacă aceste două valori sunt foarte îndepărtate, poate apărea o defecțiune la supracurent.
Câștigurile PI ale buclei de viteză sunt prea mari
În timpul comutării, algoritmul trece de la forțarea unei secvențe predefinite pentru a măsura viteza și a calcula valorile de ieșire în consecință. Astfel, compensează viteza reală care este rezultatul accelerației în buclă deschisă. Dacă câștigurile PI sunt prea mari, poate fi experimentată o instabilitate temporară, dar poate duce la defecțiune la supracurent dacă este exagerată.
Figura 11 arată și exampo astfel de instabilitate în timpul tranziției de la funcționarea în buclă deschisă la funcționarea în buclă închisă.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (15)
Praguri BEMF greșite
  • Dacă sunt setate praguri BEMF greșite, trecerea cu zero este detectată fie în avans, fie târziu. Acest lucru provoacă două efecte principale:
  • Formele de undă sunt asimetrice, iar controlul este ineficient, ducând la ondulații mari ale cuplului (Figura 12)
  • Bucla de viteză devine instabilă încercând să compenseze ondulațiile cuplului
  • Utilizatorul ar experimenta un control instabil al vitezei și, în cele mai rele cazuri, o desincronizare a conducerii motorului cu controlul care duce la un eveniment de supracurent.
  • Setarea corectă a pragurilor BEMF este crucială pentru o bună performanță a algoritmului. Pragurile depind și de voltage valoarea și rețeaua de detectare. Se recomandă să consultați Secțiunea 2.1 pentru a verifica cum să aliniați voltage nivelurile la cel nominal stabilit în bancul de lucru MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (16)
Funcționare în buclă închisă
Dacă motorul finalizează faza de accelerare, este detectată trecerea cu zero BEMF. Rotorul este sincronizat cu secvența în 6 pași și se obține o funcționare în buclă închisă. Cu toate acestea, poate fi efectuată o optimizare suplimentară a parametrilor pentru a îmbunătăți performanța.
De exemplu, așa cum este descris în Secțiunea anterioară 3.1.3 („Praguri BEMF greșite”), bucla de viteză, chiar dacă funcționează, poate părea instabilă, iar pragurile BEMF pot necesita unele rafinari.
În plus, următoarele aspecte trebuie luate în considerare dacă se solicită unui motor să funcționeze la viteză mare sau condus cu un ciclu de lucru PWM ridicat:
Frecvența PWM
  • Câștigurile PI ale buclei de viteză
  • Faza perioadei de blanking demagnetizare
  • Întârziere între trecerea la zero și comutarea treptei
  • Comutați între senzorul PWM OFF-time și ON-time
Frecvența PWM
Algoritmul în 6 pași fără senzori realizează o achiziție a BEMF la fiecare ciclu PWM. Pentru a detecta în mod corespunzător evenimentul de trecere cu zero, este necesar un număr suficient de achiziții. Ca regulă generală, pentru o funcționare corectă, cel puțin 10 achiziții peste 60 de unghiuri electrice asigură o sincronizare bună și stabilă a rotorului.
Prin urmare
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (17)
Câștigurile PI ale buclei de viteză
Câștigurile PI ale buclei de viteză afectează capacitatea de răspuns a motorului la orice comandă de accelerare sau decelerare. O descriere teoretică a modului în care funcționează un regulator PID depășește domeniul de aplicare al acestui document. Cu toate acestea, utilizatorul trebuie să fie conștient de faptul că câștigurile regulatorului buclei de viteză pot fi modificate în timpul rulării prin intermediul motorului pilot și pot fi ajustate după cum dorește.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (18)
Faza perioadei de blanking demagnetizare
Demagnetizarea fazei plutitoare este o perioadă după schimbarea alimentării fazei în care, din cauza descărcării curentului (Figura 14), citirea EMF din spate nu este fiabilă. Prin urmare, algoritmul trebuie să ignore semnalul înainte ca acesta să se scurgă. Această perioadă este definită în bancul de lucru MC ca procenttage dintr-o treaptă (60 de grade electrice) și poate fi schimbată timpul de funcționare prin Motor Pilot, așa cum se arată în Figura 15. Cu cât viteza motorului este mai mare, cu atât mai rapidă perioada de demagnetizare. Demagnetizarea, implicit, atinge o limită inferioară setată la trei cicluri PWM la 2/3 din viteza maximă nominală. Dacă faza de inductanță a motorului este scăzută și nu necesită mult timp pentru demagnetizare, utilizatorul poate reduce perioada de mascare sau viteza la care este setată perioada minimă. Cu toate acestea, nu este recomandat să reduceți perioada de mascare sub 2 – 3 cicluri PWM, deoarece controlul poate provoca instabilitate bruscă în timpul comutării treptei.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (19)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (20)
Întârziere între trecerea la zero BEMF și comutarea treptei
Odată ce evenimentul de trecere cu zero BEMF a fost detectat, algoritmul așteaptă în mod normal 30 de grade electrice până la o comutare a secvenței de pași (Figura 16). În acest fel, trecerea cu zero este poziționată la mijlocul pasului pentru a viza eficiența maximă.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (21)
Deoarece acuratețea detectării trecerii cu zero depinde de numărul de achiziții, deci de frecvența PWM (vezi Secțiunea 3.2.1), acuratețea detectării acesteia poate deveni relevantă la viteză mare. Apoi generează o asimetrie evidentă a formelor de undă și distorsiunea curentului (vezi Figura 17). Acest lucru poate fi compensat prin reducerea întârzierii dintre detectarea trecerii prin zero și comutarea treptei. Întârzierea de trecere la zero poate fi modificată de utilizator prin intermediul motorului pilot, așa cum se arată în Figura 18.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (22)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (23)
Comutați între senzorul PWM OFF-time și ON-time
În timp ce crește viteza sau curentul de sarcină (adică cuplul de ieșire al motorului), ciclul de funcționare al conducerii PWM crește. Astfel, timpul pentru samplimitarea BEMF în timpul OFF-time este redusă. Pentru a atinge 100% din ciclul de lucru, conversia ADC este declanșată în timpul ON-time al PWM, trecând astfel de la detectarea BEMF în timpul PWM OFF-time la PWM ON-time.
O configurație greșită a pragurilor BEMF în timpul ON duce la aceleași probleme descrise în Secțiunea 3.1.3 („Praguri BEMF greșite”).
În mod implicit, pragurile de detectare BEMF ON sunt setate la jumătate din volumul magistraleitage (vezi Secțiunea 2.1). Utilizatorul trebuie să ia în considerare că pragurile reale depind de volumul autobuzuluitagRețeaua de valori și de detectare. Urmați indicațiile din Secțiunea 2.1 și asigurați-vă că aliniați voltage nivelul la cel nominal stabilit în bancul de lucru MC.
Valorile pragurilor și ciclului de lucru PWM la care algoritmul schimbă între OFF și ON-sensing sunt configurabile în timpul de rulare prin Motor Pilot (Figura 19) și disponibile în Vol.tagConducere numai în modul e.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (24)

Depanare

De ce trebuie să am grijă pentru a învârti corect un motor cu un algoritm în 6 pași fără senzor? Învârtirea unui motor cu un algoritm în 6 pași fără senzor implică posibilitatea de a detecta corect semnalul BEMF, de a accelera motorul și sincroniza rotorul cu algoritmul de control. Măsurarea corectă a semnalelor BEMF constă în proiectarea eficientă a rețelei de detectare BEMF (a se vedea secțiunea 2.1). Ținta voltage (voltagde conducere în modul e) sau curent (conducere în modul curent) în timpul secvenței de pornire depinde de parametrii motorului. Definiția (și eventual durata) voltagFaza e/curentă în timpul etapelor de aliniere, accelerare și comutare sunt cruciale pentru o procedură de succes (vezi Secțiunea 3).
În cele din urmă, sincronizarea rotorului și capacitatea de a crește viteza motorului până la viteza nominală depind de optimizarea frecvenței PWM, pragurilor BEMF, perioada de demagnetizare și întârzierea dintre detectarea trecerii la zero și comutarea treptei, așa cum este descris în Secțiunea 3.2.
Care este valoarea corectă a divizorului de rezistență BEMF?
Utilizatorul trebuie să fie conștient de faptul că o valoare greșită a divizorului rezistenței BEMF poate elimina orice șansă de a conduce corect motorul. Pentru detalii suplimentare despre modul de proiectare a rețelei de detectare BEMF, consultați Secțiunea 2.1.
Cum configurez procedura de pornire?
  • Pentru a optimiza procesul de pornire, se recomandă creșterea duratei fiecărui pas al fazei de revoluție la câteva secunde. Apoi este posibil să înțelegem dacă motorul accelerează corect sau cu ce viteză/pas al procedurii în buclă deschisă eșuează.
  • Nu este recomandabil să accelerați un motor cu inerție mare cu un r prea abruptamp.
  • Dacă volumul configurattagFaza sau faza curentă este prea scăzută, motorul se blochează. Dacă este prea mare, se declanșează supracurent. Creșterea treptată a volumuluitagfaza e (voltagmodul e de conducere) sau curent (modul curent de conducere) în timpul etapelor de aliniere și accelerare permit utilizatorului să înțeleagă intervalul de funcționare a motorului. Într-adevăr, ajută la găsirea optimului.
  • Când vine vorba de trecerea la o funcționare în buclă închisă, câștigurile PI trebuie reduse la început pentru a exclude faptul că pierderea controlului sau instabilitatea se datorează buclei de viteză. În acest moment, este esențial să fii sigur că rețeaua de detectare BEMF este proiectată corespunzător (a se vedea Secțiunea 2.1) și că semnalul BEMF este dobândit în mod corespunzător. Utilizatorul poate accesa citirea BEMF și o poate reprezenta grafic în Motor Pilot (vezi Figura 20) selectând registrele disponibile BEMF_U, BEMF_V și BEMF_U în secțiunea ASYNC plot a instrumentului. Odată ce motorul este în starea de funcționare, câștigurile controlerului buclei de viteză pot fi optimizate. Pentru mai multe detalii sau optimizarea parametrilor, vezi Secțiunea 3 și Secțiunea 3.2.
    STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (1)
 Ce pot face dacă motorul nu se mișcă la pornire?
  • La pornire, un volum în creștere liniartage (voltage) sau curent (modul curent de conducere) este furnizat fazelor motorului. Scopul este de a-l alinia la o poziție cunoscută și predefinită. Dacă voltage nu este suficient de mare (mai ales la motoare cu o constantă de inerție mare), motorul nu se mișcă și procedura eșuează. Pentru mai multe informații despre soluțiile posibile, consultați Secțiunea 3.1.1.

Ce pot face dacă motorul nu termină faza de accelerare?
Ca și pentru faza de aliniere, motorul este accelerat într-o buclă deschisă prin aplicarea unui volum liniar crescător.tage (voltagde conducere în modul e) sau curent (conducere în modul curent) la fazele motorului. Valorile implicite nu iau în considerare sarcina mecanică aplicată eventual sau constantele motorului nu sunt exacte și/sau cunoscute. Prin urmare, procedura de accelerare poate eșua cu o oprire a motorului sau un eveniment de supracurent. Pentru mai multe informații despre soluțiile posibile, consultați Secțiunea 3.1.2.

De ce nu comută motorul în buclă de viteză închisă?
Dacă motorul accelerează corect până la viteza țintă, dar se oprește brusc, poate fi ceva greșit în configurația pragului BEMF sau câștigurile controlerului PI. Consultați Secțiunea 3.1.3 pentru mai multe detalii.

De ce bucla de viteză pare instabilă?
Este de așteptat o creștere a zgomotului măsurării cu viteza, deoarece cu cât viteza este mai mare, cu atât este mai mic numărul de BEMF sampcoduri pentru detectarea trecerii cu zero și, în consecință, acuratețea calculului acesteia. Cu toate acestea, o instabilitate excesivă a buclei de viteză poate fi, de asemenea, simptomul unui prag BEMF greșit sau al câștigurilor PI care nu sunt configurate corect, așa cum este evidențiat în Secțiunea 3.1.3.

  • Cum pot crește viteza maximă accesibilă?

Viteza maximă accesibilă este de obicei limitată de mai mulți factori: frecvența PWM, pierderea sincronizării (datorită perioadei excesive de demagnetizare sau întârziere greșită între detectarea trecerii cu zero și comutarea treptei), praguri BEMF inexacte. Pentru mai multe detalii despre cum să optimizați aceste elemente, consultați Secțiunea 3.2.1, Secțiunea 3.2.3, Secțiunea 3.2.4 și Secțiunea 3.2.5.

De ce motorul se oprește brusc la o anumită viteză?
Este probabil din cauza unei configurații inexacte ale pragului BEMF la detecție PWM. Consultați Secțiunea 3.2.5 pentru detalii suplimentare.

Istoricul reviziilor
Tabelul 2. Istoricul revizuirilor documentului
Data Versiune Schimbări
24-Nov-2023 1 Lansare inițială.

NOTIFICARE IMPORTANT – CITIȚI CU ATENTIE

STMicroelectronics NV și filialele sale („ST”) își rezervă dreptul de a face modificări, corecții, îmbunătățiri, modificări și îmbunătățiri produselor ST și/sau acestui document în orice moment, fără notificare. Cumpărătorii trebuie să obțină cele mai recente informații relevante despre produsele ST înainte de a plasa comenzi. Produsele ST sunt vândute în conformitate cu termenii și condițiile de vânzare ale ST în vigoare la momentul confirmării comenzii.
Cumpărătorii sunt singurii responsabili pentru alegerea, selecția și utilizarea produselor ST, iar ST nu își asumă nicio responsabilitate pentru asistența la aplicare sau proiectarea produselor cumpărătorilor.
Nicio licență, expresă sau implicită, pentru niciun drept de proprietate intelectuală nu este acordată de către ST prin prezenta.
Revânzarea produselor ST cu prevederi diferite de informațiile prezentate aici va anula orice garanție acordată de ST pentru un astfel de produs.
ST și sigla ST sunt mărci comerciale ale ST. Pentru informații suplimentare despre mărcile comerciale ST, consultați www.st.com/trademarks. Toate celelalte nume de produse sau servicii sunt proprietatea proprietarilor respectivi.
Informațiile din acest document înlocuiesc și înlocuiesc informațiile furnizate anterior în orice versiuni anterioare ale acestui document.
© 2023 STMicroelectronics – Toate drepturile rezervate

Documente/Resurse

STMicroelectronics STM32 Motor Control SDK 6 Step Firmware Sensor Les Parameter [pdfManual de utilizare
STM32 Motor Control SDK 6 Step Firmware Sensor fără parametru, Motor Control SDK 6 Step Firmware Sensor fără parametru, Step Firmware Sensor fără parametru, Firmware Sensor fără parametru, Parametru fără senzor, Mai puțin parametru, Parametru

Referințe

Lasă un comentariu

Adresa ta de e-mail nu va fi publicată. Câmpurile obligatorii sunt marcate *