Logo firmy STMicroelectronics

STM32 Motor Control SDK 6-stopniowy pakiet oprogramowania sprzętowego z czujnikiem i mniejszym parametrem

STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter-product
Specyfikacje
  • Nazwa produktu: SDK do sterowania silnikiem STM32 – 6-stopniowa optymalizacja parametrów oprogramowania sprzętowego bez czujnika
  • Numer modelu: UM3259
  • Wersja: wersja 1 – listopad 2023 r
  • Producent: STMicroelectronics
  • Webstrona: www.st.com

Nadview

Produkt przeznaczony jest do zastosowań związanych ze sterowaniem silnikami, w których konieczne jest określenie położenia wirnika bez użycia czujników. Oprogramowanie optymalizuje parametry pracy bez czujników, umożliwiając synchronizację komutacji stopniowej z położeniem wirnika.
Wykrywanie przejścia przez zero BEMF:
Kształt fali tylnej siły elektromotorycznej (BEMF) zmienia się wraz z położeniem i prędkością wirnika. Dostępne są dwie strategie wykrywania przejścia przez zero:
Wykrywanie wstecznego pola elektromagnetycznego podczas czasu wyłączenia PWM: Uzyskanie objętości fazy pływającejtage przez ADC, gdy prąd nie przepływa, identyfikując przejście przez zero w oparciu o próg.
Wykrywanie tylnego pola elektromagnetycznego podczas czasu włączenia PWM: Środek = głośność dotknięciatage osiąga połowę objętości autobusutage, identyfikacja przejścia przez zero na podstawie progu (VS / 2).
SDK do sterowania silnikiem STM32 – 6-stopniowa optymalizacja parametrów oprogramowania sprzętowego bez czujnika

Wstęp

W tym dokumencie opisano sposób optymalizacji parametrów konfiguracyjnych dla 6-stopniowego algorytmu bez czujnika. Celem jest uzyskanie płynnej i szybkiej procedury uruchamiania, ale także stabilnego zachowania w pętli zamkniętej. Dodatkowo w dokumencie wyjaśniono również, jak osiągnąć właściwy przełącznik pomiędzy wykrywaniem przejścia przez zero EMF wstecznego podczas czasu wyłączenia PWM i czasu włączenia PWM, gdy silnik obraca się z dużą prędkością przy niskim napięciutagtechnika trybu jazdy. Aby uzyskać więcej informacji na temat 6-stopniowego algorytmu oprogramowania sprzętowego i voltage/aktualna technika jazdy, patrz odpowiednia instrukcja obsługi zawarta w pakiecie dokumentacji X-CUBE-MCSDK.

Akronimy i skróty

Akronim Opis
MCSDK Zestaw programistyczny do sterowania silnikiem (X-CUBE-MCSDK)
HW Sprzęt komputerowy
Środowisko programistyczne (IDE) Zintegrowane środowisko programistyczne
MCU Jednostka mikrokontrolera
GPIO Wejście/wyjście ogólnego przeznaczenia
ADC Analogowy do cyfrowego konwertera
VM Tomtagi mody
SL Bez czujnika
BEMF Siła elektromotoryczna wsteczna
FW Oprogramowanie sprzętowe
ZC Przejście przez zero
Interfejs graficzny Graficzny interfejs użytkownika
MC Sterowanie silnikiem
OCP Zabezpieczenie nadprądowe
PID Proporcjonalnie-całkująco-pochodna (sterownik)
Zestaw SDK Zestaw do tworzenia oprogramowania
UI Interfejs użytkownika
Stół warsztatowy MC Narzędzie warsztatowe do sterowania silnikiem, część MCSDK
Pilot motorowy Narzędzie pilota silnika, część MCSDK

Nadview

