PRE2017 3 Groep3: Difference between revisions
No edit summary |
No edit summary |
||
Line 271: | Line 271: | ||
<p>The first important choice that needed to be made for the model for the window cleaning motion planning algorithm was the choice of the program that is used for modelling this algorithm. The program that was eventually chosen was NetLogo. There are several reasons for this particular choice. An important reason is that it is easy to create graphical output with NetLogo. This enables the visualisation of the window cleaning robot using the programmed motion planning algorithm to clean a window. Additionally, in NetLogo there is a predefined relation between agents, the so-called turtles, and the square sections of the underground over which they move, the so-called patches. This relation is of course particularly useful for modelling the cleaning of the window (the underground) by the robot (the agent). NetLogo also has the ability to create sliders for some of the parameters of the model which makes it easy to test the motion planning algorithm for different values of these parameters. This makes it very easy to test the programmed motion planning algorithm during development for different parameter value situations. Furthermore, NetLogo is relatively easy to program and its program language is already known by the members of the group. </p> | <p>The first important choice that needed to be made for the model for the window cleaning motion planning algorithm was the choice of the program that is used for modelling this algorithm. The program that was eventually chosen was NetLogo. There are several reasons for this particular choice. An important reason is that it is easy to create graphical output with NetLogo. This enables the visualisation of the window cleaning robot using the programmed motion planning algorithm to clean a window. Additionally, in NetLogo there is a predefined relation between agents, the so-called turtles, and the square sections of the underground over which they move, the so-called patches. This relation is of course particularly useful for modelling the cleaning of the window (the underground) by the robot (the agent). NetLogo also has the ability to create sliders for some of the parameters of the model which makes it easy to test the motion planning algorithm for different values of these parameters. This makes it very easy to test the programmed motion planning algorithm during development for different parameter value situations. Furthermore, NetLogo is relatively easy to program and its program language is already known by the members of the group. </p> | ||
<p> Next, it needed to be decided how the task environment (the window) as well as the robot would be modeled in NetLogo. To do this, some assumptions were made. The window is assumed to have a rectangular shape and is divided in patches that correspond to an area of 50 by 50 millimeters in reality. At the start of each run of the model, each of these patches will receive a random value of dirtiness between 0 and 100. The robot is assumed to have a square shape and covers an area of 5x5 patches, which thus equals an area 250 x 250 mm. These dimensions are very similar to the current commercial available window cleaning systems such as the Hobot, Windoro and Winbot. This thus also means that the height and width of the window are a multiple of 5 patches. The geometry of the robot is taken as fixed. When the underside of the robot is considered and when it is divided in 5x5 squares with the same size as the patches, the first and last two columns of squares are used for cleaning purposes. The middle column consists of dirt detect sensors. This layout is illustrated in the figure below. </p> <br /> <br /> | <p> Next, it needed to be decided how the task environment (the window) as well as the robot would be modeled in NetLogo. To do this, some assumptions were made. The window is assumed to have a rectangular shape and is divided in patches that correspond to an area of 50 by 50 millimeters in reality. At the start of each run of the model, each of these patches will receive a random value of dirtiness between 0 and 100. The robot is assumed to have a square shape and covers an area of 5x5 patches, which thus equals an area 250 x 250 mm. These dimensions are very similar to the current commercial available window cleaning systems such as the Hobot, Windoro and Winbot. This thus also means that the height and width of the window are a multiple of 5 patches. The geometry of the robot is taken as fixed. When the underside of the robot is considered and when it is divided in 5x5 squares with the same size as the patches, the first and last two columns of squares are used for cleaning purposes. The middle column consists of dirt detect sensors. This layout is illustrated in the figure below. </p> <br /> <br /> | ||
<center>[[ | <center>[[5x5_windowcleaningrobot.JPG]]</center><br/> | ||
<p> Furthermore, it is assumed that the robot is only able to translate over the window without turning. The robot is always placed on the window with the same orientation as given in the figure above, thus the column of dirt detect sensors is parallel to the left and right sides of the window frame. </p> | <p> Furthermore, it is assumed that the robot is only able to translate over the window without turning. The robot is always placed on the window with the same orientation as given in the figure above, thus the column of dirt detect sensors is parallel to the left and right sides of the window frame. </p> | ||
<p> At last, assumptions about the modelling of the cleaning and dirt detect action as well as energy and water consumption needed to be made. For the cleaning action, it is assumed that when a patch is located under one of the cleaning squares of the robot and when this patch has a dirtiness that is greater than zero, the dirtiness of the patch is reduced with a random number between 30 and 60 per time step. A time step is taken to correspond to a time of 1 second in reality. When the reduction in dirtiness is greater than the actual dirtiness of a patch, the dirtiness of the patch is set to zero. For the dirt detect action, it is assumed that when a patch is located under one of the dirt detect sensor squares of the robot and when the robot checks the dirtiness of this patch, the dirtiness is assessed with a random error between 0 and 20 percent of the actual dirtiness. Every time that the robot assesses the dirtiness of a patch again, this error is again randomly determined. The energy consumption of the robot for a time step is taken to be the sum of a constant in Joule, representing the fact that the robot is turned on, and the product of the number of patches that are cleaned during the time step and a constant in Joule that represents the amount of energy needed to clean a patch during the time step. The water consumption of the robot for a time step is taken to be the product of the number of patches that are cleaned during the time step multiplied with a constant in Liter that represents the amount of water needed to clean a patch during one time step. </p> <br \> | <p> At last, assumptions about the modelling of the cleaning and dirt detect action as well as energy and water consumption needed to be made. For the cleaning action, it is assumed that when a patch is located under one of the cleaning squares of the robot and when this patch has a dirtiness that is greater than zero, the dirtiness of the patch is reduced with a random number between 30 and 60 per time step. A time step is taken to correspond to a time of 1 second in reality. When the reduction in dirtiness is greater than the actual dirtiness of a patch, the dirtiness of the patch is set to zero. For the dirt detect action, it is assumed that when a patch is located under one of the dirt detect sensor squares of the robot and when the robot checks the dirtiness of this patch, the dirtiness is assessed with a random error between 0 and 20 percent of the actual dirtiness. Every time that the robot assesses the dirtiness of a patch again, this error is again randomly determined. The energy consumption of the robot for a time step is taken to be the sum of a constant in Joule, representing the fact that the robot is turned on, and the product of the number of patches that are cleaned during the time step and a constant in Joule that represents the amount of energy needed to clean a patch during the time step. The water consumption of the robot for a time step is taken to be the product of the number of patches that are cleaned during the time step multiplied with a constant in Liter that represents the amount of water needed to clean a patch during one time step. </p> <br \> |
Revision as of 16:50, 3 March 2018
Subject
Window cleaning robots
Objectives
- Literature study of current window cleaning robots and USE aspects regarding window cleaning robots.
- To develop an efficient cleaning algorithm that cleans a window which satisfies certain requirements on cleaning speed, water consumption, energy consumption.
Users
Window washing companies that can use window cleaning robots to improve their services. The considered scenario is that these companies are hired by private individuals to clean the windows of their houses. The faster and cheaper these companies can accomplish this, the more profit they can make. A major help for this purpose would be to develop an algorithm that determines how to clean the windows of a house in the most efficient way possible when the dirt distribution on the windows is taken into account.
The user needs need to be determined in order to develop the model.
State-of-the-art
The list below gives an overview of the summaries of the articles which have been studied. The articles are divided into subcategories.
Window cleaning robot design
- A Gecko Inspired Fluid Driven Climbing Robot
- Development of a High Efficiency and High Reliable Glass Cleaning Robot with a Dirt Detect Sensor
- SkyScraper-I: Tethered Whole Windows Cleaning Robot
- WINDORO : The World’s First Commercialized Window Cleaning Robot for Domestic Use
- SMART WINDORO V1.0: Smart Window Cleaning Robot
- A Small Window-Cleaning Robot for Domestic Use
- Window Cleaning Robot ASME Design Competition
- Sensor Based Motion Planning and Estimation of Highrise Building Façade Maintenance
- Design and stability analysis of a novel wall-climbing robotic platform (ROPE RIDE)
- Climbing cleaning robot for vertical surfaces
- Implementation of glass-curtain-wall cleaning robot driven by double flexible rope
Issues encountered while performing cleaning task
- Inferring the Effects of Wiping Motions based on Haptic Perception
- A wall climbing robot for inspection use
- Experimental comparison of drag-wiper and roller-wiper glass-cleaning robots
Movement over façade
- Design and Kinematic Analysis of Tethered Guiding Vehicle (TGV) for façade window cleaning
- A Path Motion Planning For Humanoid Climbing Robot
- A survey of climbing robots: Locomotion and adhesion
Movement over window
- Calculation of Optimal Magnetic Force for Automatic Control Magnetic Force of the Window Cleaning Robot
- Window cleaning system with water circulation for building façade maintenance robot and its efficiency analysis
Acceptance of robots and engagement with robots
Figures belonging to the summaries will be added later.
Approach
- Literature study of current window cleaning robots and USE aspects regarding window cleaning robots
- Analysis of the user and user needs
- To develop an algorithm that models one side of a house and the separate windows within this side, for which the most efficient cleaning trajectory is developed and where the dirt distribution on the window is taken into account. The numbers for the efficiency, water consumption and energy consumption obtained from this model can then be compared to the predetermined standard based on the performance of current window cleaning systems on the market.
Planning, milestones & deliverables
Week | Goal | Milestones | Deliverables |
---|---|---|---|
1 |
|
Finished literature study and SotA |
|
2 |
|
Clear and measurable project goal |
|
3 |
|
Clear vision of the project to all members and a definitive goal and approach to the problem |
|
4 |
|
Definitive algorithm which can be simulated and results in the measurables wanted. (close to completion simulation) |
|
5 |
|
Finished and analyzed model. |
|
6 |
|
Finished report |
|
7 | Buffer time for last details and unexpected issues. |
Task division
Week | What? | Who? |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
4 |
|
|
5 |
|
|
6 |
|
|
7 | ... | ... |
Work on the model
Setup of the model
The first important choice that needed to be made for the model for the window cleaning motion planning algorithm was the choice of the program that is used for modelling this algorithm. The program that was eventually chosen was NetLogo. There are several reasons for this particular choice. An important reason is that it is easy to create graphical output with NetLogo. This enables the visualisation of the window cleaning robot using the programmed motion planning algorithm to clean a window. Additionally, in NetLogo there is a predefined relation between agents, the so-called turtles, and the square sections of the underground over which they move, the so-called patches. This relation is of course particularly useful for modelling the cleaning of the window (the underground) by the robot (the agent). NetLogo also has the ability to create sliders for some of the parameters of the model which makes it easy to test the motion planning algorithm for different values of these parameters. This makes it very easy to test the programmed motion planning algorithm during development for different parameter value situations. Furthermore, NetLogo is relatively easy to program and its program language is already known by the members of the group.
Next, it needed to be decided how the task environment (the window) as well as the robot would be modeled in NetLogo. To do this, some assumptions were made. The window is assumed to have a rectangular shape and is divided in patches that correspond to an area of 50 by 50 millimeters in reality. At the start of each run of the model, each of these patches will receive a random value of dirtiness between 0 and 100. The robot is assumed to have a square shape and covers an area of 5x5 patches, which thus equals an area 250 x 250 mm. These dimensions are very similar to the current commercial available window cleaning systems such as the Hobot, Windoro and Winbot. This thus also means that the height and width of the window are a multiple of 5 patches. The geometry of the robot is taken as fixed. When the underside of the robot is considered and when it is divided in 5x5 squares with the same size as the patches, the first and last two columns of squares are used for cleaning purposes. The middle column consists of dirt detect sensors. This layout is illustrated in the figure below.
Furthermore, it is assumed that the robot is only able to translate over the window without turning. The robot is always placed on the window with the same orientation as given in the figure above, thus the column of dirt detect sensors is parallel to the left and right sides of the window frame.
At last, assumptions about the modelling of the cleaning and dirt detect action as well as energy and water consumption needed to be made. For the cleaning action, it is assumed that when a patch is located under one of the cleaning squares of the robot and when this patch has a dirtiness that is greater than zero, the dirtiness of the patch is reduced with a random number between 30 and 60 per time step. A time step is taken to correspond to a time of 1 second in reality. When the reduction in dirtiness is greater than the actual dirtiness of a patch, the dirtiness of the patch is set to zero. For the dirt detect action, it is assumed that when a patch is located under one of the dirt detect sensor squares of the robot and when the robot checks the dirtiness of this patch, the dirtiness is assessed with a random error between 0 and 20 percent of the actual dirtiness. Every time that the robot assesses the dirtiness of a patch again, this error is again randomly determined. The energy consumption of the robot for a time step is taken to be the sum of a constant in Joule, representing the fact that the robot is turned on, and the product of the number of patches that are cleaned during the time step and a constant in Joule that represents the amount of energy needed to clean a patch during the time step. The water consumption of the robot for a time step is taken to be the product of the number of patches that are cleaned during the time step multiplied with a constant in Liter that represents the amount of water needed to clean a patch during one time step.
Current state of the model (week 3)
Coaching Questions
The links below refer to pages with the coaching questions of each week.
References
[1] Akinfiev,T. Armada,M. & Nabulshi,S. (2009). Climbing cleaning robot for vertical surfaces. Industrial Robot: An International Journal, Vol. 36 Issue: 4 pp.352-357.
[2] Barbut,O. (2008). Window Cleaning Robot ASME Design Competition. Department of Mechanical Engineering Toronto.
[3] Choi,Y. & Jung,K. (2011 November 26). WINDORO: The World's First Commercialized Window Cleaning Robot for Domestic Use. Pohang Institute of Intelligent Robotics Korea.
[4]Choi,Y-H. Lee,J-Y. Lee,J-D. & Lee,K-E. (2012 November 29).SMART WINDORO V1.0: Smart Window Cleaning Robot. Korea Institute of Robot & Convergence.
[5] Chu,B. Jung,K. Han,C. & Hong,D.(2010 August). A Survey of Climbing Robots: Locomotion and Adhesion. Department of Mechanical Engineering South Korea.
[6] Galceran,E. & Carreras,M.(2013 August 5).A survey on coverage path planning for robotics. University of Girona Spain.
[7] Gandhinathan, R. & Ambigai, R. (2016). Design and Kinematic Analysis of Tethered Guiding Vehicle (TGV) for façade window cleaning. Department of Mechanical Engineering India.
[8] Gerstmayr-Hillen,L et al. (2013 January 17). Dense topological maps and partial pose estimation for visual control of autonomous cleaning robot. Computer Engineering Group , Faculty of Technology Germany.
[9] Imoaka,N. Roh,S. Yusuke,N. & Hirose,S. (2010 October 22). SkyScraper-I: Tethered Whole Windows Cleaning Robot. Design of Moving Mechanisms and Preliminary Experiments Taiwan.
[10] Jiang,J. Zhang,Y. & Zhang,S. (2014).Implementation of glass-curtain-wall cleaning robot driven by double flexible rope. Industrial Robot: an International Journal, Vol.41 Issue: 5 pp.429-438.
[11] Katsuki,Y. Ikeda,T. & Yamamoto,M. (2011 September 30). Development of a High Efficiency and High reliable Glass Cleaning Robot with a Dirt Detect Sensor.
[12] Lee,J. Choi,Y. & Lee,J. (2013 November 2). Calculation of Optimal Magnetic Force for Automatic Control Magnetic Force of the Window Cleaning Robot. Korea Institute of Robot and Convergence Korea.
[13] Lee,S. Kang,M. & Han,C. (2012 December). Sensor Based Motion Planning and Estimation of High-rise Building Façade Maintenance Robot. Department of Mechatronics Engineering South Korea.
[14] Leidner,D. & Beetz,M. (2016 November 17). Inferring the Effects of Wiping Motions based on Haptic Perception.
[15] Lui,J. Tanaka,K. Bao,L M. & Yamaura,I.(2005 October 3).Analytic modeling of suction cups used for window-cleaning robots. Department of Functional Machinery and Mechanics Japan.
[16] Liu,J. Jiang,H. Li,Z. & Hu,H. (2009). A Small Window-Cleaning Robot for Domestic Use. Jiangnan University China.
[17] Liu, J. et al. (2011 May 9). A Gecko Inspired Fluid Driven Climbing Robot. Institute Of Mechatronic Control Engineering Zhejiang University.
[18] Lupetti,M L. Rosa,S. & Ermacora,G. From a Robotic Vacuum Cleaner to a Robot Companion: Acceptance and Engagement in Domestic Environments.
[19] Moon,S M. Shin,C Y. Huh,J. Won,K. & Hong,D. (2015 January). Window Cleaning System with Water Circulation for Building Façade Maintenance Robot and Its Efficiency Analysis. School of Mechanical Engineering South Korea.
[20] Nguyen,D. & Shimada,A. (2013). A Path Motion Planning For Humanoid Climbing Robot. Shibuara Institute of Technology Japan.
[21] Nishi,A. A wall climbing robot for inspection use. Miyazaki University Japan.
[22] Palleja,T. Transanchez,M. Teixido,M. & Palacin,J. (2009 August 11). Modeling floor-cleaning coverage performance of some domestic mobile robots in a reduced scenario. Department of Computer Science Spain.
[23] Seo,K. Cho,S. Kim,T. Kim,H S. & Kim, J. (2013 August 15). Design and stability analysis of a novel wall-climbing robotic platform (ROPE RIDE). Mechanism and Machine Theory pp.189-208.
[24] Zanele,G N M. (2011 June). Motion Planning Algorithms for Autonomous Robots in Static and Dynamic Environments. University of Johannesburg.
[25] Zhou,Q. & Li,X. (2016). Experimental comparison of drag-wiper and roller-wiper glass-cleaning robots. Industrial Robot: An International Journal, Vol.43 Issue:4, pp409-420.