Ctrl + P

Page 1

CTRL+P

Pioneering robotic fabrication at the University of Western Australia



Thank you for reading This book reports upon a collaboration undertaken by Fagun Mishra and Frank Mei to examine the use of robots to digitally design and fabricate architectural shapes and elements. The robot used was the UR5e model, which features a new builtin, tool-centric force/torque sensor for use in applications such as sanding, buffing, polishing and deburring where forcefeedback is required for uniform results to be obtained. The project was supervised by Santiago Perez and undertaken as a work integrated learning internship coordinated by Peter Robinson. Between the dates of 01/06/20 and 07/10/20.


01.

Material

02.

Physical

03.

Digital

The justification of materiality

The process of physical fabrication

Integration of digital aid in fabrication


04. 05. 06.

Geometry The Development of Geometry

Fabricate The finalized installation geometry

Evaluate Positive and negative experiences


1

Material


l

Testing and experiments with materials to be used commenced with the selection of clay to water ratio, more importantly the type of clays that were available to us and their characteristics once mixed together. The goal was to develop a base ratio, which then could have its characteristics subsequently improved by the properties of additives used in future mixes.


1.1 BASIC MIX

BASIC B

a l l

C

l a y

Particle size

0-0.2mm

Consistency

Very fine

Ball clay is the primary clay body used in our extrusion due to its properties which include: High unfired strength, plasticity and excellent workability. However, one downside to this is the fact that the clay body requires a lot of moisture to become malleable. This is due to its very fine particle size and, as a result of this, the body experiences significant shrinkage during the drying phase.


CLAY F

i r e

C

l a y

Particle size

0.3-0.5mm

Consistency

Fine

Fire clay is a refractory clay used in the manufacturing of ceramics most notably fire bricks. As fire clays tend to have a larger particle size due to its inconsistency and a range of materials that are mixed into the clay, this material tends to have a high melting point. In addition to this, it has a key property of adhesion, a characteristic that ball clay does not possess.


1.1 BASIC MIX M

Ball clay Fire clay Water

i

x

[ 0 1 ]

BASI M

100g 0g 35ml

Ball clay Fire clay Water

i

x

[ 0 2 ]

0g 100g 35ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


IC MIX M

Ball clay Fire clay Water

i

x

[ 0 3 ]

M

70g 30g 35ml

Ball clay Fire clay Water

i

x

[ 0 4 ]

30g 70g 35ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


1.2 BASIC MIX

ADDIT

H

C

e m p

Proposed trait Effectiveness

Structural strength 8/10

Plumbers hemp is most commonly used as a means to prevent leaks. However, when cut into shorter lengths and mixed into clay it greatly increases tensile strength and self adhesion.

o ff e e

Proposed trait Effectiveness

Quick dry 6/10

Coffee has multiple properties most notably dry coffee grounds tend to suck up moisture which helps to decrease drying time. On another note, when coffee grounds are fired they are burnt off and create a porous texture.


TIVES P

G

l a s t e r

Proposed trait Effectiveness

Adhesive strength 5/10

Whilst plaster added a similar property to coffee, it does not burn off during firing as it doesn’t reduce the porosity of the material. More importantly, plaster cannot be fired.

r o g

Proposed trait Effectiveness

Firing Strength 8/10

Grog is pre-fired clay that has been broken into smaller particles, to then add firing strength to the clay.


1.2 ADDITIVES

ADDIT

H

Quantity Clay Mixed Water

e

m

C

p

100g 98.8g 35ml

Quantity Clay Mixed Water

o

ff

e

e

100g 70g 35ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


TIVES P

l

Quantity Clay Mixed Water

a

s

t

e

G

r

100g 90g 35ml

Quantity Clay Mixed Water

r

o

g

100g 70g 35ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


MAST

1.3 M A S T E R M

a

Ball clay Fire clay Coffee Hemp Plaster Grog Water

s

t

e

r

[ 0 1 ]

44.8g 19.2g 6g 0.6g 9g 6g 45ml

M

a

Ball clay Fire clay Coffee Hemp Plaster Grog Water

s

t

e

r

[ 0 2 ]

43.75g 18.75g 12g 0.5g 15g 10g 40ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


TER MIX M

a

Ball clay Fire clay Coffee Hemp Plaster Grog Water

s

t

e

r

[ 0 3 ]

43.4g 18.6g 12g 1g 15g 10g 38ml

M

a

Ball clay Fire clay Coffee Hemp Plaster Grog Water

s

t

e

r

[ 0 4 ]