W 6-stopniowym trybie jazdy bez czujników oprogramowanie sprzętowe wykorzystuje siłę elektromotoryczną (BEMF) wykrywaną w fazie swobodnej. Położenie wirnika uzyskuje się poprzez wykrywanie przejścia BEMF przez zero. Zwykle robi się to za pomocą przetwornika ADC, jak pokazano na rysunku 1. W szczególności, gdy pole magnetyczne wirnika przechodzi przez fazę wysokiego Z, odpowiednia objętość BEMFtage zmienia swój znak (przejście przez zero). BEMF objtage można skalować na wejściu ADC, dzięki sieci rezystorów, która dzieli objtage pochodzące z fazy silnika.
Ponieważ jednak sygnał BEMF jest proporcjonalny do prędkości, położenia wirnika nie można określić przy uruchomieniu ani przy bardzo niskiej prędkości. Dlatego silnik musi być przyspieszany w pętli otwartej do momentu uzyskania wystarczającej objętości BEMFtage zostało osiągnięte. Ten BEMF objtage umożliwia synchronizację komutacji stopniowej z położeniem wirnika.
W poniższych akapitach opisano procedurę uruchamiania i działanie w pętli zamkniętej wraz z parametrami umożliwiającymi ich dostrojenie.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (2)
Wykrywanie przejścia przez zero BEMF
Przebieg tylnego pola elektromagnetycznego silnika bezszczotkowego zmienia się wraz z położeniem wirnika i prędkością i ma kształt trapezu. Rysunek 2 przedstawia przebieg prądu i zwrotnej siły elektromotorycznej dla jednego okresu elektrycznego, gdzie linia ciągła oznacza prąd (dla uproszczenia tętnienia są ignorowane), linia przerywana przedstawia tylną siłę elektromotoryczną, a współrzędna pozioma przedstawia siłę elektryczną Perspektywa obrotu silnika.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (3)
Środek każdych dwóch punktów przełączania faz odpowiada jednemu punktowi, którego tylna polaryzacja siły elektromotorycznej ulega zmianie: punkt przejścia przez zero. Po zidentyfikowaniu punktu przejścia przez zero moment przełączania faz jest ustawiany po elektrycznym opóźnieniu wynoszącym 30°. Aby wykryć przejście przez zero BEMF, dotknij środkowego przycisku objtagtrzeba wiedzieć. Środkowy kran jest równy punktowi, w którym trzy fazy silnika są ze sobą połączone. Niektóre silniki udostępniają centralny kran. W innych przypadkach można go zrekonstruować poprzez objtagfazy. Opisany tutaj 6-etapowy algorytm wymaga zaawansowanego działaniatage obecności sieci czujnikowej BEMF podłączonej do faz silnika, która umożliwia obliczenie objętości centralnego kranutage.
  • Dostępne są dwie różne strategie identyfikacji punktu przejścia przez zero
  • Wykrywanie wstecznego pola elektromagnetycznego podczas czasu wyłączenia PWM
  • Wykrywanie wstecznego pola elektromagnetycznego w czasie włączenia PWM (obecnie obsługiwane w tomtagtylko tryb e)
Podczas czasu wyłączenia PWM, objętość fazy pływającejtage jest nabywane przez ADC. Ponieważ w fazie swobodnej nie płynie żaden prąd, a pozostałe dwa są podłączone do masy, gdy BEMF przekracza zero w fazie swobodnej, ma równą i przeciwną polaryzację w pozostałych fazach: środkowy kran obj.tage wynosi zatem zero. Zatem punkt przejścia przez zero jest identyfikowany, gdy konwersja ADC wzrasta powyżej lub spada poniżej określonego progu.
Z drugiej strony, w czasie PWM ON, jedna faza jest podłączona do szyny objtage, a drugi na ziemię (ryc. 3). W tym stanie centralny kran voltage osiąga połowę objętości autobusutage wartość, gdy BEMF w fazie pływającej wynosi zero. Podobnie jak poprzednio, punkt przejścia przez zero jest identyfikowany, gdy konwersja ADC wzrasta powyżej (lub spada poniżej) określonego progu. Ten ostatni odpowiada VS / 2.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (4)
Projekt sieci czujnikowej BEMF
Na rysunku 4 pokazano powszechnie używaną sieć do wykrywania BEMF. Jego celem jest podzielenie objętości fazy silnikatage zostać prawidłowo zdobyte przez ADC. Wartości R2 i R1 należy wybrać zgodnie z obj. magistralitagpoziom. Użytkownik musi mieć świadomość, że stosując stosunek R1 / (R2 + R1) znacznie niższy niż jest to konieczne, sygnał BEMF może być zbyt niski, a sterowanie niewystarczająco solidne.
Z drugiej strony, stosunek wyższy niż potrzebny prowadziłby do częstego włączania/wyłączania diod zabezpieczających D1, których prąd powrotny może powodować zakłócenia. Zalecana wartość to:
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (5)
Należy unikać bardzo niskich wartości R1 i R2, aby ograniczyć prąd pobierany z fazy silnika.
R1 jest czasami podłączony do GPIO zamiast GND. Umożliwia włączenie lub wyłączenie środowiska uruchomieniowego sieci.
W 6-stopniowym oprogramowaniu sprzętowym GPIO jest zawsze w stanie resetu, a sieć jest włączona. Jednakże przy ustawianiu progów BEMF dla wykrywania w czasie PWM włączenia należy wziąć pod uwagę ewentualną obecność D3: zwykle dodaje się to 0.5–0.7 V do idealnego progu.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (6)
C1 służy do celów filtrowania i nie może ograniczać szerokości pasma sygnału w zakresie częstotliwości PWM.
D4 i R3 służą do szybkiego rozładowania węzła BEMF_SENSING_ADC podczas komutacji PWM, zwłaszcza przy dużym natężeniutage tablice.
Diody D1 i D2 są opcjonalne i należy je dodać tylko w przypadku ryzyka naruszenia maksymalnych wartości znamionowych kanału ADC czujnika BEMF.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (7)
Optymalizacja parametrów algorytmu sterowania
Procedura uruchamiania
Procedura uruchamiania składa się zwykle z sekwencji trzech sekundtages:
  1. Wyrównanie. Wirnik jest ustawiony w określonej pozycji.
  2. Przyspieszenie w otwartej pętli. tomtagImpulsy są podawane w określonej kolejności, aby wytworzyć pole magnetyczne, które powoduje, że wirnik zaczyna się obracać. Częstotliwość sekwencji jest stopniowo zwiększana, aby umożliwić wirnikowi osiągnięcie określonej prędkości.
  3.  Przełączenie. Gdy wirnik osiągnie określoną prędkość, algorytm przełącza się na 6-stopniową sekwencję sterowania w pętli zamkniętej, aby zachować kontrolę nad prędkością i kierunkiem silnika.
