This paper focuses on the problem of deadlocks in automated flexible manufacturing systems (FMS) where deadlocks are caused by unmarked siphons in their Petri net models. A deadlock prevention policy is proposed for a subclass of Petri nets, S3PMR that can well model a large class of FMS. We distinguish siphons in such a net model by elementary and dependent ones. For each elementary siphon, a monitor is added to the plant model such that it is invariant- controlled. The monitor addition way guarantees that no emptiable control-induced siphon in the resultant net is generated due to the addition of monitors. This novel deadlock prevention policy can usually lead to a more permissive supervisor by adding a relatively much smaller number of monitors and arcs than the existing methods for the design of liveness-enforcing Petri net supervisors. Experimental study validates the result.