Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

모델 작업 공간

모델 작업 공간과 MATLAB 작업 공간의 차이점

각 모델에는 변수 값을 저장하기 위한 고유한 작업 공간이 제공됩니다.

모델 작업 공간은 다음을 제외하면 기본 MATLAB® 작업 공간과 유사합니다.

  • 모델 작업 공간의 변수는 모델의 범위에서만 볼 수 있습니다.

    MATLAB 작업 공간과 모델 작업 공간이 같은 이름의 변수를 정의하고 이 변수가 중간에 있는 마스크 처리된 서브시스템이나 모델 작업 공간에 나타나지 않는 경우 Simulink®는 모델 작업 공간의 변수 값을 사용합니다. 모델의 작업 공간은 사실상 변수에 고유한 네임스페이스를 제공하므로 사용자는 다른 모델과의 충돌 위험 없이 모델에 대한 변수를 만들 수 있습니다.

  • 모델을 불러오면 작업 공간이 데이터 소스를 기반으로 초기화됩니다.

    데이터 소스는 모델 파일, MAT 파일, MATLAB 파일 또는 모델 파일에 저장된 MATLAB 코드일 수 있습니다. 자세한 내용은 Data source 항목을 참조하십시오.

  • MAT 파일, MATLAB 파일 및 MATLAB 코드 데이터 소스를 대화형 방식으로 다시 불러오고 저장할 수 있습니다.

  • 모델 작업 공간에 Signal 객체를 저장하려면 객체의 스토리지 클래스를 Auto로 설정하십시오. Signal 객체에는 Simulink.Signal 및 사용자가 만든 서브클래스가 포함됩니다.

    Auto 이외의 스토리지 클래스를 지정하는 경우, 객체가 전역 Simulink 컨텍스트 내에서 고유하고 모든 모델에 액세스할 수 있도록 하려면 기본 작업 공간 또는 데이터 사전에 Signal 객체를 저장해야 합니다.

  • 모델 작업 공간에 MATLAB 변수 및 파라미터 객체(예: Simulink.Parameter)를 저장할 때 일부 조정 가능성 제한 사항이 적용됩니다. Tunability Considerations and Limitations for Other Modeling Goals 항목을 참조하십시오. 또한 모델 작업 공간에 AUTOSAR.Parameter 객체를 저장하는 경우 코드 생성기는 객체에 대해 지정된 스토리지 클래스를 무시합니다.

참고

참조된 모델에 사용된 변수에 대한 참조를 확인할 때 참조된 모델의 변수는 부모 모델이 존재하지 않는 것처럼 연결이 맺어집니다. 예를 들어 참조된 모델이 부모 모델의 작업 공간과 MATLAB 작업 공간 모두에 정의되어 있지만 참조된 모델의 작업 공간에는 정의되지 않은 변수를 참조한다고 가정하겠습니다. 이 경우 MATLAB 작업 공간이 사용됩니다.

메모리 문제 해결하기

작업 공간 변수를 블록 파라미터로 사용하면 Simulink는 시뮬레이션의 컴파일 단계 중에 변수의 복사본을 생성하고 변수를 메모리에 저장합니다. 이로 인해 시뮬레이션 또는 코드 생성 과정에서 시스템 메모리가 부족해질 수 있습니다. 시스템 메모리가 부족할 수 있는 경우는 다음과 같습니다.

  • 파라미터가 많은 대규모 모델

  • 요소 개수가 많은 파라미터를 가진 모델

이 문제는 생성된 코드에서 파라미터를 나타내는 데 사용되는 메모리의 양에 영향을 주지 않습니다.

프로그래밍 방식으로 모델 작업 공간 조작하기

Simulink.ModelWorkspace 클래스의 객체는 모델 작업 공간을 나타냅니다. Simulink는 Simulink 세션 중에 사용자가 연 각 모델에 대해 이 클래스의 인스턴스를 만듭니다. 이 클래스에 연결된 메서드는 다음을 포함해 모델 작업 공간과 관련된 다양한 작업을 수행하는 데 사용할 수 있습니다.

  • 모델 작업 공간의 변수 나열하기

  • 변수에 값 할당하기

  • 표현식 평가하기

  • 모델 작업 공간 지우기

  • 데이터 소스에서 모델 작업 공간 다시 불러오기

  • 지정된 MAT 파일 또는 MATLAB 파일에 모델 작업 공간 저장하기

  • 작업 공간에서 데이터 소스로 지정한 MAT 파일 또는 MATLAB 파일에 작업 공간 저장하기

참고 항목

관련 항목