Vai al contenuto
PLC Forum


Calcolo Velocità Posizionamento


Luigi74_

Messaggi consigliati

Salve a tutti, devo calcolare la velocità di posizionamento di un asse avendo a disposizione come parametri:

-tempo totale posizionamento (secondi)

-rampa accelerazione (mm/sec2)

-rampa decelerazione (mm/sec2)

Ho trovato la formula x calcolare il tempo totale e a me servirebbe la formula inversa per calcolare invece la velocità (V) visto che il tempo totale c'è.

Tt=(Dt/V)+(V*(A+D)/(2*A*D))

A= accelerazione( mm/sec^2)

V= velocita (mm/sec)

Dt=distanza totale (mm)

Tt= tempo totale posizionamento (s)

D=decelerazione (mm/s^2)

C'è qualche "matematico" che mi aiuta?

Grazie

Link al commento
Condividi su altri siti


Tt=(Dt/V)+(V*(A+D)/(2*A*D))

A= accelerazione( mm/sec^2)

V= velocita (mm/sec)

Dt=distanza totale (mm)

Tt= tempo totale posizionamento (s)

D=decelerazione (mm/s^2)

Non sono un matematico ma la formula non è coerente. Da come risultato una velocità (mm/sec) e non un tempo (sec).

Ti consiglio di rivederla...

Ad occhio mi pare che manchi una divisione per una distanza del secondo addendo.

Saluti

Link al commento
Condividi su altri siti

Mi era capitato tempo fa di risolvere un problema di questo tipo. Nel mio caso si trattava di uno spostamento angolare anziché lineare, ma la sostanza non cambia.

Se non ricordo male, ero arrivato alla soluzione con un sistema a 4 incognite che alla fine dava una funzione di secondo grado.

Trovato!

Il lavoro risale al luglio 2000.

Le 4 equazioni del sistema sono le seguenti:

S = 0.5*Acc*ta^2 + V*tv + 0.5*Dec.td^2

V = Acc*ta

V = Dec*td

t = ta + tv + td

Dove:

S = spazio totale

Acc = Accelerazione

ta = tempo accelerazione

Dec = decelerazione

td = tempo decelerazione

V = velocità massima

tv = tempo a velocità massima

I parametri noti sono: S; t; Acc; Dec

Le incognite sono: V; ta; tv; td

Sviluppando il sistema si arriva alla seguente equazione:

(-Acc/2 - Acc^2/(2*Dec))*ta^2 + Acc*t*ta - S = 0

Che non è altro che una classica equazione di secondo grado nella forma:

a*x^2 + b*x + c = 0

dove:

x = ta

a = (-Acc/2 - Acc^2/(2*Dec))

b = Acc*t

c = -S

Da un'equazione di secondo grado si ricavano due soluzioni, ma quella che risulta essere valida nel nostro caso è:

ta = (-b + SQRT(b^2 - 4*a*ta)) / (2*a)

Una volta ricavato il tempo di accelerazione, si calcolano facilmente le altre incognite:

V = Acc*ta

td = V/Dec

tv = t + ta - td

Link al commento
Condividi su altri siti

Grazie x le risposte, la formula l'ho ricavata dal manuale harware del Trajexia di Omron e facendo degli esempi con numeri sembra che funzioni.

V=10mm/s

Dt=100 mm

A=10mm/sec2

D=10mm/sec2

Tt=(Dt/V)+(V*(A+D)/(2*A*D))

Tt= 11sec

difatti 1 sec per accelerare, 1 per decelerare e 9 a velocità costante

Questo calcolo mi serve per generare un profilo di camma elettronica .....

non entro nello specifico.

Per Batta ti ammiro ma non ci ho capito quasi niente.....

Altre idee????

Link al commento
Condividi su altri siti

Ho commesso un evidente errore nella soluzione dell'equazione:

Sbagliata

