For position servo control of a nonlinear pneumatic manipulator, a fuzzy PID controller algorithm is proposed, employing interval-by-interval and segmental adjustments of the PID parameters using a fuzzy method. Experimental results show that this control method effectively prevents overshoot, improves response speed, significantly enhances the dynamic and static performance of the system, and exhibits strong robustness to changes in air source pressure and load.
1 Introduction
Pneumatic systems have been widely used in various fields in recent years due to their advantages such as low cost, safety, reliability, and zero pollution. However, the high compressibility of air, the working medium, leads to strong nonlinearity in pneumatic position servo systems, making it difficult to achieve ideal control results using conventional control methods. While conventional PID control is simple and reliable, fuzzy control offers a solution to the PID parameter tuning problem. This paper, considering the characteristics of a cylinder, uses a fuzzy inference-based PID parameter tuning control algorithm for its position servo control. Experimental results show that this control algorithm achieves excellent control performance.
2 System Introduction
The four-degree-of-freedom rotary articulated pneumatic manipulator uses two rack and pinion cylinders and two linear cylinders as drive elements, and employs an electro-pneumatic proportional/servo valve as the control device. The large and small arms are driven by CM2B40-100 and CMZQC32-75F low-friction linear cylinders, respectively. The structural diagram of the manipulator is shown in Figure 1.
The control loop includes several parts such as sensors, A/D converters, D/A converters, and controllers. In each sampling control cycle, the position sensor acquires the real-time position signal, which is converted from an A/D signal and input to the computer. This signal is then compared with the target value, and a control algorithm is applied to calculate the control signal. The signal is then output to the power amplifier circuit via a D/A converter to drive the interface circuit board, controlling the voltage signals of the two proportional pressure valves. This changes the pressure difference between the two chambers of the actuator cylinder, driving the actuator cylinder to move towards the target position.
The system controller is executed by an industrial computer. It acquires and converts data to obtain corresponding signals, processes them through a control algorithm, and outputs control signals to provide effective control quantities to multiple actuators, ultimately achieving positioning control of the robot's end effector. Figure 2 shows the overall electrical circuit structure diagram of the pneumatic robot.
3. Design of Fuzzy PID Controller
The classic linear PID control algorithm is widely used because it does not require a precise mathematical model of the controlled object, the control parameters can be tuned using engineering methods, and the algorithm is simple, has strong real-time performance, and is easy to implement. However, it also has the following drawbacks:
(1) Once the control parameters are determined, they cannot be adjusted online. When encountering strong disturbances, the recovery time of the steady state is long, which affects the dynamic and static performance of the system.
(2) There is an integral saturation phenomenon, which causes overshoot to increase and steady-state recovery time to be prolonged when starting or making large dynamic adjustments.
Figure 1. Structure diagram of the manipulator. Figure 2. Overall electrical circuit structure of the pneumatic manipulator. Figure 3. Block diagram of the fuzzy PID controller system. Table 1. Adjustment rules for KP , KI , and KD.This paper addresses the shortcomings of the classic PID controller by combining fuzzy control with conventional PID control. Utilizing the concept of fuzzy inference, the PID parameters KP , KI , and KD are tuned online based on different values of E and EC, resulting in a two-dimensional PID parameter self-tuning fuzzy controller. Its structure is shown in Figure 3. As can be seen from the figure, the fuzzy controller consists of a conventional PID control section and a fuzzy inference section. The fuzzy inference section is essentially a fuzzy controller itself, with input linguistic variables being the deviation E and the deviation change EC, and output linguistic variables being the parameters KP , KI , and KD .
3.1 Definition of linguistic variables and fuzzy sets
Given that the fundamental universes of discourse for the deviation variable e(t) and the deviation change ec(t) are {-12, 12}, and the linguistic variables for the deviation Z and the deviation change EC are both {-6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6}, and the fuzzy subsets of both linguistic variables E and EC are {Z, S, M, B}, the linguistic membership functions for each fuzzy subset are taken as isosceles triangles.
3.2 Formulation of Parameter Adjustment Rules
Generally speaking, the P control loop is used to reduce the error of the measurement trajectory; the I control loop is used to reduce or eliminate the trajectory error; and the D control loop can reduce the maximum overshoot.
For different values of |e| and |Δe|, the self-tuning requirements of the controlled process for parameters KP , KI , and KD are:
(1) When the deviation |e| is large, in order to speed up the system response, a larger KP should be taken ; at the same time, in order to avoid the control action from exceeding the permissible range due to the possible differential oversaturation caused by the instantaneous increase of the deviation at the beginning; at the same time, in order to prevent the system response from having a large overshoot and generating integral saturation, the integral action should be limited, usually KI = 0, to remove the integral action.
(2) When |e| and |△e| are at medium size, in order to make the system response have a small overshoot, KP should be smaller and the value of KI should be appropriate. The value of KI in this case has a great impact on the system response. The value of KD should be moderate to ensure the system response speed.
(3) When |e| is small , i.e. close to the set value, in order to ensure good steady-state performance of the system, the values of KP and KI should be increased. At the same time , in order to avoid oscillation of the system near the set value and to consider the anti-interference performance of the system, the value of KD is quite important. Generally , when it is small, KD can be larger; when it is large, KD should be smaller.
Based on the above analysis and the setting of language variables, the self-adjustment rules of KP , KI , and KD can be summarized as shown in Table 1.
The parameter adjustment rule table can be written in the form of conditional statements. For example, the adjustment rule for K and P can be written as:
(1) if E=NB and EC=NB or NM then K P =PS
(2) If E=NB and EC=NS or NZ , then KP =PS. From this , the membership function values of KP , KI , and KD under various conditions can be calculated. Finally, the centroid method is used to refine the fuzzy quantities. In actual work, the above calculations are performed offline, and a control decision table is created and stored in the computer. During the control process, a lookup table method is used to read the data, thus reducing online calculation time and improving the real-time performance of the system.
3.3 Calculation of Control Quantities
When a computer is used to implement the PID control algorithm, its discrete PID control law is as follows:
Figure 4 Comparison of step signals Figure 5 Comparison of sinusoidal signalsIn the formula: u(n) and e(n) are the controller output (control quantity) and input (deviation signal) at the nth sampling time, respectively; KP is the proportional gain; TI and TD are the integral and differential constants, respectively; and TS is the sampling period.
The above formula can also be written as:
From the above two equations, the increment between the control quantity u(n) at the nth sampling time and the control quantity u(n-1) at the (n-1)th sampling time can be obtained as:
Δu=u(n)-u(n-1)=K P [e(n)-e(n-1)]+K I e(n)+K D [e(n)-2e(n-1)+e(n-2)]As can be seen from this formula, the incremental PID controller is only related to the first three sampled values, resulting in less computation and better real-time performance. In actual experiments, the error and error rate of change can be calculated from the sampled values. The error rate of change is the difference between the current error and the previous error. The fuzzy values of the error and error rate of change can be used to modify KP , KI , and KD by looking up a fuzzy lookup table. This method of real-time adjustment of KP , KI , and KD parameters utilizes control experience and the actual values of the experimental object, without a complex optimization process. The algorithm has a short execution time and good robustness, and can meet the real-time control requirements of a robotic arm. The experimental results are shown in Figures 4 and 5.
4. Conclusion
The fuzzy PID control algorithm proposed in this paper provides an effective means to improve the control performance of robotic arms under different working conditions. Experiments show that this control algorithm has the following advantages:
(1) The parameters KP , KI and KD in the PID control algorithm can be automatically adjusted online, and the best control parameters can be selected under different working conditions.
(2) The adjustment quality index is better than that of conventional PID control, and it has a significant effect on improving the dynamic response of the system.
(3) It has strong robustness, which gives the system good performance indicators.
(4) The control algorithm is simple and convenient, has strong real-time performance, and is easy to implement on an industrial computer.