In this study, we proposed a fault-detection architecture for robot middleware systems and implemented it in an autonomous mobile robot system. Although robot middleware has been employed in robot development, the design methodology for fault-tolerant systems remains underdeveloped. Moreover, conventional approaches have two drawbacks. First, previous fault-detection approaches were difficult to apply to robot systems in general, because they were designed for a specific robot or task. Second, although many fault-detection approaches have been domain-independent, the fault information made available was very basic to allow debugging or fault recovery. Our goal is to develop a domain-independent framework that could deliver domain-specific information. The return value of Remote Procedure Call (RPC) can notify detailed information; however, designers are reluctant to apply it as it degrades component reusability. To address this problem, we proposed a hierarchical fault-detection architecture that layers the system on the basis of the reusability of different components. RPC communication is then applied only between component with low reusability. This minimizes the negative effects of RPC, allowing it to be used for fault-detection in various robots and tasks. To demonstrate the practicality this approach, we developed a fault-detection architecture, adapted it for use with an autonomous mobile robot, and implemented it in RT-Middleware. We demonstrated that layering the system by the frequency of reuse of the different components successfully mitigated the tendency of RPC to degrade their reusability while making detailed fault information available.