**4. Robotic Deburring Process Parameter Control Method based on Fuzzy Control**

A robotic deburring process parameter control method of the five-DOF robot manipulator for robotic deburring is proposed in this section. This proposed method is adopted in deburring process parameter adjustment control for the stable robotic deburring with a constant cutting speed and a constant cutting force via a designed fuzzy controller.

According to metal cutting principle, the cutting parameters include cutting speed, cutting feed and cutting depth. Taking carbide turning tools for carbon steel turning as an example, related researches showed that the biggest impact on tools is the cutting speed, followed by the cutting feed, and lastly the cutting depth [46–48]. More generally, the rough machining should select cutting parameters for the maximum productivity. Thus, a larger cutting depth (or cutting width) should be selected first, and after the majority of the machining allowance is removed, a suitable cutting feed (or a cutting thickness) and a cutting speed are selected in turn by the cutting condition. Finish machining generally uses a small cutting depth and cutting feed, and then a higher cutting speed to improve the machining accuracy and reduce the surface roughness.

In this article, robotic deburring process parameters—robotic spindle speed, robotic feed and robotic layered deburring thickness—are determined by cutting parameters—cutting speed, cutting feed and cutting depth—respectively. Among them, the robotic layered deburring thickness (i.e., cutting depth) planning and the robotic deburring tool location (position and orientation) planning are presented in the proposed robotic deburring tool path planning method in Section 3. In this section, issues to consider here pertain, mostly, to the adjustment control for robot manipulator deburring process parameters, that is robotic spindle speed and robotic feed, through a proposed robotic deburring process parameter control method.

Some classical control methods, such as proportional–integral–derivative (PID) control, which have been studied and practiced by broad researches, are very effective solutions for uncomplicated linear time-invariant systems [49–51]. In addition, modern control theory, such as sliding mode control, based on state variables has also been widely used to solve linear or nonlinear, and time-invariant or time-varying multi-input multi-output (MIMO) systems [52–54]. Although this kind of classical and modern control theory can overcome some internal disturbances of the control system, nevertheless, it is neither sufficient to ensure the stability of robotic deburring process in a robust enough way in real time, nor able to cope with environmental uncertainties. One goal of this article is to find a way of controlling the robotic deburring contact forces while maintaining constant cutting speed and cutting force of the robot manipulator presented earlier. In particular, this is critical when the interaction between the robot manipulator and deburring workpiece environment is of concern.

Because the fuzzy control with the ontological basis of fuzzy logic and fuzzy reasoning has the advantage of requiring neither the knowledge of the model structure nor the model parameters, it is strongly adaptive and highly robust to nonlinearity and variations of process parameters. Also, it can give fast response, effective noise suppression, and a better control effects when the model structure changes greatly. Therefore, related researches and applications based on fuzzy control have been favored by many scholars [55–58].

In this article, the process of the adjustment control for robot manipulator deburring process parameters (i.e., robotic spindle speed and robotic feed) has the characteristics of nonlinearity, noise and tight coupling between control loops, which cannot be solved sufficiently by classical and modern control methods such as PID-type controllers. In this section, a fuzzy controller with the above advantages of the fuzzy control is designed for a proposed robotic deburring process parameter control method to systematically accommodate robotic deburring.

The control objectives of the designed fuzzy control system in this section are the robot manipulator deburring process parameters, i.e., robotic spindle speed and robotic feed. The robotic spindle speed and the robotic spindle load of the robot manipulator deburring system can be controlled by adjusting the control voltage of the robotic spindle and the robotic feed, in order to realize the robotic deburring with a constant cutting speed and a constant cutting force. Hence, the designed fuzzy controller in this section is a two-input and two-output control system (shown in Figure 7). Here, input variables are robotic spindle speed and robotic spindle load, and output variables are control voltage of the robotic spindle and robotic feed.

**Figure 7.** Schematic diagram for deburring process parameter control.

In this article, a parallel structure adopted is used by the fuzzy controller to independently control the control voltage of the robotic spindle and the robotic feed. There are two parts of representing fuzzy variables in the designed fuzzy controller. First, error of robotic spindle speed *E*<sup>1</sup> and change in error of robotic spindle speed *EC*1, and error of robotic spindle load *E*<sup>2</sup> and change in error of robotic spindle load *EC*2, are represented as input fuzzy variables for controlling the control voltage of the robotic spindle and the robot feed, respectively. Second, change in control voltage of the robotic spindle *u*<sup>1</sup> and change in robotic feed *u*<sup>2</sup> are represented as output fuzzy variables.

To achieve discrete membership functions, a discrete set with thirteen elements and a discrete set with seven elements are defined in the designed fuzzy controller for *E*1, *EC*1, and *u*1, and for *E*2, *EC*2, and *u*2, respectively, and corresponding sets are *U*<sup>1</sup> = <sup>−</sup><sup>6</sup> <sup>−</sup><sup>5</sup> ··· −1 0 <sup>+</sup><sup>1</sup> <sup>+</sup><sup>2</sup> ··· <sup>6</sup> and *U*<sup>2</sup> = <sup>−</sup><sup>3</sup> <sup>−</sup><sup>2</sup> <sup>−</sup>1 0 <sup>+</sup><sup>1</sup> <sup>+</sup><sup>2</sup> <sup>+</sup><sup>3</sup> , respectively. Assume that variation ranges of *E*1, *EC*1, *E*<sup>2</sup> and *EC*<sup>2</sup> are [−*Se*, *Se*], [−*Sec*, *Sec*], [−*Le*, *Le*] and [−*Lec*, *Lec*], respectively. Combining these variation ranges and corresponding discrete sets, several quantizers corresponding to *E*1, *EC*1, *E*<sup>2</sup> and *EC*<sup>2</sup> are defined respectively as follows:

