LADDER LOGIC LANGUAGE LANGUISHING?
Recently, I've been drawn into a struggle between two competing languages. The dispute centers whether ladder logic is still viable as a control language and the possibility of its replacement by main stream, serial computer languages.
The ladder concept itself is ancient (well, old, anyway) and can be on the back of any washing machine made since Hector was a pup. Actually, rumor has it the rumor has it the Germans invented the ladder relay representation in the early 1900's. Ladder logic, as a control language, was first used on silicon devices around 1969 at Bedford Associates, the forerunner of Modicon. To support the control language, hardware platform was devised that had three consistent elements - a dual ported memory, a logic solver and a general purpose computer.
Early on at Modicon, we used a degenerate form of the ladder representation. The great advantage was the language could be understood by any working electrician anywhere in the world. The rest is history. Later, the language was expanded to multinode, and additional functions were added. The rest is history. Ladder logic functionality and PLC adaptability quickly spawned an entire industry.
During the early 1980s we considered "upgrading" PLC technology through use of computer languages. This would have accommodate the young Turks in the colleges that only knew serial languages. But everyone said, "Don't change the language.
Instead, expand it's capabilities to include communications and data base functionality." Would that we had listened! We didn't change the language, we didn't expand its functionality either. As the applications became larger and more distributed, ladder logic use became onerous for the serious computer or control engineer.
Why was ladder logic so successful? The language was easy to learn. And hard as hell for the professional MIS hack to catch on to. We purposely did not call the PLC a "computer" so the control engineer could "do his thing" without becoming enmeshed in the lengthening tentacles of the MIS department.
PLC control, as exemplified by its ladder logic language, was the first rule-based, object oriented representation by means of computer language. Users already know the language, and that language had embedded in it the latest language science. Instead of training users to operate the computer, we trained computer to work with the users.
The most fundamental language I work with is machine language. For computer design the basic language is the language of the transistor. The assembler was a fundamental invention that allowed the user to work in a virtual world of instructions that made more sense to humans than machine language.
Languages evolved upwards from assemble to FORTRAN and C. Then to C++. Languages for today's designer are Forth and LISP. Each step upwards allows the programmer to express himself with fewer lines of source code. Use of object-oriented concepts are now fashionable. Rule-based objects and data base representations based upon symbolic notation and object-oriented programming are found in the newer designs.
But wait a minute. Ladder logic uses an object-oriented philosophy in conjunction with rules that solve Boolean equations. For small, non-distributed problems, ladder logic is so advanced, why there controversy?
Ladder logic hasn't gone anywhere since 1969. No vendor of note, nor the academics, has truly expanded the language into non-logic areas. Schools do not teach the language. The computer systems that surround the PLC all speak computerese. To be top-notch, a user has to know both ladder logic and serial languages. Vendors have not supported hardware to allow ladder logic to be embedded with older serial languages so that variables can easily cross over the cultural border. Because the issue is cultural. The technology foundation of ladder is not in question.
The future might see the gradual erosion of ladder logic. And that will mean a loss in terms of software productivity. I will mourn the loss. Replacing ladder logic with an older concepts is not the solution. Nor is expanded use of everyone's panacea, function books.
To revitalize ladder logic, what I would like to see symbolic representations in string notation with object-oriented data bases. No system code to write and the source code in a natural language. Some of the techniques to be increasingly aware of are expert systems, rule-based objects, massively parallel software and hardware, fuzzy sets, neuron nets, and self-crystallizing concepts in chaos. The future is where we live.
As appeared in Manufacturing Systems Magazine April 1992 Page 54
References - Table of Contents
|R. Morley Incorporated
614 Nashua Street, Suite 56
Milford, NH 03055-4992 USA
Tel: 603-878-4365 FAX: 603-878-4385