Mervis is our main officially supported fully-fledged software platform for control of UniPi control units.
Mervis is a software platform for control of UniPi programmable controllers. Together with EVOK, it is our officially supported software platform. Compared to EVOK (which is rather a basic driver providing access to different interfaces) Mervis is a set of tools and applications for advanced regulation and automation. Mervis is developed and allows programming methods in accordance with IEC 61131-3. It is compatible with UniPi v1.1, UniPi Neuron and UniPi Axon control units and their extensions. License for Mervis can be bought in our store.
As part of the package of UniPi 1.1/1.1 Lite Complete set and all models of Unipi Neuron and UniPi Axon controllers, a license request is shipped. The license is not required to run Mervis; Mervis IDE programming interface can be downloaded for free on downloads.unipi.technology. The license is required only for connection to the proxy server and the option to save data on Mervis DB online database. The database is not required but represents one of the best available tools for data storage, monitoring and archiving for later evaluation. The license request can be also purchased separately.
- Control software - in form of an image which is to be burned to SD card in the control unit
- Mervis IDE - for control program development and debugging; only for Windows OS
- Mervis HMI - this editor allows you to create graphical user interface / HMI (Human Machine Interface); only for Windows OS
- Mervis RT - runtime environment for program running and testing (also possible to use for external control of the unit); only for Windows OS
- Data backup - each license includes the possibility of free data backup to cloud database from 10 connected data points
- SCADA interface - online SCADA interface for remote control and overview (currently in development)
|Controller unit variable browser in Mervis IDE||FBD programming|
How to start?
The following part lists shortly described steps to give you a better idea of how to start using Mervis.
What will you need
If you plan to control your system with UniPi Neuron, license for Mervis is included for free with the product. If you plan to use UniPi v1.1, it is necessary to buy a license. In the case of using either of the two, you will need an SD card for Mervis OS image and a power supply. UniPi v1.1 is powered with 5V power source while Neuron uses 24V power sources (more information about power supplies for Neuron read here). In addition, UniPi v1.1 needs Raspberry Pi. You may need also digital thermometers or magnetic contacts.
Set up procedure
- Download manual, Mervis image, and installation program for development environment Mervis IDE. Install the IDE, burn the image to SD card and insert it into the control unit, which you connect to power supply and local network. Connect all the necessary components you want to control.
- In Mervis IDE attach control unit and configure its inputs, outputs and interfaces. Upload the configuration to the control unit.
- Via graphical editor, you can easily make a control program by connecting input and output variables and prepared function blocks.
- Upload the program to the control unit.
- In the next phase, you will begin to adjust your program according to your needs. With Mervis HMI editor you can draw a simple web interface for easy control of your system through a web page.
This is a common procedure for how to set up and use Mervis in combination with the control unit. For a better idea how to use Mervis, visit the Smart Home article.
IEC 61131-3 and programming methods
IEC 61131-3 is a part of the international standard for programmable logic controllers (PLC), which describes the software architecture and programming languages used for their control. For user already knowing the programming methods of this standard, it is easier to work with an unknown platform developed in accordance with this standard. Mervis is in accordance with this standard and allows two of the defined programming methods.
Function Block Diagram is a programming method, which allows easy graphical programming via pre-programmed function blocks. Those blocks are to be interconnected with other blocks or input/output variables. Each function block describes the relation between the input and output variable. It is possible to either import FB or make your own.
ST (Structured text) is a standardized high-level programming language. It supports basic programming clauses and functions (IF - THEN - ELSE, REPEAT - UNTIL, SQRT(), SIN(), etc.). Function blocks are written in this language. Via ST it is also possible to create more complex control programs.
Function block library
Mervis IDE includes a library of function blocks for:
- mathematical operations (addition, division, average, absolute value, modulus, maximum, minimum, ...)
- logical operations (AND, OR, NOT, XOR)
- pulse counting, pulse generating, time functions
- advanced algorithms (Hysteresis, PID regulation, Equithermal regulation)
- communication via e-mail, SMS
Each of the function blocks is described in detail in the integrated manual.
In hysteresis, the user sets the optimal temperature of the room (typically 21°C) and connects digital thermometer measuring real temperature in the room. Function block output is a signal for switching on the relay connected to the boiler. The function then continuously turns on the boiler when a certain minimum below optimal temperature is reached and turns boiler off once the temperature reaches the optimum.
Equitherm temperature regulation in the room lies in setting the temperature of heating water (by regulation of the heat source) according to outdoor temperature. When there is a lower temperature outdoors it is required the higher temperature of heating water in order to balance the supplied heat so that the temperature in the room remains constant. Function block inputs are indoor temperature, outdoor temperature and the temperature of heating water. The output is a signal to switch the relay controlling the boiler.
Human Machine Interface
It is possible to make a simple graphical user interface - HMI - for access to basic functions. This interface is accessed via a web browser.
|Detail of an HMI editor||An example of a finished HMI|
Mervis also allows backup for data measured from connected data points of the project to the cloud database. Under a data point, you may imagine for example a digital input or a 1-Wire thermometer, the value of which is periodically locally stored and historical data is backed up to the database. It is possible to remotely access and views the database via a web browser.
Web database browser
|Bar chart||Carpet chart showing the outdoor temperature progress over a year||Line chart|
Mervis allows free backup for 10 data points per license. For backup of more data points, you have to pay a tariff. Login details of database browser and details for connecting device to the database via IDE are written in the license. In the case of Mervis order along with physical goods, the paper license will be enclosed in the package. In case of ordering the Mervis license alone, it will be sent to you via email.
Currently in development
SCADA (Supervisory Control And Data Acquisition) is a system for control and supervision. It is possible to access Mervis SCADA via an online user interface and control all connected devices remotely. In the user interface, you can view the project diagram which provides system real-time control and overview all in one place. You can also view a data point table overview, which allows you to select data points and then display their values by a certain period of time in a graph. There are several possible graph types and selected data can be exported to CSV.
|Project schema - statistical overview||Visual project schema||Visual project schema - boiler room|
Our partsUniPi 1.1
Less than 5 items in stock
UniPi 1.1 Lite
Less than 20 items in stock
UniPi Extension xS10
More than 20 items in stock
Unipi Axon S105
Less than 20 items in stock