RIP PID

crutschow

Joined Mar 14, 2008
38,503
So what method would you suggest that Mitsubishi and GE-Fanuc, et-al, are using at present date for high speed servo CNC ? ;)
I'm not knowledgeable enough to know what is best for them. or their systems.
I'm just suggesting that other techniques that are designed for digital processing (such as Fuzzy Logic), may be perform better than emulating an old analog control technique that is based upon the system being linear.
I understand there is great inertia in using old, proven techniques, but that doesn't mean they are the best techniques.
 

nsaspook

Joined Aug 27, 2009
16,321
From that it would appear Mr. PID is still alive, but not particularly well. :rolleyes:

Just because a control technique has been used for a 100 plus years, doesn't mean it's the best method.
The best and what works best with the resources at hand are different things. High precision PID is simple to compute (very fast of modern motor controller chips with hardware FP, fixed and floating), stable and easy to code in most computer languages. Speed per update cycle can be critical for very high performance FOC motor drive systems where the drive signals are computed on the fly with tight time constraints for feedback computations per PWM clock cycle.

Fuzzy Logic has been researched for years and might be adequate is some limited systems but modern system are sticking to PI(D) because it works well at very high speeds. It's very much alive and kicking.

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3915500/
High-Speed Current dq PI Controller for Vector Controlled PMSM Drive

Better current control performance depends on how quick the computed switching states vector is applied without sampling period delay. Lin-Shi et al. presents the implementation of a hybrid control strategy applied to a PMSM drive [12]. The research implemented vector control, using two PI current dq controllers, in a DSpace DS1104 board with the Simulink environment. However, computing loops must be very short in order to reduce current ripple to an acceptable value. So, a large computing effort is required to achieve a suitable velocity. Sant and Rajagopal implement vector control of a PMSM with a hybrid fuzzy PI speed controller with switching functions [13]. These switching functions are very simple and effective and do not demand any extra computations to arrive at the hybrid fuzzy PI controller outputs. The research implemented a fuzzy-PI speed controller in the outer loop and two PI controllers for controlling currents in the inner loop. The implementation was done in a 100 W, 7A, PMSM with TMS320F2812 DSP. The reference speed in each case was set at 1500 rpm with a regulated DC bus voltage of 15 V. Another research by Jung et al. used a hybrid fuzzy PI controller for controlling current in a PMSM drive [14]. In this research, a fuzzy PI-type control scheme for a PMSM was presented to achieve a robust current control performance. The proposed current control strategy consists of a decoupling controller and a fuzzy PI controller in order to account for the nonlinearity of a PMSM model and to stabilize the decoupled dynamics. The scheme prototype is simulated for a 1HP PMSM servo system. El-Sousy implemented a PI controller for controlling currents in FOC PMSM drive [1]. The design consisted of a sliding-mode controller (SMC) in the feedback loop. In addition, an online-trained wavelet-neural-network controller was connected in parallel with the SMC to construct a robust wavelet-neural-network sliding-mode controller (RWNNSMC). The research proposed the RWNNSMC for PMSM drive systems under FOC, guaranteeing robustness in the presence of parameter uncertainties. The research demonstrated the application of SMC-2DOF I-PDC and WNNC control systems to control the rotor speed of the field-oriented PMSM drive system. All the aforementioned researches, however, were implemented in either a DSP or a microcontroller. However, these digital solutions are still limited for complex control algorithms. Though multiprocessors schemes or high performance DSPs can deal with such applications, the cost exceeds the benefits [15]. Moreover, the microprocessor-based solutions are presently reaching its physical limits, which is not less than few microseconds [16]. On the other hand, specific hardware technology such as field-programmable gate array (FPGA) has the advantages of wide parallelism, deep pipelining, and flexible memory architecture over DSP. Thus, FPGA based current dq PI controller can be considered as an appropriate solution for reducing the execution time.
It is pretty common to use Fuzzy Logic systems to tune high performance PID control loops.
https://ieeexplore.ieee.org/document/8089200
 
Last edited:

joeyd999

Joined Jun 6, 2011
6,279
How about downloading it yourself and posting it - it counts as "fair use" under most countries' copyright law.
My understanding is that posting copyrighted material in verbatim on a public forum without its owner's permission is not fair use -- at least in the USA. Someone please correct me if I am wrong.
 

WBahn

Joined Mar 31, 2012
32,823
Please don't link to papers that only subscribers can download! How about downloading it yourself and posting it - it counts as "fair use" under most countries' copyright law.
I'm pretty sure it doesn't, especially if you post the entire contents. Part of fair use is the scope of the audience. Making a copy available to a class is one thing, but posting an entire copyrighted work on a public forum where, literally, nearly everyone on the planet gains free access to it is NOT going pass muster. If you quote brief passages for the purposes of commenting, then you are fine.
 

