PRE2017 3 Group 17: Difference between revisions
Line 45: | Line 45: | ||
The final deliverables will be a working simulation that shows drones flying to their respective destinations. The software will contain the abovemetioned features. Additionally, this wiki will be delivered, containing all information used to create the simulation. | The final deliverables will be a working simulation that shows drones flying to their respective destinations. The software will contain the abovemetioned features. Additionally, this wiki will be delivered, containing all information used to create the simulation. | ||
== State of the | == State of the Art == | ||
To keep this wiki clutter free, the page [[PRE2017 3 Group 17 - State of the Art]] has been created, containing several articles that support the attainability of this project. | |||
== Objectives == | == Objectives == |
Revision as of 17:04, 17 March 2018
Members of group 17 | |
Eric Arts | 1004076 |
Menno Hofsté | 0996144 |
René Nijhuis | 0912331 |
Erik Takke | 1000575 |
David Tuin | 1013331 |
Introduction
As commissioned by this course, it is our goal to create and execute a project that can change the lives of people around us. To show the progression of our project, this wiki has been brought to life. On this wiki page you can read all about our project: the choices that have been made, the progression of development and much more. Enjoy!
Problem Statement
In building projects it happens quite often that objects are too large to be carried by man and have to be brought to their desired spot by crane. However, often the construction has advanced to the point that cranes can no longer reach said spot, creating a problem. This problem is usually solved by using all different types of transportation to get the object to its spot. These different types of transport, and especially transitioning from one to another, takes a lot of time. To reduce the time it takes to transport objects, it would be desirable to have a single means of transport that can carry the object to its final resting place fast and in one, smooth go.
One means that comes to mind are drones. As small, fast and really maneuverable vehicles, they seem to be a good solution to this problem. To make this a reality, it is our plan to develop a piece of software that can guide the drones through or around buildings and have them deliver the object. It is the aim to have the drones evade obstacles (walls and scaffolding), navigate between floors (flying through elevator shafts or stairwell) and detect humans and stop or evade them, depending on what is safer. All to have the drone reach its destination.
To reach this goal, a proper problem statement has been constructed: How to move objects through buildings that are under construction, using drones.
- TODO: Create section that shows what we have learned from State of the Art:
This subject uses ideas and resources from the robotics field (drones) and also accommodates all USE parts: The solution would be interesting for enterprises. Additionally, the drones can lead to hazardous situations for users and bystanders (society), adding an ethical touch to it.
Despite currently not being able to carry much weight, technology is catching up and has started to develop stronger drones.
All that is left is to manoeuvre the drone, which is carrying the object, through the building. Even though it would be possible to have the drone be steered by a human, it would be faster, safer and cheaper to have the drones do it by themselves.
Approach, milestones and deliverables
To reach the goal: creating software that can lead drones through a building that is under construction, several things have to be done. First of all, literary research has to be performed to see what is currently possible, what seems to become possible in the next years and what is still quite a ways out. Then it is clear where the difficulties will be and what to focus on. With that information in mind, the following plan has been made. This plan consists of a list of milestones. Once all these milestones have been achieved, the result should be that all deliverables have been constructed.
- Create a way to read a layout of a building and represent that on screen. (achieved on 13-03)
- Create a algorithm that can search the building for the fastest path to its destination. (achieved on 02-03)
- Create a basic model in which drones can fly around. (achieved on 16-03)
- Congregate abovementioned features to work together.
- Expand model such that multiple drones can fly around.
- Expand model such that drones do not cross eachother in corridors.
- Implement features to dynamically adjust the models environment.
- Finalize project.
The final deliverables will be a working simulation that shows drones flying to their respective destinations. The software will contain the abovemetioned features. Additionally, this wiki will be delivered, containing all information used to create the simulation.
State of the Art
To keep this wiki clutter free, the page PRE2017 3 Group 17 - State of the Art has been created, containing several articles that support the attainability of this project.
Objectives
As can be read in #Problem Statement, it is our goal to create software that can guide object carrying drones through a multi-floor construction site. To reach this goal, several objectives can be set to clearly see the progress that is made over the weeks.
Find path
The system will be equipped with a rough layout of what the construction zone looks like. Based on this rough layout, the system has to be able to find a path that will bring the drone from its starting point to its destination. As the path does not just have to be a 2D but rather a 3D route, this will be quite the challenge to create.
Two way paths
Especially in office buildings, corridors will be quite narrow. This could potentially prevent drones from flying through them at the same time. To manage this, the system has to be able to make corridors one way paths only. That way (multiple) drones can safely fly in the same direction, whilst drones that want to fly in the opposite direction in the same corridor have to wait at a spaceous intersection.
Evade objects and agents
However, just like in every construction zone, obstacles (such as scaffolding) will be moved constantly, making for a dynamic environment. Therefore it will be necessary for the algorithm to adjust its path on the fly, evade objects/obstacles and still find a path to its destination. Additionally, if the idea were to catch on, it would be possible form multiple drones to simultaneously bring objects to different destinations. To prevent the drones from flying into each other, they will have to be able to detect and evade each other. The same can be said for humans: construction workers could potentially be walking all over the place. To prevent them from getting hit and be injured, the drones will have to be able to detect them and stop/evade them.
Create simulation
As we do not find it responsible to use this software in real drones flying through construction sites, we would not be able to show the final product. As this would render this project useless, we will also create a simulation which shows how the drones fly through a example building.
The Users
USE-case
In this paragraph a typical USE-case will be described. The setting is a construction site. This hypothetical case is based on feedback we got from the interviews we did with construction workers. During the first interview it became apperant that construction workers rarely lose their tools, for instance their hammer. The man mentioned that the project would, however, be useful for bringing supplies, for example a silicone kit. The current most popular solution, as reflected by the interview, is to do some other work until you have your next coffee break. In the next couple of lines the point of view from a construction workers will be pictured.
Imagine you are a construction worker, doing what construction workers do. You are at the 11th floor of the Atlas building with all your hammers, power tools and silicone kit. The task at hand is using your silicone kit to fill holes between two mounted objects. However, after an hour of using said silicone kit, it starts te become empty.
Now, you have a couple of options:
- Somebody needs to drop a few cans on the elevator
- You do something else in the time between now and your next break
- You use the new app
Since there is only one elevator, occupying it with only a couple of cans of silicone kit is not desired. So for the sake of argument, you choose to use the app.
In the app you can see the inventory of the construction site storage, neatly organised. From here you select the silicone kit, the app says it is available through drone delivery. You choose an appropriate time you want it delivered, in this case ASAP. By the time you are done with your current kit, the drone with the next kit is already arrived and you can swiftly continue your work, while the drone goes back to its place in the storage. This way you avoided having to search for other work you have to do between now and your next break. Also, you can continue your workflow leading to no loss of efficiency at all.
The usecases are based on short interviews with some construction workers at the Atlas building. The complete interviews can be found in PRE2017 3 Group 17 - Interviews.
Decisions and Assumptions
During the project several design decisions and assumptions have been made. Showing these is vital to understanding the purpose of the project.
Decisions
- We deem it riskier for a drone to fly outside the building. If a drone were to drop its cargo or have failure at height, the falling object could become a deadly projectile. To prevent this from occuring, the following has been decided:
- The path cost used by the search algorithm will be created in such a way that flying outside the building that is under construction is strongly discouraged.
- Whilst flying inside the building, the drone will fly close to the ground. This way it would be seemingly impossible to drop cargo on the head of a construction worker.
- If a drone were to encounter a human or other obstruction during its flight, it will tell the system to block that path temporarily and find a new path to its destination. This way the drone completely avoids humans.
Assumptions
- The drone will be able to fly from its starting point to the destination and back, carrying its cargo, without its battery dying.
- The drone will under no condition drop its cargo, but can fail completely. This means a new drone has to be send with the same cargo.
Risk analysis
On a construction site a lot of activity finds place every day. Because many of those activities involve large and heavy machinery, safety regulations have been set in place to protect the construction workers. For each specific task performed on a construction site, a rigorous work plan has to be created, which has to be approved by the foreman. Only then can the task be performed. Tasks that are being performed constantly, for instance lifting load with a tower crane, requires workers with years of training and a sharp eye for detail. That job is completely build around restrictions and safety regulations. For instance, the crane operator has to keep an eye on the weather conditions, avoid turning the load above a construction worker and prevent collisions with a building or other tower cranes.
As this project involves the usage of drones to deliver load to construction workers, it has to be made clear what safety regulations would apply to these drones, before they can be used. Eventhough small drones are currently incapable of lifting loads of over 2 KGs, technology seems to catch up allowing them to do so in the near future. Just as with a tower crane, a drone could potentially drop its load or fail all together. If that drone would be high up in the are, it or its load, both with significant weight, would come tumbling down. It could potentially harm one or more construction workers if it were to fall on top of them. It is therefore necessary that flying them above construction workers is avoided at all cost. Therefore the decision was made to have drones move through the building itself as much as possible. That way the potential drop height is decreased significantly, which would, in case of failure, lead to less damage to construction workers, the load and the drone.
As floor heights have been increasing over the years, a decision on how high the drones would fly through the building has to be made too. The same argument used to have the drones fly inside can be applied here too. Therefore it would be wise to have drones fly at a quite low altitude. However, when flying too low, they would be potentially be less visible to the construction workers. By having the drones fly on a height of around 0,75 m of the floor, the drop height is not that high, but drones are still clearly visible.
Another issue with using drones at construction sites, would be that the blades of the drone could get damaged or tangled quite easily. For instance, many construction zones have large amounts of cables with different purposes hanging from the ceiling. By flying close to the floor, many of them will be avoided. To prevent the drone from getting stuck in a cable, damaging itself or the cable, it could be argued that the blades of the drone could get a cage surrounding it. The TU/e spin off "Blue Jay" has a perfect example. Its drones have a cage protecting both the blades of the drone as well as the users using the drone. If the drones were to be protected with a such a cage, it would be safer for both the construction workers and the drone itself.
A downside of having the drones fly through the building instead of flying around the outside, is that it will have little space to maneuver in and encounter other drones, construction equipment and most importantly, construction workers. As humans, construction workers have to be kept safe under any circumstance. Therefore it is necessary for drones to get to their destination without getting in the way of construction workers. As construction sites can be filled with noise from heavy machinery, the noise produced by a drone would be drowned out. Construction workers would then be unable to hear a drone outside of their field of view, which could lead to dangerous situations. The two obvious solutions would be to either a) equip the drone with an alarm that is constantly ringing to alert construction workers, or b) let drones avoid construction workers all together. In this case it could be argued that the second solution is the best. If an alarm were to be attached to a drone, it would first of all drain battery power, of which the drones have a very limited amount. Secondly, humans are very good at filtering out irritating noises, which would mean that the construction workers actually wouldn't hear the alarm after a while. Avoiding the construction worker would have neither of these disadvantages. It would however be advisible to attach some type alarm to the drone, which could be rang if the drone were to get stuck between construction workers (and cannot find a way out) or if it has been damaged and dropped out of the air.
Another risk in using multiple drones, is that drones could potentially collide with each other. Not only would this have a great cost for the company operating the drones, it could also lead to dangerous situations for the construction workers. As it has already been advised at what height a drone should fly, it is ill advised to have drone fly at diffent heights and cross each other in that way. Flying next to each other is not always a possibility either, as many office buildings have narrow corridors. To circumvent this, it is advised to have drones fly through a narrow corridor only in one direction in a time. This would mean that multiple drones could fly in the same direction through a corridor, but not in the opposite direction. As path finding can reasonably optimized when using one way streets, the time lost by waiting for a drone to come through a corridor could be minimalized.
Users and what do they require?
- Construction companies
- The drones will have to be able to have sufficient lifting power.
- The drones will have to operate by themselves
- The drones will have to be able to detect and avoid all living agents.
- The system has to adhere to safety regulations.
Requirements
To make sure the simulation can give a proper insight on whether the program works there are some requirements which is must be able to do:
- Drones detect everything the simlation does not directly pass information to the program
- The are people walking around the drones have to deal with
- Walls and floors can be added or removed so the pathing has to change
- No-fly zones can be added dynamically for example if there are people working somewhere
- Drones are not perfect
- Speed is variable and
- Detection might take some time
- They can fail
Approach & Milestones
- Have concrete idea.
- Have a basic model. This model will show the basic interface and will not be interactive and only features one drone.
- Add interactivity to the simulation to test the dynamic components.
- Add walking humans to the simulation and ways to get around them in the model.
- Upgrade the simulation to multiple drones.
- Upgrade the model to use one way locks or other optimizations.
Deliverables
The goal is to create software to have the drones fly by themselves. In the end we will deliver two things. First of all, an algorithm that finds a path through the building that is under construction and can adjust its path in dynamic situations. It is our goal to create this software as realistically as possible, preferable to the point that it could be used in a real life situation. Second, to show what we have accomplished, certain example situtations will be created. For these situations, the algorithm output will be explained. This should give a clear view of what the developed software is capable of.
Who does what?
Monday 5th of March 2018:
- David Tuin: Working on the model
- Menno Hofste: Thinking of USE cases, and updating Wiki.
- Rene Nijhuis: Updating SOTA with information required by our project.
- Erik Takke: Creating interview and interviewing construction workers.
- Eric Arts: Creating interview and interviewing construction workers.
Thursday 8th of March 2018:
- David Tuin: Working on the model
- Menno Hofste: Creating test cases
- Rene Nijhuis: Writing input parser
- Erik Takke: Creating CSV files from test cases to be parsed
- Eric Arts: Creating test cases and creating CSV files
Monday 12th of March 2018:
Our general planning for working on the model is to split the group up into 4 categories and let everyone rotate. The categories are:
- Model/Algorithm
- Simulation
- GUI
- Creating test cases (buildings)
Other things that need to happen are:
- Updating the wiki
- Preparing for the meetings