Main Content

모델 저장하기

Simulink® 편집기의 제목 표시줄을 보면 모델에 저장되지 않은 변경 사항이 있는지 알 수 있습니다. 모델에 저장되지 않은 변경 사항이 있으면 제목 표시줄에 변경 플래그(dirty flag)라고도 하는 별표가 표시됩니다.

Title bar showing an asterisk next to the model name

모델에 저장되지 않은 변경 사항이 있는지 프로그래밍 방식으로 확인하려면 get_param 함수를 사용하여 모델 파라미터 Dirty의 값을 쿼리하면 됩니다. 예를 들어, 다음 명령은 미저장된 변경이 있는 경우 현재 시스템(gcs)을 저장합니다.

if strcmp(get_param(gcs,'Dirty'),'on')
	save_system;
end

모델 저장하기

처음 모델을 저장하려면 Simulink 편집기의 시뮬레이션 탭에서 저장을 클릭합니다. 모델 파일의 위치와 이름을 입력합니다. 명명 관련 요구 사항을 확인하려면 모델 이름 항목을 참조하십시오.

이전에 저장한 모델을 저장하려면 다음 절차 중 하나를 따르십시오.

  • 현재 파일 이름을 사용하여 모델을 저장하려면 Simulink 편집기의 시뮬레이션 탭에서 저장을 클릭합니다.

  • 최상위 모델의 내용을 새 이름 또는 위치에 저장하거나 모델 형식을 변경하려면, Simulink 편집기의 시뮬레이션 탭에서 저장 > 다른 이름으로 저장을 선택합니다.

    참고

    SLX 형식에 대한 자세한 내용은 파일 형식을 SLX로 변환하기 항목을 참조하십시오.

  • 참조된 모델의 내용을 새 이름이나 위치 또는 형식에 저장하려면, 참조된 모델을 최상위 모델로 엽니다. 그런 다음 시뮬레이션 탭에서 저장 > 다른 이름으로 저장을 선택합니다.

  • 최상위 모델을 이전 버전의 Simulink와 호환되는 형식으로 저장하려면, 시뮬레이션 탭에서 저장 > 이전 버전을 선택합니다. 모델을 이전 버전의 Simulink로 내보내기 항목을 참조하십시오.

모델 이름

모델 파일 이름은 영문자로 시작해야 하며 영문자, 숫자, 밑줄을 포함할 수 있습니다. 다음과 같은 파일 이름은 허용되지 않습니다.

  • 언어 키워드(예: if, for, end)

  • 예약된 이름: 'simulink', 'sl', 'sf'

  • MATLAB® 명령

모델 이름의 총 문자 수는 특정 최댓값(대개 63자)을 넘어서는 안 됩니다. 시스템에 허용되는 파일 이름의 최대 길이를 확인하려면 MATLAB namelengthmax 명령을 사용하십시오.

모델 이름을 지정할 때 MATLAB이 호출할 함수를 어떻게 결정하는지 파악하려면 함수 우선 순위(Function Precedence Order) 항목을 참조하십시오.

Simulink의 모델 저장 방법

사용자가 모델을 저장하면 Simulink는 모델과 연결된 블록 다이어그램과 블록 속성 및 기타 정보를 모델 파일에 저장합니다.

저장 전 콜백이나 저장 후 콜백이 있는 경우 이러한 콜백은 다음 순서로 실행됩니다.

  1. 모든 블록의 PreSaveFcn 콜백 루틴이 실행된 다음, 모델의 PreSaveFcn 콜백 루틴이 실행됩니다.

  2. Simulink가 모델 파일을 작성합니다.

  3. 모든 블록의 PostSaveFcn 콜백 루틴이 실행된 다음, 모델의 PostSaveFcn이 실행됩니다.

저장 과정 동안 Simulink는 오류 발생 시 모델을 복원하는 데 사용하기 위해 임시 백업 복사본(이름: modelname.bak)을 유지합니다. 저장 도중이나 저장 과정에서 콜백 도중에 오류가 발생하면 Simulink는 다음 작업을 수행합니다.

  • 원래 파일 복원

  • 오류 발생 전에 저장된 모든 내용을 modelname.err라는 파일에 씀

  • 오류 메시지 생성