Jak pokazano na rysunku 5, użytkownik może dostosować parametry uruchamiania w środowisku roboczym MC przed wygenerowaniem kodu. Dostępne są dwa różne tryby jazdy:
  • Tomtagtryb e. Algorytm kontroluje prędkość poprzez zmianę współczynnika wypełnienia PWM zastosowanego do faz silnika: docelowa objętość fazytage jest zdefiniowane dla każdego segmentu startupu profile
  • Aktualny tryb. Algorytm kontroluje prędkość poprzez zmianę prądu płynącego w fazach silnika: Docelowy prąd jest zdefiniowany dla każdego segmentu programu rozruchowegofile
Rysunek 5. Parametry startowe w środowisku roboczym MC
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (8)
Wyrównanie
Na rysunku 5 faza 1 zawsze odpowiada etapowi wyrównywania. Wirnik jest ustawiony w 6-stopniowej pozycji najbliższej „Początkowemu kątowi elektrycznemu”.
Należy pamiętać, że domyślny czas trwania fazy 1 wynosi 200 ms. Podczas tego etapu cykl pracy zwiększa się liniowo, aby osiągnąć docelową objętość fazytage (Prąd fazowy, jeśli wybrany jest bieżący tryb jazdy). Jednakże w przypadku nieporęcznych silników lub w przypadku dużej bezwładności sugerowany czas trwania lub nawet docelowa objętość fazytage/Prąd może nie wystarczyć do prawidłowego rozpoczęcia rotacji.
Na rysunku 6 przedstawiono porównanie nieprawidłowego i prawidłowego ustawienia.
Jeśli wartość docelowa lub czas trwania fazy 1 nie są wystarczające, aby ustawić wirnik w pozycji początkowej, użytkownik może zobaczyć, jak silnik wibruje, ale nie zaczyna się obracać. Jednocześnie wzrasta absorpcja prądu. W pierwszym okresie procedury rozruchu prąd wzrasta, ale moment obrotowy nie jest wystarczający, aby pokonać bezwładność silnika. W górnej części rysunku 6 (A) użytkownik może zobaczyć wzrost prądu. Jednakże nie ma dowodów na BEMF: silnik zostaje wtedy zgaszony. Po rozpoczęciu etapu przyspieszania niepewne położenie wirnika uniemożliwia algorytmowi zakończenie procedury rozruchu i uruchomienie silnika.
Zwiększanie głośnościtage/bieżąca faza podczas fazy 1 może rozwiązać problem.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (9)
W tomtagtryb e, docelowa objętośćtage podczas uruchamiania można dostosować za pomocą Motor Pilot bez konieczności ponownego generowania kodu. W Motor Pilot, w sekcji zwiększania obrotów, to samo przyspieszenie profile z ryc. 1 podano (patrz ryc. 7). Zwróć uwagę, że tutaj objtagFaza może być pokazana jako impuls ustawiony w rejestrze czasowym (jednostka S16A) lub jako odpowiadająca objętości wyjściowejtage (jednostka Vrms).
Gdy użytkownik znajdzie odpowiednie wartości, które najlepiej pasują do silnika, wartości te można zaimplementować w projekcie środowiska roboczego MC. Umożliwia ponowne wygenerowanie kodu w celu zastosowania wartości domyślnej. Poniższy wzór wyjaśnia korelację pomiędzy objtagFaza w jednostkach Vrms i S16A.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (10)
W trybie prądu w interfejsie GUI Motor Pilot prąd docelowy jest pokazywany tylko w S16A. Jego konwersja w ampZależy to od wartości bocznika i ampwzmocnienie lifikacyjne stosowane w obwodzie ogranicznika prądu.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (11)
Przyspieszenie w otwartej pętli
Na rysunku 5 faza 2 odpowiada fazie przyspieszania. Sekwencja 6-stopniowa stosowana jest w celu przyspieszenia silnika w pętli otwartej, dlatego położenie wirnika nie jest zsynchronizowane z sekwencją 6-stopniową. Fazy ​​prądu są wówczas wyższe od optymalnych, a moment obrotowy jest niższy.
W środowisku roboczym MC (Rysunek 5) użytkownik może zdefiniować jeden lub więcej segmentów przyspieszenia. W szczególności w przypadku nieporęcznego silnika zaleca się przyspieszanie go wolniejszym ramp aby pokonać bezwładność przed wykonaniem bardziej stromego ramp. Podczas każdego segmentu cykl pracy zwiększa się liniowo, aby osiągnąć ostateczny cel objtage/bieżąca faza tego segmentu. Wymusza zatem komutację faz z odpowiednią prędkością wskazaną w tej samej tabeli konfiguracyjnej.
Na rysunku 8 porównanie przyspieszenia z objętościątagFaza (A) jest za niska i zapewniona jest właściwa (B).
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (12)
Jeśli docelowa objtagPrąd jednej fazy lub czas jego trwania nie jest wystarczający, aby silnik osiągnął odpowiednią prędkość, użytkownik może zobaczyć, jak silnik przestaje się obracać i zaczyna wibrować. Na górze rysunku 8 prąd nagle wzrasta, gdy silnik zgaśnie, natomiast przy odpowiednim przyspieszeniu prąd wzrasta bez nieciągłości. Po zatrzymaniu silnika procedura uruchamiania kończy się niepowodzeniem.
Zwiększanie głośnościtage/bieżąca faza może rozwiązać problem.
Z drugiej strony, jeśli objtagZdefiniowana faza prądu e/prądu jest zbyt wysoka, ponieważ silnik pracuje nieefektywnie w pętli otwartej, prąd może wzrosnąć i osiągnąć wartość przetężenia. Silnik nagle się zatrzymuje, a pilot silnika wyświetla alarm przetężenia. Zachowanie prądu pokazano na rysunku 9.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (13)
Zmniejszanie objtage/bieżąca faza może rozwiązać problem.
Podobnie jak etap wyrównywania, docelowa objętośćtagCzas działania e/current można dostosować podczas uruchamiania za pomocą Motor Pilot bez konieczności ponownego generowania kodu. Następnie można go zaimplementować w projekcie środowiska roboczego MC po zidentyfikowaniu właściwych ustawień.
Przełączenie
Ostatnim krokiem procedury rozruchu jest przełączenie. Na tym etapie algorytm wykorzystuje wykryty BEMF do synchronizacji 6-etapowej sekwencji z pozycją wirnika. Przełączenie rozpoczyna się w segmencie wskazanym w parametrze podkreślonym na rysunku 10. Można je skonfigurować w sekcji parametrów uruchamiania bez czujnika w środowisku MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (14)
Po prawidłowym sygnale wykrycia przejścia przez zero BEMF (aby spełnić ten warunek, patrz sekcja 2.1), algorytm przełącza się na działanie w pętli zamkniętej. Etap przełączenia może zakończyć się niepowodzeniem z następujących powodów:
  • Szybkość przełączania nie jest prawidłowo skonfigurowana
  • Wzmocnienia PI pętli prędkości są zbyt duże
  • Progi wykrywające zdarzenie przejścia przez zero BEMF nie są prawidłowo ustawione