ta = (-b + SQRT(b^2 - 4*a*ta)) / (2*a)

Corretta

ta = (-b + SQRT(b^2 - 4*a*(-S))) / (2*a)

A parte questo, farò dei controlli e ti saprò dire se è tutto corretto.

In caso affermativo, non c'è molto da capire, ma solo da applicare la formula.

Link al commento
Condividi su altri siti

Ho ricontrollato tutto, ed è corretto.

C'era solo quello stupidissimo errore di trascrizione sistemato nel precedente post.

Quindi, ripartendo dall'inizio, e se non ho capito male, i dati a tua disposizione sono:

1) accelerazione

2) decelerazione

3) spazio totale (nel tuo post iniziale non lo specifichi, ma è un dato che non può mancare)

4) tempo per il ciclo completo di posizionamento

Una funzione di secondo grado (parabola) si presenta come segue:

y = a+x^2 + b*x + c

dove x è l'incognita, mentre a, b e c sono parametri noti.

Per y = 0 si trovano due soluzioni (la parabola interseca l'asse delle ascisse in due punti), con la formula:

x = (-b ± SQRT(b^2 - 4*a*c) / (2*a)

Nel caso non ci fossero soluzioni valide (esempio: tempo troppo breve) significa che la parabola non interseca l'asse delle ascisse in nessun punto.

Questo viene rilevato dal risultato negativo di (b^2 - 4*a*c). Non esiste, infatti, la radice quadrata di un numero negativo.

Nel nostro caso, la soluzione valida è solo quella con il segno "+", ovvero

x = (-b + SQRT(b^2 - 4*a*c) / (2*a)

Il parametro "a" nel nostro caso si calcola come segue:

a = (-Acc/2 - Acc^2/(2*Dec))

Dove "Acc" e "Dec" sono rispettivamente Accelerazione e Decelerazione, ovvero dati noti

Il parametro "b" si calcola come segue:

b = Acc*t

Dove "Acc" è sempre l'Accelerazione e "t" è il tempo totale di posizionamento (quindi sempre dati noti)

Il parametro "c" si calcola come segue:

c = -S

Dove "S" è lo spazio totale di posizionamento (anche questo è un dato noto)

L'incognita "x" è, nel nostro caso, il tempo di accelerazione "ta".

Una volta trovato il tempo "ta", è facile calcolare le altre incognite:

- Velocità massima V = Acc*ta

- Tempo Decelerazione td = V/Dec

- Tempo a velocità massima tv = t - ta - td

Ecco che ti trovi con tutto quello che ti serve per effettuare il tuo posizionamento (col classico andamento a trapezio della velocità) nel tempo desiderato.

Link al commento
Condividi su altri siti

E ci risiamo con gli errori stupidi.

E' chiaro che la funzione di secondo grado NON è y = a+x^2 + b*x + c

ma y = a*x^2 + b*x + c

Tutto il resto, comunque, è corretto.

Luigi, fammi sapere se ora è chiaro, e se era questo quello di cui avevi bisogno.

Modificato: da batta
Link al commento
Condividi su altri siti

Molte grazie Batta e scasami se ti ho fatto perdere del tempo, il calcolo mi serve per generarmi delle camme elettroniche, gestire 3 assi inseguendo un encoder "master" tramite un profilo generato da una serie di punti, so la velocità dell'encoder master so la distanza tra i due punti del profilo quindi ho il tempo tra i due punti, avendo il tempo posso calcolare i dati per i tre posizionamenti degli assi. Ora sto valutando se farmelo o prendere una scheda che già lo fa (trajexia Omron), sembrerebbe che si possa anche fare (la velocità della macchina è abbastanza bassa e anche la precisione bassa, qualche mm va bene), ora vedremo in base ai prezzi, tempo di sviluppo ecc.. cosa conviene fare. Se decideremo di intraprendere la strada del costruirselo allora sicuramente ci risentiremo.

Grazie.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...