evasmolders edited this page Dec 26, 2016 · 9 revisions


Beckhoff implements an open automation system based on PC control technology. The product range covers industrial PCs, I/O and field bus components, drive technology and automation software. Products that can be used as separate components or integrated into complete and seamless control systems are available for all industries. The Beckhoff "New Automation Technology" philosophy represents universal and open control and automation solutions that are used worldwide in a wide variety of different applications, ranging from CNC-controlled machine tools to intelligent building automation.

For more details see


For communication between the OpenRemote Controller running on a PC or on an eBox, we opted for the HTTP protocol. Communication via ADS is faster, however Beckhoff ​​only implemented this for Windows systems. This is not appropriate for OpenRemote. The SPS has an additional tool to be installed, thus the access via HTTP (port 80).

In our test environment we use the following components:

CX9001-xx01 as basic cpu module
KL2622 as 2 channel relay output 230V 2A
KL2761 as 1 channel universal dimmer 230V 600VA
KL2722 as 2 channel triac output 230V 1VA (for blinder)
KL3202 as 2 channel input terminal PT1000 (RTD) (for measure temperature)

Beckhoff - table1

##Configuration of System

The Beckhoff System will be controlled through the following set up.


Before making the actual configuration in OpenRemote, test the following in a browser with the asp file "or_debug.asp". With this file you can test whether your Beckhoff system responds to the call correctly. Replace the value with the IP address of the remote system below, then open the url "or_debug.asp" in "or.asp". (See below to download both asp files from the OpenRemote website).

*true or

*false or



Beckhoff - debug_set

the result in the browser should be "Complete" and the variable in the Beckhoff system should be the new value.

You can check the value with the get function

Beckhoff - debug_get

The first value in the should be the requested variable and the second the return value which should be "Complete".

Note: you can set or check more then one variable in one call. For example:;.Office_Lamp11:1;.Office_Lamp10:1

the ":" separator separate the variable from value and the the ";" separator separate the variable among themselves

##Importing devices in the Designer - Building Modeler

The Sample describe the creation of a switch. The first step defines the name e.g. "ON". The second step select the protocol "HTTP".

Beckhoff - or_set

URL: for "OFF"
URL: for "ON"
URL: [${param}] for "DIMMER"

HTTP Method: GET

Here you indicate the names of the Beckhoff variables.

ModulName.VariableName e.g. "main.light"

For global variable

.Variable Name

e.g. ".OfficeLight"

  • The point is important!

The Sample describes the creation of a sensor. First step defines the name e.g. "SENSOR". In the second step select the protocol "HTTP".

Beckhoff - or_get


HTTP Method: GET

Polling Interval: 1s e.g. important for sensors!


##Reference Cases

Beckhoff - OfficeVideo_128x82

##See also

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.