[Risolto] [Animation]: come muovere un elemento di un assieme A2Plus contemporaneamente alla camera

Forum per le domande e le discussioni in Italiano
Forum rules
regole del forum e le informazioni utili

Importante: PRIMA di chiedere aiuto leggete qui!
Post Reply
User avatar
panda1967
Posts: 37
Joined: Wed Apr 22, 2020 6:57 am

[Risolto] [Animation]: come muovere un elemento di un assieme A2Plus contemporaneamente alla camera

Post by panda1967 »

Salve. Questo è il mio primo intervento nel forum di FreeCAD in italiano. Sono relativamente nuovo in FreeCAD e nel cad 3D in generale.

Premessa

Ho avuto a che fare con FreeCAD lo scorso anno in occasione di un corso CAD/CAM, avendolo dovuto usare in sostituzione di SolidWorks per quanto riguardava la parte CAD del corso. L'occasione di usare FreeCAD mi si presentò a causa dell'epidemia e del coseguente obbligo di lavorare da casa. Mi ci vollero 5 mesi per imparare, completamente da autodidatta poiché gli insegnanti non conoscevano FreeCAD, ad usare FreeCAD abbastanza bene per svolgere il compito previsto dal corso ovvero la modellazione della macchina a vapore di Bernays sviluppando ogni sua singola parte (in tutto la macchina è composta da una cinquantina di parti) fino al complessivo ed alla messa in tavola con esploso. Per la cronaca alla fine riuscii a fare il tutto con FreeCAD ma non mi restò tempo per svolgere nel modo adeguato la parte CAM la quale prevedeva la lavorazione, con un CAM russo di nome SprutCAM, sia al tornio che al centro di lavoro di alcune parti della macchina. Ne uscii, ahimè, con un voto basso nonostante, penso, l'ottimo lavoro fatto con FreeCAD (gli altri studenti del corso usarono invece SolidWorks anche da casa).

Ecco un'immagine del modello:

Complessivo macchina di Bernays.png
Complessivo macchina di Bernays.png (125.5 KiB) Viewed 646 times

Da qui è invece possibile scaricare lo step:

https://www.dropbox.com/sh/f4a9kyb2ehqx ... .step?dl=0

Obiettivo

Fatta queste breve presentazione, veniamo al punto. Vorrei completare quel lavoro facendo l'animazione, o meglio la simulazione, del funzionamento della macchina muovendo la camera intorno alla macchina mentre questa è in funzione per mostrarne i movimenti in tutte le sue parti e possibilmente rendendo, in certi momenti, trasparenti alcuni elementi per mostrare, ad esempio, il meccanismo interno di apertura e chiusura delle valvole, sincronizzato col movimento dei pistoni. Alla fine mi piacerebbe anche scrivere un articolo sul wiki di FreeCAD su come è stato realizzato l'assieme usando A2Plus e le strategie che ho dovuto escogitare per realizzare l'esploso, la distinta materiali e, per l'appunto, la simulazione, oggetto di questa e altre domante che penso seguiranno. Ritengo che potrebbe essere interessante per la comunità di FreeCAD dato che la realizzazione di questo lavoro fu tutt'altro che banale, considerndo anche la discreta complessità della macchina. Penso di pubblicare liberamente anche i sorgenti FreeCAD di tutte le parti della macchina in modo da dare la possibilità ad altri utenti di mostrare, ad esempio, modi alternativi al mio di ottenere certi risultati in una situazione abbastanza complessa come quella della macchina di Bernays; penso in particolare agli ambienti Assembly3 e Assembly4 che non ho ancora sperimentato ma che sembrano molto promettenti.

Ora, per la simulazione ho già scritto un programmino python (premetto che conosco la programmazione sia in C++ sia in Python quindi non ho difficoltà da questo punto di vista) col quale faccio ruotare l'albero motore e conseguentemente, in virtù dei vincoli imposti con A2Plus, riesco ad ottenere il movimento, meccanicamente coerente, di tutte le altre parti della macchina: i pistoni ed il meccanismo di apertura e chiusura delle valvole del vapore. Più o meno ho capito anche come scrivere il codice per muovere la camera, secondo un dato percorso intorno alla macchina, mentre questa è in funzione. Il punto è che vorrei realizzare con l'ambiante Animation tutto quello che si può ottenere con quest'ambiente ed al limite usare il codice python solo se una cosa non si può ottenere con Animation.

Domanda

Ho molte domande da fare ma iniziamo intanto con la prima. In pratica con Animation non riesco a muovere una parte dell'assieme e nello stesso tempo muovere anche la camera. Riesco ad ottenre le due cose separatamente ma non insieme. Ho cercato nel forum ma l'unica cosa che ho trovato è stato un video di microelly2 in cui viene mostrato che la cosa si può fare, con Animation, ma non viene mostrato come.

Allego dei file di esempio con due parti sviluppate con PartDesign e due assiemi fatti con A2Plus, il primo in cui con Animation viene mossa solo una parte dell'assieme e l'altro in cui, sempre con Animation, viene mossa solo la camera. Lo scopo è far fare i due movimenti insieme.

Grazie per ogni suggerimento.
Massimo

P.S. Sto usando la seguente versione di FreeCAD compilata da me:

OS: Ubuntu 18.04.5 LTS (XFCE/xfce)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.24276 (Git)
Build type: Debug
Branch: master
Hash: 2599d67c2bd41a5f051b994b6da7890a2b4ecc4c
Python version: 3.6.9
Qt version: 5.9.5
Coin version: 4.0.0a
OCC version: 7.5.1
Locale: Italian/Italy (it_IT)
Attachments
animazione corpo b.FCStd
Assieme fatto con A2Plus in cui con Animation viene fatto ruotare il corpo b intorno al corpo a mantenendo la camera fissa.
(24.36 KiB) Downloaded 32 times
animazione camera.FCStd
Assieme fatto con A2Plus in cui con Animation viene mossa la camera seguendo un persorso dato da uno schizzo.
(25.08 KiB) Downloaded 32 times
corpo b.FCStd
(31.06 KiB) Downloaded 32 times
corpo a.FCStd
(21.31 KiB) Downloaded 35 times
Last edited by panda1967 on Fri Mar 05, 2021 7:02 pm, edited 1 time in total.
User avatar
panda1967
Posts: 37
Joined: Wed Apr 22, 2020 6:57 am

Re: [Animation]: come muovere un elemento di un assieme A2Plus contemporaneamente alla camera

Post by panda1967 »

Trovata la soluzione: bisogna creare entrambi gli elementi My_Viewpoint e My_Placer interni a My_Manager:

Viewpoint e Placer dentro Manager.png
Viewpoint e Placer dentro Manager.png (50.98 KiB) Viewed 614 times

Allego la soluzione trovata: come si può vedere adesso sia la camera che il corpo b si muovono contemporaneamente.

Il punto adesso è che la camera si muove in un modo strano ma per questo preferisco aprire un argomento a parte.
Massimo
Attachments
animazione corpo b e camera.FCStd
(25.63 KiB) Downloaded 42 times
Post Reply