Eclipse 4diac Logo design once use everywhere Open Source PLC Framework for
Industrial Automation & Control


Step 0 - 4diac IDE - Overview

Step 0 - 4diac IDE Overview

This page is part of a guide that gives a walk-through over the major 4diac IDE features.

  1. 4diac IDE Overview (YOU ARE HERE!)
  2. Use 4diac Locally (Blinking tutorial)
  3. Distribute 4diac Applications
  4. Deploy Applications Remotely
  5. Create Your own Function Block Types
  6. Other Basic Features
  7. Advanced Features
  8. Deploying new FBs with the Dynamic Type Loader

An overview is presented in this step 0 - about elements, perspectives and properties of 4diac IDE that you need to know about to use it smoothly.

Starting up 4diac IDE

Open 4diac IDE to start the tutorial. You will be prompted to select or create your workspace. For this tutorial, we name our workspace "Tutorial". A workspace is a folder on your computer that stores one or more 4diac IDE projects.

workspace selection

After you created a workspace, 4diac IDE presents its welcome screen. Here you can get an overview about 4diac IDE, create a new project, import an existing project or read more about the chapters of the tutorial.

welcome screen of 4diac IDE

At first it's best to deselect the checkbox at the bottom-right corner so you can start up 4diac IDE faster the next time. You can open the welcome screen later again via Help → Welcome.

Next you click the workbench button. This brings you to the main screen of 4diac IDE.

4diac IDE Elements

Since 4diac is compliant to the IEC 61499 standard, 4diac IDE provides the standard's elements for work (you can check here to revise):

  • System System: It contains the System Configuration and its corresponding Applications.
  • Application Application: It contains the desired application in terms of a FB network.
  • Device Device: It represents a hardware device such as a programmable logic controller (PLC) or a microcontroller.
  • Resource Resource: It is responsible for the execution of the control logic within its own execution context.
  • Function blocks (FB):
    • BFB Basic FB (BFB): It uses an execution control chart (ECC) to control event execution. Algorithms are associated with the different states inside an ECC.
    • CFB Composite FB (CFB): It contains a FB network of existing FBs. Its FB interface passes events and data on to the FBs within the CFB, which in turn pass events and data among themselves and out to the CFB's normal output interface.
    • SIFB Service interface FB (SIFB): It is usually used for something that cannot be done within the IEC 61499 standard such as communication with devices or network segments. It helps to first understand basic and composite FBs. SIFBs are then used to realize only what cannot be done using a BFB/CFB.
  • Adapter Adapter: It combines a set of input/output events and data to one connection. On the one hand it simplifies the IEC 61499 Application and on the other hand it better decouples Application parts providing an interface concept, which allows adopting the polymorphic concept of object-oriented programming

4diac IDE Perspectives

The 4diac IDE provides three perspectives, which can be added via the add perspective button in the upper-right corner:

perspective selection
  1. The System Perspective Button System perspective is used to configure everything regarding your system. It includes:
    • System Manager, which allows creating and editing your System and Applications.
    • System Configuration, which allows managing Devices, Resources and Segments according to IEC 61499. The Resources are used for Application mapping and insertion of communication function blocks to other Devices and Resources.
    • Applications according to the IEC 61499 Application Model
  2. Deployment Perspective Button Deployment perspective, where the Applications are launched and tested.
  3. Debug Perspective Button 4diac IDE Debug perspective, where Applications can be monitored.

System Perspective

The perspective can be changed in the upper-right corner. The System perspective is reached via the System Perspective Button button. The System perspective is divided into the following five areas:

  1. System Management area, which is used for managing IEC 61499 compliant applications and configuring Devices and Resources. The Type Navigator is in a tab next to it and lists the available function block library for every System as well as the default library.
  2. Editor area, which contains the Application editor for modeling of control applications, the System editor for modeling the System configuration, and the Device and Resource editor for modeling the Resource configuration.
  3. Outline of Applications, System configurations, Devices, and Resources
  4. Property view, which allows parameterizing function block instances, Devices, and Resources

System Perspective Button

Deployment Perspective

The perspective can be changed in the upper-right corner. The Deployment perspective is reached by the Deployment Perspective Button button. The Deployment Management perspective is divided into the following four areas:

  1. Deployment Selection for selecting a System, Devices or Resources which have to be deployed to controller runtimes
  2. Deployment Console for visualizing deployment messages
  3. Runtime Launcher and button Deploy, which start the deployment process and launch IEC 61499 compliant runtimes
  4. Console output if the runtime is running locally.

Deployment Perspective Button

Debug Perspective

The perspective can be changed in the upper-right corner. The Debug perspective is reached via the Debug Perspective Button button. The Debug perspective is divided into the following four areas:

  1. System selection, where Systems can be marked for monitoring by right-clicking and choosing Monitor System.
  2. Application editor, which shows your Application and highlights the variables marked for watching.
  3. Watches view, which allows watching the current values of the variables you marked for watching.
  4. Outline of Applications, System configurations, Devices, and Resources

Debug Perspective Button

4diac IDE Preferences

Before starting the engineering process of IEC 61499 Applications, you should set the preferences for the 4diac IDE under Window → Preferences → 4diac IDE.

Later in Step 1 - Use 4diac IDE locally, you'll learn more about the preferences. For now it is good to know that there are different preference pages, where various parameter for the 4diac IDE can be set (e.g. connection colors). In order to use the Runtime Launcher of the deployment perspective, the location of the run-time executable files must be set in the properties. Currently two runtime environments are supported:

  1. 4diac Forte: path/forte.exe
  2. Holobloc's FBRT: path/fbrt.jar
4diac IDE Preferences


Selecting an element (e.g. Systems, Devices, Resources, Applications, Function Blocks, ...) and pressing the right mouse button opens the context menu with several menus to manipulate the specific element. Additionally, the following items are provided in the permanent toolbar located below the menu:

  • Hide Events and Hide Data allow hiding either the event or the data connections in the Application Editor Editor
  • Print Icon allows printing the Applications and the Automation Hardware
  • Save Icon allows saving changes from the toolbar or the file (Save or Save All is used), alternative access by pressing Ctrl + S
  • Undo/Redo Icon provides undo and/or redo of last changes
  • Zoom Functionality provides zoom functionality in the toolbar or the menu entries in the context menu of an editor but also by pressing Ctrl while scrolling the mouse wheel
  • Function Block instances or Devices can be deleted pressing DEL or selecting the context menu entry Delete.
  • Instance names of Function Blocks, Resources or Devices can be changed. The instance name field can be edited in the properties view. When a function block is selected, its properties are displayed at the bottom of the window. Additionally, a slow double-click also allows editing the name: First, select the FB by clicking onto it and, then, click on the FB again to edit the instance name.
    change instance name by double-clicking or property view

Where to go from here?

Now that you got an overview of the major parts of 4diac IDE, you can start using it:

Step 1 - Use 4diac IDE Locally

If you want to go back to the Start Here page, we leave you here a fast access:

Where to Start

Go to top