54
Scripte FunctionA=3; B=2; C=1; D=-0.2; x=[0:0.1:10]; y=A+B*x+C*x.^2+D*x.^3; figure,plot(x,y) y=fun01(x,A,B,C,D); figure,plot(x,y) function y=fun01(x,A,B,C,D); y=A+B*x+C*x.^2+D*x.^3; return “Script” (MAIN file) “Function” file 3 2 Dx Cx Bx A y + + + =

Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

““““Script ”””” e ““““Function ””””

A=3;B=2;C=1;D=-0.2;x=[0:0.1:10];y=A+B*x+C*x.^2+D*x.^3;figure,plot(x,y)y=fun01(x,A,B,C,D);figure,plot(x,y)

function y=fun01(x,A,B,C,D);

y=A+B*x+C*x.^2+D*x.^3;return

“Script” (MAIN file)

“F unction” file

32 DxCxBxAy +++=

Page 2: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Zero di funzione con MATLAB: fzero

OPTIONS = optimset('Display','iter','tolX',1.e-9);

[xz,yz]=fzero('fun02',X0,OPTIONS,A,B,C,D);

function y=fun02(x,A,B,C,D);y=A+B*x+C*x.^2+D*x.^3;

return

32 DxCxBxAy +++=

15.0

1

2

3

−===

−=

D

C

B

A

Page 3: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

4 – Esercizi su ruote dentate

Page 4: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esercizio B: traccia

Page 5: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Integrazione Equazioni Differenziali – ““““ode…””””

Il generico solutore ODExx di MATLAB risolve problemi nella forma:

