MATLAB Function block limitations
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I'm trying to implement MATLAB code into a MATLAB function block in Simulink which would need to do the following: parse data/text from a .INI file, extract data points, interpolate the input x of the MATLAB function block based on such data points and output y.
This block should be able to be compiled by the PLC Coder.
I wrote a MATLAB script that could do what I wanted, but as I tried to implement it in a MATLAB function block, I ran into all sorts of problems, from variable-size data, to functions not supported for code generation (already read a lot of documentation regarding these).
I'm wondering if this is the right approach to implement such functionality to a Simulink Model. I was expecting that whichever .m script I wrote to perform such functionality would work seamlessly in the MATLAB Function block. It doesn't seem to be the case. Is this the correct approach or will I perhaps have an easier time implementing this natively in Simulink with block logic, instead of the Function block, for example?
1 Commento
Saeed Ahmadzadeh Mahboobi
il 19 Nov 2020
I have also faced this Problem.
I wanted to even change the data type of the MATLAB-function from double to boolean (logical). So i wrote in the MATLAB-function " x = logical(k) ". but I get the error that changing the data types are not possible. but when i use the block " Convert " from the simulink library, it works !!
Apparently, MATLAB-Function has restrictions that won't let you work with them just like an m-file.
Risposte (1)
Jyotsna Talluri
il 7 Nov 2019
We can implement MATLAB code in simulink by S-Functions as the MATLAB Function block is not supported in all cases
Refer to the below link
Vedere anche
Categorie
Scopri di più su User-Defined Functions in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!