2 ms·
Let's say you're trying to control the x,y,z coordinates of a robot arm. It has three pivots. Rotating the third pivot can increase or decrease x depending on t
by blagie 3y ago
Let's say you're trying to control the x,y,z coordinates of a robot arm. It has three pivots. Rotating the third pivot can increase or decrease x depending on the first two.
That's a complex, multidimensional, nonlinear system (albeit with relatively simple dynamics). PID won't do it, since you don't even know which way the PID terms should go. There are approaches which mix PID with other methods, though.
A lot of analog systems too, such as some audio amplifiers, use more complex control techniques simply because they achieve higher performance. If you want low distortion, you need a lot of gain in your feedback loop. Most use rather simple controllers, but some go very fancy.
Some have complex linear dynamics. A system with a right half plane zero means that if you push right, the system goes left than right. That's very difficult to control. An example (called a boost amplifier) works like this, in analogy:
You have a bucket of water. You can either turn on a spigot to fill the bucket at a fixed rate, or one to empty it from a hole in the bottom (so at a rate proportional to how full it is). You'd like water to come out at a given rate. What is the ratio of time between filling and emptying?
- In the short term, if you empty for less time, less water comes out, because duh.
- In the long term, though, ALL the water which goes in must come out. If you empty for less time, you fill for more time, so it gets fuller, water pressure goes up, and more water comes out.
The above is actually completely analogous, mathematically, to how a USB device might take a 5V power rail and make a -12V power rail from it. You connect an inductor to 5V, charge it up with a current, and have it drive the -12V rail down.
If you're controlling more complex systems, you might have a mix of all of the above: nonlinearity AND complex dynamics.
Is your nick accurate? If so, you should already know this.