Well, welcome everybody. Thank you all for coming. Today we're going to be giving a presentation
about open leader RS about demand response and about open area, like we just said. So open
area is a protocol and open source protocol. It stands for open automated demand response.
We're going to get into what that is exactly in the next 50 minutes. We're going to be giving
you some background about the open leader RS project, a primer on demand response. We're
going to be looking at a Dutch adoption of open area, a Dutch use case and we'll be looking
at future developments. We don't have too much time. So if you have questions, we'd love
to answer them, but preferably at the end. But first let us introduce ourselves.
Hi, I'm Max. I'm working for the Dutch software consultancy
critical, specialized in rust and the tech lead of the open leader RS implementation.
And I'm staying on howling and I am a specification writer and software developer at
ALADNL. We're going to be talking a bit about ALADL later on and I would call myself
a power user of open leader RS.
Right. Before we start to talk about demand response, we need to get into grid congestion
a bit. Because this has a lot to do with demand response, we're looking at the grid congestion
map of the Netherlands as you can see it's quite red and red is not good. It means that
there's a capacity shortage. So essentially almost no new connections can be made, existing
runs can't be expanded. And is this a big impact on society? Housing projects are being
put and hold. Businesses can't expand. So the government is looking for ways to solve this
problem. We could just build more transformers, but as you can imagine, this takes time,
it costs money. So we're looking at other solutions to fix this. And it might seem
there's no capacity left at all, but this map doesn't really tell the whole story.
Because if you look at a day-to-day basis, we see something like this. We see a waveform
with two peaks and values all besides them. And this kind of means that there's two peaks
in which lots of people use electricity and in between we've got a lot of space on the grid
left. So if you can make better use of them, we still have some capacity. And we can
do that with demand response programs. demand response is the idea that demands, so customer
appliances like washing machines, heat pumps, what have you can respond to the status of the
grid? So how busy is it on the grid? And demand response program is a grid operator
communicating the sending signals and communicating the status of the grid to consumers.
So you at home or companies, so they can change the way to use electricity. This can
come into form of price signals or capacity limits, but the goal is to limit use during
peak times either way. This benefits the year so because there's more capacity, so they
can get people on the network faster or they have to build less transformers. But as a
customer, it's also nice because electricity in those values is most of the time cheaper
and a lot cleaner.
How does work exist at DSO predicts a peak? They send a signal to the customer and then
a customer appliance preferably automatically shuts down or it shifts its use to another
time of the day. And that works exactly with open areas going to be explained by max.
Yeah, so let's have a quick look and at what open ADR is now, open ADR is a standard to
solve the problems that's time just laid out and it stands for open automated demand response.
It originated back in 2009 from the Lawrence Berkeley National Laboratory and has quickly
been taken over by the newly founded Open ADR Alliance that still governs the spec maintenance
and development. And for us, most interesting are actually the versions 3.0 in 3.1 that
have been released 24, 25, respectively. Because what mainly changed from the 2.0 versions
there is that they switched from XML and XMPP to JSON and HTTP, which makes development a lot
easier as many can imagine, I guess. In general, open ADR is a very high level messaging
protocol, a very generic one that can be used for many use cases and supports many use
cases. And because of that, to have a very specific use case, you typically need to have
an additional so-called profile, which further specifies how exactly to use these messages
and how exactly to behave. And one such profile is the grid where charging that a lot
now is developing and maintaining. And I guess time will talk about that later a bit more
in detail. So how does that work on a high level? We do have two parties involved here,
generally, that is the distribution system operator, basically the grid operator. And in
the case of the grid where charging, we have the charge point operators. In the Open ADR
speech, they run a business logic and a customer logic. And they have so-called virtual
top note, I would just call it a server and a virtual end note, basically the clients of that
whole thing. And communication, at least for the basic use case, happens over two message types
that are so-called events and reports. So the virtual top note, the VTN will send out events
to the customer logic, the customer logic will somehow react to that and it may or may not send
back reports that, for example, tell the DSO on how much energy they have used in the last hour
or what they possibly predict to use in the future, maybe. All these are possible use cases,
how you could use that. So our implementation, open leader RS, is then an implementation of
that standard Open ADR. And that's joined effort by Elatinel and Tfeirhov. And it was born out of
the desire from Tfeirhov to add or to use our expertise that we already gained in other internet
protocols like the network time protocol to create a positive impact into the energy domain as well.
And that way, our ways we're crossing with Elat, that we're also planning to work with Open
ADR. And so we joined our forces to get open leader up and running. And then we also
sponsor this to the Elatinel G organization that now is housing this whole project. So what does
that actually, what what can open leader do? We do have a well-tested Open ADR 3.0 implementation.
All right, that's used in production. It's time we'll talk about that in a second. We just
released a better version of the Open ADR 3.1 implementation. And we are currently
implementing a so-called subscription feature which basically lets you send real-time signals for the
grid. We are working on a CLI that makes debugging and prototyping easier. And good news is
we are already funded for 2026. So maintenance and development is going on.
Short notes on why we're using Rust. Rins are fairly simple. Reliability is the biggest reason
here because for the energy grid we do need a reliable and preferably memory safe and efficient
core code here. Deployment is pretty easy because you just get a single binary that you can just run.
You don't need a job of virtual machine to be set up. You don't need a Python into a return
to the right version. Something like that. And growing Rust adoption across the infrastructure
and embedded systems communities also shows us that we are on the right path here.
Don't get worried. Interoperability is easy. Communication just happens over HTTP as I mentioned.
So virtually any program language can interact with them. Doesn't matter if you're implementing
the business logic, the client logic, whatever you are, you can just interact with your HTTP.
You don't have to mess with the Rust code if you're not familiar with that.
Having said that, Stein will talk about how this actually is in practice where we are
and what's going on in the future. Thank you, Max. So we just talked about open leader
about open ADR, but who's actually using these projects, these protocols.
One project is by the Dutch Research Institute ALAT, which I'm a part of.
It's a Dutch Research Institute funded by the district service operators or the grid operators in
an Netherlands. And the goal of the project or of this use case was making EV charges
aware of the grid specifically. So the idea was that EV charges could be limited during those
feet times to make sure the grid doesn't get overloaded. It's a part of the Dutch National
Charging Infrastructure agenda, which is a government program to oversee the rollouts of EV charges
in an Netherlands. How it works is a CPU pulse for data. It's a simple rest API so they do a
get requests, they get events and they see when their charges are limited and then they apply those
limits via a protocol like OCPP on their charges. As part of the project we also made custom
tooling, made for the DSO so we can check that the events they put on the servers are actually
correct. So currently the use case of mainly public EV charges, charging stations of what we call
slow charges, stations or 11 kilowatts charges. We're also looking to broaden the scope to target
homes via home energy management systems and because OpenADR is very high level, this is not
actually that big of a problem. We're also looking to define a model for grid congestion or multiple
levels so we can make more efficient use of grid resources. A-Latters also created a few open
source projects. We have a Python SDK for the EV inside so if you want to connect to OpenADR
you can do so in Python as well with the grid or charging compliance plugin and we're also making
a grid graphical user interface mainly also for our own pilots and test use case so we can more
easily manage those. There will open source so you can look them up on GitHub. Looking ahead,
A-Latters later off are committed to this project like Mark said the funding is secured for
2026. Please go and talk to us after this talk or reach out to us via Slack. There's a one
monthly technical steering committee meeting of OpenADR if you want to get involved. You can also
create a PR with good first issues, Max has made sure that there's a few of those and if you want
to learn more about OpenADR you can join us at A-Latters for the European Flexibility Initiative
in March which will include a vehicle to rent demo using OpenADR in Anim. That was a presentation
if you have any questions we would be happy to answer them. Thank you.
Right, yes.
So your question was if OpenADR implements the client side of the server side? Do you think
Max can tell us something about that? Yes, so as of now we're mostly focused on the server side,
the VTN. We do also have a VEN client though the thing is the VEN is mostly a very abstract
idea in OpenADR and so it's a very thin layer which mainly is abstracting away the HDP
requests. So we do have sort of rust SDK if you want to say so but most of the work is the server side,
the VTN. Yes, so would I invite? It already is some home appliances or something like that or
is it just some of the future right now and you're only working with New Administration so
so the question was whether it's already in home appliances or at the moment still limited to
public charging and I guess that is something for you. So OpenADR is not really targeting specific
devices so the idea is that it's very high level it will send a signal or kind of a description of
a group of appliances need to do so what you could see in a future is a home energy management system
for instance being able to ingest OpenADR signals and then going to your charger or your heat pump
and then applying limits or the reading price is something like that. Any other questions?
Oh yes. So the question was if this is mainly for Ethernet or Internet user also for over
power lines if it will communicate over power lines so OpenADR is very specifically a rest API so it's
very specifically an Internet protocol because it's so high level. The idea is that if you want to apply
OpenADR to a device you can translate those and then you can use something like ZB may be your matter
or whatever else S2 of course if you want to. Right, yes.
So many times I'm building like a big people. So you play it like that or as a server,
so the question is of what a virtual power plant would use a server or a client in that case that
would be a v-end so it would be a client so you would can be communicating with the grid operator
and then getting signals from their server and then using those, yes, that's up. Ah, too bad.
Right thank you very much.
Thank you.
Just hold it like this.
No, not just talking too.
Don't go too close to the speaker because I'm back and let's stay here to test obviously on this one.
I must have two minutes.
Just kidding.
You're not going to have to have control about the current we have to have control of the temperature so that's what we're doing.
So what we're doing is we're modeling the temperature with that we can say hey we have this much thermal capacity left in our grid so we can increase the current which is allowed to use in the grid.
Then we can use the model as well on this part in the monitoring so we can measure the current used in the grid we model again the temperature so we know the temperatures it had in real time and with that we can do again.
Then again we can see like how warm can still get more or maybe a bit less so this way by having the cycle we are optimizing the use of our grid.
And the better the calculation is the better we are optimizing use of our grid and we need thermal models.
So we said critical assets which assets are we talking about we talk a lot about about transformers because that's one of our largest main models we have at the moment.
But other importance models are as well the bear contactors the switch gear and cables and cables is done actually by one of our sibling teams in the company and Derek is here as well.
So if you want to know a bit more about cables instead of transformers go to Derek.
And this was a bit of theory but how to apply this models to add more clients to our grid we do chain analysis studies.
What you see on this picture is a substation and what you see on this picture is a schematic overview of a substation.
Don't worry you don't have to read it in the standard image but every of assets you can find here is put in a list and we put there behind it it's no one of value given by the manufacturer.
And then you see that one at the assets is limiting all the other assets so the other assets have more capacity than one of the specific assets.
And in this case it's a transformer so for this transformer we are running as well the our thermal model and we see that with current on the substation the thermal model.
Yeah, we have some thermal capacity left so it can be overloaded it can be above 100% and still be good enough it won't decrease so fast.
So we do that and then the whole substation can have more clients.
This way we found already 600 MVA as potential space in our grid and that's more or less a whole city 100,000 households.
But then spread over the whole area of course but to imagine.
Sorry part we've built an LV dashboard low voltage.
And here you see a bit more practice what the thermal model does in blue you see the current so currently we are always measuring the current.
But why are we saying look at the temperature you can see the day around 23rd of May.
There's a very high current but the tent in blue but in pink or red.
It's quite a low value so maybe it was a cool day or something happens why the transformer didn't warm up as fast.
So that day nobody would have had to be good off or whatever because we have thermal capacity left and on other days more on the beginning of this graph.
Around May 4th we have a lower current but unexpectedly a higher temperature.
So that day our transformer decrades a little bit faster and if you add all those degradations up on those days where it goes a little bit faster you expected.
You can have this overview and every green dot is that the transformer decrades as fast as we expected to be.
Red ones are going faster than we expected.
So you can imagine for an management department if this whole area gets red we panic.
You don't want it because then we are this year with preparing everything that we're building so it's counterproductive.
So we have to have it mostly green but a few red are okay because we can manage we have people outside working on it.
So this way we can balance if you are using the grid optimal.
And now harm is going to tell you a bit more about the model.
Yeah.
Thank you.
So on to the transformer model itself so how does it work?
Well for our model we use the loading guide described by the IEC.
And in the IEC they give a wide variety of international standards and one of the standards they give is about the thermal behavior of transformers.
And we really took this standard and digitalized it into Python code and used that as the basis of our model.
And the goal really is to predict the whole spot temperature.
Because the whole spot temperature will be the temperature at the as the name suggests at the whole spot inside the transformer.
And this will really, yeah, limit the transformer and prevent it from processing high loads.
But mostly this will be located right above the windings deep inside a transformer.
And we can't really access easily access it.
So we can put a thermal meter there to verify how hard it gets.
And to solve this the model also predicts the top oil temperature.
And again at the name suggests this is the temperature at the top of the oil inside a transformer.
This actually is really accessible. You can put a thermal meter there and you can measure it and you can verify where the model predicts the reality.
And these temperatures are linked with each other and both predicted by the model.
And to predict them the user needs to specify some inputs.
You need to provide a load profile.
So how much current is flowing through the transformer.
We also need the ambient temperature profile.
You can imagine that in a summer transformer is generally warmer compared to the wind when it's cold outside.
And we need to have some transformers specific specifications.
So we know that there's a wide variety of transformers and they all have their own thermal behavior.
And if you want to make specific calculations to those transformers, we need some input from the user.
And to make this easier we created general classes inside our model for general transformers that we know are out there.
So for example the large power transformers or the smaller distribution transformers.
And in those classes we incorporate that most of the logic specific to those type of transformers.
So the user needs to specify as little as possible.
So this is the idea of the model.
But of course we have to verify where that is actually correct.
Where do we predict the reality?
And we can do that by comparing our model with measurements.
And we actually see that it models it quite well.
It most ranges.
It follows the reality quite good.
But we have some issues.
And maybe the biggest one is that we lack data during high loads.
So as Imka already mentioned the greatest fool.
But we don't really see that at a temperature.
And that's a problem because if you want to push the transformers.
We need to know what actually happens when we push them and when we go over the limits.
So this is it is an issue.
And still is an issue.
And we thought how could we solve this?
How could we contact other people and tackle this problem?
Well, we knew that we were not the only ones.
The whole of the Netherlands was full.
So we started collaborating with the DSOs and the DSOs in the Netherlands.
And we shared data with each other.
But there were more people out there who had the problem.
Other countries or companies who had their own transformers.
Or maybe people we didn't even think about.
So we thought why not share it with the world.
And make transformers a model and open source package.
And we really wanted to create a community where we could tackle this together.
And that's what we did.
We hosted a release party where we invited all sorts of people who had an opinion about the model.
We had data to share with us or maybe you only had a problem that it could be solved by the model.
But before we actually could go open source, we had to modify the code base a bit.
We of course had to push or package to pipe.
So developers could use it in their own project.
But we also had to add a lot of documentation.
And we did this with MK docs.
So we wrote our documentation in Markdown language.
And we hosted this documentation on GitHub pages.
And now we have our very own website.
Yeah, describing all things concerning the model.
And as you can see, for example, the theoretical documentation is shown here.
So here you can find a which formula that I used in the model.
Which types of transformers can be calculated with the model.
But we also have a lot of examples.
So all the features we added to the model are shown there.
And you can find why you should want to use them.
And how we can use them.
And this is all to make it the user as easy as possible to use the model.
But we do not only want users.
We would also like to get your ID and get contribute to the model.
And we did this by also showing how the model is made.
So which decisions made for the code and where did we decide to make classes.
For example.
And we automated all of tests.
So we have run by test.
When a new contributor opens a new feature request.
The by test are run and we check the code quality is still matching.
The one we want is it's still good enough for us.
And it's the security still good.
And this gave some success stories.
So stating came to us and they wanted to model the
Horsepal temperature based on measurements to top oil.
Yeah, to measurements of the top oil temperature.
So they incorporated it themselves.
And next is exchange data with us to help us verify.
Yeah, where does the model work and where might it need some improvements.
That tenant.
They had different types of transformers compared to us.
They had their transformers which were actively cooled.
So ventilators were blowing air through it.
And this could turn on and off.
And we saw that this resulted in different thermal behavior.
And tenant better the feature to also be able to.
To model their transformers with our model or with our shared model, actually.
And others gave a lot of feedback and tips on how we could improve the model.
Which directions we still could explore.
So the going open source really brought us a lot.
And maybe yeah or take away messages if you have a work at a company.
Which as transformers or you know use guys.
Give data and try and see how much potential awaits you.
Yeah.
Questions.
Yeah.
And this is our get update.
Yeah.
What happens if transformer gets to warm.
Around the winding there's a paper layer for insulation.
And the oil protects the paper.
But when the oil gets to warm the the chemical of the paper will change.
And the more it happens the faster the the transformer will heat up next time.
So once it goes around the tipping point, the it will be worse when it hits up.
Yeah.
So we have to stay away from that tipping point.
Yeah.
That's well one of the regular.
Oh, can you change the oil?
Yeah.
It's one of the things which is done with maintenance.
And they are now experimenting as well.
If you can add things to the oil.
So it will be even less.
How do you go it in English?
It will heat up less.
So the oil is even more delayed.
Yeah.
To be honest, I don't know that much of the transformers.
But I think yeah, there's something done with maintenance where they look at the oil.
So I don't know if it's really oil change or if it's an oil filtering.
But they inspect the oil every six to seven years.
And then they will do something about it if they find something.
Yeah.
If the oil is actively circulated through the system.
I don't think so.
I think it's one of the types you can have.
But we have only onan and onan means it's just a big tank of oil.
And onan is with air ventilation around it.
The oil is natural.
The onan stands for oil natural.
So the oil is not pushed through it.
It's just floating there.
Yeah.
If the outside number is so elemental and the H&J should just work on it.
And if yes, then I would expect that the more extend they are,
the more I open my zone.
It's important for us.
Yeah.
The question was whether the ambient temperature is really relevant.
If I understand you correctly.
Yeah.
So what we see is that the effect of the ambient temperature is quite linear.
So if the ambient temperature is 10 degrees higher, then the transformer will also get 10 degrees higher.
So I would say it's quite relevant.
More than the ambient temperature or maybe predicting it.
If you want to know what happens to more out to a transformer is also quite relevant.
Yeah.
And you've got any feedback from the people doing the norms.
Because basically you're enforcing the calculation based on the standards.
So I would do the interface with that.
Because at some point, does it start to become independent?
We know that all the other repeated question.
Yeah.
So if you had a reaction of the IEC because we use the standard.
No, we have not.
But we know that all the TSO standards and all the other DSOs are using the same standard as well.
So I think it's widely used in the market.
Yeah.
I see IEC happy that you are opening the calculation of the standard because at some point,
if it's open-source and everyone can access it.
And maybe you don't need to text anymore because you are like the calculation.
Yeah.
So if the IEC is happy, we don't know.
Because we didn't have contact with them.
But it's just a very, yeah, I didn't study science.
But it's a, I have a few and the other team members that it's a very normal heat formula.
So it's not rocket science.
So it's a.
So we did contact them before we went open-source to sort of.
As far as I know we didn't.
Oh, yeah.
We have to check.
But I think we didn't know.
Yeah.
I know.
And when did you get your load profile from?
I also think, yeah, we have to do things like this.
Yeah.
So temperature profiles.
We are very afraid of data from.
So temperature profiles.
We have to have the economy, which is a Dutch weather.
Service.
So to say, so they have 20 around 20 stations in the Netherlands.
So we take the temperature of them.
And current is measured within our company.
So on high voltage, everything is measured and on low voltage,
I think, then to 20% I would say, is measured.
So we can interpolate of that.
Can we get your vehicle?
There is a part of it.
Open data on our website.
So I think around 12 to 15 substations have been published online.
So there is a group working on it.
Yeah.
What means MPA?
That's how we express how much capacity a station has.
I don't know.
We tried to make it a bit more understandable by saying 600 MBA equals 100,000 households.
So it's the energy provision for a very large, quite a large city.
Yeah.
I'm sorry.
I cannot hear it properly.
If you want to open up more models.
Yes.
We are now currently working on the switch care model.
And we very much have the ambition.
Hopefully this year to have that open source as well.
Yeah.
Definitely.
Because it really, the discussion we have mainly for now with all the DSOs is worth it.
Because we are just a team of six people.
And when we have all the 12 people within the company thinking about it.
And then we triple four time it.
It gives you a very valuable discussion.
So yes.
Definitely.
Yeah.
Yes.
If we have a target capacity for our transformer.
Yeah.
So the question was whether we looked at a specific transformer or at the complete range.
Insighted.
Yeah.
The idea is to look at the complete range.
So to look at the small ones and look at the really big ones.
But we are a DSO.
So the extremely large ones.
I don't know if we also incorporated them.
No.
We worked last year for the first time on a three winding.
So that's one of the larger ones.
And our one of our biggest one is 100 MVA.
And we did a test with that one.
But that is by far our biggest.
So I think tenet has even larger ones.
Yeah.
But you can model every type of transformer with our model.
It depends on the transformer parameters you fill in.
So now we added the three winding one.
That had a bit of a model change.
But after that you can model everything.
If you know your parameters, which is 9 out of 10 times in the fed test, which is delivered
which is a transformer.
Yeah.
Because the vendor for a transformer I entrusted by what you are doing all of them
or to the team that you better end to the end.
Yeah.
If the vendor is looking at this model as well, mainly related to the means
I'm between failures.
We they know about it.
Especially I talked in person with a couple of people for switch gear.
And they are interested.
But as well, they say this is 100%.
So that's what they can guarantee.
And they have the standards as well of course.
So I think for the thought testing, etc.
They are using already this formula as well.
So they are familiar with it.
What did I want to say about it?
Yeah.
So they know.
Yeah.
And what we noticed is that the little bit all the ones, because we were over-dimensioning
by design in the past a bit more than we are doing now.
And technique has become a bit more precise.
So we see that all their transformer can be overheated more or not overheated.
Yeah, they can apply high percentage.
And the newer ones have to stay a bit lower because we know more so we are more precise.
So there's a difference in that.
Yeah.
Time's up.
Thank you a lot.
Thank you.