Fuzzy Applications Using Control Logix

Ashwin

Member
Join Date
Mar 2003
Location
Columbia, MO
Posts
62
Hi,
Am working on my thesis in this above mentioned area.

Whats the best place to start looking at programming in Function Block.

Does anyone have experience working on Fuzzy Applications ysing PLCs.

Ashwin.
 
Ashwin,

I am not sure if Control Logix even has Fuzzy Logic modules or not. However Omron does have a high-speed Fuzzy Logic module it is their C200H-FZ001. I have never used it, so I can not help you with any details as to how it works, but I did find the following web site with a manual on the use of this module below.
http://oeiwcsnts1.omron.com/pdfcatal.nsf/PDFLookupByUniqueID/6114BAD7503BC9BD8525683F0055FBA4/$File/M11W208E31A299.pdf?OpenElement

Thanks,

Mike
 
I've been around PID controllers all my life including the old pnumatic stuff and have had good luck tuning them. I installed a few of the "Fuzzy" logic controllers (not PLC) and they work good, however how they work is kind of "fuzzy" to me. Maybe I could read your paper when it's finished and you could "clear" up the logic for me.
 
He also could be looking at making his own function blocks. User defined FB's are the best part of funtion block programming.


Aswin- I was introduced to FB's in a class, so I don't know where to point you. It is really easy to pick up if you have done PLC programming before, though.
 
I am a little confused

I havent done much with FBD and nothing with fuzzy logic therefore have not associated them as being the same. Function block is part of IEC-61131 and fuzzy is more of an IF, THEN, ELSE thing like high level programming.

This is my understanding and may be wrong, I think I will RTFM in more detail.

This may help with function block:
http://www.patchn.com/plc_fb.pdf

This may help with a little with fuzzy logic:
http://www.patchn.com/plc_fuzzy.pdf
 
Thanks

A Zillion thanks to everyone!!!

Im kinda starting on my thesis work so yes all inputs help. A major chunck of my thesis involves using the Controls logix function block programming to be used in fuzzy applications..more specifically on the Inverted pendulum problem.

Well I have not seen a lot of AB flex and my advisor tells me it bombed in the market. Nyways..the idea is to acheive the above by the end of summer!

