Case study: IoT and ML predictive maintenance for a wind farm
A German energy company operates a 28-turbine onshore wind farm. Unplanned gearbox and generator failures used to drive downtime and emergency repair spend, so the Client employed SumatoSoft to build a predictive maintenance system on top of the existing SCADA. The system pulls signals from existing sensors and runs ML models that flag wear weeks in advance, with confirmed alerts flowing into the planning system via an open API. In the first year of full rollout, unplanned downtime dropped 38%, and fleet availability rose from 96.4% to 97.7%. OPEX fell by €504,000 across the fleet, and the project paid back in 9.8 months.

Project details:
An energy company that operates a 28-turbine onshore wind farm in Germany, with multi-stage gearboxes and high-power generators.
Location: Germany
Industry: Renewable energy
Team size: 7 specialists (system architect/team lead, business analyst/product owner, 2 backend developers, frontend developer, ML engineer, QA engineer)
Project duration: 10 months
Business challenge
The Client wanted high availability and predictable maintenance spend. Turbines sit far apart, and nacelle repairs need a crane and a dedicated crew. Scheduled checks based on operating hours plus standard SCADA alarms missed early wear and damage usually surfaced only after a turbine entered emergency mode. Baseline ran at 165 unplanned downtime hours per turbine per year and 96.4% fleet availability, with €220,000 per emergency gearbox event.
Additional requirements:
- Keep the existing SCADA and communication network
- Avoid replacing turbine controllers and sensors unless needed
- Handle unstable communication on the part of the site
- Ship a clean interface for operations engineers and maintenance planners
Our solution
Working with the Client’s engineers, we layered a predictive maintenance system on top of the current infrastructure. We pulled signals from existing vibration and temperature sensors, then added generator-current readings where they were missing. Each turbine sends data through an IoT gateway to a cloud pipeline that ingests and normalizes the stream. On top of that, ML models learn the per-turbine baseline under varying wind and load conditions, then monitor deviations that signal wear. Validated on six months of held-out data, the models hit 91% precision and 84% recall, with a median lead time of 4 to 6 weeks before the replacement threshold. Confirmed alerts are imported into the Client’s CMMS via an open API, and planners book repairs within maintenance windows.
Monitoring and analytics platform
Engineers can view the turbine status in a web application: a site map, a turbine health summary, and details for each component. Confirmed issues can be converted into tickets in the maintenance planning system via an API, and work can be scheduled in convenient windows.

Additional information about the case
Engineers open the web application and see a fleet map, per-turbine health summary, component signal traces, and risk-level filters. Compared with the previous reactive model, the team detects wear 4 to 6 weeks ahead instead of after emergency mode, and the average gearbox event cost dropped from €220,000 to €70,000 once repairs moved into planned windows.
Additional features:
- Profiles of “normal” component behavior under wind and load
- Anomaly detection across vibration, temperature, generator current, and rotor speed
- Fleet map with per-turbine status and failure-risk filters
- Gateway-side buffering during connection loss, with deferred transmission once the link returns

Business value
Before:
- Gearbox and generator failures occurred without notice; the baseline was 165 unplanned downtime hours per turbine per year.
- Turbines sat idle while the Client lined up crane crews and parts, often waiting on a weather window for days.
- The operations team could not see the component condition between scheduled checks.
- Maintenance ran on operating hours and ignored observed wear.
- Fleet availability stayed at 96.4%, and OPEX held at €82,000 per turbine per year.
After:
- ML alerts arrive 4 to 6 weeks before the replacement threshold, and unplanned downtime is 38% lower (102 hours per turbine).
- Repairs fit low-output and low-wind windows, and emergency crane callouts dropped from 9 per year to 3.
- Engineers open one interface for turbine status and risk levels, with work orders linked to each component.
- Repairs follow observed wear, and OPEX dropped by 22% to €504,000 across the fleet.
- Fleet availability rose to 97.7%, and the €640,000 investment paid back in 9.8 months.







