본문 바로가기

CAN(Controller Area Network)

CAN(Controller Area Network) & CAN DATA Frame

CAN이란?

- CAN이란, 차량 내에서 호스트 컴퓨터 없이 MCU나 장치들이 서로 통신하기 위해 설계된 표준 통신 Protocol

 

- Broad Cast 방식으로 연결되어 있어, Bus를 통해 모든 ECU로 전달 가능(단 해당 ECU는 필요한 ID만 filtering) 

- 차량에 들어가는 harnesses를 기하급수적으로 줄일 수 있게 함

 

CAN DATA Frame

 

1. SOF

- CAN message의 처음을 알리는 부분, 동기화를 위해 사용함. Dominant(0) 값을 가짐

 

2. Arbitration Field(Identifier & RTR)

- CAN 2.0A는 11, CAN 2.0B는 29bit로 구성되어 있음

- ID & RTR(data인지 remote인지)로 구성되어 있음, RTR값이 1일 경우, Remote Frame(데이터를 요청하는 Frame)

 

3. Control Field

- IDE는 standard(0)인지, Extended(1)인지 구분하는 비트

- r 비트는 향후 특수한 목적을 위해 예약된 비트, 값은 0

- DLC(Data Lenth Code)는 Data의 길이는 나타내는 4비트로, 0~8까지 표현 가능

 

4. Data Field

- 8byte(64bit)로 구성된 Data field

- DLC값이 3이라면, 3바이트의 Data를 갖고 있다는 의미!

 

5. CRC Field

- 데이터의 무결성 검증을 위한 15bit의 CRC코드와 DEL(Data Field의 끝을 의미하며 값은 1)로 구성

CRC는 추후 정리 예정

 

6. ACK Field

- 2bits로 구성, 첫 비트는 Slot, 두번째는 del(값은 1)

- 수신 노드가 문제없이 DATA를 받았다면 ACK slot에 0을 write, 송신 노드는 BUS 모니터링을 통해 이를 확인

  만일 Slot에 1이 쓰인다면, 다시 송신

 

7. EOF

- 7bit로 구성됨, 값은 모두 1 

 

CANFD

 

- CAN 2.0 확장 버전

- 데이터 전송률 증가(최대 1Mbps)

- 최대 64byte(기존 8byte)까지 데이터 저장 가능

- 기존 CAN 2.0과 호환성, 보안, 안정성 기능 유지

 

※ bps(bit per second) : 초당 전달할 수 있는 비트의 크기

'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
CANoe - DBC 만들기  (0) 2023.12.16