A model based approach for fault detection in a centrifugal pump, driven by an induction motor, is proposed in this paper. The fault detection algorithm is derived using a combination of structural analysis, observer design and Analytical Redundancy Relation (ARR) design. Structural considerations on the system is used to divide it into two cascaded connected subsystems, giving an example on using a general structural approach to divide a complex problem into a set of less complex and solvable problems. The variables connecting the two subsystems are observed using an adaptive observer derived on the basis of the equations describing the first subsystem. No faults are expected to affect the first subsystem, therefore only the second subsystem is considered in the design of the fault detection algorithm. The fault detection algorithm is based on an ARR, which is designed using structural analysis and the Groebner basis algorithm. The polynomial form of the obtained ARR is utilized to achieve robustness w.r.t. parameter variations by using a set-valued approach. The applicability of the algorithm is illustrated by applying it to an industrial benchmark. The benchmark tests have shown that the algorithm is capable of detecting four different faults in the mechanical and hydraulic parts of the pump.