# Development and Assist-As-Needed Control of an End-Effector Upper Limb Rehabilitation Robot
## 4 Experiments and Results
### Experiment Setup  
The experimental testing is based on the EULRR, as described in the robot design in Section 2, which is an end-effector upper limb rehabilitation robot that can assist the patient's arm in achieving spatial rehabilitation training. The manipulator in EULRR is a lightweight robot that can realize real-time external torque control [39] through the FRI (fast research interface) software package [40]. The robot control law can be written as follow:  
\[\tau_{Cmd}=k_{j}(q_{FRI}-q_{mse})+D(d_{j})+\tau_{FRI}+f_{dynamics}(q,\dot{q}, \bar{q}) \tag{23}\]  
where \(k_{j}\) is the stiffness matrix in the joint space of the robot, \(d_{j}\) is the damping term, and \(f_{dynamics}(q,\dot{q},\bar{q})\) is the robot dynamic model. Besides, \(\tau_{FRI}\) is the expected torque, which is sent in real-time through FRI. During the testing, \(\tau_{FRI}\) is the equivalent torque of the robot's assistance force in joint space, calculated by Equation (22). During the testing, the male subject sat inside the EULRR, as shown in the right of Figure 8. The subject's hand was connected to the end of the robot through the handle. The test was performed on a healthy 25-year-old subject who was 180 cm tall and weighed 65 kg, assuming that the subject's right upper arm was the affected side. The manipulator on the same side of the subject's affected side was used during the training testing, and the manipulator on the other side moved to the home position that is defined as a safe position, as shown in the right of Figure 8. Similarly, when the other side manipulator was used, the opposite manipulator was also moved to the home position. In order to verify the effectiveness of the AAN controller based on the EULRR, the subject was required to complete three tasks, respectively: (a) move the handle of the manipulator freely without any robot assistance under the guidance of the visual scene; (b) testing with the robot assistance without the virtual channel under the guidance of the visual scene; (c) testing with the AAN controller under the guidance of the visual scene. The Unity scene (shown in Figure 9) was used to provide visual guidance and displayed on an extra screen in front of the subject, as shown in the right of Figure 8 (the extra screen is not shown in the picture), in which the white ball in the scene represented the position of the hand of the subject. A circle trajectory was selected during the testing task, as the yellow curve, shown in Figure 9. The three testing tasks were carried out from the initial position, and the moving direction was counterclockwise with the same number of turns. To reduce the impact of motion velocity on the AAN controller, the subject was required to move slowly on the predetermined trajectory, and the robot's end-effector pose was fixed during the testing, as shown in Figure 8.  
Figure 8: The EULRR prototype and subject testing. (**a**) the EULRR prototype; (**b**) the testing of the subject. For the testing task 1, the subject could move the robot to carry out arbitrary spatial movement without any robot assistance, the robot was in a fully backward driving state, and the subject had fully spatial freedom. For the testing task 2, the stiffness \(K\) was set according to the Equation (11) as \(K=\left[300,300,300\right]^{T}\). The robot would provide assistance force if the subject's arm deviated from the predetermined trajectory (the yellow curve). In the first 50 s, the subject was asked to perform a normal testing movement. From the 50 th second, the subject was asked to deliberately deviate from the predetermined trajectory, that is, to generate a large deviation to fight against the robot. For the testing task 3, the upper and lower limits of the stiffness gradient field were set as \(K_{0}=\left[10,10,10\right]^{T}\) and \(K_{1}=\left[300,300,300\right]^{T}\) according to the Equation (21), and the radius of the virtual channel was set as \(R_{W}=25\) mm.