Prędkość przełączania nie jest prawidłowo skonfigurowana
Prędkość, od której rozpoczyna się przełączanie, jest domyślnie taka sama, jak początkowa prędkość docelowa, którą można skonfigurować w sekcji ustawień napędu w środowisku roboczym MC. Użytkownik musi mieć świadomość, że po zamknięciu pętli prędkości silnik jest natychmiast przyspieszany od prędkości przełączania do prędkości docelowej. Jeśli te dwie wartości są bardzo od siebie oddalone, może wystąpić awaria nadprądowa.
Zbyt wysokie wzmocnienia PI pętli prędkości
Podczas przełączania algorytm przechodzi od wymuszania określonej sekwencji do pomiaru prędkości i odpowiedniego obliczenia wartości wyjściowych. W ten sposób kompensuje rzeczywistą prędkość wynikającą z przyspieszenia w otwartej pętli. Jeśli wzmocnienia PI są zbyt wysokie, może wystąpić tymczasowa niestabilność, która może jednak prowadzić do awarii nadprądowej, jeśli jest przesadna.
Figura 11 przedstawia i przykładample takiej niestabilności podczas przejścia z pracy w pętli otwartej do pracy w pętli zamkniętej.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (15)
Nieprawidłowe progi BEMF
  • Jeżeli ustawione zostaną nieprawidłowe progi BEMF, przejście przez zero zostanie wykryte z wyprzedzeniem lub z opóźnieniem. Powoduje to dwa główne skutki:
  • Przebiegi są asymetryczne, a sterowanie nieefektywne, co prowadzi do dużych tętnień momentu obrotowego (Rysunek 12)
  • Pętla prędkości staje się niestabilna, próbując skompensować tętnienia momentu obrotowego
  • Użytkownik doświadczyłby niestabilnej kontroli prędkości, a w najgorszych przypadkach desynchronizacji napędu silnika ze sterowaniem, co doprowadziłoby do zdarzenia przetężenia.
  • Prawidłowe ustawienie progów BEMF jest kluczowe dla dobrego działania algorytmu. Progi zależą również od objętości autobusutagWartość i sieć sensoryczna. Zaleca się zapoznanie z sekcją 2.1, aby sprawdzić, jak wyrównać objtagPoziomy do nominalnego ustawionego na stole warsztatowym MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (16)
