Linking Simulink to Bladed

19 vues (au cours des 30 derniers jours)
Gerrit
Gerrit le 11 Oct 2011
Commenté : zhiyu le 20 Sep 2024
I have a wind turbine (WT) model in the Bladed package (v3.85). I need to link a controller, which is developed in Simulink (R2007b or newer), to this Bladed WT model. There seem to be two possible ways of doing this:
1. Generate C code from Simulink, and modify or 'wrap' that to create a DLL file, which can then be called from the Bladed program. This would (appear to) require Simulink Coder to generate the C code.
2. Write a C-based DLL that links Bladed and Simulink in co-simulation.
Does anyone have any experience with either form of link between Simulink and Bladed, and any recommendations about what the best (only?) way is? Option 1 seems the usual recommended way (by Bladed), but from what I have heard, C code generated by SL Coder still needs quite some manual modification before it can be used to create the DLL.
If you know of any commercial tools that perform option 1 and/or 2, it would help to have some (range of) prices.
  1 commentaire
zhiyu
zhiyu le 5 Sep 2024
Hello dear Gerrit, now I'm working on this project while running into this problem, I don't know if you can share this part of the experience, I would be very grateful

Connectez-vous pour commenter.

Réponse acceptée

Kaustubha Govind
Kaustubha Govind le 11 Oct 2011
I don't have experience with Bladed, but I do agree that option#1 is more straight-forward and likely to cause fewer issues (like worries about synchronizing the two softwares in case of option#2). It's fairly straightforward to create a DLL from a Simulink model if you have a license for Embedded Coder (formerly, Real-Time Workshop Embedded Coder): Generating a Shared Library Version of Your Model Code
  4 commentaires
Kaustubha Govind
Kaustubha Govind le 17 Oct 2011
Gerrit asks:
Are you able to say anything about how much we could do with Simulink Coder alone, relative to your suggestion of adding Embedded Coder?
In other words, would it help us (to create a DLL file for option 1 of my original question) to use Simulink Coder, without Embedded Coder? Or would the C code generated from Simulink Coder still need too much modification to be useful?
Kaustubha Govind
Kaustubha Govind le 17 Oct 2011
Gerrit: I think if you have a fair amount of experience with C/C++, it should not be very difficult to create a DLL wrapper around the code generated using Simulink Coder. The one thing to keep in mind is that the code generated for Simulink Coder is not as efficient as from Embedded Coder. So if performance is not of utmost importance, I think it's worth spending some time writing your own DLL wrapper for code from Simulink Coder.

Connectez-vous pour commenter.

Plus de réponses (2)

Ivo Houtzager
Ivo Houtzager le 7 Juil 2020
There is a Simulink controller design example for GH Bladed and OpenFAST in github, see
  1 commentaire
zhiyu
zhiyu le 20 Sep 2024
That only applies to lower versions of bladed

Connectez-vous pour commenter.


zhiyu
zhiyu le 5 Sep 2024
Hello dear Gerrit, now I'm working on this project while running into this problem, I don't know if you can share this part of the experience, I would be very grateful
  1 commentaire
Gerrit
Gerrit le 10 Sep 2024
Hello Zhiyu, it is 13 years ago now that I did this work (and haven't repeated it since then) and I cannot remember exactly what we did. The memory I have is that we partnered with another company who generated the DLL(s) for us, using their Simulink Coder (and maybe Embedded Coder) licence. It was quite cumbersome that way; if we made a mistake in our Simulink controller model, or it needed re-tuning, we wouldn't find out until the resulting DLL came back to us. We'd then have to make our modifications in our Simulink model and re-send it, etc. Not a procedure I can recommend, but we were limited by the project budget and the customer not wanting us to spend learning-curve time on Coder
Good luck with your work, Gerrit..

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink Coder dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by