Welcome to EverybodyWiki 😃 ! Nuvola apps kgpg.png Log in or ➕👤 create an account to improve, watchlist or create an article like a 🏭 company page or a 👨👩 bio (yours ?)...

Macro Logic 4.0 (ML)

From EverybodyWiki Bios & Wiki

Macro Logic 4.0 (ML) is a programming language of Programmable Logic Controllers (PLCs) developed in the mid-1980s to unite the main benefits of the two languages most used at the time for programming PLCs: the Ladder Diagram (LD) and the Instruction List (IL), which are now part of the five programming languages of PLCs defined by IEC 61131-3.

The ladder diagram is widely used by industrial technicians who have knowledge or experience of electricity, since all programming is performed through symbols and representations of electrical contacts, which provide quick visualization of the states of the variables to the programmer, in addition to easy understanding and clear documentation since the symbols used are standardized and accepted by users worldwide, but it was difficult to quickly manipulate when creating code with hundreds of thousands of lines.

The instruction list is a language easy to manipulate using simple text editors, but it does not have the didactic appeal offered by the ladder diagram. Therefore, the instruction list is widely used by software developers who have knowledge or experience with Boolean algebra, logical operators, mathematical functions and who knows the operation of a controller, since the whole structure of the language is based on the storage of partial results in memory addresses of the controller that we allocate throughout the execution of the program, through the creation of mnemonics, referencing values and declaring variables.

The search for increased productivity, quality and safety has increasingly motivated the industry to automate its activities. The evolution of the microprocessed systems has allowed the massification of the use of Programmable Logic Controllers (PLCs) in the automation of processes in several areas of the industry. Currently, several manufacturers of electronic equipment offer small controllers that, when programmed with a few dozen lines in LADDER language, allow to create systems in a very simplified way. The enthusiasm gained by success in such operations ultimately motivates the initiates in this area to create ever larger systems, which can sometimes reach hundreds of thousands of lines of code. If this growth is not sustained by methods that help ensure the quality of the generated code, the automation process can bring incalculable damage due to the inability to maintain mastery of the functionality of the systems, which can become extremely complex to understand and maintain.

This is why the Macro Logic (ML) language uses techniques that increase the quality of automation software for medium to large systems. Implemented in environments that make use of the precompiler feature, the ML language can achieve very high performance levels due to the small SET of instructions associated with each Macro created from the native language. The language ML initially used implementations in language ASSEMBLY as native language, being replaced in the future by code in language C.

Phases of the macro logic language[edit]

ML 1.0

The first version has basic logic instructions for performing simple operations such as AND, OR, NAND and NOR.

ML 2.0

In the second version are added more sophisticated features such as timers, counters and board logic up and down.

ML 3.0

In the third version is made the inclusion of sophisticated control algorithms such as PID meshes and redirection of input and output signals.

ML 4.0

In the fourth and current version, priority level features are added for performance enhancement in critical situations, linearizers, mathematical filters and data loggers.


This article "Macro Logic 4.0 (ML)" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Macro Logic 4.0 (ML). Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.