A Survey on Techniques and Applications of Window-Cleaning Robots

Maintaining a clean living and working environment is an important means to ensure people’s quality of life. As the height of the building increases, the traditional method of cleaning windows by human workers not only takes a long time, but also brings the risk of falling off. It is necessary to replace human workers with robots for carrying out such heavy-duty and dangerous work. Various window-cleaning robots have been applied in cleaning work for certain actual scenarios. In this paper, the state-of-the-art survey of recent developments on window-cleaning robots is presented. The applications of window-cleaning robots in two main domains of domestic use and high-rise building environments are presented and the corresponding technical requirements are summarized. Afterward, the main techniques of window-cleaning robot development including locomotion mechanisms, adhesion mechanisms, cleaning mechanisms, and sensor and controller units are reviewed in detail. The survey provides a reference for the readers to design and develop a window-cleaning robot for specific application.


I. INTRODUCTION
Nowadays, more and more robots have been developed to assist or replace humans in various dangerous and difficult tasks, such as construction, manufacturing, security inspection, and so on. The robots are expected to adapt to different environments and situations. As clean windows represent an important aspect of human's life quality, window-cleaning work has been conducted to facilitate a better living and working environment. The traditional cleaning work is carried out by human workers. For example, the worker carries a water-soaked scraper to clean the exterior windows of high-rise buildings from top to bottom. Such windowcleaning work is a heavy-duty and dangerous job, as shown in Fig. 1. The Occupational Safety and Health Administration (OSHA) investigation found that in the past 10 years, there were 88 glass-cleaning accidents, of which 62 ones were casualties. For example, a cleaning gondola in Shanghai lost control due to the influence of strong wind. There The associate editor coordinating the review of this manuscript and approving it for publication was Pedro Neto . were 15 casualties during the cleaning work in South Korea in 2016 [1].
In economic aspect, the Fraunhofer IPA survey reported that the personnel costs for cleaning the building facades (windows) were as high as 70% [2]. Therefore, it is necessary to use a surface (window)-cleaning robot to reduce the economic cost. As compared with traditional methods, the use of automatic or semi-automatic surface (window)-cleaning robots can save 60% of the total cost [3]. Kim investigated the potential users of window-cleaning devices for a better understanding of their current cleaning status and future investment intention in this field [4]. The results showed that 45% users had the intention to purchase and use the surface (window)-cleaning device. According to the Allied Market Research, the market scale of cleaning services is expected to grow at a CAGR of 6.2% to reach 74,299 million dollars by 2022 [5].
In the aspect of work efficiency, the traditional cleaning method is not only dangerous, but also inefficient. It takes a long time for the human workers to complete the cleaning of a building. It has been found that the efficiency of manual cleaning is about 30 m 2 /h, while the efficiency of a cleaning robot can be improved by several to dozens times. For example, the cleaning efficiency of the Sky Cleaner 3 is 125 m 2 /h, and the cleaning efficiency of TITO 500 is up to 1500 m 2 /h [6], [7]. Moreover, the cleaning robot exhibits better environmental friendliness, because it can recover, purify, and reuse sewage. As a result, the use of robot is beneficial to reduce the waste of water resources [8].
Based on the aforementioned aspects, the cleaning robot has many advantages as compared with manual cleaning method. In the literature and on the market, different types of window-cleaning robots have been designed and fabricated to replace human labors for performing this kind of arduous and dangerous work in different environments. A windowcleaning robot can be developed by integrating the key techniques of locomotion mechanism, adhesion mechanism, cleaning mechanism, sensor and controller, etc., as illustrated in Fig. 2. To the knowledge of the authors, there is no comprehensive review of window-cleaning robots in the literature. The main contribution of this paper is to provide a comprehensive survey on key techniques and applications of the available window-cleaning robots. It provides a reference for the readers to design and develop a desired windowcleaning robot.
In particular, we searched the papers by the keywords of ''window-cleaning robot'', ''wall-cleaning robot'', and ''wall-climbing robot'' from the available academic database. The remaining sections of the paper are organized as follows. The application environments and technical requirements of the window-cleaning robots are given in Section II. In Sections III and IV, the locomotion mechanisms and adhesion mechanisms of the window-cleaning robots are surveyed, respectively, along with the consideration of their pros and cons. Then, the designs of cleaning mechanisms for window-cleaning robots are discussed in Section V. Window-cleaning robots in (a) domestic environment [9], and (b) high-rise building environment [5].
The classification and application of relevant sensors and controllers are reported in Section VI. Section VII concludes the survey.

II. APPLICATION ENVIRONMENTS AND TECHNICAL REQUIREMENTS
The application environments of window-cleaning robots are mainly divided into two categories. The first one is deployed for cleaning windows at home or office environment, and the second one is for cleaning the surface of high-rise buildings, as shown in Fig. 3. These two application environments have different characteristics. Hence, they have different technical requirements for window-cleaning robots, such as movement methods and cleaning mechanisms. This section discusses the technical characteristics of window-cleaning robots in the two application environments.

