feng zhou cv&portfolio

98
FENG ZHOU WORK SAMPLES [email protected]

Upload: feng-zhou

Post on 25-Jul-2016

218 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

  • FENG ZHOUWORK

    SAMPLES

    [email protected]

  • CONTENTS

    ENTRY-LEVEL UTILIZATION OF COMPUTATIONAL DESIGN TRAINING

    PERSONAL DETAILS

    ALIEN RESOLUTION

    01 INTRODUCTION 02 CONPUTATIONAL SIMULATION OF MORPHOGENESIS02.1 Introduction of morphogenesis simulation02.2 Topology in digital simulation based on object-oriented programming02.3 The cybernetics of the development

    03 WONDERLAND RESOLUTION : THE CONCEPT OF CELLULAR OF CELLULAR DIVISION DESIGN RESEARCHES03.1 Alien room and chair in wonderland 03.2 Alien within the familiar03.2.1 Wall design03.2.2 Column design03.2.3 Ceiling design

    04 MULTI-MATERIAL ROBOTIC EXTRUSION APPLICATION04.1 Multi-material application strategys 04.2 Multi-material robotic extrusionsystem researches04.2.1 Mixing nozzle04.2.2 Framework of extruding system04.2.3 Arduino and controlling programme04.3 Initial extruding tests 04.4 Simulation interacts with fabrication limitations 04.5 Coral table for multi-material printing research 04.5.1 Multi-material printing research 01 - random printing by red and transparent PLA04.5.2 Multi-material printing research 02 - mirrored column section by red and transparent PLA04.5.3 Multi-material printing research 03 - wood filament and transparent PLA04.5.4 Multi-material printing research 04 - colorful HD-glass

    XENOCELLS _ OUR PROJECT FOR THE EXO-EVOLUTION AT ZKM

  • CV

    2014-2015 Master of Architecture MArch Graduate Architectural Design,Barttlet University College London Graduation: September 2015 Classification: Distinction Master thesis: Alien resolution (White rabbite)

    2007-2012 Bachelor of Architecture Department of Architecture Hebei University of Engineering Graduation: September 2012 Classification: Distinction

    EDUCATION

    09/2015 B-pro show\ Bartlett10/2015 Exo-Evolution at ZKM\Germany

    PERSONAL DETAILS

    EXHIBITION

    Name: Feng ZhouGender: Male Date of Birth: July 7, 1986Place of Birth: Tangshan, Hebei Province, ChinaTel.: 44-7835215966Email: [email protected]: ChinaMarriage Status: Unmarried

    01

  • Language Mandarin Chinese English Professional Skills Processing, Rhino, Grasshopper, Sketchup, AutoCAD, Lumion, Vary, KeyShot Photoshop, Illustrate, Indesign, After Effects, Premiere, HAL(for robotic)

    2012-2014 S&S (Architecture Firm) \Cofounder \Hunan Project: Public Utilities Service Center (Xiangxi\Hunan), Yancheng Cultural Center(Yancheng\Jiangsu), Experiment Park of Changsha University of Science and Technology (Changsha\Hunan)

    2011-2012 HanDan Design Engineering Chinacoal\Internship\Hebei

    2010-2011 Architecture Firm of Hebei University of Engineering\Internship\Hebei

    Arduino, Robotic, Photography, Travel, Music

    SKILLS

    WORKING & INTERNSHIP EXPERIENCE

    PERSONAL INTERESTS

    02

  • Design research with flocking agents computer simulation

    ENTRY-LEVEL UTILIZATION OF COMPUTATIONAL DESIGN TRAINING

    03

  • Digital veil from the computer simulation of flocking agents

    All women have slightly different beautiful shape on neck, shoulder and collarbone line. Initially, our agents move along the body shape, and their movement and density is affected by this kind of beautiful curve lines of womans back bone, collarbone and shoulder bone. At some points, explosion force makes agents to draw any aesthetic line

    Agents movement following the body shape for the wearable function

    Agents movement affected by explosion force is distorted and makes another curve

    line

    04

  • A new technology enables a new imagination. These days the radical advance of computer simulation and 3D printing technology is stimulating many designers and architects to develop new design methodologies. Especially, a data-driven computational work that can deal with the large number of data is emerging as a novel design method. This new computational work could be useful to simulate a complex natural morphogenesis because of its high processing power as Alan Turing, a pioneering computer scientist, once claimed that computers can produce real time physical behaviors of nature. For example, Andy Lomas (2013), who is a mathematician, has simulated a cellular division behavior in his computer work. All geometrical elements of the cellular form such as points, lines and faces are interacting with each other in the elaborate sub-division algorithm during the topological morphogenesis process. Thus, the evolving process of the cellular division computer simulation can be useful for the design of a complex structure with high resolution aesthetics. In addition, this intricate design can be realized as the tangible object due to the swift development of 3D printing technology. Especially, the robotic fabrication method should facilitate to print

    Given these situations, this research aims to explore a new architectural design possibility as an artificial organic structure where all structural elements such as columns, walls and slabs and ornamental elements such as pattern and color are integrated into the one continuous structural situation like natural organism, e.g. petal and coral, by simulating the complex cellular division morphogenesis. Furthermore, a multi-material robotic fabrication was experimented to materialize the complex design based on the cellular division behavior. This could be called as the Retrieval of high resolution aesthetics because the high resolution design has been achieved by the advanced computational work and 3D printing technology instead of craftsmen.

    All design works of the research are conducted by White Rabbit which is a student team from the Research Cluster 1 in March Architectural Design at the Bartlett.

    01 Introduction

    ALIEN RESOLUTIONDESIGN RESEARCH WITH THE CELLULAR DIVISION COMPUTER SIMULATION AND MULTI-MATERIAL ROBOTIC FABRICATION

    05

  • 06

  • 07

  • During the last century, the limitation of static Cartesian space had been recognized in different field. Then, with the studies of curvilinear motion progressing, a dynamic system is involved. For instance, the morphology studies of DArcy Thompson in 1917, and then, the evolutionary landscape studies from biologic and mathematic field by Conrad Waddington in 1957 and Rene Thom in 1980 respectively. After that, in 1999, Greg Lynn pre-sented that dynamic system, which differs from the abstractly static space with the elimination of force and motion, should be also involved in design field by using computational design soft-ware rather than purely modeling tool, since elements are placed in a continuously vector field and has the attribute of vector. It will benefit designers for dealing with curvilinear design issues in complex relationship with external environment. Meanwhile, dynamic system offered a platform that could cope with design issues with both the macro entities in contextual space and parti-cles in micro scale which always keep dynamic rather than static.

    02.1 INTRODUCTION OF MORPHOGENESIS SIMULATION

    08

    02 Computational simula-tion of morphogenesis

  • 09

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    3

    4

    3

    0

    1

    2

    4

    5

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    Topology Transform Method:

    1.Imput particles, springs(not duplicated), and normal of each particle. And then create lists of each particle which named linkedparticles and linkedsprings. Put all linked particles and springs in each list.

    2. Sort linked particles and springs of each father particle. Method: select the first particle of linkedparti-cles, and then check whether the rest particles, which are in the linkedparticles list, contained by the linked-particles list of the first particle. If true, remove it from the father particles linkedparticles list and add it to the index 2, break. and so on. And same as springs. ( if there is not initial normal, it needs to check wheth-er the sorted linkedparticles and springs of all father particles are in counter clockwise, meanwhile, take care of the concave and convex).

    3. Select index zero and the mid of the linkedParticles as cleavage. And then, find the center of smaller index side, by summing all the particle from zero to mid and father particles location and divide by the times of sum opration. After that, create daughter particle at the center. Finally, add the daughter particle into the global arrayOfParticles, and assign the index to the particle dot id.

    4. Add index zero to mid and father particle into daughter particles linkedParticles in order. Create new spings, between daughter particle and each particle in linkedParticles of daughter particle. Then, add the spings into the linkedSprings of daughter particle by the same order as linkedParticles. And then need to remove the sping_1 and spring_2. However, before removing these two spings, it need to be doing the following steps so that all the linedPar-ticles and Spings of each particle in the correct order.

    5. Add daughter particle to particle_0 and particle_3 linkedParticles in the correct order. Firstly, check the father particle and particle_1s index of particle_0s linkedParticles list. After that, let fathers index minus particle_1s. If the absolute value of result equals one, then, add the daughter particle and Index 0 spring at the bigger index of particle_0s lists. Else if the abso-lute value of result are bigger than one, then, add the daughter particle and Index 0 spring at Index zero of particle_0s lists. Finally, use the same method adding the daughter particle and Index 3 spring to particle_3s linkedParticles list (by check father particle and particle_2). To sum up, this method is based on that each of particle_0 and 3 only gain one more partice in the division process, topologically speaking.

    6. Deal with the each particle between particle_0 and particle_3. For instance, particle_1. Check the father particles index in the linkedParticles of particle_1. And then, remove the father particle from particle_1s linkedParticle, then add the daughter particle and the Index 1 spring of daughters linkedSprings at the index of particle_1. After that, use the same method dealing with the other particles between particle_0 and particle_3. To sum up, this way is based on that the particles between cleavage only have one linked particle and spring replaced by the daughter particle and spring which is connected it and daughter particle. Topologically, the particles between particle_0 and 3, are not changed.

    7. For the father particle, remove the particles and springs between cleavage from its lists. Meanwhile, remove the springs from the globle arrayOfSprings. And then, add the daughter particle and its last spring of linkedParticles at the index one of father particle. All in all, there is not particle remove from the global and there are only the springs which are between cleavage removed from global. The most important thing is that all the operations of father particle must be at last, since the change of father particle will change both its globle index and linkedParticles index. Topologically, father particle remove the particles and springs between cleavage. Then,only one daughter particle and connected spring between them added into its lists.

    8. Add all the springs from daughter particles linked springs to the global arrayOfSprings. Then, assign each new added springs index of global to each springs id. This step must after all the operations, in order to get the correct id of each spring.

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    3

    4

    3

    0

    1

    2

    4

    5

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    Topology Transform Method:

    1.Imput particles, springs(not duplicated), and normal of each particle. And then create lists of each particle which named linkedparticles and linkedsprings. Put all linked particles and springs in each list.

    2. Sort linked particles and springs of each father particle. Method: select the first particle of linkedparti-cles, and then check whether the rest particles, which are in the linkedparticles list, contained by the linked-particles list of the first particle. If true, remove it from the father particles linkedparticles list and add it to the index 2, break. and so on. And same as springs. ( if there is not initial normal, it needs to check wheth-er the sorted linkedparticles and springs of all father particles are in counter clockwise, meanwhile, take care of the concave and convex).

    3. Select index zero and the mid of the linkedParticles as cleavage. And then, find the center of smaller index side, by summing all the particle from zero to mid and father particles location and divide by the times of sum opration. After that, create daughter particle at the center. Finally, add the daughter particle into the global arrayOfParticles, and assign the index to the particle dot id.

    4. Add index zero to mid and father particle into daughter particles linkedParticles in order. Create new spings, between daughter particle and each particle in linkedParticles of daughter particle. Then, add the spings into the linkedSprings of daughter particle by the same order as linkedParticles. And then need to remove the sping_1 and spring_2. However, before removing these two spings, it need to be doing the following steps so that all the linedPar-ticles and Spings of each particle in the correct order.

    5. Add daughter particle to particle_0 and particle_3 linkedParticles in the correct order. Firstly, check the father particle and particle_1s index of particle_0s linkedParticles list. After that, let fathers index minus particle_1s. If the absolute value of result equals one, then, add the daughter particle and Index 0 spring at the bigger index of particle_0s lists. Else if the abso-lute value of result are bigger than one, then, add the daughter particle and Index 0 spring at Index zero of particle_0s lists. Finally, use the same method adding the daughter particle and Index 3 spring to particle_3s linkedParticles list (by check father particle and particle_2). To sum up, this method is based on that each of particle_0 and 3 only gain one more partice in the division process, topologically speaking.

    6. Deal with the each particle between particle_0 and particle_3. For instance, particle_1. Check the father particles index in the linkedParticles of particle_1. And then, remove the father particle from particle_1s linkedParticle, then add the daughter particle and the Index 1 spring of daughters linkedSprings at the index of particle_1. After that, use the same method dealing with the other particles between particle_0 and particle_3. To sum up, this way is based on that the particles between cleavage only have one linked particle and spring replaced by the daughter particle and spring which is connected it and daughter particle. Topologically, the particles between particle_0 and 3, are not changed.

    7. For the father particle, remove the particles and springs between cleavage from its lists. Meanwhile, remove the springs from the globle arrayOfSprings. And then, add the daughter particle and its last spring of linkedParticles at the index one of father particle. All in all, there is not particle remove from the global and there are only the springs which are between cleavage removed from global. The most important thing is that all the operations of father particle must be at last, since the change of father particle will change both its globle index and linkedParticles index. Topologically, father particle remove the particles and springs between cleavage. Then,only one daughter particle and connected spring between them added into its lists.

    8. Add all the springs from daughter particles linked springs to the global arrayOfSprings. Then, assign each new added springs index of global to each springs id. This step must after all the operations, in order to get the correct id of each spring.

    Topological transform process:

    02.2 TOPOLOGY IN DIGITAL SIMULATION BASED ON OBJECT-ORIENTED PROGRAMMING

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    3

    4

    3

    0

    1

    2

    4

    5

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    Topology Transform Method:

    1.Imput particles, springs(not duplicated), and normal of each particle. And then create lists of each particle which named linkedparticles and linkedsprings. Put all linked particles and springs in each list.

    2. Sort linked particles and springs of each father particle. Method: select the first particle of linkedparti-cles, and then check whether the rest particles, which are in the linkedparticles list, contained by the linked-particles list of the first particle. If true, remove it from the father particles linkedparticles list and add it to the index 2, break. and so on. And same as springs. ( if there is not initial normal, it needs to check wheth-er the sorted linkedparticles and springs of all father particles are in counter clockwise, meanwhile, take care of the concave and convex).

    3. Select index zero and the mid of the linkedParticles as cleavage. And then, find the center of smaller index side, by summing all the particle from zero to mid and father particles location and divide by the times of sum opration. After that, create daughter particle at the center. Finally, add the daughter particle into the global arrayOfParticles, and assign the index to the particle dot id.

    4. Add index zero to mid and father particle into daughter particles linkedParticles in order. Create new spings, between daughter particle and each particle in linkedParticles of daughter particle. Then, add the spings into the linkedSprings of daughter particle by the same order as linkedParticles. And then need to remove the sping_1 and spring_2. However, before removing these two spings, it need to be doing the following steps so that all the linedPar-ticles and Spings of each particle in the correct order.

    5. Add daughter particle to particle_0 and particle_3 linkedParticles in the correct order. Firstly, check the father particle and particle_1s index of particle_0s linkedParticles list. After that, let fathers index minus particle_1s. If the absolute value of result equals one, then, add the daughter particle and Index 0 spring at the bigger index of particle_0s lists. Else if the abso-lute value of result are bigger than one, then, add the daughter particle and Index 0 spring at Index zero of particle_0s lists. Finally, use the same method adding the daughter particle and Index 3 spring to particle_3s linkedParticles list (by check father particle and particle_2). To sum up, this method is based on that each of particle_0 and 3 only gain one more partice in the division process, topologically speaking.

    6. Deal with the each particle between particle_0 and particle_3. For instance, particle_1. Check the father particles index in the linkedParticles of particle_1. And then, remove the father particle from particle_1s linkedParticle, then add the daughter particle and the Index 1 spring of daughters linkedSprings at the index of particle_1. After that, use the same method dealing with the other particles between particle_0 and particle_3. To sum up, this way is based on that the particles between cleavage only have one linked particle and spring replaced by the daughter particle and spring which is connected it and daughter particle. Topologically, the particles between particle_0 and 3, are not changed.

    7. For the father particle, remove the particles and springs between cleavage from its lists. Meanwhile, remove the springs from the globle arrayOfSprings. And then, add the daughter particle and its last spring of linkedParticles at the index one of father particle. All in all, there is not particle remove from the global and there are only the springs which are between cleavage removed from global. The most important thing is that all the operations of father particle must be at last, since the change of father particle will change both its globle index and linkedParticles index. Topologically, father particle remove the particles and springs between cleavage. Then,only one daughter particle and connected spring between them added into its lists.

    8. Add all the springs from daughter particles linked springs to the global arrayOfSprings. Then, assign each new added springs index of global to each springs id. This step must after all the operations, in order to get the correct id of each spring.

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    3

    4

    3

    0

    1

    2

    4

    5

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    Topology Transform Method:

    1.Imput particles, springs(not duplicated), and normal of each particle. And then create lists of each particle which named linkedparticles and linkedsprings. Put all linked particles and springs in each list.

    2. Sort linked particles and springs of each father particle. Method: select the first particle of linkedparti-cles, and then check whether the rest particles, which are in the linkedparticles list, contained by the linked-particles list of the first particle. If true, remove it from the father particles linkedparticles list and add it to the index 2, break. and so on. And same as springs. ( if there is not initial normal, it needs to check wheth-er the sorted linkedparticles and springs of all father particles are in counter clockwise, meanwhile, take care of the concave and convex).

    3. Select index zero and the mid of the linkedParticles as cleavage. And then, find the center of smaller index side, by summing all the particle from zero to mid and father particles location and divide by the times of sum opration. After that, create daughter particle at the center. Finally, add the daughter particle into the global arrayOfParticles, and assign the index to the particle dot id.

    4. Add index zero to mid and father particle into daughter particles linkedParticles in order. Create new spings, between daughter particle and each particle in linkedParticles of daughter particle. Then, add the spings into the linkedSprings of daughter particle by the same order as linkedParticles. And then need to remove the sping_1 and spring_2. However, before removing these two spings, it need to be doing the following steps so that all the linedPar-ticles and Spings of each particle in the correct order.

    5. Add daughter particle to particle_0 and particle_3 linkedParticles in the correct order. Firstly, check the father particle and particle_1s index of particle_0s linkedParticles list. After that, let fathers index minus particle_1s. If the absolute value of result equals one, then, add the daughter particle and Index 0 spring at the bigger index of particle_0s lists. Else if the abso-lute value of result are bigger than one, then, add the daughter particle and Index 0 spring at Index zero of particle_0s lists. Finally, use the same method adding the daughter particle and Index 3 spring to particle_3s linkedParticles list (by check father particle and particle_2). To sum up, this method is based on that each of particle_0 and 3 only gain one more partice in the division process, topologically speaking.

    6. Deal with the each particle between particle_0 and particle_3. For instance, particle_1. Check the father particles index in the linkedParticles of particle_1. And then, remove the father particle from particle_1s linkedParticle, then add the daughter particle and the Index 1 spring of daughters linkedSprings at the index of particle_1. After that, use the same method dealing with the other particles between particle_0 and particle_3. To sum up, this way is based on that the particles between cleavage only have one linked particle and spring replaced by the daughter particle and spring which is connected it and daughter particle. Topologically, the particles between particle_0 and 3, are not changed.

    7. For the father particle, remove the particles and springs between cleavage from its lists. Meanwhile, remove the springs from the globle arrayOfSprings. And then, add the daughter particle and its last spring of linkedParticles at the index one of father particle. All in all, there is not particle remove from the global and there are only the springs which are between cleavage removed from global. The most important thing is that all the operations of father particle must be at last, since the change of father particle will change both its globle index and linkedParticles index. Topologically, father particle remove the particles and springs between cleavage. Then,only one daughter particle and connected spring between them added into its lists.

    8. Add all the springs from daughter particles linked springs to the global arrayOfSprings. Then, assign each new added springs index of global to each springs id. This step must after all the operations, in order to get the correct id of each spring.

  • 10

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    2

    0

    1

    3

    4

    3

    0

    1

    2

    4

    5

    2

    0

    1

    34

    5

    6

    2

    0

    1

    34

    5

    6

    Topology Transform Method:

    1.Imput particles, springs(not duplicated), and normal of each particle. And then create lists of each particle which named linkedparticles and linkedsprings. Put all linked particles and springs in each list.

    2. Sort linked particles and springs of each father particle. Method: select the first particle of linkedparti-cles, and then check whether the rest particles, which are in the linkedparticles list, contained by the linked-particles list of the first particle. If true, remove it from the father particles linkedparticles list and add it to the index 2, break. and so on. And same as springs. ( if there is not initial normal, it needs to check wheth-er the sorted linkedparticles and springs of all father particles are in counter clockwise, meanwhile, take care of the concave and convex).

    3. Select index zero and the mid of the linkedParticles as cleavage. And then, find the center of smaller index side, by summing all the particle from zero to mid and father particles location and divide by the times of sum opration. After that, create daughter particle at the center. Finally, add the daughter particle into the global arrayOfParticles, and assign the index to the particle dot id.

    4. Add index zero to mid and father particle into daughter particles linkedParticles in order. Create new spings, between daughter particle and each particle in linkedParticles of daughter particle. Then, add the spings into the linkedSprings of daughter particle by the same order as linkedParticles. And then need to remove the sping_1 and spring_2. However, before removing these two spings, it need to be doing the following steps so that all the linedPar-ticles and Spings of each particle in the correct order.

    5. Add daughter particle to particle_0 and particle_3 linkedParticles in the correct order. Firstly, check the father particle and particle_1s index of particle_0s linkedParticles list. After that, let fathers index minus particle_1s. If the absolute value of result equals one, then, add the daughter particle and Index 0 spring at the bigger index of particle_0s lists. Else if the abso-lute value of result are bigger than one, then, add the daughter particle and Index 0 spring at Index zero of particle_0s lists. Finally, use the same method adding the daughter particle and Index 3 spring to particle_3s linkedParticles list (by check father particle and particle_2). To sum up, this method is based on that each of particle_0 and 3 only gain one more partice in the division process, topologically speaking.

    6. Deal with the each particle between particle_0 and particle_3. For instance, particle_1. Check the father particles index in the linkedParticles of particle_1. And then, remove the father particle from particle_1s linkedParticle, then add the daughter particle and the Index 1 spring of daughters linkedSprings at the index of particle_1. After that, use the same method dealing with the other particles between particle_0 and particle_3. To sum up, this way is based on that the particles between cleavage only have one linked particle and spring replaced by the daughter particle and spring which is connected it and daughter particle. Topologically, the particles between particle_0 and 3, are not changed.

    7. For the father particle, remove the particles and springs between cleavage from its lists. Meanwhile, remove the springs from the globle arrayOfSprings. And then, add the daughter particle and its last spring of linkedParticles at the index one of father particle. All in all, there is not particle remove from the global and there are only the springs which are between cleavage removed from global. The most important thing is that all the operations of father particle must be at last, since the change of father particle will change both its globle index and linkedParticles index. Topologically, father particle remove the particles and springs between cleavage. Then,only one daughter particle and connected spring between them added into its lists.

    8. Add all the springs from daughter particles linked springs to the global arrayOfSprings. Then, assign each new added springs index of global to each springs id. This step must after all the operations, in order to get the correct id of each spring.

    BIASBALANCE

    vS: 4

    vD: 4

    vF: 4 vF: 4

    vS: 8

    vS: 6

    vD: 5

    vF: 6 vF: 5

    vS: 10

    vS: 8

    vD: 6

    vF: 8 vF: 6

    vS: 12

    vS: 10

    vD: 7

    vF: 10 vF: 7

    vS: 14

    vS: 5

    vD: 4

    vF: 5 vF: 5

    vS: 9

    vS: 7

    vD: 5

    vF: 7 vF: 6

    vS: 11

    vS: 9

    vD: 6

    vF: 9 vF: 7

    vS: 13

    vS: 11

    vD: 7

    vF: 11 vF: 8

    vS: 15

    Cleavage Form Study I: After we have this dynamic system, we start to research the characteristics and performance between cells with different topologic status. During the generative process, some cells keep symmetry, however some of them are always breaking the symmetry.

    BiasGeometric bias happening during the transform when the cell segmented.

  • 11

    BalanceKeeping geometric balance during the transform when the cell segmented.

    BIASBALANCE

    vS: 4

    vD: 4

    vF: 4 vF: 4

    vS: 8

    vS: 6

    vD: 5

    vF: 6 vF: 5

    vS: 10

    vS: 8

    vD: 6

    vF: 8 vF: 6

    vS: 12

    vS: 10

    vD: 7

    vF: 10 vF: 7

    vS: 14

    vS: 5

    vD: 4

    vF: 5 vF: 5

    vS: 9

    vS: 7

    vD: 5

    vF: 7 vF: 6

    vS: 11

    vS: 9

    vD: 6

    vF: 9 vF: 7

    vS: 13

    vS: 11

    vD: 7

    vF: 11 vF: 8

    vS: 15

    Cleavage Form Study II:

  • 12

    Forces in morphognesis processFor dealing with the geometry, the fundamental system used particles as agents of basic elements that could be regarding as cells in the embryo. During the simulation process, the entire system could maintain a structural stability when it interacts with the perturbation from extrinsic environ-ment.

    vertexNormal

    bulge

    Dist

    h

    Res

    tLen

    gth(

    s) P

    bulgeTarget

    LR

    planarTargetSpringTarget

    All the forces happened simoutiously, after the compromising between each the element, the system will reach a state that each element tend to stable perturbation.

    There are mainly four types of force which is spring force, planar force, bulge force, and separation force.

    02.3 THE CYBERNETICS OF THE DEVELOPMENT

  • 03.1 ALICE ROOM AND CHAIR IN WONDERLANDDesign outcomes share the same level of resolution. Thus, different orders of scale and different directionality of sub-division behavior could be major factors for the design. Small change of parameters of the cellular division algorithm can result in utterly different design results, and the form and resolution of the design are deeply connected with the time flow in the simulation. Totally different design results have been generated in the topological evolution process from the same initial simple square mesh by adjusting several parameters like cells weight, which decides affected level of the gravity force, as seen in the chair and room design.

    13

    WONDERLAND RESOLUTIONDifferent orders of scale sourced from the shared design coreTopological morphogenesis of cellular division was exploited as the core design language for the diverse scale of design research from micro to macro. All design outcomes have the same resolution, which is the maximum resolution that Processing can reach, and share the same design kernel. However, depending on the different orders of scale, the resolution is treated as the different aspect of design. So, this is the Wonderland Resolution.

    Wonderland Resolution: the concept of cellular division design researches

  • 14

  • frame 10

    frame 90

    frame 170

    frame 250

    frame 290

    frame 30

    frame 110

    frame 190

    frame 270

    frame 310 Alice Room that evolved from a simple squre topology

    frame 50

    frame 130

    frame 210

    frame 70

    frame 150

    frame 230

    15

  • Alice Chair that evolved from the same squre topology as the Alice Room

    frame 10

    frame 90

    frame 170

    frame 250

    frame 290

    frame 30

    frame 110

    frame 190

    frame 270

    frame 310

    frame 50

    frame 130

    frame 210

    frame 70

    frame 150

    frame 230

    16

  • 165533117

  • wall column ceiling

    Mutation of ordinary things with increased resolutionNew design method allows designers to imagine the unimaginable before. As a specific design attempt, it was experimented that how familiar and common elements in an ordinary space such as a simple wall, column and ceiling could be mutated into an alien thing with high resolution and complex aesthetics by the cellular division computer simulation. The reason of this attempt is to show that an ordinary space could be involved into the new generative design area in which an elaborate morphogenesis takes place as if a natural organism gradually changes into a complex structure from a simple initial form retaining structural stability. Due to the fact that this kind of complex design with a huge number of triangle mesh faces could be realized solely by the 3D printing fabrication method, this design try could be meaningful for the future digital design and fabrication of architecture.

    03.2ALIEN WITHIN THE FAMILIAR

    3218

  • frame 10

    frame 50

    frame 90

    frame 130

    frame170

    frame 210 frame 230

    frame 20

    frame 60

    frame 100

    frame 140

    frame 180

    frame 220 frame 240

    frame 30

    frame 70

    frame 110

    frame 150

    frame 190

    frame 40

    frame 80

    frame 120

    frame 160

    frame 200

    19

  • An ordinary wall was chosen as the first mutated target. Initially, a simple square mesh was imported into the virtual space, and then particular vertices of mesh are designated to have the sub-division potential. As the cellular division progresses, the initial simple mesh has gradually transformed into the mutated wall with heterogeneous resolution attributed to the different division frequency of different type of cells.

    03.2.1WALL DESIGN

    20

    WALL

  • 21

    Breaking the symmetry with increased resolution

  • Increased resolution within the familiarmutation from an ordinary thing into an alien thing through the cellular division simulation

    22

    Second design target was column. For the column mutation, a simple cylinder was exploited as the initial topology. In this design process, it was seen that the gradual breaking the symmetry with increased resolution by the cellular divisions random behavior. The controllable division frequency and directionality were planned for the column to have intricate inside pattern and smoother outside pattern for the particular column design.

    03.2.2COLUMN DESIGN

    As seen in the column design, the design originality and the complex aesthetic value are placed on the balance between the unpredictable random directionality of the cells sub-division behavior and the predictable intentional directionality of the cells different division frequency and weight

  • Cellular divsion as the desgin language could be applied to the diverse scale of design from micro to macro. In the weired Wonderland designed by White Rabbit, the resolution is flexible and has a different design and structural potential depending on the scale. At a large spatial scale, the gap between layered geometry could be exploited for the sun light performance. With increased resolution by the cellular divsion behavior, a ceiling is mutated into the unseen complex structure that entails complex scattering light like Iceland Ice caves.

    03.3.3 CEILING DESIGN

    Complex scattering light in the mutated ceiling

    Ice cave in Iceland

    23

    CEILING

  • frame 100

    frame 900

    frame 1700

    frame 2500

    frame 300

    frame 1100

    frame 1900

    frame 2700

    frame 500

    frame 1300

    frame 2100

    frame 2900

    frame 700

    frame 1500

    frame 2300

    frame 3100

    An initial simple square mesh evolves into the complex vaults shape generating walls, columns, and the intricate ceiling pattern whilst interacting with gravity force in the cellular division process.

    24

  • A computer simulation enables to have a complex catenary design. This is because the high resolution ornamental pattern can be integrated into the continuous structural system. Tens of thousands of agents in the cellular division simulation constitute structural elements and ornamental pattern within the generative design process retaining the structural equilibrium. This could mean that the extensive integration between design and structure could be possible in the computational catenary model. In addition, this kind of complex synthesis can result in the new geometric shape and the unseen high resolution aesthetics.

    GENERATIVE SPACE WITH INCREASED RESOLUTION

    25

  • A complex computational vaults structure integrates column, wall and ceiling into a continuous structural system with high resolution aesthetics. This kind of complexity cannot be achieved by the manual drawing or conventional digital design methods. Taking account of that the cellular division computer simulation as the new design method can generate a new kind of unseen complex design outcomes, this could have an analogy to the Gaudis design novelty. According to Huerta (2006), Gaudi not only applied hanging models generally but also extensively exploited them for the study of new geometric shapes for vaults. Consequently, Gaudi had designed his original hyperbolic paraboloid vaults, which has the complexity that had been unimaginable by the drawing technic in those times (Huerta, 2006). Now, it was shown that a computer can have the more complex hyperbolic paraboloid vaults that cannot be imaginable with the conventional design method.

    COMPUTATIONAL VAULTS STRUCTURE

    The computational vaults structure from the cell-division morphogenesis

    Hyper vaults of the portico of the church of the Colonia Guell (Tomlow, 1989)

    26

  • 27

  • Large-scale multi-material printing 3-D printing is a revolutionary fabrication method, But most of the 3-D printing methods only depend on single material. Dif-ferent parts of architecture usually need different materials. So multi-materials printing is what should achieve in this project.

    To achieve the basic algorithmscell division by GPU computing is our main task in simulation Under the precondition that quantitative restriction has been substantially removed by GPU computing, cell division, as the most basic rule for the existence and life extension of most of the higher organism on earth, has been introduced to architectural design, thus forming many architectures featuring self-growth and in-depth evolution. The multiple divisions and in-depth evolution are manifested by the major feature of high resolution. Under such circumstances, the realization of high resolution has been made one of the major targets in fabrication. To this end, the robotic, a precision construction tool that is superior than manual operation and high-precision and customized 3D printing technology under the control of computer programs are chosen as the major approach to fabrication. However, it is worth-noticing that most of the things in the world is not composed of single materials, which, in other words, cannot meet the complicated functions or demands of things. Therefore, fabrication is mainly targeted at the realization of multi-material 3D printing.

    Multi-material depositing with robotic arm

    28

    Multi-material robotic extru-sion application

  • High ResolutionHigh proportion of carbon fiber

    Low ResolutionLow proportion of carbon fiber

    Mid ResolutionMid proportion of carbon fiber

    29

  • High ResolutionHigh proportion of carbon fiber

    Low ResolutionLow proportion of carbon fiber

    Mid ResolutionMid proportion of carbon fiber

    04.1 MULTI-MATERIAL APPLICATION STRATEGY Multi-material application strategy 1 _ ResolutionHigh resolution parts are weaker than low resolution parts. So as to strengthen whole model, different proportion of carbon fiber could be applied to the different resolution area mixed with PLA

    30

  • High Pressure Low PressureMid Pressure

    MULTI-MATERIAL APPLICATION STRATEGY Multi-material application strategy 2 _ Structural loadCarbon fiber is a strong and light material. Applying different proportion carbon fiber depend on the load distribution could strengthen structure.Because division simulation based on the spring physics, We can analyze tensile strength depending on the standard length of spring line. Color indicates more tensile stress as closer to the blue. And, more compression stress closer to the red. Different part of structure are in different stress state.For example, some part play a role of column, we can use MORE carbon fiber, so that it can support the whole structure or even more.

    31

  • High Pressure Low PressureMid Pressure

    Display of tensile strength depending on the spring length

    Closer to the Blue: more tensile stressCloser to the Red: more compression stress

    32

  • MULTI-MATERIAL APPLICATION STRATEGY Multi-material application strategy 3 _ MappingModels usually show static information. In our project, cell division is foundational logic, we can use different proportions of another col-or to show the growth trend in next moment. Thus, we could show dynamic information by static model. In simulation model, points in different part has different growth strength. Like some parts are in low growth strength, that means they dont need to grow any more. And some parts are in high growth strength, they need to grow more frequently. Thus, We can use different types or different colors of material to transmit these information.

    33

  • frame 1

    frame 50

    frame 100

    frame 150

    frame 200

    frame 250

    frame 10

    frame 60

    frame 110

    frame 160

    frame 210

    frame 260

    frame 20

    frame 70

    frame 120

    frame 170

    frame 220

    frame 270

    frame 30

    frame 80

    frame 130

    frame 180

    frame 230

    frame 280

    frame 40

    frame 90

    frame 140

    frame 190

    frame 240

    frame 290

    Mapping by the division frequencyIn the simulation system, there are also many inherent infromation in each cell, but some of them impact the system implicitly rather than directly affecting the form, such as the division frequency.

    34

  • 04.2.1 Mixing Nozzle

    Generation 08 Generation 07 Generation 06 Generation 0535

    04.2 MULTI-MATERIAL ROBOTIC EX-

    TRUSIONSYSTEM RESEARCHES

  • Generation 04 Generation 03 Generation 03 Generation 03 Generation 03 36

    3-D printing is a revolutionary fabrication method, but most of the 3-D printing methods only depend on a single material. It is generally understood that different parts of architecture tend to need different materials. Therefore, it would be especially advantageous to achieve multi-material printing. The objective of this project is to attempt to melt most four different types of material, combine them together for extrusion, and extrude various proportion of each material, depending on location or time. In princip, We can accurately achieve a specific proportion of each material for any point of the whole model.

    To accomplish that, tool making is the first stage. During this process, there are three main jobs, such as mixing nozzle, framework of extruding system, arduino, and controling programe.

  • Mixing Nozzle

    37

  • 38

  • Mixing Nozzle-generation 01

    Robotic

    Heaters

    Thermal Sensor

    Carbon Fiber Extruder

    Plastic Extruder

    Gear

    Gear

    Motor

    Filament

    Teflon Pipe

    39

  • Robotic

    Motor

    Gear

    Gear

    Filament

    Teflon Pipe

    Control the gear stop/on

    Diverse Color Concentration and Ratio Dpending on the Pattern Pntricacy

    Plastic 1:51:1 Carbon Fiber

    40

  • Mixing Nozzle-generation 02

    1.The accurate ratio:As the space of cavity inside is too large, there would be some time delay. It is hard to get accurate ratio.

    2.Protect solid material touching spring blades:If material is not melt well enough inside of the nozzle, it is very easy to stuck and

    break the fan.

    41

  • Nozzle design 02Compared with the concept design, fan is removed to narrow the nozzle space.

    But it is still in concept stage.

    42

  • Mixing Nozzle-generation 03

    43

  • Failed Nozzle (F1,F2)

    Nozzle for test (T1,T2)These two nozzles are for feasibility Test. There are 4 filament tunnels, three holes for heaters and a hole for senser. We tested manually.

    Nozzle for test (T1,T2)This test shows high feasibility for multi-material extrusion.

    Material Test

    44

  • Mixing Nozzle-generation 04

    45

  • Nozzle for test (T3)Considering connection with other parts of extruder and real volume, we did this test. We tried to minimize the volume of nozzle, so as to nozzle can be heated easily.So we make diameter only 30mm,and the bottom cone angle is reduced to 8.

    Material test : Carbon fiber + transparent PLAOutcome : The filament from central tunnel still can not totally melt.Analysis :The middle filament cannot be melt well. The sharp shape of the bottom cone and small diameter lead to small volume which can cause small heat capacity, then the nozzle temperature drop rapidly, and

    leading to nozzle block.

    46

  • Mixing Nozzle-generation 05

    47

  • Nozzle for test (T4)Diameter is added to 32mm. The angle of lower half part is changed to 12. The central hole is changed from 3.5mm to 2.5mm.

    Material test : Half-transparent Yellow green blue PLAAnalysis : Filament in central tunnel could be melt well. The increasing diameter and less sharp angle increase nozzle volume and then expand heat capacity. These measures release the unstable of the temperature. However the pressure of extrusion is still high.

    48

  • Mixing Nozzle-generation 06

    49

  • Nozzle for test (T4)For releasing the pressure of extrusion. We try different angles of slant filament funnel.

    Material test : Transparent Red/Green/Blue PLA ABSOutcome : Under the same situation, the extruding pressure of ABS is smaller than PLAAnalysis : In this nozzle, we use the angle of 10 (before we used 15) for slant filament tunnel. But there is no releasing of extrusion pressure

    compared with the angle of 15.

    50

  • Mixing Nozzle-generation 07

    51

  • Formal nozzle for 4 filaments (X1)In the past nozzles, four filament tunnels meet at the same position. For this nozzle we change the angle of different slant tunnels, so that material can meet at different points. This improvement reduce the extrusion pressure efficiently.

    Material Test PLA

    OUTCOMEMulti-material get first success. And there are obviously improve about the pressure of extrusion.

    52

  • Mixing Nozzle-generation 08

    53

  • Material Test pink white PLA

    OUTCOMEExtrusion smoothly without blistering. PLA melt to liquid while ABS melt to meltion, they show different property.

    54

  • 55

  • 04.2.2 FRAMEWORK OF EXTRUDING SYSTEMBesides the nozzle design, another important point about tool is the design of supporting structure. Depending on the analysis of 3D-pring nozzle theory and our test process, we take into consideration the four aspects, namely, the straight tunnel, smooth lining, isolation between hot and cold tunnel, and suitable tunnel size for filament in the design of filament tunnels. To begin with, straight tunnel is to reduce the pressure on it through filament, which will probably break the filament tunnel. Then, smooth lining is utilized to make sure that filament can go through the tunnel easily. After that, if the isolation between cold and hot tunnels cannot work well, some filaments will have to be melted in cold tunnel; consequently, tunnel blocking will occur at the connection of cold and hot tunnels. Finally, suitable tunnel size will protect the filament from breakage in tunnel. Therefore, in order to guarantee the smooth working of extruder, it is essential to take into account these four elements.

    56

  • Isolation between hot and cold tunnel: Tunnel which is on the edge: the method of heat isolation is as the images show as follow. Depending on heat isolation of Teflon pipe, it is used as cold tunnel. And then connect teflon pipe with hot tunnel directly. After that teflon pipe is locked by aluminum lock and screw as images show.Outcome: Tunnel can work well, it is not easy to block the connection between hot and cold tunnel. Central tunnel: Central filament tunnel also depends on the similar method. However, because large screw size has high heat capacity, teflon pipe cannot isolate heat efficiently and the separation of hot and cold pipes is not obvious, which leads to filament melting in cold tunnel and the tunnel is usually blocked.

    04.3.2 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION 01

    57

  • tunnel: three tunnels which are on the sides are not straight. The left and right ones are slightly slant, the forward one is seriously slant. Depending on testing, seriously slant angle lead to high pressure in filament tunnel, even sometimes this pressure can break the forward tunnel. There are also some pressure problems in left and right ones, but it is not as serious as forward one.

    58

  • 59

    Straight, smooth lining, isolation between hot and cold tunnel, and suitable size for filament are four points we need to consider in the process of filament tunnel design. In this supporting structure, the methods of smooth lining and suitable size for filament are similar with the structure one. Straight tunnel: The forward tunnel is serious slant, which leads to high pressure and the tunnel is even broken. Therefore the motor is moved up in this supporting structure to make the slant angle smaller. This method improves the successful extrusion rate efficiently, but there is still some risk to lead to high pressure and break the tunnels.

    04.3.2 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION 02

  • Isolation method between hot and cold tunnel for the side tunnels is also similar with structure one. The heat isolation method for central tunnel is showed by images. There are six pieces of artifacts by MDF. The diameter of the hole on the middle piece is 4mm which is same with Teflon pipes outer diameter. This artifact allows the Teflon pipe cross, but separate iron screw, thus heat isolation can be achieved.

    60

  • Lining: Teflon, that is resistant to high temperature and smooth inside, is used by us as direct tunnel material.

    Isolation between cold and hot tunnels: Because large screw size has high heat capacity, teflon pipe cannot isolate heat efficiently and the separation of hot and cold pipes is not obvious, which leads to filament melting in cold tunnel and the tunnel is usually blocked.

    Size of tunnel: Cold tunnel is mainly composited by 3mm inside diameter teflon pipe, so most of cold tunnel is suitable for 2.85mm diameter filament.

    Straight tunnel:We use the similar methods to make sure tunnel smooth and suitable size with structure two.To make sure tunnel straight, we reduce 4 motors to 3.

    This extruder can work well for our project and our final model was built by this tool. However, to achieve large scale model, we need faster extrusion speed, and more kinds of different filament proportion.

    04.2.2 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION 03

    61

  • 62

  • 04.2.2 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION 03

    63

  • 64

  • 65

    04.2.2 FRAMEWORK OF EXTRUDING SYS-TEM - GENERATION 04

  • 66

  • 05.3 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION 04

    67

  • Compared with generation 03, amount of motors increases from 3 to 4. More kinds of proportion of filament mixture can be achieved by this.

    Arragement of motor is changed from two-dimensional to three-dimensional to make the systerm more firm.

    Heater amount is increased from 3 to 6, and nozzle size is also increased to increase thermal capacity.

    Besides thermal capacity increasing, filament tunnels in nozzle is alse scaled to make the filament soft and be extruded, instead of totally being melted. Thus the generation 04 can achieve a high speed from 5 to 10 times than the generation 03.

    68

  • 04.2.2 FRAMEWORK OF EXTRUDING SYSTEM - GENERATION

    69

  • 70

  • #include #include LiquidCrystal_I2C lcd(0x27,16,2);

    int heaterpin = 5;int thermistorpin = A1;

    long targetTemp = 100; /// LONGlong temperature = 0;

    int tempwritespeed = 1000; unsigned long previoustempMillis = 0;

    void setup(){ int p=0; ///////////// lcd.init(); // initialize the lcd lcd.backlight(); lcd.setCursor(0,0); lcd.leftToRight(); lcd.print("...loading..."); Serial.begin(9600); pinMode(thermistorpin, INPUT); pinMode(heaterpin, OUTPUT);

    previoustempMillis = 0;}

    ////////////////////CHECK TEMPERATURE //////////////////////int checkTemp(){ int sensorValue=analogRead(thermistorpin); double R = (1024.0 * 10000.0 / (double) sensorValue) - 10000.0; double T = 1.0 / (1.0 / 298.15 + (1.0f / 4066.0) * log(R / 100000.0)); T -= 273.15; return T;

    }

    void loop(){

    ///////////////////////////////// HEATING//////////////////////////////// temperature = checkTemp(); Serial.print(temperature); if (temperature < targetTemp){ digitalWrite(heaterpin, HIGH); Serial.println(" ON"); } else{ digitalWrite(heaterpin, LOW); Serial.println(" OFF"); }

    ///////////////////////WRITE TEMP VALUES////////////////////// unsigned long tempmillis = millis(); if(tempmillis - previoustempMillis> tempwritespeed) { int p=p+1; lcd.setCursor( p,0); //lcd.scrollDisplayLeft(); lcd.print("FILAMENTRIC"); lcd.setCursor(p,1); // lcd.scrollDisplayLeft(); lcd.print("TEMP "); lcd.print(temperature); lcd.print(" C");

    previoustempMillis = tempmillis; }}

    #include

    int led_red = 2;int thermistorpin = A1;

    //int rPin[] = {3,4};//int gPin[] = {5,7};//int bPin[] = {9,10};

    int dirPin = 8;

    //int autobutton = 6;

    void setup(){ // Serial.begin(9600);

    ///////////////////////////////MOTOR///////////////////////////////////// pinMode(dirPin, OUTPUT);

    // pinMode(thermistorpin, INPUT);

    // pinMode (led_red, OUTPUT);// pinMode(autobutton, INPUT);pinMode(9, OUTPUT);pinMode(10, OUTPUT);pinMode(3, OUTPUT);

    digitalWrite(dirPin, LOW); //direction}

    void loop(){// temperature = checkTemp();

    int r = 0; int g = 0; int b = 0;

    r = colorTime();

    g = 3-colorTime(); b = colorTime(); // Serial.println(" ON"); if (((r + g + b) != 0)) // || digitalRead(autobutton)) { for(int i = 1;i= i) digitalWrite(9, HIGH); if (g >= i) digitalWrite(10, HIGH); if (b >= i) digitalWrite(3, HIGH); delayMicroseconds(100); // the higher , the slower if (r >= i) digitalWrite(9, LOW); if (g >= i) digitalWrite(10, LOW); if (b >= i) digitalWrite(3, LOW); delayMicroseconds(100);}

    digitalWrite(led_red, HIGH);// } }}

    ///////////////////////////////////////////////////////////////int colorTime(){ oat time = ((oat)millis())/300000.0f; // 20 S time = time - (int)time; int color = (int)(2 * time +1);return color;}

    ARDUINO CODE_For Heating

    04.2.3 ARDUINO AND CONTROLLING PROGRAME

    71

  • #include #include LiquidCrystal_I2C lcd(0x27,16,2);

    int heaterpin = 5;int thermistorpin = A1;

    long targetTemp = 100; /// LONGlong temperature = 0;

    int tempwritespeed = 1000; unsigned long previoustempMillis = 0;

    void setup(){ int p=0; ///////////// lcd.init(); // initialize the lcd lcd.backlight(); lcd.setCursor(0,0); lcd.leftToRight(); lcd.print("...loading..."); Serial.begin(9600); pinMode(thermistorpin, INPUT); pinMode(heaterpin, OUTPUT);

    previoustempMillis = 0;}

    ////////////////////CHECK TEMPERATURE //////////////////////int checkTemp(){ int sensorValue=analogRead(thermistorpin); double R = (1024.0 * 10000.0 / (double) sensorValue) - 10000.0; double T = 1.0 / (1.0 / 298.15 + (1.0f / 4066.0) * log(R / 100000.0)); T -= 273.15; return T;

    }

    void loop(){

    ///////////////////////////////// HEATING//////////////////////////////// temperature = checkTemp(); Serial.print(temperature); if (temperature < targetTemp){ digitalWrite(heaterpin, HIGH); Serial.println(" ON"); } else{ digitalWrite(heaterpin, LOW); Serial.println(" OFF"); }

    ///////////////////////WRITE TEMP VALUES////////////////////// unsigned long tempmillis = millis(); if(tempmillis - previoustempMillis> tempwritespeed) { int p=p+1; lcd.setCursor( p,0); //lcd.scrollDisplayLeft(); lcd.print("FILAMENTRIC"); lcd.setCursor(p,1); // lcd.scrollDisplayLeft(); lcd.print("TEMP "); lcd.print(temperature); lcd.print(" C");

    previoustempMillis = tempmillis; }}

    #include

    int led_red = 2;int thermistorpin = A1;

    //int rPin[] = {3,4};//int gPin[] = {5,7};//int bPin[] = {9,10};

    int dirPin = 8;

    //int autobutton = 6;

    void setup(){ // Serial.begin(9600);

    ///////////////////////////////MOTOR///////////////////////////////////// pinMode(dirPin, OUTPUT);

    // pinMode(thermistorpin, INPUT);

    // pinMode (led_red, OUTPUT);// pinMode(autobutton, INPUT);pinMode(9, OUTPUT);pinMode(10, OUTPUT);pinMode(3, OUTPUT);

    digitalWrite(dirPin, LOW); //direction}

    void loop(){// temperature = checkTemp();

    int r = 0; int g = 0; int b = 0;

    r = colorTime();

    g = 3-colorTime(); b = colorTime(); // Serial.println(" ON"); if (((r + g + b) != 0)) // || digitalRead(autobutton)) { for(int i = 1;i= i) digitalWrite(9, HIGH); if (g >= i) digitalWrite(10, HIGH); if (b >= i) digitalWrite(3, HIGH); delayMicroseconds(100); // the higher , the slower if (r >= i) digitalWrite(9, LOW); if (g >= i) digitalWrite(10, LOW); if (b >= i) digitalWrite(3, LOW); delayMicroseconds(100);}

    digitalWrite(led_red, HIGH);// } }}

    ///////////////////////////////////////////////////////////////int colorTime(){ oat time = ((oat)millis())/300000.0f; // 20 S time = time - (int)time; int color = (int)(2 * time +1);return color;}

    ARDUINO CODE_Initial Code For Extrusion_Proportion Changing by Time

    72

  • #include #include LiquidCrystal_I2C lcd(0x27,16,2);

    int heaterpin = 5;int thermistorpin = A1;

    long targetTemp = 100; /// LONGlong temperature = 0;

    int tempwritespeed = 1000; unsigned long previoustempMillis = 0;

    void setup(){ int p=0; ///////////// lcd.init(); // initialize the lcd lcd.backlight(); lcd.setCursor(0,0); lcd.leftToRight(); lcd.print("...loading..."); Serial.begin(9600); pinMode(thermistorpin, INPUT); pinMode(heaterpin, OUTPUT);

    previoustempMillis = 0;}

    ////////////////////CHECK TEMPERATURE //////////////////////int checkTemp(){ int sensorValue=analogRead(thermistorpin); double R = (1024.0 * 10000.0 / (double) sensorValue) - 10000.0; double T = 1.0 / (1.0 / 298.15 + (1.0f / 4066.0) * log(R / 100000.0)); T -= 273.15; return T;

    }

    void loop(){

    ///////////////////////////////// HEATING//////////////////////////////// temperature = checkTemp(); Serial.print(temperature); if (temperature < targetTemp){ digitalWrite(heaterpin, HIGH); Serial.println(" ON"); } else{ digitalWrite(heaterpin, LOW); Serial.println(" OFF"); }

    ///////////////////////WRITE TEMP VALUES////////////////////// unsigned long tempmillis = millis(); if(tempmillis - previoustempMillis> tempwritespeed) { int p=p+1; lcd.setCursor( p,0); //lcd.scrollDisplayLeft(); lcd.print("FILAMENTRIC"); lcd.setCursor(p,1); // lcd.scrollDisplayLeft(); lcd.print("TEMP "); lcd.print(temperature); lcd.print(" C");

    previoustempMillis = tempmillis; }}

    /////////////MOTOR/////////////////////////////////////int dirPin = 2;//int gradientPins[] = {4,5,6,7,8,12};int gradientPins[] = { 4, 7, 12}; // 1,4,6int innerMotorPin = 3;int outerMotorsPins[] = { 9,10,11};

    int bits = 3;int motorSpeed = 10; // unit: microseconds between steps // the higher, the slower

    ////////////////////////////////////////////////////////void setup(){ Serial.begin(9600);

    /////////////MOTOR///////////////////////////////////// for(int i=0;i

  • #include #include LiquidCrystal_I2C lcd(0x27,16,2);

    int heaterpin = 5;int thermistorpin = A1;

    long targetTemp = 100; /// LONGlong temperature = 0;

    int tempwritespeed = 1000; unsigned long previoustempMillis = 0;

    void setup(){ int p=0; ///////////// lcd.init(); // initialize the lcd lcd.backlight(); lcd.setCursor(0,0); lcd.leftToRight(); lcd.print("...loading..."); Serial.begin(9600); pinMode(thermistorpin, INPUT); pinMode(heaterpin, OUTPUT);

    previoustempMillis = 0;}

    ////////////////////CHECK TEMPERATURE //////////////////////int checkTemp(){ int sensorValue=analogRead(thermistorpin); double R = (1024.0 * 10000.0 / (double) sensorValue) - 10000.0; double T = 1.0 / (1.0 / 298.15 + (1.0f / 4066.0) * log(R / 100000.0)); T -= 273.15; return T;

    }

    void loop(){

    ///////////////////////////////// HEATING//////////////////////////////// temperature = checkTemp(); Serial.print(temperature); if (temperature < targetTemp){ digitalWrite(heaterpin, HIGH); Serial.println(" ON"); } else{ digitalWrite(heaterpin, LOW); Serial.println(" OFF"); }

    ///////////////////////WRITE TEMP VALUES////////////////////// unsigned long tempmillis = millis(); if(tempmillis - previoustempMillis> tempwritespeed) { int p=p+1; lcd.setCursor( p,0); //lcd.scrollDisplayLeft(); lcd.print("FILAMENTRIC"); lcd.setCursor(p,1); // lcd.scrollDisplayLeft(); lcd.print("TEMP "); lcd.print(temperature); lcd.print(" C");

    previoustempMillis = tempmillis; }}

    /////////////MOTOR/////////////////////////////////////int dirPin = 2;//int gradientPins[] = {4,5,6,7,8,12};int gradientPins[] = { 4, 7, 12}; // 1,4,6int innerMotorPin = 3;int outerMotorsPins[] = { 9,10,11};

    int bits = 3;int motorSpeed = 10; // unit: microseconds between steps // the higher, the slower

    ////////////////////////////////////////////////////////void setup(){ Serial.begin(9600);

    /////////////MOTOR///////////////////////////////////// for(int i=0;i

  • Extrusion TestDark Green PLA Green PLA

    Extrusion TestYellow PLA Green PLA

    Extrusion TestPink ABSWhite ABS

    Extrusion TestTransparent Red PLA Green PLA

    Extrusion TestBlue T-glass Pink ABS

    Extrusion TestTransparent Red PLATransparent Green PLA

    Extrusion TestTransparent Red PLATransparent Yellow PLA

    Extrusion TestGreen PLAPink ABS

    Extrusion TestPink ABSTransparent ABS

    Extrusion TestGreen PLA Blue PLA

    Extrusion TestPink PLATransparent PLA

    Extrusion TestTransparent Red PLATransparent Green PLA

    Extrusion TestRed ABSGreen ABSTransparent Blue T-glass

    Extrusion TestTransparent Red PLAYellow PLA

    Extrusion TestDark Green PLAYellow PLA

    04.3 INITIAL EXTRUDING TESTS

    75

  • Extrusion TestDark Green PLA Green PLA

    Extrusion TestYellow PLA Green PLA

    Extrusion TestPink ABSWhite ABS

    Extrusion TestTransparent Red PLA Green PLA

    Extrusion TestBlue T-glass Pink ABS

    Extrusion TestTransparent Red PLATransparent Green PLA

    Extrusion TestTransparent Red PLATransparent Yellow PLA

    Extrusion TestGreen PLAPink ABS

    Extrusion TestPink ABSTransparent ABS

    Extrusion TestGreen PLA Blue PLA

    Extrusion TestPink PLATransparent PLA

    Extrusion TestTransparent Red PLATransparent Green PLA

    Extrusion TestRed ABSGreen ABSTransparent Blue T-glass

    Extrusion TestTransparent Red PLAYellow PLA

    Extrusion TestDark Green PLAYellow PLA

    76

    04.3 INITIAL TESTS

    ROBOTIC TEST / ABB:With ABB it allows us to use 6 digital output for printing different proportion of multi-material. According to the size of nozzle, models can be divided into 3mm a layer, and before getting the toolpath. Meanwhile, the resolution of the model is analysed in Grasshopper, which can also be generated in Processing before then importing this information to Grasshopper. The method the author currently uses is to obtain colour information after the analysis model, and then retrieving RGB values. RGB can then represent three motors. A total rotation speed is given for three motors, so that we can ensure that the rate of the nozzle extrusion remains the same. Then the RGB values are transmitted to Arduino (which controls the running of the motor) and the robotic toolpath. Finally, via the interaction of the Arduino and robotic, each point the robotic reaches has a specific proportion of materials which is controlled by the Arduino. The first printing test was done after finishing the Grasshopper and Arduino code respectively. As the images show, there is more red material in the folded part, and more yellow material in the flat part. This test printing was extremely successful: the method used was to analyse the resolution of the model. It was also able to transmit other information regarding the models, such as growth strength, as mentioned previously.

    Now we use 3 digital output boards, so that it is allowed to get seven kinds of changes of multi-material proportions . Later we will try to use 6 digital ourput boards, that means we could get 63 kinds of multi-material proportions later.

    The test from top images shows a two kinds of materials changing cycle and this cycle term is changing frequently. Our extruding system can achieve 32 specific proportions of four different kinds of materials at most, in any cycle term. After combined with robotic, 32 specific proportions of four different kinds of materials could be located by position.

  • 77

  • Constrain Angle

    Angle constrain in simulationthe drawback of depositing printing method is that it needs supporting structure for the cantilever part during the print-ing process. In order to reduce the support structure, the constrain function is created in the simulation. The con-strain force applied on each particle to rotate the faces in between to make the cantilever angle smaller than certain angle. Meanwhile, this force also interact with the whole system to insure the less deformation.

    With the developments of digital fabrication, the design process tends to integrate the fabrication into one dynamic system. For achieving the integration, it is es-sential to abstract the fabrication information as describable data into the design simulation. In the project, because of the limitations of deposit-printing method, it is not feasible to print the structure that the cantilever angle is larger than certain angle without support structure. Hence, in design simu-lation, each meshface object was designed an extra attribute, which is if the meshface inclined beyond the constraint angle; it would gain a set of vector forces for flipping it backward to the side of smaller than that constraint angle.

    04.4 SIMULATION INTERACTS WITH FABRICATION LIMITATIONS

    55

    60

    10

    78

  • Wrinkling of the structure

    04.5 CORAL TABLE FOR MULTI-MATERIAL PRINTING RESEARCH

    These coral tables are the final geomery for fabrication. And canti-lever angle is less than 45 degree.for any part of the model. In ad-dition, there is no hanging parts. Therefore, this design is printable, without supporting structure. De-pending on this geometry, we made various possibilties to utilize large scale multi-material 3D print-ing technology.

    79

  • 80

  • 04.5.1MULTI-MATERIAL PRINTING RESEARCH 01 - RANDOM PRINTING BY RED AND TRANSPAR-ENT PLA

    81

  • multi-material printing research 01 - random printing by red and transparent PLA

    82

  • 83

    04.5.2MULTI-MATERIAL PRINTING RESEARCH 02 - MIRRORED COLUMN SECTION BY RED AND TRANSPARENT PLA

  • 84

  • 8585

  • 86

    04.5.3 MULTI-MATERIAL PRINTING RESEARCH 03 - WOOD FILAMENT AND PLA

    86

  • 1378787

  • 88

    04.5.3 MULTI-MATERIAL PRINTING RESEARCH 03 - WOOD FILAMENT AND PLA

    This design is a multi-material chair. The part fabricated by wood filament in the middle is for sitting . Because wood is a kind of natrual material which is comfortable for human touching. And other parts are all printed by normal PLA.

    The four filament tunnels are divided two group, group one contains one tunnel for wood filament, group two contains other three filaments for transperent PLA. The model is analysed by grasshopper and divided the whole toolpath into millions of points, and for each of point there are specific information. This information is transfered to Arduino. thus we can achieve different proportions of each filament by controlling speed of four motors.

    88

  • 89

  • 90

    04.5.4 MULTI-MATERIAL PRINTING RESEARCH 04 - COLORFUL HD-GLASS

  • 13791

  • 05.7 PROTOTYPE FABRICATION Final Code _Within 45 Degree _Material Changing by Proportion

    92

    04.5.4 MULTI-MATERIAL PRINTING RESEARCH 04 - COLORFUL HD-GLASS

    There are four different color HD-glass filaments, such as green, blue, orange and transparent. The transparent one keeps being extruded, and other three colorful filaments are extruded, depending on location. The model is analysed by grasshopper and divided the whole toolpath into millions of points, and for each of point there are color information. This information is transfered to Arduino. thus we can achieve different proportions by controlling speed of four motors.

  • 2.3m tall/robotically extruded/multi-material///with Alisa Andrasek Jong Hee Lee Ningzhu Wang

    XenoCells _ our project for the Exo-Evolution at ZKM

    93

  • 94

    XenoCells

    Fast printing speed for large scale model and multi-material printing are the advatage of our fabrication technology. Depending on this, the column size is 2.3m tall, fabrication term is only 7 days, and consumes around 100kg HD-glass.

    video website: https://vimeo.com/143524090

  • [email protected]

    FENG ZHOU