주요 콘텐츠

open_system

R2026b

모델, 라이브러리, 서브시스템 또는 블록 대화 상자 열기

설명

open_system(obj)는 지정된 모델, 라이브러리, 서브시스템, 블록 파라미터 대화 상자 또는 마스크 대화 상자를 열거나, 지정된 OpenFcn 콜백 함수를 실행합니다.

참고

보안 관련 고려 사항: open_system을 사용하여 모델을 열기 전에 모델의 전송자 또는 작성자를 신뢰하는지 확인하십시오. 알 수 없는 출처의 모델에는 안전하지 않은 콘텐츠가 포함되어 있을 수 있습니다. 알 수 없는 출처에는 원격 리포지토리에서 복제하거나 다운로드하거나 아카이브로 받은 모델이 포함됩니다.

참조된 모델을 포함하여 라이브러리 및 모델은 새 창에 열립니다. 참조된 모델을 모델 계층 구조의 컨텍스트에서 열려면 대신 open 함수를 Simulink.BlockPath 객체와 함께 사용하십시오.

다음 동작을 수행하려면 함수 인수에 대응되는 블록을 지정하십시오.

  • OpenFcn 콜백 함수 실행.

  • 같은 창의 새 탭에서 서브시스템 열기.

  • 마스크 대화 상자 열기.

  • 블록 파라미터 대화 상자 열기.

지정된 블록을 포함하는 모델이나 라이브러리를 불러와야 합니다. 함수는 다음 동작 중 해당하는 첫 번째 동작을 수행합니다.

  1. 블록에 OpenFcn 콜백 함수가 있는 경우 그 함수를 실행합니다.

  2. 블록에 마스크가 있는 경우 마스크 대화 상자를 엽니다.

  3. 블록이 Subsystem 블록이 아닌 경우 블록 파라미터 대화 상자를 엽니다.

    블록이 Subsystem 블록이면 서브시스템을 같은 창의 새 탭에서 엽니다. 블록 파라미터 대화 상자를 열지 않습니다.

예를 들어 블록에 OpenFcn 콜백 함수는 없지만 마스크가 있는 경우 마스크 대화 상자가 열립니다.

2개 이상의 입력 인수를 지정하여 디폴트 함수 동작을 재정의할 수 있습니다. 인수의 유효한 조합은 다음과 같습니다.

  • 새 창 또는 새 탭에서 블록의 마스크 내부를 탐색하려면 Force를 Tab 또는 Window와 함께 사용하십시오.

  • 새 탭 또는 새 창에서 Variant Subsystem 블록의 활성 선택지를 열려면 ActiveChoice를 Tab 또는 Window와 함께 사용하십시오. 인수 중 하나가 ActiveChoice이면, Tab 또는 Window와 쌍을 이루는 또 다른 인수로 Force를 전달함으로써 마스크 처리된 활성 선택지 내부의 내용을 엽니다.

다음과 같은 입력 인수의 조합은 오류를 발생시킵니다.

  • parameter, mask, OpenFcn 인수를 ActiveChoice를 제외한 다른 인수와 함께 지정하는 경우

  • Variant Subsystem 블록 이외의 다른 블록에 ActiveChoice를 지정하는 경우

  • force를 ActiveChoice, window, tab 이외의 다른 인수와 함께 지정하는 경우

  • window와 tab을 모두 인수로 지정하는 경우.

  • loadonly를 다른 인수와 함께 지정하는 경우

예제

open_system(sys,"loadonly")는 Simulink® 편집기를 열지 않고 특정 모델이나 라이브러리를 불러옵니다. 이 구문을 사용하는 것은 load_system 함수를 호출하는 것과 동일합니다.

예제

open_system(subsys,"window")는 지정된 서브시스템을 새 Simulink 편집기 창에서 엽니다.

예제

open_system(subsys,"tab")은 서브시스템을 같은 Simulink 편집기 창의 새 탭에서 엽니다.

예제

open_system(block,"mask")는 지정된 블록에 대한 마스크 대화 상자를 엽니다.

