08-16-2012 02:27 PM
Right now my testing capabilities are very limited and I've only been able to do good testing on one system. I am working on cutting down the noise on another system that we have because right now there is too much noise to actually perfrom any testing on. On the that system that does work I'm only able to test about 1/8th of the range that will be needed eventually on some systems. With what I've actually been able to test, I've found PID gains that meet these requirements but I've only tested from 1.57PSF to 15PSF. I'm not about ready to say that is the solution yet because there are still 3 other places it needs to work in along with needing to go up to 120PSF so I'm not sure how thats going to perform yet.
I have not ruled out some form of PID, I just believe that its going to need to be able to change the gains according to what set pressure it needs to get too. My fuzzy control rules aren't quite good enough to keep up with the PID but I plan on putting in effort to get it the best chance to work for what we need.
08-16-2012 04:11 PM
100% agree with Lynn. First you have to get a full understanding of the process you are controlling. Often control loops don't require anything too demanding. But it is quite easy to get them to go bad if things are not done properly. Occassionally you get control loops that are challenging - in which case understand why it is difficult.
First get some open loop plots showing the response from actuator to pressure, with no control. Explore how much that response changes with different pressures, different systems. If there is a big nonlinearity then try to think where it is coming from and if it can be somehow characterised. Often when thinking about the physics of what is happening the solution can become much clearer - such as applying the inverse nonlinear characteristic in the controller.
You mention that it has to reach steady state in 15secs - is it really stability issues that are making it difficult ? On the plots you showed before the shaping of the setpoint trajectory, whilst it is good practice to help give gentler control signals it is perhaps making understanding the process response more difficult. Looking at it again, I would say that the proportional gain is too high (though difficult to know without seeing what structure of PID you are using) - the response lags the setpoint, but then overtakes it - reducing the proportional gain (halving ?) will make the system more robust, and perhaps only a little slower.
Do you actually need integral action ? Some pressurisation system have integral behaviours, and so if you have integral in the controller as well, this can cause stability issues. If you do need integral in the control and have integral in the process, then that can be a challenging control problem, even if relatively linear. If that is the case you'll certainly need derivative - but all of these need careful setting up, and I would certainly revert to using some modelling and simulation to explore the control solution rather than trying to do it by trial and error on a real plant.
Personally, I would only use Fuzzy Logic when the physics of the process are too complicated or too poorly understood to map into a simple control solution and when there is a set manual rules that would allow a human operator to control the process better than a fixed gain controller.
I hope this helps, and that you can get some good learning out of this.
08-17-2012 09:19 AM
Maybe you are chasing an impssible dream? As I understand it, PIDs are all about customization and not generalization. Maybe what you should do is make a VI that has tons of customizable options?
08-21-2012 11:04 AM - edited 08-21-2012 11:08 AM
Andy,
I am currently working on what you suggested, checking the response without any control. I've been running the motor to various set voltages and recording the maximum stabilized pressure that each voltage produces. After recording a set of data from those tests, I do what I call a "bump test" where it fixes the voltage at 3V for three seconds and records the maximum pressure for that voltage bump.
I'm finding that the data is rather linear for each different bump test rating that I'm recording. According to that, I hope I can find a rule that can generate a formula to approximate the required voltage for any given pressure in various systems.
The physics are rather straight forward on what is happening. Maybe the difficult bits come in when you take into account leakage and also deflection of certain components that will cause a change in the pressure response. My findings that it is a linear relation seems to support these assumptions. If the relationship is linear throughout the entire range of pressure, will a single set of PID gains be able to achieve all the pressures? I read that one set of PID gains will only work for a range of set points for any given system whether its pressure you're trying to control or temperature.
Correct, I have to be within 2% of the set pressure within 15 seconds. In general, achieving stability in the system isn't much of a problem, but needing to be stable within 15 seconds makes it difficult. So I guess the root problem is that we need to be there within 15 seconds, if that's what you're asking.
I do believe that it needs an integral term to perform properly, then again I'm very new to this stuff so I'm not entirely sure. I don't think the system naturally has integral behaviors, seems to respond very well to inputs and doesn't naturally oscillate.
The Fuzzy idea came in because we thought it was a possible solution to getting one fixed control to work properly for the variations that the program would be seeing. I've been given about 4 work weeks to learn Lab view, learn controls, and implement this to designing a control for an unfamiliar system.
08-21-2012 11:07 AM
Bill,
I think its possible without having to use a bunch of user inputs to get there. The whole time I've been working on this in any direction that I go I hope I'm not barking up the wrong tree and I hope that there is some solution instead of chasing something impossible.
08-21-2012 11:56 AM
Based on what you have said it seems likely that you will be able to tune one controller to work reasonably well.
When you run the fixed voltage tests (1) how long does it take for the pressure to first reach the value at which it ultimately stabilizes? and (2) how much does it overshoot? The answers to these questions may be as important as the linearity checks with regard to the design of the controller.
Leakage (at least as long as it is relatively small) should be linear or maybe quadratic with pressure. Even if it is not linear, if it is a small percentage of the total flow, it should not be a problem for the controller.
The deflection of components will add a spring-like force to the system equation and the expansion will allow some additional accumulation of air. This will be like a small amount of integral Unless you have a significant "ballooning" I think these effects will also be small enough to have little effect on the controller.
Lynn
08-21-2012 01:06 PM
With a fixed voltage it takes about 30 seconds for the pressure to stablize and doesn't have a overshoot because there is no set point when wea re just dealing with a fixed foltage for testing.
The leakage can get complicated when the pressure on the test object makes the seal better so it will hold more pressure.
Dan
08-21-2012 02:30 PM
Dan,
The fixed voltage test represents the fastest the pressure can increase. If it takes 30 seconds to reach the final value, you will never be able to achieve your 15 seconds to stabilize goal. No controller can force the blower to run faster than applying the maximum voltage. Even if you apply overvoltage to the blower for a short time it is unlikely that you will shorten the time that mcuh.
Can you post a pressure versus time plot or data for several fixed voltages, such as 25%, 50%, and 100% of rated voltage (or whatever values in those ranges you tested).
When the leakage seals under pressure, how fast does the pressure jump compared to the rate of increase without any changes?
Lynn
08-21-2012 03:38 PM
After running so more tests I realize it does get to a fixed pressure in roughly 15 seconds are so depending on the pressure. I would just always wait a while until I was sure that it was at the maximum pressure that it could achieve. But assuming that I don't have to use the maximum rated voltage to get to a set point, I can overshoot the voltaged need to get to that pressure to bring it up faster then knock it to the voltage to hold the pressure.
I'll try to get some graphs up soon of how the fixed voltage testing was looking.
The leakage change is not something that was absolutely confirmed and measurable, just a theory I had for why the pressure seemed to never stabilize after being at a fixed voltage. It was always sloped slightly and kept increasing, it would have stopped at some point once it had forced the best seal it could. I ended up switching to another unit that had a better seal and I could adjust the leak through a slider.
After doing so and running some tests I came up with results that didn't exactly match what I was expecting but they are understandable after looking at them. The first system I was testing on was a larger system and when I did my bump testing I found that for 3V for three seconds I would get a max of about 1.8psf. When I went to the other system I could get a max of 4.0psf with the same testing parameters. When I would adjust the valve to make the system leak enough to match the 1.8psf of the other system I did fixed voltage testing at that setting. I found that for any given voltage, the larger system would produce a higher pressure than the smaller system. I believe its because I had to make the leak on the smaller system so much larger than the bigger system that when it came to sustaining a voltage it lost so much more air than the larger system.
Given that, I don't believe I can have one formula that can estimate the required voltage for any given system based off that bump test. If I continue to go this route I will have to come up with a different test to be performed or a different way to interpret the numbers.
08-21-2012 03:52 PM
Given that, I don't believe I can have one formula that can estimate the required voltage for any given system based off that bump test. If I continue to go this route I will have to come up with a different test to be performed or a different way to interpret the numbers.
Dan,
That is the whole idea of a feedback control system: you do not need to have a formula. If the range is just over 2:1, you may be able to make a single system work.
I'll wait to see what your data looks like.
Lynn