A. APPLICATION IN DOMESTIC ENVIRONMENT
To enable the application of the window-cleaning robot at home, small offices, and shops, the robot is expected to have the following characteristics.
1) The robot should be compact in structure, light in weight, and easy to carry. 2) To ensure the safety, there should be no slipping and falling during work.
3) It provides high efficiency and quality of cleaning. 4) It allows autonomous cleaning and easy manipulation. According to the above requirements, researchers have conducted a lot of work to maintain a clean and tidy domestic environment. For example, Choi et al. have designed the first commercial window-cleaning robot WINDORO [10]. Meanwhile, researchers have designed and developed many other window-cleaning robots for domestic use. Nazim et al. reported a portable window-cleaning robot, which was driven by a single rotary actuator. Thus, the robot has the characteristics of light weight, small size, and low cost [9]. Similarly, the existing small window-cleaning robots also follow the principle of light weight, and their weight usually does not exceed 3 kg. This small footprint size and lightweight design can facilitate users to perform cleaning operations, e.g., placing the cleaning robot on the window and removing the robot when it completes the cleaning task.
As the window-cleaning robot in the domestic environment mainly works indoors, its primary task is to ensure the safety and prevent personal and property hazards for the users. One of the most important safety issues is to prevent the robot from slipping and falling during the working process. To solve this issue, Feng et al. proposed a window-cleaning robot with a closed wiper [11]. The closed wiper can separate the movement mechanism and the adhesion mechanism from the cleaning mechanism to prevent the movement mechanism and the adhesion mechanism from getting wet during the cleaning process. It thereby ensures the stability of the driving and adhesion forces of the cleaning robot. Lv has designed a safety buckle for the window-cleaning robot, which could be adsorbed on the glass surface through a suction cup and is easy to carry [12]. The safety buckle can provide dual protection for the robot to prevent it from falling off when cleaning the windows. Tang et al. reported a method to protect the robot at power-off status [13]. When the robot suddenly encounters power-off during the cleaning process, it will immediately switch to the internal backup power-supply mode and move downward to the bottom of the window.
The cleaning ability of a window-cleaning robot is a very important criterion. The domestic window-cleaning robot usually employs a cleaning pad with cleaning liquid to wipe the surface. To generate a better cleaning effect, Abramson et al. designed a robot that has a powered agitator and cleaning pad [14]. However, the corners of the windows are easy to accumulate dust and are difficult to clean. For achieving a comprehensive cleaning of the windows, Nam installed rotating brushes on both sides of the robot [15]. The rotating brushes are used to wipe the edges and corners of the window for covering all areas and wiping them more cleanly. In addition, Miyake et al. [16] and Lv [17] have proposed the moving modules to realize the corner cleaning. The moving module can rotate relative to other mechanisms, so as to change the direction of the robot at the corner to realize comprehensive cleaning. To further enhance the work efficiency, Zhu et al. proposed a complete path planning method [18], and Deng et al. disclosed the shortest path planning method [19].
In addition, the domestic window-cleaning robot should have the ability of automatic cleaning, and it should be convenient for the users to operate. Chen et al. have proposed a cleaning robot system, which includes camera group and WIFI communication component [20]. The camera group can take images around the robot and further generate panoramic image information. The WIFI communication component establishes the communication with a terminal, such as a mobile phone. Hence, the user can view the panoramic information image and send control instructions to the robot through the mobile phone terminal.

B. APPLICATION IN HIGH-RISE BUILDING ENVIRONMENT
Currently, majority of high-rise buildings have glass exterior surfaces, because of their good appearance and lighting. However, they are easily polluted by dust, rain, and so on. Hence, a frequent cleaning work is usually needed. By investigating the existing robots, it is found that the main technical indicators of the cleaning robot system for high-rise buildings are as follows.
1) Fast-moving speed and good cleaning performance. 2) Automatic identification and overcoming obstacles, such as window borders. 3) Good adaptability to wall surfaces.
As the area of the exterior walls is relatively large for the robot to clean, the moving and cleaning speeds of the robot should be taken into account first. For example, TITO 500 uses a rolling brush to clean walls at a speed of 1500 m 2 /h, while the manual cleaning method has a cleaning efficiency of 30 m 2 /h [7]. Thus, the cleaning efficiency of TITO 500 is about 50 times manual cleaning. Although the cleaning device adopts the combination of roller brush and nozzle to ensure better cleaning performance, water droplets and scattering during cleaning work not only pollutes the surrounding area, but also causes a waste of water resources. To overcome this problem, majority of robot cleaning units are designed with a water recovery mechanism, which improves the cleaning performance and also reduces the water waste. For example, Moon et al. designed a cleaning robot with the function of water circulation [21]. The results show that the water consumption can be reduced by about 20% via the water circulation mechanism.
Usually, the cleaning robot for high-rise buildings needs to clean the entire surface of the curtain wall. So, the ability of transferring between surfaces is required for the robot. When the robot has finished cleaning the current glass, it needs to cross the border and other obstacles to reach the next glass surface. Therefore, the geometry of curtain wall, the size of window frame, and the characteristics of obstacles are closely related to the cleaning task. Seo et al. found that half of the buildings have steps less than 100 mm on the vertical surface, including their logo, while the number of steps less than 400 mm accounts for 88%, and the number of steps less than 500 mm is up to 96% [1]. Therefore, high-rise building cleaning robots need to have the ability to identify and overcome the obstacles. In response to these requirements, Seo et al. proposed a new type of robot platform, ROPE RIDE, which can climb a wall containing 100 mm obstacles at a speed of 15 m/min [22]. Zhao et al. presented a glass curtain wall cleaning robot with four propellers [23]. When the height of the window frame is lower than 40 mm, the cleaning robot can overcome the window frame through the deformation of the roller brush and two scrapers. By contrast, when the height of the window frame is higher than 40 mm, the propeller generates a thrust perpendicular to the wall, which causes the robot to leave the wall by a certain distance, so that the robot keeps moving and overcoming obstacles. (a) Wheeled locomotion [67]; (b) cable-driven locomotion [5]; (c) UAV locomotion [56]; (d) legged locomotion [68]; (e) transition locomotion [69]; (f) tracked locomotion [70].
In addition, the architectural styles and facade types of high-rise buildings are diverse, such as vertical buildings, arched buildings, and inverted cone-shaped buildings. Therefore, specific designs are required for different building structures. For example, the Fraunhofer Institute for Factory Operations and Automation developed an appearance cleaning robot for the Leipzig Trade Fair [24]. This is the world's first arched building facade cleaning robot. The robot slides along the glass surface under the action of gravity and the lifting force of the rope. The glass in the path of the robot is cleaned with a roller brush, while the glass on both sides is cleaned with a rotary brush on a retractable rotating arm. Wang et al. designed a cleaning robot for the inverted cone glass wall of the Guangzhou Airport Control Tower in China [25]. The glass facade is composed of 416 trapezoidal glass panels with a total of 13 floors and 32 columns. The angle between two adjacent layers is 0 • , and the angle between two rows is 11 • .
As a mobile robot, the window-cleaning robot is designed and developed by considering four major components including locomotion mechanisms, adhesion mechanisms, cleaning mechanisms, and sensor and controller units. These main techniques are reviewed in the following sections.

A. WHEELED LOCOMOTION
The wheel-driven window-cleaning robot has the advantages of simple structure, flexible movement, and good controllability. Hence, it can be widely used. Wheeled locomotion with differential drives is usually adopted to realize the continuous movement of the robot on glass surface. Miyake conducted speed tests of the proposed robot [71]. The results indicate that the upward and downward speeds of the robot are 0.08 m/s and 0.14 m/s, respectively, and the horizontal movement speed is 0.11 m/s [16]. To determine the effects of gravity, friction, and adhesion on robot motion, Santos et al. established a complete robot dynamics model using the Lagrange method, and further derived the state-space model of the system [26]. The model prediction controller was used to solve the velocity tracking problem. As a result, the effect of dynamic perturbations was minimized to ensure that the robot navigates along the planned trajectory.
The disadvantages of the wheeled mechanism are poor loading capacity and obstacle-overcoming ability, which are mainly attributed to the small contact area between the wheel and the wall [72]. Due to the small contact area between the surfaces, it is difficult for the robot to adhere firmly on the wall. The adhesion force required by a robot is usually provided by suction cups and magnets. When there are obstacles or gaps on the wall, the adhesion force is unstable and induces the risk of falling off.

B. TRACKED LOCOMOTION
The tracked locomotion mechanism has a similar motion principle and motion ability as the wheeled locomotion mechanism. As compared with the wheeled mechanism, the movement speed of this method is slower, and its turning ability is lower. On the other hand, this method has a larger contact area and better stability to prevent slipping. Its obstacle-overcoming ability and loading capacity are stronger [70].
For example, Cleanbot II robot can overcome the obstacles of 6 mm and carry a weight of 25 kg [33]. The robot GEKKO III uses two planar tracks to overcome 40 mm obstacles and achieves the cleaning speed of 240 m 2 /h [74]. In addition, to improve the obstacle-climbing ability of the tracked locomotion mechanism, Vega-Heredia et al. proposed a modular cleaning robot Mantis [73], as shown in Fig. 5. The robot VOLUME 9, 2021 FIGURE 6. A cleaning robot based on parallel translational mechanism [77].
consists of three identical modules. Each module adopts a differential traction system, which employs caterpillar tracks for locomotion. When crossing the frame, the robot uses the linear drive to lift each module in turn and makes it cross the frame, realizing the plane transition while ensuring stable adhesion. As the tracked locomotion mechanism has the above advantages, it can be widely deployed in the field of window-cleaning.

C. TRANSITION LOCOMOTION
The working principle of the translation locomotion mechanism is similar to that of a simple two-leg locomotion mechanism. One leg is attached on the surface, and the other one moves to the target position. Therefore, its movement strategy can be summarized as sticking-moving-sticking mode. As it always maintains a stable adhesion force, the translation locomotion mechanism has a good load capacity. The main disadvantage of this mechanism is that its movement strategy is discontinuous [69]. Thus, the movement speed is relatively slow. To further increase the movement step size, the volume of the translation locomotion mechanism is also increased. Hence, it is mostly used for cleaning the exterior surfaces of high-rise buildings.
The series of Sky Cleaner window-cleaning robots are typical translation robots driven by air cylinders [44], [75], [76]. Especially, Sky Cleaner 3 is a commercial cleaning robot, which is designed for cleaning the glass surface of Shanghai Science and Technology Museum [6]. The main mechanism of the robot is composed of two cross-connected rodless cylinders, named X and Y cylinders. To enhance the flexibility of the robot, a turning waist joint is added to adjust the direction of movement for the robot. To further improve the motion accuracy of the robot, a segment and variable bang-bang controller is proposed. The experimental results show that the coverage percentage of the working area of the robot system was over 93%, and the cleaning efficiency was 125 m 2 /h. Similarly, Kumar et al. designed a small window-cleaning robot by using an XY translation mechanism [38]. The robot model was simulated in vertical and inclined working environments to verify its feasibility.
To reduce the size of the structure, Candan et al. proposed a new type of cleaning robot that uses a parallel translation mechanism rather than the traditional vertical translation mechanism [77], as shown in Fig. 6. The main body of the robot consists of two sliding frames. The one inside another one acts as a sliding rod. The linear cylinder is employed to drive the inner and outer sliding frames in turn to realize the translation movement in forward and backward directions. The rotational motion is provided by a rotating cylinder, which is mounted on the center of mass.

D. LEGGED LOCOMOTION
As compared with other motion mechanisms, legged wall-climbing robots have the obvious advantages of multiple degrees-of-freedom and obstacle-crossing ability. Aiming at the cleaning of high-rise buildings, Nansai et al. designed a two-legged cleaning robot. Each foot of the robot contains a suction cup and a cleaning mechanism, which are connected by a parallel mechanism [78]. The parallel mechanism not only ensures that the feet are parallel to the glass surface, but also reduces the number of servo motors for reducing the weight of the robot. According to the geometric constraints, a robot foot positioning algorithm was proposed, and its effectiveness was verified by numerical simulation study [79]. Experiments were carried out in practical scenes, and the results showed that the developed robot can overcome the positive and negative obstacles in the glass panel with significant coverage performance.
The safety and load capacity of the robot can be enhanced by increasing the number of legs. For instance, the number of legs can be increased from two to eight. However, as the number of legs increases, the corresponding mechanical structure and the control system will become more complicated [80]. As its movement mode is discontinuous, its energy efficiency is relatively low. To improve the performance of the robot, Hirose et al. reported two types of designs, which are the coupled drive and gravitationally decoupled actuation, respectively. The active coupling drive mechanism was adopted to maximize the output power of the robot system. The gravity decoupling drive mechanism was employed to maximize the energy efficiency of the robot system [81]. Furthermore, the two methods can be integrated and applied to the posture control of the wall-climbing robot. Due to the low movement efficiency of the multi-legged robot, how to improve its cleaning efficiency will be the focus of future work.

E. UAV LOCOMOTION
The unmanned aerial vehicle (UAV) is usually adopted for performing non-contact tasks, such as surveillance, reconnaissance, and exploration of hazards. Actually, UAV has a great potential for the use in automated window-cleaning. For the first time, Albert et al. proposed a UAV that can physically interact with the surface [82]. It can apply a normal force to the wall while maintaining the flight stability. The performance of the system has been verified through multiple flight tests, which further proves that the UAV system has potential applications on cleaning windows. Meanwhile, Rahman et al. designed a glass-cleaning drone system, which was controlled by radio frequency (RF) signals. It can be used to clean the exterior surfaces of high-rise buildings [83]. Controlled by RF signals, the robot has six motion modes. When it comes into contact with the wall, the cleaning module starts work, and then, the cleaning work is completed by controlling the up and down movement of the UAV.
To further ensure the transmission of information between the UAV and the control station, Miraj et al. proposed several methods to increase the capacity of the information transmission channel and the anti-noise ability [56]. To achieve a more stable motion system, Wopereis et al. proposed a multi-modal locomotion system [84]. The multi-modal motion system consists of three actuated omnidirectional wheels, an aerial manipulator, and a customized end effector. The UAV system provides the basis of movement, which carries the manipulator to the desired position and offers the required normal force for creating the friction. The robot end-effector performs a cleaning movement.
Unlike the robots as mentioned above, Sun et al. proposed a switchable UAV system, which performs the cleaning work by installing a cleaning robot on the window [57]. The main working mode of the UAV system includes the following four stages: free flight, attachment, delivery, and separation. When the UAV releases the cleaning robot, the inertial characteristics of the system change significantly, causing the system to become unstable. To solve this problem, a position constraint was imposed on the UAV system. In addition, the suction cups were used to adsorb on the glass surface. Finally, the feasibility of the UAV system was verified by conducting experimental study.
Although using UAV for cleaning work has many advantages, it exhibits a major disadvantage of short endurance. For example, Dhanaseely and Srinivasan reported a drone with the endurance of only 8 minutes [85]. The drone disclosed by Pardell has an endurance of only 20 minutes [55]. How to prolong the endurance of UAV for practical use demands a further study.

F. CABLE-DRIVEN LOCOMOTION
The cable-driven locomotion mechanism is commonly used in designing a window-cleaning robot. This method relies on rope ascenders and a winch mechanism installed on the roof to support and navigate the robot. Such approach ensures a high degree of security, as the robot is always connected to the roof by ropes. Gu et al. studied the safety cable of wall-climbing robot to ensure a safe operation [86]. During the whole working process, the state of the safety rope can be divided into five stages. With the tension of the safety cable as the basic signal, the operator status can be reliably judged and effective countermeasures can be taken.
By experimental study, Akinfiev et al. found that the vibration of the robot pendulum occurred during the cleaning process [7]. The analysis of the system dynamic characteristics shows that the existence of the above-mentioned vibration has nothing to do with external factors (such as the wind). Instead, it is the inherent characteristic of the system itself. The fundamental solution to this problem is to attach the robot to the surface. If the adhesion force is large enough, the vibro-impact process will not occur. Therefore, the cabledriven system needs to provide enough adhesion force by using suckers and propellers.
SIRIUSc is a typical window-cleaning robot based on the cable-driven system [87], [88]. The robot is manufactured by Fraunhofer Institute for Factory Operation and Automation (IFF) and used in a high-rise building in Munich, Germany. A gantry mechanism at the top of the building uses four cables to position and drive the robot. The gantry mechanism exhibits three degrees-of-freedom, including a moving base along the guide rail and a cantilever beam with two rotating joints. Shao et al. designed a planar four-cable actuated parallel robot and established its kinematics and statics model [89]. Furthermore, the influence of tension on working space was analyzed. The results showed that the maximum cable force is positively related to the workspace, but the sensitivity will gradually decrease. However, the stability of the robot has not been studied.
To ensure a positive cable tension and provide good performance trajectory tracking, Amber et al. proposed a workspace control method based on the robot model [90]. In this method, the visual system was used to detect the location of the endeffector. The mean absolute errors of 8.8 mm and 13 mm were obtained with and without the visual system, respectively. The comparison study showed that this method can effectively reduce the error between the reference position and the real position. In practice, as the rope rises and falls, the radius of the reel will also change, resulting in a large trajectory error. Ramkumar et al. designed a tethered guidance vehicle system [91]. The system made use of the friction between the rope and the wheel to complete the climbing movement. Appropriate actuators were selected according to the required climbing force. By using this type of traction mechanism, Seo et al. proposed a dual-ascender robot [92]. As the robot relies on the friction between the rope and the traction wheel to move, the length error caused by the rope sliding is inevitable. To reduce this error, a sensor fusion method combining the rope length and angle sensing data with the weight factors was proposed. Through simulation and experimental study, it is verified that the sensor fusion method offered good anti-rope slip performance, and improved the stability (with about 4 mm error) under the sliding condition of 20 m × 20 m. To further improve the position estimation of the dual-ascender robot, Choi et al. proposed a position estimation method based on the Kalman filter method for the rope angle data [93]. Experimental results of the accuracy and repeatability tests showed that the error of the sensor fusion method can be reduced by 2-3 times.
To improve the obstacle overcoming ability of the cabledriven system, Lee and Chu proposed a three-module cleaning robot [94]. The robot was driven by a winch on the top of the building to achieve vertical movement. Each climbing module was equipped with a variety of sensors to detect obstacles and their states, and each module contained a separate lift drive device. The robot moves downward the wall   [5]; (c) magnetic adhesion [10]; (d) negative-pressure adhesion [78].
under the drive of a winch. When the module detects an obstacle, the module leaves away from the surface by the lift-drive device, moves down over the obstacle, and finally attaches to the surface with a forward motion. In the experiment, the maximum/minimum size of the obstacles and the climbing time were measured. In addition, several factors that affect the climbing efficiency were discussed.
Through the above descriptions, the advantages and disadvantages of six locomotion mechanisms of window-cleaning robots are summarized as shown in the Table 1.

IV. ADHESION MECHANISMS
In view of the cleaning operation on vertical (or inclined) surface (window), an adhesion mechanism is needed to maintain the required contact (or distance) between the robot and the surface (window). The main adhesion mechanisms include rail-guided adhesion, propulsion adhesion, negative-pressure adhesion, and magnetic adhesion, as shown in Fig. 7. They are discussed in detail in this section.

A. RAIL-GUIDED ADHESION
The advantages of the rail-guided mechanism are safety and stability, because the robot can be directly installed on the rail of the building surface and performs cleaning tasks along the rail. However, reasonable rails need to be designed for mounting on the exterior walls of the building in advance, which will increase the deployment cost. Moreover, this method cannot be applied to any existing buildings, which is also the biggest limitation of this method.
The first rail-guided robot on exterior wall was developed for painting in 1985. It was later used by Taisei in Shinjuku Central Building in Tokyo in 1988 [96]. Japan's first rail-guided cleaning robot (Oyako Robot) was installed on the landmark tower in Yokohama in 1993 [96]. In addition, Jun et al. proposed a cleaning robot design for specific windows on specific floors [95].
Aiming at cleaning the entire building surface, Zhang et al. designed a window-cleaning robot for cleaning the elliptical hemisphere based on the rail-guided adhesion mechanism [97]. As supported by circling tracks, the robot is able to climb upward and downward between the strips, and moves horizontally along a strip around an ellipsoid for performing the cleaning work. Experimental test showed that the climbing speed and the horizontal movement speed of the robot are 200 mm/s and 100 mm/s, respectively, and the cleaning efficiency is 150 m 2 /h.
In addition, Lee et al. developed a fully automated vertical-horizontal cleaning robot for cleaning building surface [98]. To ensure the safe operation of the vertical and horizontal units during docking, the vertical robot system was equipped with track brake and track extension units. In addition, the cleaning tool of the horizontal unit was designed and discussed, and a comprehensive control system for the cleaning movement was proposed. Experimental results showed that the cleaning efficiency of the robot is up to 234.9 m 2 /h.

B. PROPULSION ADHESION
The propulsion adhesion mechanism usually adopts propellers or fans to generate thrust force, which presses the cleaning robot against the wall surface. This method does not consider the air leakage, and the adhesion is more stable.
In the literature, Mahmood et al. investigated the propulsion adhesion robots in terms of their characteristics, applications, and challenges [99]. The robot TITO 500 uses a powerful industrial fan to create grasping force, so that the robot can be stably attached onto the working surface [7]. In addition, Kim et al. developed a novel wall-cleaning robotic platform ROPE RIDE [70]. To maintain sufficient contact force on various types of walls, two propeller thrusters were used to offer the adhesion force. They were optimized by the Taguchi method to ensure that the thrust force of each propeller was greater than 45 N. Recently, Zhang et al. designed a glass curtain wall-cleaning robot, which provides the robot with adhesion force by using four propellers [100].
The robot can adapt to the glass wall with different angles by adjusting the propeller thrust. It can also get off the surface and overcome the obstacles such as horizontal window frames by turning over the propeller to generate a lifting force.
Generally, the adhesion force provided by the propulsion adhesion mechanism is limited and insufficient to compensate for the gravity of the robot. Thus, additional lifting force, e.g., provided by rope pulling, is required. At the same time, the volume of the propulsion adhesion mechanism is generally large, and it is often accompanied by noisy voice.

C. NEGATIVE-PRESSURE ADHESION
The principle of negative-pressure adhesion is to produce an air pressure difference using atmospheric pressure to make the robot be adsorbed on the building surface. Negativepressure adhesion methods mainly include vacuum adhesion, vortex adhesion, and Bernoulli principle adhesion [101]. For example, Zhao et al. designed a robot Vortexbot based on vortex suction [102]. The authors have discussed the working principle, feasibility, and mechanical structure of the vortex suction unit. The testing results on a real wall showed that the robot has a load capacity of 2.5 kg and can overcome obstacles of less than 15 mm.
The vacuum adhesion method creates a vacuum area between the robot and the wall. The area needs to be sealed to prevent the robot from falling off due to the air leak. According to the mechanism of vacuum adhesion, it can be divided into active adhesion mechanism and passive adhesion mechanism [72], as discussed below.

1) ACTIVE ADHESION
Active adhesion is one of the main adhesion technologies for window-cleaning robots. This method has the advantages of reliable adhesion capacity and strong load capacity. It relies on a vacuum pump to provide continuous pressure, which can easily control the attachment and detachment of the vacuum adhesion. However, the vacuum pump will increase the weight and reduce the movement speed of the robot. To overcome this problem, Zhang et al. adopted a separate design for the driving vacuum pump and the robot [6]. The supporting vehicle was operated on the ground for reducing the weight of the cleaning robot. In addition, Cui et al. proposed a dual vacuum pump control system for ensuring the continuity of the vacuum pump [103]. The negative-pressure sensor was used to detect the working condition of the vacuum pump, so as to determine whether to use the standby pump or not, improving the safety of the robot.

2) PASSIVE ADHESION
Passive adhesion does not require a vacuum pump and other equipment, which has obvious advantages such as low power consumption, compactness, and light weight. For example, the robot DEXTER uses passive adhesion to achieve the climbing motion [104], [105]. The passive suction cups were made of elastic materials, and they can be simply pressed to the surface to exhale air to create a vacuum. Additionally, Tun et al. introduced a self-locking screw mechanism to drive the passive suction cup for achieving the engagement and disengagement of the suction cups [39]. According to the suction cup load experiment, the proposed screw drive mechanism only needs to provide a thrust of 12.5 N to make the suction cup flat. More recently, Ge et al. have studied the characteristics of the suction cup and determined the relationship between the pressing force and the release force of the suction cup [106]. According to the characteristics of the suction cup, a rail-guide mechanism was designed to realize the compression and pull-off movement of the passive suction cup.
Majority of the robot vacuum adhesion systems are concentrated on the application of technology. Whereas the research on its mechanical and dynamic performances is still insufficient. In the literature, Xu et al. adopted the fluid network theory to model the negative pressure generated by the vacuum pump [107]. The performance and stability of the robot under different negative-pressure conditions were simulated. In view of the difficulty in accurately establishing the vacuum adhesion kinetic model, Muthugala et al. introduced a fuzzy inference system to achieve the control goal [108].
Moreover, fault detection and safety assurance are essential requirements for window-cleaning robots, since the falling of robots might lead to catastrophe. In the literature, Muthugala et al. proposed a method to detect the adhesion issue of a robot [109]. In this way, the adhesion-awareness of the robot is established, and the adhesion force of the vacuum mechanism is further controlled.

D. MAGNETIC ADHESION
For the walls with high magnetic permeability, the magnetic adhesion method is usually adopted for the robot. Researchers have applied the magnetic adhesion method for ship welding, oil tank inspection, and other applications [110].
Considering that the glass surface is a non-magnetic permeability surface, the magnetic adhesion mechanism cannot directly generate adhesion force. Hence, it is necessary to devise a special design for window-cleaning robots based on magnetic adhesion. For example, the WINDORO windowcleaning robot adopts two magnetic modules, which are placed on the inner and outer sides of the window [10]. The two magnetic modules are programmed for cleaning and navigating, respectively. The performance of WINDORO robot is further improved by replacing the circular magnet with rectangular magnet to increase the magnetic force [111]. Later, Baek et al. added an induction power generation module to the external cleaning unit, which can utilize the magnetic field change between the internal and external modules to generate electricity energy [112]. The generated electric energy can provide the required power to the extra cleaning unit continuously in real-time.
To improve the safety of the robot, the magnetic force between the two cleaning modules needs to be monitored and adjusted to ensure that it will not fall during the movement.  Wei et al. designed a magnetic force adjustment module, which can adjust the magnetic force between the two modules according to the thickness of the glass, for ensuring the stability during the movement [28]. Ryu et al. set the range of the magnetic force to ensure a safe work [113]. In particular, the magnetic force can be adjusted by changing the distance between the two modules through the control module. To realize automated operation, Choi et al. used a reducer motor to drive the magnetic gripper and adopted a strain gauge to measure the magnetic force [111]. According to the feedback of the magnetic induction module, the rotation direction of the screw drive motor was automatically controlled to adjust the magnetic force of the robot.
Usually, the magnetic adhesion robot adopts the design of internal and external modules. Hence, it can clean both sides of the window at the same time, which improves the cleaning efficiency. However, for non-magnetic permeability surfaces such as glass, such method exhibits poor barrier-crossing ability. So, it is usually adopted in domestic environments.
Based on the above discussions, the advantages and disadvantages of four adhesion mechanisms of window-cleaning robots are summarized as shown in the Table 2.

V. CLEANING MECHANISMS
The central role of a window-cleaning robot is to remove dirt from the window surface. Hence, the cleaning performance is the main characteristic of a window-cleaning robot [115]- [119]. The robot cleaning mechanism usually adopts two types of wiping mechanisms: the drag-wiper and rollerwiper. In the literature, Zhou et al. conducted a detailed comparison of the two kinds of wipers from the aspects of force analysis, energy consumption, and wiping effect [120]. The result showed that the roller-wiper type has a better cleaning effect along with a lower energy consumption. Therefore, the use of water-spraying and roller-wiper has become a common combination way for cleaning.

A. WATER-SPRAYING MECHANISM
Recently, Lee et al. have proposed a method of spraying high-pressure water using a pump and nozzle to improve the cleaning performance [121]. Whereas this combination way of cleaning has the weakness of excessive use of water and will bring secondary pollution due to scattering and dripping of the contaminated water. To overcome such issue, researchers tried different water recycling technologies to improve the utilization rate of water resources. For instance, Yoo et al. adopted the upper and lower squeegees to prevent the dripping and sputtering of water and contaminants, and the sewage was recycled by suction [122]. Moon et al. proposed a cleaning system using the twin-fluid atomizer method and pulse width modulation (PWM) flow control [21]. The injection control unit can adjust the amount of water-spraying according to the distance, position, and moving speed of the robot for achieving an even spray. The experimental results showed that the system eliminates the scattering and dripping phenomenon and reduces the water usage by 20%. In addition, the SIRIUSc is composed of cleaning tools using steam evaporation [88], [123]. Thus, the water consumption of the cleaning system is very low, only 1.5 L/h.

B. MANIPULATOR MECHANISM
The manipulator is an important part of the cleaning unit, which is used to connect the cleaning unit and robot body. The manipulator has the important role of changing the position and orientation of the cleaning unit. In the literature, Kim et al. used ball-screw mechanisms to adjust the contact angle and the distance between the cleaning unit and surface [70]. Similarly, Joo et al. proposed a two-degreeof-freedom (2-DOF) parallel manipulator mounted on the scaffold [114], as shown in Fig. 8. Furthermore, to ensure the optimal performance of the manipulator, the kinematic parameters of the parallel mechanism were optimized.
It is important to maintain a stable pressure between various types of surfaces and the cleaning unit, because it is mainly based on the friction between the cleaning unit and the surface to remove contamination. Kim et al. presented a position-based impedance control scheme to improve the force tracking ability of the robot platform (ROPE RIDE) [124]. To ensure that the 2-DOF manipulator not only keeps a stable contact force, but increases the force tracking capability, Kim et al. adopted a control strategy by combining the disturbance observer and sliding mode control [125]. The experimental results showed that the contact force is stable in the bound of ±4.5 N even for varying shapes of surfaces.
The cleaning speed is also a very important performance index. The performances of several typical cleaning robots are listed in Table 3. By comparison study, it is found that the cleaning efficiency of the cleaning robot is several times higher than that of manual work (with the cleaning efficiency of 30 m 2 /h), and the highest one can reach more than 50 times. In addition, it is observed that there are big differences between different cleaning robots. The main reason lies in that the cleaning speed is closely related to the surface complexity, size, and locomotion mode of the robot.

VI. SENSOR AND CONTROLLER UNITS
Sensors and controllers are the foundation to develop an intelligent window-cleaning robot. In particular, the sensors are used to detect the robot's working status and to monitor the external working environment. The controllers are adopted to adjust the robot mechanisms to realize the locomotion, adhesion, and cleaning operation, as shown in Fig. 9. This section mainly introduces the application of the sensor and controller units in the window-cleaning robots.

A. INTERNAL SENSORS
The internal sensors mainly include vacuum sensors, force sensors, and deflection sensors, which are used to detect the working state of the robot itself. For example, the vacuum sensor is used to measure the vacuum intensity inside the suction cup for judging whether the robot is adsorbed on the wall stably.
Common applications of internal sensors are summarized in the following categories.

1) ROPE TENSION DETECTION
Most of the high-rise window-cleaning robots need cable systems to prevent falls. Some robots are directly driven by the cables to achieve the movement. Therefore, it is necessary to monitor the tension of the cable in real-time to ensure the normal and safe operation of the cleaning robot. Yao et al. designed a cable tension sensor module to monitor the cable tension status during lifting [128]. To achieve the purpose of low cost and low power consumption, the monitoring system was proposed based on the star topology of wireless sensor network.

2) ADHESION DETECTION
To ensure that the robot can be stably adsorbed on the glass surface, it is necessary to ensure that the adhesion force lies in a reasonable working range. Regarding the vacuum adhesion method, the most commonly used method is to measure the pressure inside the suction cup with embedded barometer sensor to ensure that the pressure value is always maintained in a stable range to prevent the robot from falling off [57], [129]. For the magnetic adhesion method, to ensure the stability of the magnetic force, Beak et al. have adjusted the magnetic force between the internal and external devices by changing the relative distance to ensure a stable adhesion [130]. Instead, Ryu used electromagnets to provide adhesion, and the magnetic force can be tuned by adjusting the magnitude of the input current [113].

3) SOLUTION DETECTION
To ensure the cleaning quality, usually detergent solution will be sprayed on the surface of the glass. Thus, it is necessary to detect the solution content in real-time to ensure the cleaning quality. For example, Emrem et al. adopted ultrasonic level sensors to measure the amount of solution in tank [131].

4) ORIENTATION DETECTION
The orientation detection is usually realized by using accelerometer and gyroscope. They are adopted to measure the deflection angle of the robot relative to gravity or VOLUME 9, 2021 predetermined direction. Choi et al. used the combination of accelerometer and gyroscope to correct the heading of the robot and to minimize the heading error of the robot [111].

5) ENCODER APPLICATION
The encoder is necessary for motor-driven robots because the encoder can be used to record the robot movement information. For example, Emrem et al. adopted the encoder to transmit information, such as the speed and direction of the robot, to the controller [131]. Elkmann et al. used two encoders to determine the position of the gantry [123].

B. EXTERNAL SENSORS
The external sensors mainly include distance sensors, azimuth sensors, and vision sensors, which are employed to detect the external working environment of the robot, such as the recognition of stains on the glass surface or the window frames.
Common applications of external sensors are summarized in the following categories.

1) WIND DETECTION
For cleaning the windows of high-rise buildings, the use of window-cleaning robots increases the risk of falling off during windy weather. To solve this problem, researchers have suggested a wind force detection module to ensure the safe operation of the robot. For example, Chen et al. designed a wind speed detection module to detect the outdoor wind force [132]. When the detected outdoor wind force is greater than a predetermined threshold value, the robot will execute a safety control strategy. Emrem et al. used ultrasonic sensors to detect the intensity and direction of the wind, and they adjusted the axial thrust force according to the wind speed and direction, making the cleaning process safer [131].