45.01g 19.29g 12g 0.3g 15g 8g 53ml

Hardness

Hardness

Density

Density

Tensile

Tensile

Shrinkage

Shrinkage

Cracks

Cracks


1.3 M A S T E R

MASTE


R MIX F

i n a l

M

i x Although we originally intended to fire this final mix, we found out late into the practicum that although this mix suited our purpose best, it cannot be fired. Thus, the incorporation of grog is now void. Fire Clay

20%

Ball Clay

44.7%

Hemp

0.3%

Coffee

12%

Plaster

15%

Grog Water

8% 1 parts dry to 0.55 water


2

Physical


l

The primary goal of this practicum was to construct a custom extruder capable of pushing out material, to be then directed by the robot. Although the anticipated time to design and construct the extruder was to be approximately 50% of the practicum, unanticipated issues arose and required considerable time and effort in troubleshooting these problems.


2.1 EXTRUDER

Design Before clay could be properly extruded with the UR5e, we first had to design a tool which could be attached to the flange and controlled to print geometries. To begin with, we first researched into prior studies of similar projects. While there were different commercial extruders that we had identified, such as Wasp3d, Lutum extruder and the emerging objects clay extruder, a limited budget and access to readily available materials limited

A. B.

our options. As a result, two projects attracted our attention. Firstly, the clay extruder at the IAAC was interesting due to the fact that it did everything we wanted to do but at a larger scale. They used a Kuka robot instead of a UR and had the extrusion tube mounted on the robot arm. In addition to this they also printed clay which was very dry which showed how versatile their extruder was. However, due to limitations of the UR5e load

bearing capabilities we had to design at a smaller scale and the restricted budget meant that the use of this extruder was not possible. The other alternative we studied was the extruder by Bryan Cera. This was the extruder which we ultimately reverse engineered due to the ease of replication as well as readily available and in-depth instructions were kindly posted online by Bryan Cera.

Research Find extruders and reverse engineer them

Replicate Use knowledge of extruder to design our own


3D Printers used to custom fabricate parts for the extruder.


2.1 EXTRUDER IAAC Clay Extruder


Cera-1 Clay extruder


2.1 EXTRUDER


Number

Purpose

1

Extrusion PVC pipe: Holds extrusion material, for the purposes of this practicum: Clay

2

Lead screw: Feeds into driver and pushes the plunger forward

3

Lead screw support: Holds the lead screw in a straight direction to allow smooth travel

4

Coupler: Transfers torque from gearbox to brass nut which directs the leads crew

5

Extrusion nozzle: The tip from which material escapes

6

Nozzle clamp: Attachment for holding down the extrusion nozzle

7

Brass male plug: Attachment from hose to extrusion nozzle

8

Brass male plug: Attachment from hose to extrusion pipe

9

Lead screw guide: Stops the lead screw from spinning inside the lead screw support

10

Hose clamp: Secures the connection of hose to brass male plug

11

Bearing: Prevents resistance between tube base mount and Brass nut.

12

Hose clamp: Secures the connection of hose to brass male plug

13

Flange Mount: Holds the extrusion nozzle to the flange of the robot.

14

Extrusion pipe end mount: Funnels material from extrusion tube into hose

15

Brass nut: Connects the plunger to the lead screw

16

Brass nut: Connects to coupler inside the tube base mount, to then direct the lead screw

17

Flange adapter: A quick release plate in between the robot flange and Flange mount

18

Plunger: Travels inside the extrusion tube to push material to the front of the tube

19

Stepper motor: The motor which connects to the gearbox and drives the whole mechanism

20

Lead screw support holder: Holds the aluminum square tube in place to avoid spin

21

Tube base mount: This attachment connects the extrusion pipe to the gearbox

22

Gearbox: A 30:1 reduction from the stepper motor.


2.2 TEST - 01

Problem Tube base mount 3D printing the tube base mount proved to be a big problem due to the filament and the specifications of the Makerbot 3D printer. The plastic was not strong enough and tore at the connection to the PVC pipe.


Solution Tube base mount With the problem identified as the 3D printer and not the structure of the part, all we had to do is change the 3D printing filament and 3D printer. This was swapped to a better 3D printer: Creality CR10.


2.3 TEST - 02

Problem Tube base mount When the pressure of this 3D print proved to be a lot higher than anticipated, we had to shift to a stronger printer than the creality CR10. The tear was at the M4 screw joints between the extrusion pipe and the tube base mount