Działanie w pętli zamkniętej
Jeżeli silnik zakończy fazę przyspieszania, wykryte zostanie przejście przez zero BEMF. Wirnik jest zsynchronizowany z 6-stopniową sekwencją i uzyskuje się działanie w pętli zamkniętej. Można jednak przeprowadzić dalszą optymalizację parametrów, aby poprawić wydajność.
Na przykład, jak opisano w poprzedniej sekcji 3.1.3 („Nieprawidłowe progi BEMF”), pętla prędkości, nawet jeśli działa, może wydawać się niestabilna, a progi BEMF mogą wymagać pewnego udoskonalenia.
Dodatkowo należy wziąć pod uwagę następujące aspekty, jeśli silnik ma pracować z dużą prędkością lub być napędzany przy wysokim cyklu pracy PWM:
Częstotliwość PWM
  • Wzmocnienia PI pętli prędkości
  • Faza okresu wygaszania rozmagnesowania
  • Opóźnienie między przejściem przez zero a komutacją krokową
  • Przełączanie pomiędzy wykrywaniem czasu wyłączenia i włączenia PWM
Częstotliwość PWM
Bezczujnikowy 6-stopniowy algorytm dokonuje akwizycji BEMF w każdym cyklu PWM. Aby prawidłowo wykryć zdarzenie przejścia przez zero, wymagana jest wystarczająca liczba akwizycji. Ogólną zasadą jest, że dla prawidłowego działania co najmniej 10 akwizycji powyżej 60 kątów elektrycznych zapewnia dobrą i stabilną synchronizację wirnika.
Dlatego
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (17)
Wzmocnienia PI pętli prędkości
Wzmocnienia PI pętli prędkości wpływają na reakcję silnika na dowolne polecenie przyspieszania lub zwalniania. Teoretyczny opis działania regulatora PID wykracza poza zakres tego dokumentu. Jednakże użytkownik musi mieć świadomość, że wzmocnienia regulatora pętli prędkości można zmieniać w czasie pracy za pomocą pilota silnika i regulować według potrzeb.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (18)
Faza okresu wygaszania rozmagnesowania
Rozmagnesowanie fazy pływającej to okres po zmianie zasilania fazowego, podczas którego ze względu na wyładowanie prądowe (Rys. 14) odczyt tylnego pola elektromagnetycznego nie jest wiarygodny. Dlatego algorytm musi zignorować sygnał, zanim upłynie. Okres ten jest zdefiniowany w środowisku roboczym MC jako procenttage stopnia (60 stopni elektrycznych) i czas pracy można zmienić za pomocą pilota silnika, jak pokazano na rysunku 15. Im wyższa prędkość silnika, tym krótszy okres rozmagnesowania. Rozmagnesowanie domyślnie osiąga dolny limit ustawiony na trzy cykle PWM przy 2/3 maksymalnej prędkości znamionowej. Jeżeli faza indukcyjna silnika jest niska i nie wymaga dużego czasu na rozmagnesowanie, użytkownik może zmniejszyć okres maskowania lub prędkość, przy której ustawiony jest okres minimalny. Nie zaleca się jednak skracania okresu maskowania poniżej 2 – 3 cykli PWM, ponieważ sterowanie może spowodować nagłą niestabilność podczas komutacji stopni.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (19)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (20)
Opóźnienie między przejściem przez zero BEMF a komutacją stopnia
Po wykryciu zdarzenia przejścia przez zero BEMF algorytm zwykle czeka 30 stopni elektrycznych, aż do komutacji sekwencji kroków (Rysunek 16). W ten sposób przejście przez zero jest umiejscowione w środku stopnia, aby osiągnąć maksymalną wydajność.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (21)
Ponieważ dokładność detekcji przejścia przez zero zależy od liczby akwizycji, a więc od częstotliwości PWM (patrz rozdział 3.2.1), dokładność detekcji może stać się istotna przy dużych prędkościach. Generuje wówczas wyraźną asymetrię przebiegów i zniekształcenie prądu (patrz rysunek 17). Można to skompensować poprzez zmniejszenie opóźnienia między wykryciem przejścia przez zero a komutacją stopnia. Opóźnienie przejścia przez zero może zostać zmienione przez użytkownika za pomocą pilota silnika, jak pokazano na rysunku 18.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (22)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (23)
Przełączanie pomiędzy wykrywaniem czasu wyłączenia i włączenia PWM
Wraz ze wzrostem prędkości lub prądu obciążenia (tzn. wyjściowego momentu obrotowego silnika) zwiększa się cykl pracy sterowania PWM. Zatem czas na sampczas utrzymywania BEMF w czasie wyłączenia zostaje skrócony. Aby osiągnąć 100% cyklu pracy, konwersja ADC jest wyzwalana w czasie włączenia PWM, przełączając w ten sposób z wykrywania BEMF w czasie wyłączenia PWM na czas włączenia PWM.
Niewłaściwa konfiguracja progów BEMF w czasie włączenia prowadzi do tych samych problemów, które opisano w rozdziale 3.1.3 („Nieprawidłowe progi BEMF”).
Domyślnie progi wykrywania BEMF ON są ustawione na połowę objętości magistralitage (patrz sekcja 2.1). Użytkownik musi wziąć pod uwagę, że rzeczywiste progi zależą od objętości magistralitagSieć wartości i wykrywania. Postępuj zgodnie ze wskazówkami w Sekcji 2.1 i upewnij się, że wyrównałeś objtagPoziom do poziomu nominalnego ustawionego na stole warsztatowym MC.
Wartości progów i współczynnika wypełnienia PWM, przy których algorytm przełącza się pomiędzy wykrywaniem wyłączenia i włączenia, można skonfigurować w czasie działania za pomocą pilota silnika (Rysunek 19) i są dostępne w tomietagTylko jazda w trybie e.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (24)

