animare una molla da orologio

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!
1rob1
Posts: 27
Joined: Sat Mar 21, 2020 2:13 pm

animare una molla da orologio

Postby 1rob1 » Thu Mar 11, 2021 7:21 am

Salve a tutti
vorrei realizzare e animare una molla da orologio,
la molla a spirale del tourbillon
che si avvolge e svolge mossa dal bilanciere,
come quella che si vede nella immagine.

Si può fare con frecad?

una volta realizzata in frecad

si può aprire il file in blender
per fare un filmato renderizzato con cycles?
Grazie a tutti per l'aiuto.
Attachments
molla-spirale.png
molla-spirale.png (207.27 KiB) Viewed 647 times
User avatar
onekk
Posts: 788
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: animare una molla da orologio

Postby onekk » Thu Mar 11, 2021 8:39 am

La vedo dura, per ogni posizione dovresti disegnare una spirale con dimensioni leggermente diverse, e se vuoi dovresti farne almeno 16 o 24 diverse e poi cmabiarle al punto giusto come in una pellicola cinematografica.

Un conto è muovere un oggetto "rigido" cioè con la forma che non cambia, il movimento di una molla è più una cosa da FEM che da CAD.

Anche perché una molla in genere è un "filo" avvolto e non viene disegnato per "essere costruito".

Però non è il mio campo, l'animazione comunque dovrebbe essere possibile qualcuno ci riesce anche con FreeCAD.

disegnare la spirale probabilmente è possibile a mente mi pare di ricordare che esiste una primitiva spirale da qualche parte controllo e ti faccio sapere.

Saluti

Carlo D.
Introduzione a FreeCAD in Italiano: https://github.com/onekk/freecad-doc
User avatar
onekk
Posts: 788
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: animare una molla da orologio

Postby onekk » Thu Mar 11, 2021 9:01 am

Code: Select all

"""

Test file copyright 2021 Dormeletti Carlo

This file is an example and could not be used in a 
commercial product without expplicit consent


"""

import FreeCAD
from FreeCAD import Base, Vector, Rotation

import Draft

import math 

DOC_NAME = "test"

def clear_doc():
    """
    Clear the active document deleting all the objects
    """
    for obj in DOC.Objects:
        DOC.removeObject(obj.Name)

def setview():
    """Rearrange View"""

    FreeCAD.Gui.activeDocument().activeView().viewAxometric()
    FreeCAD.Gui.activeDocument().activeView().setAxisCross(True)
    DOC.recompute()
    FreeCAD.Gui.SendMsgToActiveView("ViewFit")

if DOC is None:
    FreeCAD.newDocument(DOC_NAME)
    FreeCAD.setActiveDocument(DOC_NAME)
    DOC = FreeCAD.activeDocument()

else:

    clear_doc()


# EPS= tolerance to uset to cut the parts
EPS = 0.10
EPS_C = EPS * -0.5
VZOR = Vector(0,0,0)


def calc_polygon(n_side, s_length, gc, offset):
    """Calculate the vertex of a regular polygon"""

    ang_dist = math.pi / n_side

    # angle of rotation to align the polygon to the X axis
    theta = 3 * math.pi / 2 - ang_dist

    Cp = [Vector(0,0,0) for x in range(n_side + 1)]
    
    # outer radius given side length
    r = s_length / (2.0 * math.sin(ang_dist))
    ric = r * math.cos(ang_dist)

    if gc is True:
        # use the offset supplied as center
        center = Vector(offset.x, offset.y, offset.z)
    else:
        # recalculate the offset and return as center
        center = Vector(offset.x + r, offset.x + ric)

    for n in range(n_side):
        px = r * math.cos((2.0 * math.pi * n / n_side) + theta) + center.x
        py = r * math.sin((2.0 * math.pi * n / n_side) + theta) + center.y
        Cp[n] = Vector(px, py, 0.0)

    Cp[n_side] = Cp[0]

    return (Cp, center)


Pp, center = calc_polygon(5, 30, False, Vector(0,0,0))

gen_form = DOC.addObject("Part::Feature", "section")
gen_form.Shape = Part.Face(Part.makePolygon(Pp))
gen_form.Placement= FreeCAD.Placement(VZOR, Rotation(0,0,90))


spiral = DOC.addObject("Part::Spiral", "Spiral")
spiral.Growth = 200
spiral.Radius = 100
spiral.Rotations = 4
spiral.Visibility = False


obj = DOC.addObject('Part::Sweep',"molla")
obj.Sections = gen_form
obj.Spine = spiral
obj.Solid = True
obj.Frenet = False
obj.Transition = u"Transformed"  # (u"Right corner", u"Round corner", u"Transformed")


DOC.recompute()
Viene così, ovviamente ho usato del codice esistente per cui il poligono era solo comodo da usare perché era già nel codice
spiral_solid.png
spiral_solid.png (38.74 KiB) Viewed 622 times

Saluti

Carlo D.
Introduzione a FreeCAD in Italiano: https://github.com/onekk/freecad-doc
1rob1
Posts: 27
Joined: Sat Mar 21, 2020 2:13 pm

Re: animare una molla da orologio

Postby 1rob1 » Thu Mar 11, 2021 10:26 am

grazie per i consigli
User avatar
onekk
Posts: 788
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: animare una molla da orologio

Postby onekk » Thu Mar 11, 2021 3:13 pm

