Siemens has a network hundreds of wind power generators across wind farm. for better control and optimization. Providing consistent power generation in fast varying wind conditions can be challenging. Being able to have generator-to-generator communication ensuresrapid response to wind gusts and
optimal turbine settings for changing wind conditions, and this is why Samsung chose middleware software to accomlish it.
Even though the core concept is simple – wind turbines spin blades to generate power-, the process is not simple.Controlling the
turbine is a sophisticated job requiring many cooperating processors closing high-speed loops and implementing intelligent monitoring and optimization algorithms. The real challenge is integrating these turbines so that they work together. Wind hys dynamic, and things get challenging when a storm goes through the wind farm. Reliability and performance are crucial, and this is where I got the chance to work with them.

I worked with Siemens Wind Power engineers to deploy, debug and quickly fix issues to monitor and control wind farm arrays with up to 500 wind turbines. Ported DDS real-time messaging to Siemens Towers OS and helped them, based in QNX. This allowed Siemens to remotely monitor and troubleshoot the wind farm’s operations.
While running middlewate on each turbine, the software was crasing though, and the turbines could not do what they where supposed to. Without giving too much details, what I can say is that the issue was due to the sevetal threads using certain APIs that where not thread-safe in some implementations of POSIX, specifically QNX on this case. Once I was able to debug this, I proposed a fix, tested it and deployed a path to them.
You can find a bit more about this project on this public release.