이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
생성 코드 배포
코드를 생성하고 검증한 후 배포합니다. 튜토리얼의 이 단계에서는 컴포넌트 모델 ComponentDeploymentFcn
에서 생성된 코드를 배포하기 위한 메커니즘을 살펴보겠습니다.
컴포넌트 배포에는 여러 가지 워크플로 옵션이 있습니다. 각각의 경우, 생성된 코드를 함수 스케줄링을 처리하는 외부 main
프로그램과 통합해야 합니다.
다음을 수행할 수 있습니다.
생성된 소스 코드를 외부
main
함수 및 기타 타깃 환경 소스 코드와 통합하고 실행 프로그램을 빌드합니다.생성된 컴포넌트 모델 라이브러리를 외부
main
함수 및 기타 타깃 환경 코드와 링크하여 실행 프로그램을 만듭니다.codebuild
명령을 사용하여 생성된 소스 코드에서 컴포넌트 모델 라이브러리를 빌드합니다. 그런 다음 MATLAB® 환경 내부 또는 외부에서 라이브러리를 외부main
함수 및 기타 타깃 환경 코드와 링크하여 실행 프로그램을 만듭니다.
통합을 위해 생성된 코드 인터페이스에 대한 메타 정보 가져오기
기본적으로 코드 생성기는 빌드 폴더 ComponentDeploymentFcn_ert_rtw
에 code descriptor 파일(codedescriptor.dmr
)을 생성합니다. 해당 파일에는 다음을 포함하여 생성된 코드에 대한 메타 정보가 포함되어 있습니다.
데이터 인터페이스(인포트, 아웃포트, 파라미터, 데이터 저장소 및 내부 데이터)
함수 인터페이스(초기화, 출력, 업데이트 및 종료)
타이밍 요구 사항과 같은 데이터 및 함수 인터페이스에 대한 실행 정보
모델 계층 정보 및 참조 모델에 대한 정보
code descriptor 프로그래밍 인터페이스를 사용하여 code descriptor 파일의 내용을 가져오고 반환된 메타 정보를 사용하여 생성된 인터페이스가 통합 요구 사항을 충족하는지 확인할 수 있습니다. 프로그래밍 인터페이스를 사용하여 타깃 플랫폼 서비스를 위한 인터페이스를 생성하는 툴에 입력을 제공할 수도 있습니다.
자세한 내용은 Get Code Description of Generated Code 항목을 참조하십시오.
생성된 컴포넌트 코드를 타깃 코드 환경과 통합
생성된 컴포넌트 코드를 main
함수 및 기타 타깃 환경 코드와 통합하려면 다음을 수행해야 합니다.
생성된 코드의 데이터 및 함수 인터페이스를 기존 시스템 코드의 다른 인터페이스와 일치시킵니다.
입력 데이터를 연결합니다.
출력 데이터를 연결합니다.
블록 상태 값, 로컬 파라미터, 시간 등의 다른 데이터에 액세스합니다.
이 튜토리얼에서 사용되는 모델은 생성된 코드가 타깃 환경의 코드 인터페이스와 일치하도록 설계되고 구성되었습니다.
타깃 환경 소프트웨어는 생성된 진입점 함수를 호출하며, 이 함수는 입력 데이터와 스케줄링 정보를 제공합니다.
생성된 알고리즘은 호출 환경에서 사용하는 출력 데이터를 계산합니다.
입력 및 출력 데이터 세트와 데이터 액세스 메커니즘은 진입점 함수의 인터페이스를 구성합니다.
모델에서 루트 수준의 인포트와 아웃포트는 컴포넌트 알고리즘의 디폴트 입력과 출력을 나타냅니다. 기본적으로 코드 생성기는 이러한 입력 및 출력 데이터를 표준 구조로 집계합니다.
모델 구성 파라미터 코드만 생성를 지우고 모델 빌드를 시작하여 컴포넌트 모델에 대한 코드를 생성하고 컴포넌트 모델 라이브러리를 컴파일할 수 있습니다. 컴포넌트 모델에 대한 코드가 이미 생성된 경우 codebuild
함수와 경로
를 사용하여 컴포넌트 모델 라이브러리를 빌드할 수 있습니다. 생성된 컴포넌트 모델 라이브러리를 codeGenerationFolder
/modelBuildFolder
/services/libmain
함수 및 기타 타깃 환경 코드와 링크하여 실행 프로그램을 만들 수 있습니다.
컴포넌트 모델 라이브러리의 경우 다음을 생성할 수도 있습니다.
codebuild
함수를 사용한 CMake 구성(CMakeLists.txt
) 파일. Configure CMake Build Process 항목을 참조하십시오.모델 구성 파라미터 코드 및 아티팩트 패키징을 설정하고
packNGo
함수를 사용하여 만든 ZIP 파일. 그런 다음 전용 애플리케이션 빌드 시스템과 같은 또 다른 개발 환경으로 ZIP 파일을 옮길 수 있습니다. Relocate or Share Generated Code 항목을 참조하십시오.
자세한 내용은 Approaches for Building Code Generated from Simulink Models 항목과 Deploy Component Algorithm as Component Model Library by Using CMake 항목을 참조하십시오.
코드 생성 리포트를 공유하고 아카이브하기
빠른 시작 툴은 HTML 코드 생성 리포트를 생성하도록 모델을 구성합니다. 모델 및 코드 정보의 요약과 더불어 리포트에는 다음 사항이 포함됩니다.
서브시스템 리포트
생성된 코드 파일
코드 인터페이스 리포트
추적성 리포트
정적 코드 메트릭 리포트
코드 대체 리포트
코더 가정 리포트
선택적으로, 모델 웹 보기
이 리포트는 Simulink® 환경 외부에서도 사용할 수 있으므로 공유나 아카이브 목적으로 적합합니다. 빠른 시작 툴에서 리포트를 열거나, C 코드 탭에서 리포트 열기를 클릭하십시오.
코드 생성 리포트 파일의 디폴트 위치는 빌드 폴더인
의 하위 폴더인 model
_target
_rtw/html/html
에 있습니다. 이 경우
은 모델 구성 파라미터 시스템 타깃 파일의 설정입니다. 최상위 HTML 리포트 파일의 디폴트 이름은 target
index.html
입니다.
배포를 위한 파일 식별 및 패키징
모델에 대해 생성된 코드 인터페이스를 검토하고 필요한 경우 수정한 후 통합 코드를 빌드하는 데 필요한 파일을 식별합니다. 모델 구성 파라미터 코드만 생성을 지우고 모델 빌드를 시작하여 컴포넌트 모델에 대한 코드를 생성하고 배포를 위해 컴포넌트 모델 라이브러리를 컴파일할 수 있습니다. 컴포넌트 모델에 대한 코드가 이미 생성된 경우 codebuild
함수와 경로
를 사용하여 컴포넌트 모델 라이브러리를 빌드할 수 있습니다. 생성된 컴포넌트 모델 라이브러리를 codeGenerationFolder
/modelBuildFolder
/services/libmain
함수 및 기타 타깃 환경 코드와 링크하여 실행 프로그램을 만들 수 있습니다.
컴파일 및 링크 과정 없이 소스 코드를 생성하면 CMake 워크플로를 사용하여 MATLAB 환경 외부에서 컴포넌트 모델 라이브러리를 빌드할 수 있습니다. 다음을 생성할 수 있습니다.
codebuild
함수를 사용하여 CMake 구성(CMakeLists.txt
) 파일을 만듭니다. Configure CMake Build Process 항목을 참조하십시오.모델 구성 파라미터 코드 및 아티팩트 패키징을 설정하고
packNGo
함수를 사용하여 ZIP 파일을 만듭니다.packNGo
함수는 실행 가능한 이미지를 빌드하는 데 필요한 파일을 찾아 패키징합니다. 그런 다음 전용 애플리케이션 빌드 시스템과 같은 또 다른 개발 환경으로 ZIP 파일을 옮길 수 있습니다. Relocate or Share Generated Code 항목을 참조하십시오.
실행 프로그램에 통합 코드 빌드
Embedded Coder®는 빌드 프로세스를 사용자 지정하기 위한 광범위한 기능을 제공합니다. 예를 들면 다음과 같습니다.
CMake, 툴체인 또는 템플릿 makefile 방식 중에서 선택합니다. Approaches for Building Code Generated from Simulink Models 항목을 참조하십시오.
main
함수 및 기타 타깃 환경 코드와 링크하여 실행 프로그램을 생성할 수 있는 컴포넌트 모델 라이브러리를 컴파일합니다. Deploy Component Algorithm as Component Model Library by Using CMake 항목을 참조하십시오.컴파일러 최적화를 제어합니다. Control Compiler Optimizations 항목을 참조하십시오.
참조된 모델을 병렬로 빌드하여 빌드 시간을 줄입니다. Reduce Build Time for Referenced Models by Using Parallel Builds 항목을 참조하십시오.
코드 생성 후 발생하는 빌드 처리를 사용자 지정하여 타사 툴을 포함합니다. Customize Post-Code-Generation Build Processing 항목을 참조하십시오.
다른 개발 환경에서 코드를 컴파일합니다. Compile Code in Another Development Environment 항목을 참조하십시오.