An autonomous mobile robot deals with the empirical world which is never fully predictable, hence it must continually monitor its performance by comparing the actual responses of sensors to their expected responses. Where a discrepancy occurs, the source of the discrepancy must be diagnosed and on-line corrective actions or replanning may be required. The use of a production system for the control of an autonomous robot presents several attractive features: the explicitness and homogeneity of the knowledge representation facilitates explaining, verifying and modifying the rules which determine the robot's behavior; it also permits the incremental extension of the domain of competence. However, real-time operation poses a number of challenges due to the dynamic nature of the data and because the system must frequently deal with a large knowledge base in a limited time. An implementation of a control system is discussed where a large commercial real-time expert system originally designed for industrial process diagnostics was adapted to the control of an autonomous mobile robot for planning, executing and monitoring a set of navigational tasks. One of the essential components of the problem domain is the occurrence of an "unexpected" happening e.g., as new obstacles are moved into the domain during the robot traverse, or when an obstacle undetectable by the long-range sonar sensors is suddenly observed by a proximity sensor. In a recent demonstration of the system, the detection of a problem generated an interrupt alarm, a diagnostic procedure, and a new plan, which was successfully executed in real time.