open_system(block,"force")는 마스크 처리된 블록이나 서브시스템의 마스크 내부를 탐색합니다. 이 구문은 마스크 내부의 블록에 대한 블록 파라미터 대화 상자를 열거나, 마스크 처리된 서브시스템을 Simulink 편집기의 새 탭에서 엽니다. 이 구문 사용은 마스크 내부 탐색 메뉴 항목을 사용하는 것과 동일합니다.

예제

open_system(block,"force","window") 는 마스크 처리된 서브시스템의 내용을 새 창에서 엽니다.

open_system(block,"parameter")는 블록에 OpenFcn 콜백 함수 또는 마스크가 있더라도 블록 파라미터 대화 상자를 엽니다.

open_system(block,"OpenFcn")은 지정된 블록의 OpenFcn 콜백 함수를 실행합니다.

open_system(vssblock,"ActiveChoice","window")는 Variant Subsystem 블록의 활성 선택지를 새 창에서 엽니다.

예제

예제

모두 축소

myModel이라는 모델이 있다고 가정하겠습니다.

모델을 엽니다.

open_system("myModel")

myModel1과 myModel2라는 두 가지 모델이 있다고 가정하겠습니다. 단일 명령으로 두 모델을 모두 열 수 있습니다.

모델 이름으로 구성된 string형 배열을 만듭니다.

models = ["myModel1","myModel2"]

모델을 엽니다.

open_system(models)

myModel이라는 모델이 있다고 가정하겠습니다.

모델을 열지 않고 불러옵니다.

open_system("myModel","loadonly")

myModel이라는 모델이 있다고 가정하겠습니다. 이 모델에는 mySubsystem이라는 서브시스템이 포함되어 있습니다.

서브시스템 자신의 Simulink 편집기 창에서 서브시스템을 엽니다.

load_system("myModel")
open_system("myModel/mySubsystem","window")

myModel이라는 모델이 있다고 가정하겠습니다. 이 모델에는 mySubsystem이라는 서브시스템이 포함되어 있습니다.

서브시스템을 같은 창의 새 탭에서 엽니다.

load_system("myModel")
open_system("myModel/mySubsystem")

myRefModelBlock이라는 Model 블록을 포함하며 이름이 myModel인 모델을 불러왔다고 가정하겠습니다.

참조된 모델을 엽니다.

open_system("myModel/myRefModelBlock")

참조된 모델은 자신의 Simulink 편집기 창에 최상위 모델로 열립니다.

팁

참조된 모델을 모델 계층 구조의 컨텍스트에서 열려면 Simulink.BlockPath 객체와 함께 open 함수를 사용하십시오.

myModel이라는 모델을 불러왔다고 가정하겠습니다. 이 모델에는 이름이 mySubsystem인 Subsystem 블록이 있고 이 블록에는 myBlock이라는 Gain 블록이 포함되어 있습니다. myBlock에는 콜백 함수와 마스크가 없습니다.

myBlock의 블록 파라미터 대화 상자를 엽니다.

open_system("myModel/mySubsystem/myBlock")

K라는 Constant 블록을 포함하며 이름이 myModel인 모델을 불러왔다고 가정하겠습니다.

Constant 블록의 OpenFcn 콜백을 정의합니다.

set_param("myModel/K",OpenFcn="disp('Hello World!')")

블록 콜백을 실행합니다.

open_system("myModel/K")

Hello World!라는 문구가 MATLAB® 명령 창에 표시됩니다.

myModel이라는 모델을 불러왔다고 가정하겠습니다. 이 모델에는 myMaskedSubsystem이라는 마스크 처리된 서브시스템이 포함되어 있습니다.

마스크 처리된 서브시스템의 내용을 기존 창의 새 탭에서 엽니다.

open_system("myModel/myMaskedSubsystem","force")

vssBlock이라는 Variant Subsystem 블록을 포함하는 모델을 불러왔다고 가정하겠습니다. Variant Subsystem에는 2개의 Variant 선택지가 포함되어 있습니다.

