AUTOSAR RTE5 실습#
아래 그림은 RTE5 실습의 설계도 입니다.#
0. 목차#
- Project 생성
- VFB level
- RTE level
- C coding
- ECU Mapping
- ECU Extract
- ECU Configuration
- Generate & Build
1. Project 생성#
-
File
→Import
→General
→Existing Projects into Workspace
→Next
선택
-
Base Project 선택 →
Copy projects into workspace
체크 →Finish
클릭
Copy projects into workspace
는 원본 프로젝트 보존하고 workspace에서 실습하기 위함
2. VFB level#
-
Configuration → System → Swcd_App
우클릭 →New → AUTOSAR File
선택
-
Package name과 File name 입력 →
Finish
클릭
-
생성한 AUTOSAR 파일 열기 → 화살표 클릭
-
App_Rte
우클릭 →New
→Application Sw Component Type
선택
-
SWC 이름 설정:
SWC_Trigger1
,SWC_Trigger2
생성
Supports Multiple Instantiation
: false
Interface 생성#
-
App_Rte[ARPACKAGE]
우클릭 →New
→Sw Component: Port Interface
→Trigger Interface
선택
-
Short Name:
If_Trigger
→Is Service
: false - Trigger 생성 :
Trigger
클릭 →+
클릭 →Trigger1
,Trigger2
생성
SWC_Trigger1 설정#
-
Ports
→+
클릭 →Trigger Interface
→Trigger Source
→If_Trigger
선택
-
Short Name:
P_Trigger
-
+
클릭 →Client Server Interface
→Client
→IoHwAb_If_DigDir
선택
-
Short Name:
R_LED01
→Enable Provided Com Specs
체크 →WriteDirect
선택
SWC_Trigger2 설정#
-
Ports
→+
클릭 →Trigger Interface
→Trigger Sink
→If_Trigger
선택
-
Short Name:
R_Trigger
-
+
클릭 →Client Server Interface
→Client
→IoHwAb_If_DigDir
선택
-
Short Name:
R_LED01
→Enable Provided Com Specs
체크 →WriteDirect
선택
CSWC 생성 및 연결#
-
App_Rte[ARPackage]
우클릭 →New
→Composition Sw Component Type
선택 -
Short Name:
CSWC_TriggerSystem
-
Components and Ports
→+
클릭 →SWC_Trigger1
,SWC_Trigger2
추가
-
Automatic Connection
→+
클릭
-
Respect Naming Rule
,Identical Port Interface
체크 상태에서 자동 연결 확인
3. RTE level#
Runnable 설정: SWC_Trigger1#
-
Runnables
→+
클릭 → Short Name:RE_Trigger
→ Symbol:Trigger_func
→Can Be Invoked Concurrently
: false
-
RTE Event
→Add
→Timing Event
선택 → 5 msec 더블 클릭 → 주기: 500ms
-
Operation/Mode/Trigger Access
→Add
→Internal Triggering Points
선택 -
Operation/Mode/Trigger Access
→Add
→External Triggering Points
→P_Trigger.Trigger1
선택
-
Runnables
→+
클릭 → Short Name:RE_IntTrigger
→ Symbol:IntTrigger_func
→Can Be Invoked Concurrently
: false
-
RTE Event
→Add
→Internal Trigger Occurred Event
→ITP_RE_TriggerMain
선택 -
Operation/Mode/Trigger Access
→Add
→Synchronuous Server Call Points(SSCP)
→R_LED01.WriteDirect
선택
Runnable 설정: SWC_Trigger2#
-
Runnables
→+
클릭 → Short Name:RE_ExtTrigger
→ Symbol:ExtTrigger_func
-
RTE Event
→Add
→External Trigger Occurred Event
→R_Trigger.Trigger1
선택
-
Operation/Mode/Trigger Access
→Add
→Synchronuous Server Call Points(SSCP)
->R_LED01.WriteDirect
선택
4. C coding#
-
Static_Code
→Reference_Code
→src
우클릭 →New
→File
선택 -
파일명:
SWC_Trigger1.c
,SWC_Trigger2.c
생성
-
각각 코드 작성 후 저장
5. ECU Mapping#
Configuration
→System
→Composition
→RootComposition.arxml
→AUTOSAR
→CSWC_RootComposition [Composition]
더블클릭Components and Ports
→+
클릭 →CSWC_TriggerSystem
선택
6. ECU Extract#
-
Auto-Wiz
→System Configuration & ECU Extract
선택
→ECU Software Components Mapping
클릭
-
Performs Flattening
체크 →Apply
클릭
7. ECU Configuration#
-
우측 상단 초록 아이콘 클릭 →
Generate ECU Configuration
선택
-
Next
→Service
→Rte
선택 →Next
Rte: Generate SwcInstance Configuration
체크 →Finish
클릭
Task Mapping#
-
우측 초록 아이콘 클릭 →
Rte
선택
-
Task Mapping
탭 →SwcInstance_SWC_Trigger1
선택 →OsTask_ASW_FG1_100ms
선택 →TE_RE_Trigger
선택 후Add
-
OsTask_BSW_FG3_ComMModeRequest
선택 →ITOE_RE_IntTrigger_ITP_RE_Trigger
선택 후Add
-
Task Mapping
탭 →SwcInstance_SWC_Trigger2
선택
→OsTask_BSW_FG3_ComMModeRequest
선택 →ETOE_RE_ExtTrigger_R_Trigger_Trigger1
선택 후Add
External Trigger Source Reference 추가#
-
우측 초록 아이콘 클릭 →
Rte
선택
-
SW Component Instance
탭 → Navigator의SwcInstance_SWC_Trigger1
→External Trigger Config
→Swc Trigger Source Ref
클릭 →Trigger1
선택
→Trigger2
도 동일하게 진행
스위치/LED 연결#
Service and I/O
→P_IoHwAbDigitalDirectLogical_LED_Red
선택
→Automatic Connection
에서+
클릭 →Respect Naming Rule
해제 →R_LED01
두 개 선택
8. Generate & Build#
-
Build
→Scons.arxml
→AUTOSAR
→AUTRON
→SCons
더블클릭 →All Contents
클릭
-
Navigator의
Scons
→RTSW
→Generation
→Module
이동 →Rte
더블클릭
-
Input Files List
→Add..
클릭 -
App_Rte
입력 후Add
클릭 -
화면 왼쪽 상단의 망치 버튼(Build) 누르기