An aircraft cleaning robot comprising a robot arm having a proximal end attached to a mobile carrier, and a distal end provided with a cleaning head comprising a brush for brushing an aircraft to be cleaned, wherein the brush is rotatably attached to the robot arm to be rotated about a brush rotation axis; and a controller configured to control the position of the cleaning head, wherein the aircraft cleaning robot is configured to automatically orient the brush such that a cleaning face of the cleaning head is aligned with the surface being brushed, wherein the controller is configured to, based on input from the robot arm and/or cleaning head, determine a cleaning direction in which the cleaning face is presently facing; and, based on the determined cleaning direction, operate the robot arm along the cleaning direction to apply a brush engagement pressure in said cleaning direction, wherein the robot arm comprises a set of joints (18; 22; 28; 50a; 50b) comprising a first joint (18; 22; 50a; 50b) and a second joint; and the controller is configured to control the position of the cleaning head relative to the mobile carrier by operating the robot arm, and to drive the mobile carrier along the aircraft to be cleaned, while cleaning the aircraft, wherein the controller is configured to detect a change of distance between the mobile carrier and the aircraft, and based on said detected change of distance, operate one of said first and second joints (18; 22; 28; 50a; 50b) to maintain a desired cleaning engagement pressure between the cleaning head and the aircraft; and operate the other (18; 22; 28; 50a; 50b) of said first and second joints (18; 22; 28; 50a; 50b) to maintain an elevation of the cleaning head, wherein the cleaning head is provided with a brush engagement angle detector (42a-c) configured to detect a brush engagement angle (β) between a brushing face of the brush and the surface being brushed; and the controller is configured to control the orientation of the cleaning head based on the detected brush engagement angle (β). a robot arm having a proximal end attached to a mobile carrier, and a distal end provided with a cleaning head comprising a brush for brushing an aircraft to be cleaned, wherein the brush is rotatably attached to the robot arm to be rotated about a brush rotation axis; and a controller configured to control the position of the cleaning head, wherein the aircraft cleaning robot is configured to automatically orient the brush such that a cleaning face of the cleaning head is aligned with the surface being brushed, wherein the controller is configured to, based on input from the robot arm and/or cleaning head, determine a cleaning direction in which the cleaning face is presently facing; and, based on the determined cleaning direction, operate the robot arm along the cleaning direction to apply a brush engagement pressure in said cleaning direction, wherein the robot arm comprises a set of joints (18; 22; 28; 50a; 50b) comprising a first joint (18; 22; 50a; 50b) and a second joint; and the controller is configured to control the position of the cleaning head relative to the mobile carrier by operating the robot arm, and to drive the mobile carrier along the aircraft to be cleaned, while cleaning the aircraft, wherein the controller is configured to detect a change of distance between the mobile carrier and the aircraft, and based on said detected change of distance, operate one of said first and second joints (18; 22; 28; 50a; 50b) to maintain a desired cleaning engagement pressure between the cleaning head and the aircraft; and operate the other (18; 22; 28; 50a; 50b) of said first and second joints (18; 22; 28; 50a; 50b) to maintain an elevation of the cleaning head, wherein the cleaning head is provided with a brush engagement angle detector (42a-c) configured to detect a brush engagement angle (β) between a brushing face of the brush and the surface being brushed; and the controller is configured to control the orientation of the cleaning head based on the detected brush engagement angle (β).