Rozwiązywanie problemów

O co muszę zadbać, aby prawidłowo obrócić silnik za pomocą 6-stopniowego algorytmu bez czujników? Obracanie silnika za pomocą 6-stopniowego algorytmu bez czujników oznacza możliwość prawidłowego wykrycia sygnału BEMF, przyspieszenia silnika i zsynchronizować wirnik z algorytmem sterowania. Właściwy pomiar sygnałów BEMF polega na efektywnym zaprojektowaniu sieci czujnikowej BEMF (patrz sekcja 2.1). Docelowa objtage (ttagtryb jazdy) lub prąd (tryb prądu jazdy) podczas sekwencji rozruchu zależy od parametrów silnika. Definicja (i ostatecznie czas trwania) tomtagFaza prądu podczas ustawiania, przyspieszania i przełączania ma kluczowe znaczenie dla powodzenia procedury (patrz rozdział 3).
Ostatecznie synchronizacja wirnika i możliwość zwiększenia prędkości silnika do prędkości znamionowej zależy od optymalizacji częstotliwości PWM, progów BEMF, okresu rozmagnesowania i opóźnienia pomiędzy wykryciem przejścia przez zero a komutacją stopnia, jak opisano w Sekcja 3.2.
Jaka jest właściwa wartość dzielnika rezystora BEMF?
Użytkownik musi mieć świadomość, że zła wartość dzielnika rezystora BEMF może pozbawić go szans na prawidłowe sterowanie silnikiem. Więcej szczegółów na temat projektowania sieci czujnikowej BEMF można znaleźć w sekcji 2.1.
Jak skonfigurować procedurę uruchamiania?
  • Aby zoptymalizować proces uruchamiania, zaleca się wydłużenie czasu trwania każdego etapu fazy rozruchu do kilku sekund. Można wtedy zrozumieć, czy silnik prawidłowo przyspiesza lub przy jakiej prędkości/etapie procedury w pętli otwartej następuje awaria.
  • Nie zaleca się przyspieszania silnika o dużej bezwładności zbyt stromym ramp.
  • Jeśli skonfigurowany objtagFaza lub faza prądu jest za niska, silnik gaśnie. Jeśli jest zbyt wysoka, wyzwalane jest przetężenie. Stopniowo zwiększaj objętośćtagfaza e (ttagtryb jazdy) lub prąd (jazda w trybie prądu) podczas etapów wyrównywania i przyspieszania pozwalają użytkownikowi zrozumieć zakres pracy silnika. Rzeczywiście, pomaga znaleźć optymalne.
  • Jeśli chodzi o przejście do pracy w pętli zamkniętej, należy najpierw zmniejszyć wzmocnienia PI, aby wykluczyć, że utrata kontroli lub niestabilność wynikają z pętli prędkości. W tym momencie kluczowe znaczenie ma upewnienie się, że sieć czujnikowa BEMF jest prawidłowo zaprojektowana (patrz sekcja 2.1) i że sygnał BEMF został prawidłowo odebrany. Użytkownik może uzyskać dostęp do odczytu BEMF i wykreślić go w Motor Pilot (patrz rysunek 20), wybierając dostępne rejestry BEMF_U, BEMF_V i BEMF_U w sekcji wykresu ASYNC narzędzia. Gdy silnik znajdzie się w stanie pracy, można zoptymalizować wzmocnienia regulatora pętli prędkości. Dalsze szczegóły lub optymalizacja parametrów znajdują się w Rozdziale 3 i Rozdziale 3.2.
    STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Czujnik-Mniej parametrów- (1)
 Co mogę zrobić, jeśli silnik nie porusza się podczas uruchamiania?
  • Przy uruchomieniu liniowo rosnąca objętośćtage (ttage tryb jazdy) lub prąd (tryb jazdy prądem) jest dostarczany do faz silnika. Celem jest ustawienie go w znanej i wcześniej określonej pozycji. Jeśli objtage nie jest wystarczająco wysokie (szczególnie w przypadku silników o dużej stałej bezwładności), silnik nie porusza się i procedura kończy się niepowodzeniem. Więcej informacji na temat możliwych rozwiązań można znaleźć w rozdziale 3.1.1.

