News
Asix 2026 – new version of SCADA/HMI/MES
The latest edition – Asix 2026 – is another step forward in perfecting the software platform which, by combining stability and maturity with dynamic development, addresses the challenges faced by modern SCADA/HMI/MES systems.
The Asix 2026 platform guarantees full compatibility with dedicated Microsoft Windows operating systems and Microsoft SQL database servers. In the event of changes introduced to these environments, we ensure that version 2026 will be continuously adapted to maintain the highest level of compatibility and operational stability.
The newest version introduces a range of improvements and new functional solutions that increase the platform’s performance and flexibility.
New Calc(..) function – efficient numerical calculations
The new function provides a more effective alternative to the previous expression system in Asix. Until now, users could define simple or complex formulas directly on diagrams or in calculation functions used for reading or writing process variables. This allowed, for example, calculating the value of one variable based on a formula using other process variables.
The previous solution had many advantages, but also some limitations:
-
Too frequent updates. Expressions were recalculated every time any of the components changed. If the formula referred to multiple variables with different refresh rates, this led to multiple unnecessary updates. With hundreds or thousands of such expressions, this could significantly slow down the application.
-
Lengthy and unreadable formulas. When referencing the same variable multiple times, the full structure (e.g., attribute and variable name) had to be repeated each time. This unnecessarily extended expressions and made diagnostics difficult.
To address these issues, the new Calc(..) function was introduced, enabling fast and periodic calculation of complex mathematical expressions. Unlike the previous algorithm, the function is not updated with every component change, but only at declared time intervals – exactly as specified by the user.
The Calc(..) function was designed mainly for use in calculation functions for writing process variables, but it can also be used on diagrams to calculate formulas.
Syntax of Calc(..):
The function is available in three versions, differing in the number of parameters:
-
Calc (variables, expression) -
Calc (variables, expression, period) -
Calc (variables, expression, period, flags)
The period parameter specifies the calculation frequency. If not provided, the default is 1 second. Other notations are possible, e.g. "10s", "15m", "6h", "00:20:30".
Performance of the new mechanism
Tests showed that the mechanism based on the Calc(..) function works much faster than the previous Asix expression system. On an average computer, it was possible to calculate tens of thousands of variables per second, provided they were non-archived virtual variables.
For archived variables, a limitation arises from communication between Asix and the data server. In this case, it is recommended to use Calc(..) for up to about 2000 variables calculated every second. For longer update intervals (e.g., every 30 seconds), a much larger number of variables can be handled.
New operator actions related to Calc(..)
A new feature closely related to the Calc(..) function is the operator action CalculateArchiveData(..). It is used to store in the archive the values calculated by the Calc(..) function, defined in write calculation functions (WCF) for selected process variables or variables provided in a CSV file. Using this action requires the “Completing archival data” permission.
In Asix, process variables using the Calc(..) function can be defined (they must be archived in database types B, C, or X). For such variables, the CalculateArchiveData(..) operator action can be invoked, which retrieves historical data of the Calc(..) input signals for a specified period. For each sample, the result of the Calc(..) formula is computed and then saved in the archive of the target variable. This makes it possible to retroactively calculate values for a selected time range and store them in the archive.
A second operator action, similar to CalculateArchiveData(..), is ArchiveDataCompletingManager. It provides a window-based interface for configuring and parameterizing the operation. This action opens an archival data completion window, where archived variables can be selected and filled with values calculated by the Calc(..) function – whether defined in WCF write functions or directly in the window. Additionally, sets of variables can be saved and reloaded. This action also requires the “CompletingArchivalData” permission. The graphical interface allows operators to independently configure variable sets and methods of completing their data.
Changes in Objects
Chart and Data Chart objects
New properties:
-
for Chart – ability to define “Minimum value offset [%]” and “Maximum value offset [%]” for the axis,
-
for Data Chart – Min and Max offsets [%] for each axis (left, right, bottom, top),
-
new property “Grid on top” (Data Chart).
Text object
New editing capabilities:
-
support for keyboard shortcuts Ctrl+V (text input) and Ctrl+C (copying in any mode),
-
support for Home and End keys for quick cursor movement.
Default configuration:
-
in the XML file, you can specify the default color (TextObjectDefaultColor) and default text (TextObjectDefaultText) for new Text objects.
Diagram and vertex object editing
New editing functions:
-
in vertex object editing: holding Shift allows drawing not only horizontal and vertical segments, but also segments at a 45° angle,
-
object editing menu – new operations added for multiple selected elements: “Set width of first selected” and “Set height of first selected.”
New and Enhanced Communication Capabilities
- Extended support for communication drivers:
-
new transmission modes (e.g., MultiReference in DlmsExt),
-
support for additional data types (including WideString in S7_tcpip),
-
improved performance and reliability of key protocols: OPC UA, Modbus, BACnet,
-
enhanced handling of the IEC60870 protocol in terms of spontaneous transmission, i.e., when a device buffers and sends data to the master system on its own initiative; this has increased the reliability of this communication method, ensuring continuity of recorded data in the archive and detection of data gaps,
-
extension of the Gazmodem protocol with transmission using TCP, also in passive mode, i.e., when a remote device initiates the connection on its own.
-
- Continuous improvement of existing drivers ensures easier integration with various controllers and devices in industrial plants.
Aspad
Archive X
The synchronization algorithms of Archive X have been improved. As a result, the number of required database transactions has been significantly reduced, which accelerated synchronization.
The handling of rounding during block packing in Archive X has been enhanced, resulting in even better data compression.
Archive C
The performance of Archive C has been improved, especially its synchronization.
The efficiency of writing data series has been enhanced, e.g., those sent by drivers that support such series.
A new tool, AspadToolsC, enables more efficient diagnostics and control of historical data from Archive C.
Other improvements
Performance has been improved through enhanced multi-core operation.
A block fill ratio has been added for all archives, which increased the efficiency of synchronization or completion of historical data.
Development of the Web Environment
AsixWeb and accompanying applications have gained support for a redundant web application (failover), as well as new web session variables/parameters (including UserInactivityLimitTime, $WebSessionId, $WebBrowserId, $WebSessionInactivityLimitMinutes).
Improvements to the Integrated Alerter
- It is now possible to define more than one Alerter server instance, which makes it possible to have multiple servers sending Alerter notifications within a multi-station application.
- Two new types of cyclic Alerter schedules have been added: “Days of the week” and “Days of the month”, making it easier to condition the sending of notifications, e.g., to operators working on specific days.
- The cooperation of Alerter with Active Directory Domain users has been improved.
Other
A new 7-day grace period mechanism in PCG licensing ensures that even in the event of a license loss, the application continues to operate without interruption for 7 days. This provides an additional layer of security and guarantees continuity of operation.
New Price List
With the introduction of the new Asix platform version, a new price list applies. The prices of Asix licenses remain unchanged.
However, the AsAlarm license has been withdrawn – its functions are now available free of charge in every server, station, and terminal license.
AsAlarm is a module that enables detailed analysis of information about alarms generated by the monitored object, as well as data concerning the operation of the alarm system. The program complies with the guidelines of the EEMUA (The Engineering Equipment and Materials Users Association) No. 191. It allows evaluation of the correctness of the alarm system structure design in a given application, as well as in-depth static and dynamic analysis of alarms recorded on the object.
Package Development Guarantee
Version 2026 guarantees access to new functions that will be introduced into the package over the next year (from 2025-09-01).
We also recommend participation in the Software Assurance (Asix-SA) program, which entitles you to major software version upgrades (VUPG). The program is valid for one year from the date of license purchase and can be extended for another year by paying 15% of the value of the licenses covered by SA, according to the current price list, within the validity period of SA. In an era of continuous operating system updates and cybersecurity threats, upgrading to versions that continuously adapt to the changing environment—regardless of the development of new functionalities, improvements, and bug fixes—is strongly recommended and advisable. SA can be purchased at the time of buying a new license or when performing a paid version upgrade (VUPG).