Info

This question is closed. Reopen it to edit or answer.

Simulink: Why is it so hard to have copies of a block?

4 views (last 30 days)
Viren
Viren on 3 Dec 2013
Closed: MATLAB Answer Bot on 20 Aug 2021
I have a library of different components for heat transfer analysis. Two of them are basically copies of each other (the evaporator and condenser) with tiny differences. They use an S Function that is written in matlab.
Now, whenever I have them both in a simulink model at the same time, I get an error that has something to do with simulink being unable to differentiate between the Pressure variable of the two blocks.
I found out that this error is resolved when I use a CMEX function instead of the matlab sFunction. Anyone know why this might be happening?
Also, since I had the CMEX function from a former colleague, I do not know how to convert my matlab sFunction into a C SFunction. I tried using the Matlab Coder, but I got the same error as this guy: http://www.mathworks.com/matlabcentral/answers/53964
I tried using an Fcn block instead (with one input (u) and one output (sys), hoping to replicate sFunction functionality , but simulink threw an error about wrong dimensions.
Any advice? Thanks in advance for any help.
  2 Comments
Ketan
Ketan on 3 Dec 2013
Any chance you can provide the Simulink error messages when
1) The two MATLAB S-functions are used within a model
2) Trying to port over the MATLAB s-function to MATLAB function block
Viren
Viren on 9 Dec 2013
Hi Ketan
Thanks for taking the time to reply. I would provide the error message, but I fear it won't be much use. We use a proprietary 'library' of functions that is used to calculate refrigerant properties. The error comes from that library, although it's origin is likely in Simulink rather than the library itself.

Answers (0)

Community Treasure Hunt

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

Start Hunting!