본문 바로가기
programming language/MATLAB

MATLAB 현재 폴더 안의 모든 Simulink MDL 파일 SLX 로 변경하기

by __observer__ 2016. 10. 26.
반응형

MATLAB 은 1 년에 두 번 업데이트를 진행하고 이에 따라 a, b 버전을 release 합니다.

 

2016 년에는 2016a, 2016b 버전이 나왔죠.

 

2012a 버전부터 Simulink 모델 파일의 확장자가 MDL 에서 SLX 형태로 변경 됐습니다.

 

최신 버전에서는 하위 호환을 위해 MDL, SLX 를 둘 다 지원하고 있습니다.

 

그냥 MDL 파일을 그대로 사용해도 되지만 기왕이면 최신 버전으로 사용하기 위해 저는 과거에 만들었던 MDL 파일을 SLX 로 변환해서 사용하고 있습니다.

 

단순히 MDL 확장자를 SLX 로 변경하는건 탐색기를 통해서도 가능 하겠지만 이렇게 변환한 경우에는 해당 모델 파일이 정상적으로 동작하지 않습니다. 단순히 확장자만 바뀐게 아니기 때문이죠.

 

MDL 파일을 SLX 로 변경 할 때는 Simulink 에서 모델을 연 다음에 다른 이름으로 저장하기에서 확장자를 바꿔 줘도 되지만

 

다음과 같이 스크립트를 작성해서 변환하는게 훨씬 더 효율적입니다.

 

아래 스크립트는 현재 폴더내의 MDL 파일을 모두 SLX 파일로 변경하는 코드 입니다.

 

mdlFiles = dir('*.mdl');

 

for n=1:length(mdlFiles)

    modelName = strrep(mdlFiles(n).name, '.mdl', '')

    newName = strrep(mdlFiles(n).name, '.mdl', '.slx')

      

    load_system(modelName)

    save_system(modelName, newName)    

    close_system(modelName)

end

 

위 코드를 조금만 바꾸면 SLX 파일을 MDL 로 바꾸는 것도 그리 어렵지 않게 하실 수 있을 겁니다.


반응형

댓글