Controlli Digitali Controlli Digitali
Laurea Magistrale in Ingegneria Meccatronica Laurea Magistrale in Ingegneria Meccatronica
CASO
CASO DI
DI STUDIO:
STUDIO:
CONTROLLO DELLA TESTINA
CONTROLLO DELLA TESTINA DI
DI
LETTURA/SCRITTURA
LETTURA/SCRITTURA DI
DI UN HARD DISK
UN HARD DISK
Cristian Secchi Tel. 0522 522235 e-mail: secchi.cristian@unimore.it
Il sistema
Il sistema
•
La testina deve posizionarsi sul solco (track) corretto del disco per leggere o scrivere un dato•
Il posizionamento della testina deve essere molto testina deve essere molto accurato vista la densità dei solchi sul disco•
Più è veloce la testina a posizionarsi, più veloce è il disco a leggere/scrivere datiModello del Sistema
Modello del Sistema
Ω Piatto del disco motore
del disco
La posizione della testina è determinata da θ Per muovere l’asta è necessario applicare una coppia τ. 1 θ Testina di lettura e scrittura Attuatore della
t ti ( i Le dinamiche che influenzano la testina sono: L’uscita è θ mentre l’ingresso è τ
PID-- 3 Cristian Secchi
testina (voice
coil actuator) Le dinamiche che influenzano la testina sono:- L’inerzia (J) dell’asta che la muove
- L’attrito viscoso (B) dovuto ai cuscinetti - Il richiamo elastico (K) a cui è soggetto l’asta
Modello del Sistema
Modello del Sistema
Legge di Newton
τ
θ
θ
θ
+
+
=
K
dt
d
B
dt
d
J
2 2 J=0.01 kgm2 B=0.004 Nms/rad K=10 Nm/rad Funzione di trasferimento MatlabK
Bs
Js
s
T
s
s
G
+
+
=
Θ
=
21
)
(
)
(
)
(
10
004
.
0
01
.
0
1
)
(
2+
+
=
s
s
s
G
>>num=1;>>den=[0.01, 0.004,10]; >>G=tf(num,den);Specifiche di sistema
Specifiche di sistema
•
Il posizionamento della testina deve essere molto accurato vista la densità dei solchi sul disco•
Più è veloce la testina a posizionarsi, più veloce è il disco a leggere/scrivere dati ep=0 Ta<0.2 s S%=0 Specifiche di controllo PID-- 5•
La specifica sulla massima sovraelongazione percentuale si deduce da ragioni pratiche (meno si muove il disco, minore è l’energiaconsumata)
Cristian Secchi
Comportamento del sistema in catena aperta
Comportamento del sistema in catena aperta
openloop.mdl >>sim('openloop',20); >>figure; >>plot(y_openloop.time,y_openloop.signals.values); >>grid on; Matlab
>>print -djpeg yopenloop.jpg >>figure;
>>plot(u_openloop.time,u_openloop.signals.values); >>grid on;
>> axis([0,20,0,1.5]);
Comportamento del sistema in catena aperta
Comportamento del sistema in catena aperta
•
L’andamento della posizione del sistema in risposta a un ingresso a gradino è:PID-- 7
•
Vogliamo progettare un controllore digitale tale che il sistema controllato soddisfi le specifiche di controllo•
Costruiremo il controllore mediante il metodo del luogo delle radiciCristian Secchi
Scelta del periodo di campionamento
Scelta del periodo di campionamento
ZOH G(s) C(z) + -r(k) e(k) y(t) y(k) u(k) u(t)
•
Se si progetta il controllore in modo che il sistema chiuso inretroazione sia un sistema del secondo ordine (eventualmente a poli dominanti) con Ta=0.05 e S%=0: T 3 3 60 1 ≥ δ n a T
δω
= S%=0⇒δ
≥1 ω =δ = δ a n T ωn≤60 60 = MAX n ω ωs =10⋅60 0.01 600 2 ≈ = π TProgetto del Controllore
Progetto del Controllore
ZOH G(s)
C(z) +
-r(k) e(k) u(k) u(t) y(k)
HG(z)
•
Determino HG(z) e progetto il controllore utilizzando rltool>>Ts=0.01; Matlab PID-- 9 Cristian Secchi >>Ts 0.01; >>HG=c2d(G,Ts,'zoh'); >>rltoold(HG);
Progetto del Controllore
Progetto del Controllore
•
Un possibile controllore è3
.
0
7
.
0
996
.
0
897
.
1
8249
.
65
)
(
2 2−
−
+
−
=
z
z
z
z
z
C
•
Prima di poter usare il controllore occorre fare una verifica simulativa delle prestazioni: closedloop.mdl >>K=65.8249; >>numc=K*poly([0.94852+i*0.3104,0.948 52-i*0.3104]); >>denc=poly([1,-0.3]); >>sim('closedloop',0.2); Matlab ( p , ) >>figure >>plot(y.time,y.signals.values); >>hold >>plot(r.time,r.signals.values,'r'); >>grid onProgetto del Controllore
Progetto del Controllore
PID-- 11 Cristian Secchi
Ingegnerizzazione dell’algoritmo
Ingegnerizzazione dell’algoritmo
•
Una volta scelta la legge di controllo, occorre scegliere il sensore necessario per retroazionare l’uscita e l’attuatore per implementare l’azione di controllo•
Occorrerà poi fare la messa in scala tecnologica dell’algoritmo di controllo•
Infine sarà necessario effettuare la messa in scala aritmetica dell’algoritmo di controlloIngegnerizzazione dell’algoritmo
Ingegnerizzazione dell’algoritmo
C(z) D/A C A G(s) -Sp Catena di attuazione S A/D C Calcolatore Catena di acquisizione PID-- 13 Cristian Secchi Catena di acquisizioneIl setpoint è fornito dal micro direttamente in forma digitale
Scelta dell’attuatore
Scelta dell’attuatore
•
IVoice coil actuators hanno sostituito i motori stepper per la movimentazione della testina•
Sono altrettanto economici•
più robusti alle variazioni di temperatura iù l i•
più veloci•
Principio di Funzionamento∫
×
=
i
(
dl
B
)
F
La direzione della forza dipende dalla direzione del campo magnetico generato dalla corrente che circola nell’avvolgimento rispetto al campo magnetico permanente
Heason
Heason Voice
Voice Coil
Coil Actuator
Actuator
PID-- 15 Cristian Secchi
Analisi della scelta
Analisi della scelta
ms
M=
5
.
5
τ
B
Hz
M A=
τ
1 =
181
B
Hz
M cl=
τ
1 =
60
La dinamica dell’attuatore è significativamente più veloce di quella del La dinamica dell attuatore è significativamente più veloce di quella del sistema e, quindi, l’attuatore può essere approssimato con il suo guadagno statico.
Ka=22.4
La corsa dell’apparato che sorregge la testina è di 20° La corsa dell apparato che sorregge la testina è di 20
Scelta del sensore
Scelta del sensore
•
Per avere una grande precisione ed evitare la procedura di azzeramento usiamo un encoder assoluto come l’AEAS7000•
Uscita digitale senza bisogno di ulteriori conversioni•
Precisione a 12 bit•
Non c’è bisogno di ADC perché l’uscita dell’encoder assoluto è già in forma digitale 8 . 04 2 20 4096 20 216 = = = s K PID-- 17 forma digitale Cristian SecchiSchema tecnologico
Schema tecnologico
•
Supponiamo che non siano necessari ulteriori condizionamenti di segnale. Lo schema di controllo tecnologico è dato da:Catena di attuazione C(z) ZOH 1 22.4 G(s) 204.8 1 1 -Sp Calcolatore Catena di acquisizione
1
=
spK
K
out=
22
.
4
K
in=
204
.
8
Effetto della tecnologia sulle prestazioni
Effetto della tecnologia sulle prestazioni
Senza considerare la tecnologia Considerando la Tecnologia
closedloopwithtechnolgy.mdl
PID-- 19 Cristian Secchi
Messa in scala tecnologica
Messa in scala tecnologica
•
Per prima cosa è necessario ottenere la legge di controllo nel tempo discreto3
.
0
7
.
0
996
.
0
897
.
1
8249
.
65
)
(
)
(
)
(
2 2−
−
+
−
=
=
z
z
z
z
z
E
z
U
z
C
3
.
0
7
.
0
)
(
z
z
z
E
2 1 2 13
.
0
7
.
0
1
996
.
0
897
.
1
1
8249
.
65
)
(
− − − −−
−
+
−
=
z
z
z
z
z
C
) 2 ( 6160 . 65 ) 1 ( 41 . 124 ) ( 8249 . 65 ) 2 ( 3 . 0 ) 1 ( 7 . 0 ) (k = u k− + u k− + e k − e k− − e k− uMessa in scala delle equazioni
Messa in scala delle equazioni
Kin≠Ksp K’in=Kin/ Ksp = Kin=204.8
∑
∑
= = − + − = − = n i q out in i n i q i q q q q i k u K K b i k u a k u k y k sp k e 1 1 ) ( ) ( ) ( ) ( ) ( 8 . 204 ) ( Algoritmo Scalato PID-- 21 Cristian Secchi ) 2 ( 0143 . 0 ) 1 ( 02712 . 0 ) ( 01435 . 0 ) 2 ( 3 . 0 ) 1 ( 7 . 0 ) (k = u k− + u k− + e k − e k− − e k− uq q q q q qMessa in scala aritmetica
Messa in scala aritmetica
•
Supponiamo di usare un DSP ad aritmetica intera a 8 digit con segno) 2 ( 0143 . 0 ) 1 ( 02712 . 0 ) ( 01435 . 0 ) 2 ( 3 . 0 ) 1 ( 7 . 0 ) ( ) ( ) ( 8 . 204 ) ( − − − − + − + − = − = k e k e k e k u k u k u k y k sp k e q q q q q q q q q ) ( ) ( ) ( ) ( ) ( ) ( q q q q q q ) ( 10 ) ( ) 2 ( 143 ) 1 ( 2712 ) ( 1435 ) 2 ( 300000 ) 1 ( 700000 ) ( ) ( 10 ) ( 2048 ) ( 6 k u k u k e k e k e k u k u k u k y k sp k e qscaled q qscaled qscaled qscaled q q qscaled q q qscaled − = − − − − + − + − = − = ) ( ) ( qscaled q
Controlli Digitali Controlli Digitali
Laurea Magistrale in Ingegneria Meccatronica Laurea Magistrale in Ingegneria Meccatronica
CASO
CASO DI
DI STUDIO:
STUDIO:
CONTROLLO DELLA TESTINA
CONTROLLO DELLA TESTINA DI
DI
LETTURA/SCRITTURA
LETTURA/SCRITTURA DI
DI UN HARD DISK
UN HARD DISK
Cristian Secchi Tel. 0522 522235 e-mail: secchi.cristian@unimore.it