I have been used to working on AB, Modicon and Siemens..but first time on RS Logix 5000. I also have to incorporate RS view as a front end..just starting out....so still lack a lot of direction myself!:(

Ashwin.
 
The Inverted Pendulum! What a great, classic, control problem!

That's exactly the problem that had to be addressed by the programmers of that ped-mover thing that Mr. Kaman recently released. Except, his thingee had to somehow discern whether or not there was "intent" behind the inverted pendulum leaning one way or the other.

"Fuzzy" is exactly the method to use!

Ron...

"Fuzzy" is not an "If, Then, Else" sorta thing. "If, Then, Else" is available in any programming language... even Ladder... think about it.

"Fuzzy" is a "weighing" or "degree" sorta thing. That is, "To what degree am I not where I want/need to be, and, to what degree should I react so as to get where I want/need to be".

You could then say that the resulting action is a "vector" kinda thing. A "Vector", by definition, is Magnitude and Direction. A Vector can point in any direction from the center of a sphere. A vector is Polar in nature. It can then be converted to rectangular co-ordinates by projecting the vector onto the X-Y-Z co-ordinates of a 3-dimensional system. Then, the length of the projected line on each axis represents the magnitude of the response for the particular output associated with that axis. As time goes on, the vector is constantly changing direction and magnitude. So the various responses are constantly changing to bring the system to stability - where it wants/needs to be.

Some might say that this sounds like PID, but this really is much simpler than those nasty ol' PID formulas! And you have direct control over the responses!

This could easily be extended (easy for me to say!) to any number of dimensions (beyond the 3-dimensions of a sphere).

I've gone way beyond the basic explanation and implementation of "Fuzzy"... but Damn It, I can't help it! "Fuzzy" is a FUN concept and a FUN tool! And it works great! It operates just like we would - that's assuming that we would know how to respond. And just like "Indirect Addressing", you just have to know what you are doing.

Do you realize that, mentally, our normal problem solving skills extend beyond, maybe far beyond, 3-dimensions?
 
AB FLEX fuzzy logic explorer

There's a blast from the past... Rockwell's GTS engineering group once-upon-a-time built a fuzzy logic programming environment that would load code into PLC-5 and SLC platforms.

Probably "bombed" is a fair evaluation of it's market success... I'd say it had "limited user adoption". I had one phone call on it four years ago.

You can read about it:

http://www.gts.ra.rockwell.com/fuzzy logic/GTSFuzzy.nsf/

The name "Flex" was probably a misnomer; it has nothing to do with Bulletin 1794 FLEX I/O or with the FlexLogix controller.

And you'll see that development was discontinued before the ControlLogix came on the market.
 
Ron,
When I say that Fuzzy is not "If-Then-Else", what I'm trying to say is that fuzzy is not limited to the typical usage of "If-Then-Else".

Typical usage...
If "A" and "Not-B" then "C" implies "If A=100%(ON) and B=0%(OFF) Then C=100%(ON), Else C=0%(OFF)"

...Your typical digital logic ON/OFF stuff.

Fuzzy does include that view, at its extremes, but it also goes beyond (or would that be, "between") the ON/OFF nature of things... that is, it includes the grey-areas in between ON and OFF!

What if "A=72%" and "B=15%"? What should "C" be then?
 
There are no formulas to use a PID block either!

Terry Woods said:
Peter,
There are no formulas! Just relationships and rules that you make up!

You are right if you don't count the code in the PID block or fuzzy block. Let's make sure we are comparing apples to apples.

These 'nasty' formulas are inside the PID and fuzzy blocks and I am saying that there is more code in the fuzzy logic block than in a PID block.

In Ashwin's case he will get to know these fuzzy code ( formulas ) very well because he is going to write the function block.
 
Alright, Peter...
I will buy into the idea that once the Fuzzy Rules are developed they become the "formulas".

HOWEVER... (rant alert!)

The point that I have always made, regarding PID (for these last 4 or 5 years), is that a programmer does NOT have control over how the response is generated, and ultimately, what the response is during the course of experiencing a particular situation.

The response is produced, strictly, according to the HARD-CODED PID Formulas. There is NOTHING that a programmer can do to modify how the PID Formulas respond.

Even if you change control-values, the response is still produced according to the formulas. The response is "hard-coded" in that sense. And, it is hard-coded in a manner beyond the programmers reach!

The advantage of Fuzzy is that the programmer can modify the response in any way he wants! Sure, it takes more code, but, as I have also said for the last 4 or 5 years, the onus is on the programmer to do whatever is necessary to get the proper response. That means, in the course of developing any process, the programmer needs to put in more effort, much more effort, than the operators or maintenance folks would have to just to overcome the short-comings of the programmer!

And, of course, one of the truely great things about software is, once you create a model, that model is available for all subsequent builds! If the model is developed to suit general-purpose needs then the model becomes a general-purpose solution.

One of the things that drives me nuts about the control-world is that too many programmers treat everything as if it was a "One-Off"! They think their particular problem is unique and has never been seen before.

There is far more duplicity in code than not!

I would (and do) dare say that control-responses end up being one of five cases: Turn it ON, Turn it OFF, Increase it, Decrease it, or do nothing.

Yeah, this went off on a bit of a wild-hair... tangents, don't cha luv 'em?
 
Terry, thank you for the information, it is greatly apprectiated.

Question?

I would (and do) dare say that control-responses end up being one of five cases: Turn it ON, Turn it OFF, Increase it, Decrease it, or do nothing.

Wouldnt it be fair to say that under the conditions you implied/stated that a 6TH case is involved?
Turn it ON, Turn it OFF, Increase it, Decrease it, or do nothing.
OR DO SOMETHING?

Your explanation stated this to be a vector, 3D or maybe more dimensional aspect of control. Wouldnt that imply that the options of move up, down, left, right, 20 degrees SE, 200 degrees NW etc etc are involved? Therefore the 6th case could be DO SOMETHING, move right, slow down, speed up etc etc al?

Am I following your explanation properly?

I have reread this several times and I know increase it/decrease it was stated but that alone doesnt cover(all)movement if its involved..at least I dont think it does. Maybe it could though but not sure, seems to me it would make more sense to state it using move, turn or direction but DO SOMETHING kind of covers it for me.

Maybe my tangent doesnt make sense. I am just trying to understand/be involved.
 
Last edited:

Similar Topics

We have an input map that executes at the top of every scan. In most cases we are using the MOV instruction to copy the input data into a human...
Replies
7
Views
2,236
I meant to say most papers comparing fuzzy logic vs PID are frauds. Fuzzy logic can work but not better than PID with feed forwards. I know some...
Replies
13
Views
6,278
I am fan of expert system, and peter is trying to convince me of the opposite. BTW no hard feelings as both types have advantages/disadvantages...
Replies
19
Views
6,563
Can i use fuzzy controller for the controller purpose in programing? if yes how? any suggestion?
Replies
7
Views
2,075
Anyone use it? (we don't have it) A couple questions. If a function block were created in FD, would someone without FD be able to open the...
Replies
3
Views
2,294
Back
Top Bottom