Licensing policy
With the release of version 3 of the REXYGEN system, REX Controls s.r.o. has introduced a new licensing system. We are moving away from the previous model, where licences were tied to specific hardware based on performance, to a more equitable system based on the complexity of the target application. From this version on, it no longer matters whether the application runs on a small and inexpensive computer (e.g., Raspberry Pi), a supported PLC family, an industrial PC, or a high-performance server. The type of processor or operating system (Linux, Windows, or no OS) is also irrelevant.
Flexible Licensing
You do not need to worry about additional licence costs when expanding your project. The new licensing system allows upgrades between different licence levels, with the upgrade price reflecting the difference in licence costs. This makes ongoing upgrades possible without extra fees.
Control System Components
The REXYGEN-based control system consists of the following components:
- Development Environment – REXYGEN Studio
- Control System Device/Platform – The target computer or PLC supported by REXYGEN
- Runtime Environment Installation on hardware – RexCore (REXYGEN runtime core)
- Sensors and Actuators – Physical devices communicating with REXYGEN using drivers
- Additional services – HMI, data collection to database or cloud, etc.
- REXYGEN System Licence
REXYGEN Studio
REXYGEN Studio is an advanced interactive development environment for creating control applications (projects) in the REXYGEN system, uploading them to target hardware, monitoring application execution, and making necessary adjustments and debugging. In the current version, REXYGEN Studio is available for free for application development on Windows and Linux. You can download REXYGEN Studio, along with other tools and application examples, from the REX Controls s.r.o. server.
Control System Device
When choosing the appropriate control system hardware, the following criteria are important:
- Availability of a compiled REXYGEN runtime for the processor in the control unit. If unavailable, such hardware cannot yet be used with REXYGEN.
- Availability of I/O drivers in REXYGEN for the physical inputs and outputs of the hardware, or the possibility of connecting remote inputs/outputs via a communication link with an existing driver.
- Sufficient computational power of the hardware for the intended application.
More information about available drivers can be found in the section “Input and Output Drivers”.
RexCore - REXYGEN Runtime
For the selected target device, download the appropriate runtime from REX Controls s.r.o. server. Install it according to the instructions in the "Getting Started..." guide. You can test the correct function of the runtime using installation examples with the free "DEMO" licence, which limits runtime to 2 hours per session.
Licensing groups
After installing the RexCore on your target device, you must activate a licence on your device. Please refer to the Licensing Manual for instructions. To verify the runtime's functionality, you can utilise the free "DEMO" licence. The "DEMO" licence allows runtime operation for up to 2 hours per session.
To run the REXYGEN system permanently on the target device, a permanent licence is required. In terms of licensing, there are several versions of the RexCore runtime module that provide maximum flexibility for individual projects. The licence cost depends on the size and complexity of the developed application, determined by the following factors used in the application (specific REXYGEN project):
- Function blocks
- Input/output drivers
- Application complexity
- Visualization and operator control (Human-Machine Interface, HMI) complexity
- Other tools
These factors are explained in more detail in the following paragraphs. A detailed description of individual blocks, drivers, HMI creation, and other tools can be found in the REXYGEN system user documentation. During project compilation, all relevant factors are displayed in the compilation window, including the list of required licences for the permanent operation of the application.
Function Blocks
The extensive library of function blocks is divided into several licence groups:
- STANDARD – common (mostly simple) function blocks available in all licence variants,
- ADVANCED – advanced (mostly more complex) function blocks available in all licence variants except the Starter licence,
- REXLANG – a programmable block in a language similar to C,
- PYTHON – a programmable block in the Python language.
Additional groups of function blocks have separate licences and function as optional libraries that can be purchased separately for Profi S, M, and L licences:
- AUTOTUNING – controllers with automatic parameter tuning,
- MOTION CONTROL – single-axis and multi-axis motion control,
- COORDINATED MOTION – coordinated motion control (e.g., for robots),
- MATRIX – advanced matrix function blocks based on orthogonal transformations,
- OPTIM – optimization algorithms and solvers.
The availability of individual groups of function blocks depends on the chosen licence. Table at the bottom of the page lists the function block groups and their availability in the licence variants.
Input and Output Drivers
Like function blocks, drivers are divided into several licence groups:
- Basic – drivers for inputs and outputs native to the given hardware, direct input and output drivers (if available on given HW), and a 1Wire driver using OWFS,
- IIoT – drivers for the Industrial Internet of Things (IIoT): MQTT, OPC UA driver, Database access (DbDrv, PqDrv),
- Fieldbus – Modbus RTU/TCP (master and slave), CAN/CANopen,
- Ethernet – EtherCAT, Siemens S7.
Project Complexity
- Number of I/Os – Total number of inputs and outputs in the project.
- Number of Blocks – Total number of function blocks in the project.
- Multicore – Running on multiple processor cores.
Visualization and Operator Control (Human-Machine Interface, HMI) Complexity
In version 3 of the REXYGEN system, large visualizations are subject to fees. The complexity is assessed according to the so-called tags. Visualizations with up to 128 tags are free. Tags are counted as follows:
- Each utilized value (input or display) counts as 1 tag.
- Each allocated array element is 1 tag. E.g. an array allocated to 100 elements with dimensions of 3x4 counts as 100 tags. If such an array will permanently have dimensions of 3x4, it is sufficient that it be allocated to 12 elements.
- Each signal displayed in a trend counts as 10 tags.
If the number of tags exceeds the visualization licence limit, this is visibly indicated, but the visualization continues to work. Purchasing the necessary licence removes this indication.
Other Tools
The REXYGEN system also includes other tools that are free for small-scale use. For extensive use, a separate licence must be purchased:
- High-performance OPC UA server
- RexArcView – Archive data viewer.