Co mogę zrobić, jeśli silnik nie zakończy fazy przyspieszania?
Podobnie jak w przypadku fazy wyrównywania, silnik jest przyspieszany w pętli otwartej poprzez zastosowanie liniowo rosnącej objętościtage (ttagtryb jazdy) lub prąd (tryb jazdy prądem) do faz silnika. Wartości domyślne nie uwzględniają ewentualnego zastosowanego obciążenia mechanicznego lub stałe silnika nie są dokładne i/lub znane. Dlatego procedura przyspieszania może zakończyć się niepowodzeniem w przypadku utknięcia silnika lub wystąpienia przetężenia. Więcej informacji na temat możliwych rozwiązań można znaleźć w rozdziale 3.1.2.

Dlaczego silnik nie przełącza się w zamkniętą pętlę prędkości?
Jeśli silnik prawidłowo przyspiesza do prędkości docelowej, ale nagle się zatrzymuje, coś może być nie tak w konfiguracji progu BEMF lub wzmocnienie regulatora PI. Dalsze szczegóły znajdują się w Sekcji 3.1.3.

Dlaczego pętla prędkości wygląda niestabilnie?
Oczekuje się wzrostu szumu pomiaru wraz z prędkością, ponieważ im wyższa prędkość, tym mniejsza liczba BEMF sampplików do wykrywania przejścia przez zero, a co za tym idzie, dokładność jego obliczeń. Jednakże nadmierna niestabilność pętli prędkości może być również objawem nieprawidłowego progu BEMF lub wzmocnień PI, które nie są odpowiednio skonfigurowane, jak podkreślono w Sekcji 3.1.3.

  • Jak zwiększyć maksymalną osiągalną prędkość?