Sensacell

Joined Jun 19, 2012
3,784
I remember the FL hype storm that blew past, mostly emitted by the marketing organs of the ecosystem.

I'm with Mr. Pease on this one.

From my experience of writing my own PID control systems several time over, they always needs some band-aids to fix the edge conditions.
For example: Integrator-term anti-windup, conditional gain adjustments, etc. This is the real stuff that makes these systems usable in the real world.

The term FuXXy logic does not define an algorithm, or system, it's just a great tarp to throw stuff under and a great marketing hook.
 

nsaspook

Joined Aug 27, 2009
16,321
I remember the FL hype storm that blew past, mostly emitted by the marketing organs of the ecosystem.

I'm with Mr. Pease on this one.

From my experience of writing my own PID control systems several time over, they always needs some band-aids to fix the edge conditions.
For example: Integrator-term anti-windup, conditional gain adjustments, etc. This is the real stuff that makes these systems usable in the real world.

The term FuXXy logic does not define an algorithm, or system, it's just a great tarp to throw stuff under and a great marketing hook.
I've written FuXXy logic and PID control loops. Fuzzy Logic just adds complexity to problems unless they are complex control problems to begin with. Most are pretty simple.

My standard C header is simple:
C:
    struct SPid {
        double dState; // Last position input
        double iState; // Integrator state
        double iMax, iMin; // Maximum and minimum allowable integrator state
        double iGain, // integral gain
        pGain, // proportional gain
        dGain; // derivative gain
    };

// Vanilla C PID coding with just Integrator limiting added

    if (pid->iState > pid->iMax) {
        pid->iState = pid->iMax;
    } else if (pid->iState < pid->iMin) {
        pid->iState = pid->iMin;
    }
https://en.wikipedia.org/wiki/PID_controller#Pseudocode
 

strantor

Joined Oct 3, 2010
6,875
I'm just suggesting that other techniques that are designed for digital processing (such as Fuzzy Logic), may be perform better than emulating an old analog control technique that is based upon the system being linear.
I understand there is great inertia in using old, proven techniques, but that doesn't mean they are the best techniques.
I see PID as being like the wheel. Yeah it's old, but it still works for most applications.

Yeah there are alternatives, and some of them are "better." Helicopters don't have wheels, and they go way faster than cars and operate in 3 dimensions. But if they were going to deliver us from dependence on wheels, they would have done so already.

Is a modern car's wheel an emulation of a 3000BC ox cart wheel? Or is it a highly refined evolution of it? Like the wheel that has been augmented with alloy spoke construction and advanced tire designs, PID can be (and usually is) augmented with things like integral hold, feed-forward, and other supplemental algorithms to enhance its performance.

When shopping for personal transport, the matter of a particular conveyance being dependent upon the stale and oh-so "last year" wheel technology is not a good reason to pass on it.

Is the fact that "this is how we've always done it" a good reason to continue slapping wheels on everything we want moved? No. Not strictly speaking. But that's what we're going to do anyway, and anyone with a better idea is free to step forward and be unheard.
 

SamR

Joined Mar 19, 2019
5,487
I cannot imagine running a control system without PID! Not all PID is simply controlling a "heater". I controlled levels, flows, and temperature using PID. Both the old-fashioned way of changing a variable and timing the response etc. Newer computer based distributed control systems now have auto-PID tuning and adaptive PID tuning. But it only works if the sensor and control elements are properly sized. One system was for the distillation area of the plant where we had 27 100'+ fractional steam heated distillation columns. The plant had discovered that there was a good market for precise fractional cuts of terpenes and quality control was an issue. So someone found this freelance Distillation Specialist who was brought to our plant. He inspected our columns and came up with a punch list of sensors to replace and a few control valves and actuators to be serviced in the shop or replaced. He also had some of the fractional bubbler plates replaced with a different bubble design. I thought the control system was doing a great job to get 0.1 °C resolution. Nope, he said he would get 0.01°C and dang if he didn't do it so I had to stop laughing. That was on a PDP-11 system that I had recently upgraded to DEC Alphas and was still running GSI's control software package. The Foxboro IA systems were even better with Auto and Adaptive PID controllers, which the Instrument Mechanics and Operators loved and their managers loved the results.
 

MaxHeadRoom

Joined Jul 18, 2013
30,655
The first CNC machine I worked on was ran by a PDP-8, I believe it was developed by a professor in Minneapolis using PID control.
Since then just about all of the CNC systems i have been involved with were using PID control of the servo's, why was this? Probably because it worked well.
I would also have assumed that Galil, which is a forward looking Co. would have abandoned PID control in favour of something better, if it was out there.

"If it works, we can always change it" !! o_O
.
 
Last edited:
Top