2011-04-07 2 views
0

Simulink에서 블록의 inport 및 outport 핸들을 문제가되는 것으로 어떻게 열거합니까? 그 크기가 지정된 포트의 수와 동일한 두 개의 차원 배열을 반환Simulink에서 블록의 inport 및 outports를 열거하십시오.

inports = get_param(sfunc, 'Inport') 
outports = get_param(sfunc, 'Outport') 

: 지금까지 나는 'sfunc가'이미 블록 핸들로 설정 한 다음를 사용하여 시도했다. 하지만 다음을 실행하면 ('inports'또는 'outports')

get_param(inports, 'Handle') 

은 배열이 벡터 여야한다고 나와 있습니다. 내가 올바른 방향으로가는거야? 그렇다면 배열을 벡터로 변환하려면 어떻게해야합니까? 본질적으로 내가하려고하는 것은 현재 블록을 새로운 것으로 교체 한 후에 링크 할 수 있도록 블록에 연결된 라인 핸들을 얻는 것입니다. 이것에 대한 도움을 주시면 감사하겠습니다.

답변

2

매개 변수 PortHandles를 사용하면 Inport, Outport, EnablePort 등과 같은 필드가있는 구조가됩니다. Inport 및 Outport 필드는 포트 수의 크기 인 핸들 배열입니다.

>> ph = get_param(sfunc, 'PortHandles') 
>> inportHandles = ph.Inport; 
% Get the 2nd input port handle 
>> input_2 = inportHandles(2); 
>> line = get_param(input_2, 'Line'); 
관련 문제