신군의 역학사전

[Simulink] 입출력 데이터 관리하기 본문

Mechanical Engineering/Matlab & Simulink

[Simulink] 입출력 데이터 관리하기

긔눈 2024. 9. 27. 12:00
반응형

이전 포스팅에서는 모델의 인풋으로 기본적인 형태의 데이터 블록을 활용했었는데요, 이번 포스팅에서는 외부 데이터를 불러오고, 모델을 통해 출력된 결과 데이터를 내보내는 방법에 대해 정리해보겠습니다.

 

목표 : Matlab의 Workspace에 저장된 데이터를 불러오고, 모델을 통해 출력된 결과를 다시 Matlab Workspace로 내보내는 방법을 익힌다. 

 - inport, outport 블록의 활용법을 익힌다.

 - Data Inspector의 활용법을 익힌다.

 

Data의 입출력 관련 블록은, [Simulink] - [Sink] or [Source] 라이브러리에 있습니다.

Sink 라이브러리에는 출력과 관련된 기능의 블록이

Source 라이브러리에는 입력과 관련된 기능의 블록이 위치합니다.

입출력 데이터는 Sink와 Source 라이브러리의 Inport & Ouport 블록을 통해 불러오고 내보낼 수 있는데

둘의 블록 형태는 동일하며, 입력이냐 출력이냐에 따라 커넥션의 방향만 다릅니다.

입력의 기능을 하는 inport는 나오는 방향만, 출력의 기능을 하는 outport는 들어가는 방향만 존재합니다.

 

여기서 워크스페이스 상의 시간변수 t와 입력변수 u를 불러와, 2배의 값을 출력해보겠습니다.

상단의 [모델 설정] - [데이터 가져오기/내보내기]로 들어옵니다.

[작업 공간에서 불러오기]에서 입력 데이터를 설정해줄 수 있습니다.

시간변수 t와 입력변수 u를 불러오기 위해 [t,u]와 같이 배열 형식으로 지정해주어야 하며

아래 항목에서는 내보낼 출력 변수명과 형식 등을 지정할 수 있습니다.

또한 단일시뮬레이션 출력 옵션을 통해, 모든 출력을 하나로 묶어서 내보낼 수 있습니다.

입력데이터에 대해 y=2x꼴의 출력이 관찰됨을 확인할 수 있습니다.

(t는 0~20의 값을 입력해주었는데 10초까지만 실행된 이유는, 상단 배너에 중지시간을 10초로 설정해두었기 때문입니다.)

모델 실행 후, 워크스페이스 상에 좀전에 설정해두었던 대로 tout, yout 변수가 생성됩니다.

이를 통해 모델의 결과 데이터를 확인할 수 있습니다.

반응형