Gearbox Although the gearbox did not break, there was a few limitations relating to the performance of the stepper motor. The material originally packed in the extruder was too thick and the stepper motor began skipping steps.

Plunger The plunger experienced a few difficulties throughout the practicum. The first of which was the detachment from the brass piece from the leadscrew which caused the leadscrew to pierce the plunger.

Flange Attachment While there wasn’t an immediate problem with the extruder, the first revision of it proved to be limiting in its movement and flexibility.


Solution Tube base mount At this point we found an even stronger 3D printer which printed with dissolvable supports which reduced the risk of cleaning up the part. Subsequent revisions were printed on the dimension sst1200es 3D printer in the workshop.

Gearbox The simplest solution would be to reduce the viscosity of our material by increasing water content.

Plunger Plunger This solution was done by simply including a thin metal wire to lock the leadscrew and the brass piece together and prevent the leadscrew from independently pushing through the plunger.

Flange Attachment Although not an immediate problem it was solved by reprinting a flange attachment which would hold the extruder nozzle. The extruder nozzle was also switched out to a wider width (or opening) with a longer barrel.


2.4 TEST - 03

Problem PVC tube wear and tear As we extruded more material, further wear and tear began to show on the PVC tube. This became a problem as the material to be extruded began to leak out of these holes.

Extruder leaks The extruder also had a number of leaking points which appeared more evident after switching to a hot rolled steel pipe.

Plunger air gaps Although the plunger is typically air right, the notch from the welded hot rolled steel pipe cuts into the 3D print. Hence the performance of the plunger was limited.

Funnel pressure Although the water content of the mix was high, we found that the funnel at the end of the extrusion pipe densely packed the material and, as a result, an increased pressure was required for the plunger to extrude material. Furthermore, in some cases, extrusion was prevented altogether.


Solution PVC tube wear and tear A simple fix would have been to exchange the PVC pipe for a cold rolled steel pipe. However, due to budget constraints, we had to go with a hot rolled alternative which had seams.

Extruder leaks By sealing the key parts of the extruder with water tight seals, such as silicon where possible, most of the leaking was prevented.

Plunger air gaps This was done by increasing the number of O rings on the plunger. Alternatively, a cup seal would have been helpful. Additionally, if the steel pipe were swapped to one which was cold rolled instead, which allows closer dimensional tolerances.

Funnel pressure Firstly, we bought a male plug with a wider diameter to lessen the pressure during the funneling process. Secondly, the slope of the 3D print was increased so as to facilitate a more consistent extrusion


2.5 TEST - 05

Problem Tube base mount The third revision of the 3D print ended again due to the pressure of the plunger which exerted the most force on the tube base mount. Even with the new 3D print, the tube base mount still tore at the same joints as before.

Joints under stress As mentioned previously, the plunger places a huge amount of pressure around the joints of the extruder marked below. These 3D prints were revised as they were under great pressure and the resultant wear and tear would eventually cause the extruder to break.


Solution Tube base mount The structural integrity of the part had to be carefully reconsidered. By extending the tube base mount and increasing the amount of distance between each screw, we were able to more evenly distribute the force. Steel plates were also added to use clamping force and reinforce the tube base mount.

Joints under stress This final revision rebuilt a lot of 3D prints with better structural integrity with more support around each joint which distributed any pressure and alleviated it from being exerted on any single joint.


2.6 A S S E M B LY


Number

Purpose

1

Threaded rods: Clamps the steel plates together with nuts

2

Steel plates: Serve to reinforce the tube base mount and relieve some stress on other joints

3

Extrusion Steel pipe: Holds extrusion material, for the purposes of this practicum: Clay

4

Lead screw: Feeds into driver and pushes plunger forward

5

Lead screw support: Holds the lead screw in a straight direction to allow smooth travel

6

Coupler: Transfers torque from gearbox brass nut which directs the leads crew

7

Extrusion nozzle: The tip from which material escapes

8

Nozzle clamp: Attachment for holding down the extrusion nozzle

9

Brass male plug: Attachment from hose to extrusion nozzle

10

Lead screw guide: Stops the lead screw from spinning inside the lead screw support

11

Brass male plug: Attachment from hose to extrusion pipe

12

Hose clamp: Secures the connection of hose to male brass plug

13

Flange Mount: Holds the extrusion nozzle to the robot flange

14

Hose clamp: Secures the connection of hose to male brass plug

15

Bearing: Prevents resistance between tube base mount and brass nut.

16

Extrusion pipe end mount: Funnels material from extrusion tube into hose

17

Brass nut: Connects the plunger to the lead screw

