[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(ae1e18a90290ed2d1276c8c1978b798b.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/ae1e18a90290ed2d1276c8c1978b798b.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/ae1e18a90290ed2d1276c8c1978b798b.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/ae1e18a90290ed2d1276c8c1978b798b.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(9ffcaa459cdee272c9d90ea901efb136.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/9ffcaa459cdee272c9d90ea901efb136.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/9ffcaa459cdee272c9d90ea901efb136.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/9ffcaa459cdee272c9d90ea901efb136.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(9ffcaa459cdee272c9d90ea901efb136.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/9ffcaa459cdee272c9d90ea901efb136.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/9ffcaa459cdee272c9d90ea901efb136.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/9ffcaa459cdee272c9d90ea901efb136.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(9ffcaa459cdee272c9d90ea901efb136.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/9ffcaa459cdee272c9d90ea901efb136.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/9ffcaa459cdee272c9d90ea901efb136.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/9ffcaa459cdee272c9d90ea901efb136.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(9ffcaa459cdee272c9d90ea901efb136.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/9ffcaa459cdee272c9d90ea901efb136.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/9ffcaa459cdee272c9d90ea901efb136.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/9ffcaa459cdee272c9d90ea901efb136.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 278: copy(6fb663ba734ce58c551a3ae175c38f33.png): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 298: unlink(/6fb663ba734ce58c551a3ae175c38f33.dvi): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 299: unlink(/6fb663ba734ce58c551a3ae175c38f33.ps): No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/ey/web/forum/latexrender/class.latexrender.php on line 300: unlink(/6fb663ba734ce58c551a3ae175c38f33.png): No such file or directory
[phpBB Debug] PHP Warning: in file /generate_feed.php on line 295: Cannot modify header information - headers already sent by (output started at /includes/functions.php:3768)
Latest posts from topic “Inverter controllo vettoriale e scalare” Latest posts from topic “Inverter controllo vettoriale e scalare” on “ElectroYou”. 2023-10-10T12:25:09Z https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141 Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959510 SandroCalligaro 2023-12-05T22:56:18Z 2023-12-05T22:56:18Z
[quote="EcoTan"]Intanto molti ringraziamenti.
Con un bel po' di ritardo, sto cercando di tener fede all'impegno che mi ero preso con Foto UtenteIho. :-)

[quote="EcoTan"]Sbaglio o eviti di usare il termine BLDC?Sì, quell'espressione ("Brushless-DC") non mi piace, principalmente perché confonde due cose, tipo di motore e controllo.
L'effetto di questa confusione lo si può vedere, ad esempio, qui:
https://www.electroyou.it/vis_resource.php?section=DomRisp&id=732

Sono quasi certo di aver già parlato di questa cosa anche qui su Electroyou, ma non trovi il thread.
O forse era questo:
https://www.electroyou.it/forum/viewtopic.php?f=8&t=74977
Qui ne avevamo discusso:
https://www.plcforum.it/f/topic/231147-frequenza-inverter/page/3/

Sostanzialmente, i motori sincroni a magneti permanenti hanno una back-EMF (back-Electro Motive Froce o tensione indotta o forza contro-elettromotrice, sopra non l'ho scritto, ora che ci penso!) che ha una forte componente fondamentale e delle armoniche (solitamente dispari) più o meno pronunciate.

Il controllo "brushless DC" idealmente si applicherebbe a motori con back-EMF trapezoidale (quindi con una terza armonica molto forte), caso nel quale si potrebbe teoricamente ottenere una coppia costante. Questo a patto di far variare la corrente ad onda quadra, cioè positiva per 1/3 di periodo, nulla per 1/6, negativa per 1/3, nulla per 1/6. Quindi, oltre al fatto che è praticamente impossibile avere una forma d'onda della tensione indotta esattamente trapezoidale (servirebbero infinite armoniche), sappiamo che far variare la corrente (in un circuito anche solo leggermente induttivo) ad onda quadra è impossibile (richiederebbe tensione infinita nelle transizioni).
Questo fa sì che, nella realtà, la coppia non sia nemmeno lontanamente costante.
La cosa buona di questo tipo di controllo è che è semplice da realizzare, perché basta conoscere la posizione anche con risoluzione molto bassa. Spesso il controllo è basato su sensori Hall che "sentono" la presenza del magnete o sulla misura diretta della tensione indotta.
In molti casi, invece di imporre una corrente costante a tratti, si impone addirittura semplicemente una tensione costante a tratti (quindi si è ancora più lontani dalla forma d'onda di corrente ideale).

Gli stessi motori con back-EMF non sinusoidale (al limite, anche trapezoidale) potrebbero essere controllati imponendo correnti sinusoidali (cioè costanti negli assi d e q di cui parlavo sopra, ottenendo una coppia a regime che contiene delle oscillazioni, in funzione proprio della distorsione della back-EMF.
Per contro, un motore con back-EMF quasi perfettamente sinusoidale si potrà controllare perché produca a regime una coppia quasi esattamente costante. Il vantaggio principale di avere back-EMF quasi sinusoidale è che, a differenza dell'onda quadra, una sinusoide è teoricamente possibile da ottenere anche su carico induttivo.

La domanda, quindi, è: sono i motori ad essere "brushless AC" vs. "brushless DC", oppure sono i controllori a dover essere catalogati in questo modo?


EDIT: aggiunto un link.
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959508 SandroCalligaro 2023-12-05T22:28:24Z 2023-12-05T22:28:24Z
[quote="IsidoroKZ"]Foto UtenteSandroCalligaro, complimenti! Adesso devi trasformare questi post in un articolo :D
Eh, ma la serie non è ancora finita! :D

Scherzi a parte, grazie. Detto da te, che spesso dedichi tempo a spiegare le cose in modo efficace, lo apprezzo particolaremente.
Devo dire che ho solo tradotto ed esteso delle note mie che già avevo. Prima o poi, conto di condensare tutto in una dispensa quasi decente...
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959479 IsidoroKZ 2023-12-05T13:45:34Z 2023-12-05T13:45:34Z
Foto UtenteSandroCalligaro, complimenti! Adesso devi trasformare questi post in un articolo :D
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959470 EcoTan 2023-12-05T11:37:14Z 2023-12-05T11:37:14Z
Intanto molti ringraziamenti. Sbaglio o eviti di usare il termine BLDC?
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959452 SandroCalligaro 2023-12-05T00:42:14Z 2023-12-05T00:42:14Z
Modello nel sistema di riferimento di rotore
Il sistema di riferimento di rotore è una coppia di assi ortogonali (d e q), solidali con il rotore. In particolare, l’asse d è allineato con l’asse Nord del rotore. Per far passare un vettore dal riferimento di statore a quello di rotore occorre ruotare indietro il vettore di un angolo pari alla posizione del rotore.
rotore_dq.png
(Rappresentazione del motore in coordinate di rotore.)

Un qualunque vettore di ampiezza costante, che si muove in modo sincrono rispetto al rotore, nel riferimento dq diventa costante. In pratica, è come se guardassimo una giostra che ruota, standoci seduti sopra: qualunque punto della giostra sarà fermo rispetto a noi.
Ad esempio, grazie alla scelta che abbiamo fatto nell’impostare gli assi d e q (dove d è allineato con l’asse del magnete), il flusso del magnete permanente ha solo componente d:
\lambda_{PM_d} = \Lambda_{PM}
\lambda_{PM_q} = 0

La back-EMF sarà ovviamente ancora 90° in avanti rispetto al flusso del magnete, e avrà ampiezza pari a quella del vettore in \alpha \beta, ma la sua componente d sarà nulla:
e_d = 0
e_q = \omega_{me} \Lambda_{PM}

L’equazione che descrive il comportamento del circuito in coordinate di rotore si può ricavare da quella di statore, con l’accortezza di sostituire la derivata delle correnti i_\alpha, i_\beta con le derivate di i_d, i_q più delle tensioni che vengono chiamate “di accoppiamento” (non spiegherò il motivo esatto, ma per mantenere la coerenza “fisica” occorre fare così, in ogni caso non è cruciale per arrivare all’espressione della coppia):
u_d = R_s i_d + L_s \frac{d i_d}{dt} - \omega{me} L_s i_q + e_d
u_q = R_s i_q + L_s \frac{d i_q}{dt} + \omega{me} L_s i_d + e_q

La potenza assorbita dai generatori che rappresentano la back-EMF (e_d, e_q) corrisponde alla potenza elettrica convertita in potenza meccanica. Dalla potenza meccanica è semplice ricavare la coppia (basta dividere per la velocità meccanica).
Quindi, se siamo in grado di calcolare la potenza elettrica, saremo in grado anche di calcolare la coppia in funzione di grandezze elettriche (in particolare, la corrente).
La potenza assorbita dalla back-EMF è (ricordando che e_d=0)
[unparseable or potentially dangerous latex formula]
Il fattore 3/2 serve in pratica a tener conto del fatto che stiamo rappresentando un circuito a 3 fasi con uno a 2 “fasi equivalenti”.

Come detto, la potenza calcolata corrisponde alla potenza meccanica prodotta, la quale non è altro che il prodotto di coppia per velocità meccanica:
p_{BEMF} = p_{mech} = T_e \omega_m
Da qui, come dicevamo, possiamo quindi dividere per la potenza meccanica e ricavare la coppia:
T_e = \frac{p_{mech}}{\omega_m} =  \frac{3}{2} \frac{\omega_{me}}{\omega_m} \Lambda_{PM} i_q =  \frac{3}{2} P_p \Lambda_{PM} i_q

Quindi la coppia è proporzionale alla sola componente di corrente i_q (che è la componente di corrente in fase con la back-EMF e quindi produce potenza attiva che si traduce in meccanica).
Essere in grado di regolarla significa poter controllare con precisione la coppia.
In questo caso (SM-PMSM), ci interessa avere una i_d nulla, perché altrimenti andremmo ad aggiungere perdite inutili e a “mangiare” una parte della corrente massima che il sistema di alimentazione (l’inverter) può erogare.
Nelle prossime puntate (sperabilmente :D), vedremo che, nel caso dell’asincrono, invece, la componente i_d dovrà essere non nulla, per creare e mantenere “vivo” il flusso di rotore.
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959450 SandroCalligaro 2023-12-05T00:02:41Z 2023-12-05T00:02:41Z
Modello nel riferimento stazionario (o di statore)
Se applichiamo la trasformazione di Clarke, non stiamo facendo altro che calcolare delle somme pesate delle 3 equazioni di partenza. Per la scelta dei coefficienti che abbiamo fatto (quelli della trasformazione di Clarke), le equazioni mantengono la stessa forma. In particolare, la componente \alpha di qualunque grandezza è uguale a quella a del sistema trifase, mentre quella \beta è la somma pesata delle componenti b e c.
Il flusso del magnete permanente diventa
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]
Abbiamo visto che questo, nel sistema di riferimento stazionario \alpha \beta corrisponde ad avere un vettore di ampiezza costante (\Lambda_{PM}) e fase pari a \theta_{me}, che è la posizione meccanico-elettrica del rotore. Quindi il vettore che rappresenta il flusso del magnete è allineato con l’asse del Nord magnetico e ha ampiezza fissata (proprio perché il magnete è permanente).
Il disegno qui sotto rappresenta la “macchina equivalente” secondo la rappresentazione trasformata di Clarke.
rotore_alpha-beta.png
(Rappresentazione del motore in coordinate di statore.)

circuito_alpha-beta.png
(Circuiti equivalenti in coordinate di statore.)

L’equazione di maglia per questi due circuiti può essere scritta come
u_\alpha = R_s i_\alpha + L \frac{d i_\alpha}{dt} + e_\alpha
u_\beta  = R_s i_\beta  + L \frac{d i_\beta}{dt}   + e_\beta

La versione trasformata della back-EMF è
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]
A regime (cioè a velocità \omega_{me} costante), le due componenti della forza contro-elettromotrice (e_α,e_β) sono sinusoidali, di ampiezza costante e frequenza che è un multiplo intero della frequenza di rotazione meccanica. Da notare che la loro ampiezza è proporzionale alla velocità, e che la costante di proporzionalità è \Lambda_{PM} (che è l’ampiezza del flusso del magnete permanente).
Come per il flusso, anche per la back-EMF le due componenti corrispondono ad un vettore, che ruota solidale con il rotore (ma 90° in avanti rispetto a questo) e ha ampiezza \omega_{me} \Lambda_{PM}.
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959449 SandroCalligaro 2023-12-04T23:40:21Z 2023-12-04T23:40:21Z
Provo a continuare con una nuova puntata sul FOC...
Con calma arriverò al controllo vettoriale dell'asincrono.

Motore “brushless AC” trifase (sincrono a magneti permanenti superficiali, SM-PMSM)

Il motore sincrono a magneti permanenti superficiali (commercialmente chiamato “brushless AC”, è il più semplice da controllare in controllo vettoriale ad orientamento di campo (FOC), perché è possibile stabilire una relazione di linearità tra una grandezza misurabile e controllabile (un derivato delle correnti di statore) e la coppia prodotta. Inoltre, con questa tipologia di motori si può ottenere un rapporto coppia/inerzia molto alto (e quindi accelerazioni molto elevate). Per la precisione e dinamica veloce, è utilizzato in applicazioni servo.
Il motore ha uno statore trifase (più o meno classico, a seconda dei casi), in ferro, con le sue cave, nelle quali sono alloggiati i cavi percorsi da corrente. Il rotore, oltre ad una parte interna in ferro, sulla superficie ha dei magneti (in numero ovviamente pari), disposti in modo da avere il polo rivolto verso l’esterno alternativamente Nord, Sud, Nord, ….
Ma perché parlo di questo motore? Per la prima cosa che ho detto, cioè la semplicità del suo modello e del suo controllo. Per questo, siamo abituati a partire da questa macchina, per spiegare il controllo delle macchine trifase.
rotore_reale.png
(Sezione di un SM-PMSM, da Sensorless Control of Permanent Magnet Motors, Yaskawa.)

Mentre, nella realtà, lo spaccato di un SM-PMSM assomiglia molto al disegno qui sopra, lo modelliamo in modo semplificato, come nella figura qui sotto. Le 3 fasi sono rappresentate da 3 avvolgimenti, i cui assi sono a 120° tra loro. Il rotore ha un solo magnete (quindi 2 poli, uno Nord ed uno Sud).

Sulla base del disegno schematico (sia quello della prima che della seconda figura), penso sia abbastanza chiaro che, se ci mettiamo al traferro in una posizione dello statore e facciamo ruotare il rotore, vedremo passare un polo Nord, un polo Sud, ecc. Quindi, un avvolgimento di statore affacciato verso l’interno concatenerà un flusso variabile in funzione della posizione del rotore. Grazie alla configurazione di rotore e (soprattutto) statore, questa variazione ha forma sinusoidale, o meglio chi lo progetta cerca di ottenere un flusso (dovuto al magnete e concatenato da ciascuna fase di statore) che dipenda in modo sinusoidale dalla posizione del rotore.
rotore_abc.png
(Rappresentazione schematica del motore.)

Flusso dovuto al magnete
Sulla base del disegno schematico (sia quello della prima che della seconda figura), penso sia abbastanza chiaro che, se ci mettiamo al traferro in una posizione dello statore e facciamo ruotare il rotore, vedremo passare un polo Nord, un polo Sud, ecc. Quindi, un avvolgimento di statore affacciato verso l’interno concatenerà un flusso variabile in funzione della posizione del rotore. Grazie alla configurazione di rotore e (soprattutto) statore, questa variazione ha forma sinusoidale, o meglio chi lo progetta cerca di ottenere un flusso (dovuto al magnete e concatenato da ciascuna fase di statore) che dipenda in modo sinusoidale dalla posizione del rotore.

Se non applichiamo correnti (cioè lasciamo le fasi a vuoto), gli avvolgimenti concateneranno solamente il flusso dovuto al magnete permanente. Siccome il magnete è solidale con il rotore, il suo campo (che non varia in termini di “ampiezza” o “forza”) investe gli avvolgimenti in modo positivo nella direzione dell’asse Nord magnetico e negativo nella direzione del Sud magnetico. Il risultato è che il flusso generato dal magnete permanente (che è un vettore di ampiezza costante \Lambda_{PM}, si muove col rotore) viene “proiettato” nella direzione di ciascun avvolgimento, per trovare il flusso concatenato da quella fase:
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]

La posizione viene misurata a partire dall’asse della fase a, per cui le proiezioni del flusso sugli altri assi sono in ritardo (se il rotore ruota in direzione positiva, cioè senso antiorario nel disegno, il massimo del flusso arriva prima sulla fase a, dopo 120° su b e dopo 240° su c).

La posizione meccanico-elettrica \theta_{me} è un multiplo intero della posizione meccanica: \theta_{me} = P_p \theta_m. Il fattore intero P_p è il numero di coppie polari. Nel caso del primo disegno, con 4 magneti sul rotore (disposti in modo alternato Nord-Sud), abbiamo 4 poli e quindi 2 coppie polari, mentre nel caso del disegno semplificato c’era una sola coppia polare.
Se si immagina di far fare al rotore un singolo giro meccanico completo e si “guarda” la situazione magnetica vista da un avvolgimento di statore, il numero di coppie polari dice quante volte l’avvolgimento vede ripetersi lo stesso andamento.
Si definisce anche la velocità meccanico-elettrica, multipla di quella meccanica:
\omega_{me} = P_p \omega_m

Nel nostro modello ideale la cosa è intuitivamente semplice. Nella realtà, le cose sono un po’ più complicate (in particolare, sono gli avvolgimenti ad essere distribuiti in modo sinusoidale ed il campo al traferro è o positivo o negativo), ma il risultato complessivo è ben approssimato dal modello che ho descritto (o meglio, i progettisti della macchina fanno il possibile per rendere la realtà vicina all’ideale).

circuito_abc.png
(Circuiti equivalenti di fase.)

Siccome il motore è collegato a stella, il suo circuito equivalente può essere visto come un insieme di 3 circuiti indipendenti, uno per fase, che sono legati solamente dall’influenza del flusso di rotore (che è unico, ma si proietta in modo diverso sui 3 avvolgimenti).
L’equazione di maglia (cioè il modello elettrico) del SM-PMSM (ma anche di altri motori, …) è
u_a = R_s i_a + L_s \frac{d i_a}{dt} + e_a
u_b = R_s i_b + L_s \frac{d i_b}{dt} + e_b
u_c = R_s i_c + L_s \frac{d i_c}{dt} + e_c

Si tratta del classico “R-L-E”, cioè di un circuito resistivo-induttivo con in serie un generatore di forza contro-elettromotrice” e (back-EMF).
Per fare un parallelo, se prendessimo una sola riga delle due, avremmo il modello del circuito di armatura di un motore DC, solo che in quel caso la forza contro-elettromotrice a regime (cioè a velocità costante) sarebbe costante.

Anche nel caso del SM-PMSM, la e rappresenta la tensione indotta dovuta al movimento del rotore. In questo caso, però, il flusso del magnete, quando varia la sua posizione rispetto ad un certo avvolgimento, “proietta” su questo un flusso che varia sinusoidalmente in funzione della posizione stessa. Pertanto, anche la sua derivata avrà dipendenza sinusoidale rispetto alla posizione, ma la sua fase sarà 90° in anticipo rispetto a quella del flusso concatenato:
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]
[unparseable or potentially dangerous latex formula]

A regime (cioè a velocità \omega_{me} costante), la forza contro-elettromotrice (e_a, e_b, e_c) è una sinusoide di ampiezza costante e frequenza che è un multiplo intero della frequenza di rotazione meccanica (nel nostro caso semplificato, dove P_p = 1, la velocità è uguale a quella meccanica). Da notare che l’ampiezza delle back-EMF è proporzionale alla velocità, e che la costante di proporzionalità è \Lambda_{PM} (che è l’ampiezza del flusso del magnete permanente).
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959310 Iho 2023-12-02T15:48:45Z 2023-12-02T15:48:45Z
Grazie della risposta. Leggerò con calma.
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p959308 SandroCalligaro 2023-12-02T15:16:12Z 2023-12-02T15:16:12Z
Ciao Foto UtenteIho, mi scuso per il lunghissimo ritardo.
Alla fine, come spesso succede, il meglio è nemico del bene: per cercare di essere esaustivo, non sono riuscito a fare quello che speravo, cioè spiegare come funziona il FOC.

Dalle tue considerazioni, intuisco che potresti avere confusione tra il modo in cui funziona il controllo scalare (V/f) e quello in cui funziona il controllo vettoriale.
Nel vettoriale, l'approccio è molto simile a quello del controllo (ben fatto) di un motore in DC.
Immagina un motore DC a magneti permanenti. La coppia è approssimativamente proporzionale alla corrente di armatura.
Guardano la figura qui sotto, un regolatore di velocità (tipicamente PI, proporzionale+integrale) "decide", in base alla discrepanza tra velocità desiderata e velocità misurata, quanta coppia (corrente di armatura) serve, dopo di che un regolatore di corrente si occupa di applicare quella corrente ("decidendo" quanta tensione serve e chiedendo al convertitore di applicarla all'armatura). Per inciso, il convertitore applica la tensione come tensione media nel periodo di PWM, cioè V_a = V_{DC} \delta_a, dove V_dc è la tensione di alimentazione del convertitore e \delta_a è il duty-cycle dell'onda quadra (quindi è tra 0 e 1 per tensioni positive, oppure tra -1 e 0 se si vuole imporre tensione negativa, con un ponte intero).

Quindi, nel caso del motore DC, guardando la cosa "ad alto livello", è grazie alla proporzionalità tra corrente di armatura e coppia (e grazie al fatto che "qualcuno", cioè l'anello di corrente, fa scorrere la corrente desiderata), che si è in grado di controllare con precisione la velocità. Il presupposto è quello di avere a disposizione, ovviamente, anche una "buona" misura (feedback) della velocità.

Anche nel caso di altre macchine elettriche (ma anche se si trattasse di una macchina idraulica, per esempio), se esiste una variabile fisica proporzionale (o approssimativamente proporzionale) alla coppia, e noi siamo in grado di controllarla "bene" (cioè possiamo imporre un valore istante per istante, e questo viene inseguito con poco ritardo), allora possiamo controllare "bene" la velocità.
Tra l'altro, se siamo in grado di controllare "bene" la velocità, saremo in grado di controllare "bene" anche la posizione (vedi link sotto l'immagine, ma non voglio divagare), a patto di avere la misura della posizione stessa.
speed_ctrl.png
(immagine presa da https://www.motioncontroltips.com/faq-servo-motor-current-velocity-position-loops-bandwidths/ e poi modificata)

Quindi, le considerazioni che hai fatto nei tuoi post sopra, dove cercavi di capire come funziona il FOC basandoti sul fatto che il flusso fosse costante e si seguissero le curve, secondo me sono un po' fuorvianti. Se vuoi capire il FOC, ti conviene, per un attimo, dimenticare il controllo scalare.
Solo a regime, i punti di lavoro sono gli stessi tra V/f e FOC (per forza di cose, visto che la macchina controllata è la stessa), a patto che il flusso sia effettivamente mantenuto uguale nei due casi.
Re: Inverter controllo vettoriale e scalare https://www.electroyou.it/forum/viewtopic.php?f=8&t=89141#p955935 Iho 2023-10-10T12:25:09Z 2023-10-10T12:25:09Z
Ho letto e riletto più volte questo articolo:
https://www.switchcraft.org/learning/20 ... or-dummies
davvero molto interessante.
Ora però sto cercando di comporre un po' “i pezzi del puzzle”.
Cito testualmente:

“The VSD is controlling the motor by applying the voltage vector relative to the rotor flux vector. If we imagine the machine as a clock, one can pretend that the rotor flux is pointing at the 1 o’clock position. The VSD then has to apply a voltage vector at 12 o’clock to set up a magnetic field in the stator to “chase” the rotor around. (In practical drives, the stator vector is normally positioned 90° ahead or behind the rotor vector as this gives maximum amount of torque per ampere)”

Ora, tutta la trattazione sembra puntare su un obiettivo, trovare modulo e posizione del rotor flux vector e posizionarlo a 90° rispetto al magnetic field in the stator per avere coppia massima al minor dispendio di corrente.

Per quanto riguarda la posizione del rotor flux vector, nella trattazione si dice che, trascurando in prima approssimazione gli indebolimenti di campo, la si può ricavare esaminando un altro vettore, il cui modulo è la tensione indotta dal rotore sui parametri del circuito equivalente del motore (resistenza statore/rotore e induttanza magnetizzante), e la cui direzione è la stessa di questo vettore tensione.
Per trovare il valore della tensione posso immaginare che l’inverter esegua delle misurazioni sul circuito equivalente della macchina ma per trovare la direzione? Cosa fa?

Nella spiegazione si parla inoltre di un voltage vector per il rotore (voltage vector relative to the rotor flux vector.) e di un voltage vector per lo statore (apply a voltage vector at 12 o’clock to set up a magnetic field in the stator to “chase” the rotor around.)
Ma se il modulo del rotor voltage vector lo trovo con i parametri del circuito equivalente, come trovo il modulo dello stator voltage vector?E la direzione?

Altra cosa:
Ho capito che le tecniche di riduzione di Park e Clark sono per usate per rappresentare nello spazio, in maniera semplificata, un vettore risultante rotante (che dovrebbe essere quello nero nelle tre gif animate).
Non ho capito però su quale vettore tensione le applica, statore o rotore?

Perché prima si dice:

1. The above routine is being repeated over and over again very quickly:
2. Measure current and voltages
3. Estimate rotor position based on above measurements and the voltage and/or current model.
4. Transform the measured values into reactive/active part in a DC-frame (Clarke/park-transformation)
5. Calculate which position to apply stator voltage vector (90° from rotor)
6. Apply voltage vectors (taken into account that the rotor position have changed since step 1).
7. Start over


Ma al punto 4 non si capisce su quali misurazioni le esegue.