Multiprog is a system of standard programming for international Electro-Technical Commission (IEC) designed PLC and conventional PLC. According to the standard IEC61131-3, and includes the full range of IEC features. Multiprog makes all functions easily accessible via a menu, and can generate a project with a few dialogues. Having finished that, the students can immediately start developing a program. The IEC61131-3 standard is the modern approach for a wide range of programmable automation and control systems, not just PLC. Because the programming is now standardized, the teaching of programming becomes largely independent of the actual hardware being utilized. Moreover, the techniques learned and programs that are subsequently developed can be transferred between systems from different manufacturers.
Program Organization Units (POUs) are the crux of program development based on IEC61131-3. They can be categorized into three types, Functions (FUN), Function Blocks (FB) and Programs (PROG). A FUN is defined as a program organization unit that yields exactly one data element when executed. A FUN does not contain internal memory. The same arguments always yield the same output. An FB can process some outputs, and consist internal state information. Every function block instance has a structure with internal data, the inputs or default input values, and output, last output or default output values.
The use of blocks has two advantages. First, the interface has to be defined exactly, which means that the block operation and behavior also have precise definitions. The second is linked to the programmer’s skills. The code can be written with any of the five languages that the standard defines. The standard contains five different languages, which can be mixed within an application. It contains three graphical languages: 1) Sequential Function Chart (SFC); 2) Function Block Diagram (FDB); and 3) Ladder Diagram (LD); and two text-based languages: 1) Structured Text (ST) and 2) Instruction List (IL).