18

Brass nut: Connected to coupler inside the tube base mount, to then direct the lead screw

19

Flange adapter: A quick release plate, between the robot flange and Flange mount

20

Plunger: Travels inside the extrusion pipe to push material to the front of the tube

21

Stepper motor: The motor which connects to the gearbox and drives the whole mechanism

22

Lead screw support holder: Holds the aluminum square tube in place to avoid spin

23

Tube base mount: This attachment connects the extrusion pipe to the gearbox

24

Gearbox: A 30:1 reduction from the stepper motor


2.7 A S S E M B LY



3

Digital


l

A significant aspect of this project, was the digital realm. It is through the aid of Rhino Grasshopper, that the extruder, the robot and the final geometries were programmed and controlled. The challenge being to successfully calibrate the material and tools, from the physical world to the digital.


3.1 WORKFLOW

Software

A significant aspect of this project, was the digital realm. It is through the aid of Rhino Grasshopper, that the extruder, the robot and the final geometries were programmed and controlled. The challenge being to successfully calibrate the material and tools, from the physical to the digital world. While there are different ways to send instructions to the UR5e robot, by far the most flexible and user-friendly method of scripting robotic fabrication is through the means of Grasshopper3D.

Grasshopper is an open source plugin to rhino 6 with availability of many other plugins to optimize a streamlined workflow. Scripts of programming must be prepared to control the robot and the extruder tool. Like a typical 3D printer, the software should be customizable through the slicing of the geometry, as such the script should be simple to use, as well as smart. There are two primary plugins which were used in addition to grasshopper, one to receive and interpret the robot’s live position, and the second to

A.

Scorpion

B.

Robots

interpret the geometry and export the movements as a readable UR script for the UR robot. While these were the plugins of choice, grasshopper offers many other plugins which all have their benefits and limitations. Because of the wide variety of commands which can be programmed into the robots, the only ones which will be discussed will be the ones used in our basic script. A basic understanding of grasshopper as a visual programming language is assumed.

Interpreting robot position

Interfacing with UR5 Robot


WORKFLOW

01. Reading robot position Live feed of the robot’s live position using Scorpion plug-in

04. Slice geometry

Input geometry into slicing script.

02. Recalculate robot with TCP 05. Export instructions Add a virtual robot TCP via grasshopper

03. Create geometry

Separately create a geometry which can be read by the software

Instructions are to follow a line which is generated by the robots plug-in,

06. Fabricate

Instructions are sent to the robot which are read and the geometry is fabricated.


3.1 A LT E R N AT I V E

SOFT

M A C H INA

F U RO B OT

Interpreting robot position Offline simulation Sufficient robot library Open source Export robot instructions Interrupt robot program Custom TCP configuration Multiple robot connections

Machina is created specifically for the UR robots and streamlines the workflow to simple components. However, due to lack of development, it is less flexible and limited in terms of gathering data and fabrication.

Furobot, although a highly sophisticated application, as it could not be accessed without permission, many of its features could not be used to establish a live connection to the robot.


WARE S C O R P I O N

R O B O T S

Scorpion is the oldest plugin by far being the first of its kind and has since been abandoned however it can be easily accessed and robot kinematics can be adjusted accordingly, in addition to this it can also live read the robots position.

Robots is the most refined plugin and is the current standard for robot fabrication using grasshopper. It offers great flexibility as well as an open library which can be readily accessed.


3.2 SCORPION

Scorpion Virtual Robot Reads the live robot position and records data accordingly

Name of robot: UR5/UR5e

Robot Base Robot flange coordinates Script Input Robot mesh model

Robot in viewport (boolean value)

Robot in viewport (boolean value)

As Scorpion scripts are old and are exported as clusters, they therefore require quite a lot of processing power and can cause quite a lot of lag. However, they are easily configurable. When Scorpion is first downloaded, it only contains a UR10. A UR5 and UR5e can be added by going into the cluster and editing the robot’s kinematics.


Scorpion Feedback Records the robot position live and records data accordingly

Joint rotation output as a list

Robot Ip Address

Flange TCP coordinates

Begin Feedback (Boolean value) Script output

Status of program in text


3.3 ROBOTS

Create Tool Creates a new tool flange for the robot

Tool name TCP plane (coordinates relative to robot flange) 4 point TCP calibration relative to flange Tool data output Tool weight Tool TCP plane

Tool center of mass (point) (optional)

Tool Mesh geometry


Load Robot Loads robot system either from robot library or custom file

Robot name form library

Robot system data output