Primo ordine :

),( ytFy =ɺ

Secondo ordine :possono essere ricondotte ad un sistema di due equazioni del primo ordine:

2

1

yx

yx

==ɺ xy

yxy

ɺɺɺ

ɺɺ

===

2

21

mfymkymcy

yy

/)/()/( 122

21

+−−==ɺ

ɺ2yCyBAy ++=ɺ

)(tfkxxcxm =++ ɺɺɺ

m

kn =ω

nm

c

ωζ

2= mfyyy

yy

nn /2 12

22

21

+−−=

=

ωζωɺ

ɺ

Page 6: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Integrazione Equazioni Differenziali – ““““ode…””””

A=5;B=-2;C=-3.5;

t0=0;tF=2;y0=0;OPTIONS=[ ];[t,y]=ode45('fun03',[t0 tF],y0,OPTIONS,A,B,C);

function yp=fun03(t,y,flag,A,B,C);

yp=A+B*y+C*y^2;return

MAIN file

FUNCTIONfile

Page 7: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

MATLAB – ODE: Options

OPTIONS=[ ]; OPTIONS = odeset(‘OutputFcn’,’odeplot’);OPTIONS = odeset('OutputFcn','odephas2');OPTIONS = odeset('RelTol',1.e-6); OPTIONS = odeset(‘AbsTol',1.e-9);OPTIONS = odeset(‘Stats',’on’);OPTIONS = odeset('Events','on');

[t,y]=ode45('function_name',t0,y0,OPTIONS,A,B,C,…);

OPTIONS odeset

opzioni di defaultplot durante l’integrazionegrafica piano delle fasiimposta toll. relativaimposta toll. assolutaindica il costo computaz.abilita ricerca eventi

Page 8: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema di Equazioni Differenziali

A1=…; B1=…;A2=…; B2=…;An=…; Bn=…;t0=0; tF=2;y0=[y01; y02; …; y0n];OPTIONS=[ ];[t,y]=ode45('fun04',[t0 tF],y0,OPTIONS,A1,B1,A2,B2,…,An,Bn);

function yp=fun04(t,y,flag,A1,B1,A2,B2, ,…,An,Bn);yp=[A1+B1*y(1); A2+B2*y(2); …; An+Bn*y(n)];

return

MAIN file

FUNCTIONfile

+

++

=

)(

...

)()(

)(

...

)()(

222

111

2

1

tyBA

tyBAtyBA

ty

tyty

nnnnɺ

ɺ

ɺ

Page 9: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF libero

Sistema sotto-smorzato

02 2 =++ xxx nn ωζω ɺɺɺ

1<ζ 1>ζ Sistema sovra-smorzato

2

1

yx

yx

==ɺ

),( ytFy =ɺ

Page 10: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF libero MATLAB

% Condizioni inizialix0=-1;v0=0;% Intervallo di

integrazionet0=0;tf=1;

function dydt = eq_lib01 (t,y,flag,omn,zeta);

dydt = [y(2); -2*zeta*omn^2*y(1)];

return

% Parametri del sistemaomn=10*pi; % rad/szeta= 1.1;

% OPTIONS = odeset('OutputFcn','odeplot');% OPTIONS = odeset('OutputFcn','odephas2');OPTIONS = [ ];[t,y]=ode45('eq_lib01 ',[t0 tf],[x0; v0],OPTIONS,omn,zeta);

Page 11: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF con attrito Coulombiano

Equazione differenziale non lineare

mgkxxm µ−=+ɺɺ

mgkxxm µ=+ɺɺ

0>xɺ

0<xɺ

)( 212

2

21

ysigngyy

yy

n µω −−=

=

ɺ

ɺ

0)(2 =++ gxsignxx n µω ɺɺɺ

Page 12: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF con attrito Coulombiano MATLAB

% Condizioni inizialix0=1;v0=0;% Intervallo di

integrazionet0=0;tf=8;

function dydt = eq_attrito (t,y,flag,omn,Fatt);

dydt = [y(2); -omn^2*y(1)-Fatt*sign(y(2))];

return)( 21

22

21

ysigngyy

yy

n µω −−=

=

ɺ

ɺ

% Parametri del sistemaomn=3*pi; % rad/s% Parametri dell'attritomu=0.2;g=9.81;Fatt=mu*g;

% OPTIONS = odeset('OutputFcn','odeplot');% OPTIONS = odeset('OutputFcn','odephas2');OPTIONS = [ ];[t,y]=ode45('eq_attrito ',[t0 tf],[x0; v0],OPTIONS,omn,Fatt);

Page 13: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Ricerca di EVENTI

A1=4 B1=-3A2=5 B2=-2A=2 B=-1

Page 14: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Fase di strisciamento

OPTIONS=[ ];[t,y]=ode45('fun04a ',[t0 tF],y0,OPTIONS,A1,B1,A2,B2);

function yp=fun04a (t,y,flag,A1,B1,A2,B2);

yp=[A1+B1*y(1); A2+B2*y(2)];

return

A1=4 B1=-3A2=5 B2=-2

Page 15: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Fase di strisciamento

OPTIONS=odeset('Events','on');

[t,y,te,ye]=ode45('fun04b ',[t0 tF],y0,OPTIONS,A1,B1,A2,B2);

function varargout=fun04b (t,y,flag,A1,B1,A2,B2);switch flagcase ''

varargout1 = f(t,y,A1,B1,A2,B2);case 'events'

[varargout1:3] = events(t,y);otherwise

error(['Error message'])end

function yp = f(t,y,A1,B1,A2,B2);yp=[A1+B1*y(1); A2+B2*y(2)];

function [value,isterminal,direction] = events(t,y)% Locate the time when y passes through the "event"value = y(1)-y(2); % eventisterminal = 0; % don't stop at the eventdirection = 0; % don't care if increasing/decreasing

)()( 21 tyty =Evento:

Page 16: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Raggiungimento del REGIME

OPTIONS=odeset('Events','on');

[t,y,tR,yR]=ode45('fun04c ',[te tF],ye,OPTIONS,A,B,C);

function varargout=fun04c (t,y,flag,A,B,C);switch flagcase ''

varargout1 = f(t,y,A,B);case 'events'

[varargout1:3] = events(t,y,C);otherwise

error(['Error message'])end

function yp = f(t,y,A,B);yp=A+B*y;

function [value,isterminal,direction] = events(t,y,C)% Locate the time when y passes through the "event"value = y(1)-C; % eventisterminal = 0; % don't stop at the eventdirection = 0; % don't care if increasing/decreasing

Evento:

( )y t C=

Page 17: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Ricerca di EVENTI: risultati

te = 0.54ye = 1.66

tR = 1.77yR = 1.9

C=(-A/B)*0.95

( )y t C=)()( 21 tyty =

Eventi:

A1=4 B1=-3A2=5 B2=-2A=2 B=-1

Page 18: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF forzato

tm

Fxxx nn Ω=++ cos2 02ωζω ɺɺɺ

0X

2

Ω

1.0=ζ

)(tx

πω 10=n Hzfn 5=

Page 19: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF forzatoin RISONANZA

0X

1.0=ζ

)(tx

πω 10=n Hzfn 5=

0=ζ

)(tx

tm

Fxxx nn Ω=++ cos2 02ωζω ɺɺɺ

2

Ω

Page 20: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Sistema SDOF forzato: BATTIMENTO

πω 2=n Hzfn 1=

0=ζ )(tx

tm

Fxx n Ω=+ cos02ωɺɺ

nω10

9=Ω

επωω 210

2

10

1 ===Ω− nn

202 =επ

t

Page 21: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

MATLAB: Autovalori e Autovettori

>> help eig

EIG Eigenvalues and eigenvectors.

E = EIG(A) is a vector containing the eigenvalues of a square matrix A.

[V,D] = EIG(A) produces a diagonal matrix D of eigenvalues and a full matrix V whose columns are the corresponding eigenvectors so that A*V = V*D.

[V,D] = EIG(K,M) produces a diagonal matrix D of generalized eigenvalues and a full matrix V whose columns are the corresponding eigenvectors so that K*V = M*V*D.

Page 22: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Autovalori e Autovettori

[V,D] = EIG(A) A*V = V*D

[ V,D] = EIG(K,M) K*V = M*V*D M -1 *K*V = V*D

tieXtx ω=)(0] [][ =+ xKxM ɺɺ

( ) 0][][][ 12 =+− − XKMIω

0][][2 =+− XKXMω

( ) 0][][ =+− XAIλ λ autovalori di [A]

X autovettori di [A]

][][][ 1 KMA −=

Page 23: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Autovalori e Autovettori

[V,D] = eig(inv(M)*K); autovettori con norma = 1

[V,D] = eig(M\K); autovettori con norma = 1

[V,D] = eig(K,M); autovettori normalizzati rispetto alla matrice [M]

[V] T[M][V] = [I]

Come ordinarli e calcolare le frequenze [Hz]

[om2,ind] = sort(diag(D));

freq = sqrt(om2)/(2*pi);

V = V(:,ind);

][][][ 1 KMA −=

Page 24: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Normalizzazione Autovettori

Normalizzazione rispetto alla [M]

p = 1./sqrt(diag(V.'*M*V))

P = (p*ones(1,length(V))). ’’’’

V = V.*P

Prim a componente = 1

p = V(1,:). ’’’’

P = (p*ones(1,length(V))). ’’’’

V = V./P

iT

i

iXMX

p][

1=

[ ] 1Ti i i i iM p X M p X= =

Massima componente = 1

[p,ind] = max(abs(V))

ind = sub2ind(size(V),ind,[1:length(V)])

p = (sign(V(ind)).*p). ’’’’

P = (p*ones(1,length(V))). ’’’’

V = V./P

Page 25: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

12 – Vibrazioni torsionali di un motore marino

Page 26: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

13 – Modifiche strutturali

m

k

m

m

k

k

1

2

3

3

2

1

Page 27: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Autovalori e Autovettori: esercizio 1

21002

2

π××==

k

mHz

m

k

Hzm

k

531033

510

2

1

×=×==

===

πω

πω

−+

=

++

=

1

1

1

1

2

1

X

X

[V,D] = eig(M\K);

autovettori con norma = 1

[V,D] = eig(K,M);

autovettori normalizzati rispetto a [M]

[V] T[M][V] = [I]

Page 28: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Autovalori e Autovettori: esercizio 221002

2

π××==

k

m

6.2586

1.384

0

23

22

21

=

=

=

ωωω

A*m

−=

+−

=

=

617.0

1

004.0

1

611.0

016.0

1

1

1

3

2

1

X

X

X9.2583

0.3772

2

21

=

=

ωω

A*m

A=100

2.2584

7.377

0

23

22

21

=

=

=

ωωω

−=

+−

=

=

618.0

1

000.0

1

617.0

002.0

1

1

1

3

2

1

X

X

X

−=

+

=

618.0

1

1

618.0

2

1

X

X

A=1000

2 dofs

Page 29: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Esempio 1

)()( tutx =ɺ

Page 30: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Esempio 2

)()(2)( tutxtx +−=ɺ

Page 31: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Es. 3

m

c

kF

x(t)

)()()()( tFtxktxctxm =++ ɺɺɺ

)()()()( tFtxktxctxm +−−= ɺɺɺ

Page 32: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Es. 4

K

CM

g

X0 X1

F K X X g X g

F K X X g X g

F X g

EL

EL

EL

= − − − − >= − − + − < −

= − ≤

( / ) /

( / ) /

/

1 0 1 0

1 0 1 0

1 0

2 2

2 2

0 2

X

X

X

)()( 01101111 XXCXXKXM ɺɺɺɺ −−−−=

Page 33: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Es. 5

dt = 1/100;time = [0:dt:1];x = sin(2*pi*time);A = [time; x].';

Page 34: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Esempio 6

Page 35: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Esempio 7

Page 36: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Es. 8

Page 37: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

SIMULINK – Es. 9

M X K X X C X X K X X C X X

M X K X X C X X

1 1 1 1 0 1 1 0 2 2 1 2 2 1

2 2 2 2 1 2 2 1

ɺɺ ( ) ( ɺ ɺ ) ( ) ( ɺ ɺ )

ɺɺ ( ) ( ɺ ɺ )

= − − − − + − + −

= − − − −

Page 38: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

PARAMETRI

m1 = 1.5 kg k1 = 1.5 106 N/mm2 = 1 kg k2 = 1.8 106 N/mq = c/k = 10-4 s

f1 = 114 Hz f2 = 297 Hz

Legge di moto cicloidale(file «LeggeEsempio09.mat»)

Corsa 120 mmVelocità = 240 rpm

Due condizioni:g1 = g2 = 0g1 = g2 = 0.02 mm

0 0.05 0.1 0.15 0.2 0.250

20

40

60

80

100

120

Legge di Moto X0 [mm]

Tempo [s]

Page 39: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Legge di moto

0 0.05 0.1 0.15 0.2 0.250

20

40

60

80

100

120

Legge di Moto X0 [mm]

Tempo [s]0 0.05 0.1 0.15 0.2 0.25

-150

-100

-50

0

50

100

150Accelerazione Teorica [m/s^2]

Tempo [s]

SPOSTAMENTO ACCELERAZIONE

Legge di moto cicloidalefile «LeggeEsempio09.mat»

Page 40: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Equazioni del moto

M X K X X C X X K X X C X X

M X K X X C X X

1 1 1 1 0 1 1 0 2 2 1 2 2 1

2 2 2 2 1 2 2 1

ɺɺ ( ) ( ɺ ɺ ) ( ) ( ɺ ɺ )

ɺɺ ( ) ( ɺ ɺ )

= − − − − + − + −

= − − − −

Modello SIMULINK

Page 41: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Blocco LEGGE di MOTO

Page 42: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Blocco «Fev»

Blocco «Massa»

Page 43: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

0 0.05 0.1 0.15 0.2 0.25-150

-100

-50

0

50

100

150Accelerazione Massa M2 [m/s^2]

Tempo [s]0 0.05 0.1 0.15 0.2 0.25

-150

-100

-50

0

50

100

150Accelerazione Massa M2 [m/s^2]

Tempo [s]

Simulazione: Accelerazione massa m 2

g1 = g2 = 0 g1 = g2 = 0.02 mm

Page 44: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/1 Modello di un azionamento con

controllo di posizione e velocità

Esempio di modello di una trasmissione meccanica e del relativo azionamento.

L’azionamento è costituito da un motore elettrico a corrente continua con controllo in loop di corrente.

Il motore applica una coppia motrice ad un mandrino che, a sua volta, trasmette il moto ad una pinza terminale attraverso un albero intermedio.

Page 45: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/2 Il moto viene controllato in posizione

ed in velocità confrontando le letture di posizione e velocità fornite da due encoder montati in prossimità del mandrino.

Page 46: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/3

Legge di moto Regolatore di

posizione Regolatore di

velocità.

Page 47: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/4 Modello motore elettrico a corrente continua

Forza contro-elettromotrice

Equazione circuito di armatura (tensione di armatura)

Coppia motrice

Kc costante di coppia, Kb costante di velocità

Page 48: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/5 Modello meccanico

– Il modello meccanico ha tre gradi di libertà– La prima coordinata è associata all’inerzia del motore elettrico– La seconda è associata al mandrino (e quindi agli encoder)– La terza è associata alla pinza

( ) ( )23223233 ϑϑϑϑϑ ɺɺɺɺ −−−−= ckJ

( ) ( )mmmmm ckCJ ϑϑϑϑϑ ɺɺɺɺ −+−+= 2121

( ) ( ) ( ) ( )232232212122 ϑϑϑϑϑϑϑϑϑ ɺɺɺɺɺɺ −+−+−−−−= ckckJ mm

Page 49: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

( ) ( )mmmmm ckCJ ϑϑϑϑϑ ɺɺɺɺ −+−+= 2121

( ) ( ) ( ) ( )232232212122 ϑϑϑϑϑϑϑϑϑ ɺɺɺɺɺɺ −+−+−−−−= ckckJ mm

( ) ( )23223233 ϑϑϑϑϑ ɺɺɺɺ −−−−= ckJ

Dati del motore elettricoL = 0.003 [Vs/A] R = 0.4 [Ohm]Kc = 5 [Nm/A] Kb = 5 [Vs/rad] Jm = 0.6 [kgm2 ]

Parametri dei controllori ad azione Proporzionale – Integrale Anello di corrente Anello di velocità Anello di posizioneKpc = 8 [V/A] Kpv = 95 [Nm/(rad/s)] Kpp = 72 [1/s]Tic = 0.002 [s] Tiv = 0.1 [s] Tip = 1000 [s]

(di fatto è ad azione Proporzionale)Parametri del modello meccanicoJ2 = 0.085 kgm2 J3 = 0.085 kgm2

k1 = 1.15 106 Nm/rad k2 = 1.15 105 Nm/rad Velocita‘ di rotazione = 20 rpmq = 10–5 sc1 = q k1 c2 = q k2

+=

sTKsG

ip

11)(

Page 50: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/6 Modello dell’intero azionamento

Page 51: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Dati numerici

Dati del motore elettricoL = 0.003 [Vs/A] R = 0.4 [Ohm] Jm = 0.6 [kgm2 ]Kc = 5 [Nm/A] Kb = 5 [Vs/rad]

Parametri dei controllori ad azione Proporzionale – Integrale Anello di corrente Anello di velocità Anello di posizioneKpc = 8 [V/A] Kpv = 95 [Nm/(rad/s)] Kpp = 72 [1/s]Tic = 0.002 [s] Tiv = 0.1 [s] Tip = 1000 [s]

(di fatto è ad azione Proporzionale)Parametri del modello meccanicoJ2 = 0.085 kgm2 J3 = 0.085 kgm2

k1 = 1.15 106 Nm/rad k2 = 1.15 105 Nm/radq = 10–5 sc1 = q k1 c2 = q k2

Velocità di rotazione = 20 rpm

Esempio 11/7

+=

sTKsG

ip

11)(

Page 52: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Esempio 11/8

0 100 200 3000

10

20

30

40

50Legge teorica - spostamento [deg]

[deg]

0 100 200 300-50

0

50Legge teorica - velocita' [deg/s]

[deg]

0 100 200 300-0.5

0

0.5Legge teorica - velocita' [rad/rad]

[deg]

Ω=== )(')()(

)( ϑϑϑϑ

sdt

d

d

sd

dt

tsdtsɺ

)(tsɺ

)(' ϑs

Velocità di rotazione = 20 rpm

Page 53: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Es. 11/9

0 100 200 3000

10

20

30

40

50Legge teorica - spostamento [deg]

[deg]0 100 200 300

-50

0

50Legge teorica - velocita' [deg/s]

[deg]

0 100 200 300-4

-3

-2

-1

0

1

2

3

4x 10

-5 Errore meccanico X2-X1 [deg]

[deg]0 100 200 300

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2x 10

-4 Errore meccanico X3-X2 [deg]

[deg]

Page 54: Script”””” e ““““Function”””” “Script” (MAIN file ...diem1.ing.unibo.it/mechmach/rivola/forli/mdm/Ex_Aula_Info_1516.pdf · Integrazione Equazioni Differenziali

Es. 11/10 Il regolatore di posizione è ad azione proporzionale. Ne consegue un moto effettivo ritardato rispetto a quello

imposto. Sarebbe improprio considerare come errore la semplice

differenza tra la coordinata 2 e il moto imposto.

E’ più opportuno considerare l’errore a meno del ritardo .

0 100 200 300

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

Errore del controllo X2-Xrif [deg]

[deg]0 100 200 300

-0.02

-0.015

-0.01

-0.005

0

0.005

0.01

0.015

0.02Errore del controllo X2-Xrif senza ritardo [deg]

[deg]