The paper presents a universal architectural pattern and an associated specification method that can be applied in the design of robot control systems. The approach describes the system in terms of embodied agents and proposes a multi-step decomposition enabling precise definition of their inner structure and operation. An embodied agent is decomposed into effectors, receptors, both real and virtual, and a control subsystem. Those entities communicate through communication buffers. The activities of those entities are governed by FSMs that invoke behaviours formulated in terms of transition functions taking as arguments the contents of input buffers and producing the values inserted into output buffers. The method is exemplified by applying it to the design of a control system of a robot executing one of the most important tasks for a service robot, i.e. picking up, by a position-force controlled robot, an object located using an RGB-D image acquired from a Kinect. Moreover in order to substantiate the universality of the presented approach we present how classical, known from the literature, robotic architectures can be expressed as systems composed of one or more embodied agents.