Skip to main content

Przestrzeń afiniczna: geometria którą Twój regulator PI zna od zawsze

·5 mins

Artykuł z serii: Geometria różniczkowa dla inżynierów napędów elektrycznych

Artykuł zainspirowany rozdziałem 2 książki Jędrzeja Kijowskiego “Geometria różniczkowa jako narzędzie nauk przyrodniczych” — pozycji którą polecam każdemu inżynierowi który chce zrozumieć matematykę stojącą za narzędziami których używa na co dzień.


Sucha formuła na początek #

e(t) = x_ref − x_actual

Wrócimy do niej. Najpierw ściana.


Akt I: Ściana bez centrum #

Wyobraź sobie ścianę. Gładką, białą, pustą. Możesz wskazać dowolny punkt na tej ścianie — kontakt elektryczny, plamę farby, narożnik okna. Możesz powiedzieć: “przesuń się 30 cm w prawo i 10 cm w górę od kontaktu” — i dotrzesz do konkretnego miejsca. Możesz zmierzyć odległość między dwoma punktami i kierunek między nimi.

Ale nie możesz wskazać na ścianę i powiedzieć: “oto jej centrum”. Żaden punkt nie jest wyróżniony. Ściana jest jednorodna — każde miejsce jest tak samo dobre jak każde inne.

To jest przestrzeń afiniczna.

Teraz wchodzi hydraulik i mówi: “będę mierzył wszystko od lewego dolnego rogu”. Przykłada tam taśmę mierniczą i nagle każdy punkt ma współrzędne — (120 cm, 45 cm), (30 cm, 80 cm). Ściana stała się przestrzenią wektorową. Ale ten róg jest arbitralny — inny hydraulik wybrałby środek ściany i miałby równie dobry opis tej samej ściany.

Przestrzeń wektorowa to przestrzeń afiniczna z arbitralnie wybranym zerem.

Ta sama ściana — dwie różne struktury matematyczne
Ta sama ściana — dwie różne struktury matematyczne. Po lewej: przestrzeń afiniczna bez wyróżnionego zera. Po prawej: przestrzeń wektorowa z arbitralnym zerem w rogu.


Akt II: Para (A, V) i klej między nimi #

Przestrzeń afiniczna to trzy składniki połączone razem jak klocki LEGO.

Pierwszy klocek to zbiór punktów A — sama ściana, bez żadnej struktury algebraicznej. Punkty nie umieją się dodawać ani skalować. Po prostu istnieją.

Drugi klocek to przestrzeń wektorowa V — w naszym przypadku ℝ². To abstrakcyjny zbiór przesunięć: “30 cm w prawo i 10 cm w górę”. Wektory umieją się dodawać i skalować, ale same w sobie nie są punktami na ścianie — nie mają pozycji, tylko kierunek i długość.

Trzeci klocek to odwzorowanie które klei A i V razem. Dla każdej pary punktów x, y ∈ A przypisuje wektor y − x ∈ V — “o ile i w którą stronę musisz się przesunąć żeby dotrzeć z x do y”. To odwzorowanie spełnia dwa warunki:

  1. Dla każdego punktu x i każdego wektora v istnieje dokładnie jeden punkt y taki że y − x = v — zawsze możesz dotrzeć do nowego miejsca i nigdy nie wychodzisz poza ścianę.
  2. Dla trzech punktów x, y, z zachodzi (z − x) = (z − y) + (y − x) — trójkąt wektorów się zamyka, co jest po prostu zdrowym rozsądkiem geometrycznym.

Zauważ co możesz, a czego nie możesz robić w przestrzeni afinicznej:

  • ✅ Odjąć dwa punkty — dostajesz wektor
  • ✅ Dodać wektor do punktu — dostajesz nowy punkt
  • ❌ Dodać dwa punkty — to nie ma sensu geometrycznego

“Kontakt elektryczny plus okno” nie jest żadnym miejscem na ścianie.

Przestrzeń afiniczna jako trzy klocki LEGO
Przestrzeń afiniczna jako trzy klocki LEGO: zbiór punktów A, przestrzeń wektorowa V i odwzorowanie które je klei. Każdy element niezależny — razem tworzą strukturę geometryczną.


Akt III: Twój regulator PI robi geometrię afiniczną od zawsze #

Wróćmy do formuły z początku:

e(t) = x_ref − x_actual