$$\mathbb{K}\_{\mathbb{S}\varepsilon} = \mathfrak{G}/\mathbb{S}\_{\mathfrak{e}\prime} \tag{3}$$

$$K\_{\rm Sec} = 6 / S\_{\rm ce} \tag{4}$$

$$K\_{\mathbb{Z}\mathfrak{e}} = \mathfrak{Z}/L\_{\mathfrak{e}}.\tag{5}$$

$$K\_{\rm Lcc} = 3/L\_{\rm cc} \,\tag{6}$$

Here, each quantizer maps an inbound measurement within the variation range to a nearest integer element in the corresponding discrete set.

Similarly, scaling factors for the output variables (i.e., control variables) of *u*<sup>1</sup> and *u*2, where corresponding variation ranges are [−*Vu*, *Vu*] and [−*Fu*, *Fu*], respectively, are defined as follows:

$$K\_{Vu} = V\_u / \mathfrak{G}\_\prime \tag{7}$$

$$K\mathbb{F}\_{\mathbb{F}} = F\_{\mathbb{u}}/\mathfrak{Z}.\tag{8}$$

Assuming exact values obtained by the fuzzy reasoning for change in control voltage of the robotic spindle *u*<sup>1</sup> and change in robotic feed *u*<sup>2</sup> are *u*1*<sup>i</sup>* and *u*2*i*, respectively, then corresponding exact values of variation ranges *Vui* and *Fui* can be obtained by using above defined scaling factors. The detailed representations are given by

$$V\_{u\bar{\imath}} = \mathbb{K}\_{Vu} \cdot u\_{1\bar{\imath}} \tag{9}$$

$$F\_{\rm ui} = K\mathbb{z}\_{\rm li} \cdot u\_{2\rm i} \,\tag{10}$$

The fuzzy rule with automatic adjusting factors in the whole set using analytical expressions for fuzzy controller are usually designed as follows. Suppose that sets for error *E*, change in error *EC* and control variable *u* select as *E* = *EC* = *u* = {−*N*, ··· ,−2,−1, 0, 1, 2, ··· , *N*}, the fuzzy rule can be expressed as

$$\begin{cases} \boldsymbol{u} = -\langle \boldsymbol{\alpha} \boldsymbol{E} + (1 - \boldsymbol{\alpha}) \boldsymbol{E} \boldsymbol{\zeta} \rangle \\ \boldsymbol{a} = \frac{1}{N} (\boldsymbol{\alpha}\_{\boldsymbol{s}} - \boldsymbol{\alpha}\_{0}) |\boldsymbol{E}| + \boldsymbol{a}\_{0} \text{ }^{\prime} \end{cases} \tag{11}$$

where 0 ≤ α<sup>0</sup> ≤ α*<sup>s</sup>* ≤ 1 and adjustment factor α ∈ [α0, α*s*], and symbolic form • represents the rounding calculation. Thus, the designed fuzzy rule can be automatically adjusted on the basis of the weight and magnitude of the error.

In this article, in order to optimize the designed fuzzy controller that provides good both static and dynamic stability properties, and robust performance, fuzzy rules are designed with automatic adjusting factors in the whole set, described by analytical expressions. Thus, in the whole set, weights of errors and changes in errors, which represent the effect on control results, can be automatically adjusted by errors. The detailed fuzzy rules for robotic spindle speed and robotic spindle load are designed respectively as follows:

$$\begin{cases} u\_1 = -\langle \alpha\_1 E\_1 + (1 - \alpha\_1) E C\_1 \rangle \\\ a\_1 = \frac{1}{6} (a\_{s1} - a\_{01}) |E\_1| + a\_{01} \end{cases} \tag{12}$$

where 0 ≤ α<sup>01</sup> ≤ α*s*<sup>1</sup> ≤ 1 and adjustment factor α<sup>1</sup> ∈ [α01, α*s*1], and symbolic form • represents the rounding calculation; and

$$\begin{cases} u\_2 = -\{\alpha\_2 E\_2 + (1 - \alpha\_2) E C\_2\} \\\ a\_2 = \frac{1}{3} (a\_{s2} - a\_{02}) |E\_2| + a\_{02} \end{cases} \tag{13}$$

where 0 ≤ α<sup>02</sup> ≤ α*s*<sup>2</sup> ≤ 1 and adjustment factor α<sup>2</sup> ∈ [α02, α*s*2], and • represents the same mentioned above.

It can be seen from the above that fuzzy rules are characterized naturally in that the adjustment factors α<sup>1</sup> and α<sup>2</sup> can be updated online and adjusted by the absolute value of the error |*E*1| and |*E*2|, and there are six and three possible values, respectively, therefore, weights of errors and changes in errors can be automatically adjusted online by errors.

The automatic adjustment process of the above designed fuzzy rules conforms to the control characteristics of the human decision-making process, and these fuzzy rules described by the analytical forms exhibit their several own advantages over other representations in the optimization property, convenience, simplicity, and implementation in real time for fuzzy control algorithms.
