Abstract Robots will soon take part in everyone’s daily life. In industrial production this has been the case for many years, but up to now the use of mobile robots has been limited to a few and isolated applications like lawn mowing, surveillance, agricultural production and military applications. The research is now progressing towards autonomous robots which will be able to assist us in our daily life. One of the enabling technologies is navigation, and navigation is the subject of this thesis. Navigation of an autonomous robot is concerned with the ability of the robot to direct itself from the current position to a desired destination. This thesis presents and experimentally validates solutions for road classification, obstacle avoidance and mission execution. The road classification is based on laser scanner measurements and supported at longer ranges by vision. The road classification is sufficiently sensitive to separate the road from flat roadsides, and to distinguish asphalt roads from gravelled roads. The vision-based road detection uses a combination of chromaticity and edge detection to outline the traversable part of the road based on a laser scanner classified sample area. The perception of these two sensors are utilised by a path planner to allow a number of drive modes, and especially the ability to follow road edges are investigated. The navigation mission is controlled by a script language. The navigation script controls route sequencing, junction detection, junction crossing calculations and drive mode selection. The entire system is tested on a combination of narrow asphalt and gravelled roads connected by a number of junctions. Missions of up to 3km in length have been successfully completed using the described system. The main focus of the thesis has been the experimental validation of the implemented solutions and the ability of the methods to solve real world problems. The amount of software needed by an autonomous robot can be overwhelming. Software reuse and distributed development are therefore important issues. The thesis describes a new component architecture for robotics software that promotes software reuse and distributed development and maintenance.