To jest równanie które każdy inżynier sterowania widział setki razy. Błąd regulacji — różnica między wartością zadaną a rzeczywistą. Nic specjalnego.

A jednak ta formuła skrywa coś głębszego. Odejmujesz dwa punkty przestrzeni stanów silnika i dostajesz wektor. Dokładnie tak jak odejmowanie dwóch punktów na ścianie daje wektor przesunięcia. To nie jest operacja wektorowa — to jest operacja afiniczna.

Przestrzeń stanów silnika w układzie dq — prąd id, prąd iq, strumień — nie ma naturalnego zera. Punkt pracy znamionowej? Arbitralny wybór. Stan zimnego silnika przy braku obciążenia? Też arbitralny. Fizyka silnika nie wie nic o Twoim układzie współrzędnych. Moment elektromagnetyczny i strumień istnieją niezależnie od tego gdzie postawiłeś zero.

Transformacja Clarka bierze trzy prądy fazowe ia, ib, ic i mapuje je do przestrzeni αβ. Transformacja Parka obraca αβ do układu dq synchronicznego z wirującym polem. Standardowo traktujesz to jako mnożenie przez macierz — liniowe odwzorowanie między przestrzeniami wektorowymi. Poprawne, użyteczne, ale niepełne.

Bo zanim wykonałeś to mnożenie, już dokonałeś wyboru. Wybrałeś zero. Silnik trójfazowy z natury pracuje z prądami których suma ia + ib + ic = 0 — to jest więzenie fizyczne, nie układ współrzędnych. Przestrzeń stanów elektrycznych silnika jest dwuwymiarową rozmaitością osadzoną w ℝ³. Nie ma na niej wyróżnionego punktu — jest jednorodna jak ściana.

Transformacja Clarka to nic innego jak wybór konkretnej pary osi na tej rozmaitości i ogłoszenie jednego punktu zerem. Właśnie w tym momencie przestrzeń afiniczna staje się przestrzenią wektorową. Nie wcześniej.

Park idzie dalej — obraca układ αβ tak żeby podążał za wirującym polem rotora. Kąt elektryczny θ który opisuje ten obrót jest mierzony od arbitralnie wybranej osi odniesienia. Znowu arbitralne zero, tym razem kątowe.

I teraz wróćmy do początku. Twój regulator PI nigdy nie pyta “gdzie jest prąd id w absolutnym sensie”. Pyta tylko “jak daleko jest od wartości zadanej i w którą stronę”. Operuje wyłącznie na różnicach — na wektorach łączących dwa punkty przestrzeni stanów. Całkowanie błędu, różniczkowanie błędu — zawsze różnice, nigdy absolutne pozycje.

Regulator od zawsze wiedział że przestrzeń jest afiniczna. Ty dopiero teraz to widzisz.

Przestrzeń dq silnika: afiniczna z natury
Po lewej: regulator operuje wyłącznie na wektorze błędu e(t) — czystą operacją afiniczną. Po prawej: dwa różne arbitralne zera dają różne wektory pozycji, ale e(t) pozostaje niezmieniony.


Zakończenie: Geometria jest wszędzie, tylko trzeba wiedzieć gdzie patrzeć #

Przestrzeń afiniczna to dopiero pierwszy krok w dół po schodach abstrakcji.

Jeśli przestrzeń stanów silnika jest rozmaitością — a jest, bo więzenie ia + ib + ic = 0 to właśnie jej definicja — to transformacja Parka jest czymś więcej niż obrotem macierzowym. Jest działaniem grupy Liego SO(2) na tej rozmaitości. Każdy kąt elektryczny θ to element tej grupy, każdy obrót układu dq to jej działanie na przestrzeni stanów.

Brzmi abstrakcyjnie? Ale właśnie dlatego regulatory oparte na geometrii Liego są bardziej odporne na osobliwości i zmiany punktu pracy niż klasyczne PI — operują na strukturze która jest naturalna dla fizyki, nie na arbitralnie narzuconych współrzędnych.

To samo myślenie geometryczne które pozwoliło zobaczyć ścianę jako przestrzeń afiniczną prowadzi dalej — do sterowania na rozmaitościach, do Port-Hamiltonian systems, do głębokiego uczenia które rozumie geometrię danych zamiast tylko dopasowywać parametry.

Geometria różniczkowa nie jest ozdobnikiem dla zaawansowanych. Jest językiem w którym fizyka napędów elektrycznych została napisana — zanim ktokolwiek zdążył to zauważyć.