Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda NIcholasGiovs » 03/09/2023, 13:46

Salve, nel seguente esercizio, dopo aver calcolato tutti i parametri della risposta indiciale, mi sono bloccato nel calcolo del tempo di salita poiché il tempo di salita che so fare io è quello al 90% (cioè quello che mi dà Matlab di default premendo "Charateristics->Rise Time"), ma il professore lo dà come errore poiché lui vuole il tempo di salita costituito dell'intervallo di tempo definito dalla tangente alla funzione step fino alla raggiungimento di yreg.

$ (d^3 y(t))/(d t^3) + 108*(d^2 y(t))/(d t^2) +900*(d y(t))/(dt) +10000 y(t) = 1000000 u(t) $

Sfortunatamente non ho potuto seguire le lezioni e sulle trasparenze non è presente una spiegazione a riguardo, né come calcolarlo senza fare la tangente su Matlab né come calcolarlo facendo la tangente su Matlab.

Grazie mille in anticipo!
NIcholasGiovs
Starting Member
Starting Member
 
Messaggio: 5 di 10
Iscritto il: 11/08/2023, 12:55

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda ingres » 03/09/2023, 15:01

Se parliamo della tangente alla risposta, bisogna stare attenti perchè in questo caso la tangente iniziale della risposta è nulla. Bisogna quindi approssimare vedendo la risposta nella sua completezza.
Se fai riferimento alla risposta che ho dato al tuo precedente post
https://www.matematicamente.it/forum/vi ... 8&t=231711

si vede che prendendo il grafico normalizzato (quello della G(s) approssimata e normalizzata) e tracciando una sorta di tangente nel primo tratto della salita fino al punto y=1, si ricava approssimativamente

$omega_n*bar t = 2$

da cui essendo $omega_n=10$

$bar t = 0.2$

Quindi, se ho interpretato correttamente la richiesta, il tempo di salita è circa 0.2 s.
Chi non vorrà attingere ad altra intelligenza che alla sua, si troverà ben presto ridotto alla più miserabile di tutte le imitazioni: a quella delle sue stesse opere (Ingres)
ingres
Senior Member
Senior Member
 
Messaggio: 1319 di 1718
Iscritto il: 30/10/2022, 11:45

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda Wuming9472 » 03/09/2023, 15:18

Slave Ingres, grazie per l'aiuto offerto per questo esercizio. Anch'io come Nicholas mi trovo a risolvere la stessa problematica. Volevo chiedere come fosse stato ricavato il 2 nell'edizione omega*t=2. Perdona la sintassi ma ancora non sono avvezzo al codice matematico.
Wuming9472
Starting Member
Starting Member
 
Messaggio: 1 di 7
Iscritto il: 02/09/2023, 12:24

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda ingres » 03/09/2023, 16:35

Ciao Wuming9472, benvenuto nel Forum

Graficamente si ha, prendendo la curva a $zeta=0.4$,

Immagine

il valore di $omega_n t=2$ e quindi tenendo conto che $omega_n=10$ si ha $text(tempo di salita) =0.2 s$.
Comunque se usi Matlab e tracci una retta come quella sopra otterrai direttamente un valore simile.
Chi non vorrà attingere ad altra intelligenza che alla sua, si troverà ben presto ridotto alla più miserabile di tutte le imitazioni: a quella delle sue stesse opere (Ingres)
ingres
Senior Member
Senior Member
 
Messaggio: 1320 di 1718
Iscritto il: 30/10/2022, 11:45

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda Wuming9472 » 03/09/2023, 18:33

Ingres devi perdonarmi ma purtroppo sono ancora un novizio di MATLAB e non conosco bene tutti i comandi.
Il codice che utilizzo ottenere il grafico della risposta indiciale è step(p), dove p è la funzione di trasferimento che mi sono calcolato in precedenza.
Con tale metodo riesco però a ricavarmi un solo grafico e non molteplici come invece nel tuo caso; inoltre sull'asse x ho solo t e non wn*t e sull'asse y ho "Amplitude", non y(t). Porta pazienza ma MATLAB l'ho installato per la prima volta 2 giorni fa.
Wuming9472
Starting Member
Starting Member
 
Messaggio: 2 di 7
Iscritto il: 02/09/2023, 12:24

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda ingres » 03/09/2023, 19:34

