A pool cleaning robot that may include first and second fluid openings, with a fluid path between the first fluid opening and the second fluid opening; a turbine at least partially disposed within the fluid path so as to extract energy from flow of fluid through the fluid path; an electrical generator; a rechargeable power source; and a controller that is arranged to direct the pool cleaning robot to be positioned in a certain location in which a flow level of fluid that is circulated by a pool fluid circulation system is higher than a flow level of the fluid within a majority of the pool, wherein when positioned at the certain location the fluid that is circulated by the pool fluid circulation system passes through the fluid path.