Maksymalna osiągalna prędkość jest zwykle ograniczona przez kilka czynników: częstotliwość PWM, utratę synchronizacji (z powodu nadmiernego okresu rozmagnesowania lub nieprawidłowego opóźnienia pomiędzy wykryciem przejścia przez zero a komutacją stopnia), niedokładnymi progami BEMF. Więcej szczegółów na temat optymalizacji tych elementów można znaleźć w Sekcji 3.2.1, Sekcji 3.2.3, Sekcji 3.2.4 i Sekcji 3.2.5.

Dlaczego silnik nagle zatrzymuje się przy określonej prędkości?
Jest to prawdopodobnie spowodowane niedokładną konfiguracją progu BEMF przy wykrywaniu PWM. Dalsze szczegóły znajdują się w Sekcji 3.2.5.

Historia rewizji
Tabela 2. Historia zmian dokumentu
Data Wersja Zmiany
24-lis-2023 1 Pierwsze wydanie.

WAŻNA INFORMACJA – PRZECZYTAJ UWAŻNIE

STMicroelectronics NV i jej spółki zależne („ST”) zastrzegają sobie prawo do wprowadzania zmian, poprawek, ulepszeń, modyfikacji i udoskonaleń produktów ST i/lub niniejszego dokumentu w dowolnym momencie bez powiadomienia. Nabywcy powinni uzyskać najnowsze istotne informacje o produktach ST przed złożeniem zamówienia. Produkty ST są sprzedawane zgodnie z warunkami sprzedaży ST obowiązującymi w momencie potwierdzenia zamówienia.
Nabywcy ponoszą wyłączną odpowiedzialność za wybór, selekcję i użytkowanie produktów ST. ST nie ponosi żadnej odpowiedzialności za pomoc w stosowaniu ani za konstrukcję produktów nabywców.
ST nie udziela żadnej licencji, wyraźnej ani dorozumianej, na jakiekolwiek prawa własności intelektualnej.
Odsprzedaż produktów ST z postanowieniami różniącymi się od informacji zawartych w niniejszym dokumencie powoduje unieważnienie gwarancji udzielonej przez ST na taki produkt.
ST i logo ST są znakami towarowymi ST. Aby uzyskać dodatkowe informacje o znakach towarowych ST, zapoznaj się z www.st.com/trademarkS. Wszystkie inne nazwy produktów lub usług są własnością ich właścicieli.
Informacje zawarte w niniejszym dokumencie zastępują informacje podane wcześniej w jakiejkolwiek poprzedniej wersji tego dokumentu.
© 2023 STMicroelectronics – Wszelkie prawa zastrzeżone

Dokumenty / Zasoby

STMicroelectronics STM32 Motor Control SDK 6-stopniowy pakiet oprogramowania sprzętowego z czujnikiem i mniejszym parametrem [plik PDF] Instrukcja obsługi
STM32 Motor Control SDK 6-stopniowy pakiet oprogramowania sprzętowego Mniej parametrów, Sterowanie silnikiem SDK 6-stopniowy pakiet oprogramowania sprzętowego Czujnik mniej parametrów, krok oprogramowania sprzętowego Czujnik mniej parametrów, oprogramowanie sprzętowe Czujnik mniej parametrów, Czujnik mniej parametrów, Mniej parametrów, parametrów

Odniesienia

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *