Documento PDF - Università degli Studi di Padova

UNIVERSITÀ DEGLI STUDI DI PADOVA
FACOLTÀ DI INGEGNERIA
CORSO DI LAUREA MAGISTRALE IN INGEGNERIA MECCATRONICA
TESI DI LAUREA MAGISTRALE
Studio e ottimizzazione della dinamica dei
meccanismi con l’introduzione di elementi
elastici.
Relatore: Ch. Prof. Giovanni Boschetti
Laureando: Simone Minetto
626212-IMC
ANNO ACCADEMICO: 2012-13
SOMMARIO
Nel campo della robotica spesso si assiste ad un problema di sovradimensionamento dei motori atti alla movimentazione dei meccanismi,i
quali sono dimensionati spesso considerando la natura dei carichi da
muovere, senza tener conto della dinamica svolta dal meccanismo
stesso.
In questo elaborato si vuole studiare e proporre un semplice metodo
per migliorare le prestazioni dinamiche di meccanismi articolati con
l’obiettivo di ridurre gli sforzi del motore risparmiando una quota di
energia utilizzata per la movimentazione.
Tale sistema cinematico utilizza una molla lineare opportunamente
posizionata che, collegata da un lato ad un punto fisso a telaio e dall’altro al sistema in movimento, generi una forza in grado di riequilibrare gli sforzi dell’elemento motore al fine di migliorare le prestazioni dinamiche del meccanismo stesso al variare della tipologia di
legge di moto scelta. Il metodo è molto semplice e può trovare applicazioni in robotica e in qualsiasi campo in cui si vogliano ridurre
i costi energetici dovuti alla movimentazione di meccanismo rotante.
Esso si presta bene ad essere utilizzato in ambiti industriali in cui il
lavoro svolto dal meccanismo sia di tipo ripetitivo e quindi soggetto
alla stessa prestazione dinamica per tutto il tempo di lavoro.
Per mezzo di alcune apparecchiature di laboratorio, quali un motore brushless dotato di azionamento Allen-Bradley, un’asta di alluminio e un giunto elastico, è stata verificata l’attendibilità dei risultati
ottenuti da una prima analisi teorica su un sistema ad 1 GDL costituito da una manovella rotante sul piano orizzontale attorno ad un
punto fisso a telaio.
Le prove sono state svolte al variare della tipologia di legge di moto
utilizzata per la movimentazione, focalizzando lo studio sulle leggi
per le quali si potesse ottenere un miglioramento in termini sia di
energia complessiva spesa dall’organo motore, sia di coppie massime
richieste per la movimentazione del carico.
iii
Alla mia famiglia.
v
INDICE
1
introduzione
2
analisi teorica del moto sul piano orizzontale
3
2.1 La problematica delle leggi di moto
3
2.2 Analisi teorica sistema manovella
4
2.3 Scelta delle leggi di moto
6
3
implementazione matlab
11
3.1 Codice Matlab
11
3.2 Calcolo del punto di fissaggio
16
3.3 Risultati teorici
20
3.3.1 Traiettoria a velocità costante
20
3.3.2 Traiettoria trapezoidale in velocità
21
3.3.3 Traiettoria polinomiale con polinomio di terzo
grado
24
3.3.4 Traiettoria armonica
25
3.3.5 Traiettoria cicloidale
28
3.3.6 Traiettoria polinomiale di quinto grado
29
3.3.7 Modifica dei parametri
31
3.3.8 Influenza delle coppie d’attrito
36
4
analisi sperimentale
43
4.1 Setup Sperimentale
43
4.1.1 Determinazione della costante elastica
44
4.2 Impianto Allen-Bradley
46
4.3 Ambiente di Sviluppo RSLogix5000
48
4.3.1 Programma di controllo
49
4.3.2 Creazione della camma elettronica
55
4.3.3 Gestione degli output
60
5
risultati sperimentali
63
5.1 Il sistema di controllo
63
5.1.1 Coppie d’attrito
65
5.2 Minimizzazione dell’energia globale del sistema
5.3 Minimizzazione della coppia motrice massima
Conclusioni
Appendix
1
67
72
79
81
a funzioni matlab
83
vii
viii
indice
b
codice rslogix-5000
bibliografia
87
85
ELENCO DELLE FIGURE
Figura 1
Figura 2
Figura 3
Figura 4
Figura 5
Figura 6
Figura 7
Figura 8
Figura 9
Figura 10
Figura 11
Figura 12
Figura 13
Figura 14
Figura 15
Figura 16
Figura 17
Figura 18
Figura 19
Schema per l’analisi teorica.
5
Traiettoria per legge di moto a velocità costante.
7
Traiettoria per legge di moto trapezoidale in
velocità.
8
Traiettoria per legge di moto polinomiale di
terzo grado.
9
Traiettoria per legge di moto armonica.
9
Traiettoria per legge di moto cicloidale.
10
Traiettoria per legge di moto polinomiale di
quinto grado.
10
Coppia fornita dalla molla in funzione del punto di aggancio a telaio xE=-0.5m.
13
Coppia fornita dalla molla in funzione del punto di aggancio a telaio xE=-0.2m.
14
Coppia fornita dalla molla in funzione del punto di aggancio a telaio xE=0m.
14
Coppia fornita dalla molla in funzione del punto di aggancio a telaio xE=0.2m.
15
Posizione temporale dei punti di fissaggio della molla.
20
Lunghezza della molla in funzione della posizione di manovella.
21
Coppie teoriche del sistema con legge di moto
a velocità costante.
21
Coppie teoriche del sistema con legge di moto
trapezoidale in velocità.
22
Traiettoria per legge di moto trapezoidale in
velocità modificata.
23
Coppie teoriche del sistema con legge di moto
trapezoidale in velocità modificata.
23
Lunghezza della molla in funzione della posizione di manovella.
24
Coppie teoriche del sistema con legge di moto
polinomiale di terzo grado.
25
ix
x
Elenco delle figure
Figura 20
Figura 21
Figura 22
Figura 23
Figura 24
Figura 25
Figura 26
Figura 27
Figura 28
Figura 29
Figura 30
Figura 31
Figura 32
Figura 33
Figura 34
Figura 35
Figura 36
Figura 37
Figura 38
Problema di extra-coppia con legge di moto
armonica.
26
Lunghezza della molla in funzione della posizione di manovella.
26
Coppie teoriche del sistema con legge di moto
armonica.
27
Coppie teoriche del sistema con legge di moto
cicloidale.
28
Lunghezza della molla in funzione della posizione di manovella.
29
Coppie teoriche del sistema con legge di moto
polinomiale di quinto grado.
29
Lunghezza della molla in funzione della posizione di manovella.
30
Posizione temporale dei punti di fissaggio della molla.
32
Coppie teoriche del sistema con legge di moto
trapezoidale.
32
Coppie teoriche del sistema con legge di moto
polinomiale di terzo grado.
33
Coppie teoriche del sistema con legge di moto
armonica.
34
Coppie teoriche del sistema con legge di moto
cicloidale.
35
Coppie teoriche del sistema con legge di moto
a velocità costante in presenza di attrito.
37
Coppie teoriche del sistema con legge di moto
trapezoidale in presenza di attrito.
37
Coppie teoriche del sistema con legge di moto trapezoidale modificata in presenza di attrito.
38
Coppie teoriche del sistema con legge di moto
polinomiale con polinomio di terzo grado in
presenza di attrito.
38
Coppie teoriche del sistema con legge di moto
armonica in presenza di attrito.
38
Coppie teoriche del sistema con legge di moto
cicloidale in presenza di attrito.
39
Coppie teoriche del sistema con legge di moto
polinomiale con polinomio di quinto grado in
presenza di attrito.
39
Elenco delle figure
Figura 39
Figura 40
Figura 41
Figura 42
Figura 43
Figura 44
Figura 45
Figura 46
Figura 47
Figura 48
Figura 49
Figura 50
Figura 51
Figura 52
Figura 53
Figura 54
Figura 55
Figura 56
Figura 57
Figura 58
Figura 59
Figura 60
Figura 61
Asta in alluminio
43
Posizione dei ganci per il fissaggio degli elastici.
45
Impianto Allen-Bradley.
46
Motore brushless MP-Series.
47
Diagramma Ladder.
50
MSO.
51
Subroutine SlaveOn.
53
Procedura automatica.
53
Arresto della sequenza di comando e disattivazione dell’asse.
54
Diagramma logico per la creazione di una camma.
55
Subroutine per la sincronizzazione Master-Slave.
Esempio di profilo di camma costruito per punti.
58
Esempio di Structured Text per la creazione di
profilo di camma trapezoidale in velocità.
59
Pannello di controllo dell’asse1.
60
Esempio di monitor per la visualizzazione del
trend dei parametri del motore.
61
Ripple di coppia a velocità costante.
65
Profili di coppia acquisiti dal motore nel caso
di legge di moto a velocità costante.
67
Profili di coppia acquisiti dal motore nel caso
di legge di moto trapezoidale.
67
Profili di coppia acquisiti dal motore nel caso
di legge di moto trapezoidale con tempi di accelerazione e decelerazione aumentati.
68
Profili di coppia acquisiti dal motore nel caso
di legge di moto polinomiale con polinomio di
terzo grado.
68
Profili di coppia acquisiti dal motore nel caso
di legge di moto armonica.
68
Profili di coppia acquisiti dal motore nel caso
di legge di moto cicloidale.
69
Profili di coppia acquisiti dal motore nel caso
di legge di moto polinomiale con polinomio di
quinti grado.
69
xi
56
Figura 62
Figura 63
Figura 64
Figura 65
Figura 66
Figura 67
Profili di coppia acquisiti dal motore nel caso
di legge di moto cicloidale per minimizzare la
coppia motrice massima.
72
Profili di coppia acquisiti dal motore nel caso di legge di moto polinomiale con polinomio di quinto grado per minimizzare la coppia
motrice massima.
73
Confronto tra la curva di coppia teorica e reale
nel caso di posizionamento dell’elastico per la
minimizzazione della coppia motrice massima
per legge di moto cicloidale.
74
Confronto tra la curva di coppia teorica e reale nel caso di posizionamento dell’elastico per
la minimizzazione della coppia motrice massima per legge di moto polinomiale di quinto
grado.
74
Profili di coppia acquisiti dal motore nel caso
di legge di moto cicloidale con T=1s per minimizzare la coppia motrice massima.
76
Profili di coppia acquisiti dal motore nel caso
di legge di moto polinomiale con polinomio
di quinto grado con T=1s per minimizzare la
coppia motrice massima.
76
E L E N C O D E L L E TA B E L L E
Tabella 1
Tabella 2
Tabella 3
Tabella 4
Tabella 5
xii
Parametri caratteristici delle leggi di moto.
8
Dati elastico l=0.08m K=40N/m. (Caso teorico)
30
Coppie massime espresse in Nm prima e dopo
l’utilizzo di un elastico con l=0.08m K=40N/m
(Caso teorico).
31
Dati elastico l=0.135m K=40N/m (Caso teorico)
35
Coppie massime prima e dopo l’utilizzo di un
elastico con l=0.135m K=40N/m (Caso teorico).
36
Elenco delle tabelle
Tabella 6
Tabella 7
Tabella 8
Tabella 9
Tabella 10
Tabella 11
Tabella 12
Tabella 13
Tabella 14
Tabella 15
Tabella 16
Tabella 17
Tabella 18
Tabella 19
Dati elastico l=0.08m K=40N/m (Caso teorico
con attrito).
40
Coppie massime espresse senza e con l’utilizzo di un elastico con l=0.08m K=40N/m (Caso
teorico con attrito).
40
Efficienza percentuale del sistema con l’aggiunta dell’elemento elastico l=0.08m K=40N/m (Caso teorico con attrito).
42
Dimensioni Asta
44
Datasheet Motori
47
Parametri per il CAM Design
58
Caratteristiche del motore
63
Parametri impostati per gli anelli di contollo
65
Dati reali con elastico l=0.08m K=40N/m.
70
Coppie massime senza e con l’utilizzo di un
elastico con l=0.08m K=40N/m (Caso reale)
70
Efficienza percentuale del sistema sperimentale con l’aggiunta dell’elemento elastico l=0.08m
K=40N/m.
71
Dati acquisiti con l’obiettivo di minimizzare la
coppia massima, l=0.08m K=40N/m.
73
Efficienza percentuale del sistema sperimentale con l’aggiunta dell’elemento elastico.
75
Dati acquisiti per leggi di moto con periodo
doppio e stesso punto di agancio a telaio del
caso precedente.
76
xiii
1
INTRODUZIONE
In questo elaborato si vuole discutere lo studio dei benefici in termini
di prestazioni dinamiche di un meccanismo articolato in rotazione sul
piano orizzontale mediante l’introduzione di un elemento elastico.
Nel primo capitolo e secondo capitolo si affrontano l’analisi teorica del problema e i criteri per la determinazione del corretto punto
di fissaggio della molla tra telaio e una manovella posta in rotazione
sul piano orizzontale. Mediante lo studio delle equazioni dinamiche
del moto rotatorio della manovella e le leggi ai quali sono sottoposti
gli elementi elastici, è satato scritto un codice Matlab per la modellizzazione del sistema e la determinazione del punto di fissaggio a
telaio per l’aggancio della molla. Il punto ottimo di fissaggio è definito secondo due criteri: il primo per il quale in una rotazione completa
della manovella si generino delle coppie elastiche contribuiscano alla
riduzione dell’energia spesa dal motore per trascinare il carico, il secondo per ridurre le coppie motrici massime richieste.
Vengono riportati i risultati derivanti dall’analisi teorica nel caso di
moto ideale e in presenza di coppie di attrito nel sistema.
Nel terzo capitolo si descrive il sistema utilizzato per le prove sperimentali di laboratorio; particolare attenzione viene posta all’ambiente di sviluppo RsLogix5000 per la gestione degli azionamenti AllenBradley ed ai comandi utilizzati per il controllo della movimentazione.
Nel quarto capitolo si descrivono i risultati sperimentali e si valuta
l’effettivo miglioramento che l’introduzione di un elemento elastico
apporta al sistema. Ci si concentra in particolare su alcune tipologie
di leggi di moto utilizzate in ambito industriale per definire e quantizzare il beneficio dell’applicazione sperimentale, confrontandolo con
quello ottenuto dalla precedente analisi teorica.
Viene infine focalizzata l’attenzione sulle leggi di moto che dallo studio effettuato sembrano essere le più adatte nel caso si voglia utilizzare questa tecnica di miglioramento delle prestazioni dinamiche,
sia in termini di energia globale, sia in termini di coppie massime
sviluppate dal motore.
In appendice si riportano alcuni codici Matlab utilizzati per la modellizzazione e la verifica del sistema.
1
2
ANALISI TEORICA DEL MOTO SUL PIANO
O R I Z Z O N TA L E
In questo capitolo si vuole presentare un semplice metodo per migliorare le
prestazioni dinamiche di meccanismi articolati posti in rotazione attorno ad
un punto fisso a telaio. Ci si occupa in particolare del metodo cosidetto “A
molle”, il quale considera l’utilizzo di un elemento elastico che compensi le
distorsioni della coppia motrice necessaria per la movimentazione del carico,
dovute alla tipologia di legge di moto scelta per il sistema. Si procede dapprima con l’analisi teorica del problema e la definizione dei criteri scelti per
l’ottimizzazione dinamica.
2.1
la problematica delle leggi di moto
La scelta della legge di moto adatta al sistema deve essere fatta ragionando sulle caratteristiche intrinseche del sistema stesso e sul comportamento che si desidera da esso. Valutando gli indici cinematici
(es. velocità, accelerazione, jerk), dei buoni criteri di scelta della legge
di moto possono essere riassunti come di seguito:
• Limitare la Velocità massima
• Limitare le accelerazioni massime ed rms (prestando maggior
attenzione all’accelerazione rms perchè da esse dipende la coppia nominale e quindi la taglia del motore)
• Scegliere leggi che siano continue almeno fino all’accelerazione,
a volte anche fino al jerk o oltre. Avere discontinuità in accelerazione significa avere discontinuità nelle forze e nelle coppie,
per cui sollecitare con urti la meccanica della macchina. A volte è il prodotto stesso che non tollera accelerazioni elevate o
discontinuità nelle medesime
• Limitare la banda passante dell’accelerazione, limitando conseguentemente la banda passante della corrente nel motore. Il sistema Azionamento/Motore è un sistema passa basso che non
può riprodurre fedelmente tutte le frequenze, quindi imporre
accelerazioni/correnti oltre la banda passante può portare a
3
4
analisi teorica del moto sul piano orizzontale
maggiori ed inutili errori di inseguimento nei transitori ed eccitare frequenze di risonanza che innescano vibrazioni meccaniche
• Valutare la tipologia di accoppiamento tra attuatore e carico per
l’eventuale presenza di elasticità
In questo elaborato ci si occupa dell’influenza che diverse tipologie
di legge di moto hanno sulla rotazione di meccanismi articolati; ci
si concentra quindi sulle problematica descritte nel primo e secondo
punto sopra. Si cerca di capire se l’applicazione di un carico elastico
in un preciso punto del meccanismo, al variare della legge di moto,
possa introdurre dei benefici in termini di regolarità di coppia richiesta al motore per la movimentazione del carico.
Una molla collegata al meccanismo da un lato e ad un punto fisso
a telaio dall’altro, genera una coppia elastica che dipende dalla posizione nel tempo del meccanismo stesso. Variando la legge di moto
con cui viene comandato in sistema, cambiano tutti gli indici cinematici e, concentrando l’attenzione sulle diverse risposte del sistema
in termini di accelerazione (e conseguentemente di coppia richiesta al
motore), il punto ottimo per fissare la molla deve essere modificato in
modo che le coppie da essa generate contrastino per quanto possibile
le diverse richieste di coppia motore.
In particolare per verificare se il metodo risulta valido o meno, e
per quali posizioni della molla, si valuta l’energia spesa dal motore in
termini di potenza, durante una rotazione completa del meccanismo
attorno al punto di fissaggio sull’albero motore.
2.2
analisi teorica sistema manovella
Lo studio teorico è stato effettuato sul modello di fig. 1, costituito
da un’asta lineare rotante sul piano orizzontale, sulla quale è fissato
l’estremo di un carico elastico; il secondo estremo è fisso a telaio in un
secondo punto esterno all’asta. Si suppone idealmente che i due punti
di aggancio si trovino sullo stesso piano e quindi la forza elastica
generata dalla molla sia scomponibile in sole due componenti sul
suddetto piano.
La posizione dell’asta, in grado di ruotare liberamente attorno al
punto fisso O, può essere espressa in coordinate cartesiane XY considerando l’angolo di manovella θ definito come l’angolo tra il vettore
asta e il vettore X del piano cartesiano. Ad esempio per definire la
2.2 analisi teorica sistema manovella
Figura 1: Schema per l’analisi teorica.
posizione del punto P durante la rotazione completa della manovella
sono state usate le equazioni del sistema

 x (θ) = PO · cos(θ)
P
 y (θ) = PO · sin(θ)
(1)
P
grazie al quale esso può essere definito istantaneamente come un
vettore tridimensionale con componente nulla lungo l’asse z.
P = [xP , yP , 0]T
(2)
La stessa procedura è eseguita per tutti i punti significativi del modello. Espresso ora l’intero sistema in coordinate cartesiane e definito
con E il punto estremo della molla fisso a telaio, tramite l’applicazione del Teorema di Pitagora si calcola la lunghezza della molla nota la
posizione θ della manovella.
q
lm = EP = (xE − xP )2 + (yE − yP )2
(3)
Detta l0 la lunghezza libera della molla a riposo, considerando solo allungamenti positivi dovuti a trazione, si generano una forza elastica Fel agente sulla manovella e una conseguente coppia elastica
sull’albero motore.
Fel = −K · (lm − l0 )
(4)
Cmol = PO × (K · EP)
(5)
5
6
analisi teorica del moto sul piano orizzontale
Verrà trattato in seguito il metodo effettuato per il calcolo della
costante elastica K in quanto il carico elastico non è una vera molla
lineare, bensì una quantità di elastci opportunamente stabilita.
L’approccio per l’inserimento dell’elemento elastico può essere definito secondo due criteri: minimizzazione dell’energia globale e minimizzazione della coppia motrice massima.
Il risparmio energetico complessivo per la movimentazione può essere ottenuto minimizzando il lavoro compiuto dalle coppie totali del
sistema, calcolato come in 6
Z
Lfin = C(θ) · dθ < Lin
(6)
La minimizzazione delle coppie massime invece impongono il posizionamento dell’elemento elastico in modo che venga rispettata la
condizione in 7.
CmaxIN < CmaxFI
2.3
(7)
scelta delle leggi di moto
Al fine di capire se esista e quanto sia il beneficio dell’aggiunta di
un carico elastico al sistema manovella, per la traiettoria q(t) corrisondente ad una rotazione completa dell’asta attorno al punto fisso
sull’albero motore, sono state implementate diverse tipologie di legge
di moto. Ciascuna di esse presenta derivata prima e seconda (velocità q(t)
˙
e accelerazione q(t))
¨
continue nell’intervallo temporale scelto.
Trascurando in prima analisi l’assenza di componenti di attrito, la
coppia motrice fornita dal motore è da considerarsi proporzionale
all’accelerazione richiesta durante il percorrimento della traiettoria
secondo la relazione
Cmotrice (t) = IT ot ∗ q(t)
¨
(8)
dove con il termine IT ot viene indicata l’inerzia totale del sistema,
somma dell’inerzia del carico in movimento e dell’inerzia propria del
motore. Si sono in primo approccio considerate nulle le coppie di
attrito agenti sul meccanismo.
La prima legge di moto, la più semplice, consiste nel far ruotare il
motore a velocità costante.
2.3 scelta delle leggi di moto
Figura 2: Traiettoria per legge di moto a velocità costante.
Tradotto in termini di coppia motrice, come descritto in 8 ,la coppia fornita dal motore per compiere una traiettoria di questo genere
nel caso ideale si può considerare nulla in quanto è nulla anche l’accelerazione q(t)
¨
della manovella. In prima approsimazione non viene
tenuto conto della coppia Cr (t) sviluppata dal motore al fine di vincere gli attriti dovuti alla distribuzione dei magneti permanenti lungo
la superfice rotorica, alla scarsa lubrificazione e alle variazioni di temperatura alle quali è sottoposto il motore durante il suo utilizzo.
Possiamo quindi dedurne, ma verrà in ogni caso verificato in seguito, che l’introduzione di un carico elastico in queste condizioni di
lavoro, sia un’aggravante in termini di energia spesa dal motore per
compiere la traiettoria imposta.
Le successive leggi di moto analizzate permettono di eseguire la
stessa traiettoria con componenti di velocità e di accelerazione ben diverse dalla precedente. Per confrontarle si fa riferimento ai coefficienti
di velocità e accelerazione di ciascuna di esse, come riportato in Tab. 1
e ottenuti dallo studio di leggi di moto pseudo-normalizzate(alzata
non unitaria q1 − q0 in tempo unitario t1 − t0):


q0 = 0




 q1 = 2 · π

t0 = 0





t1 = 1
(9)
Quello che risulta interessante confrontare per il tipo di studio effettuato è il coefficente di accelerazione, dato che quest’ultima oltre
alla generazione della coppia, è causa di disturbi vibratori sul siste-
7
8
analisi teorica del moto sul piano orizzontale
ma. Nella tabella sono riportati i coefficienti per una legge di moto
normalizzata.
Cv-max
Ca-max
CJ-max
Polinomiale 3
1.5
6
∞
Trapezoidale
2
8
32
Armonica
1.57
4.9
∞
Cicloidale
2
6.28
40
1.87
5.7
60
TRAIETTORIA
Polinomiale 5
Tabella 1: Parametri caratteristici delle leggi di moto.
La costruzione di ciascuna di esse è riportata nel paragrafo successivo.
• Trapezia in velocità: presenta due discontinuità in accelerazione e viene sfruttata per dimostrare la necessità di un profilo q(t)
¨
continuo per lo studio del problema;
Figura 3: Traiettoria per legge di moto trapezoidale in velocità.
• Polinomiale di terzo grado: l’accelerazione ha un profilo di tipo
rettilineo continuo nel tempo e presenta simmetria per quanto
riguarda accelerazione e decelerazione massime. Il motore dovrà quindi fornire la coppia massima (in termini di modulo) in
avvio e in arresto della movimentazione;
2.3 scelta delle leggi di moto
Figura 4: Traiettoria per legge di moto polinomiale di terzo grado.
• Armonica: l’utilizzo della coppia motrice è lo stesso presentato
in precedenza per la legge Polinomiale con la differenza che
la relazione tra accelerazione e tempo è di tipo cosinusoidale,
ottenendo un’andamento più “dolce” rispetto alla precedente;
Figura 5: Traiettoria per legge di moto armonica.
• Cicloidale: è la legge con andamento in accelerazione più “dolce” delle precedenti; la coppia motrice richiesta è ben distribuita
lungo tutto l’asse temporale con andamento sinusoidale che garantisce coppie nulle in avvio e arresto (con le opportune ipotesi
fatte riguardo le coppie di attrito).
9
10
analisi teorica del moto sul piano orizzontale
Figura 6: Traiettoria per legge di moto cicloidale.
• Polinomiale di quinto grado: è la legge con andamento in accelerazione paragonabile a quello della legge di moto Cicloidale
Figura 7: Traiettoria per legge di moto polinomiale di quinto grado.
3
I M P L E M E N TA Z I O N E M AT L A B
In questo capitolo viene presentata l’implementazione di un codice matlab per
lo studio della soluzione ottimale per il sistema teorico scelto, confrontando i
risultati ottenuti al variare della legge di moto di comando.
3.1
codice matlab
Il codice Matlab implementato per la simulazione esegue la stessa sequenza di passaggi presentati per l’analisi teorica. Vengono definiti i
punti e le dimensioni del modello per mezzo della notazione vettoriale sul piano “XY” e le prove sono effettuate con diverse leggi di moto
che regolano la posizione della manovella in una rotazione completa
attorno al punto fisso O.
In un primo foglio di lavoro sono stati inseriti tutti i dati del modello da controllare e sarà richiamato all’interno di tutte le funzioni e
i fogli di calcolo successivi. Vengono specificati:
• lunghezza dell’asta espressa in metri
• massa dell’asta espressa in chilogrammi
• distanza di fissaggio della molla sull’asta espressa in metri
• lunghezza libera della molla espressa in metri
• lunghezza libera della molla espressa in chilogrammi al metro
Come riportato in appendice, in prima analisi si è studiato il comportamento della molla al variare della posizione del punto di fissaggio a telaio, mantenendo costante il valore K e il punto di fissaggio P
sulla manovella. Sono stati definiti due vettori chiamati xE e yE tali
che
xEmin = yEmin = −0.5m ;
xEmax = yEmax = 0.5m
(10)
rappresentino le coordinate in ascissa e ordinata minime e massime
entro il quale punto teorico di fissaggio può spostarsi. Per visualizzare graficamente la coppia esercitata dalla molla sull’albero motore,
11
12
implementazione matlab
sono state implementate le equazioni teoriche creando la funzione
matlab riportata in coda al paragrafo 3.2.
Per lo studio del comportamento del sistema sono stati implementati due cicli for concatenati, uno per la gestione delle coordinate in
ascissa del punto E, e uno per quelle in ordinata. Supponendo di mantenere costante la coordinata in ascissa, vengono fatte variare una per
volta le coordinate yE del punto per graficare l’andamento della coppia della molla.
La forza generata istante per istante durante il ciclo di movimentazione viene calcolata come in 11
Fel(1, i) = k ∗ (xE(j) − P(1, i)) ∗ ((lm(i) − l0 )/lm(i));
Fel(2, i) = k ∗ (yE(jj) − P(2, i)) ∗ ((lm(i) − l0 )/lm(i));
(11)
le quali rappresentano rispettivamente la componente in ascissa e
ordinata della forza elastica al variare della posizione della manovella e conseguentemente del punto P; vista la rotazione sul piano
del sistema manovella-molla, la componente Fel(3, i) giacente sull’asse verticale risulta costantemente nulla. Inoltre per ottenere la giusta
dimensione della forza generata è stato inserito un fattore di scala
((lm(i) − l0 )/lm(i))
(12)
che tiene conto della variazione istantanea della molla rispetto alla sua lunghezza libera l0. Per conoscere l’entità della forza elastica
istantanea è sufficiente applicare il Teorema di Pitagora tra le due
componenti appena calcolate
FEL(i) = sqrt(Fel(1, i)2 + Fel(2, i)2 )
(13)
Per ottenere la coppia elastica applicata sull’albero motore si effettua la moltiplicazione “Forza per il braccio” dove per braccio si
intende la distanza tra asse motore e forza applicata, letta perpendicolarmente all’asse direzionale della forza stessa. In questo caso
avendo già scomposto la forza nelle due direzioni perpendicolare, e
conoscendo le componenti cartesiane dei punti di fissaggio della molla, è sufficiente effettuare il prodotto cartesiano dei vettori posizione
del punto P di fissaggio sulla manovella e del vettore forza Fel.
Cmol(:, i) = −cross(P(:, i), Fel(:, i));
(14)
3.1 codice matlab
Per semplicità di rappresentazione il segno negativo della forza
elastica è stato inserito nel calcolo finale della coppia. Il vettore Cmol
calcolato in 12 rappresenta nella sua terza componente l’andamento temporale della coppia generata dalla molla durante un ciclo di
rotazione completa della manovella attorno al punto di fissaggio a
motore O.
Tale trattazione matematica permetterebbe di calcolare la coppia
fornita dalla molla per ogni sua condizione di lavoro anche nel caso
ideale di molla con lunghezza iniziale nulla, l0 = 0. In ambiente reale
però questa assunzione non sarà valida perciò si è inserito anche nel
codice di calcolo un controllo sulla lunghezza istantanea della molla.
Nel caso il calcolo effettuato sulla lunghezza lm della molla fornisca
un valore inferiore alla sua lunghezza libera l0 , la forza generata e
conseguentemente la coppia, vengono forzate al valore 0
if lm(i) <= l0
{
Fel(1, i) = 0;
Fel(2, i) = 0;
(15)
Cmol(:, i) = [0, 0, 0];
}
Di seguito vengono riportato gli andamenti della coppia ottenuti
variando i punti di fissaggio a telaio della molla, nel caso di una
traiettoria di moto a velocità costante come in fig. 2.
Figura 8: Coppia fornita dalla molla in funzione del punto di aggancio a
telaio xE=-0.5m.
13
14
implementazione matlab
Figura 9: Coppia fornita dalla molla in funzione del punto di aggancio a
telaio xE=-0.2m.
Figura 10: Coppia fornita dalla molla in funzione del punto di aggancio a
telaio xE=0m.
3.1 codice matlab
Figura 11: Coppia fornita dalla molla in funzione del punto di aggancio a
telaio xE=0.2m.
Come si può visualizzare nei grafici d’esempio, la traslazione del
punto di fissaggio a telaio nelle coordinate x genera una amplificazione o riduzione del valore di coppia massima generata dalla molla
sull’albero motore. La traslazione del medesimo punto lungo le coordinate y produce uno spostamento del punto di massimo della coppia in termine di posizione relativa della manovella. In alcuni esempi
come in fig. 11 e 9 si notano dei tratti costanti nulli, dovuti al fatto
che la molla durante il ciclo di lavoro abbia assunto una dimensione
teorica inferiore a quella libera. La lunghezza dei tratti di coppia nulla dipende dalla porzione di angolo di rotazione in cui la molla si è
trovata in tale condizione.
15
16
implementazione matlab
3.2
calcolo del punto di fissaggio
Considerando il comportamento della molla appena dimostrato, è
necessario rispondere alla domanda su quale sia il miglior punto di
aggancio a telaio per il sistema preso in considerazione. In prima approssimazione sono state confermate le ipotesi fatte precedentemente per lo studio teorico: il punto di aggancio della molla sull’asta
P è completamente definito, la costante di elasticità K della molla è
costante e indipendente dalle caratteristiche di lavoro (temperature,
posizione della manovella, velocità di rotazione), il miglior punto di
fissaggio a telaio va ricercato nel piano descritto dai limiti di 10.
• il punto di aggancio della molla sull’asta P è completamente
definito;
• la costante di elasticità K della molla è costante e indipendente dalle caratteristiche di lavoro (temperature, posizione, entità
della deformazione);
• il punto di fissaggio a telaio E è rinchiuso entro i limiti fissati in
8.
Come già discusso in precedenza il punto ottimale sarà quello che
complessivamente consentirà di compiere la traiettoria desiderata con
uno sfruttamento minore del motore. Tra le due caratterizzazioni riportate in 6 e 7 riguardo il lavoro sviluppato dal motore per eseguire la traiettoria, si è scelta la prima in quanto è possibile descrivere
il lavoro come il prodotto della coppia totale del sistema per lo spostamento effettuato dalla manovella; posizione che nel caso di studio
non ha rapporto lineare con il tempo, bensì dipende dalla legge di
moto adottata.
La variabile Lav svolge la funzione di calcolare l’area sottesa dalla curva di coppia totale C1. In questo caso non essendoci forzanti
esterne sul sistema, quest’ultima è data dalla somma delle coppie
sviluppate dalla molla e delle coppie inerziali del sistema. Le coppie
inerziali sono direttamente proporzionali all’accelerazione sviluppata
per la movimentazione in base alla tipologia di legge di moto scelta
Ci = I ∗ acc;
(16)
3.2 calcolo del punto di fissaggio
dove l’inerzia totale del sistema I è la somma dell’inerzia dell’asta (incastrata ad una distanza l = 0.08m da un suo estremo) e
dell’inerzia del motore utilizzato (dichiarata dal costruttore).
for i = 1 : n − 1
Lav = Lav + abs(C(i) ∗ (theta(i + 1) − theta(i)));
end
if Lav < LMax
LMax = Lav;
(17)
Pos(1) = xE(j);
Pos(2) = yE(jj);
else
LMax = LMax;
end
Il ciclo if del codice in 17 permette di ottenere le coordinate del
punto di fisaggio xE e yE che garantisce il minor valore di lavoro che
dev’essere compiuto dal motore, tra le varie combinazioni di punti
entro i limiti stabiliti in precedenza.
In un secondo momento sono stati tolti i limiti riguardo il punto
di fissaggio a telaio per far calcolare automaticamente al programma
quali siano le coordinate del punto E che garantiscano il lavoro minimo al motore. E’ stata utilizzata la funzione fminsearch del software
MATLAB
[PosPE, Lav] = fminsearch(@Lavoro, [1, 1]);
(18)
la quale accetta dei parametri in ingresso (in questo caso le coordinate xE e yE) e li gestisce all’interno della funzione Lavoro in modo
da minimizzare la variabile di uscita (Lav). Le variabili di ingresso e
quella di uscita vengono utilizzate con la stessa implementazione descritta in precedenza per il calcolo delle coppie e del punto di lavoro
minimo e salvate rispettivamente come coordinate cartesiane espresse in metri nel vettore bi-dimensionale PosPE e coem valore numerico
espresso in Joule in Lav.
Si suppone che per alcune probelmatiche pratiche (non presenti nel
modello utilizzato ma sicuramente prossibili in ambito industriale,
17
18
implementazione matlab
come le problematiche di spazio) il punto di fissaggio della molla
sulla manovella sia sempre costante e determinato a priori. Se così
non fosse, è stato predisposto l’inserimento della distanza di fissaggio
del punto P dal centro di rotazione tra le variabile in ingresso alla
funzione in 30.
Listing 1: Funzione Lavoro in codice Matlab.
function Lav=Lavoro(variabili)
start
xE=variabili(1);
yE=variabili(2);
%rm=variabili(3); %Eventuale punto di aggancio
P=zeros(3,n);
Q=zeros(3,n);
Fp=[0,m*9.81,0]’;
Lav=0;
for i=1:n
xP=rm*cos(teta(i));
yP=rm*sin(teta(i));
P(1,i)=xP;
P(2,i)=yP;
P(3,i)=0;
lm(i)=sqrt((xE-P(1,i))^2+(yE-P(2,i))^2);
% Se la molla in alcune posizioni ha lunghezza minore di
quella a riposo, la coppia fornita dalla forzante
elastica è nulla
if lm(i)<=l0
Cmol(:,i)=[0,0,0];
else
Fel(1,i)=k*(xE-P(1,i))*((lm(i)-l0)/lm(i));
Fel(2,i)=k*(yE-P(2,i))*((lm(i)-l0)/lm(i));
Fel(3,i)=0;
FEL(i)=sqrt(Fel(1,i)^2+Fel(2,i)^2);
Cmol(:,i)=-cross(P(:,i),Fel(:,i));
3.2 calcolo del punto di fissaggio
19
end
i=i+1;
end
Ci=I*acc;
Cr=0.008*vel;
%CoppieInerzia
C=Cmol+Ci+Cr;
%CoppiaTotale
%CoppieAttrito
for j=1:n-1
Lav=Lav+abs(C(j)*(teta(j+1)-teta(j)));
end
return
20
implementazione matlab
3.3
risultati teorici
I codici descritti nel paragrafo precedente permettono di visualizzare
i comportamenti teorici del sistema durate la fase di lavoro in quanto
sono state considerate grandezze effettive del sistema reale. Vengono
ora riportati e commentati i risultati ottenuti mediante simulazioni
delle leggi di moto descritte in precedenza.
3.3.1
Traiettoria a velocità costante
Come si era intuito nella trattazione analitica del problema, qualsiasi
carico elastico inserito in un sistema in movimento a velocità costante, può essere visto come una coppia di disturbo per il sistema stesso.
Trovandosi nel caso teorico di coppia inerziale nulla, l’eventuale motore dovrebbe fornire una coppia totale pari a quella della sola coppia
esercitata dal carico elastico.
Figura 12: Posizione temporale dei punti di fissaggio della molla.
Considerando infatti l’esempio di una molla di costante
K = 40 N/m e lunghezza libera l0 = 0.08 m, in fig. 12 si nota come il
punto ideale di fissaggio si trovi all’incirca sull’origine degli assi, più
precisamente a
xE = 4.6756e−7 m
yE = −1.1509e−5 m
(19)
La lunghezza della molla è quindi pressochè costante nel tempo
o allo stesso modo costante in riferimento alla posizione assunta
dall’asta rotante (fig. 26).
3.3 risultati teorici
Figura 13: Lunghezza della molla in funzione della posizione di manovella.
Il lavoro complessivamente compiuto dal motore in questo specifico caso è l’equivalente di quello compiuto per contrastare la coppia
elastica, L = 2.4880e−4 J.
Figura 14: Coppie teoriche del sistema con legge di moto a velocità costante.
3.3.2
Traiettoria trapezoidale in velocità
Per la legge di moto trapezoidale in velocità si è inizialmente scelto
come in fig. 3, un profilo simmetrico con tratti di discesa e salita pari
al 20% del tempo di ciclo, corrispondenti a
ta = 0.2 s
td = 0.2 s
(20)
Con questa scelta i tratti rettangolari di accelerazione e decelerazione sono troppo limitati nel tempo (e conseguentemente nella posizione), quindi per la molla scelta in prima analisi con K = 40 N/m
21
22
implementazione matlab
e l0 = 0.08 m non è possibile tovare alcuna punto che dimunuisca
l’energia spesa nel motore.
Infatti sarebbe necessario trovare una configurazione per la quale la
molla sia in trazione per una porzione di angolo giro molto limitata
(in avvio corrispondente alla posizione di manovella letta al tempo
ta ) e fornisca coppia nulla per il periodo rimanente (corrispondente
al tratto di moto a velocità costante).
Come nel caso di legge di moto a velocità costante, il punto ottimale
si trova all’incirca sull’origine degli assi, e più precisamente a
xE = −0.5495e−5 m
yE = −0.1136e−5 m
(21)
in una configurazione per cui il motore deve generare quasi l’intera coppia corrispondente alle coppie inerziali, con un dispendio
energetico pari a L = 0.3772 J.
Figura 15: Coppie teoriche del sistema con legge di moto trapezoidale in
velocità.
E’ possibile invece modificare le proprietà della legge di moto per
dilatare i tempi di accelerazione e decelerazione, mantenendo invariati i valori di K e l0 al fine di ottnere qualche contributo di coppia.
ta = 0.4 s
td = 0.4 s
(22)
3.3 risultati teorici
Figura 16: Traiettoria per legge di moto trapezoidale in velocità modificata.
Come si vede in fig. 17 nascono ora delle coppie elastiche che si
oppongono a quelle inerziali, permettendo al motore di compiere lo
stesso ciclo di lavoro con un dispendio energetico globale di entità
inferiore.
Figura 17: Coppie teoriche del sistema con legge di moto trapezoidale in
velocità modificata.
Le forme d’onda di fig. 17 sono state ottenute con la molla teorica
fissata nel punto ideale di coordinate
xE = −0.0314 m
yE = 0.0009 m
(23)
ottenendo una riduzione del lavoro complessivo a L = 0.3392 J
contro un lavoro nel caso senza carico elastico pari a
Liniziale = 0.6875 J.
23
24
implementazione matlab
3.3.3
Traiettoria polinomiale con polinomio di terzo grado
Il problema principale della traiettoria otteuta con il polinomio di terzo grado, è la presenza del picco massimo dell’accelerazione all’inizio
e alla fine della legge di moto, come mostrato in fig. 4.
Ci si potrebbe aspettare che il picco di coppia generato della molla
si trovi in corrispondenza dell’inizio della traiettoria; perchè questo
avvenga il punto di fissaggio a telaio dovrebbe trovarsi all’interno del
secondo quadrante del piano cartesiano, cioè con coordinate xE positive e yE negative, come si può intuire dalle forme d’onda della fig. 8.
Da quest’ultima e dalle fig. 9- 10- 11, si nota però come l’andamento
nel tempo della coppia elastica (salvo tratti nulli) sia pressochè sinusoidale; se il picco fosse posizionato come dichiarato sopra, nella fase
di decelerazione della legge di moto, il motore si troverebbe a fornire
una coppia negativa data dalla somma tra quella massima inerziale e
quella massima elastica.
In tal caso il risultato della sperimentazione sarebbe in netto contrasto con gli obiettivi posti inizialmente; un risparmio energetico
all’avvio del sistema reale comporterebbe un aggravio nella fase di
arresto.
Effettuando la simulazione via software e impostando
K = 40 N/m e l0 = 0.08 m nei parametri della molla, il punto di
fissaggio E infatti si trova in coordinate
xE = −0.0155 m
yE = 0.0002 m
(24)
Figura 18: Lunghezza della molla in funzione della posizione di manovella.
3.3 risultati teorici
Con questa particolare configurazione, la molla subisce un notevole
allungamento (fig. 26) e si trova sempre in condizione di tensione per
tutto il ciclo di lavoro in quanto la lunghezza minima da essa assunta
è lmin = 0.1995, maggiore della lunghezza a riposo.
La distribuzione delle coppie in funzione della posizione di manovella è riportata in fig. 19 e in tale configurazione l’energia spesa dal
motore è L = 0.2988 J, contro un lavoro Liniziale = 0.5598 J nel caso di
sistema libero senza carico elastico.
Figura 19: Coppie teoriche del sistema con legge di moto polinomiale di
terzo grado.
3.3.4
Traiettoria armonica
La traiettoria armonica presentata già in fig. 5, soffre in qualche modo
delle stesse problematiche analizzate per la legge di moto di tipo
polinomiale.
I picchi di accelerazione, positiva e negativa, sono posti all’inizio
e alla fine della traiettoria ma, a differenza della legge di moto polinomiale, l’andamento temporale dell’accelerazione, e quindi della
coppia richiesta al motore, risulta più dolce e di carattere cosinusoidale.
Anche in questo caso, e in maniera ancora più efficiente che nel caso
precedente, l’impiego di un carico elastico fissato in un punto preciso tale da garantire il picco massimo della coppia elastica all’inizio
della traiettoria con valore in modulo uguale alla coppia inerziale,
garantirebbe un lavoro pressochè nullo nel punto iniziale ma addirittura doppio nel punto finale. Si riscontrerebbero quindi aumenti sia
in termini di lavoro complessivo ma soprattutto in termini di coppia
motrice massima.
25
26
implementazione matlab
In fig. 20 si vuole evidenziare il problema riscontrato riportando
l’andamento delle coppie in gioco per una scelta di punto di fissaggio
xE = −0.01 m
yE = 0.035 m
(25)
scelto al fine di limitare la coppia motrice all’avvio della movimentazione.
Figura 20: Problema di extra-coppia con legge di moto armonica.
Il punto ottimale che limita il lavoro del motre è invece stato calcolato nelle sue coordinate
xE = −0.0189 m
yE = 0.0003 m
(26)
le quali con i parametri K e l0 consentono di mantenere la molla in
trazione per tutto il movimento della manovella.
Figura 21: Lunghezza della molla in funzione della posizione di manovella.
3.3 risultati teorici
Con questa configurazione non è stato possibile diminuire il valore della coppia motrice massima in quanto il punto di fissaggio
si trova esattamente sull’asse delle ordinate, ma si è verificata una
diminizione complessiva dell’eneria complessiva spesa dal motore.
Il valore iniziale Liniziale = 0.6138 J nel caso di sistema libero senza
carico elastico, si è ridotto ad un valore finale L = 0.2969 J dopo
l’introduzione della molla.
Figura 22: Coppie teoriche del sistema con legge di moto armonica.
27
28
implementazione matlab
3.3.5
Traiettoria cicloidale
La traiettoria cicloidale di fig. 5, per quanto riguarda il profilo di accelrazione, appare come una sinusoide completa quindi intuitivamente,
per le considerazioni effettuate in precedenza, si potrebbe trovare una
forma d’onda che si opponga perfettamente a quella della coppia inerziale. Il ragionamento infatti trova riscontro perfetto se si consideara
l’andamento nel tempo della coppia elastica; nel nostro caso però si
tratta di una coppia elastica in funzione della posizione di manovella.
Figura 23: Coppie teoriche del sistema con legge di moto cicloidale.
Come si nota in fig. 23 infatti, la taiettoria della coppia inerziale
non è più sinusoidale bensì subisce una deformazione, in quanto è
graficata rispetto alla posizione assunta dalla manovella. Rifacendosi
nuovamente alle condizioni di lavoro di K = 40 N/m e l0 = 0.08 m,
il punto ottenuto dall’elaborazione software in 27 non consente l’annullamento totale della coppia motrice.
Questo miglior punto di aggancio consente una riduzione dell’energia spesa dal motore da un valore iniziale Liniziale = 0.9950 J nel caso
di sistema libero senza carico elastico, ad un valore L = 0.3632 J con
l’aggiunta della molla.
xE = −0.0361 m
yE = 0.0006 m
(27)
3.3 risultati teorici
Figura 24: Lunghezza della molla in funzione della posizione di manovella.
3.3.6
Traiettoria polinomiale di quinto grado
La traiettoria polinomiale con polinomio di quinto grado di fig. 7, per
quanto riguarda il profilo di accelerazine, appare cone una sinusoide completa quindi intuitivamente per le considerazioni effettuate in
precedenza già per la legge cicloidale, si potrebbe trovare una forma
d’onda che si opponga perfettamente a quella della coppia inerziale.
Figura 25: Coppie teoriche del sistema con legge di moto polinomiale di
quinto grado.
Come si nota in fig. 25, anche in questo caso la taiettoria della coppia inerziale subisce una deformazione in quanto è graficata rispetto
alla posizione assunta dalla manovella. Rifacendosi alle condizioni di
lavoro di K = 40 N/m e l0 = 0.08 m, per il punto ottenuto dall’elaborazione software non si perviene all’annullamento totale della coppia
motrice.
Il punto di aggancio ottenuto consente tuttavia una riduzione dell’energia spesa dal motore da un valore iniziale
29
30
implementazione matlab
Liniziale = 0.8745 J nel caso di sistema libero senza carico elastico, ad
un valore L = 0.3632 J con l’aggiunta della molla.
xE = −0.0361 m
(28)
yE = 0.0006 m
Figura 26: Lunghezza della molla in funzione della posizione di manovella.
Vengono per chiarezza riepilogati nelle tabelle successive i valori
ottenuti dalla prima analisi teorica del sistema al variare delle leggi
di moto di comando.
xE
yE
LavIN
LavFI
[m]
[m]
[J]
[J]
Costante
0.0047e-4
-0.1151e-4
0
0.249e-3
Trapezia
-0.5495e-5
-0.1136e-5
0.3772
0.3771
TrapeziaMod
-0.0314
0.0009
0.6875
0.3392
Polinomiale3
-0.0155
0.0002
0.5598
0.2988
Armonica
-0.0189
0.0003
0.6138
0.2969
Cicloidale
-0.0361
0.0006
0.9950
0.3632
Polinomiale5
-0.0292
0.0005
0.8745
0.3586
Tabella 2: Dati elastico l=0.08m K=40N/m. (Caso teorico)
3.3 risultati teorici
CmaxIN
CmaxFI
[Nm]
[Nm]
Costante
0
6,22e-1
Trapezia
0.2474
0.2474
TrapeziaMod
0.1649
0.1700
Polinomiale3
0.2375
0.2387
Armonica
0.1953
0.1972
Cicloidale
0.2487
0.1814
Polinomiale5
0.2285
0.1870
Tabella 3: Coppie massime espresse in Nm prima e dopo l’utilizzo di un
elastico con l=0.08m K=40N/m (Caso teorico).
3.3.7
Modifica dei parametri
In tutte le prove sopra effettuate, si è utilizzata una molla teorica di
lunghezza l0 per la quale risulta che essa sia sempre sottoposta a
trazione in tutte le posizioni di manovella. In alcuni casi però la lunghezza finale della molla si presentava maggiore del triplo di quella
a riposo.
Supponendo di non disporre di una molla che garantisca tali sforzi,
sono stati effettuati dei nuovi calcoli inserendo nel codice una lunghezza libera della molla pari a l0 = 0.135 m (non si tratta di un
valore casuale, sarà la lunghezza dell’elastico a disposizione per le
prove con il sistema reale) per vedere se e quali tipi di miglioramento
si possono ottenere.
Senza dilungarsi in una trattazione che comporterebbe le stesse
considerazioni del caso precedente, nel caso di traiettoria a velocità
costante, gli effetti sul sistema sono solo peggiorativi e il punto di
fissaggio ancora una volta risulta pressochè centrato sull’origine degli
assi come in fig. 12.
31
32
implementazione matlab
Figura 27: Posizione temporale dei punti di fissaggio della molla.
La stessa modifica effettuata per la legge di tipo trapezoidale in
velocità invece comporta un miglioramento sia in termini di lavoro
complessivo, sia in termini di coppie massime richieste al motore; si
è scelto di lavorare direttamente con la legge di moto di fig. 16 per le
motivazioni spiegate nel paragrafo precedente.
Figura 28: Coppie teoriche del sistema con legge di moto trapezoidale.
Con questa nuova configurazione infatti si ottiene un miglioramento riguardo l’energia utilizzata dal motore, che si riduce a L = 0.2807 J
e diminiscono i picchi di coppia che si rilevano durante il ciclo: non
è ancora una volta possibile diminuire la coppia di spunto iniziale e
di arresto.
Si è notato inoltre che effettuando prove con diversi valori di costante elastica,all’aumentare del coefficiente K aumenta in modulo il
valore dei picchi di coppia intermedi.
Nel caso di legge polinomiale e con l’utilizzo di un elastico di lunghezza maggiore, pur comportando tratti in cui la molla produrrà
3.3 risultati teorici
valori di coppia nulla, si ottiene come previsto un miglioramento rispetto al caso di moto senza carico elastico.
Ancor più interessante è il confronto tra l’energia spesa dal motore con i due diversi carichi elastici: si calcola in ques’ultimo caso
un dispendio energetico paria a L = 0.2698 J, con conseguente miglioramento rispetto al caso precedente con l0 = 0.08 m paria al
9.7%.
Figura 29: Coppie teoriche del sistema con legge di moto polinomiale di
terzo grado.
Con una legge di tipo armonico si nota come il punto di fissaggio a telaio E si allontani dal centro di rotazione del sistema, nelle
coordinate
xE = −0.0339 m
yE = 0.0003 m
(29)
fornendo condizioni di lavoro per cui la lunghezza della molla risulti inferiore a quella libera, generando delle coppie elastiche riferite
all’albero motore.
33
34
implementazione matlab
Figura 30: Coppie teoriche del sistema con legge di moto armonica.
Dalla fig. 30 si ricava il valore dell’energia totale spesa dal motore
per compiere la rotazione complessiva della manovella, pari a L =
0.2568 J.
Anche in questo caso rispetto alla soluzione con l0 = 0.08 m di fig. 22
si è ottenuto un miglioramento percentuale del 13.5% e la riduzione
dei picchi intermedi di coppia.
Come ci si aspettava dall’analisi sulla tipologia di coppie generate dal
carico elastico, non si è ottenuto alcun beneficio in termini di coppia
massima all’avvio e all’arresto.
Con una legge di tipo cicloidale, come si può notare in fig. 31, si
ottiene un andamento più irregolare della coppia totale richiesta al
motore rispetto a quella del caso in fig. 23. Nonostante ciò si ottiene
un miglioramento sia in termini di energia complessiva, sia in termini
di coppie di picco del sistema:
• l’energia complessiva, da un valore iniziale senza molla di
Liniziale = 0.9950 J, viene ridotta a L = 0.2785 J; risulta inoltre
minore di quella ottenuta nel calcolo con il parametro
l0 = 0.08 m
• il valore di coppia massimo è stato ridotto da Cmax = 0.2487 Nm
a Cmax = 0.1684 Nm con l’inserimento del carico elastico
• il punto di fissaggio a telaio si trova in coordinate
(−0.0602, 0.0001) rispetto al centro di rotazione del motore
Anche per la legge di moto di tipo polinomiale con polinomio di
quinto grado si sono ottenuti gli stessi miglioramenti rispetto al caso
precedente.
3.3 risultati teorici
Figura 31: Coppie teoriche del sistema con legge di moto cicloidale.
Vengono per chiarezza riepilogati nelle tabelle successive i valori
ottenuti dalla seconda analisi teorica del sistema al variare delle leggi
di moto di comando.
xE
yE
LavIN
LavFI
[m]
[m]
[J]
[J]
Costante
0.0047e-4
-0.1151e-4
0
1.474e-4
Trapezia
-0.2528e-4
-0.3136e-4
0.3772
0.3775
TrapeziaMod
-0.0510
0.0003
0.6875
0.2807
Polinomiale3
-0.0283
0.0003
0.5598
0.2698
Armonica
-0.0339
0.0003
0.6138
0.2568
Cicloidale
-0.0602
0.0001
0.9950
0.2785
Polinomiale5
-0.0524
0.0007
0.8745
0.2761
Tabella 4: Dati elastico l=0.135m K=40N/m (Caso teorico)
35
36
implementazione matlab
TmaxIN
TmaxFI
[Nm]
[Nm]
Costante
0
0.369e-4
Trapezia
0.2474
0.2475
TrapeziaMod
0.1649
0.1661
Polinomiale3
0.2375
0.2386
Armonica
0.1953
0.1964
Cicloidale
0.2487
0.1684
Polinomiale5
0.2285
0.1780
Tabella 5: Coppie massime prima e dopo l’utilizzo di un elastico con
l=0.135m K=40N/m (Caso teorico).
3.3.8
Influenza delle coppie d’attrito
Per la rappresentazione ottimale di un sistema fisico reale sono state
inserite nell’equazione della dinamica della manovella anche le coppie d’attrito, considerando solo quelle appartenenti all’organo motore
in quanto non ci sono altri organi in movimento.
Attravero un motore Allen-Bradley utilizzato sucessivamente per
l’analisi sperimentale, è stato valutato l’ordine di grandezza del coefficiente d’attrito B che regola l’intervento della coppia di attrito in
funzione della velocità di movimento.
Ricordando l’equazione che regola la coppia di un motore brushless
Tm (θ) = Jθ¨ + Bωθ˙
(30)
e considerando l’assenza di carico sull’albero motore, attraverso i
dati di Velocità e Coppia (Corrente) ottenuti dal motore scelto per la
successiva fase sperimentale si è stimato il valore del coefficiente di
attrito
B = 0, 004
N
rad/s
(31)
Per motivi che verranno spiegati nel capitolo finale l’analisi comprensiva delle coppie d’attrito è stata effettuata per leggi di moto con
periodo di ripetizione pari a T = 0.5s.
3.3 risultati teorici
Vengono riassunti in Tab. 6 e Tab. 7 i riultati ottenuti dall’analisi
con l’inserimento di coppie di attrito.
Figura 32: Coppie teoriche del sistema con legge di moto a velocità costante
in presenza di attrito.
Figura 33: Coppie teoriche del sistema con legge di moto trapezoidale in
presenza di attrito.
37
38
implementazione matlab
Figura 34: Coppie teoriche del sistema con legge di moto trapezoidale
modificata in presenza di attrito.
Figura 35: Coppie teoriche del sistema con legge di moto polinomiale con
polinomio di terzo grado in presenza di attrito.
Figura 36: Coppie teoriche del sistema con legge di moto armonica in
presenza di attrito.
3.3 risultati teorici
Figura 37: Coppie teoriche del sistema con legge di moto cicloidale in
presenza di attrito.
Figura 38: Coppie teoriche del sistema con legge di moto polinomiale con
polinomio di quinto grado in presenza di attrito.
La coppia d’attrito agisce proporzionalmente all’andamento della
velocità; nella maggior parte dei casi si traduce in una traslazione
positiva in termini di coppia motrice di riferimento.
Per tal motivo, come si nota dagli ultimi grafici riportati, la coppia
motrice di spunto risulta in modulo maggiore di quella di arresto.
39
40
implementazione matlab
xE
yE
LavIN
LavFI
[m]
[m]
[J]
[J]
Costante
-0.0021
-0.0036
0,3158
0.3158
Trapezia
-0.0113
-0.0223
1.8100
1.7188
TrapeziaMod
-0.1329
-0.0161
2.9314
1.245
Polinomiale3
-0.0641
-0.0303
2.2708
1.1633
Armonica
-0.0716
-0.0338
2.4842
1.1296
Cicloidale
-0.1337
-0.0369
4.0054
1.3591
Polinomiale5
-0.1100
-0.0415
3.5256
1.3082
Tabella 6: Dati elastico l=0.08m K=40N/m (Caso teorico con attrito).
CmaxIN
CmaxFI
[Nm]
[Nm]
Costante
0.0503
0.0731
Trapezia
1.0499
1.0802
TrapeziaMod
0.7422
0.7133
Polinomiale3
0.9500
1.0477
Armonica
0,7853
0.8884
Cicloidale
1.046
0.8563
Polinomiale5
0.9573
0.8695
Tabella 7: Coppie massime espresse senza e con l’utilizzo di un elastico con
l=0.08m K=40N/m (Caso teorico con attrito).
3.3 risultati teorici
Confrontando i valori della coordinta yE di Tab. 6 con quelli di
Tab. 2, è subito evidente che il punto di fissaggio a telaio tende ad
allontanarsi dall’asse delle ordinate proporzionalmente all’entità dell’influenza della coppia d’attrito.
Se nel primo caso di studio per un sistema ideale la coppia generata
dall’elemento elastico è pressocchè simmetrica rispetto alla rotazione
completa (rispetto all’asse Posizione), nel caso di sistema con attrito la traslazione della coordinata yE elimina questa simmetria per
compensare la componente costante della coppia motrice.
Il criterio scelto per il calcolo del punto di fissaggio a telaio dell’elemento elastico permette di ottenere una riduzione dell’energia
globale spesa dal sistema per la movimentazione, ma non controlla
in alcun modo l’intensità delle coppie massime sviluppate.
In quasi tutti i casi analizzati infatti come in Tab. 7 la coppia motrice
massima finale è superiore a quella iniziale.
E’ tuttavia interessante verificare come l’aggiunta dell’elemento elastico nel modello incrementi l’efficienza globale del sistema, calcolata
come in 32.
=
LIN − LFI
· 100
LIN
(32)
I valori dell’efficienza ottenuti nel caso di legge di moto con
T = 0.5s e lunghezza libera dell’elastico l0 = 0.08 m, in presenza di
attrito, sono riportati nella tabella a seguire.
41
42
implementazione matlab
[%]
Costante
0
Trapezia
5.04
TrapeziaMod
57.53
Polinomiale3
48.77
Armonica
54.53
Cicloidale
66.07
Polinomiale5
62.89
Tabella 8: Efficienza percentuale del sistema con l’aggiunta dell’elemento
elastico l=0.08m K=40N/m (Caso teorico con attrito).
Per le leggi di moto cicloidale e polinomiale di quinto grado si assiste anche ad un a riduzione delle coppie massime richiesta al motore.
Tal motivo lascia supporre che questa ultime due siano le più predisposte per l’utilizzo di tale metodo per l’ottimizzazione dalla dinamica dei meccanismi.
4
A N A L I S I S P E R I M E N TA L E
In questo capitolo si vuole caratterizzare lo studio teorico effettuato in precedenza per un sistema reale costituito da un’asta di alluminio posta in rotazione sul piano verticale da un motore brushless con azionamento AllenBradley. Viene descritto il sistema fisico e l’ambiente di sviluppo ultilizzato
per il controllo e la movimentazione.
4.1
setup sperimentale
Il Setup completo per la caratterizzazione dell’analisi teorica su un
sistema reale è costituito da un’asta di alluminio che svolge la funzione di manovella descritta precedentemente e un motore brushless
della casa Allen-Bradley per la sua movimentazione, il tutto allocato
all’interno di un armadio chiuso per la sicurezza dell’utente.
All’interno di esso sono collocati anche gli azionamenti per il motore e il controllore Allen-Bradley per la comunicazione tra PC di
controllo e azionamenti.
Figura 39: Asta in alluminio
L’asta di fig. 39 è calettata sull’albero motore nel punto indicato
dalla lettera A; tutte le dimensioni sono riportate in tab. 9.
43
44
analisi sperimentale
Dimensione
Valore
Unità di misura
Lunghezza (L)
0.38
[m]
Larghezza (h)
0.03
[m]
Spessore (s)
0.008
[m]
Diametro foro (d)
0.006
[m]
Tabella 9: Dimensioni Asta
Per il calcolo dell’inerzia del carico è necessario conoscere la massa
dell’asta
m = ρ · L · h · s = 0.25kg
(33)
con ρ = 2700kg/m3 , densità dell’alluminio.
Applicando il teorema di Huygens-Steiner è ora possibile calcolare
l’inerzia della manovella rotante sul piano verticale attorno al punto
fisso A,
I=
1
· m · L2 + m · l2 = 0.0045kg ∗ m2
12
(34)
dove con l si indica la distanza tra il centro di rotazione e il centro
di massa dell’asta stessa. Ad una distanza di circa 200mm dal punto
di rotazione dell’asta è stato fissato il gancio su cui fissare il carico
elastico che comporta un’ulteriore aumenta dell’inerzia della massa
rotante; con un peso del gancio paria a mg = 0.02kg l’inerzia totale
risulta
I = 0.0063kgm2
4.1.1
(35)
Determinazione della costante elastica
Per simulare l’azione della molla si è scelto di utilizzare dei semplici
elastici da agganciare opportunamente tra asta e telaio. Possono essere considerati una buona approssimazione in quanto non vengono
mai estesi fino al loro limite di rottura, bensì lavorano su estensioni
medie della lunghezza (da variazione nulla della lunghezza a circa
metà dell’estensione massima). Con questa definizione si può quindi assumere che la costante elastica K si mantenga costante durante
tutto il ciclo di utilizzo dell’elastico.
4.1 setup sperimentale
Per calcolare la costante elastica è stato agganciato un peso di massa M = 250g ad un’estremita dell’elastico e si è misurato il suo allungamento finale sotto l’azione della sola forza di gravità agente sul
peso. Indicando con Fp la forza peso dell’oggetto, è noto che
Fp = M · g = 2.45N
(36)
Partendo da una lunghezza libera dell’elastico
l0 = 0.08m
(37)
e applicando il peso indicato in precedenza, la lunghezza finale
dell’elastico è stata misurata pari a
lf = 0.32m
(38)
quindi c’è stato un allungamento totale ∆l = 0, 24m.
Il valore della costante elastica è risultato
K=
F
N
= 10.2
∆l
m
(39)
Lo studio teorico del problema imponeva che anche la molla agisse
completamente sul piano orizzontale. Per l’impossibilità costruttiva
di porre il punto di fissaggio a telaio sullo stesso piano di rotazione dell’asta, sono stati costruiti due ganci (G1 e G rispettivamente
posizionati sull’asta e sul telaio come in fig. 40 creando un piano di
rotazione dell’alastico distante 30mm da quello dell’asta e parallelo
ad esso.
Figura 40: Posizione dei ganci per il fissaggio degli elastici.
45
46
analisi sperimentale
4.2
impianto allen-bradley
Il controllore utilizzato in questo impianto è il modello ControlLogix 5561TM, prodotto della casa Allen-Bradley (numero di catalogo
1756-EN2T 1756 10/100 Mbps Ethernet Bridge, Twisted-Pair Media)
in grado di pilotare fino a 8 driver contemporaneamente per un totale
di 28 assi, e un numero illimitato di assi controllati in coppia velocità
o VHz. E’ compatibile con gli standard CIP Sync e CIP Motion.
Ad esso sono collegati i moduli per la comunicazione tra controlloreAzionamenti-PC e per la gestione degli input e output:
• 2094-EN02D-M01-S0 Kinetix 6500 Single Axis Ethernet Drive
1756-OB32 32 Point 10V-31.2V DC Output
• 1756-IB32/B Point 10V-31.2V DC Input
• 1756-OB32 32 Point 10V-31.2V DC Output
L’impianto riportato in fig. 41, costituisce la parte di controllo per
il sistema utilizzato per svolgere la parte sperimentale del progetto.
Figura 41: Impianto Allen-Bradley.
4.2 impianto allen-bradley
47
La MP-Series è una tipologia di motori brushless a bassa inerzia
della casa Allen-Bradley, di dimensioni ridotte ma in grado di fornire valori significativi di coppia necessari in sistemi dinamici ad alte
prestazioni.
Figura 42: Motore brushless MP-Series.
Sono disponibili a catalogo in nove diverse tipologie e garantiscono
una coppia di stallo continua nell’intervallo di valori 0,26-163 Nm e
una coppia massima da 0.77 a 278 Nm.
Sono dotati di un encoder con una scelta di singolo o multigiro che
fornisce feedback ad alta risoluzione della posizione assoluta all’interno di 4096 giri. Le caratteristiche dei motori a disposizione per la
sperimentazione sono riportate in Tab. 10.
MPL-B330P
MPL-B420P
Unità di misura
Velocità nominale
5000
5000
[rpm]
Potenza nominale
1.8
1.9
[kW]
0.00012
0.00026
[kg*m2 ]
Coppia di Stallo Continua
4.18
4.74
[Nm]
Coppia di Stallo Picco
11.1
13.5
[Nm]
Corrente di Stallo Continua
6.1
6.4
[Nm]
Corrente di Stallo Picco
19.0
22.0
[Nm]
Inerzia rotorica
Tabella 10: Datasheet Motori
48
analisi sperimentale
4.3
ambiente di sviluppo rslogix5000
Logix, una delle tecnologie principali dell’Architettura Integrata della
casa Allen-Bradley, è una piattaforma di controllo con un ambiente di sviluppo progettato appositamente per garantire prestazioni
eccezionali nel campo dell’automazione.
Il software di progettazione e configurazione RSLogix 5000 è uno
dei prodotti più diffusi di questa categoria e supporta applicazioni
di controllo discreto, controllo batch e di processo, controllo assi, sicurezza e azionamenti, offrendo un’interfaccia semplice ed intuitiva,
e conforme alla normativa IEC 61131-3 (International Standard for
programmable logic controllers). Il software fornisce editor di logica
ladder, testo strutturato, diagramma a blocchi funzione e diagramma
funzionale sequenziale.
Con RSLogix 5000 v.20 si hanno degli ultieriori vantaggi rispetto alle
versioni precedenti:
• utilizzare un unico pacchetto software di progettazione e configurazione
• semplificare lo sviluppo di soluzioni di controllo complesse
• avviamento più rapido e riduzione dei tempi di messa in servizio delle macchine
• ottenere la configurazione automatica dei dispositivi (ADC), la
quale consente di semplificare la sostituzione dei componenti
del sistema in caso di guasti del dispositivo
• funzione Module Discovery, la quale consente le configurazione
automatica del numero di catalogo e del numero di slot dei
dispositivi di controllo aggiunti al sistema
• integrazione più semplice dei dispositivi su rete EtherNet/IP
con l’utilizzo di un foglio dati elettronico
• controllo della velocità tramite asse master, il quale garantisce
ottime funzionalità di sincronizzazione (es. controllo dinamico
dei movimenti di robot, controllo assi camma su camma)
4.3 ambiente di sviluppo rslogix5000
4.3.1
Programma di controllo
La logica ladder è un linguaggio di programmazione che rappresenta un programma attraverso un diagramma grafico basato sul schemi
di logica a interrutturi e blocchi funzionali; il nome deriva dal fatto
che i listati dei programmi scritti in questo linguaggio assomigliano
a delle scale verticali a pioli. E’ utilizzato principalmente per sviluppare software per controllori a logica programmabile (PLC) utilizzati
nelle applicazioni di controllo industriale e risulta molto semplice ed
intuitivo permettendone così un più ampio utilizzo anche a tecnici
non specificatamente formati.
Ciascun sistema di programmazione è messo a disposizione direttamente dalla casa di prodizione dei dispositivi hardware (PLC) e
ciò non consente una totale standardizzazione riguardo la tipologia
e le caratteristiche del linguaggio di programmazione. La casa AllenBradley mette a disposizione del programmatore diverse tipologie di
linguaggio di programmazione per facilitare la creazione di software
di controllo per impianti molto complessi.
Nel software RSLogix 5000 oltre alle tipiche funzioni dei programmi ladder (es. contatti normalmente aperti,contatti normalmente chiusi, set e reset di bit) sono implementati a disposizione dell’utente, molteplici blocchetti funzionali i quali permettono un interfacciamento
diretto e completo con gli azionamenti del sistema da gestire.
Viene inoltre fornito un ambiente di programmazione di tipo strutturato (Editor di testo) in cui è possibile implementare funzioni dedicate in codice simile al linguaggio C, e un Editor Grafico per mezzo
del quale, in maniera semplice, possono essere definite e create le
camme elettroniche.
Sono stati definiti all’interno del software tutti i componenti di cui
è composto il sistema come descritto nella sezione precedente e in
particolare è stato definito il gruppo degli assi di movimento (Motion
Axis):
• asse1, di tipo AXIS-CIP-DRIVE associato al motore MPL-B330P;
• asse2, di tipo AXIS-CIP-DRIVE associato al motore MPL-B420P;
• master, di tipo AXIS-VIRTUAL;
L’ultimo elencato è l’asse denominato virtuale perchè non è associato
ad alcun elemento reale, ma viene implementato per essere utilizzato
come asse master per la sincronizzazione agli assi reali del sistema.
49
50
analisi sperimentale
Nelle prove effettuate non è stato ultilizzato l’asse2 e quindi si è
limitata la gestione del sistema all’asse1 e all’asse master.
Figura 43: Diagramma Ladder.
Il programma di controllo è stato organizzato in una serie di routine di tipo Structured Text e Ladder Diagram descritte all’interno della
cartella MainProgram. La routine principale chiamata MainRoutine si
occupa della gestione generale del sistema e organizza l’attivazione
delle diverse sottoroutine.
Le sottoroutine sono attivate tramite degli interruttori logici che
dipendono dalla sequeza di attivazione e vengono richiamate all’interno del diagramma per mezzo di un blocchetto funzionale chiamato
JSR (Jump to Subroutine).
All’interno di questi, specificando con il nome opportuno ciascun
processo da attivare, possono essere richiamate sia funzioni di tipo
Ladder sia di tipo Structured; questo favorisce un’organizzazione e
una lettura più lineari del codice di controllo del sistema.
Per questa applicazione sono state create cinque Subroutine di tipo
Ladder e cinque Subroutine di tipo Structured (quest’ultime verranno
ampiamente descritte nella sezione successiva):
• SlaveOn, comprende una procedura di homing per l’asse1 nel
caso il sistema venga arrestato in una posizione indefinita;
• Camma, vengono effettuate le procedure per la sincronizzazione Master-Slave;
• MasterOn, accensione dell’asse master;
• MasterOff, spegnimento dell’asse master con conseguente arresto dell’asse slave;
4.3 ambiente di sviluppo rslogix5000
• Spegnimento, subroutine necessaria per il reset di alcuni stati
logici per un riavvio corretto del controllo in caso di arresto del
sistema.
Come si nota in fig. 43 la prima riga di diagramma è una sequenza
di segnali logici (Latch e Unlatch) che servono per commutare gli stati
logici dei segnali ed effettuare un reset totale di tutto il sistema per
il corretto avvio della sequenza di controllo. Senza i reset necessari il
programma potremme mantenere in memoria alcuni stati logici non
corretti che, nel migliore dei casi, non fanno svolgere alcuna funzione
al sistema di controllo o potrebbero far eseguire al programma della
funzioni sconosciute che lasciano l’operatore senza una chiara idea di
quello che accade. Potrebbero verificarsi problemi per il sistema fisico
e per gli utenti che agiscono in vicinanza di esso.
E’ importante conoscere che prima di comandare i movimenti di
un qualsiasi asse servo, quest’ultimo deve necessariamente essere attivato. A questo scopo il software RSLogix mette a disposizione un
blocchetto funzionale denominato MSO (Motion Servo ON) che consente di abilitare l’azionamento servo e attivare l’anello di controllo
dell’asse stesso.
Esiste anche la funzione complementare che serve per la disattivazione dell’asse denominata MSF (Motion Servo OFF), la quale “apre”
l’anello di controllo dell’asse.
Molti blocchetti funzionali, tra cui anche quelli appena menzionati,
devono essere eseguiti solamente una volta dal programma altrimenti
generano dei fault che bloccano il sistema; vengono usati quindi dei
segnali che non permettano la riattivazione del ramo del diagramma
ladder dopo la prima esecuzione.
Figura 44: MSO.
Nell’esempio di fig. 44 è riporato il blocchetto MSO relativo all’asse1
il quale viene disttivato da un contatto logico normalmente chiuso
asse1.ServoActionStatus, il quale commuta non appena l’abilitazione
dell’asse è stata effettuata.
La sua commutazione è gestita autonomamente dallo stato interno
dell’azionamento e permette l’esecuzione singola del comando MSO.
51
52
analisi sperimentale
All’attivazione dell’asse slave segue la procedura di Homing dell’asse stesso e dell’asse master.
La posizione di Home dell’asse1 sarà tale per cui l’asta si posizioni
sul semiasse positivo delle ascisse di un piano cartesiano ideale con
origine degli assi sull’albero motore. Per tale procedura è sufficiente
impostare la velocità con cui si deve muovere l’asse e la posizione di
offset rispetto ad un Marker; in questo caso il motore è dotato di un
encoder incrementale e il Merker è la tacca di zero di quest’ultimo.
Questo primo gruppo di istruzioni di controllo è avviato tramite la
commutazione dell’interruttore Power visibile anche in fig. 43; facendo riferimento ad una macchina automatica per utilizzo industriale,
esso potrebbe essere paragonato ad un commutatore per l’accensione
della stessa e il posizionamento di tutti i suoi giunti in punti stabiliti,
dai quali la macchina comincia le operazioni di lavoro.
Continuando a riferirsi a questa applicazione industriale come esempio per la spiegazione del programma, è necessario un interruttore
per l’inizio della sequenza di lavoro; esso è rappresentato nel digramma ladder dall’interruttore Start.
Alla commutazione di quest’ultimo si attivano le subroutine per la
creazione della camma desiderata e l’avvio dell’asse slave (JSR: SlaveOn).
Tralasciando momentaneamente la funzione delle camme, nella subroutine SlaveOn di fig. 45 sono presenti le procedure di homing degli
assi Slave e Master e i reset di alcuni stati logici.
La procedura di homing dei sue assi, presente in questa sezione, viene richiamata solamente quando l’esecuzione del sistema venga arrestata da un operatore esterno senza alcuna funzione di sicurezza; si
vuole rappresentare il caso reale del “fungo” di emergenza premuto
dall’operatore per un problema improvviso e imprevisto.
Per la corretta ripresa del ciclo di lavoro è dunque necessario che la
macchina si ritrovi nello stato di Home (in questo caso nella posizione
orizzontale di avvio).
4.3 ambiente di sviluppo rslogix5000
Figura 45: Subroutine SlaveOn.
Dall’attivazione dell’interruttore di Start la sequenza di gestione
del controllo diventa automatica.
Ciascun ramo del programma viene attivato solo quando vengono
dati i consensi dalla rispettiva azione precedente; si verifica il passaggio da stato logico basso 0 a stato logico alto 1 di alcuni contatti
normalmente aperti e normalmente chiusi.
La corretta terminazione della subroutine SlaveOn alza il livello logico di un segnale chiamato Ready che attiva la subroutine Camma
per la sincronizzazione tra master e slave.
Nel caso essa venga eseguita correttamente, viene commutato il contatto doneCam per mezzo del quale comincia la sequenza di movimentazione dovuta all’attivazione del master virtuale (MasterOn).
Figura 46: Procedura automatica.
La subroutine MasterOn contiene uno schema di controllo costituito da un solo blocchetto funzionale di tipo MAJ (Motion Axis Jog) per
mezzo del quale è possibile impostare la velocità, accelerazione e jerk
necessarie per la movimentazione dell’asse virtuale.
Per la disattivazione del controllo sono stete predisposte due procedure riportate in fig. 47; la prima per mezzo di un interruttore azionato dall’utente denominato Stop, simula un arresto di emergenza e
la seconda consente la disabilitazione totale dell’asse come descritto
precedentemente tramite il blocchetto MSF.
53
54
analisi sperimentale
Figura 47: Arresto della sequenza di comando e disattivazione dell’asse.
La commutazione dell’interruttore di Stop attiva le due subroutine MasterOff e Spegnimento: all’interno della prima è presente un
blocchetto di tipo MAS (Motion Axis Stop), che arresta l’asse master
virtuale e quindi anche dell’asse slave vista la sincronizzazione per
mezzo di camma elettronica; la seconda subroutine invece si attiva
solo ad asse master bloccato e consente un reset parziale di alcuni
stati logici.
Come descritto in precedenza, commutando l’interruttore Start è in
questo caso possibile la ripresa della sequenza di lavoro che comincerà con una procedura automatica di homing dell’asse1.
Nel caso invece si voglia arrestare completamente il sistema è necessario completare l’arresto con la seconda procedura la quale può avvenire commutando l’interruttore Down e solo nel caso l’asse master
sia già stato bloccato e quindi il sistema sia fermo. La disattivazione
in movimento dell’asse slave può causare danni al motore soprattutto
se le velocità di lavoro sono elevate.
Per riassumere in maniera chiara e comprensibile i vari step per
il funzionamento del programma, riporto di seguito le procedure da
effettuare da parte dell’utente per una sua esecuzione:
1. Riportare nel blocchetto JSR azionato dall’interruttore Start il
nome della camma elettronica desiderata per la sincronizzazione Master-Slave;
2. Commutare l’interruttore Power, si attiva così l’asse motore e
avviene la procedura automatica di Homing degli assi;
3. Commutare l’interruttore Start, il sistema si mette in movimento seguendo la camma predisposta;
4. Commutare l’interruttore Stop, il sistema si arresta ma è possibile ripristinarne il funzionamento a seguito di una seconda
4.3 ambiente di sviluppo rslogix5000
procedura automatica di homing per mezzo dell’interruttore
Start;
5. Commutare l’interruttore Down, disabilitazione totale dell’asse
e fine dell’esecuzione del programma di controllo.
4.3.2
Creazione della camma elettronica
Il software RSLogix5000 permette di definire, modificare ed implementare camme elettroniche tra i vari assi definiti nel controllore.
Le camme elettroniche sono degli accoppiamenti virtuali molto flessibili e facili da modificare che, grazie a queste caratteristica e la facilità di gestione in logica PLC, si stanno sostituendo all’utilizzo di riduttori e camme meccaniche. Esse infatti consentono la sincronizzazione
di più assi con una gestione via software.
Figura 48: Diagramma logico per la creazione di una camma.
All’interno del software RSLogix, per realizzare e implementare
le camme elettroniche all’interno del controllore, sono state messe a
disposizione dell’utente le seguenti funzioni:
MCCP, istruzione che calcola un profilo camma in base ad una matrice di punti camma definita programmaticamente oppure tramite
l’editor profilo camma RSLogix5000.
Lo scopo principale di un’istruzione MCCP è quello di consentire
di calcolare un profilo di camma in tempo reale in base ad un dato
set di punti nella matrice di una camma specifica.
I profili camma generati da questa istruzione vengono usati dalle
55
56
analisi sperimentale
istruzioni di calcolo della camma MAPC per eseguire il movimento complesso di un asse slave in relazione alla posizione o al tempo
di un asse master.
Nel caso particolare gli elementi della matrice CAM sono composti
da coppie di punti master-slave calcolati per mezzo di una funzione
scritta in una routine di tipo Structured Text con interpolazione di
tipo cubico tra un punto e l’altro. L’interpolazione è stata così scelta
ponendo a 1 la componente SegmentType in ciascun elemento del
vettore di camma; sarebbe stata possibile un’interpolazione di tipo
lineare ponendo a 0 tale valore.
MAPC, istruzione per l’avvio di un profilo di camma precedentemente calcolato dal blocco MCCP.
Con tale comando si esegue la camma attraverso la quale l’asse slave (in questo caso asse1) viene sincronizzato con l’asse master.
I parametri forniti a questa istruzione controllano la direzione del
moto, la scalatura tra master e slave, la posizione, la modalità di esecuzione e il piano di esecuzione. In questo momento non sono ancora
definiti i limiti di velocità e accelerazione in quanto questi vengono
dichiarati e determinati dalla funzione di movimentazione dell’asse
di comando, in questo caso quindi dell’asse master virtuale.
Figura 49: Subroutine per la sincronizzazione Master-Slave.
4.3 ambiente di sviluppo rslogix5000
All’interno della subroutine Camma sono stati implementati i due
blocchi funzionali descritti in precedenza e riportati in fig. 49.
Tale routine deve essere eseguita una sola volta in quanto la sincronizzazione master-slave rimane costante per tutta l’esecuzione del controllo; a tal scopo, come si può notare in fig. 46, è stato inserito un
contatto logico ONS nel ramo di comando della subroutine.
La sua funzione è facilmente intuibile: quando è abilitato e il bit di
memoria è azzerato, l’istruzione ONS abilita il resto del ramo, mentre
quando è disattivato o quando il bit controllo è a valore logico alto,
l’istruzione ONS disabilita il resto del ramo.
Per la creazione del profilo di camma si è utilizzato un vettore di
tipo CAM[100], in cui 100 rappresenta il fattore di discretizzazione
(numero di punti) del profilo. Si tratta di un vettore di celle composte
da tre elementi:
• CAM[x].Master
• CAM[x].Slave
• CAM[x].SegmentType
e ciascuno di essi verrà compilato tramite dei comandi scritti in
codice appropriato all’interno di un listato di programmazione di tipo
Structured Text.
La costruzione della camma avviene in sola posizione, in quanto è
il software che automaticamente deriva il profilo per ottenere quello
di velocità, accelerazione e jerk; in questo modo si riduce notevolmente la complessità di costruzione della camma elettronica da parte
dell’utente. L’editor grafico per la visualizzazione dei diversi profili
si presenta come in fig. 50 e il profilo finale può essere visualizzato
all’interno del blocchetto MCCP.
57
58
analisi sperimentale
Figura 50: Esempio di profilo di camma costruito per punti.
Sono stati costruiti cinque profili di camma come descritto nel capitolo precedente per la trattazione via Matlab.
Per ciascuno di essi si è considerato il caso di una alzata normalizzata, ossia un movimento nel range slave [0,1] su un range master [0,1]; l’unità di misura di entrambi è Rev, cioè il valore 1 corrisponde ad una rotazione completa dell’asse master ossia una rotazione completa dell’asse motore se si considera rapporto di riduzione
unitario.
Di seguito viene riportato l’esempio di costruzione della camma di
tipo trapezio in velocità.
Variabile
Valore
Num. punti
n
100
Tempo iniziale
t0
0
Tempo finale
t
1
Posizione iniziale
q0
0
Posizione finale
q1
1
Velicità iniziale
q_0
0
Velocità finale
q_0
0
Tabella 11: Parametri per il CAM Design
4.3 ambiente di sviluppo rslogix5000
Vengono dapprima dichiarati tutti i parametri necessari per definire il profilo desiderato come in Tab. 11 i quali rimarranno costanti
anche per la creazione delle altre leggi di moto.
Per mezzo di alcuni “cicli for” vengono definite le posizioni di master e e calcolate quelle di slave, al fine di completare il vettore di tipo
CAM che in questo caso specifico viene denominato CammaProvaTrap.
Figura 51: Esempio di Structured Text per la creazione di profilo di camma
trapezoidale in velocità.
59
60
analisi sperimentale
4.3.3
Gestione degli output
Il software RSlogix permette la lettura delle variabili dei dispositivi
collegati al controllore.
In particolare attraverso il pannello di controllo dell’asse, come in
fig. 52, possono essere selezionati i parametri di maggior interesse
dell’asse motore, permettendone la visualizzazione grafica durante il
ciclo di lavoro attraverso dei monitor che costruiscono il trend della
variabile.
Figura 52: Pannello di controllo dell’asse1.
All’interno di una cartella di sistema (Trends) possono essere salvati gli andamenti delle variabili in relazione al tempo ciclo; in un
primo momento si possono così confrontare visivamente se i risultati
soddisfano o meno le aspettative.
E’ possibile modificare il tempo di campionamento, la scala degli
assi, il colore delle linee e aggiungere delle barre di valore per la
lettura puntuale dei dati.
In fig. 53 è riportato un esempio di monitor grafico per la visualizzazione di alcuni parametri del motore in esame. Sarà lo strumento
fondamentale per lo svolgimento dell’analisi pratica dello studio in
oggetto.
4.3 ambiente di sviluppo rslogix5000
Figura 53: Esempio di monitor per la visualizzazione del trend dei
parametri del motore.
Per la visualizzazione grafica saranno scelte le forme d’onda di
maggior interesse, in particolare quelle che caratterizzano la legge
di moto di comando per confrontarne i valori con quella imposta
nel CAM Editor, e la forma d’onda della corrente del motore dalla
quale per mezzo della costante di coppia si ha la relazione diretta per
ottenere i valori istantanei di coppia motrice fornita dal motore.
61
5
R I S U LTAT I S P E R I M E N TA L I
In questo capitolo si voglion presentare le problematiche relative alla gestione
del software e le scelte effettuate per ottenere la miglior risposta dal sistema di
controllo. Vengono quindi presentati i risultati acquisiti e posti in confronto
con le aspettative teoriche e le simulazioni effettuate attraverso il software
MatLab.
5.1
il sistema di controllo
Il software RSLogix fornito da Allen-Bradley consente all’utente una
semplice gestione del sistema di controllo per gli assi attuati e/o
virtuali.
All’interno della cartella di sottosistema “Motion Groups - motori”
sono presenti tutti gli assi del sistema sperimentale. In particolare
è neessario impostare correttamente tutti i parametri relativi all’asse
primcipale di movimento denominato asse1.
Come già dichiarato in precedenza il software riconosce in procedura automatica gli elementi connessi al controllore, quindi sono
direttamente salvati i parametri caratteristici del motore MPL-B330
Parametro
Valore
Unità di misura
Torque Constant (Kt)
1.124
[Nm/A (RMS)]
Voltage Constant (Ke)
67.89639
[V(RMS)/KRPM]
Resistance (Rs)
4.6
[Ohms]
Inductance (Ls)
0.028
[Henries]
Tabella 12: Caratteristiche del motore
Il controllore invece non ha alcuna informazione riguardo il meccanismo collegato all’asse all’asse motore.
E’ possibile quindi definire il sistema esterno attraverso l’impostazione di alcuni semplici dati:
• Load Coupling, per mezzo del quale si specifica la tipologia di
accoppiamento; nel nostro caso l’accoppiamento è di tipo rigido
63
64
risultati sperimentali
in quanto l’asta è fissata con una vite direttamente sull’albero
motore.
• Load Ratio, per specificare il rapporto di inerzia tra carico e
motore (Load Inertia/Motor Inertia). Nel nostro caso l’inerzia
motore è Jm = 0.00012 kg · m2 per cui, vista l’enerzia del carico calcolata nel capitolo precedente, si è deciso di impostare
LoadRatio = 20.0; non è stato utilizzato il reale rapporto in
quanto esso risulta troppo elevato e il sistema di controllo non
avrebe gestito correttamente questa informazione.
• Torque Offset,per una compensazione attiva della coppia di
carico, ma posta nulla per questa applicazione.
E’ fornito un controllo molto complesso che comprende:
• Position Loop
• Velocity Loop
• Acceleration Loop
• Torque/Current Loop
i cui parametri sono calcolati da una procedura di Auto-Tuning che
utilizza i dati esplicitati in precedenza, al fine di ottenere un buon controllo di base per il sistema.
Tuttavia è possibile eseguire un Manual-Tuning per ottimizzare al
meglio il controllo dell’applicazione, variando i parametri di larghezza di banda (Bandwidth), inserendo degli integratori sintonizzati su
particolari frequenze, utilizzare delle reti anticipatrici di velocità e
accelerazione (Velocity/Acceleration Feedforward) per velocizzare la
convergenza del sistema di controllo.
Per questo particolare caso di studio non sono state utilizzate tutte
le funzioni a disposizione in quanto un controllo di base era sufficiente per ottenere i valori delle coppie motrici in gioco. Tuttavia per
ciascuna legge di moto implementata si è cercata una taratura manuale ottimale tale per cui i segnali acquisiti dal motore fossero chiari e
l’inseguimento dei riferimenti fosse il più preciso possibile, con uno
sfruttamento del motore lontano dai sui limiti massimi di utilizzo.
Per ciascuna legge di moto quindi sono stati assunti diversi valori in
termini di larghezze di banda in modo da ottenere dei segnali abbastanza “puliti” con basso ripple sovrapposto.
I valori sono riportati in tabella 13.
5.1 il sistema di controllo
Position Loop
Position Loop
Position Loop
(Bandwidth Hz)
(Bandwidth Hz)
(Bandwidth Hz)
Costante
20
100
500
Trapezia
22
130
500
TrapMod
22
130
500
Polinomiale3
22
100
500
Armonica
24
100
500
Cicloidale
24
130
500
Polinomiale5
24
130
500
Tabella 13: Parametri impostati per gli anelli di contollo
5.1.1
Coppie d’attrito
La problematica principale riscontrata durante la taratura del sistema
di controllo è stata la presenza della coppia di attrito generata dal
motore.
Facendo ruotare il motore a velocità costante, quindi data l’accelerazione nulla qualsiasi componente di coppia esterna risulta azzerata,
si nota come in fig. 54 sia presente un ripple di corrente (e conseguentemente di coppia) dovuto all’interazione delle coppie polari tra
rotore e statore.
Si nota come l’ampiezza del ripple di coppia sia solo qualche punto
percentuale della corrente nominale del motore; nonostante ciò esso
influisce notevolmente sull’andamento della corrente per le leggi di
moto studiate.
Figura 54: Ripple di coppia a velocità costante.
Come spiegato nel capitolo precedente, le legge di moto sono state
normalizzate, quindi il tempo di ciclo (rotazione completa dell’albero
65
66
risultati sperimentali
motore) è pari a T c = 1s.
Data la bassa inerzia del carico da muovere e le restrizioni temporali sufficientemente rilassate, le coppie inerziali richieste per la movimentazione risultano molto basse e asumono lo stesso ordine di
grandezza del ripple di coppie di attrito. In tal caso risulta difficile
discriminare quale sia il reale andamento delle coppie in gioco nel
sistema, dovute alla sola legge di moto implementata e alla tipologia
di carico (coppie inerziali della manovella).
Per tal motivo è stato dimezzato il tempo ciclo T c = 0.5s, con una
richiesta di maggior accelerazione per la movimentazione, la quale si
traduce in maggior assorbimento di corrente da parte del motore e
quindi maggior generazione di coppia motrice.
E’ stato così possibile ridurre l’influenza del ripple di corrente dovuto
all’attrito sull’andamento grafico della corrente assorbita dal motore
durante la fase di lavoro.
5.2 minimizzazione dell’energia globale del sistema
5.2
minimizzazione dell’energia globale del sistema
Le prime prove sono state effettuate seguendo il principio di ottimizzazione della dinamica del meccanismo in termini di riduzione
complessiva dell’energia spesa per la movimentazione del sistema
manovella.
Nelle figure seguenti sono stati riportati gli andamenti delle coppie
motrici sviluppate nel sistema senza e con l’utilizzo degli elastici.
Le forme d’onda non sono state acquisite direttamente, bensì elaborate attraverso l’acquisizione del segnale di corrente assorbita dal
motore.
Figura 55: Profili di coppia acquisiti dal motore nel caso di legge di moto a
velocità costante.
Figura 56: Profili di coppia acquisiti dal motore nel caso di legge di moto
trapezoidale.
67
68
risultati sperimentali
Figura 57: Profili di coppia acquisiti dal motore nel caso di legge di
moto trapezoidale con tempi di accelerazione e decelerazione
aumentati.
Figura 58: Profili di coppia acquisiti dal motore nel caso di legge di moto
polinomiale con polinomio di terzo grado.
Figura 59: Profili di coppia acquisiti dal motore nel caso di legge di moto
armonica.
5.2 minimizzazione dell’energia globale del sistema
Figura 60: Profili di coppia acquisiti dal motore nel caso di legge di moto
cicloidale.
Figura 61: Profili di coppia acquisiti dal motore nel caso di legge di moto
polinomiale con polinomio di quinti grado.
Il software di controllo RSLogix fornisce il segnale di corrente assobita come percentuale della corrente nominale.
Noto quindi il valore della costante di coppia in Tab. 12 e il valore a catalogo della corrente nominale del motore (Tab. 10), risulta semplice
il calcolo della coppia motrice
Cm = Kt · In · %Im
(40)
69
70
risultati sperimentali
Vengono per chiarezza riepilogati nelle tabelle successive i valori ottenuti dall’analisi sperimentale con le stesse leggi di moto presentate
in precedenza per l’analisi teorica.
xE
yE
LavIN
LavFI
LavTH
[m]
[m]
[J]
[J]
[J]
Costante
-0.0030
0.0018
0.6077
0.5682
0.6045
Trapezia
-0.0045
-0.0128
2.6984
2.6260
2.5998
TrapeziaMod
-0.1327
0.0038
4.4667
2.1868
1.5967
Polinomiale3
-0.0757
-0.0079
3.2803
1.9138
1.6133
Armonica
-0.0864
-0.0097
3.6021
1.8149
1.5989
Cicloidale
-0.1478
-0.0063
5.8611
2.4304
2.0222
Polinomiale5
-0.1516
-0.0048
5.1508
2.5577
1.8804
Tabella 14: Dati reali con elastico l=0.08m K=40N/m.
TmaxIN
TmaxFI
[Nm]
[Nm]
Costante
0.1912
0.1981
Trapezia
2.3962
2.5455
TrapeziaMod
1.6690
1.8024
Polinomiale3
2.6048
2.5557
Armonica
2.3017
2.4336
Cicloidale
1.6135
1.1079
Polinomiale5
1.4632
1.2102
Tabella 15: Coppie massime senza e con l’utilizzo di un elastico con l=0.08m
K=40N/m (Caso reale)
5.2 minimizzazione dell’energia globale del sistema
In Tab. 14 alla voce LavFI sono riportati i valori calcolati dall’acquisizione della corrente nel caso di sistema reale con l’inserimento
dell’elastico.
Nell’ultima colonna alla voce LavT H sono stati riportati anche i valori calcolati per mezzo del modello teorico, i quali risultano inferiori
rispetto a quelli ottenuti sperimentalmente.
Utilizzando la relazione in 32 si riportano in Tab. 16 i valori dell’efficienza percentuale ottenuti dalle acquisizioni della coppia motrice nel sistema sperimentale con gli elastici di lunghezza a riposo
l0 = 0.08 m e costante elastica K = 40 N/m. Viene ad essi affiancato
il valore teorico dell’efficienza percentuale ottenuta in via teorica sul
dato acquisito di coppia motrice.
T H
[%]
Costante
6.50
6.00
Trapezia
2.68
3.65
TrapeziaMod
51.04
67.30
Polinomiale3
41.66
50.82
Armonica
49.62
55.61
Cicloidale
58.53
65.50
Polinomiale5
50.34
62.64
Tabella 16: Efficienza percentuale del sistema sperimentale con l’aggiunta
dell’elemento elastico l=0.08m K=40N/m.
Il segno positivo dei valori ottenuti è indice di miglioramento dinamico del meccanismo in esame.
Tuttavia l’fficienza percentuale del sistema teorico risulta maggiore di
quella riscontrata per il sistema sperimentale.
Confrontando valori di Tab. 15 con quelli di Tab. 7 che si riferisce al
caso teorico con attrito, si nota come le coppie massime in gioco siano superiori. Questo deriva dal fatto che nel modello non sono stati
considerati gli attriti viscosi dell’aria, il coefficiente di attrito B non
fornito esplicitamente a catalogo, sebbene dello stesso ordine di grandezza potrebbe risultare differente e gli elastici utilizzati potrebbero
subire un degrado in termini di proprietà elastiche durante i cicli di
lavoro.
71
72
risultati sperimentali
5.3
minimizzazione della coppia motrice massima
L’analisi sperimentale per l’ottimizzazione della dinamica seguendo
il principio di riduzione della coppia motrice massima necessari per
la movimentazione del sistema manoivella, è stata particolarizzata
valutando gli effetti prodotti sia dall’analisi teorica che dalla prima
analisi sperimentale.
In riferimento ai dati ottenuti in precedenza, si è concentrata l’attenzione sulla legge di moto di tipo Cicloidale e Polinomiale con polinomio
di quinto grado. I motivi principali possono essere sintetizzati in due
considerazioni:
• come valutato nell’analisi teorica della legge polinomiale con
polinomio di terzo grado (e ugualmente per quella armonica),
la discontinuità dell’accelerazione tra due cicli di lavoro e il tentativo di riduzione della coppia di avvio, comportano necessariamente l’incremento della coppia d’arresto
• dalle prime valutazioni sperimentali la riduzione compliessiva della spesa energetica comporta una conseguente riduzione della coppia massima nel caso di leggi di moto cicloidale e
polinomiale di quinto grado.
I due grafici seguenti riportano l’andamento della coppia motrice
con l’applicazione delle due leggi di moto a riferimento, nel caso senza e nel caso con inserimento dell’elemento elastico agganciato tra
asta e telaio.
Figura 62: Profili di coppia acquisiti dal motore nel caso di legge di moto
cicloidale per minimizzare la coppia motrice massima.
5.3 minimizzazione della coppia motrice massima
Figura 63: Profili di coppia acquisiti dal motore nel caso di legge di moto
polinomiale con polinomio di quinto grado per minimizzare la
coppia motrice massima.
Riportando i paramentri fondamentali del sistema, si nota come la
posizione dell’elastico in coordinate y risulti traslata rispetto all’asse
centrato sul perno di motore, come già valutato per il caso teorico in
presenza di attrito.
Rispetto al precedente obiettivo per la minimizzazione complessiva
degli sforzi, il punto di fissaggio a telaio si allontana notevolente in
termini di coordinata x quindi vengono richesti sforzi maggiori all’elemento elastico; la traslazione lungo l’asse y risulta più significativa
per la legge di tipo polinomiale di quinto grado.
xE
yE
CmaxIN
CmaxFI
CmaxTH
LavFI
[m]
[m]
[Nm]
[Nm]
[Nm]
[J]
Ciclo
-0.2828
0.0104
1.6135
1.3574
0.9134
3.1515
Poli5
-0.2637
0.0164
1.4632
1.3813
0.9587
3.5542
Tabella 17: Dati acquisiti con l’obiettivo di minimizzare la coppia massima,
l=0.08m K=40N/m.
73
74
risultati sperimentali
Sono ora riportati i confronti tra l’andamento di coppia ottenuto
dal posizionamento teorico dell’elastico nel punto calcolato e l’andamento della coppia reale acquisita dal motore per lo stesso posizionamento del punto di fissaggio nel caso sperimentale.
Figura 64: Confronto tra la curva di coppia teorica e reale nel caso di posizionamento dell’elastico per la minimizzazione della coppia motrice
massima per legge di moto cicloidale.
Figura 65: Confronto tra la curva di coppia teorica e reale nel caso di posizionamento dell’elastico per la minimizzazione della coppia motrice
massima per legge di moto polinomiale di quinto grado.
5.3 minimizzazione della coppia motrice massima
E’ subito evidente dalle fig. 64 e 65 come il sistema reale segua in
maniera precisa quello ottenuto dalla simulazione nel modello, tranne per una serie di punti che sembrano errati.
Il picco di coppia ottenuto dal sistema con elastico ed evidenziato anche nelle due figure è dovuto ad un problema di posizionamento e di
risposta alla trazione da parte dell’elastico.
Nel moto di rotazione della manovella, quando viene incrociato il
punto fisso a telaio, l’elastico assume lunghezza libera per cui appena si ripresenta la condizione di trazione il motore si trova a dover
generare più coppia per compensare la coppia elastica.
Calcolando l’efficienza del metodo utilizzando il valore di picco
massimo di coppia, otteniamo valori notevolmente differenti dal caso
teorico come presentato nella prima colonna di Tab. 18.
T H
0
[%]
[%]
[%]
Cicloidale
15.87
43.82
41.29
Polinomiale5
22.21
35.02
28.98
Tabella 18: Efficienza percentuale del sistema sperimentale con l’aggiunta
dell’elemento elastico.
Eliminando i punti lontani dalla curva media di coppia reale, si
ottengono valori massimi di coppia confrontabili con quelli teorici,
con conseguente aumento dell’efficienza percentuale. La bontà del
miglioramento si può valutare confrontando le ultime due colonne
della tabella.
Si è voluto infine verificare che il punto di ottimo calcolato per una
specifica legge di moto non risulti effettivamente il migliore anche nel
caso la legge di moto subisca variazioni in termini di tempo ciclo.
Nelle fig. 66 e ?? sono riportati gli andamenti di coppia acquisiti
dal motore nel caso di tempo ciclo raddoppiato (T = 1s) per le ultime
due leggi di moto descritte. In Tab. 19 sono riportati i valori ottenuti
da quest’ultima analisi.
Le coordinate del punto di fissaggio E corrispondono a quelle ottenute per la minimizzazione della coppia massima.
75
76
risultati sperimentali
Figura 66: Profili di coppia acquisiti dal motore nel caso di legge di moto
cicloidale con T=1s per minimizzare la coppia motrice massima.
Figura 67: Profili di coppia acquisiti dal motore nel caso di legge di moto polinomiale con polinomio di quinto grado con T=1s per
minimizzare la coppia motrice massima.
xE
yE
TmaxIN
TmaxFI
LavIN
LavFI
[m]
[m]
[Nm]
[Nm]
[J]
[J]
Ciclo
-0.2828
0.0104
0.4477
1.1925
1.3208
3.7642
Poli5
-0.2637
0.0164
0.4084
1.6730
1.1827
5.4894
Tabella 19: Dati acquisiti per leggi di moto con periodo doppio e stesso
punto di agancio a telaio del caso precedente.
5.3 minimizzazione della coppia motrice massima
E’ subito evidente dai valori finali ottenuti con l’introduzione dell’elastico, sia in termini di coppia massima sia in termini di energia complessiva spesa dal sistema, che il punto scelto non è quello ottimale e
vengono peggiorate le prestazioni dinamiche del meccanismo.
77
CONCLUSIONI
In questo elaborato si è voluto studiare e proporre un semplice metodo per migliorare le prestazioni dimamiche di meccanismi articolati
con l’obiettivo di ridurre gli sforzi del motore risparmiando una quota di energia utilizzata per la movimentazione.
In particolare si è studiato il caso di un meccanismo ad un grado di
libertà rotante attorno ad un punto fisso sul piano orizzontale, allo
scopo di eliminare qualsisi forzante esterna non intrinseca al sistema
stesso.
Una prima analisi teorica ha verificato come l’introduzione di un elemento elastico, opportunamente inserito nel sistema con un’estremità fissata al meccanismo e la seconda a telaio, comporta delle coppie elastiche che in una rotazione completa della manovella intervengono nell’equazione che regola la dinamica del meccanismo stesso
riducendo le coppie riferite all’asse di rotazione.
A fronte di una verifica sperimentale per mezzo di un sistema di
controllo Allen-Bradley, con un modello approssimativo comprensivo di una stima delle coppie di attrito dell’eventuare organo motore,
si è verificato come il beneficio ottenuto da tale approccio non sia lo
stesso per differenti leggi di moto.
Per l’analisi sperimentale sono stati utilizzati elastici in gomma per
variare in modo semplice ma efficacie la costante elastica dell’elemento inserito, con consapevole problematica di degradazione delle proprietà elastiche.
Utilizzando una molla lineare e posizionandola in maniera tale che
la lunghezza libera risulti pressochè nulla, sarebbe possibile eliminare le problematiche riscontrate per la presenza di sezioni angolari a
coppia elastica costante nulla, ottenendo un ulteriore miglioramento
in termini di risultati finali.
Dall’analisi svolta si nota come venga subito meno l’utilità dell’elemento elastico nel caso di funzionamento a velocità costante, in
quanto sebbene l’energia spesa complessivamente per la movimentazione rimanga la stessa, la coppia massima generata dal motore è
direttamente proporzionale all’intensità della forzante elastica.
Nel caso di legge trapezoidale in velocità il beneficio ottenuto dipende dai parametri utilizzati per il profilo di camma; meno restritti-
79
80
risultati sperimentali
ve sono le caratteristiche in termini di tempi di accelerazione e decelerazione, maggiore è l’efficienza del sistema con l’inserimento dell’elastico.
Per profili di tipo polinomiale di terzo grado e armonica, appartenenti
alla stessa classe di leggi di moto, l’efficienza del metodo è considerevole per quanto riguarda il dispendio energetico globale nel caso
di rotazione completa ma è pressochè nulla, se non peggiorativa, per
quanto riguarda le coppie motrici di picco.
Le leggi di moto che più si prestano per il metodo studiato sono
quelle a profilo cicloidale e polinomiale con polinomio di quinto grado. Dato il profilo sinusoidale per la prima, l’efficienza ottenuta sia
nel caso teorico che in quello sperimentale è superiore al 50% con un
notevole risparmio energetico globale per la movimentazione. Tale
criterio utilizzato per il calcolo del punto di fissaggio a telaio dell’elastico permette di ottenere una riduzione anche in termini di coppie
motrici massime.
L’efficienza del metodo per la legge polinomiale di quinto grado è
paragonabile a quella ottenuta con la legge armonica (circa 40%), ma
a differenza di quest’ultima è possibile ottenere la riduzione delle
coppie motrici di picco.
E’ stato infine verificato anche sperimentalmente l’efficacia dell’utilizzo di un elemento elastico al solo fine di ridurre le coppie motrici massime per la movimentazione, ottenedo risultati nell’ordine
del 40% nel caso di movimentazione con profilo di camma cicloidale e del 30% nel caso polinomiale di quinto grado. Il sistema quindi
si presta bene ad essere utilizzato per leggi di moto con profilo di
accelerazione continuo.
APPENDIX
81
A
F U N Z I O N I M AT L A B
Listing 2: Inizializzazione dei parametri.
L=0.3;
m = 0.25;
rm=0.215;
% Lunghezza manovella [m]
% Massa asta [Kg]
% Distanza di fissaggio lungo l’asta [m]\
newline
l0=0.08;
% Lunghezza libera della molla [m]
k = 40;
% Costante elastica dell molla [N/m]
T=1;
% Tempo di rotazione [s]
n=100;
% Parametro di discretizzazione dei grafici
yE=[-0.5:0.1:0.5];
% Vettore coordinate punti di fissaggio
xE=[-0.5:0.1:0.5];
% Vettore coordinate punti di fissaggio
Listing 3: Criterio di posizionamento del punto fisso a telaio per la
minimizzazione della coppia acquisita dal motore.
C=Cmol(3,:)+TorqueS;
% TorqueS acquisita dal motore senza
elastico
for j=1:n-1
Lav=Lav+abs(C(j)*(teta(j+1)-teta(j)));
end
83
B
CODICE RSLOGIX-5000
Listing 4: Esempio di Structured Code per la creazione della camma
cicloidale nel software RSLogix-5000.
n:=100;
n1:=100;
t:=1;
t0:=0;
q0:=0;
q1:=1;
q_0:=0;
q_1:=0;
s:=0;
for j:=0 to n1-1 by n/(n1-1) do
tr[j]:=j*t/n1;
s:=s+1;
end_for;
for i:=0 to n1-1 by 1 do
CammaProvaTrap[i].Master:=tr[i];
CammaProvaTrap[i].Slave:=q1*((tr[i]-t0)/(n1/n)-1/(2*pi)*sin((2*pi
*(tr[i]-t0))/(n1/n)))+q0;
CammaProvaTrap[i].SegmentType:=1;
end_for;
85
BIBLIOGRAFIA
[1] Allen-Bradley Company. Logix5000 Controllers Motion Instructions. In Reference Manual.
[2] J.P. Huisson and D. Wang. On the design of a direct drive 5bar-linkage manipulator. In Robotica, volume 9, pages 441–446,
1991.
[3] S. Mahalingam and A.M. Shara. The Optimal Balancing of the
Robotic-Manipulators. In Proceedings of IEEE International Conference on Robotics and Automation, 1991), volume 9, pages 828–835,
1986.
[4] N. Ulrich and V. Kumar. Passive Mechanical Gravity Compensation for Robot Manipulators. In Proceedings of IEEE International
Conference on Robotics and Automation), volume 2, pages 1536–1541,
Sacramento, California, 1991.
87