@Wuming9472
Va benissimo un solo grafico che è quello della risposta effettiva del sistema in funzione del tempo t (vedi anche il post https://www.matematicamente.it/forum/vi ... 8&t=231711 dove Renzo ha messo proprio quello che esce da Matlab) e che ha una forma del tipo:
Immagine
e in cui basta poi tracciare la tangente approssimata per riscontrare che il tempo di salita sia circa 0.2 s.

Quello da me riportato è il grafico normalizzato della risposta di un sistema del secondo ordine al variare del coefficiente di smorzamento e che si trova spesso nei libri di testo o nelle slide del corso (vedi ad es. http://faculty.mercer.edu/jenkins_he/do ... nseMSD.pdf) e che permette di studiare la risposta senza necessariamente simulare la stessa.
Chi non vorrà attingere ad altra intelligenza che alla sua, si troverà ben presto ridotto alla più miserabile di tutte le imitazioni: a quella delle sue stesse opere (Ingres)
ingres
Senior Member
Senior Member
 
Messaggio: 1321 di 1718
Iscritto il: 30/10/2022, 11:45

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda RenzoD » 03/09/2023, 21:49

NIcholasGiovs ha scritto:... Sfortunatamente non ho potuto seguire le lezioni e sulle trasparenze non è presente una spiegazione a riguardo, né come calcolarlo senza fare la tangente su Matlab...

Direi che un codice di base potrebbe essere il seguente

Codice:
close all
clc
g1=tf(1e6,[1,108,900,1e4]);
[y,time] = step(g1);
k = y(end);
der = diff(y)./diff(time);
flesso = find(diff(der)./diff(time(1:end-1))<0,1);
y0 = der(flesso)*time(flesso)-y(flesso);
tang = der(flesso)*time - y0;
ni = find(tang>=0*k,1);
tinf = time(ni)
ns = find(tang>=1*k,1);
tsup = time(ns)

step(g1), hold on
plot(time,tang)
tsal=tsup-tinf


in sostanza il punto di flesso si va a trovare cercando il cambiamento di segno della derivata seconda e da questo valore, si può poi ottenere il coefficiente angolare della tangente e l'intercetta con l'asse delle ordinate y0, al fine di ottenere la retta tangente e le sue due intersezioni con l'asse dei tempi e della retta del valore finale; la schermata ottenuta (su Matlab online) sarà la seguente

Immagine
Ultima modifica di RenzoD il 04/09/2023, 09:30, modificato 2 volte in totale.
RenzoD
Starting Member
Starting Member
 
Messaggio: 22 di 28
Iscritto il: 05/05/2023, 15:28

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda ingres » 03/09/2023, 22:09

ciao Renzo

Ottimo :smt023
Chi non vorrà attingere ad altra intelligenza che alla sua, si troverà ben presto ridotto alla più miserabile di tutte le imitazioni: a quella delle sue stesse opere (Ingres)
ingres
Senior Member
Senior Member
 
Messaggio: 1322 di 1718
Iscritto il: 30/10/2022, 11:45

Re: Calcolo Tempo di Salita [Sistemi Dinamici]

Messaggioda RenzoD » 04/09/2023, 15:08

Giusto per migliorare un po' la determinazione del tempo di salita

Codice:
% Tempo salita  (tsal)
clear
close all
clc
sys=tf(1e6,[1,108,900,1e4]);
t=0:0.0001:0.7;
[y,t]=step(sys,t);
der = diff(y)./diff(t);
flesso = find(diff(der)./diff(t(1:end-1))<0,1);
y0 = der(flesso)*t(flesso)-y(flesso);
tang = der(flesso)*t - y0;
ni = find(tang>=0,1);
tinf = t(ni);
ns = find(tang>=100,1);
tsup = t(ns);
dT = (t>0 & t <=0.3) ;
plot(t,y), hold on
grid
yline(0),yline(100),
plot(t(dT),tang(dT))
plot(tinf,tang(ni),'b-s')
plot(tsup,tang(ns),'b-s')
tsal=tsup-tinf;




Immagine
RenzoD
Starting Member
Starting Member
 
Messaggio: 23 di 28
Iscritto il: 05/05/2023, 15:28


Torna a Ingegneria

Chi c’è in linea

Visitano il forum: @melia, Google [Bot] e 1 ospite