Content area
Full Text
Introduction
Robots have been widely used to assist surgeons in moving tools with higher dexterity and control through teleoperation, for example, the Da Vinci system (Intuitive Surgical, USA). Recently, collaborative robotic assistants were used in specific surgical procedures that allow surgeons to stay close to the patient and hand-guide robotically held tools, for example, in breast biopsy using ultrasound scanning1, dental assistance2, middle ear surgery3, and needle insertion4. Similar collaborative robots were also used in industrial applications beyond medicine5, such as handling6, welding7, assembling8, and automotive manufacturing9.
Most of such collaborative robots were kinematically redundant for the task. They had more degrees of freedom (DoF) than needed to position the tool (main task). Null space motion, i.e., robot motion only in the additional DoF (see Fig. 1), was used to fulfill additional tasks such as avoiding static obstacles10 or medical personnel in crowded operating rooms11. However, control schemes for redundant robots that fulfill both main and additional tasks with an intuitive and predictable robot motion for human users have remained an open challenge.
Fig. 1 [Images not available. See PDF.]
A redundant robot, hand-guided by a surgeon, could take any one of the infinite shapes (configurations) while the tool (endoscope mockup) was in the same pose.
Learned task space control to intuitively hand-guide the tool (in task space) with one hand and shape the robot such that the lamps (obstacles) are not disturbed was the main focus of this work.
Redundant robots were controlled using established techniques12, 13–14 to accomplish multiple tasks in a prioritized hierarchy15 using a generalized inverse and null space projection of the robot Jacobian matrix. These methods were used to control the robot either in the force or motion (velocity) domains. All these methods required defined input to calculate robot joint motion in the null space that was superimposed on the joint motion needed for the primary task (tool motion). Depending on the application, researchers took the additional input using either predefined objective functions or additional user input.
Pre-defined objective functions were used to minimize robot joint motion16,17, avoid joint limits18, avoid known static...