Robot base plane


3.3 ROBOTS

Create Program Generates program from commands given, checks for issues and fixes common problems Program export as text Program name

Code as a tree

Robot system (From load robot) Targets for robot 1

Time it takes to execute the program

Targets for robot 2

Init commands as a list (optional starting programs)

Program warnings

Program errors as a list Option to split the program into multiple files

Distance in mm through linear motions (used to error check)


Simple Trial Records the movement of the TCP and represents it as a curve

Import program

Targets for robot 2

Init commands as a list (optional starting programs)

Trail as a polyline


3.3 ROBOTS

Program Simulation Offline simulation of robot program. Right click for extra controls

Import program Simulation mesh Joint rotations as a list Planes on curve

Time as a percentage of program executed

Target index (integer)

Time taken to execute simulation Normalized time (Boolean value) Program

Program errors


Remote Connection Connects and interfaces with the UR robot remotely via IP address

Robot Program Robot network IP (Found on pendant)

Upload program (Button)

Play program (button)

Pause program (button)

When the program is first uploaded it will immediately play so be careful.

Targets for robot 2


3.3 ROBOTS

Create Target Creates target planes for the robot to move to.

Base plane Base plane Motion type: Linear or joint

Robot tool Target output Robot speed Zone (accuracy of TCP)

Robot Commands input Frame for the targets relative to the frame origin

Specify any external axes present



3.4 RECORDER



3.4 RECORDER

This part of the script acquires the position of the robot through a live connection which is obtained through the IP address. Because of the large volume of data which is processed, the component also requires a start toggle. The timer is turned on to begin a live connection to the robot (i.e., the time on the timer specifies how often the component refreshes the rhino model in real time). The output of the component generates three text parameters and one script output. The text simply gives quantifiable robot statistics such as the position of the TCP relative to the rhino XYZ plane, joint rotations in order and the status of any program that is being executed.



3.4 RECORDER

This component is the visualizer for the previous component. Again, because of the large volume of data which is stored within this plug-in, it requires a toggle to be switched on to enable the visualization of the UR robot in the rhino viewport. This plug-in requires 2 two other pieces of information to function: 1. The robot model. This is specified through the drop-down box which specifies which model between the UR5, UR5e and UR10. 2.The robot requires a plane on which to visualize the robot. The output is a robot model and the location of the flange TCP which can be modified later on as required.



3.4 RECORDER

These chains of blocks serve to modify the robot TCP on the model. The origin of the TCP is extrapolated from the teach pendant on the UR5. This can be done through the set-up wizard and entered manually into the sliders shown on the left. This shifts the TCP from the original flange to the new position as updated by the smart wizard. As shown on the upper section, the TCP is not orientated to the correct position, the Boolean toggle components above allow for further adjustment for the orientation of the TCP. Consequently, the tool mesh can be loaded on the robot for better visualization.



3.4 RECORDER

Due to the consistent updates received from the first component, the TCP is consistently being refreshed. By using a recorder block, this point can be recorded and stored into a list while the robot is moved into a second position. Using this method, we are able to map out surfaces at various different resolutions using different grasshopper components to generate a surface from these points. This bridges the gap between the digital and physical by setting a real-world object within the rhino 3D workspace and can subsequently be used to calibrate objects and other interactive exercises.



3.5 SLICING



3.5 SLICING

This large group of components achieve two things. Firstly, it creates a geometry which can be adjusted for testing. In this case the bowl script which will go on to test cantilevered extrusions. Secondly, this script is responsible for the slicing of any specified geometry. Similar to typical 3D printer settings like CURA, GrabCAD and Catalyst Ex, the slicing options can be customizable from the distance between extrusion layers to the location of the 3D printed geometry relative to the printing board. The bottom half of the script receives points calibrated from the previous point recorder scripts and creates an offset surface for the printer.



3.5 SLICING

This last section of the script is a safety check for the sliced geometry which visually shows the designated path as well as displaying planes which orient the TCP plane when the robot is active. It is crucial that the TCP is orientated in the correct direction. If not, it could potentially cause serious damage to the robot and result in broken equipment and endanger personnel. In addition to this, as the robot receives instructions via planes rather than following lines, the number of points is vital to the construction of the geometry. The plane direction can be adjusted by changing the XYZ output in the last part of the script. As the script divides each line into the specified number of planes, for highly complex geometry, it is advised to reduce these amounts of planes because the robot can only process a limited number of planes. After exceeding 2,800 planes, the robot will be prevented from playing the program.



3.6 PROGRAM



