MATLAB 코드에서 코드 생성
Navigation Toolbox™를 MATLAB®Coder™와 함께 사용하여 다음을 수행할 수 있습니다.
MEX 파일을 만들어 MATLAB 애플리케이션의 속도를 높입니다.
MATLAB 함수와 모델을 구현하는 ANSI®/ISO® 호환 C/C++ 소스 코드를 만듭니다.
컴퓨터나 다른 플랫폼에서 MATLAB과 독립적으로 실행되는 독립형 실행 파일을 생성합니다.
일반적으로 이 툴박스를 사용하여 생성하는 코드는 이식 가능한 ANSI C 코드입니다. 코드 생성을 사용하려면 MATLAB Coder 라이선스가 필요합니다. 자세한 내용은 MATLAB Coder 시작하기 (MATLAB Coder) 항목을 참조하십시오.
MATLABCoder 사용
여러 Navigation Toolbox 함수가 C/C++ 코드 생성을 위해 활성화되어 있습니다. 로보틱스 함수에서 코드를 생성하려면 다음 단계를 따르십시오.
코드 생성을 위해 활성화되어 있는 Navigation Toolbox 함수를 사용하는 함수 또는 애플리케이션을 작성합니다. 이러한 함수 중 일부에는 코드 생성을 위해 준수해야 하는 요구 사항이 있습니다.
%#codegen
지시문을 MATLAB 코드에 추가합니다.MATLAB Coder 앱 또는 명령줄 인터페이스를 사용하여 MATLAB 코드에서 코드를 생성하는 워크플로를 따릅니다.
MATLAB Coder 앱 사용
기본 워크플로는 다음과 같습니다.
MATLAB Coder (MATLAB Coder) 앱에서 프로젝트를 설정합니다. 최상위 함수를 지정하고 입력 유형을 정의합니다.
앱이 사용자 코드의 코드 생성 준비 상태를 검사합니다. 코드 생성에 지원되지 않는 함수와 같은 문제가 있으면 이를 보고합니다.
런타임 문제가 있는지 검사합니다.
앱이 함수의 MEX 버전을 생성하고 실행합니다. 이 단계는 생성된 C/C++ 코드에서는 감지되기 어려운 문제를 감지합니다.
애플리케이션에 대한 코드 생성 설정을 구성합니다.
C/C++ 코드를 생성합니다.
생성된 C/C++ 코드를 검증합니다. Embedded Coder® 라이선스가 있는 경우 SIL(Software-in-the-Loop) 또는 PIL(Processor-in-the-loop) 실행을 사용할 수 있습니다.
튜토리얼은 Generate Code for Path Planning Using RRT Star Planner 항목을 참조하십시오.
명령줄에서 MATLAB Coder 사용
기본 워크플로는 다음과 같습니다.
생성 코드의 문제를 감지하고 동작을 검증하기 위해 함수의 MEX 버전을 생성합니다.
coder.config
를 사용하여 라이브러리 또는 실행 파일에 대한 코드 구성 객체를 만듭니다.애플리케이션에서 필요로 하는 경우 코드 구성 객체 속성을 수정합니다.
codegen
(MATLAB Coder) 명령을 사용하여 코드를 생성합니다.생성된 C/C++ 코드를 검증합니다. Embedded Coder 라이선스가 있는 경우 SIL(Software-in-the-Loop) 또는 PIL(Processor-in-the-loop) 실행을 사용할 수 있습니다.
튜토리얼은 Hybrid A Star를 사용하여 경로 계획에 대한 코드 생성하기 항목을 참조하십시오.
C/C++ 컴파일러 설정
codegen
(MATLAB Coder)을 사용하여 코드를 컴파일하기 전에 C/C++ 컴파일러를 설정해야 합니다. 32비트 Windows 플랫폼의 경우 MathWorks®는 디폴트 컴파일러를 MATLAB과 함께 제공합니다. 설치된 제품에 디폴트 컴파일러가 포함되지 않은 경우 컴파일러를 직접 설치할 수 있습니다. 지원되는 컴파일러의 최신 목록을 보려면 MathWorks 웹사이트에서 지원 및 호환되는 컴파일러 항목을 참조하십시오. 플랫폼에 적합한 컴파일러를 설치한 다음 C 또는 C++ 컴파일러 설정하기 (MATLAB Coder) 항목을 확인하십시오. 설치가 끝난 후 MATLAB 명령 프롬프트에서 mex -setup
을 실행합니다. 그런 다음 codegen
(MATLAB Coder) 함수를 사용하여 코드를 컴파일할 수 있습니다.
코드 생성을 지원하는 함수와 System object
C/C++ 코드 생성을 지원하는 기능의 알파벳순 목록은 C/C++ 코드 생성을 지원하는 함수 항목을 참조하십시오. 또한 모든 도움말 페이지에서 확장 기능 섹션을 볼 수 있습니다.
참고 항목
앱
- MATLAB Coder (MATLAB Coder)
함수
관련 예제
세부 정보
- 코드 생성 워크플로 (MATLAB Coder)
- Generate C Code from MATLAB Code 비디오