root/applications/dual/texts/pmsm_system.lyx @ 807

Revision 807, 12.3 kB (checked in by smidl, 14 years ago)

pmsm

Line 
1#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
2\lyxformat 345
3\begin_document
4\begin_header
5\textclass scrartcl
6\begin_preamble
7\newcommand\blabl{}
8\end_preamble
9\use_default_options false
10\begin_modules
11theorems-ams
12theorems-ams-extended
13\end_modules
14\language english
15\inputencoding auto
16\font_roman lmodern
17\font_sans default
18\font_typewriter default
19\font_default_family default
20\font_sc false
21\font_osf false
22\font_sf_scale 100
23\font_tt_scale 100
24
25\graphics default
26\paperfontsize default
27\spacing single
28\use_hyperref true
29\pdf_bookmarks true
30\pdf_bookmarksnumbered false
31\pdf_bookmarksopen false
32\pdf_bookmarksopenlevel 1
33\pdf_breaklinks false
34\pdf_pdfborder false
35\pdf_colorlinks false
36\pdf_backref false
37\pdf_pdfusetitle true
38\papersize default
39\use_geometry false
40\use_amsmath 1
41\use_esint 0
42\cite_engine basic
43\use_bibtopic false
44\paperorientation portrait
45\secnumdepth 3
46\tocdepth 3
47\paragraph_separation indent
48\defskip medskip
49\quotes_language english
50\papercolumns 1
51\papersides 1
52\paperpagestyle default
53\tracking_changes false
54\output_changes false
55\author ""
56\author ""
57\end_header
58
59\begin_body
60
61\begin_layout Standard
62\begin_inset FormulaMacro
63\newcommand{\isa}[1]{i_{\alpha#1}}
64{i_{\alpha#1}}
65\end_inset
66
67
68\begin_inset FormulaMacro
69\newcommand{\isb}[1]{i_{\beta#1}}
70{i_{\beta#1}}
71\end_inset
72
73
74\begin_inset FormulaMacro
75\newcommand{\Dt}{\Delta t}
76{\Delta t}
77\end_inset
78
79
80\begin_inset FormulaMacro
81\newcommand{\om}{\omega}
82{\omega}
83\end_inset
84
85
86\begin_inset FormulaMacro
87\newcommand{\th}{\vartheta}
88{\vartheta}
89\end_inset
90
91
92\begin_inset FormulaMacro
93\newcommand{\usa}[1]{u_{\alpha#1}}
94{u_{\alpha#1}}
95\end_inset
96
97
98\begin_inset FormulaMacro
99\newcommand{\usb}[1]{u_{\beta#1}}
100{u_{\beta#1}}
101\end_inset
102
103
104\end_layout
105
106\begin_layout Title
107PMSM system description
108\end_layout
109
110\begin_layout Section
111Model of PMSM Drive
112\end_layout
113
114\begin_layout Standard
115Permanent magnet synchronous machine (PMSM) drive with surface magnets on
116 the rotor is described by conventional equations of PMSM in the stationary
117 reference frame:
118\begin_inset Formula \begin{align}
119\frac{d\isa{}}{dt} & =-\frac{R_{s}}{L_{s}}\isa{}+\frac{\Psi_{PM}}{L_{s}}\omega_{me}\sin\th+\frac{\usa{}}{L_{s}},\nonumber \\
120\frac{d\isb{}}{dt} & =-\frac{R_{s}}{L_{s}}\isb{}-\frac{\Psi_{PM}}{L_{s}}\omega_{me}\cos\th+\frac{\usb{}}{L_{s}},\label{eq:simulator}\\
121\frac{d\om}{dt} & =\frac{k_{p}p_{p}^{2}\Psi_{pm}}{J}\left(\isb{}\cos(\th)-\isa{}\sin(\th)\right)-\frac{B}{J}\om-\frac{p_{p}}{J}T_{L},\nonumber \\
122\frac{d\th}{dt} & =\omega_{me}.\nonumber \end{align}
123
124\end_inset
125
126Here,
127\begin_inset Formula $\isa{}$
128\end_inset
129
130,
131\begin_inset Formula $\isb{}$
132\end_inset
133
134,
135\begin_inset Formula $\usa{}$
136\end_inset
137
138 and
139\begin_inset Formula $\usb{}$
140\end_inset
141
142 represent stator current and voltage in the stationary reference frame,
143 respectively;
144\begin_inset Formula $\om$
145\end_inset
146
147 is electrical rotor speed and
148\begin_inset Formula $\th$
149\end_inset
150
151 is electrical rotor position.
152 
153\begin_inset Formula $R_{s}$
154\end_inset
155
156 and
157\begin_inset Formula $L_{s}$
158\end_inset
159
160 is stator resistance and inductance respectively,
161\begin_inset Formula $\Psi_{pm}$
162\end_inset
163
164 is the flux of permanent magnets on the rotor,
165\begin_inset Formula $B$
166\end_inset
167
168 is friction and
169\begin_inset Formula $T_{L}$
170\end_inset
171
172 is load torque,
173\begin_inset Formula $J$
174\end_inset
175
176 is moment of inertia,
177\begin_inset Formula $p_{p}$
178\end_inset
179
180 is the number of pole pairs,
181\begin_inset Formula $k_{p}$
182\end_inset
183
184 is the Park constant.
185\end_layout
186
187\begin_layout Standard
188The sensor-less control scenario arise when sensors of the speed and position
189 (
190\begin_inset Formula $\om$
191\end_inset
192
193 and
194\begin_inset Formula $\th$
195\end_inset
196
197) are missing (from various reasons).
198 Then, the only observed variables are:
199\begin_inset Formula \begin{equation}
200y_{t}=\left[\begin{array}{c}
201\isa{}(t),\isb{}(t),\usa{}(t),\usb{}(t)\end{array}\right].\label{eq:obs}\end{equation}
202
203\end_inset
204
205Which are, however, observed only up to some precision.
206\end_layout
207
208\begin_layout Standard
209Discretization of the model (
210\begin_inset CommandInset ref
211LatexCommand ref
212reference "eq:simulator"
213
214\end_inset
215
216) was performed using Euler method with the following result:
217\begin_inset Formula \begin{align*}
218\isa{,t+1} & =(1-\frac{R_{s}}{L_{s}}\Dt)\isa{,t}+\frac{\Psi_{pm}}{L_{s}}\Dt\omega_{t}\sin\vartheta_{e,t}+\usa{,t}\frac{\Dt}{L_{s}},\\
219\isb{,t+1} & =(1-\frac{R_{s}}{L_{s}}\Dt)\isb{,t}-\frac{\Psi_{pm}}{L_{s}}\Dt\omega_{t}\cos\vartheta_{t}+\usb{,t}\frac{\Dt}{L_{s}},\\
220\om_{t+1} & =(1-\frac{B}{J}\Dt)\om_{t}+\Dt\frac{k_{p}p_{p}^{2}\Psi_{pm}}{J}\left(\isb{,t}\cos(\th_{t})-\isa{,t}\sin(\th_{t})\right)-\frac{p_{p}}{J}T_{L}\Dt,\\
221\vartheta_{t+1} & =\vartheta_{t}+\omega_{t}\Dt.\end{align*}
222
223\end_inset
224
225In this work, we consider parameters of the model known, we can make the
226 following substitutions to simplify notation,
227\begin_inset Formula $a=1-\frac{R_{s}}{L_{s}}\Dt$
228\end_inset
229
230,
231\begin_inset Formula $b=\frac{\Psi_{pm}}{L_{s}}\Dt$
232\end_inset
233
234,
235\begin_inset Formula $c=\frac{\Dt}{L_{s}}$
236\end_inset
237
238,
239\begin_inset Formula $d=1-\frac{B}{J}\Dt$
240\end_inset
241
242,
243\family roman
244\series medium
245\shape up
246\size normal
247\emph off
248\bar no
249\noun off
250\color none
251
252\begin_inset Formula $e=\Dt\frac{k_{p}p_{p}^{2}\Psi_{pm}}{J}$
253\end_inset
254
255, which results in a simplified model:
256\family default
257\series default
258\shape default
259\size default
260\emph default
261\bar default
262\noun default
263\color inherit
264 
265\begin_inset Formula \begin{align}
266\isa{,t+1} & =a\,\isa{,t}+b\omega_{t}\sin\vartheta_{t}+c\usa{,t},\nonumber \\
267\isb{,t+1} & =a\,\isb{,t}-b\omega_{t}\cos\vartheta_{t}+c\usb{,t},\label{eq:model-simple}\\
268\om_{t+1} & =d\om_{t}+e\left(\isb{,t}\cos(\th_{t})-\isa{,t}\sin(\th_{t})\right),\nonumber \\
269\vartheta_{t+1} & =\vartheta_{t}+\omega_{t}\Dt.\nonumber \end{align}
270
271\end_inset
272
273
274\end_layout
275
276\begin_layout Standard
277The above equations can be aggregated into state
278\begin_inset Formula $x_{t}=[\isa{,t},\isb{,t},\om_{t},\th_{t}]$
279\end_inset
280
281 will be denoted as
282\begin_inset Formula $x_{t+1}=g(x_{t},u_{t})$
283\end_inset
284
285.
286\end_layout
287
288\begin_layout Subsection
289Gaussian model of disturbances
290\end_layout
291
292\begin_layout Standard
293This model is motivated by the well known Kalman filter, which is optimal
294 for linear system with Gaussian noise.
295 Hence, we model all disturbances to have covariance matrices
296\begin_inset Formula $Q_{t}$
297\end_inset
298
299 and
300\begin_inset Formula $R_{t}$
301\end_inset
302
303 for the state
304\begin_inset Formula $x_{t}$
305\end_inset
306
307 and observations
308\begin_inset Formula $y_{t}$
309\end_inset
310
311 respectively.
312\begin_inset Formula \begin{align*}
313x_{t+1} & \sim\mathcal{N}(g(x_{t}),Q_{t})\\
314y_{t} & \sim\mathcal{N}([\isa{,t},\isb{,t}]',R_{t})\end{align*}
315
316\end_inset
317
318
319\end_layout
320
321\begin_layout Standard
322Under this assumptions, Bayesian estimation of the state,
323\begin_inset Formula $x_{t}$
324\end_inset
325
326, can be approximated by so called Extended Kalman filter which approximates
327 posterior density of the state by a Gaussian
328\begin_inset Formula \[
329f(x_{t}|y_{1}\ldots y_{t})=\mathcal{N}(\hat{x}_{t},P_{t}).\]
330
331\end_inset
332
333Its sufficient statistics
334\begin_inset Formula $S_{t}=\left[\hat{x}_{t},P_{t}\right]$
335\end_inset
336
337 is evaluated recursively as follows:
338\begin_inset Formula \begin{eqnarray}
339\hat{x}_{t} & = & g(\hat{x}_{t-1})-K\left(y_{t}-h(\hat{x}_{t-1})\right).\label{eq:ekf_mean}\\
340R_{y} & = & CP_{t-1}C'+R_{t},\nonumber \\
341K & = & P_{t-1}C'R_{y}^{-1},\nonumber \\
342P_{t} & = & A\left(P_{t-1}-P_{t-1}C'R_{y}^{-1}CP_{t-1}\right)A+Q_{t}.\label{eq:ekf_cov}\end{eqnarray}
343
344\end_inset
345
346where
347\begin_inset Formula $A=\frac{d}{dx_{t}}g(x_{t})$
348\end_inset
349
350,
351\begin_inset Formula $C=\frac{d}{dx_{t}}h(x_{t})$
352\end_inset
353
354,
355\begin_inset Formula $g(x_{t})$
356\end_inset
357
358 is model (
359\begin_inset CommandInset ref
360LatexCommand ref
361reference "eq:model-simple"
362
363\end_inset
364
365) and
366\begin_inset Formula $h(x_{t})$
367\end_inset
368
369 direct observation of
370\begin_inset Formula $y_{t}=[\isa{,t},\isb{,t}]$
371\end_inset
372
373, i.e.
374\begin_inset Formula \[
375A=\left[\begin{array}{cccc}
376a & 0 & b\sin\th & b\om\cos\th\\
3770 & a & -b\cos\th & b\om\sin\th\\
378-e\sin\th & e\cos\th & d & -e(\isb{}\sin\th+\isa{}\cos\th)\\
3790 & 0 & \Dt & 1\end{array}\right],\quad C=\left[\begin{array}{cccc}
3801\\
381 & 1\end{array}\right]\]
382
383\end_inset
384
385
386\end_layout
387
388\begin_layout Standard
389Covariance matrices of the system
390\begin_inset Formula $Q$
391\end_inset
392
393 and
394\begin_inset Formula $R$
395\end_inset
396
397 are supposed to be known.
398\end_layout
399
400\begin_layout Subsection
401Test system
402\end_layout
403
404\begin_layout Standard
405A real PMSM system on which the algorithms will be tested has parameters:
406\end_layout
407
408\begin_layout Standard
409\begin_inset Formula \begin{eqnarray*}
410R_{s} & = & 0.28;\\
411L_{s} & = & 0.003465;\\
412\Psi_{pm} & = & 0.1989;\\
413k_{p} & = & 1.5\\
414p & = & 4.0;\\
415J & = & 0.04;\\
416\Delta t & = & 0.000125\end{eqnarray*}
417
418\end_inset
419
420which yields
421\begin_inset Formula \begin{eqnarray*}
422a & = & 0.9898\\
423b & = & 0.0072\\
424c & = & 0.0361\\
425d & = & 1\\
426e & = & 0.0149\end{eqnarray*}
427
428\end_inset
429
430The covaraince matrices
431\begin_inset Formula $Q$
432\end_inset
433
434 and
435\begin_inset Formula $R$
436\end_inset
437
438 are assumed to be known.
439 For the initial tests, we can use the following values:
440\end_layout
441
442\begin_layout Standard
443\begin_inset Formula \begin{eqnarray*}
444Q & = & \mathrm{diag}(0.0013,0.0013,5e-6,1e-10),\\
445R & = & \mathrm{diag}(0.0006,0.0006).\end{eqnarray*}
446
447\end_inset
448
449
450\end_layout
451
452\begin_layout Standard
453Limits:
454\begin_inset Formula \begin{align*}
455u_{\alpha,max} & =50V, & u_{\alpha,min} & =-50V,\\
456u_{\beta,max} & =50V. & u_{\beta,min} & =-50V,\end{align*}
457
458\end_inset
459
460
461\end_layout
462
463\begin_layout Standard
464Perhaps better:
465\begin_inset Formula \[
466u_{\alpha}^{2}+u_{\beta}^{2}<100^{2}.\]
467
468\end_inset
469
470
471\end_layout
472
473\begin_layout Section
474Control
475\end_layout
476
477\begin_layout Standard
478The task is to reach predefined speed
479\begin_inset Formula $\overline{\omega}_{t}$
480\end_inset
481
482.
483\end_layout
484
485\begin_layout Standard
486For simplicity, we will assume additive loss function:
487\begin_inset Formula \[
488l(x_{t},u_{t})=(\omega_{t}-\overline{\omega}_{t})^{2}+\psi(\usa{,t}^{2}+\usb{,t}^{2}).\]
489
490\end_inset
491
492Here,
493\begin_inset Formula $\psi$
494\end_inset
495
496 is the chosen penalization of the inputs, in this case
497\begin_inset Formula $\psi=0$
498\end_inset
499
500.
501 
502\end_layout
503
504\begin_layout Standard
505Following the standard dynamic programming approach, optimization of the
506 loss function can be done recursively, as follows:
507\begin_inset Formula \[
508V(x_{t-1},u_{t-1})=\arg\min_{u_{t}}\mathsf{E}_{f(x_{t},y_{t}|x_{t-1})}\left\{ l(x_{t},u_{t})+V(x_{t},u_{t})\right\} ,\]
509
510\end_inset
511
512where
513\begin_inset Formula $V(x_{t},u_{t})$
514\end_inset
515
516 is the Bellman function.
517 Since the model evolution is stochastic, we can reformulate it in terms
518 of sufficient statistics,
519\begin_inset Formula $S$
520\end_inset
521
522 as follows:
523\begin_inset Formula \[
524V(S_{t-1})=\min_{u_{t}}\mathsf{E}_{f(x_{t},y_{t}|x_{t-1})}\left\{ l(x_{t},u_{t})+V(S_{t})\right\} .\]
525
526\end_inset
527
528
529\end_layout
530
531\begin_layout Standard
532Representation of the Bellman function depends on chosen approximation.
533\end_layout
534
535\begin_layout Subsection
536Test Scenarios
537\end_layout
538
539\begin_layout Standard
540With almost full information, design of the control strategy should be almost
541 trivial:
542\begin_inset Formula \begin{eqnarray*}
543\hat{\isa{}} & = & 0,\,\hat{\isb{}}=0,\hat{\omega}=1,\th=\frac{\pi}{2},\\
544P_{t} & = & \mathrm{diag}([0.01,0.01,0.01,0.01]).\end{eqnarray*}
545
546\end_inset
547
548
549\end_layout
550
551\begin_layout Standard
552The difficulty arise with growing initial covariance matrix:
553\begin_inset Formula \begin{eqnarray*}
554\hat{\isa{}} & = & 0,\,\hat{\isb{}}=0,\hat{\omega}=1,\th=\frac{\pi}{2},\\
555P_{t} & = & \mathrm{diag}([0.01,0.01,0.01,1]).\end{eqnarray*}
556
557\end_inset
558
559
560\end_layout
561
562\begin_layout Standard
563Or even worse:
564\begin_inset Formula \begin{eqnarray*}
565\hat{\isa{}} & = & 0,\,\hat{\isb{}}=0,\hat{\omega}=1,\th=\frac{\pi}{2},\\
566P_{t} & = & \mathrm{diag}([0.01,0.01,0.01,10]).\end{eqnarray*}
567
568\end_inset
569
570
571\end_layout
572
573\begin_layout Standard
574The requested value
575\begin_inset Formula $\overline{\omega}_{t}=1.0015.$
576\end_inset
577
578
579\end_layout
580
581\begin_layout Conjecture
582It is sufficient to consider hyper-state
583\begin_inset Formula $H=[\hat{i}_{\alpha},\hat{i}_{\beta},\hat{\omega},\hat{\vartheta},P(3,3),P(4,4)]$
584\end_inset
585
586.
587\end_layout
588
589\begin_layout Conjecture
590\begin_inset CommandInset bibtex
591LatexCommand bibtex
592bibfiles "bibtex/vs,bibtex/vs-world,bibtex/world_classics,bibtex/world,new_bib_PS"
593options "plain"
594
595\end_inset
596
597
598\end_layout
599
600\end_body
601\end_document
Note: See TracBrowser for help on using the browser.