예제 Message
※ DBC에서 셋팅해야 할 기본적인 사항들
1. Network Protocol
2. Network ECU
3. Network Message(ID, Name, Length(byte), Cycle, Rx&Tx ECU, signal, Layout)
4. Signal(Name, Length(bit), Factor, Offset, Min, Max)
1. CANoe 실행
- 경로에는 한글이 포함되면 안됨
- 확장자명은 cfg(DBC의 확장자명은 .dbc)
- cfg에서 Tool => CANdb++ Editor 선택
※ CANdb++에서 직접 생성할 수도 있음
- CABdb++에서 File => Create Database => DBC Template 선택(Template은 상황에 따라 달라질 수 있음)
- cfg 파일이 저장된 곳에 저장하기!
- 폴더명은 편한대로 정해도 됨!
- CAPL은 일종의 코드(시나리오, 즉 Event를 만들 때 사용됨, CAN통신은 Event driven)
- PANNEL은 일종의 UI라고 생각하면 편함
- CAPL, PANNEl은 아님, 근데 CAPL은 꽤 중요함
Message 만들기
1. Network Protocol 정하기
2. ECU 만들기
- Name에 ECU 이름을 설정
- Adress 설정은 크게 신경쓰지 않아도 됨. 명세서에 요구가 되어 있다면 변경하면 된다
- 다음과 같이 ECU 생성!
3. Message 만들기
- 0x123, BMS 메시지를 예시로 만들겠습니다
- Name에 메세지 이름
- Type은 CAN Standard/CAN Extended 존재
- ID는 Message ID(이건 반드시 정의해야 함
- DLC는 데이터 길이, 예제에서 BMS는 8Byte
- Attributes에서 주기 설정!(Message 주기를 유동적으로 변경하고 싶은 경우 설정하지 마세요!!)
4. Signal 생성
- Signal Name, Length, Byte Order, Value Type, Factor, Offset 생성(일부만 생성)
- Calculate minmum & maximum 버튼은 데이터 최소~최대 범위를 자동으로 계산 해준다
5. Message에 Signal 넣기
- 원하는 Signal을 Message로 Drag & Drop하면 됨
- Edit Message => Layout에서 각 Signal의 Start bit을 설정(Drag하면 됨)
6. Message Tx & Rx 정하기
- Tx의 경우 원하는 ECU에 Drag & Drop하면 됨
- 위의 경우 BMS msg를 BMS_Controller에 Drag & Drop함, Tx Messages에서 확인 가능
- Rx의 경우 Message를 받는 ECU에서 직접 설정해야 함(Drag & Drop이 안됨...)
- Edit Node => Mapped Rx.sig => Add(message 또는 Signal을 추가할 수 있음)
- Rx에 Message가 추가된 모습을 오른쪽 사진에서 확인할 수 있음(일부만 만듬)
'CAN(Controller Area Network)' 카테고리의 다른 글
CANoe - CAPL로 신호 생성하기 (1) | 2023.12.20 |
---|---|
CANoe -Panel 만들기 & Graphic, Data window (0) | 2023.12.19 |
CANoe - 실행 & Trace window (0) | 2023.12.19 |
CAN(Controller Area Network) & CAN DATA Frame (0) | 2023.12.06 |