In una discussione diversa un utente mi confermava che in blender è possibile creare delle animazioni.

La frase è corta ed non è entrato in maggiori particolari, per cui aspetta ancora un pochino, probabilmente qualcuno interverrà qui, (spero).

Non è assolutamente un campo che conosco, per cui a parte il pezzo di codiec che leggermente modificato ti permette di creare la molla nei sui vari stati di compressione, non posso essere di maggiore aiuto.

Nel caso, puoi postare sul forum inglese, ovviamente se conosci la lingua e ti sai destreggiare quel minimo che basta per una conversazione "tra stranieri".

Nel caso tu voglia imparare come usare lo scripting:

https://github.com/onekk/freecad-doc

Saluti

Carlo D.
Introduzione a FreeCAD in Italiano: https://github.com/onekk/freecad-doc
mario52
Posts: 3461
Joined: Wed May 16, 2012 2:13 pm

Re: animare una molla da orologio

Postby mario52 » Fri Mar 12, 2021 2:09 pm

Saluti

una prova con una spire (per più realista bisogna calcolare tute le spire meno 1x giro)

montaggio con multi spire e differente ragie

Image

ressort_Horloge_Anime.FCStd

mario
Maybe you need a special feature, go into Macros_recipes and Code_snippets, Topological_data_scripting, Dialog creation. My macros on Gist.github.
domad
Posts: 380
Joined: Mon Jun 22, 2020 12:16 pm

Re: animare una molla da orologio

Postby domad » Fri Mar 12, 2021 2:23 pm

1rob1 wrote:
Thu Mar 11, 2021 7:21 am
Salve a tutti
vorrei realizzare e animare una molla da orologio,
la molla a spirale del tourbillon
che si avvolge e svolge mossa dal bilanciere,
come quella che si vede nella immagine.
Si può fare con frecad?
.......
onekk wrote:
Thu Mar 11, 2021 8:39 am
...........
Un conto è muovere un oggetto "rigido" cioè con la forma che non cambia, il movimento di una molla è più una cosa da FEM che da CAD.
.......
Saluti
Carlo D.
Un saluto alla Comunità! Ciao 1rob1,

Ho provato con il FEM, come consigliato da onekk, che saluto, ecco il risultato della sollecitazione su una molla ottenuta con spirale di Archimede, se interessa posso postare il file (è di circa 2,5 Mb).
Attachments
oscillazione.gif
oscillazione.gif (162.38 KiB) Viewed 455 times
User avatar
onekk
Posts: 788
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: animare una molla da orologio

Postby onekk » Fri Mar 12, 2021 3:02 pm

domad wrote:
Fri Mar 12, 2021 2:23 pm
onekk wrote:
Thu Mar 11, 2021 8:39 am
...........
Un conto è muovere un oggetto "rigido" cioè con la forma che non cambia, il movimento di una molla è più una cosa da FEM che da CAD.
.......
Saluti
Carlo D.
Un saluto alla Comunità! Ciao 1rob1,

Ho provato con il FEM, come consigliato da onekk, che saluto, ecco il risultato della sollecitazione su una molla ottenuta con spirale di Archimede, se interessa posso postare il file (è di circa 2,5 Mb).

Beh io non sapevo nemmeno che si potesse fare con la FEM, a proposito che è la FEM (Ok Finite Element qualcosa), ma da buon ragioniere, conosco la fam ma non la fem (a meno che non sia la breviazione di fem mina).

Saluti e scusate l'ironia, ma in questo periodo di pandemia o si diventa matti, oppure ... "si fa dimentare matti" sostiene la mia fem... ehm moglie.

Carlo D.
Introduzione a FreeCAD in Italiano: https://github.com/onekk/freecad-doc
domad
Posts: 380
Joined: Mon Jun 22, 2020 12:16 pm

Re: animare una molla da orologio

Postby domad » Fri Mar 12, 2021 3:58 pm

onekk wrote:
Fri Mar 12, 2021 3:02 pm

Beh io non sapevo nemmeno che si potesse fare con la FEM, a proposito che è la FEM (Ok Finite Element qualcosa), ma da buon ragioniere, conosco la fam ma non la fem (a meno che non sia la breviazione di fem mina).

Saluti e scusate l'ironia, ma in questo periodo di pandemia o si diventa matti, oppure ... "si fa dimentare matti" sostiene la mia fem... ehm moglie.

Carlo D.
Ciao Carlo!!

….. beh non v'è dubbio alcuno che in questo “mare” pandemico ognuno di noi annaspando “dimenta” spesso ….. rischiando di “perder senno”, pertanto inserisco al posto di quel …. “qualcosa” = Method….. sperando, ironicamente parlando, d’aver fatto opera gradita… e confermando che nulla ha a che fare con la FAM e la FEM MINA …… che pure c’è fanno rischià de perder senno e sonno! :lol:

Un saluto
1rob1
Posts: 27
Joined: Sat Mar 21, 2020 2:13 pm

Re: animare una molla da orologio

Postby 1rob1 » Sun Apr 04, 2021 4:38 pm

Ciao Domad.

innanzitutto auguri di buona pasqua.

molto interessante la molla che si muove con la FEM.

E' una cosa che vorrei imparare a realizzare anche io,

ma la FEM mi sembra complesso come argomento,

se potresti darmi indicazioni su come fare step by step te ne sarei molto grato