Service robots are becoming able to perform a variety of tasks and they are currently used for many different applications. For this reason people with different backgrounds and also without robotic experience need to interact with them. Enabling the user to control the motion of the robot end-effector, it is important to provide an easy and intuitive interface. In this work we propose an intuitive method for the control of a robot TCP position and orientation. This is done taking into account the robot kinematics in order to avoid dangerous configuration and defining rotational constraints. The user is enabled to interact with the robot and control its end-effector using a set of objects tracked by a camera system. The autonomy level of the robot changes depending on the different phases of the interaction for a better efficiency. An intuitive GUI has been developed to ease the interaction and help the user to achieve a better precision in the control. This is possible also through the scaling of the tracked motion, which is represented as visual feedback. We tested the system through multiple experiments that took into account how people with no experience interact with the robot and the precision of the method.