시뮬레이션 데이터 내보내기
시뮬레이션 데이터를 내보내거나 기록하면 모델을 분석하고 디버그하는 데 사용할 수 있는 기준이 마련됩니다. 표준 또는 사용자 지정 MATLAB® 함수를 사용하여 시뮬레이션된 시스템의 입력 신호를 생성하고 시스템의 출력을 그래프로 표시하거나 분석 또는 기타 후처리를 수행할 수 있습니다.
시뮬레이션 데이터
시뮬레이션 데이터는 신호, 시간, 출력, 상태 및 데이터 저장소 기록 데이터의 조합을 포함할 수 있습니다.
시뮬레이션 데이터를 내보내는 과정에는 나중에 분석하고 후처리할 수 있도록 시뮬레이션 중에 신호 값을 MATLAB 작업 공간이나 MAT 파일에 저장하는 작업이 포함됩니다. 데이터 내보내기는 데이터 기록 또는 시뮬레이션 데이터 저장이라고도 합니다.
데이터는 다음과 같이 여러 형식으로 기록할 수 있습니다.
구조체
시간값을 갖는 구조체
timeseries
배열
후처리 과정을 단순화하기 위해 다른 형식으로 기록된 데이터를 Dataset
형식으로 변환하는 것이 좋습니다. 자세한 내용은 Dataset Conversion for Logged Data 항목을 참조하십시오.
또한 모델을 시뮬레이션하기 위한 입력으로 기록된 데이터를 사용할 수도 있습니다.
시뮬레이션 데이터 기록하기
다음 기법 중 하나 이상을 사용하여 시뮬레이션 데이터를 기록할 수 있습니다.
기록 기법 | 사용법 | 도움말 문서 |
---|---|---|
출력 기록을 활성화하고 신호를 루트 수준 Outport 블록에 연결 | 모델에 이미 Outport 블록이 포함된 경우 최상위 모델에 데이터를 기록할 때 이 방법을 사용해 보십시오. | |
신호 기록을 활성화하고 모델 전체에 걸쳐 기록할 신호 표시 | 모델에 블록을 추가하지 않도록 신호 기록을 사용합니다. 신호 속성 또는 계측 속성을 사용하여 지정된 개별 신호 기록 레이트로 신호를 기록합니다. 시뮬레이션이 일시 중지되거나 중지될 때 또는 시뮬레이션이 종료할 때 데이터를 사용할 수 있습니다. | |
신호를 Record 블록에 연결 | Record 블록을 사용하여 작업 공간, 파일 또는 작업 공간과 파일 모두에 데이터를 기록할 수 있습니다. Record 블록을 사용하여 MAT 파일, Microsoft® Excel® 파일 또는 MLDATX 파일에 데이터를 기록할 수 있습니다. 스파크라인 플롯, 시간 플롯, XY 플롯을 비롯하여 여러 시각화를 사용하여 Record 블록에 기록된 데이터를 시각화할 수 있습니다. | |
신호를 To Workspace 블록에 연결 | 기록된 신호 데이터를 저장하는 변수 이름을 지정합니다. 기본 샘플 레이트와 다른 샘플 레이트로 출력을 저장합니다. | |
신호를 To File 블록에 연결 | To File 블록은 데이터를 작업 공간의 변수에 저장하는 대신 MAT 파일에 저장합니다. 기본 샘플 레이트와 다른 샘플 레이트로 출력을 저장합니다. 시뮬레이션이 완료된 후에만 MAT 파일을 사용합니다. | |
Simulink®를 구성하여 시간과 상태 데이터를 내보내기 | 시뮬레이션에 대한 전체 정보를 한 번에 캡처하려면 이 데이터를 내보내 보십시오. 상태는 모델의 기본 샘플 레이트로 기록됩니다. | |
데이터 저장소 기록 | 모델 계층 구조 전체에 걸쳐 데이터를 공유하는 데이터 저장소를 기록하여 모든 데이터 저장소 쓰기의 순서를 캡처합니다. | Log Data Stores |
Scope 블록을 신호에 연결 | 기본 샘플 레이트와 다른 샘플 레이트로 출력을 저장합니다. 스코프는 데이터를 저장하므로 메모리를 많이 사용할 수 있습니다. |
시뮬레이션 데이터 내보내기 활성화하기
시뮬레이션 중에 모델의 상태와 루트 수준 출력 포트를 기본 작업 공간으로 내보내려면 다음 인터페이스 중 하나를 사용하십시오.
구성 파라미터 대화 상자를 사용하여 기록할 데이터를 구성합니다. 모델링 탭의 설정 아래에서 모델 설정을 클릭합니다. 그런 다음, 데이터 가져오기/내보내기 창을 선택합니다. 자세한 내용은 모델 구성 파라미터: 데이터 가져오기/내보내기 항목을 참조하십시오.
set_param
함수를 사용하여 프로그래밍 방식으로 기록할 데이터를 구성합니다.sim
함수에 대한 입력값을 제공하여 특정 시뮬레이션을 위해 기록할 데이터를 구성합니다. 구성 파라미터 값은 시뮬레이션 중에 적용되며 시뮬레이션이 끝나면 되돌려집니다.
각각의 접근 방법은 다음을 지정해야 합니다.
내보낼 시뮬레이션 데이터 종류
신호 기록
시간
출력
상태 또는 최종 상태
데이터 저장소
기록할 시뮬레이션 데이터의 각 유형의 기록 변수 이름. 시뮬레이션 데이터의 각 유형에는 디폴트 이름을 사용하는 연결된 기록 변수가 있습니다.
시뮬레이션 데이터를 기록하는 방법의 예는 다음과 같습니다.
시뮬레이션 데이터 인스펙터를 사용하여 기록된 데이터 보기
내보낸 시뮬레이션 데이터를 대화형 방식으로 검사하려면 시뮬레이션 데이터 인스펙터를 사용해 보십시오.
시뮬레이션 데이터 인스펙터가 표시하는 기록된 데이터의 종류에 대한 몇 가지 제한이 있습니다. View Data in the Simulation Data Inspector 항목을 참조하십시오.
메모리 성능
기록된 데이터 최적화
고속 액셀러레이터 모드가 아닌 시뮬레이션 모드에서 시뮬레이션 데이터를 내보낼 때 Simulink는 다음과 같은 경우에 메모리 사용량을 최적화합니다.
시간 스텝이 규칙적으로 발생하는 경우 Simulink는 압축된 시간 표현을 사용합니다. Simulink는 첫 번째 타임스탬프의 값, 구간 길이(시간 스텝) 및 타임스탬프의 총 개수를 저장합니다.
여러 신호가 동일한 타임스탬프 시퀀스를 사용하는 경우 신호는 저장된 단일 타임스탬프 시퀀스를 공유합니다. 저장된 단일 타임스탬프를 공유하면 기록된 데이터에 사용되는 메모리를 절반으로 줄일 수 있습니다. 메모리 차이는 중요한 성능 지표일 수 있으며, 특히 수천 개의 요소를 갖는 버스를 기록할 때 그렇습니다.
영구 스토리지에 기록
많은 시간 스텝을 포함하는 긴 시뮬레이션에서 많은 신호를 기록하는 경우 메모리 문제가 발생할 수 있습니다. 영구 스토리지에 기록하면 이러한 메모리 문제를 해결할 수 있습니다.
영구 스토리지에 기록하려면 구성 파라미터 > 데이터 가져오기/내보내기 창에서 Dataset 데이터를 파일에 기록 옵션을 선택합니다. 그런 후 기록의 종류를 지정합니다(예: 신호 기록 및 상태 기록).
출력 및 상태 데이터를 기록하려면 형식 파라미터를
Dataset
으로 설정합니다.최종 상태 파라미터를 선택하는 경우 최종 동작점 저장 파라미터를 선택 해제합니다.
Simulink.SimulationData.DatasetRef
객체를 사용하여 신호 기록 및 상태 기록 데이터에 액세스하는 경우 데이터를 모델 작업 공간으로 점진적으로 불러옵니다. 다른 로깅 종류의 데이터에 액세스하는 경우에는 모든 데이터를 한 번에 불러옵니다.
자세한 내용은 Log Data to Persistent Storage 항목을 참조하십시오.
참고 항목
블록
- Record, XY Graph | Outport | To Workspace | To File | Scope