Community Forum Supporto Utenti Supporto Sistemi particellari, fisica e simulazioni Simulazione meccanica moto da rotatorio a lineare

Stai visualizzando 13 post - dal 1 a 13 (di 13 totali)
  • Autore
    Post
  • #785937
    Sundeker
    Partecipante
    @sundeker

    Buongiorno a tutti chi saprebbe aiutarmi con una simulazione meccanica? Avrei bisogno di animare i pezzetti 3D che vi invio come foto; ho provato con rigid body e vincolando i pezzi sugli assi non utilizzati ma non riesco a far muovere l’oggetto come desidero, cosa dovrei fare, come dovrei comportarmi? Non voglio ottenere una semplice animazione tramite keyframe per intenderci. Ho provato a seguire dei tutorial ma ancora non ci capisco molto di drivers, armature, fisica applicata agli oggetti 3D; vi allego un’immagine del meccanismo…<br style=”color: #ffffff; font-family: ‘Open Sans’, Arial, sans-serif; font-size: 18px; background-color: #171717;” />in pratica il pezzo rosso sta fermo e vincola il pezzettino bianco e verde a scorrere dentro a quello rosso lungo l’asse Z ma solo quando il pezzettino blu ruota di 180° sull’asse Z; in pratica devo trasformare un movimento rotativo in un movimento lineare! Grazie a chi mi risolve l’arcano!

    #785939
    adry93
    Membro
    @adry93

    hey ciao, il pezzo pi “complicato” sarerbbe quello al centro che si sposta e mentre lo fa gira… ma in realtà dovresti solo mettere una constraint transformation.. che fa in modo tale che quando si sposta di un tot ruota anche sull’asse Z. cerca di capire quanto è la distanza tra i punti di inizio e fine dell’asola sull’asse Z e usa questo valore come spostamento. mentre la rotazione corrisponderà a 360gradi mi sembra di intuire dal tuo screenshot

    #785940
    Sundeker
    Partecipante
    @sundeker

    Grazie per la dritta ora provo a eseguire il tuo consiglio, voglio solo precisare che forse mi sono spiegato male il pezzo rosso è fermo però ha un’asola che permette il movimento solo in verticale (asse Z) del pezzettino bianco e verde; il pezzettino bianco e verde si muove lungo l’asse Z solo se il pezzo blu ruota di 180° in questo caso xchè gli scivoli di scorrimento sono due a 180° quindi il movimento è vincolato dalle due scanalature; spero di essere stato più chiaro. Comunque grazie mille adesso provo il tuo prezioso consiglio e poi se non prendo sonno subito ti invio il risultato o comunque prossimamente ti faccio sapere come è andato l’esperimento.

    Grazie

    #785941
    adry93
    Membro
    @adry93

    okok in questo caso cambia solo il target.. in realtà tramite la constraint che ti dicevo puoi scegliere di trasformare una rotazione in movimento o viceversa.. quindi puoi far spostare il pezzo verde che fa ruotare il pezzo blu tramite constraint. quindi transformation sul pezzo blu, target pezzo verde, sopra LOC e sotto ROT, gli assi dipende sembra Z–>Z (a meno che non hai rotazioni non applicate) quindi non dovresti cambiare niente, infine vai ad inserire i valori nella colonna di destra che corrisponde alla Z mettendo min e max. non penso che tu abbia bisogno della spunta extrapolate visto che conosci i limiti massimi e minimi

    #785942
    Sundeker
    Partecipante
    @sundeker

    Però scusa la mia domanda da neofita, utilizzando il constraint io però vado sì a trasformare un movimento da rotatorio a lineare ma non perchè avviene una collisione tra pezzo blu in rotazione e pezzo verde ed essendo vincolato da quello rosso mi esegue un movimento lineare di un tot sull’asse Z; cioè con il comando constraint eseguo solo una simulazione è come se non ci fosse il contatto tra le parti faccio per dire! Faccio fatica a spiegarmi ma spero di aver spiegato quello che vorrei ottenere; cioè che il movimento avvenga perchè i componenti interessati si toccano e non tipo perchè ho impostato che a una certa distanza z o a un certo angolo allora un pezzo ottiene un movimento. Comunque sto lavorando al primo consiglio che mi avevi dato … work in progress! 🙂

    #785943
    Sundeker
    Partecipante
    @sundeker

    Allora dati per il movimento:

    Pezzo Rosso bloccato in tutte le direzioni con nessuna possibilità di rotazione o scala o altro.

    Pezzo Bianco-Verde possibilità di movimento da posizione Z iniziale 0 a posizione finale -10.8 con nessun altra possibilità di movimento o rotazione.

    Pezzo Blue possibilità di movimento di 180° solo sull’asse Z e nessun altra possibilità di movimento rotazione o scala.

    Adesso vincolato tutti i pezzi dovrei inserire un comando credo rigid body o collision per fare in modo che se ruoto il blu, il bianco-verde dovrebbe tentare di ruotare ma essendo vincolato dal pezzo rosso dovrebbe solo scorrere in verticale fino a -10.8 in Z forse mi sono spiegato meglio adesso!

    Perdonami non vorrei sembrare invadente o ripetitivo ma sto cercando di spiegarmi al meglio.

     

    #785944
    adry93
    Membro
    @adry93

    ah si, pensavo avessi bisogno di una cosa del genere perchè nella maggior parte dei casi si fa così anche perchè creare proprio la collisione e quindi gestire tutta la fisica diventa lunga e anche pesante come computazione.. di solito l’approccio che bisognerebbe avere con programmi del genere è avvicinarsi il più possibile alla realtà usando trucchi e finzione se si può proprio per evitare di avere lunghi calcoli, quindi se hai ad esempio una tolleranza che vuoi tenere in considerazione prima che il pezzo tocchi l’altro per farlo muovere, potresti variare il valore del minimo e/o del massimo facendo cominciare la rotazione più tardi. Forse si può anche creare un rig che simuli proprio questa cosa che dici tu evitando comunque la simulazione fisica reale, ma sicuro ci vuole più tempo.

    #785945
    Sundeker
    Partecipante
    @sundeker

    Risultato della prova: pezzo rosso completamente immobile, pezzo bianco verde è libero di cadere in Z ma non fa nulla, pezzo blu lo giro attorno all’asse Z ma non fa altro i pezzi tra loro sembra non abbiano nessuna interazione! ;(

    #785946
    adry93
    Membro
    @adry93

    si, per quanto riguarda le collisioni devi impostare per forza mesh come tipologia di collider mi sa.. e’ il piu’ pesante ma mi sa che convex non ti prende bene le asole

     

    #785950
    Sundeker
    Partecipante
    @sundeker

    Impostato mesh su tutti i pezzi… fatto però non funziona ancora!

     

    #828501
    SinusAsperitatis
    Partecipante
    @sinusasperitatis

    Ho provato il tuo meccanismo alla fin fine e’ come quello dei rossetti e a me funziona a parte dover settare meglio i parametri del cilindro interno che scorre lungo l’asse z, il quale mi appare ballerino e tendente a compenetrare ma nel complesso si ha una riproduzione del meccanismo. Oppure lo si vincola diversamente. Tutta la simulazione utilizza “rigid body”.

     

    #828663
    Sundeker
    Partecipante
    @sundeker

    Buongiorno SinusAsperitatis, ti ringrazio per la tua prova ed è proprio quello che volevo ottenere!

    Riusciresti a darmi maggiorni spiegazioni di come hai fatto?

    Grazie in anticipo.

     

    #828934
    SinusAsperitatis
    Partecipante
    @sinusasperitatis

    Ti invito a dare un’occchiata al post Fisica segreti e curiosita’ che più’ essere delle delle verità sono dei quesiti ma probabilmente saranno spunto di indagini. Vi ho riportato il tuo quesito perche’ l’ho trovato strettamente legato a quanto da me postato. Non mi e’ chiaro se ti e’ arrivato via email il file blend che ho fatto per ricreare la tua simulazione in quanto non e’ molto che uso attivamente il forum e quindi non tutti gli arcani mi sono noti.

    Comunque grazie mi sei stato molto utile, nel tentativo di ottenere la tua simulazione ho notato che alcune indicazioni nel manuale forse non sono più vere o lo sono solo parzialmente, ci devo lavorare sopra.

Stai visualizzando 13 post - dal 1 a 13 (di 13 totali)
  • Devi essere connesso per rispondere a questo topic.