Currently available robotic manipulation aids operate in direct or supervisory control modes. In a supervisory control mode, the environment must either be well-defined or it must be possible to obtain information about the environment autonomously. In a direct control mode the operator is responsible for all knowledge and perception of the environment, as well as all motion of the manipulator. Manipulation aids designed for use in undefined environments generally operate under direct control. Such aids have largely been rejected by potential operators due to the difficulties involved in executing a complex motion in a direct control mode [1].
In this research, strategies in sensor-based shared control which provide an intermediate level of autonomy to those of direct and supervisory control strategies have been identified. This approach is desirable both to allow task execution in undefined environments by taking advantage of the cognitive and perceptive skills of the operator, and to give the operator the sense that the manipulator can be used as an extension of him or herself. A behaviour-based architecture was used to implement the shared control strategy [2]. Sensor-based algorithms are used to modify the manipulator trajectory based on the current state of the environment, and the task being executed. The algorithms are highly configurable to the hardware system being implemented, and/or to the tasks which will be undertaken. The integration of the shared control algorithms with the Cambridge University Robot Language (CURL) [3] and their subsequent evaluation is discussed in the following sections.
CURL is robot-independent and operates in the Windows environment. Kinematics and communication sub-systems for specific robotic devices are implemented using a CURL Device Driver (CDD) which is linked to CURL as a Dynamic Link Library (DLL). When using the CURL direct control mode, the operator has continuous control of a single axis of the manipulation system using any Windows compatible input device. Because the goal of a motion is not explicitly known, when using the shared control strategy it is necessary for the operator to define interactively whether a transport or grasping motion is being undertaken. This area has much room for development, particularly with regards to which axes are controlled and how choices are presented in CURL.
Figure 1 depicts the way in which the shared control algorithms are integrated with the standard CURL direct control mode. The operator chooses the movement type (transport or grasping) and the movement axis. The TMF is then initialised with the appropriate task-oriented parameter set. Robot-specific kinematics and coordinate transformations to the TMF sensor-coordinate frame are calculated in the CDD. The desired movement trajectory is then modified by the TMF using the sensor-based shared control algorithms, and control is returned to the CDD. The modified trajectory is transformed to the desired robot co-ordinate frame, and the robot velocity is updated. The operator-specified speed is then updated in CURL, and this cycle continues until the operator chooses to stop the motion by discontinuing the input. Motion can subsequently be continued on the same axis, or a new axis and/or movement type can be selected.
The hardware set-up used for the system implementation consisted of an RTX robot with an IMP8 transputer-based control board, eight infrared sensors placed on the standard RTX gripper to provide object proximity information, and a 386DX PC to run the robot control software. An analogue joystick was used as a pointing device for computer interfacing purposes and to control the velocity of the robot along a single axis, as specified in the CURL direct control window.
In the CURL direct control window, nine possible movement axes were provided. These were: Cartesian motion on the world frame x, y and z axes; Cartesian motion on the tool frame x, y, and z axes; pitch; gripper width and yaw. Using the analogue joystick, the operator specified the speed of the manipulator along the chosen movement axis. In the shared control mode, the primary trajectory specified by the operator using the CURL direct control modes was modified by the sensor-based trajectory modification algorithms.
In addition to the direct control modes, a number of CURL procedures which caused the robot gripper to point from a home position to the approximate location of objects in the environment were provided.
An evaluation task which was relevant to the daily lives of the operators was desired in order to assess the performance of the system in a realistic environment. In addition, it was felt that the subjects would be better able to plan the actions of the manipulator when performing a task which was familiar to them. According to surveys of user task priorities [4], one task which operators would consider performing with a robotic manipulation aid is the preparation of a hot drink. Thus, the task of making a cup of tea was chosen for these evaluations. Due to practical considerations, real water and teabags were not used in the task; a number of wooden blocks were used as substitute objects.
The results of these trials indicate that the performance of this task was improved through use of the sensor-based trajectory modification algorithms. On average, the time taken to complete the task was reduced, as were the total number of modes used and the number of manipulation modes used. The time spent per manipulation mode was increased, indicating that fewer fine motions were used, and the time spent in manipulation modes was decreased.
In the evaluation task, the shared control algorithms were perceived by the operators to be most useful in aligning objects in the robot gripper prior to grasping. The transport portions of the task (e.g. moving the water to the cup) were not significantly altered by the use of the shared control algorithms because the environment used for the trials was static, and very little object avoidance was necessary.
McEachern WA, Dallaway JL (1996) Sensor-based shared control of a rehabilitation manipulation system. Proceedings of the RESNA 96 Annual Conference. 342-344.