Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
motore
braccio
Consideriamo un motore elettrico DC, brushless o Asincrono Come trasduttori di posizione angolare analogici, in alternativa
o Cm
2
segnale di forzamento
Il controllo di basso livello gestisce le dinamiche non esplicitamente considerate ad alto livello
3
Convertitore Statico stadio di potenza raddrizzatori per conversioni AC/DC, inverter per conversioni DC/AC, Ponte H Interfaccia elettronica di calcolo e temporizzazione:
PIC (Peripheral Interface Controller) famiglia di circuiti integrati a semiconduttore con funzioni di microcontrollore. DSP (Digital Signal Processor) microprocessore ottimizzato per eseguire, in maniera estremamente efficiente, sequenze di istruzioni molto ricorrenti nel condizionamento di segnali digitalizzati PLC (Programmable Logic Controller) Computer industriale componibile progettato per condizioni gravose di funzionamento, come ampi intervalli di temperatura, schermato per rumore elettrico, e resistanza a vibrazioni e urti.
Controllore convertitore invia segnali PWM per attivare o interdire i transistor di cui costituito il Convertitore statico Controllore Azionamento controllo locale realizzato ad esempio con una funzione di trasferimento Proporzionale Integrale (PI)
4
m (t ) , m (t )
(t ) c
Motore Riduttore
(t ) , (t )
c (t )
Braccio
(t ) = m (t ) (t ) = c ( t ) c
k2 Va (s) m (s) Cm (s) = ( R + s L) k C (s) = J s + b (s) + C ( s) ( ) m m m m
( t ) + b (t ) c(t ) = J l l
con Jl momento dinerzia del braccio bl coefficiente dattrito viscoso
5
)
)
2 (t ) + b (t ) cm (t ) = J m m (t ) + bm m (t ) + J l m l m
I motori in corrente continua e brushless possono essere comandati in tensione o in corrente cio
Va I
attivando una retroazione di corrente interna. Labilitazione della retroazione consente il comando in corrente 7
Funzione di trasferimento m/Va usando i modelli del motore DC + riduttore + braccio si ottiene
m ( s ) k = 2 Va (s) ( Ls + R )( J e s + be ) + k
equivalentemente per la velocit del braccio
(s) k = 2 Va (s) ( Ls + R )( J e s + be ) + k
ampiezza (dB)
10
-1
10
10
10
10
10
frequenza (rad/sec) 9
10
Va
+ -
1 Ls + R
Cm
k
k
1 J e s + be
1 s
te = L/R tm = Je/be
10
Va
+ -
1 Ls + R
Cm
1 J m s + bm
1 s
k
11
Costanti di tempo
Diagramma di Bode ramo diretto m/Va
80 60
12
3
ampiezza (dB)
1/tm= be/Je
1/te= R/L
fase (gradi)
10
-1
10
10
10
10
10
frequenza (rad/sec)
12
13
L/R<< Je/be
m
Va
+ -
k R
1 J e s + be
1 s
( s) k Va ( s) J e R s + ( be R + k 2 )
13
ampiezza (dB)
-20
-40
1/t1
fase (gradi)
10
-1
10
10
10
10
10
frequenza (rad/sec) 14
15
2 2 m ( s ) Cm = k I = s J m + J l + bm + bl
) (
m ( s ) k = I ( s) J e s + be Je = J m + Jl
2
b e = bm + bl
2
15
16
ampiezza (dB)
60
50
40
30 0
1/tm
fase (gradi)
-30
-60
-90 -3 10
10
-2
10
-1
10
10
frequenza (rad/sec) 16
17
Cm
1 J e s + be
C
-
1 s
Cm
1 J m s + bm
1 s
costante meccanica
tm = Je/be
17
Controllo di basso libello per motore comandato in corrente schema a blocchi con un controllore di tipo
18
PI
m
+ -
Va
Ki Kp + s
+ -
1 Ls + R
Ia
+
Id = C/k Cm -
k
k
1 J m s + bm
transitorio, valori non compatibili con lintegrit del motore si ottiene il controllo diretto della coppia motrice con un riferimento di corrente I 18
19
Va +
-
k R
1 J e s + be k
1 s
Cm
Cm
1 J e s + be
1 s
19
Funzione di Trasferimento m /s
20
Je = J m + Jl
2 2
b e = bm + bl
s ( s)
m ( s ) =
k s J e + ( be + k )
1 J e s + be
m
schema a blocchi s + -
Cm
1 s
20
RETROAZIONE DI POSIZIONE d + -
Cm
Kp
1 J e s + be
1 s
Kp >0
21
ordine
2
s + ( be J e ) s + ( k K p J e ) = s + 2n s + n
2
n =
k K p Je Je k K p
be,
presenta due poli complessi coniugati con smorzamento circa nullo oscilla pi o meno a seconda del valore di
1 be = 2 Je
Kp
di aumentare lo
se
si
cerca
smorzamento fino a =1, Kp avr valori pressoch nulli la banda passante troppo piccola
Kd
Kp
+ +
Cm
1 J e s + be
Kd
1 s
+ -
Kp
+ -
Cm
1 J e s + be
Kd
1 s
se
Kd d = d + d Kp
24
una derivata numerica e pi precisamente ad una derivata in banda utilizzando un filtro del primo o del secondo ordine
d + -
I
K s Kp + d 1+ s
Cm
1 J e s + be
1 s
0.1 1 10 100
b1s + b0 a1s + a0
b1s + b0 2 s + a1s + a0
(rad/sec)
25
Effetto del filtro di stima della derivata valore stimato della derivata con il filtro del primo ordine valore medio
tempo tempo
variabile misurata
derivata del valore medio valore stimato della derivata con il filtro del secondo ordine
26
+ -
I
Kp
+ -
Cm
1 J e s + be
Kd
1 s
(s) k K p 1 = 2 J e s + ( be J e + k Kd J e ) s + ( k K p J e ) d ( s )
asintoticamente stabile
Kp, Kd >0
ordine
s + ( be J e + k Kd J e ) s + ( k K p J e ) =
2
= s + 2n s + n
2
k K p n = Je J e be + k Kd = 1 k K J 2 p e
lo smorzamento
non deve
essere minore di 1 per evitare oscillazioni se =1 (smorzamento critico) si ha la risposta indiciale pi rapida senza oscillazioni
28
n r
r =
kr Je
k r = rigidezza torsionale
pari a 0.5 si ha
ad esempio scegliendo
per la scelta di
1 kr 0 < Kp 4 k
massimo Kp
Kd =
k r J e be k
>0
29
Simulazioni
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -0.1 0 5 4 3 2 1 0 -1 -2 -3 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
8
2
parametri
valori
k Je be
0.215
Nm/A
0.88 10-3 Nm s2/rad 8.02 10-5 Nm s/rad 1/100 ~30 20 92.093 12.242 rad/s A
r
0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
saturazione Kp Kd usando
coppia (Nm)
tempo (s)
=1 lo
Ki s
Kp Kd
+
+ -
Cm
d
-
1 J e s + be
1 s
k ( Kd s + K p s + Ki ) ( s) = 3 2 d ( s) J e s + ( be + k Kd ) s + k K p s + k Ki
2
31
come quello proposto da Ziegler e Nichols oppure con un metodo di ottimizzazione basato su una funzione di costo
f = ( e ) + w f cm ( t ) dt 0
tf
con
we e ( t ) , we e ( t ) , we t e ( t ) , we t e ( t )
2
Simulazioni
1.2
3
2
1 0.8 0.6 0.4 0.2 0 -0.2 4 3.5 3 2.5 2 1.5 1 0.5 0 -0.5 -1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 tempo (s) 2 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
parametri
valori
k Je be
0.215
Nm/A
0.88 10-3 Nm s2/rad 8.02 10-5 Nm s/rad 1/100 20 18.311 4.173 0.24207 A
saturazione Kp Kd Ki usando
coppia (N m)
= e(t)2, we = 1
wf = 1/12
piccola sovraelongazione la coppia non satura
33
Le indicazioni ottenute sulla base di sistemi molto semplici devono essere ampliate per divenire applicabili a sistemi robotici reali. Sinora si sono considerati sistemi robotici con
1 grado di mobilit Funzioni di Trasferimento dei componenti semplificate e
Per progettare sistemi di controllo efficienti necessario includere alcuni aspetti realistici nel modello del sistema
effetti legati alla dinamica dei sistemi multicorpo
Tramite un manipolatore planare a 2 bracci si mostra la natura delle azioni che due membri contigui si scambiano attraverso il giunto
Y
G2 G1 O2
Rotazione di
con fisso
J G 2
G1 c2
G2
2 m 2 O1G 2
c1
O1
m 2 O1 G 2
X
m g J G1 1 1
2 m1 g1
momento dinerzia dei bracci 1 e 2 rispetto allasse passante per O1 e ortogonale al piano
XY
2
J O1 = J G1 + m g + J G 2 + m2 O1G 2 =
2 1 1
= J G1 + m g + J G 2 + m2 l + g + 2l1 g 2 cos
2 1 1 2 1 2 2
36
J G 2
G1 c2
G2
2 m 2 O1G 2
1 =
c1
O1
m 2 O1 G 2
X
m g J G1 1 1
2 m1 g1
la c1 si ottiene facendo lequilibrio dei momenti di tutto il sistema attorno a O1 la c2 si ottiene facendo lequilibrio dei momenti del solo braccio terminale attorno a O2
37
Rotazione di
con fisso
2 m2 g 2
G2
O2
m2 g 2
3 = g 2 + l1 cos 4 = l1 sin
c1
O1
G1 c2
J G2
X
le coppie fornite dai motori per produrre questo moto sono procedendo come al caso precedente
- m g 2 c1 = ( J G2 + 3 m 2 g 2 ) 4 2 2
2 c 2 = J O2 = J G2 + m 2 g 2
38
Rotazioni generiche di
c1 = c2
J 11 J 21
2 m 2 g 2 l1 sin + 2 J 12 2 J 22 m g l sin 2 2 1
J 12 = J 21 = m2 g 2 ( g 2 + l1 cos ) + J G 2
Per la presenza di pi bracci la coppia che deve essere fornita da come ipotizzato nelle precedenti ciascun attuatore non del tipo J considerazioni, in quanto i vari GdL si influenzano reciprocamente
39
J 22 = J G 2 + m2 g
2 2
Per utilizzare le informazioni ottenute con un robot ad 1 GdL, la situazione rappresentata dallequazione matriciale vista sinteticamente rappresentabile
+ V (Q , Q ) + C = J J ( Q ) Q g g g g
2 c1 m2 g 2l1 sin + 2 C = Qg = V = 2 c2 m2 g 2l1 sin 2 J G1 + m1 g12 + J G 2 + m2 l12 + g 2 0 J = 2 + J m g 0 G2 2 2 m2 g 2 ( g 2 + l1 cos ) + J G 2 2m2l1 g 2 cos J = 0 m2 g 2 ( g 2 + l1 cos ) + J G 2
40
C
lineare
+ d + +
Q g
Q g
Qg
il blocco lineare del tipo ad 1 GdL opera su un sistema di momento dinerzia diagonale e costante J che rappresenta linerzia media vista dai rispettivi giunti il blocco non lineare rappresenta anche laccoppiamento le matrici J e V ( matrice delle forze dinerzia centrifughe e di Coriolis) non sono diagonali possono interpretarsi come ingressi secondari 41
Se le caratteristiche dinamiche del manipolatore sono note possibile costruire un modello per la compensazione del disturbo prodotto dalle azioni mutue tra bracci Modello matematico del manipolatore nello spazio dei giunti
+ d
Q g
Q g
Qg
+ +
non lineare accoppiato
+ +
V
G
42
La compensazione delle azioni mutue e non lineari si ottiene calcolando le coppie con questa espressione
1 ) + G (Q ) C = + Q U + V Q Q J J ( ) J ( , g g g g
I + J (Qg ) J 1
controllore non lineare centralizzato
+ + +
robot
Q g Qg
V
G
43
U = JQ g
Dove le azioni U si possono ottenere con leggi di controllo per controllori locali del tipo
+ K +K =0 d p
con = Qd Q
Lerrore converge a zero con velocit che dipende da Kp e Kd se sono definite positive Lerrore resta nullo se H e la sua derivata in t=0 sono nulli
44
controllo
Q d Q d
Kd
+
+ + + +
I + J (Qg ) J
controllore non lineare centralizzato
+ + +
robot
Q g Qg
Qd
Kp
V
G
Il metodo descritto presenta la possibilit di seguire una qualsiasi traiettoria Ha alcuni svantaggi
i calcoli relativi al blocco di compensazione (sistema di n equazioni) devono essere eseguiti a ogni ciclo del processo di controllo durante il moto del robot sistema di calcolo costoso necessaria una conoscenza completa del sistema non sempre possibile
45
In un robot con pi membri il momento dinerzia sentito da ciascun attuatore varia con la postura Questa variazione influenza gli effetti del controllo Consideriamo la retroazione di
Posizione e Velocit
con motore in corrente continua pilotato in tensione con motore in corrente continua pilotato in corrente
Valutiamo leffetto sulle FT a anello chiuso per le variazioni del momento dinerzia del manipolatore
46
Va
Kp
+ -
Cm
k R
1 J e s + be
k + Kd
1 s
( s) k K p = d ( s) R J e
s +
2
1 Rbe + k ( k + Kd ) R Je
k K p s+ R Je
47
n = 1 = 2
k K p R Je Rbe + k ( k + K d ) k K p R J e
allaumentare di Je
la pulsazione naturale
sovraelongazioni
48
k K p n = Je = 1 ( be + k Kd ) 2 k K p J e
anche in questo caso allaumentare di Je la pulsazione naturale n e quindi la banda passante diminuiscono analogo comportamento mostra lo smorzamento
49
Per tutti i casi esaminati laumento del momento dinerzia sentito da ciascun motore fa variare il comportamento del sistema
diminuzione della banda passante diminuzione dello smorzamento
controllori in modo tale che per le configurazioni che comportano i momenti dinerzia massimi si abbia =1 posizionamenti pi lenti nelle altre configurazioni che hanno
>1
La variazione dei momenti dinerzia rendono il sistema non lineare, in realt le variazioni sono in genere piccole
Ji = Jmi + Jvi
2
Jmi = momento d'inerzia del motore e del riduttore (costante) Jvi = termine variabile, = rapporto di trasmissione 1
50
Sia un robot planare a 2 bracci disposto nel piano verticale Le coppie c1 e c2 dovute al peso dipendono dallaccelerazione di gravit ag
c 2 = m 2 a g g 2 cos ( + )
l1 , l2 lunghezze dei bracci g1 e g2 distanza dei centri di massa da O1e O2
m2ag
O1
G1
m1ag
Queste coppie resistenti devono essere compensate anche con robot fermo usando un controllore con azione integrativa
51
EFFETTI DELLATTRITO
Lattrito radente o di Coulomb genera coppie resistenti Cr contrarie alla direzione del moto e modulo circa costante
questo disturbo nullo quando il robot fermo introduce una non linearit
Cr = - |Cr| segno(m)
di instabilit
di instabilit
52
EFFETTO DELL ELASTICIT SU UN GIUNTO Modello per la Rappresentazione dell Elasticit sul Giunto
Jm bm
m k
2 Jl bl
Il robot non un sistema rigido la trasmissione e il riduttore di velocit introducono una deformabilit torsionale significativa per una brusca applicazione della coppia motrice In genere laccoppiamento tra motore e carico non pu essere considerato rigido La deformabilit pu essere pensata ridotta ad un unico elemento
53
Jm bm
m k
2 Jl bl
y y Jm y Jl
rapporto di trasmissione del riduttore di velocit assunto ideale momento dinerzia di motore e trasmissione a monte del riduttore di velocit momento dinerzia di braccio e trasmissione a valle del riduttore di velocit
y k rigidezza torsionale dellalbero + riduttore + trasmissione y bm e bl smorzamento viscoso rispettivamente lato motore e lato braccio y m posizione angolare del motore y 1- m deformazione torsionale dovuta allelasticit 54 y 2 posizione angolare del carico 2 = 1
Lo schema assume realisticamente che la posizione e la velocit sono misurati sullalbero motore e non sul carico Il modello pu essere semplificato ricorrendo a uno schema equivalente con rapporto di trasmissione unitaria =1
Jm bm
m k
J1 b1
J1 = 2 J l b1 = 2bl
momento d'inerzia ridotto all'albero motore coefficiente d'attrito viscoso ridotto all'albero motore velocit del carico ridotta all'albero motore, in assenza di elasticit si avrebbe 1 =m
55
1 = 2
+ b + k ( ) = 0 J1 1 1 1 1 m + b k ( ) = c ( t ) J m m m m 1 m m
nel dominio di Laplace:
Jm bm
m k
1 J1 b 1
p1 ( s ) 1 ( s ) = k m ( s ) pm ( s ) m ( s ) = k 1 ( s ) + C m ( s )
dove:
p1 ( s ) = J1s + b1s + k
2
pm ( s ) = J m s + bm s + k
2
56
Cm e 1:
Cm ( s )
1 ( s )
J m s 2 + bm s + k
)( J s
1
+ b1 s + k k
2
Cm +
+
1 J m s 2 + bm s + k
k J1s 2 + b1s + k
k
57
J1J m s4 + k ( J1 + J m ) s2
ovvero una coppia di poli nellorigine e una coppia di poli complessi e coniugati:
s = jn
1 1 n = k + J m J1
2
la coppia di poli nellorigine rappresenta il moto rigido la coppia di poli complessi e coniugati rappresenta il moto
58
k = 0.8 Nm / rad Jm = 0.0004 Nms2 / rad J1 = 0.0004 Nms2 / rad b1 = 0 Nms / rad bm = 0 Nms / rad bm = 0.0015 Nms / rad bm = 0.015 Nms / rad
n = k
-90
fase (gradi)
-180
-270
-360 10
-1
10
10
10
10
frequenza (rad/sec)
59
Controllo di Posizione
k
1d + -
Cm K p + Kd s +
1 J m s 2 + bm s + k
k J 1 s 2 + b1 s + k
k
1d + -
Cm K p + Kd s +
1 J m s 2 + bm s + k
k J 1 s 2 + b1 s + k
60
Se si pone:
K p + Kd s = Kd ( s + a ) con a = K p Kd
Il luogo delle radici per il sistema ad anello chiuso con retroazione della posizione del motore in termini di
Kd e con a fissato :
pm p1 k 2 + K d ( s + a ) p1 = 0
Il luogo delle radici per il sistema ad anello chiuso con retroazione della posizione del braccio in termini di
Kd e con a fissato :
61
pm p1 k 2 + K d k ( s + a ) = 0
Luogo delle Radici con retroazione della posizione del motore 60 asse immaginario 40 20 0 -20 -40 -60 -50
0.92 0.76 0.6 0.46 0.34 0.24 0.15 10 20 30 40 50 60 0.07 70 0.6 0.46 0.34 0.24 0.15 0.07 70 60 50 40 30 20 10
0.76 0.92
a = 23.7 rad/sec
-40
-30
-10
Il sistema ad anello chiuso stabile Kd >0, la presenza di zeri molto vicini allasse immaginario comporta oscillazioni indesiderate e un tempo di assestamento pi lungo Dinamica non modellata pu rendere il sistema 10 instabile Il sistema ad anello chiuso instabile Kd maggiore di un valore critico, che si pu calcolare con il criteriodi Routh
Luogo delle Radici con retroazione della posizione del carico 100 80 0.52 asse immaginario 60 40 20 0 -20 -40 -60
0.68 60 0.38 0.28 0.2 0.12 80 0.06 100 0.88 20 40 0.88 0.68 0.38 0.28 0.2 0.12 0.06 100 80 60
a = 23.7 rad/sec
40 20
-40
-30
10
20
0.8
0.8
0.6
Kp = 0.545 Kd = 0.023
0.6
Kp = 0.3 Kd = 0.005
0.4
0.4
0.2
0.2
0 0 0.05 0.1 0.15 0.2 0.25 0.3 tempo (s) 0.35 0.4 0.45 0.5
0 0 0.05 0.1 0.15 0.2 0.25 0.3 tempo (s) 0.35 0.4 0.45 0.5
Un controllore PD inadeguato per il controllo di un robot a meno che non sia trascurabile la flessibilit del giunto o ci si accontenta di una risposta relativamente lenta del braccio. Tuttavia ancora oggi diffuso nellindustria lutilizzo di semplici controllori PD e PID
63
Le considerazioni fatte riguardo il controllo di robot reali con pi gradi di mobilit possono essere cos riassunte Il disturbo delle azioni mutue tra membri, quale fenomeno non lineare, deve essere preso in considerazione introducendo un blocco di compensazione capace di linearizzare gli effetti e progettando controllori locali su ciascun giunto in modo tradizionale considerare gli effetti non lineari come disturbi grazie ai riduttori Per evitare sovraelongazioni, progettare i controllori di ogni asse con = 1 per Je massimo con > 1 altrimenti ci riduce la banda passante Per ridurre le vibrazioni, pianificare le traiettorie in modo che il contenuto in frequenza del riferimento sia significativo solo al di sotto della frequenza fondamentale del sistema Per controlli digitali, impiegare frequenze di campionamento 64 circa 10 volte superiori la banda passante