HSS brake implementation within a DLL

This forum if for discussing controls. Questions about how to implement controls in FAST are more appropriate to the CAE Tools forum.

Moderator: Bonnie.Jonkman

Quentin.Peron
Posts: 1
Joined: Thu Nov 15, 2018 10:30 am
Organization: SABELLA SAS
Location: France

HSS brake implementation within a DLL

Postby Quentin.Peron » Mon Feb 18, 2019 9:48 am

Hi,

I currently use a Bladed-type DLL file to control the variable speed generator of a turbine (setting VSContrl = 5), which proved successful, and I wish I could use the DLL to control the behavior of the HSS brake (setting HSSBrMode = 5), and using Record 36 in the avrSwap array to trigger the brake.

However, in my case, setting avrSwap(36) to any value between 0 and 1 (included) at a particular time step does not have any effect on the simulation.

1) What is the proper way to use this avrSwap(36) variable ? I couldn't figure it out by myself, as no example is given in any DISCON.f90 file I could find.
I thought this variable was used the same way HSSBrFrac is used (i.e. at each time step, avrSwap(36) = x, x being the fraction of the HSSBrTqF maximum braking torque applied to the HSS), but reading in the BladedInterface.F90 file, I found that an error was returned by subroutine Retrieve_avrSWAP if avrSwap(36) does not equal 0 or 1, which made me confused.

2) If we use avrSwap(36) as HSSBrFrac, does it mean that we can set it back to 0 at a subsequent time step, allowing us to restart the turbine ?

Best regards,

Quentin Péron

Jason.Jonkman
Posts: 4056
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: HSS brake implementation within a DLL

Postby Jason.Jonkman » Mon Feb 18, 2019 5:05 pm

Dear Quentin,

Here are my answers to your questions:

1) Bladed requires that avrSWAP(36) be set to 0 or 1. We've implemented the same requirement in the ServoDyn interface to the Bladed-style DLL controller.

2) Yes, that is certainly possible.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Marvin.Goetzke
Posts: 2
Joined: Fri Apr 26, 2019 7:37 am
Organization: TÜV NORD
Location: Germany

Re: HSS brake implementation within a DLL

Postby Marvin.Goetzke » Mon Apr 29, 2019 3:21 am

Hi,

As far as I get it, the avrSwap(36) only activates or deactivates the brake. But this means the defined braking torque is applied instantly. I tried to use the avrSwap(107) to define a ramp up of the braking torque. But it doesn't worked, as the Record 107 is not read by the subroutine Retrieve_avrSWAP in BladedInterface.f90.

Is there an alternative way to ramp the braking torque, when the brake is activated by the DISCON.dll (HSSBrMode=5)?

Best Regards,
Marvin Goetzke

Jason.Jonkman
Posts: 4056
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: HSS brake implementation within a DLL

Postby Jason.Jonkman » Mon Apr 29, 2019 8:53 am

Dear Marvin,

I'm not sure which version of FAST you are using, but the use of record 107 in routine BladedDLLInterface.f90/Retrieve_avrSWAP() was added in OpenFAST v2.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Marvin.Goetzke
Posts: 2
Joined: Fri Apr 26, 2019 7:37 am
Organization: TÜV NORD
Location: Germany

Re: HSS brake implementation within a DLL

Postby Marvin.Goetzke » Tue Apr 30, 2019 5:46 am

Hi Jason,

Thanks for the quick response. I actually used OpenFAST v1 until now. I will check it with the latest version. Is avrSWAP[107] now always used, when the Brake is activated by the DLL? Or do I need to change avrSWAP[36] as well?

Best Regards,
Marvin Goetzke

Jason.Jonkman
Posts: 4056
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: HSS brake implementation within a DLL

Postby Jason.Jonkman » Tue Apr 30, 2019 6:17 am

Dear Marvin,

You'll need to set both avrSWAP(36) and avrSWAP(107) appropriately.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov


Return to “Controls”

Who is online

Users browsing this forum: No registered users and 0 guests