You are on page 1of 16

Designing Associativity - Assignment 3

17. February, 2010


Joel Letkemann
The studio project is centred on the
development of a CNC robot, which creates
molds in sand, as an ecological alternative to
standard molds used in making concrete wall
panels and other building components.
void motor_stop(){
The Sandbot is essentially scale-less; it is able to digitalWrite(motor_left[0], LOW);
digitalWrite(motor_left[1], LOW);
create molds of any size, constrained only by the size
of the surface it is working on. digitalWrite(motor_right[0], LOW);
digitalWrite(motor_right[1], LOW);
delay(25);
}

void turn_right(){ void drive_forward(){


digitalWrite(motor_left[0], HIGH); digitalWrite(motor_left[0], HIGH);
digitalWrite(motor_left[1], LOW); digitalWrite(motor_left[1], LOW);

digitalWrite(motor_right[0], LOW); digitalWrite(motor_right[0], HIGH);


digitalWrite(motor_right[1], HIGH); digitalWrite(motor_right[1], LOW);
} }
I used Grasshopper, a plug-in for Rhino, in order to define a ‘g-code’ for any
surface i could wish to develop. This returned a set of z-coordinates, which
were multiplied by the radius of the mechanism, in order to gain the rotation
in degrees, which was fed into the code for the machine.

-17.015 -20.914 -5.98


-28.827 -36.563 -19.076
-35.59 -42.744 -35.244
-25.855 -47.452 -48.211
-33.868 -54.79 -49.821

-36.877 -56.803 -33.891


-58.454 -55.497 -28.892
-43.283 -44.282 -54.716
-10.07 -29.166 -9.617
-38.918 -30.2 -14.147

-58.129 -54.327 -16.257


-60.503 -65.768 -14.406
-78.236 -67.009 -11.982
-72.861 -63.146 -15.273
-67.231 -57.521 -33.798
Interface with Cadenary Catanary Arch, on analogy with St. Louis’ Arch, with
Grasshopper Definition
Because of the proposed material, concrete, which is good in compression, I
investigated catanary geometry, specifically the programs Cadenary - developed by
Axel Kilian - and Active Statics - developed by Simon Greenwold.

Active Statics Screenshot Cadenary Screenshot


Cadenary geometry,
returning a “chain” of 7
links
Cadenary’s approximation
of a catenary curve
A different definition in Grasshopper.
While not self-supporting in construction, this structure has a curved surface
on one side, while still maintaining the constraints set for the project. This
definition allows one to change the thickness of the membetrs, thicker at the
bottom, while thinner where less material is needed.
Catanary Mesh, with One Planar Surface

1 The first step is to divide the surface according to the desired


number of ‘bricks’ in the dome. In order to make sure these
were appropriately ‘tilted,’ I divided the original surface into
4 quarters, with the intention to rotate them again. These
surfaces were then made into planar surfaces.
2 These planar surfaces were offset according to their distance
from the ‘ground,’ as a dome supports much less weight at
the top than at the bottom. the corner points of the original
9 surfaces on the dome were projected to the center of the
original surface, projected onto the ground plane. These
intersections were used as the corner points of 9 new
surfaces

3 The edges of these 2 sets of surfaces, 9 on the original


dome’s surface, and 9 planar surfaces at varying depths,
were lofted, in order to create the sides of these bricks.

4 Finally, the quarter of the dome was rotated, in order to


complete the dome.
This definition, then, returns the values for production, as a series of points on a contour. The
logic trees for this definition are also adapted to

.csv
Excel
This next iteration tried to accomplish the
same logic with a more complex morphology.
Instead of a single surface, this morphology
was composed of several surfaces, as well as
openings.
The mesh is fed into a function which remaps the
value of certain verticies on the mesh, and their
distance to the ground.

Those offsets which are greater than a specified


number, provided by a slider, are closed entirely.
These are, invariably, higher up in the structure,
and thus are closed to provide a ‘roof.’

Those faces of the mesh that are less than that


number are fed into Weaverbird’s triangulate
mesh component, and then into the Weaverbird
hole component, which is offset by the specified
value.
As i was having trouble defining an offset for this definition; Grasshopper
was having trouble with the many surfaces i added, I moved this mesh in the
z-direction, and lofted the resulting wireframes.

You might also like