Flexible manufacturing cells (FMCs) are well established as a means of improving manufacturing e ciency in many batch production industries. They consist of an integrated group of computer numerically controlled (CNC) machine tools, programmable logic controller (PLC) based work/tool handling equipment and a control system to synchronize their operation. The safe and reliable operation of FMCs is clearly essential for their e cient use. However, FMCs are complex systems with elements that operate concurrently and interact at irregular times, depending upon the components to be produced. This inherent complexity demands intricate and sophisticated control systems which require development methodologies that are both comprehensive and rigorous. In this paper the authors introduce a methodology (PN Û PLC) which uses Petri nets for producing correct programmable logic controller (PLC) programs directly from the speci® cations. The methodology is speci® cally contrasted with the bene® ts, and problems, encountered in using tools such as`ladder diagrams' (LDs) and sequential function charts' (SFCs) for designing logical control systems.PN Û PLC has advantages over ladder logic in clarity, which allows the program to be checked, maintained and updated reliably. Furthermore, the Petri net graph is a one-to-one equivalent of a ladder logic diagram, and thus either representation may be algorithmically translated to the other without loss of information. Finally, the rules for creating Petri net graphs, and subsequently translating them, are both simple and robust in use.