Skip to content

Power generation

At a power plant the data already exists — it is inside the automation system. DataPortia reads it over OPC UA, stores it as time series on your own server and produces the production and availability reports from it without anyone copying figures into a spreadsheet. After a fault, the order of events is visible to the millisecond.

Short answer

DataPortia collects a power plant's measurements from an OPC UA server, calculates energy balances and availability figures from them and produces scheduled reports in PDF, CSV or Excel format. The order of events in a fault is preserved as it originally was, to the millisecond. Everything runs on the plant's own server.

Why timestamp precision decides a fault investigation The schematic compares two timelines. On the upper timeline the timestamp is truncated to whole seconds, so three consecutive events land at the same point and their order cannot be deduced. On the lower timeline the same three events are marked to the millisecond, so they are distinct from one another and the order one, two, three can be read off. Second precision three events, same timestamp order cannot be deduced Millisecond precision 1 2 3 order can be read off cause separates from effect schematic · DataPortia keeps the timestamp given by the automation system untruncated
Figure 1 · A truncated timestamp loses the order of events. The original millisecond timestamp preserves it, and only then does the cause of a fault separate from its effects.

What does a power plant typically report?

Energy produced per period, plant availability and utilisation, the ratio of fuel to output, and the duration of faults and stoppages. All of these come from the same measurements the automation system already produces — all that is needed is somewhere for them to be stored for long enough, and a calculation that turns instantaneous values into period totals.

A typical reporting need and how it is met in DataPortia
What is reported Where it comes from The part of DataPortia
Energy produced in a periodPower measurement over timeCalculation point kW → kWh, scheduled report
Availability and utilisationRunning states and stoppagesTime series + alarm and event history
Energy balanceSeveral measurements in parallelCalculation points that adapt to the report's time range
Course of a faultAlarms and eventsOriginal millisecond timestamp, sequence-of-events analysis
Stoppage causesAlarm severity and areaPareto, duration and severity analyses
In detail: how a calculation point adapts to the report's time range

A calculation point is a formula-based derived measurement point. The most common one turns power into energy: kW becomes kWh according to the time range the report covers. The same point therefore produces the daily total in a daily report and the monthly total in a monthly report, with no separate definition.

In practice this removes the most common manual step: nobody works out period totals separately in a spreadsheet, and the method of calculation cannot drift between reports.

Why does timestamp precision decide a fault investigation?

When a plant trips, the question is always the same: what happened first. If the timestamp is truncated to whole seconds, dozens of events land on the same second and the order cannot be deduced. DataPortia preserves the timestamp given by the automation system untruncated and shows it to the millisecond — in exports too. Only then does the cause separate from the effect.

The timestamp is given by the automation system, not created by DataPortia. If the automation clock is wrong, or the server does not provide millisecond precision, it cannot be generated after the fact. Precision is preserved — it is not added.

In detail: what sequence-of-events analysis requires

Events are read from the OPC UA Alarms & Conditions subscription (Part 9), which carries the severity, the area and the original timestamp. Filtering by severity, area and time narrows the view down to the fault being investigated.

Pareto, duration and severity analyses are used to identify recurring faults: they show which alarms repeat most often and which take up the most time. Details on the page Alarms and events.

What happens if the reporting server goes down?

A power plant keeps running even when the reporting system does not — but then a gap appears in the data. DataPortia provides for this on three levels: the OPC UA connection can be given a primary and a backup server, the database is replicated with PostgreSQL streaming replication, and at application level an active–passive pair runs, in which failover takes about 15–30 seconds.

In detail: what the failover time covers and what it requires

It covers the application level only: the instance in standby takes over data acquisition. Database failover depends on the failover tool in use and its settings — the switch is automated either by DataPortia's own DPFC controller, which also runs on Windows, or on Linux by pg_auto_failover or Patroni. Moving over to the backup OPC UA server, in turn, depends on how the automation system itself behaves.

The failover time quoted applies to a situation where the DataPortia process crashes but the machine stays up. If the whole machine dies in a power or network outage, PostgreSQL only notices the dead session through the TCP keepalive mechanism, so the keepalive settings have to be tuned separately. Application-level redundancy also requires an HA add-on licence, which is not included in the trial period.

Gaps can also be filled afterwards: the history import reads the missing period from the OPC UA server's historian and skips the periods already imported. See Redundancy and high availability.

Does the plant's data leave the network?

It does not. DataPortia is on-premises software: data acquisition, the database, reporting and AI analysis all run on the plant's own server. No internet connection is needed at any point. In infrastructure critical to security of supply this is rarely a matter of taste — it is a condition of procurement.

In detail: the AI analysis stays local too

AI analysis runs a local language model with Ollama on the same server. Anomaly detection, forecasts and natural-language questions work without a network connection, and process data is not sent to an outside service. The module is a separate add-on; read more on the page Local AI analysis.

Frequently asked questions

Below are the questions that come up most often in power plant environments: changes to the automation system, importing old data, the format of reports and passing alarms on to the on-call rota. If your plant has a particular requirement that is not covered here, ask directly — I answer myself.

Do changes have to be made to the automation system?

No. DataPortia connects as an OPC UA client to the existing server and reads from it. The control logic is not touched, no software is installed on the automation side, and DataPortia does not write anything to the automation system. What is needed is a network connection to the server and credentials that grant read access to it.

Can old measurements be brought along at commissioning?

Yes, if the automation system's OPC UA server has a historian enabled. The history import reads the past period from there and skips the parts already imported, so the same period can be run again without duplicates. Without a historian, collection starts from the moment of installation.

In what format do the reports come?

PDF, CSV or Excel, scheduled daily, weekly or monthly. The report template defines the logo, cover page, page size and signature blocks, so the printout is exactly what a plant's own document ought to be. The same template works for a manually produced report and a scheduled one alike.

Can alarms be passed to the on-call rota by text message?

In development Text message alarms have not been tested in a production environment, and the feature is not available. Do not plan your on-call arrangements around it. At present alarms are passed out over an HMAC-signed webhook to a receiving system, which handles its own messaging.

Where is DataPortia in use?

At Finnish energy companies. If you want to hear the experience directly from a comparable plant before deciding, ask — I will pass on the contact if the customer agrees. A reference conversation is usually a faster way to judge the fit than a brochure.

How do I test this at my own plant?

Install the trial version on the plant's own server and connect it to a real OPC UA server. The trial lasts 30 days, covers every feature except the HA add-on, and carries no commitment. The first real report shows what a brochure cannot: whether the right points come through and whether the printout is fit to be passed on as it is.

Request a 30-day trial Get in touch