< 이전 | 다음 >

학습 2: AUTOSAR SW/C 구현

Rhapsody®에서 원자 소프트웨어 컴포넌트(SWC) 유형을 구현하려면 첫 번째로 Rational® Rhapsody 구현 블록(RIMB)을 정의한 후 이를 소프트웨어 컴포넌트 유형의 파트로 인스턴스화해야 합니다.
다음 두 방법을 사용하여 AUTOSAR SW/C를 구현할 수 있습니다.
  1. AUTOSAR InternalBehavior 및 구현 섹션을 직접 정의합니다.
    • 여러 AR 내부 동작, 구현 및 코드 섹션 정의
    • Rhapsody로 XFile 및 RunnableEntity 구현 코드 개발
  2. Rhapsody 구현 블록을 활용합니다.
    • ARBMT에서 Rhapsody 구현 블록(RIMB) 정의
    • 원자 SWC 유형의 일부로 RIMB에서 입력한 RIMBO를 가져오도록 RIMB를 인스턴스화하고 AR-Rhapsody 위임 커넥터를 통해 SWC 유형의 포트에 RIMBO의 포트 연결
    • 내부 동작, 구현, ARXML 및 C/H 파일과 같은 애플리케이션용 AUTOSAR 관련 아티팩트와 코드 생성. SWC에서 브라우저를 마우스 오른쪽 단추로 클릭하고 AR-SWC 구현 오브젝트(RIMBO) 작성을 선택하여 RIMBO 포트와 함께 AR SWC 포트의 작성, 인스턴스화 및 링크에 적용되는 도구 자동화를 사용할 수 있습니다.
    • Rhapsody에서는 RIMB 기반 구현 생성의 몇몇 특성을 자동화할 수 있습니다.
      • SWC에서 브라우저를 마우스 오른쪽 단추로 클릭하고 AR-SWC 구현 오브젝트(RIMBO) 작성을 선택하여 RIMBO 포트와 함께 AR SWC 포트의 작성, 인스턴스화 및 링크에 적용되는 도구 자동화를 사용할 수 있습니다.

변환기

  1. 다음 방법 중 하나를 사용하여 Rational Rhapsody 구현 블록을 작성하십시오.
    • SWC에서 브라우저를 마우스 오른쪽 단추로 클릭하고 AR-SWC 구현 오브젝트(RIMBO) 작성을 선택하십시오. 해당 기능에 대한 설명은 부록 A를 참조하십시오.
    • ARBMTPackages 카테고리의 패키지에 있는 Rational Rhapsody 구현 블록 다이어그램의 경우 그리기 도구 모음에서 Rational Rhapsody 구현 블록 도구 를 선택하고 그리기 영역에서 다이어그램을 클릭하십시오.
    • ARBMTPackages 카테고리에서 패키지를 마우스 오른쪽 단추로 클릭하고 새로 추가 > AR3x_BMT > RIMB를 선택하십시오.
  2. Rational Rhapsody 구현 블록의 일반 기능을 정의하십시오. 예를 들면, RIMB 창의 액세스 및 활성화 탭에서 프로젝트에 적합한 값을 정의하여 SWC 유형의 동작을 작성하십시오.

    LightManager 프로젝트의 경우 활성 요소활성화 값이 주기적입니다. 활성 요소 digitalPushedDispatcher의 값은 비동기입니다.
    참고: RIMBO 자동 작성에 대한 세부사항은 온라인 도움말 항목 "자동 RIMBO 작성"을 참조하십시오.

    변환기

  3. 자동 생성된 헬퍼 함수를 사용하여 RIMB 상태 차트의 동작을 설명할 수 있습니다.

    변환기

  4. RIMB의 ActiveOperation을 구현하려면 오퍼레이션을 마우스 오른쪽 단추로 클릭하여 특성 창을 열고 구현 탭을 선택하십시오. 다음 그림은 ActiveOperation 동작을 설정하는 방법의 예를 표시합니다.

    변환기

    1. RIMB 구현 블록을 마우스 오른쪽 단추로 클릭하고 새로 추가 > AR3x_BMT > ActiveOperation을 선택하십시오.
      • 활성 오퍼레이션에 대한 활성화 정책을 지정하십시오. RIMBimplementation 블록을 정의한 경우와 마찬가지로 활성 오퍼레이션의 활성화를 지정해야 합니다. 활성 오퍼레이션의 일반 탭에 있는 정책 필드에서 비동기 또는 주기적을 선택하십시오.
        • 비동기를 선택하는 경우 액세스 및 활성화 탭에서 실제 활성화 정책을 정의하십시오.
        • 주기적을 선택하는 경우 일반 탭의 활성화 섹션에서 기간, 오프셋 및 지속 기간을 지정하십시오.
      • 필요한 경우 보호됨을 선택하십시오. 이 선택란을 선택하면 이 필드에서 보호되는 모든 활성 오퍼레이션이 상호 배타적이 되도록 지정합니다. 이 조치는 보호된 오퍼레이션에 대해 생성된 모든 실행 가능 항목이 “내부 실행”으로 지정된 전용 AUTOSAR 독점 영역에서 구현됩니다.
참고: Rational Rhapsody 구현 블록(RIMBs)의 특성, 액세스 및 활성화 탭 요소 또는 구현 블록(RIMB) 인터페이스를 추가하는 방법의 자세한 내용을 보려면 "Rational Rhapsody 구현 블록(RIMB)의 특성 정의", "비동기 활성 요소의 액세스 및 활성화 정책 지정" 및 "Rhapsody 구현 블록(RIMB) 인터페이스 추가" 주제를 참조하십시오.

이 학습서에서는 LightsManager 샘플의 예제로 생성된 AR 아티팩트를 액세스 및 활성화 테이블에서 구동하는 방법이 다음 그림에 표시되어 있습니다.

변환기

생성된 헬퍼 함수는 다음 그림과 비슷하게 표시됩니다.

변환기

다음 그림에 AUTOSAR SW/C의 구현 결과 예가 표시되어 있습니다.

참고: 관련 정보: 자동 RIMBO 작성
< 이전 | 다음 >

피드백