algorithmic modeling for Rhino
I am working on simulating a gridshell with Kangaroo, right now I am having problems with how to model different connections between elements.
I am doing a simple mesh on some curves to simulate thin plate elements, and for now i have been working with meshes that connects the elements at mesh vertices, but this means a very fixed connection, which I am not interested in.
So does anybody have a good idea for how to construct a simple bolted connection? I have been thinking about adding a spring from the from the center of a mesh edge or something similar, but I can imagine someone out there has tried something similar or a bright idea.
See attached. The screen capture is without any connections.
Sketch of idea:
Interesting work. I think you are heading along the right lines with the spring connection.
A few additions I would suggest though :
Split the mesh so you have a vertex in the middle of the strip at the connection point. In fact, maybe try making the mesh along the whole strip symmetrical by splitting each rectangle into 4 triangles instead of just 2.
With just one spring between the 2 strips you have an elastic connection between their positions, but no constraint on their rotations.
I would suggest using some bending forces like this:
where the red squares represent a bending force between their 2 adjacent edges, with a rest angle of pi/2
This gives some resistance on 5 of the 6 degrees of freedom between the 2 strips, but leaves them free to rotate about the axis of the bolt, which I presume is what you want.
Alternatively, if you want the strips to actually lie on each other without any spacing, you could model it like this:
and there are still 4 perpendicular bending forces between this line and each strip.
This gives a hard constraint on the 3 translational degrees of freedom, elastic resistance on 2 of the rotational dofs and free on the last 1.
I hope this helps, let me know if you have any problems modelling this in Kangaroo.
As I've mentioned before - I am working on giving each node 6 degrees of freedom, which would mean you could model each strip as just a polyline, and specify directly the rotational constraints between any pair of particles.
Thanks a lot for your fast reply. The idea about the Pi/2 rest angel is brilliant. I'll give it at try.
About the mesh, the reason why I didn't do symmetrically meshes with 4 divisions (or more) in each strip, is because it gets at bit heavy when I add more strips. And because some of my paper testings showed that the changing diagonals came close to the behavior of the twisting, but I'll also try an do this mesh instead and see what happens. I guess the bending/twisting behavior around the connections will be more realistic with 4 triangles around.
Once again thanks. I'll let you know once I have news and post them.
Yeah modelling with polylines would probably make the simulation/calulations faster :).
Now I am trying out the elastic connection, having no resistance to all 3 rotational dofs. But the new mesh with 4 triangles pr segment, gives me "pyramid-shapes" in most of my segments. I am using 500 bend strength, relative hinge strength of 353 for the torsion and stiffness 1000 for all springs except from the connection springs. Any idea of what this might be?
I am thinking about going back to having hinge resistance in the changing diagonals only - as before, but keeping the mesh as it is now.
Are you starting the simulation with your strips flat or already bent ?
and do you have hinge resistance between all pairs of adjacent triangles on the strip mesh, or just between the pairs either side of the edges of the squares ?
I am starting flat - and I have tried 2 options, either hinges between all or hinges between diagonal triangles, changing direction for each square. Like the first picture.
Coming back to this thread regading Gridshells. I have been trying to model the same phenomenon as Rasmus but now using Kangaroo2. I have followed a slightly similar approach as him but instead of using two overlapped mesh strips I used 2 (rigid) beam elements. Then, when it comes to the connection (bolt) element, I have used a 6-DOF beam with neglegible torsion constant (GJ).
Finally, I have a Line(Length) element connecting opposite edges of the vertices to act as a piston. Thus, the structure is either stretched or compressed by increasing/decreasing the rest length of the element.
I have modelled the same structure in a Finite element model where I obtained the right behavior:
Now I'm trying to translate the model from the FE to GH with Kangaroo2 to be able to perform a more parametric design (i.e. change number of bar elements, orientation, etc.)
Unfortunately, I haven't been much successful :( If someone could help me it would be greatly appreaciated.
there is a component for gridshell generation, try to link this to kangaroo with the surface elements...i think...