SLX 파일에서 불러온 모델을 저장하는 동안 원래 SLX 파일은 계속 존재해야 합니다.Simulink는 SLX 파일을 점진적으로 불러오고 저장합니다. 따라서 저장 시점에 원래 파일이 존재하지 않으면 Simulink는 파일을 완전히 복원할 수 없다는 내용의 경고를 생성합니다.

모델을 SLX 파일 형식으로 저장하기

새 모델을 SLX로 저장하기

Simulink는 기본적으로 새 모델과 라이브러리를 파일 확장자 .slx를 사용하여 SLX 형식으로 저장합니다. SLX 형식은 OPC(Open Packaging Conventions) 상호 운용성 표준을 준수하는 압축된 패키지입니다. SLX 형식은 모델 정보를 Unicode® UTF-8을 사용하여 XML 형식과 기타 국제 형식으로 저장합니다. Simulink 모델을 SLX 형식으로 저장하면 다음과 같은 이점이 있습니다.

  • MDL 파일과 비교해 대체로 파일 크기가 줄어듭니다. MDL과 SLX 간에 줄어드는 파일 크기는 모델에 따라 달라집니다.

  • 증분 불러오기와 저장이 가능합니다. Simulink는 모델의 필요한 부분만 불러오고 모델의 수정된 부분만 저장하기 때문에 성능과 메모리 사용을 최적화합니다.

Simulink 기본 설정 File format for new models and libraries에서 새 모델과 라이브러리를 저장할 파일 형식을 지정할 수 있습니다.

파일 형식을 SLX로 변환하기

MDL 파일을 SLX 파일 형식으로 변환하는 경우 SLX 파일에는 MDL 파일과 동일한 정보가 포함됩니다. get_param, set_param 같이 MDL 파일에 사용하는 함수를 SLX 파일 형식에도 사용할 수 있습니다. 모델 이름이나 위치를 변경하지 않고 MDL 파일을 SLX 파일 형식으로 변환하면 Simulink는 MDL 파일이 쓰기 가능한 파일인 경우 이 파일의 이름을 변경하여 백업 파일을 생성합니다.

시뮬레이션 탭에서 저장을 클릭하여 기존 MDL 파일을 저장하는 경우 Simulink는 모델을 MDL 형식으로 저장합니다.

기존 MDL 파일을 SLX 파일 형식으로 저장하려면 다음을 수행하십시오.

  1. 시뮬레이션 탭에서 저장 > 다른 이름으로 저장을 선택합니다.

  2. 디폴트 파일 형식을 SLX로 그대로 두고 저장을 클릭합니다.

    Simulink는 모델을 SLX 형식으로 저장하고, MDL 파일이 쓰기 가능한 파일인 경우 이 파일의 이름을 mymodel.mdl.releasename(예: mymodel.mdl.R2010b)으로 변경하여 백업 파일을 생성합니다.

또는 다음과 같이 save_system을 사용합니다.

save_system mymodel mymodel.slx
이 명령은 mymodel.slx를 생성합니다. 기존 파일 mymodel.mdl이 쓰기 가능한 파일인 경우 이름이 mymodel.mdl.releasename으로 변경됩니다.

SLX 파일이 MDL 파일보다 우선합니다. 따라서 이 두 파일이 동일한 이름으로 존재하고 사용자가 파일 확장자를 지정하지 않으면 SLX 파일을 불러오게 됩니다.

주의

타사 소스 컨트롤 툴을 사용하는 경우 모델 파일 확장자 .slx를 이진 파일 형식으로 등록하십시오. 이렇게 하지 않으면 SLX 파일을 타사 소스 컨트롤 툴에 제출했을 때 파일이 손상될 수 있습니다.

다음 표에서는 SLX 파일을 사용할 때 호환성 관련 고려 사항이 있을 수 있는 작업에 대해 설명합니다.

SLX 사용 시 호환성 관련 고려 사항이 있을 수 있는 작업발생하는 문제 조치
확장자가 .mdl인 파일 이름에 대한 하드 코딩된 참조스크립트가 새 파일 확장자 .slx로 저장된 모델을 찾을 수 없거나 처리할 수 없습니다.