Variant Subsystem의 활성 선택지를 새 창에서 엽니다.

open_system("vssBlock","ActiveChoice","window")

입력 인수

모두 축소

열려는 모델, 라이브러리 또는 서브시스템이거나, OpenFcn 콜백 함수를 실행하거나 블록 파라미터 대화 상자를 열려는 블록입니다. 모델 및 라이브러리를 핸들 또는 이름으로 지정합니다. 모델이 MATLAB 경로에 없으면 모델의 파일 경로를 지정합니다. UNIX® 시스템에서 전체 모델 이름은 홈 디렉터리를 의미하는 물결표(~)로 시작하면 됩니다. 서브시스템을 대응되는 Subsystem 블록의 핸들 또는 경로로 지정합니다. 블록을 핸들이나 블록 경로로 지정합니다.

핸들의 형식을 숫자형 스칼라 또는 벡터로 지정합니다. 이름 및 경로의 형식을 string형, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다.

핸들과 경로를 가져오는 방법에 대한 자세한 내용은 Get Handles and Paths 항목을 참조하십시오.

예: "myModel"

예: "myModel/myBlock"

예: "myModel/mySubsystem"

예: ["myModel1";"myModel2"]

데이터형: double | array of doubles | string | string array | character vector | cell array of character vectors

열려는 모델 또는 라이브러리로, 핸들 또는 이름으로 지정됩니다. 모델이 MATLAB 경로에 없으면 모델의 파일 경로를 지정합니다. UNIX 시스템에서 전체 모델 이름은 홈 디렉터리를 의미하는 물결표(~)로 시작하면 됩니다.

핸들의 형식을 숫자형 스칼라 또는 벡터로 지정합니다. 이름 및 경로의 형식을 string형, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다.

핸들과 경로를 가져오는 방법에 대한 자세한 내용은 Get Handles and Paths 항목을 참조하십시오.

예: "myModel"

예: ["myModel1";"myModel2"]

데이터형: double | array of doubles | string | string array | character vector | cell array of character vectors

열려는 서브시스템으로, 대응되는 Subsystem 블록의 핸들 또는 경로로 지정됩니다. 핸들의 형식을 숫자형 스칼라 또는 벡터로 지정합니다. 이름 및 경로의 형식을 string형, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다.

핸들과 경로를 가져오는 방법에 대한 자세한 내용은 Get Handles and Paths 항목을 참조하십시오.

데이터형: double | array of doubles | string | string array | character vector | cell array of character vectors

열려는 서브시스템이거나, OpenFcn 콜백 함수를 실행하거나 블록 파라미터 대화 상자를 열려는 블록입니다. 서브시스템을 대응되는 Subsystem 블록의 핸들 또는 경로로 지정합니다. 블록을 핸들이나 경로로 지정합니다.

핸들의 형식을 숫자형 스칼라 또는 벡터로 지정합니다. 이름 및 경로의 형식을 string형, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다.

핸들과 경로를 가져오는 방법에 대한 자세한 내용은 Get Handles and Paths 항목을 참조하십시오.

데이터형: double | array of doubles | string | string array | character vector | cell array of character vectors

활성 선택지를 새 창에서 열려는 Variant Subsystem 블록. 블록을 핸들이나 블록 경로로 지정합니다. 핸들의 형식을 숫자형 스칼라 또는 숫자형 배열로 지정합니다. 이름 및 경로의 형식을 string형, string형 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다.

Variant Subsystem 블록에 대한 자세한 내용은 Variant Subsystem 항목을 참조하십시오.

핸들과 경로를 가져오는 방법에 대한 자세한 내용은 Get Handles and Paths 항목을 참조하십시오.

데이터형: double | array of doubles | string | string array | character vector | cell array of character vectors

팁

참조된 모델을 모델 계층 구조의 컨텍스트에서 열려면 Simulink.BlockPath 객체와 함께 open 함수를 사용하십시오.

버전 내역

R2006a 이전에 개발됨