MathWorks Simulink 컴포넌트 가져오기

MathWorks Simulink 컴포넌트를 가져오려면 Simulink 및 IBM® Rational® Rhapsody®에서 다음 단계를 수행하십시오.

MathWorks Simulink

프로시저

  1. MathWorks Simulink 모델을 작성하거나 기존 모델을 열어 작업 디렉토리에 저장하십시오. Rational Rhapsody 모델과 동일한 작업 디렉토리에 저장하는 것이 좋습니다.
  2. 코드 생성을 위해 Real-Time Workshop에서 다음 설정(대부분 기본 설정임)을 사용하십시오. 도구 > Real-Time Workshop > 옵션을 선택하면 설정을 확인할 수 있습니다.
    • 하드웨어 구현->디바이스 유형 - 지정되지 않음(32비트 일반으로 간주됨)
    • Real-Time Workshop->시스템 대상 파일 - ert.tlc
    • Real-Time Workshop->언어 - C 또는 C++(기본 설정은 C임)
    • Real-Time Workshop->명령 작성 - make_rtw
    • Real-Time Workshop->템플리트 make 파일 - ert_default_tmf
  3. 도구 > Real-Time Workshop > 모델 빌드를 선택하여 Simulink 모델에 대한 코드를 생성하십시오.

Rational Rhapsody의 경우

프로시저

  1. Rational Rhapsody 프로젝트를 작성하십시오.
  2. 브라우저에서 프로젝트 이름을 마우스 오른쪽 단추로 클릭하고 모델에 추가 > 패키지를 선택하십시오.
  3. 모델에 추가 창에서 <Rational Rhapsody 설치 폴더>\Share\Profiles\Simulink로 이동한 다음 파일 유형 필드에서 Package(*.sbs)를 선택하십시오.
  4. C를 사용하는 경우 SimulinkInC.sbs 프로파일을 선택하고, C++을 사용하는 경우 Simulink.sbs를 선택하십시오. 열기를 클릭하여 선택한 프로파일을 프로젝트에 추가하십시오. 브라우저의 프로파일 섹션을 확인하여 선택한 Simulink 프로파일이 이제 표시되는지 확인하십시오.
  5. 오브젝트 모델 다이어그램에 오브젝트를 작성하고 SimulinkBlock 스테레오타입을 해당 오브젝트에 적용하십시오(기능 창에서).
  6. 오브젝트를 마우스 오른쪽 단추로 클릭한 다음 Simulink 모델 가져오기/동기화를 선택하십시오.
  7. 표시되는 창에 다음 정보를 입력하십시오.
    • Simulink 모델 파일: Simulink 모델 파일의 위치입니다.
    • Simulink 생성된 소스 코드: Real-Time Workshop에서 생성한 *.cpp 파일의 위치입니다(ert_main.cpp를 제외한 모든 파일 추가).
    • Simulink 모델 샘플 시간: Rational Rhapsody에서 Simulink 엔진이 활성화되는 간격(밀리초)입니다.
  8. 가져오기/동기화를 클릭하고 Rational Rhapsody에서 Simulink 모델의 입력 및 출력을 나타내는 블록에 대한 플로우 포트를 작성할 때까지 기다리십시오.
  9. 플로우 포트가 작성되면 Simulink 블록을 다른 Rational Rhapsody 블록의 플로우 포트에 연결할 수 있습니다.

Simulink에서 생성한 코드 통합

이 태스크 정보

Simulink 컴포넌트를 Rational Rhapsody 모델로 가져오면 Real-Time Workshop을 사용하여 Simulink 모델에서 생성된 .cpp 파일이 Rational Rhapsody에서 생성한 make 파일에 소스 파일로 포함됩니다.

Rational Rhapsody에서 생성한 코드 관점에서 Rational Rhapsody의 SimulinkBlock 요소는 OMSimulinkBlock이라는 프레임워크 클래스를 기반으로 하는 클래스입니다. 수퍼 클래스는 파생 클래스에 의해 구현되는 doStep() 메소드를 정기적으로 호출합니다. 이 메소드는 입력 포트를 초기화하고, Simulink에서 생성한 .cpp 파일에서 단계 함수를 호출하며, 단계 후 출력 값을 설정합니다. 그러면 출력이 출력 플로우 포트를 통해 재생됩니다.

Simulink 모델을 포함하는 SimulinkBlock을 지정하고 Simulink 모델 가져오기/동기화 메뉴 명령을 사용하면 doStep() 함수가 생성됩니다. 이 작업에는 ERT(Embedded Coder License)가 필요합니다.

Simulink 모델 통합 문제점 해결

이 태스크 정보

  • Simulink 모델을 가져오거나 동기화한 후 langeng.dll 파일이 누락되었다는 오류 메시지가 표시되면, MATLAB \bin\win32 폴더가 PATH 환경 변수에 포함되어 있는지 확인하십시오. 이 폴더를 추가한 후 Rational Rhapsody를 다시 시작하고 모델을 다시 가져와야 합니다.
  • 포함 파일 누락과 관련된 컴파일 오류가 발생할 경우 MATLAB 설치 디렉토리에서 해당 파일을 찾으십시오. 이 파일을 찾으면 Rational Rhapsody 구성의 포함 검색 경로에 이 파일을 추가할 수 있습니다.

피드백