Controller Area Network(CAN)

  • 차량 내에서 호스트 컴퓨터 없이 MCU나 장치들이 서로 통신하기 위해 설계된 표준 통신 규격
  • 차량 내 ECU(Electronic control unit)들은 CAN 프로토콜 사용하여 통신

특징

  1. 메시지 지향성 프로토콜(Message-Oriented Protocol)

    • 메시지 우선순위에 따라 ID 할당 → 이 ID를 이용해 메시지 구별

      ex. 임의의 한 노드 A가 메시지를 전송

      → 나머지 노드들은 A가 전송한 메시지가 자신에게 필요한 메시지인지를 판단(ID기반 판단)

      → 자신에게 필요하다면 받아들이고, 아니라면 무시

  2. 보완적인 에러 감지 매커니즘

    • 높은 안정성 보장
      • 다양한 에러 감지 매커니즘이 상호 보완적으로 에러 감지
    • 짧은 에러 회복 시간
      • 메시지 전송 시 에러가 감지되면 자동으로 해당 메시지를 즉시 재전송하는 기능
  3. 멀티 마스터 능력

    • 감독자 노드 필요 없음

      • CAN 기반 네트워크는 버스 점유를 위한 감독자 노드(Bus Master) 필요 없음

      • 모든 노드가 버스 마스터로 버스가 비어있다면(idle) 언제든지 메시지 전송 가능

      • 모든 노드는 버스가 비워지는 즉시 메시지 전송 시작

        ex. CAN 버스에서 두 개의 노드가 메시지를 동시에 전송하려고 하면, 우선순위(식별자, ID)에 따라 각각 전송됨

        → 우선순위가 높은 메시지(더 낮은 ID번호가 우선순위 높음)가 먼저 전송

  4. 결점 있는 노드의 감지와 비활성화

    등장 배경

  • 초기에는 자동차 내 모듈이 많지 않아 UART 방식(일대일, Point-To-Point)로 ECU 연결
  • 서로 다른 모듈간 통신을 위해 많은 선(Line)이 필요해짐
    • 유지 보수 문제, 무게 증가, 연비 하락의 문제 발생
  • CAN 등장
  • 여러 개의 CAN 디바이스가 서로 통신할 수 있는 안정적인 네트워크(다중 통신 방식, Multi Master 방식) 제공
  • ECU가 시스템 내 디바이스마다 아날로그 및 디지털 입력 대신 단일의 CAN 인터페이스만 보유

→ 자동차의 비용과 중량 감소 효과

CAN 통신의 종류

  1. C-CAN (Chassis CAN)
    • 고속 CAN 통신을 하고 CLU, YRS엔진, 미션, ABS, ECU(엔진), TCU 등 빠른 데이터 통신을 요구하는 ECU에서 사용됨
  2. B-CAN (Body CAN)
    • C-CAN에 비해 저속 통신을 하고 BCM 라이트, 파워윈도우, 스마트 키 모듈과 같은 주행과 관계 없는 통신에 주로 사용됨
  3. M-CAN(Multimedia CAN)
    • 전자 기기들로 네비게이션, 차량 내 멀티미디어 통신 기기와의 연동을 위한 각종 모듈을 포함
  4. P-CAN (Power CAN)
    • DATC 모듈, TCU, EMS(ECU, 각종 센서, 각종 액츄에이터) 등이 있으며 샤시 관련해서 겹치는 통신이 있음
  • 각 CAN의 통신 속도는 125Kbps~1Mbps
참고 자료

CAN 프로토콜 통신

CAN 통신의 이해 | FESCARO

'technology > IP' 카테고리의 다른 글

SPI (Serial Peripheral Interface)  (0) 2022.11.03
Memory Types on Embedded Programming  (0) 2022.11.01
ADC (Analog-to-Digital Converter)  (0) 2022.09.30

+ Recent posts