
Simulink Mask Icon Display
조회 수: 8 (최근 30일)
이전 댓글 표시
Is there a way to make the simulink mask icon display measurements from SIMPOWER measurement blocks? Similar to the display simulink block. For example I have a mask which contains power, voltage, and current measurement blocks. I would like to show these results on the icon of the mask. I know I could create an output and connect a display, but I was looking for something more elegant.
댓글 수: 0
채택된 답변
TAB
2012년 1월 20일
You can get some idea from example below.

Here a display (MyOwnDisplay/Subsystem/Display)is used inside the masked subsystem. Run time object of this display is registered with add_exec_event_listener in StartFun callback of model using
lisnh = add_exec_event_listener('MyOwnDisplay/Subsystem/Display',...
'PostOutputs',@disp_listner);
When the simulation is started disp_listner function is called at each update event of Display (which is inside the subsystem). In the disp_listner display inport value is read and converted into string. This string is assigned to 'MaskDisplay' property of masked subsystem.
The code inside disp_listner function is
function disp_listner(dispblk, eventData)
a = sprintf('%s',num2str(dispblk.InputPort(1).Data));
str = ['fprintf(''MyOwnDispValue = ' a ''')'];
set_param('MyOwnDisplay/Subsystem','MaskDisplay',str);
end
댓글 수: 3
TAB
2012년 1월 23일
You can download this example from here
http://www.mathworks.in/matlabcentral/fileexchange/34686-a-custon-display-like-simulink-display-block-using-masked-subsystem
Matt
2013년 12월 10일
Is there a way to do this if the dynamically-masked 'Subsystem' is in a separate library? Especially such that all callbacks can be specified in that library? I'm looking for a way to have all the details contained in the library and not need to be specified in the model that uses the library subsystem.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Author Block Masks에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!