3.6 PROGRAM

This third script is the script which actually interfaces with the robot via the network and IP address. There are a few safety mechanisms which should be released before the program can be sent through. This can be found in the Ethernet mod bus section of the tech pendant and the top right drop down box where you can toggle between remote control and local control. This first section of the script is where a robot is chosen. The drop-down box on the top lists all available robot’s in the library. A robot model can be easily added by importing a mesh model and calibrating relative kinematics. Secondly, components at the bottom creates a new virtual tool to attach to the robot. When creating a new tool there should be a few things to consider: 1.Where the TCP point is relative to the robot flange (can be calculated on the teach pendant wizard) 2.the name of the tool; 3.the weight of the tool this should be entered into the teach pendant as well and 4.the mesh model, for visualization.



3.6 PROGRAM

This is where the movement of the robot is generated and a program is produced. This target component must receive a few inputs to create a successful program. Firstly, the joint rotation for the resting T-pose which the robot will begin the program in. This can be seen instructed through the radians’ component. Secondly, the target receives a tool which is specified by the previous section of the script. The robot’s speed should also be specified. The zone is the accuracy at which the robot will move, measured in millimeters. A smaller zone will cause the robot to stutter at each point while a bigger zone will allow for a smoother transition between each target plane. The second half of this script is the generation of the program which can be interpreted by the robot. The merge component is used to give the robot multiple targets (i.e., move to point A then to point B etc.). This is then delivered to the generate program component where a name for the program can be specified as well as the various instructions from the previous scripts.



3.6 PROGRAM

These last two components scripts are: 1. used for offline simulation and verification of the robot program script to ensure the program can be safely executed. 2. to actually execute the program. For the offline simulation the program is received from the create program component and the slider controls the percentage of program executed to produce a still frame of the robot at that stage. An animation can be played by right clicking on the component and a play button window will open. The animation can be observed in the rhino viewport. After the program has been verified the software can then be uploaded to the robot live. This is done through the Boolean toggle which will instantly play the program so exercising great care is paramount. Other controls include pause and start which will respectively halt the program wherever it is and start the program from the beginning again. Lastly, the output from the executed program is a log that can be used as a list to troubleshoot any problems.



4

Geometry


y

The final stage of the project and by far the most interesting was the development of physical geometries. This is where material properties must be considered and understood, to develop a form. The project’s goal was to create a modular, tessellating system, amenable to further development.


4.1 CONCEPT Developing geometries While the original plan was to develop geometries based on prior studies, we decided to reprint a modular structure by Building-Bytes as an experiment to test our material and its ability to defy gravity. What we found was our mixture was not viscous enough to perform at the level which building bytes had originally expected. Furthermore, this could not be adjusted due to the limitations of the extruder.


Cantilevering structures

Stable

Unstable

Gravity force

Unstable

Stable

Center of gravity

Although the printed structure was to be a stable geometry, during the printing phase it became unstable due to one side having to be cantilevered before the other side could be printed. Without a stronger structural material to be extruded, this geometry cannot be printed without collapsing on itself.


4.2 GEOMETRY Developing geometries Due to time constraints and extruder revisions, our original plan to expand on the study of Building byte’s modular bricks, had to be put on hold. We planned to utilize attractor points and external environmental factors to influence the tessellation of our structure, similar to the studies which the IAAC is conducting in their robotic facilities, with project such as Terra Performa. However, due to these complications, we had to quickly develop geometries which showcased our work as soon as possible. This example showcases the additive potential of robotic fabrication.

While there were many geometries developed and considered, the one which we finally settled on was a tessellating wall structure which could be infinitely expanded. The above picture showcases one singular element in the entire structure. This element has very specific ratios meaning that although the proportions must remain the same the size, the element can be scaled up or down at any level.



4.3 MODULAR

ule

ts

E 24

le

n me

/

d Mo


ts

E 64

le

n me


5

Fabricate


e

After an exhaustive research and programming phase, the connection between digital and physical was finally made through fabrication. Through various testing methods, the programming scripts were optimized to ultimately achieve perfect calibration with the material, and the physical world.


5.1 BASICS Variables There are various variables which must be taken into account when calibrating and preparing the robot for fabrication. Furthermore, the math underpinning the program’s operations meant that these variables could be changed and the robot calibrated to extrude material in a different geometry.

R1 = Radius of extrusion pipe

L1 = Length of extrusion pipe

R2 = Radius of extrusion hose

L2 = Length of extrusion hose

X = Plunger speed

P = Lead screw pitch

