PRE2016 3 Groep15: Difference between revisions
Line 318: | Line 318: | ||
* The construction robot can help construction companies compete better on the market. | * The construction robot can help construction companies compete better on the market. | ||
=== Main USE focus === | |||
Now, as can be seen in the list above, the concept of a construction robot can be addressed in various ways. One could choose to develop a broadly applicable robot to make it useful for everyone in the world. However, that will unnecessarily make the concept less suitable for all different classes. Therefore, one specific user is chosen to influence the design. In addition, by trying to address all USE aspects, the depth of the concept will be limited. Whilst, with this project, it is of course the goal to do in-depth research into artificial intelligence and robotics. Hence, it was decided to specify the user and main focus of this project. | Now, as can be seen in the list above, the concept of a construction robot can be addressed in various ways. One could choose to develop a broadly applicable robot to make it useful for everyone in the world. However, that will unnecessarily make the concept less suitable for all different classes. Therefore, one specific user is chosen to influence the design. In addition, by trying to address all USE aspects, the depth of the concept will be limited. Whilst, with this project, it is of course the goal to do in-depth research into artificial intelligence and robotics. Hence, it was decided to specify the user and main focus of this project. | ||
Line 327: | Line 327: | ||
* Since slums are often on areas that are not fully level (often on hills), the construction robot will be able to operate under an angle. | * Since slums are often on areas that are not fully level (often on hills), the construction robot will be able to operate under an angle. | ||
In the this chapter it is discussed how our robot could be used for the improvement of slums. | |||
In the | |||
==== The Dangers of slum architecture ==== | ==== The Dangers of slum architecture ==== |
Revision as of 12:56, 13 April 2017
Group Members
Name | Student ID |
Martijn de Boer | 0907480 |
Josja Geijsberts | 0896965 |
Gijs Herings | 0953862 |
Martin van Leeuwen | 0901497 |
Max van Meer | 0951669 |
Bart Tulkens | 0956335 |
Introduction
Many industries are becoming more and more automated, but when looking at the construction sector, this automation seems to be lacking. Some companies are working on automating this industry by for example 3D printing layers of concrete. This however, is not the best solution nor the only one. Pouring concrete to print houses brings along various problems, such as lacking strength and stability and time consumption. If one were to use pre-made components to build a house, electronic wiring and piping can easily be integrated into the construction.
In this wiki page, a project is discussed in which a possible solution for automated construction is analysed. This possible solution concerns an automated construction robot that places prefabricated building blocks, and its advantages, disadvantages and how this can be achieved will be investigated. Initially, the focus of this project was on developing and analyzing a simplified prototype that used Duplo blocks to autonomously build small houses. However, after thorough planning and analysis, this plan was discontinued. This was mainly due to having too little time to focus on the full scale problem since many of the small scale problems take a lot of time and effort. A new plan was developed, with a new goal. The new goal is to develop a functioning algorithm that converts a 3D model of a house into a path that the robot should follow to build that house. Alongside the algorithm, research will be done into the problems and possibilities of the robot in practice. To conduct proper research, various experts will be contacted and interviewed.
Basics of House Building
For every house, four things always need to be present; the foundation, walls, windows and a roof. Because of the focus of this project on society as explained later on, only the most simple en effective building methods are given. Another aspect that has to be taken into account when building a house or district is the availability of water, electricity, waste collection and a proper sewerage. These basic essentials will also discussed below. Foundation
The base of a house is called a foundation. Everything will be built on top of the foundation. The foundation should be stable in all conditions and create an even surface to build on. There are different types of foundations, which are used under different conditions. For example, in an area with a high change on earthquakes, a different type of foundation is used. Below, the most common foundations are elaborated. [1]
- Masonry foundation: A foundation made of concrete or bricks that creates a perimeter wall. Inside of these walls, piers, columns and posts can be placed. [1]
- Concrete foundation: This foundation is made by creating a mold for the concrete and after the drying process of the concrete, a solid foundation is created on which can be build. The concrete is reinforced by iron bars most of the time. This is one of the most common used foundations in the U.S.A. and Europe, certainly when a basement is created. [1]
- Caisson foundation: In certain areas, the soil contains particles like clay, which expands when exposed to moisture. Normal foundations will break under the pressure created by the expansion. Caisson foundations are the solution for this problem. The foundation consist of multiple piles or posts that are embedded in the underlying bedrock, to transfer the weight. On top of this, a normal concrete foundation is added. Figure 2 visualizes this concept. [1]
- Wood foundation: A less durable, but cheaper and faster to build foundation. [1]
- Pile foundation: This type caisson of foundation is mostly used when there is a higher change on floods. Piles are driven into the ground to support the load on deeper layers of the soil. The house will rest on top of this piles, increasing the distance from the ground to the home itself. [1]
- Earthquake foundation: As said before, normal foundations will not offer enough stability in areas with earthquakes. There are a lot of innovative concepts that can improve the stability of a house, for example the levitating house developed by Air Danshin. The houses are equipped with an airbag which, when sensors measure a possible earthquake, will expand and lift the house. This way the vibrations will almost not continue in the house [2].Of course, this is not the only and best solution. A more common and easier to applicable option is to isolate the structure of the house from the foundation with bare isolation bearings. [3]
When building a foundation, one should also think of the implementation of the Basic Essentials, which can be read below.
Walls
Basically, there are three main construction methods for walls [4]:
- Masonry wall: the most used type of wall in The Netherlands. It consists of bricks or cement blocks held together with cement mortar. There is a lot of variables available for this type of wall. For example, there are five common types of brick used in this method, namely: Common burnt clay bricks, sand lime bricks, engineering bricks, concrete bricks and fly ash clay bricks. [5] These brick types can also vary in dimensions and stacking methods, as you can see in Figure 3.
- Concrete wall: This is the same as the concrete foundation, only now applied to walls. It is often used in large buildings. Also the walls can be made in a factory instead of on site.
- Light partition wall: This wall consists out of a light structure which will be covered by boards or plates. This method is used a lot in the U.S.A. and Europe. The main advantages in comparison to the other walls is the flexibility in layouts and the building speed. This wall type can also be build at a factory instead of on-site. The biggest disadvantage is that the wall is not meant to bear a high load.
Windows and Doors
In this project, the assumption will be made that the windows and doors itself have been produced at a factory. This means that the process of placing windows and doors is relatively easily. The builder leaves an open space for the window or door to be placed. If done correctly, the window or door frame should fit exactly into this space. A window is not made to support the same load as a wall and thus reinforcements at the sides or top is necessary. Two common methods are presented below.
- Post and lintel: strong horizontal elements are held up by strong vertical elements. This can be fabricated at a factory. This is also the method used for windows and doors in light partition walls [6].
- Arch: A pure compression form which turns the resolving forces into compressive stresses and removing tensile stresses [7]. There are many types of arches, the Jack Arch will be explained as example. The Jack Arch, which can be seen in Figure 4, is a method used in masonry construction. It uses the same principle as the post and lintel structure, only it is divided in smaller parts rather than one large part. [8].
Roof
There are various types of roofs, as shown in Figure 5. Larger beams are used to support the weight of the roof itself. In most cases, smaller planks are placed on top of the beams and for example, roof tiles are placed on top of these planks. It is also possible that the whole roof is fabricated off-site and transported to the construction site.
Essentials
Water, power and sewerage are the three main essentials to make a house livable. In the western world however, internet and sometimes natural gas are also important requirements. During construction the implementation of those systems should be taken into account. For example, room should be made into the fundamentals to make sure there is place for a underground sewerage. Or another example is creating holes in the wall for power sockets and the wires towards them.
Initial Plan: Prototype
Initially, the goal was to develop a functioning, small-scale prototype. This prototype was to pick up and stack Duplo blocks basen on a given building plan as input. A 3D-model of this concept can be found in Figure 2. However, after thorough investigation, it was found that the achievability of this prototype was too low. A lot of small scale problems would have to be solved whilst there would not be enough time to discover and analyse the full-scale problems. It was therefore decided to discontinue the development and research into the prototype.
Renewed Plan: Algorithm and Study
The new goal is to develop a proof of concept for the software of such a robot, and a mockup for the interface. The script will indicate if the autonomous part is feasible and the mockup will make clear how this robot would be used by architects. The script should able to, on user input, provide the path that the printerhead should follow in order to build the desired building. The input will be an .stl model, exported by any CAD program used for designing buildings. In this manner, the designer is not flooded with extra tasks. The interface should thereby also be self-explanatory and easy to use.
In the study that will be conducted, the market for this robot and the relevant USE aspects are thoroughly considered. The information acquired in this study will be used to influence the functionality of the robot.
The side view of the final design can be seen in figure 1, while the front-view can be seen in figure 3. In figure 1, you can see the possible movements of the construction robot and the most special parts. The design is based on a concept of Professor Behrokh Khoshnevis. The main difference between his concept is the fact that his design uses concrete to print, while the provided solution functions with bricks. In figure 3, a brick providing solution is implemented in the design. The orange blocks represent bricks, while the gray part represents a conveyor belt. Left from the robot arm the conveyor belt is filled with bricks, while at the right side, it has already used most of the bricks. The conveyor belt loops back to the beginning where it gets refilled. The whole system can be refilled with bricks by inserting brick stacks in the left side. For now, the robot arm is displayed by a rectangle. This is not representative for the concept. The robot arm should look like the one in this video, and thus like a smaller version of the robot arm in figure 4.
Interview with an expert
To get a different point of view on building houses with a robot, we thought it would be a good idea to interview Theo Salet, head of the 3D concrete printing project at the structural design department. After some time and effort, an interview finally came to fruition.
At the start of the interview, the design was shown and Mr. Salet was asked if he had any major remarks or changes. The first thing he noted was why we wanted to build the house on location. His goal and philosophy is to be able to print separate parts of a house one day. No more putting tubes in later, no more work in the rain. His idea to be able to design the walls with features pre-installed. Then when you want to build a house, you choose the parts you want for your dream house, print all the separate parts in a factory, ship it to location and put them together in a matter of days. The different designed part have a size of a wall or sorts. His second remark was why we had a machine in mind that made something in a smaller space. Why not design multiple smaller robots, like a swarm, each with their own task, to build the house. This way there is no limit to how big you want to build and it seems more cost effective.
Then it was asked how he would solve setting windows. The answer was that the part with the window would just need a hole in the size and shape of the window. After it is printed, the window is put in and glued to the concrete. However, he did not know how electric lines should be integrated. He hoped that the upcoming technology of charging by induction would be the answer to that.
The next question was how far is the technology is now. However, 3D concrete printing is still very much in the starting phase of development. The main focus of Mr. Salet lab is to print consistently. At the moment people can print two of the same shapes, but sometimes the figure falls apart and sometimes it hardens like its supposed to. The supposed solution is to monitor al kinds of parameters like air humidity, amount of added water, temperature et cetera. and create a control loop that compares the parameters constantly to an ideal pre-calculated case and makes adjustments to get a working final result.
The program that would create 3D models for the printer would be based on BIM. According to Mr. Salet, it should calculate in the background whether the given design is feasible with 3D concrete printing and warn you in time if that is not the case. That way, it would safe the designer a lot of time.
According to us, it seemed printing concrete would be very prone to cracks, since the material is very uniform. Mr. Salet acknowledged this and said that the idea is that ultimately the print concrete has fibers or small beads that should enhance the material to a wanted composite. For a stiffer concrete, add more deformation resistant beads, for a light concrete, keep the weight low by adding light beads. Reinforced concrete has steel bars in it to accommodate for pull forces. The 3D concrete printer on the TU/e is the only printer that can print somewhat reinforced concrete by having a steel thread through the system that gets printed with the concrete.
Finally, we wondered how the concrete stayed soft inside the tube. The answer that the component that hardens the concrete only get added when at the print head.
When we came at the end of the interview, Mr. Salet welcomed us and every other student that has a cool idea, to use the 3D concrete printer for any kind of study related project. According to him, the 3D concrete printer is a study tool that is available for all students.
The mechanical system
The Goal
The main objective for the automated construction robot is to do the masonry work autonomously. This means that it will be able to place the bricks and apply cement at any given location within its bounds. The robot was inspired by preexisting concepts such as 3D printers the concrete printer.
Motion
One of the major design decisions is to focus the robot on mass production. Therefore it was decided to put the entire robot on rails so it can build an entire street of houses without requiring redeployment. Before the construction robot can do its work the construction site will have to be flattened and the foundation will have to be constructed. The first element in the framework is the two rails that enable the robot to move in a horizontal axis. The move on these rails two powerful electromotors will be required. To enable movement on the vertical axis the robot will use a hydraulic system. [] . This will be combined with a hydraulic system that enables the robot to rotate around its origin. This extra movement option is motivated by increased accuracy and reduced power consumption. Moving the entire robot on the rails will be less accurate and consume more power since the load on that movement is higher than on the hydraulic rotational movement. Finally the robot arm responsible for placing the bricks can move on the axis perpendicular to the rails. This movement will be controlled using an electromotor applying torque to a belt connected to the robot arm. This axis connects the two hydraulic arms.
Material Supply
Initially the Bricks will be placed in a magazine located at the base of the robot. Two magazines will be used to ensure a continues supply for the robot. These magazines will be refilled with bricks by the construction workers on location. These bricks can be extracted from this magazine using electromotor that pushes individual bricks out of the magazine and onto the conveyer belt. This pushing system will be able to move vertically and be able to push the top brick out of the magazine onto the conveyer belt. The conveyor belt itself can be split up into two sections. The first section transports the bricks up the vertical axis. There is however a challenge in designing such a conveyor belt since the size of the vertical axis is variable. This means that the conveyor belt itself also needs to be variable in size. To achieve this result the belt can be varied by varying the distance of a pivot point. This conveyor belt places the brick onto the second conveyor belt on the perpendicular axis which brings the bricks in range of the robot arm. Finally the robot arm requires cement in order to function. This cement will be made separate from the robot in a cement mixer. This cement can then be pumped from the mixer to the cement dispenser.
The robot arm
Ultimately when the bricks are on the upper conveyer, they have to be placed on their desired position by the robot arm. To do that, the robot arm goes to the desired position and picks a brick from the conveyor belt. After that, it brings the brick past the cement dispenser behind the conveyor belt, to apply cement on both the side and the bottom of the brick. When the brick is provided with cement, it is placed on the desired position of the construction. The cement dispenser is on the other side above of the conveyor with the end facing towards the robot arm. It is inspired by the cement dispenser of the SAM robot. Most bricks have standard dimensions. With those bricks it does not matter which brick the robot arm picks up. However, when a half brick has to be placed, the robot arm has to move along the conveyor to that particular brick, pick it up and place that on its desired position.
Sensors
In reality the robot will not know of it's own exact location. Therefore a method is required to give the robot feedback on its current location which can be done using an encoder. Additionally an ultrasound sensor could be added to the robot to avoid collision with personnel or any other objects.
Determination of construction time
Robotarm
When the construction robot has arrived at the desired position, a recurring set of movements will have to be done to place the bricks. This will be done by a smaller more accurate robotarm. The robotarm has to pick the bricks up, go past the cement dispenser to dispense cement on the bottom and the side and place the brick securely.
Time
To calculate the time, a kinematic model of the given robot has been made. This model changes the wanted x and y coordinates (of the robotarm relative to the conveyor) into the needed angles for those given coordinates. Then the difference between the angle of this situation and the last situation is calculated. The maximum speeds from the robot specs are taken and multiplied by the angle differences to calculate the time needed for that movement. Some movements however are happening simultaneously, so the movement that takes the longest time to execute only get added to the total time of the brick placing movement.
Implementation
Ultimately this script gives a calculated construction time. These variables will be implemented in the pathfinding algorithm of the robot. This way the total amount of energy and time can be calculated to build the given house. This way, for any given house design, the required time to build the design can be presented.
Improvements and ideal concept
At the moment the movements calculated are relatively simple. It would be preferable to be able to make calculations for more complex movements, using all the different available motors. A more complex kinematic model would be needed to transfer positions into angles.
Also, the time required for the 'hand' of the robot arm to grab a brick is a rough estimation at the moment. This part of the arm could be worked out more when the actual robot arm is chosen. This way the calculations could become more accurate. The same idea holds for the arm itself. The masses of the various parts are estimated and when more information about it are present, the calculations could be improved.
There is not only one type of brick used, there are many different kinds of bricks. Bricks with different dimensions and different weights. These parameters influence the movement and energy and calculations. What would be ideal, is that the chosen brick parameters can be put in or even chosen from a database. With these parameters, the models will then calculate the required time and energy.
Conclusions
For the hollow bricks often use in third world countries (see: 'The robot in use'), the calculated time for the robot arm to grab and place a brick is 8.7 seconds. This is roughly in compliance with the SAM robot discussed in 'Cost Analysis', which takes about 11 seconds per brick. The time needed for the entire robot to move to another brick appears to be negligible compared to the time required to grab and lay a brick: about a factor 10 smaller. When optimizing the brick laying process, which involves laying thousands of bricks, it thus makes more sense to try to speed up the movement of the robot arm. All in all, building a (small) house of 5 m x 5 m and 7.5 m high and some inner walls, costs the construction robot roughly 26 hours.
Users
In the design of the robot and the software the user will play a vital role. It was therefore important to have discussion with a potential user of such a robot to see how they design. We managed to arrange an interview with Thijs Kruiselbrink PHD student of the faculty "Bouwkunde" at the TUE and asked him the following question.
What workflow do you use to design houses? Currently the Autocad software is most commonly used to design houses. Autocad is a 3D modeling software from autodesk capable of exporting 3D models in many different formats. Alternatively Bim is also starting to get more popular. Bim is very usefull since buildings are constructed virtually within the software itself, which allows its users to find problems with the design earlier.
From this we conclude that we will need a format that Bim and autodesk can export as the input for our pathfinding algorithm so it integrates nicely with the workflow of architects.
Construction robot script
To determine and visualize the path that the robot has to follow to build a given house, a Matlab script is written. The program works by loading a STL model into Matlab using already existing software. The program will use the vertices and faces from these model to determine where and in what order it will place it blocks. Requirements The model will be able to
- Import any 3D model exported in the STL format
- Successfully visualize the construction of a building from a model containing only rectangular shapes.
- The system should be relatively user friendly
- The system will use a proper pattern when placing the bricks to ensure stability
- The script will be able to deal with half bricks and tell the user how it needs certain bricks to be cut
Milestones
- Import a 3D Model
- Initialize a Grid/matrix that represents a building space.
- Determine which coordinates in the grid are (in) a wall from the faces.
- Determine which coordinates in the grid are (in) a wall for different heights.
- Define where bricks should be placed.
- Define in what order the bricks should be placed.
- Create a user-interface
3D model to matrix
The first step in the script will be to use a 3D model exported from Bim or Autocad and convert it to a matrix containing the locations of bricks.
What should it do?
- It will be able take a 3D model from a STL file and convert it to a matrix usable by the Brick-path algorithm.
- It will be able locate windows.
- It will be able to mark bricks affected by window placement.
- It will be able to use a set size of brick.
Limitations
- Due to the limited time available the complexity of this algorithm will be limited.
- Since the focus of the robot will be third world countries it will primary be used to create houses with simple shapes. Therefore the design of the algorithm will be limited to rectangular shapes.
- Since the information that can be retrieved from the 3D model windows and doors can only be detected if the designer of the 3D model makes a hole in the model. The algorithm will not be able to implement fancy patterns for the bricks. It will however be able to implement the regular brick pattern
The algorithm
Converting a 3D model into a matrix required by the Brick-path algorithm is not as simple as it seems. Since the only real data that can be extracted are the faces and the vertices a way has to be found to find what coordinates lie inside the 3D model. A 3 dimensional model is built up from three dimensional coordinates that indicate a corner called vertices. These so called vertices are then grouped together in faces. These faces are an indication for the computer in between which vertices it should draw a shape. The general idea behind the algorithm will be to define which coordinates are within the 3D model. This will be done by first creating a matrix and then iterating through the matrix while continuously checking whether we pass one of the faces of the 3D model.
Importing the 3D model
To import a 3D model into Matlab an extention STL read is used. This gives us the ability to obtain a list of vertices and faces from a 3D model with the STL format. This 3D model will have to be in the same folder as the Matlab script.
Creating the matrix
The .STL file is converted to a matrix for every layer of the building. The dimensions of this layer are determined by the size of the CAD drawing. On Figure 6 the matrix from the fourth layer of a simple building is shown. The building in question is shown in Figure 5. The grey coloured parts are the walls, also indicated by a 1, the red coloured parts are part of the window and the blue colour indicates a door. From this matrix the coordinates for each stone are taken and used in the loop.
The loop
Because the building is split up into multiple layers the coördinates for the bricks should be found for each layer. The process of finding them is the same for each layer, so a loop is used in which the brick coördinates for each layer are put into a single array. When all the layers have been iterated, the result is an array filled with the coordinates for every stone which can be used in the BrickPath algorithm.
BrickPath Algorithm
What should it do?
Due to a limited amount of time available for this project we will have to define what our algorithm will be able to do at the end of the project, and how it could be improved. The list of the end-of-the-project goals is the following one:
- Plot an optimal path between all bricks in the brick matrix. The algorithm will be able to come up with a path to place all stones in an efficient order, but also taking structural integrity into account.
- Give the amount of bricks as output. Because the robot plans its complete path before starting it will be able to calculate the amount of bricks and half bricks necessary for the input building. This will reduces waste of bricks and ease the work of the construction workers, who will be able to cut just as many stones as necessary.
- Give an indication for the construction time. The robot will plan its entire path before starting, as mentioned above, which will enable it to specify the time necessary for the complete construction. Of course this depends just as much on the robot itself as on its input.
- Take windows, doors and supports into account. When the design contains a door or a window (which it most certainly will) the algorithm should be able to identify them and give a signal to the construction workers that a support must be placed. The algorithm will be able to give the measurements of this support before starting the path, so the supports can be prefabricated. Lastly, the algorithm will take the time to place the support into account and continue to print somewhere else so the support can be placed.
We see more opportunities for our algorithm which cannot be implemented due to a lack of time, resources or both. These features are listed below:
- Types of masonry. For every design that will be built a list of masonry types should be selectable. The algorithm will then automatically adjust its path plan to the chosen masonry type.
- Insulation. In our current algorithm isn't taken into account. The algorithm itself will not be able to select certain insulation types on its own, this should remain a task of the architect and partially based on the wished of the future inhabitant of the house. What the algorithm should be able to have is a function that enables insulation based building, so cavity walls and insulation attachment should be taken into account.
- Electric wiring and water supply systems. An integral part of a (modern) house is the electricity and water supply. They are mostly supplied through the walls, which means our algorithm should take them into account. In the file supplied to the algorithm pipes and wires should be marked so the algorithm can consider them while building the walls. In an even more advanced system only the socket and water supply requirement locations could be input in the file and the algorithm could determine how to install the pipes and wiring itself.
- Construction workers info. Construction workers will still be important to in our robot design so the algorithm should take their wishes and needs into account. In a more advanced algorithm not only the time it will take to build the wall can be outputted, but also an entire planning that includes shifts and breaks, and the amount of construction workers necessary for a certain task such as placing a window. The workers should be able to input their preferences through an easy UI.
- Estimate necessary cement amount. Just as with the bricks, the algorithm should be able to estimate the amount of cement that is needed to complete the building based on the other input parameters. This will make construction easier and reduce waste.
- Natural disaster safety norms. In places where natural disasters such as earthquakes occur regularly the structure of buildings is adapted to them. This could also be implemented into our algorithm. Based on recommendations from structural engineers and geographists the architect or even the construction worker should be able to select a safety norm, for instance ranging from one to 5. This norm will affect how much the algorithm lets structural integrity influence the masonry type and the amount of cement necessary. It could even decided to add supporting pillars to a certain building to improve the safety of the house it is building.
Now we have described what or robot will or could be able to do it is also useful to propose what is shouldn't be able to do. Our construction robot is foremost a masonry robot, which restricts it form the ability to perform certain tasks. These tasks are listed below:
- Install wiring, water supply pipes and insulation. As mentioned above the algorithm will be able to take these factors into account, but in our intentions it should eventually not be able to plan and execute the installation of electricity wiring, water supply pipes and insulation. Implementing all of these features into one robot would make the robot overly complicated and not as effective as two (possibly smaller) robots executing the different tasks separately.
- Build roofs, doors, windows etcetera. Just as with the insulation, wiring and piping the robot will take these factors into account but will not install them. The reason is that much precision is needed to install for instance windows which would make the robot overly complicated again, while humans are still better in these tasks.
Data structure of the input
As described in SECTION, the SCRIPTCAD_NAME script takes a 3D model and gives a matrix of arrays, representing the bricks in a house with ones and zeros. The BrickPath Algorithm was written to take such a matrix and determine the optimal path for the ‘printer head’ (robot arm). The purpose of this script is to minimize the time not laying bricks. Its output, a list of coordinates sorted in an optimal order, is also used to calculate the total time and energy required for the robot to build the house. In this section, the algorithm will be described in more detail. Data structure of the input As described in the introduction, the script’s input is a matrix, stored with arrays of bricks. An example of such a house matrix is shown in Figure 6.
Every letter in the matrix is a cell array of length h, equal to the height of the house. The three basic arrays are: 1. m: represents a wall. A cell array containing list of h ones. 2. r: represents a wall with a window in it. The same as m, except bricks 0.4 h until and including 0.7 h are zeros: empty space in which builders place the window. 3. z: represents empty space. A cell array containing a list of h zeros.
Processing the data
In a nested for-loop, all x and y coordinates of house are put into a 2 x n list, n being the total of bricks. This list is at first unsorted so if it were fed to the robot as is, a lot of time would be wasted by moving the printer head to random bricks in the matrix.
For this reason, an optimal path has to be determined across all the bricks. It is decided to simply start with the outer walls, as these include most of the important characteristics, like windows, walls that tubes have to be installed in, etc. In order to do this, the coordinate vector is sorted four times based on the highest or lowest x or y coordinate. When the outer walls are sorted appropiately, only the inner walls remain. These do not have to be laid out in a predictable order like outer walls do. Simply letting the script spiral inwards or zig-zag across the house would result in a lot of time being spent traveling from brick to brick. A better solution has been found, which is to sort the remainder of the coordinate vector based on a minimal euclidian distance between any two points. The algorithm thus gives priority to bricks that lay in a straight line, after which it will lay remote bricks grouped in fewer numbers.
Results
In Figure 7, the algorithm is applied to the house of Figure 6. The printer head travels in the direction of the arrows, starting with the outer walls at the top left. It loops around and then moves along all the inner walls in the optimal order.
Note that the empty spaces between bricks result from the scale of the axes.
The robot in use
In this section, the use of the construction robot for construction of slum replacements will be described.
A typical day of using the robot
A day shift
The construction robot works by placing bricks and cement, however it will need construction workers to finish the walls by cleaning up the excess cement on the walls. Besides that, the bricks have to be loaded into the robot from time to time. This would still require two construction workers. Also, all aspects of the house after the brick laying have to be done by human workers. This means that the typical brick laying day goes as follows:
- Arrival of construction workers an start up of the robot.
- First brick laying session. The robot lays bricks and the workers keep the machine going.
- Lunch break, although the robot could technically work by itself. The cement has not dried up yet after the maximum hour of lunching, But the workers will have to up the tempo, to close in on the robot.
- Next brick laying session until end of work hours
- Closing up of the workplace around 5 o'clock.
- Before the workers are gone, a security will arrive with a night shift
- Although security on construction sites is not an issue exclusive to the brick laying robot, it will be necessary to guard the construction site.
A night shift
Alternatively, since the robot has the advantage of being able to work non stop, an alternating night and day shift could be arranged, with different workers assisting the robot between the shifts. However the following problems would have to be dealt with:
- Lighting: While the robot does not need daylight to function well, the assisting workers do. The construction therefore has to be well lit.
- Sound: Since nobody likes hearing construction noises and light in the middle of the night, only large scale new neighbourhood projects can benefit from working 24 hours a day. Otherwise a lot of complaints of the surrounding civilians will be the consequence.
short sessions
Since the robot can work 6 times faster than human construction workers, the bricklaying part of the construction can be executed in one 6th of the normal time. When the robot is done building a construction, if there are rails present going towards the next house of the neighbourhood, it can continue immediately on the next house. If the project is a more private construction however, the robot will have to be broken down and shipped to the next project.
Materials
Available data on building materials used in slums is scarce, by nature. People use whatever they can find for cheap. A brief study has been done and a pattern can be seen: when bricks are used at all, often these are so called hollow bricks (Figure X). This makes sense, as their size makes them easy to stack and the empty space functions as isolation, which is ideal in the warm countries where these slums are typically found. The pallets of bricks loaded into the construction robot will thus consist of these kinds of hollow bricks.
USE Aspects
Below, a short overview of USE aspects is given.
User
- The construction robot will reduce the workload of the construction workers.
- The construction robot will reduce the amount of danger construction workers are exposed to.
- The construction robot will lead to a quicker realization time of the building, which in turn leads to quicker accessibility for potential future residents.
- The construction robot will enable more possibility for personalized designs
Society
- The quicker realization time of buildings the construction robot provides, will lead to a more efficient construction sector, which in turn leads to:
- The construction sector being more able to keep up with society’s demand for more living room.
- Possibly lower house costs due to reduced construction costs. This makes owner-occupied houses more accessible to a bigger audience.
- The construction robot could be used for building aid in third world countries.
Enterprise
- The quicker realization time of buildings can save construction companies a lot of money due to being able to do more projects in less time.
- The construction robot can save construction companies money on wages for construction workers
- The construction robot can help construction companies compete better on the market.
Main USE focus
Now, as can be seen in the list above, the concept of a construction robot can be addressed in various ways. One could choose to develop a broadly applicable robot to make it useful for everyone in the world. However, that will unnecessarily make the concept less suitable for all different classes. Therefore, one specific user is chosen to influence the design. In addition, by trying to address all USE aspects, the depth of the concept will be limited. Whilst, with this project, it is of course the goal to do in-depth research into artificial intelligence and robotics. Hence, it was decided to specify the user and main focus of this project.
As shown earlier, User, Society and Enterprise aspects are all present in the concept. However, since this system could be optimized for ‘simple’ housing and to lower costs, this project will mainly concern Society and will focus on construction in third world countries. The construction robot and the pathfinding algorithm will be used to minimize costs, excess material and time required to build a house. By focussing on this part, other ideas will be left out of the scope of this project. Ideas such as complex structures, varying building techniques and large-scale buildings will not be considered. In this project, the construction robot and script will:
- Minimize excess material and thereby the reduce the material costs.
- Take limited resources into account, and will be able to deal with the use of different kinds of bricks.
- Build simple, straightforward houses that can be built easily and thereby reduce building time.
- Since slums are often on areas that are not fully level (often on hills), the construction robot will be able to operate under an angle.
In the this chapter it is discussed how our robot could be used for the improvement of slums.
The Dangers of slum architecture
At the moment the conditions in slums are horrible. People use all kinds of materials found in garbage. Corrugated iron sheets are most commonly found, but mostly anything that can be used in some way to build a house. Rusty surfaces and pointy edges make sure accidents are prone to happen. Materials often are not even connected, just put on each other with the hope that things wont budge. All these materials are also filthy and could cause many different health problems. However that is not all. These houses are compact and very close to each other, often build on top of each other without any regard for possible collapse. The combination of little space, sloppy construction and bad hygiene makes for really dangerous housing. Not only is it dangerous for the resident of the house itself, it is also poses a threat to the people in the environment It a floor collapses, multiple people are at risk. The same applies to a sticking out nail, everyone walking past it risks it to hurt themselves to it. That is why slum housing has to be improved. Charity organisations try to help slums by providing concrete for the poor in slum alleys [6]. However, the people are not capable of building decent housing themselves, as is proven by the many unstable buildings in slums. Almost no slum dwellers, as they are called, have any constructional knowledge. This is because most of them grew up without education. So to provide them with tools they can not properly use, is a bad idea. The first solution that comes to is to let construction workers with the required knowledge, work on the improvement of the slums. This however introduces new problem. Who would want to work in such horrible conditions? And if people are willing to work in the slums, how do construction companies guarantee the safety of their employees. The slums are hazardous terrain after all, as analyzed. A solution to this problem is to let automated construction work in these environment. A house building robot could quickly build multiple houses, without being endangered by the environment. There still has to be supervision of the construction and minor detailing of the houses, but the dangers for construction employees are greatly reduced. As they won't have to lift the cheap concrete brick through small alleys. The only major obstacle for the improvement of slums then remains the financial funding.
Potential Users & Stakeholders
Because our USE perspective is mainly focused on Society this of course affects our stakeholders. In this part of the wiki we will describe three situations in which our construction can be used and name the different stakeholders and their interest in our project.
Slums and rapid urbanisation
Our construction robot is partially aimed at poor third/second world countries that require rapid house construction to stop the uncontrolled growth of slums. From 1990 to 2001 the global slum population grew with 220 million people, posing a huge housing problem (SOURCE). Because of this mostly governmental organisations will be interested in our project. The reasons for that are that the costs of our robot are too high for local neigbourhood communities in cities, the increased speed at which housing can be constructed and the government/municipality's responsibility for urban planning. These reasons for interest are only caused by problems such as underdeveloped city slums, but governmental organisations or building companies in third or second world countries can also be interested through the prospect of making profit from fast and cheap housing. It has to be said that our construction robot will most likely only be profitable when simple houses are built in larger numbers, which makes it more suitable for third or second world countries than western countries because the need of many cheap houses is not as big in these western countries. Another interested party could be NGO's or other organisations such as the UN promoting sustainable housing in said countries. One sustainable design with for example room for solar panels and a shared electricity grid can be implemented into the robot which can be built over and over again. This makes it very suitable for such sustainable housing projects because with more houses comes a more reliable local electricity grid. Of course the NGO's could coöperate with the local governmental organisations mentioned at the start of this paragraph. Of course there is one other group of stakeholders, which is the people that will live in the houses constructed by our machine. These people that previously lived in the slums or outside the city don't have very high demands of their housing (the quality of slum and rural housing in third/second world countries isn't particularly high). Because of this relatively small and cheap houses with basic facilities such as electricity and water will suffice. The houses should also be cheap because the people living there will have to be able to maintain their house in a good state and also be able to purchase a house (possibly with governmental subsidies).
Refugee camps
Another situation where fast and rapid housing comes in handy is a refugee camp. Refugee camps now mostly exist of tents, which aren't a very good solution for long term housing. Our construction robot would be able to rapidly build appropriate housing to replace tents. It will still be large organisations such as local governments in countries with many refugees (such as Greece and Libanon) or for instance Unicef that use our robot because the costs are too high for small charity organisations or the refugees themselves. The same advantages as slum-replacement (easily scaleable, more reliable electricity grid) still apply, but using our machine for refugee camps has one big disadvantage. This disadvantage is recyclability. Because most refugeecamps are temporarily camps the house could be abandoned once the refugees are able to return to their homes. Tents have the advantage over our houses in this case because they can be taken apart easily and moved elsewhere. This implies the houses built for refugee camps should be easily recyclable, which would practically make them advanced tents. However, charity organisations and governments providing shelter to refugees could still be interested in our robot because some refugeecamps are open for as long as ten years (Dadaab camps in Kenya, Breidjing camp in Chad) which require more robust housing. The refugees that will live in the houses built by our robot are also a group of stakeholder. Just as with the slum population, their demands aren't very high and their housing quality will most likely increase because they currently live in tents or don't have shelter at all. Basic facilities such as electricity and water should be provided, but where the slum population could partially pay for these facilities this is mostly not the case with refugees. This means the housing and the including facilities should all be paid for by other stakeholder such as governments and charity organisations, implying that the housing will be as cheap as possible.
Settlements
As made clear in the two previous parts of this paragraph, the main advantage of our construction robot is the possibility of rapid house construction. This offers great opportunities when facing rapid urbanisation and large groups of refugees, but can also be misused. An example of this is the Israeli colonization of Palestine. Since the 1967 Six-Day War Israel has been building settlements in Syrian, Egyptian but predominantly Palestine territory, although being pressured by the UN and the western world not to do so since it is illegal. Israel hasn't yielded to this pressure but only expanded its illegal settlements. Our construction robot could be used to rapidly build these settlements which would cause even more aggressive Israeli expansion politics. In this case, the Israeli government would be the main stakeholder, since it will be the main user of our machine and instruct or promote its building companies to use it to build the settlements. In this case, the houses should be bigger and its facilities more extensive because the Israeli people that will live there are used to a higher housing standard. This won't be a problem since our construction robot will be able to handle various house designs. In the same way militaries could use our construction robot to build military bases in disputed areas, or could even help completing Trump's infamous wall in a shorter timespan and with less costs.
Construction workers
Finally, a group of stakeholders not mentioned in the examples above but applicable to them all are the construction workers. With our robot the workflow on a construction site will drastically change. Construction workers will still be necessary to place windows, roofs, doors etcetera but the masonry will be done by our robot. The masonry is an integral part of every building which means the construction workers will have to "coöperate" with the robot, meaning that the robot will give a signal when for instance windows can be placed or when it has run out of bricks. The robot can also accidently break down, so the construction workers should have a basic understanding of the way the robot works to fix it. This all requires a training on working with the construction robot. Our robot could also lead to possible unemployment for construction workers. When the robot only builds the walls of a house this may only affect masons, but it could be developed further and load to unemployment for all groups of construction workers.
Social Impact
If the construction robot does become a success, it will have major consequences for society. It is therefore critical to investigate and evaluate these consequences. These consequences, however, vary for various regions and will therefore be discussed separately. For each region, the following concerns will be addressed. In order to construct these robots and ensure that they are safe and robust, large investments in research, testing and construction materials are required. This means that a lot of smaller companies will not be able to risk the initial investment required for these machines. Another concern is that the robot will increase the income inequality between higher and lower educated population. To maintain, produce and research these machines, highly educated personnel will be required, whilst a popular job practiced mostly by lower educated people - construction – will be replaced by robots. The reduced construction costs as a result of automated construction will lead to a decrease in property-value, which may negatively influence the economy. However, this will also mean that houses become more affordable, which would on the other hand be a positive outcome for the lower class. The chapter will be concluded with a profit analysis for both situations, to see if the design of such a robot is indeed economically viable.
First world countries
In the these countries the social impact will be the least significant. They will be likely to employ automated construction robots because they will likely reduce cost and most companies will be able to afford the investment. These robots will likely be produced in these countries since the required knowledge and expertise is available here. Meaning that the economy of these counties will not be damaged to severely. The income gap for these countries will suffer severely however. According to the Dutch department of statistics[7] around half a million people are employed in construction. That’s 3% of our entire population that could potentially to lose their jobs. This might mean a severe economic crisis as a result of the construction robot. So somehow a new source of work has to be found in order to employ the population that is left homeless due to the advance of technology. The lower prices for housing might however soften this blow for the lower class since houses are now easier to afford. On the flip-side these affordable houses might also threaten the economy due to the deflation of house prices. This might have a few negative effects for the economy since deflation discourages customer spending as a result of anticipation for more deflation. This might pose huge problems for the real estate market and therefore the whole economy. This deflation might however be restrained to more simple housing and not to the more fancy housing, since it will be likely that moving the robot around customizing it to build a certain house might be very expensive.
Third world countries
The third world countries could be affected hugely by these robots if the technology becomes popular. The first major concern for these countries is that they will have a lower percentage of highly educated population meaning that they have no chance of bringing the robot to the market themselves. This means that the technology will have to come from the first world countries who will make money from the robot, while the construction workers lose the demand for their work. This scenario however does not need to become a reality. First off all sending the robots and personnel to maintain the robots to these third world countries will be very expensive for these countries. Furthermore it should be noted that the wages are generally a bit lower in third world countries meaning that it is actually pretty hard for these robots to actually compete.
A construction robot will however be useful in third world countries in a scenarios where there is a sudden increase in demand for simple houses. Such a demand could for example be caused by a natural disaster or a war. The third world country could then benefit since their construction workers can be aided by a robot to respond to the crisis as fast as possible and the large demand will also ensure that the robot is profitable for the countries sending the robot.
Funding
The construction robot promises to build houses faster and cheaper, but before the robot can be used it will require a large investment for its creation . So before the construction robot is developed an important question to ask is where will the required money come from? Since the cost of the robot is very high the amount of sources from which the money can come is limited.
Crowdfunding
The people living in slums are obviously very poor and won’t be able to afford a machine by themselves. However if the cost of the construction robot somehow reduces drastically the people living in the slums might be able to share the investment for the machine. Currently the robot is however way too expensive for this.
Government
If the robot turns out to be efficient enough the government might be able to justify buying such a machine since it can improve the living conditions for much of its citizens. Unfortunately a lot of countries in the developing often have problems with corruption within their government. [9] . When the risk involved in the investment for such a machine it is unlikely that the government will invest in such a machine.
Charity
The last hope for the construction robot is charity. An ideal candidate would be the Bill and Melinda Gates foundation. They are the biggest charity in the world with an endowment of over 42 billion they would be able to risk the investment into a construction robot. One of their focus points is reducing world poverty which nicely aligns with the imagined use case of the construction robot.[8] However the construction robot will have to compete with other methods to reduce extreme poverty such as providing jobs. So the efficiency of the construction robot will have to significant before it becomes a viable option for charity.
Cost analysis
Now the societal impact is clear it is a good idea to inspect the costs of the machine to make a final USE verdict. The prices and wages mentioned below are mostly averages or estimations, which makes the final costs also an estimation. This estimation is however clear enough for a good conclusion.
In this analysis we will use the SAM robot (SOURCE), which is an already developed robot only capable of building straight walls, and it will build slum houses. This robot requires two human workers to assist it, one to supply and cut the stones and one to scrape away the excess mortar. The SAM robot is 6 times as fast as a human mason. Of course our robot will be capable of doing this by itself which saves costs, but because the increased complexity necessary by these improvements the costs will rise again which makes the comparison with the SAM a good estimation. The SAM robot has the following costs (We assume that the material costs remain the same):
- Purchase the SAM robot: $500.000
- Rent the SAM robot: $3300 per month
- Two workers to operate/help the robot: $4 per day ($2 per day is the average wage for a Brazilian(SOURCE))
- Energy costs: $0.56 (approximately 4.5 kWh per day with $0.13 per kWh in Brazil)
- Total: $4.56 per day plus $500.000 purchase costs
The costs for 'normal' masonry are listed below:
- Labour: 6 brazilian workers (the SAM is 6 times as fast), so $12
- Total: $12 per day
This would mean the SAM robot would save $7.44 each day, but has a purchasing cost of $500.000. With this profit rate it would take 67.204 days (or 184 years) of non stop masonry to play even, without taking maintenance and transport costs in to account. This is a ridiculous amount of time so the robot will be far from profitable in this situation. Even when building in for instance the US (mason wages are approximately $113 per day) it would take 1107 days or 3 years of non stop masonry to play even. These costs show that it is far from profitable (at this moment of course) to use a brick robot instead of usual human masons from a monetarian costs perspective.
General planning
The general planning is displayed in a GANT chart, which can be seen in figure 6. Because of the major change in the deliverable, a new planning had to be made. The old planning is visible in figure 5. In the GANT-chart activities, the work distribution and milestones can be seen. The planning will be adjusted if necessary.
week 1
- Deciding on the subject of the project
- Preparing the presentation about the concept.
week 2
- Concept Presentation
- Preparing the second presentation about the planning.
- Start working on wiki, explaining the concept and the deliverables
week 3
- Planning Presentation
- Rework project based on feedback
- Arrange meeting with TU/e Concrete Printing
- Start creating a list of required components for the deliverable
- Start working on the enterprise plan: Potential Users
- Update wiki
week 4
- Milestone: Order components for the deliverable
- Start desiging and printing components for the deliverable
- Finish Potential Users
- Start working on the enterprise plan: Social impact
- Update wiki
week 5
- Work out new deliverable
- Start working on the enterprise plan: Estimated costs
- Finish Social impact
- Update wiki
week 6
- Finish estimated costs
- Start working on the enterprise plan: Business proposal
- Milestone: Illustrations of final design
- Update wiki
week 7
- Finish Enterprise plan
- Milestone: Business proposal
- Milestone: Script, Model and User interface
- Update wiki
week 8
- Buffer week
- Prepare final presentation
- Update wiki
Action plan
The initial step in the assembly of the robot is to get the green light for its creation. To ensure that the scope of the project is indeed properly defined. Once the theoretical background is sufficiently explored the construction of the robot can start. The construction can be divided in a few segments.
- Acquiring the required components
- Physical assembly
- Calibration
- Software implementation
- General Debugging
Action plan renewed
Originally the plan was to build a prototype, however that is no longer the case. We are going to emphasize on a proff of concept for the software and an extensive study of the market and users - focused on Society. This means that we don't have to wait on parts or a budget, but can work on our computers by ourselves. The plan right now is to develop a script that can make a 3D map in a Matlab environment from a .stl file taken from NX. Besides that a script has to developed that determines and executes the best path of for the robot to place the bricks. While in this script the actual position of the smaller robot arm is not simulated, the energy and time it takes to execute its actions have to be taken into account and calculated. These parameters have to be implemented in the placement script, so the placement script can give energy and time costs as output. When these objectives are met and are working, other aspects can be elaborated into. These aspects can for example be different brick laying styles or more complicated building shapes instead of lines with right angles.
- Translating NX to Matlab environment
- Develop path making algorithm
- Calculate and implement energy and time costs
- Testing and refining
- General Debugging
- Elaboration into new aspects
External sources
http://www.tue.nl/3DConcretePrinting
[1] http://www.home-building-answers.com/house-foundations.html
[3] https://theconstructor.org/earthquake/earthquake-resistant-techniques/5607/
[4] http://www.understandconstruction.com/walls.html
[5] https://www.thebalance.com/bricks-types-uses-and-advantages-844819
[6] http://www.lafarge.com/en/improving-housing-slum-dharavi
[7] https://www.cbs.nl/nl-nl/nieuws/2017/08/hogere-omzet-bouwsector-in-2016