## 4 Trajectory Planning in Operation Space
### Trajectory Construction by Means of Fifth-Order NURBS Curve  
The trajectory of an industrial robot is defined based on the sequential motion of a series of key points, which can be described using a polynomial function. In the present study, the NURBS curve is used to describe the trajectory of the end effector in the operation space. The NURBS curve can be obtained from the following expression:  
\[p(u)=\sum_{i=0}^{n}d_{i}N_{i,k}(u) \tag{6}\]  
where \(d_{i}\) indicates the control vertex and \(N_{i,k}\) is the basis function of the \(k\)-times NURBS. To describe the \(k\)-times NURBS curve, the domain node vector \(U\) should be defined in the form below:  
\[U=[u_{0},u_{1},\cdots,u_{k},u_{k+1},\cdots,u_{n},u_{n+1},\cdots,u_{n+k+1}] \tag{7}\]  
where \(n\) is the number of key points. Adopting the cumulative chord length method, the time vector \(t\) can be normalized to the knot vector \(u\). This process can be mathematically expressed as follows:  
\[\left\{\begin{array}{l}u_{0}=u_{1}=\cdots=u_{k}=0\\ u_{n}=u_{n+1}=\cdots=u_{n+k+1}=1\\ u_{i}=u_{i-1}+\frac{[t_{i-k}-t_{i-k}-1]}{\sum_{i=0}^{n}[t_{i+1}-t_{j}]},i=k+1,\cdots,n-1\end{array}\right. \tag{8}\]  
Figure 2: Configuration of the Delta parallel robot and motion trajectory in the operating space. (**a**) Schematic configuration of the parallel robot and its motion trajectory. (**b**) NURBS curve in the operating space.  
The \(k\)-times NURBS basis functions \(N_{i,k}\) are obtained using the de Boor-Cox recurrence expression:  
\[\left\{\begin{array}{l}N_{i,0}(u)=\left\{\begin{array}{ll}1&u_{i}<u<u_{i+1}\\ 0&\text{otherwise}\end{array}\right.\\ \\ N_{i,k}(u)=\frac{u-u_{i}}{u_{i+1}-u_{i}}N_{i,k-1}(u)+\frac{u_{i+k+1}-u}{u_{i+k+1 }-u_{i+1}}N_{i+1,k-1}(u)\\ \text{make }\frac{0}{0}=0\end{array}\right. \tag{9}\]  
The \(k\)-times NURBS curve equation of \(n+1\) interpolated key points \(p_{i}\) is substituted into the nodes in \([u_{k},u_{n+k}]\) to obtain \(n+1\) equations that meet the interpolation conditions.  
\[\begin{array}{l}p(u_{i+k})=\sum\limits_{j=i}^{i+k}d_{j}N_{j,k}(u_{i+k})=p_{ i},\quad u_{i+k}\in[u_{k},u_{n+k}]\\ \\ i=0,1,\cdots,n\end{array} \tag{10}\]  
Then, the \(r\)-order derivative of \(p(u_{i+k})\) can be obtained as follows:  
\[\begin{array}{l}p^{r}(u)=\sum\limits_{m=i-k+r}^{i}d_{j}^{r}N_{j,k-r}(u),\quad u \in[u_{i},u_{i+1}]\\ \\ m=i-k,i-k+1,\cdots,i\end{array} \tag{11}\]  
\[d_{j}^{s}=\left\{\begin{array}{rl}d_{j}&s=0\\ (k+1-s)\frac{d_{j-1}^{s}-d_{j-1}^{s}}{u_{j+k-s}-u_{j}},s=1,2,\cdots,r\end{array}\right. \tag{12}\]  
The control vertices are deducted, and the equation is shown as  
\[A_{N}d=p \tag{13}\]  
where \(A_{N}\) is the coefficient matrix and \(p\) is the motion parameter matrix.  
For \(k\)-times NURBS curves, \(n+k\) boundary conditions require \(n+k\) control points. However, only \(n+1\) points satisfy equations; the other \(k-1\) points satisfy the interpolation condition and can be obtained by tangent vector boundary conditions. Since the repetition of both end nodes is \(k+1\), the first and last control vertices of the \(k\)-times B-sample curves can be used as data points of the constraint conditions. Accordingly, the boundary conditions can be obtained as follows:  
\[\left\{\begin{array}{l}p_{0}^{\prime}=p^{\prime}(u_{k})=d_{1}^{1}=k\frac{d _{1}-d_{0}}{u_{k+1}-u_{1}}\\ p_{n}^{\prime}=p^{\prime}(u_{n+k})=d_{n+k-1}^{1}=k\frac{d_{n+k-1}-d_{n+k-2}}{d _{n+2k-1}-d_{n+k-1}}\\ p_{0}^{\prime\prime}=p^{\prime\prime}(u_{k})=d_{2}^{2}\\ p_{n}^{\prime\prime}=p^{\prime\prime}(u_{n+k})=d_{n+k+2}^{2}\\ P_{0}^{\prime\prime\prime}=p^{\prime\prime\prime}(u_{n})=d_{3}^{3}\\ P_{n}^{\prime\prime\prime}=p^{\prime\prime\prime}(u_{n+k})=d_{n+k-1}^{3}\end{array}\right. \tag{14}\]