Y = Robot speed

D = Density of material per cm3

For the purposes of this exercise, the current extruder dimensions will be used as an example. This first example will calculate the rough maximum volume of material packed into the extruder.

R1 = 5.5cm

L1 = 90cm

R2 = 0.35cm

L2 = 100cm

Volume of extruded pipe = (πR12)L1 = (π5.52)90 = 8552.99 cm3 Volume of extruded hose = (πR12)L1 = (π0.82)100 = 201.06 cm3 Weight of material in first load = 8552.99D = 8552.99(0.1) = 855.299g Weight of material in subsequent loads = 8754.05D = 8754.05(0.1) = 875.405g

D = 0.1g/cm3


Extrusion Rate With the given variables which have been defined, the rate of the extrusion can be calculated given the speed of the plunger. and the diameter of the pipe. In addition to this, the robot speed can be determined based on some basic calculations. However, as this does not take into account that the density of material restricts the movement of the plunger, its speed is not a constant.

P = 2mm

R1 = 27.5mm

Each revolution, the leads crew travels 2mm

Volume of material extruded / revolution: π (R1)2 (P) = π (27.5)2 (2)

Volume of cylinder

=

Volume of material extruded

=

4751.66 mm3 / revolution

Volume of material required

=

18 000mm3

1 000mm extrusion line: m

1000m 3mm 6mm

Revolutions needed to complete the extrusion: Volume needed Volume / rev

=

18 000 4 751.66

=

3.82 revolutions

=

5.348 seconds

19% speed

Time to complete the extrusion:

X = 1.4mm/sec

Revolutions required × X 3.82 × 1.4

Required robot speed:

Y = 1 000mm/sec Extrusion length Y × (time)

× 100

=

1000 1000 × (5.348)

× 100




5.2 M AT E R I A L Bowl Tests Before printing our final geometries there were a few more tests which had to be conducted, namely to calibrate the slicing parameters and printing speeds of the geometries. Three tests were conducted to test the limits of our material. These bowl tests were conducted fairly early on to test and verify: 1. Extrusion heights 2. Clay shrinkage 3. Extrusion widths

Test - 01

Test - 02

Test - 03

While the tests were successful in printing, the results varied greatly. As seen in the three photographs, by far the most successful one was the final test which maintained its structural integrity. This was done by maintaining one constant variable while tweaking another. In the case of the first test, the speed of the plunger was kept the same while the speed of the robot was adjusted. In the second test, the layer offsets were adjusted to figure out a desirable layer print offset while the third test was made using a composite of the two prior techniques.


Extrusion parameters While the digital calibration of the robot can change the speed and rate of extrusion, in a practical and real-world application observed from other clay printers, they tend to press the material down to form a consistent foundational layer. This led us to the calibration and real-world offset of our material. We found these settings worked the best for our case.

Surface offset = 3mm

Layer offset = 3mm

For the extrusion width, this will change depending on the speed of the robot and rate which material is extruded. However, our measurements resulted in a layer width of 6-7mm and height of 3mm at the robot speed of 20%. However, if the robot speed were to be increased or decreased this width would incrementally change.

Drying and shrinkage When a clay body loses water content it tends to shrink. This is why for most clay work, it is suggested to minimize the amount of water which is added into the clay body to try and minimize shrinkage during the drying phase. With a ratio of 100:55 (dry:wet) at this mix the clay shrunk by approximately 5%. This should be kept in mind when it comes to the fabrication of the final geometry.

SHRINKAGE

5%


5.3 FA B R I C AT E Digital discrepancy At the moment, the script is not sophisticated enough to calculate the width of extrusion while factoring in the speed of the plunger and the robot. There are just too many changing variables. Therefore, before printing our final geometry there was a process of validating our geometry in the physical realm even if it had already been done in the digital.

Digital Realm

Without adjustment

Post adjustment

As the robot will always print on the surface extruding to either side of the digital model, it should be kept in mind that either side will have a thickness to it. By knowing this, a process of printing, revising and validating was done to adjust the physical geometry to fit the desired model.





6 Evaluation


This project was conducted in a very short time period with many unexpected and challenging events to address. Hence this chapter evaluates and summarizes the progress made, while outlining the future possibilities and visions for this method of fabrication and design.


6.1 SUMMARY

