# Enhancing Telexistence Control Through Assistive Manipulation and Haptic Feedback
## 4 Augmentation Through Motion Blending
### Augmenting user robot control based on the different assistance levels  
Our motion blending algorithm is designed to compute an inverse kinematic (IK) solution that simultaneously addresses two objectives: tracking the user's hand position and reaching the detected location of a cube. This is achieved by assigning specific weights to each objective, influencing how the IK solution is formulated. When a higher weight is allocated to the cube's position, the IK solution prioritizes reaching the cube, while a greater weight assigned to the user's arm position causes the IK solution to align more closely with the user's arm movements. The level of assistance in the system is determined by how the weights are distributed between the cube's position and the user's arm position within the IK solver. Assigning higher weights to the cube's position increases assistance, requiring less movement from the user's hand. However, greater assistance also makes the IK solution more autonomous, reducing the user's direct control over the robot's movements. Our research involved testing five distinct levels of assistance, each corresponding to specific motion blending configurations within the IK solver. Figure 10 illustrates how these levels affect the robot's movements. At higher levels of assistance, the robot's motion increasingly aligns with the target object, represented by the black cube. This alignment helps facilitate the user's task by moving the robot arm closer to the target. The IK solver's weight distribution was adjusted to achieve these assistance levels. At the first level, there was no assistance, with the weight for the user's tracked arm position set to 100 and the cube's position at 0. The remaining four levels of assistance were determined experimentally using the following Equation (1):  
\[cubeWeight=factor*WEIGHT_{CONST}+difference* booster \tag{1}\]  
In our research, \(WEIGHT_{CONST}\) was experimentally fixed at 100, with adjustment factors set to 0.5, 1, 1.5, or 2 based on the required assistance level. These factors were multiplied by \(WEIGHT_{CONST}\) to determine the minimum weight for each level, ranging from 50 to 200. To incrementally increase the weight on the target object as the robotic arm  
Figure 10: This figure shows the relationship between assistance levels and robotic motion. Higher assistance levels result in optimized trajectories. The higher the assistance, the closer the robot will be to the target object (cube). At each assistance level, the image on the left shows the IK solution for the robot’s motion blending approach. approached it, we calculated the \"difference\" between the robotic tip's simulated position and that of the target object in Unity3D. This difference, representing the inverted distance, grew smaller as the arm neared the target. The booster value, dictating the maximum increase in weight as the target was approached, was set at 20, 40, 60, or 80, depending on the level of assistance required. Multiplying the booster value by the difference enabled a gradual increase in weight as the robot advanced toward the target. These parameters were experimentally optimized for the best performance in our system. The calculations incorporated two distinct weights: one for the user's arm position and another for the target object's position. We blended the inverse kinematic (IK) solutions for both positions by assigning these weights. We produced a final IK solution that positioned the robotic arm proportionally between the user's arm and the target object. The weight assigned to the target object guided the robot towards it, while the weight for the user's arm position was determined by subtracting the target object's weight from a maximum of 400. This blended weighting system allowed the robot's IK to generate a solution that reflected the combined influence of both positions. This approach was applied to deliver the appropriate level of assistance during the telemanipulation tasks.