코드가 .mdl.slx 확장자를 모두 사용 가능하도록 만드십시오.

파일 이름 대신 which, what 같은 함수를 사용하십시오.

기본적으로 텍스트 형식을 취하는 타사 소스 컨트롤 툴이진 형식의 SLX 파일을 타사 소스 컨트롤 툴에 제출했을 때 파일이 손상될 수 있습니다.타사 소스 컨트롤 툴을 사용하는 경우 .slx.mdl 확장자를 이진 파일 형식으로 등록하십시오. 소스 컨트롤 툴을 사용하여 모델 파일 등록하기 항목을 참조하십시오.

MDL 및 SLX 파일 내에서 내용의 형식이 변경될 수 있습니다. 모델 데이터에 대해 작업을 수행하려면 문서에 설명된 함수(예: get_param, find_system, Simulink.MDLInfo)를 사용하십시오.

모델을 이전 버전의 Simulink로 내보내기

최신 버전의 Simulink에서 생성한 모델을 이전 버전에서 사용하는 형식으로 내보낼 수 있습니다. 예를 들어 이전 버전의 Simulink에만 액세스할 수 있는 동료와 모델을 공유할 수 있습니다.

모델을 이전 형식으로 내보내려면 다음을 수행하십시오.

  1. Simulink 편집기의 시뮬레이션 탭에서 저장을 클릭합니다. 그러면 복사본이 최신 버전의 Simulink에서 저장됩니다. 이 단계를 진행하면 호환성 문제가 방지됩니다.

  2. Simulink 편집기의 시뮬레이션 탭에서 저장 > 이전 버전을 선택합니다.

  3. 이전 버전으로 내보내기 대화 상자의 파일 형식 목록에서 모델을 내보낼 이전 버전을 선택합니다. 이 목록에서는 7년간의 이전 릴리스를 선택할 수 있습니다.

  4. 저장을 클릭합니다.

모델을 이전 버전의 형식으로 내보내면, 모델이 그 버전 이후에 추가된 블록과 특징을 포함하는지 여부와 상관없이 이전 형식으로 저장됩니다. 모델이 해당 이전 버전 이후에 추가된 블록을 포함하거나 이러한 기능을 사용하는 경우, 모델을 이전 버전의 Simulink에서 실행하면 모델이 올바른 결과를 생성하지 않을 수 있습니다. 또한 Simulink는 이전 버전 이후에 추가된 블록을 노란색의 비어 있는 마스크 처리된 Subsystem 블록으로 변환합니다. 예를 들어 save_system을 사용하여 모델을 Release R2007b로 내보냈는데 모델에 Polynomial 블록이 포함되어 있으면, Simulink는 Polynomial 블록을 비어 있는 노란색의 마스크 처리된 Subsystem 블록으로 변환합니다. Simulink는 또한 모델에서 지원되지 않는 기능을 모두 제거합니다. save_system 항목을 참조하십시오.

이전 버전의 Simulink에서 또 다른 이전 버전으로 저장하기

이전 버전의 Simulink에서 생성된 모델을 연 다음, 이 모델을 또 다른 이전 버전으로 내보낼 수 있습니다. 호환성 문제를 방지하려면 다음 절차를 따르십시오.

  1. 이전 버전에서 생성된 모델을 현재 버전의 Simulink에서 엽니다.

  2. 모델을 변경하기 전에 시뮬레이션 탭에서 저장을 클릭하여 현재 버전에서 모델을 저장합니다.

    모델을 현재 버전에서 저장한 후에는 내용을 변경하고 필요에 따라 다시 저장할 수 있습니다.

  3. 이전 버전의 Simulink에서 모델을 저장합니다. 시뮬레이션 탭에서 저장 > 이전 버전을 선택합니다.

  4. 이전 버전의 Simulink를 시작한 다음, 해당 이전 버전으로 내보냈던 모델을 여기에서 엽니다.

  5. 이전 버전에서 모델을 저장합니다.

이제 모델을 원래부터 그 이전 버전의 Simulink에서 생성한 것과 마찬가지로 사용할 수 있습니다.

모델을 이전 버전에서 사용할 때 다음과 같은 Simulink 기본 설정이 유용할 수 있습니다.

참고 항목

관련 항목