Summary Thanks to the continuous support and opportunities provided by faculty, we were able to establish a solid foundation for robotic fabrication at The University of Western Australia. This practicum can be broken into three phases: 1. Research into material used in 3D printing and broadening our understanding through research on projects similar to ours.. Beyond what was mentioned, there were many other projects which influenced the approach used in our project and the decisions that we made. 2. The digital element involved a lot of scripting via grasshopper as mentioned in Chapter 3 as well as testing and exploring the robot’s limits and capabilities. 3. Fabrication was the final step to validating this practicum as it required a final geometry to prove that we had fully completed the experiment with an adequate level of research undertaken in support of the project.



6.2

GOA

ACHIEVEMENTS

01. Engineer

Design and construct a working extruder as a proof of concept.

02.

Scripting

03.

Design

Script smart algorithms which can execute basic 3D printing tasks with minimal human involvement.

Design geometries which validate and showcase the potential of this method.


ALS 04. Iterate

Solve problems which arise through design iterations.

05.

Fabricate

06.

Assessment

Calibrate the digital realm and fabricate physical geometries.

Evaluate our performance and determine how our work can be built upon.


6.3 L I M I TAT I O N S

LIM 01. Budget

As the budget for the practicum was very limited, we were bound by the number of iterations that we could undertake.

02.

Time

03.

Consultants

Time was limited to 13 weeks and therefore the final geometry was simply as a proof of concept.

For a fabrication unit, we did not have access to many material consultants.


ITS 04. Engineering

This unit was supposed to be a collaboration between engineering and architecture however due to COVID this was changed.

05.

Facilities

Although the lab was suitable to house the robots, it proved illogical in dealing with other processes of the workflow. The location of the lab while adequate proved to be challenging when maneuvering between locations and dealing with materials.



Conclusion Beyond what we have already printed and accomplished. CTRL+P is part of an on going study into material, robotics and automated fabrication in architecture. Although CTRL+P deals with robotic clay printing in architecture it is part of an expansive innovative study of additive fabrication at the University of Western Australia. Our geometry showcases the ability to print structurally sound clay geometries which can be assembled on site without the need to fire. While this research is very rudimentary when compared to the well-developed curriculum of other institutions which explore the robotic fabrication of materials, we hope that this practicum lays the foundation for further development and exploration in robotic fabrication at The University of Western Australia.


Fagun Mishra About Me I have a deep academic and professional interest in material studies as applied in the field of architectural fabrication. I am particularly interested in the area of computational and parametric design.

Roles Computational Designer

Industrial Designer

I enrolled in this practicum to further explore the possibilities of robotic programming and fabrication, to develop and explore the manufacturing of tools and calibrations as they move between the digital and physical world of architecture. The possibility of a creating a final physically tangible product from digitally designed models has always been my motivation. Facebook.com/fagun.mishra Fagunmishra612@gmail.com

Robotic Expert

Project Coordinator

Physical Computing Expert

Fabrication Coordinator

Instagram.com/fagunmishra Fabrication Assistant

https://www.behance.net/fagunmishra https://www.linkedin.com/in/fagun-mishra-9b8101141

Facebook.com/frankmei8 Frankmei8@gmail.com

Budgetary Coordinator




Fra n k M e i Roles Computational Designer

Additive Manufacturer

Tooling design assistant

Project Coordinator

Physical computing expert

Fabrication Coordinator

About Me I am very passionate about architecture and design! I enjoy computational design and exploring the limits to Facebook.com/fagun.mishra which the digital realm can manifest in a physical form and space. Fagunmishra612@gmail.com I took Instagram.com/fagunmishra this practicum to learn more about what kind of work goes into the process of robotic fabrication and https://www.behance.net/fagunmishra to delve deeper into the world of parametric design through grasshopper and rhino. https://www.linkedin.com/in/fagun-mishra-9b8101141

Facebook.com/frankmei8 Frankmei8@gmail.com Instagram.com/frankmei_

Data Chronographer

Material Expert

Behance.net/frankmei158bdc Linkedin.com/in/frank-mei-834a571b7


Special Thanks We extend a special thank you to our host supervisor Santiago Perez for actively volunteering to run this practicum and providing assistance and guidance when needed. We’d also like to acknowledge the support of the academic coordinator and the rest of the Faculty of Arts, Business Law and Education internship team for making this unit flexible enough for us to successfully complete the practicum. In addition to this we would like thank to Graeme Warburton and the ALVA workshop team including David Marie and Guy Eddington. You all greatly helped us and we appreciate the time and effort that each of you invested into our practicum. Lastly, we thank you for taking an interest in our work. We hope that we have stimulated your interest in exploring how the robotic fabrication of materials can be effectively and efficiently used in architecture and design.



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.