# Human-Robot Cooperative Control Based on Virtual Fixture in Robot-Assisted Endoscopic Sinus Surgery
## 3 Human-Robot Cooperative Control Based on Virtual Fixture
### Admittance Mapping Design Based on Piecewise Function  
After obtaining the interaction force between the surgeon and robot end-effector, the admittance control method is used to map the interaction force to the velocity of the endoscope, thereby establishing the spatial admittance relationship between the surgeon's drag force and the velocity of the robot:  
\[V_{F}=\left[\begin{array}{c}v\\ w\end{array}\right]=K\overline{F} \tag{19}\]  
Figure 7: Schematic diagram of human–robot cooperative control based on VF.  
\[v=[v_{x},v_{y},v_{z}]^{T} \tag{20}\]  
\[w=[w_{x},w_{y},w_{z}]^{T} \tag{21}\]  
Since the drag force contains spatial force and moment, the admittance coefficient, \(K\), is a square matrix of \(6\times 6\). For admittance control, the design of admittance mapping is key. In general, there are two types of admittance mappings: Linear admittance mapping and nonlinear admittance mapping. Linear admittance mapping is simple to calculate, but it is easy to produce a sudden change in velocity at the boundary point, affecting the drag performance and resulting in unstable robot motion. Nonlinear admittance mapping can easily adjust the admittance coefficient at different regions, but the calculation is relatively complicated. Considering the motion stability requirements of medical robots and computational efficiency, a mixed admittance mapping based on the piecewise function is adopted in this paper. The mapping combines the advantages of linear admittance mapping and nonlinear admittance mapping, and smooths the inflection point by the cubic polynomial function. The detailed mapping function is shown below:  
\[V(F)=\left\{\begin{array}{ll}-V_{\max}&,F<-k_{4}\\ -V_{\max}+C(F+k_{4})^{3}&,-k_{4}\leq F<-k_{3}\\ 3C(k_{2}-k_{1})^{2}(F+k_{2})-C(k_{2}-k_{1})^{3}&,-k_{3}\leq F<-k_{2}\\ C(F+k_{1})^{3}&,-k_{2}\leq F<-k_{1}\\ 0&,-k_{1}\leq F\leq k_{1}\\ C(F-k_{1})^{3}&,k_{1}<F\leq k_{2}\\ 3C(k_{2}-k_{1})^{2}(F-k_{2})+C(k_{2}-k_{1})^{3}&,k_{2}<F\leq k_{3}\\ V_{\max}+C(F-k_{4})^{3}&,k_{3}<F\leq k_{4}\\ V_{\max}&,F>k_{4}\end{array}\right. \tag{22}\]  
Figure 8 shows the admittance mapping relationship based on the piecewise function, and the coefficients, \(k_{1},k_{2},k_{3},k_{4}\), are positive. For the drag force at the end of the robot, when \(-k_{1}\leq F\leq k_{1}\), the drag force is in the stopping zone. The setting of the stopping zone can effectively prevent the robot from moving under the action of a small input force (such as mechanical vibration and sensor zero drift), so that the robot can smoothly maintain the original posture after the drag of the robot is stopped. When \(k_{1}<F\leq k_{2}\) or \(-k_{2}\leq F<-k_{1}\), the drag force is in the transition zone from the stopping zone to the working zone. The transition zone allows the robot motion admittance mapping to smoothly change from the stopping zone to the working zone. When \(k_{2}<F\leq k_{3}\) or \(-k_{3}<F\leq-k_{2}\), the drag force is in the main working zone. The sensitivity of the robot's dragging motion can be dynamically adjusted by adjusting the slope of the zone. When \(k_{3}<F\leq k_{4}\) or \(-k_{4}<F\leq-k_{3}\), the drag force is in the transition zone from the working zone to the saturation zone. The transition zone allows the robot motion admittance mapping to smoothly change from the working zone to the saturation zone. When \(F>k_{4}\) or \(F<-k_{4}\), the drag force is in the saturation zone. In this zone, even if the drag force continues to increase, the response velocity of the robot remains unchanged. The saturation zone is used to limit the maximum drag response velocity of the robot, preventing the robot from moving too fast and losing control.