At a Glance
In addition to the standardized IEC features listed in the IEC Compliance Tables, the Control Expert programming environment inherited a number of features from the PL7 programming environment. These extensions are optionally provided; they can be checked or not in a corresponding options dialog. The dialog and the features are described in detail in a chapter of the online help titled Data and Languages.
Not included in the options dialog is another extension, which is inherited both from the PL7 and the Concept programming environments: Control Expert provides the construct of the so-called Section in all programming languages, which allows to subdivide a Program Organization Unit (POU). This construct introduces the possibility to mix several languages (e.g. FBD sections, SFC sections) in a POU body, a feature which, if used for this purpose, constitutes an extension of the IEC syntax. A compliant POU body should contain a single section only. Sections or Program Units do not create a distinct name scope; the name scope for all language elements is the POU.
Purpose of Sections, or Program Units
Sections, or Program Units serve different purposes:
Sections, or Program Units allow to subdivide large POU bodies according to functional aspects: the user has the possibility to subdivide his POU body into functionally meaningful parts. The list of sections represents a kind of functional table of contents of a large, otherwise unstructured POU body.
Sections, or Program Units allow to subdivide large POU bodies according to graphical aspects: the user has the possibility to design substructures of a large POU body according to an intended graphical presentation. He can create small or large graphical sections according to his taste.
The subdivision of large POU bodies allows quick online changes: in Control Expert, the Section, or the Program Unit serves as the unit for online change. If a POU body is modified during runtime at different locations, automatically all sections affected by the changes are downloaded on explicit request.
Sections, or Program Units allow to rearrange the execution order of specific, labeled parts of a POU body: the section name serves as a label of that part of the body which is contained inside the section, and by ordering these labels the execution order of those parts is manageable.
Sections, or Program Units allow to use different languages in parallel in the same POU: this feature is a major extension of the IEC syntax, which allows only one single IEC language to be used for a POU body. In a compliant body, SFC has to be used to manage different languages inside a body (each transition and action may be formulated in its own language).