2) OBSTACLE AND BORDER DETECTION
The detection of the border can determine the cleaning range of the robot, and also prevents the collision. In previous work [133], a method of contact detection was proposed to determine the size of the rectangular window through the contact between the probe and the border. In order to detect the frame, Elkmann et al. carried out experimental tests on various types of sensors, and the results showed that the novel eddy current sensors have good performance [123].

3) CONTAMINATION DETECTION
To further improve the cleaning efficiency and quality, it is necessary to identify the dirt on the glass surface and clean it according to the contamination degree to improve the cleaning quality. For example, Lee et al. developed an infrared sensor system for an automated window-cleaning robot to detect the contamination [134]. Its working principle is that as the contamination level increases, the amount of the reflected input light will decrease, so that the intensity of glass contamination can be determined. Kumar et al. used a photodiode as a sensor for dirt detection [135]. It enables a

4) SELF-POSITION DETECTION
Self-positioning can determine the position of the robot relative to the window, which provides the foundation for path planning. Sun et al. introduced a vision sensor technology for positioning cleaning robots [40]. The sensor system consists of a CCD camera and two laser diodes. By measuring the position and direction of the robot relative to the border, the precise positioning of the robot on glass surface is obtained.
Recently, Sasaki et al. have established a simultaneous localization and mapping (SLAM) algorithm for positioning the cleaning robot [136]. The camera was used to obtain a color image of the surrounding environment, and ORB (oriented fast and rotated brief) method was adopted to extract feature points. The feature points of the window frame were detected and further applied to the depth image. Thus, the distance information from the camera to the window frame can be obtained to realize the self-position of the robot on the window surface.

C. CONTROLLERS AND APPLICATIONS
The controller refers to the general architecture of control system of all the modules [3]. It is implemented to adjust the cleaning robot mechanisms based on the feedback from the sensors to realize the locomotion, adhesion, and cleaning operation, as shown in Fig. 10.
In the literature, Lee et al. proposed an integrated control system which can be divided into three stages, such as preparation stage, cleaning stage, and return stage [98]. The integrated control system is connected via two wireless communication systems to ensure stable communication between different mechanisms. Experiments were carried out to verify the performance of the integrated control system. Elkmann et al. used a programmable logic controller (PLC) as the robot control system, which receives and combines sensor data and operator instructions to generate robot actions [88]. As the control system was modularly programmed, it can be easily transferred to a large number of different facades (windows) with reduced reprogramming work.
Concerning the control of each individual mechanism of the robot, the ability to control the suction power is a key factor to ensure the safe adhesion and reliable locomotion of the robot. Recently, a novel control criterion using a fuzzy inference system has been proposed for a wall-cleaning robot to ensure the safety and reliability of operation [108]. The fuzzy inference system establishes the adhesion-awareness by analyzing the current pressure difference and present power of the impeller mechanism. The experimental results indicate that the Wall-C robot with adhesion-awareness can maintain the pressure difference within the preferred range. To improve the motion accuracy of the robot, Zhang et al. proposed a segmented variable bang-bang controller [76]. The testing results showed that the controller can effectively overcome the problems of lower stiffness and nonlinear movement characteristic of the pneumatic system. In addition, Santos et al. presented a model-based torque controller for velocity tracking in a four-wheeled climbing robot [26]. The controller can minimize the impacts of unmodulated dynamic disturbances to ensure that the robot navigates along the planned trajectory with accurate speed control.
The control purpose of the cleaning unit is to maintain an interaction force between various types of surfaces and the cleaning unit. Kim et al. presented a position-based impedance control scheme for precision force tracking of the cleaning unit [124]. Such method can tactfully adjust the target stiffness of the impedance model as well as the reference position command according to the force tracking error between the real and reference contact forces. To improve the force tracking capability of the cleaning unit, Kim et al. reported a control strategy by combining the disturbance observer and sliding mode control [125]. The experimental results reveal that the contact force is stable in the bound of ±4.5 N with varying shapes of surfaces.
It is notable that the book [137] presents several engineering design tools, which make it easier for the readers to understand the differences (e.g., pros and cons) between the robots found in the literature. Through the survey on existing robots, it has been found that small window-cleaning robots for domestic environments can be relatively easily commercialized. However, there is no universal commercial solution for the window-cleaning robot dedicated to the high-rise building surface. Thus, it is necessary to develop the window-cleaning robot which is applicable to different high-rise building structures.

VII. CONCLUSION
This paper provides a state-of-the-art survey of recent development on window-cleaning robots. It illustrates the feasibility of the robot solution from the aspects of safety, cleaning efficiency, and economic benefits. First, the application environments of the window-cleaning robot are classified into domestic use and high-rise building use. According to different application environments, the performance characteristics of the robots are analyzed. Second, the popular locomotion and mechanisms of the robots are classified. Their advantages and disadvantages, as well as their applications, are discussed. Next, as an end-effector of the window-cleaning robot, the cleaning mechanism is dictated. The cleaning mechanism should not only have sufficient degrees of freedom and water recovery, but also ensure large enough contact force. The cleaning speed is closely related to the surface complexity, size, and locomotion mode of the robot. Finally, the sensor and controller units are discussed. Both internal and external sensors have been employed to detect the working states of the robot and environment. Various feedback control schemes have been proposed to adjust the robot state by regulating the locomotion, adhesion, and cleaning mechanisms. Overall, this paper carries out a detailed review of the key techniques and applications of window-cleaning robots. It offers a reference for readers to conduct relevant further research.