1. CAN 통신이란?
CAN(Controller Area Network)은 호스트 컴퓨터 없이 마이크로 컨트롤러와 각종 장치들이 상호 간에 통신할 수 있도록 설계된 메시지 기반 프로토콜로서 자동차에서 사용되는 표준 통신 규격입니다.
2. CAN 통신 등장 배경
1980년대 자동차 산업이 발전하면서 차량 내 전자제어장치(ECU, Electronic Control Unit)가 급격히 증가했고 ECU 간 데이터 공유의 필요성이 커졌습니다.
초기에는 차량 내 ECU를 개별적으로 연결하는 점대점(Point-to-Point) 통신 방식이 사용되었지만, ECU 수가 증가하면서 배선이 과도하게 많아지고 이로 인해 비용과 무게가 증가하는 문제가 발생하였습니다.
이 문제를 해결하고자 1983년 독일의 보쉬(Bosch) 사는 CAN 프로토콜을 개발했으며, 이후 1993년 국제 표준(ISO 11898)으로 등재되었습니다.
CAN 통신은 다수의 ECU를 하나의 네트워크로 연결할 수 있어 배선 수를 줄이고 비용 절감과 차량의 무게 감소 효과를 얻을 수 있습니다. 또한 우선순위 기반 버스 중재 방식을 적용하여 실시간 통신이 가능하도록 하였습니다

3. CAN 통신의 장점

- 멀티 마스터(Multi-Master) 통신
CAN 네트워크에 연결되는 모든 노드는 동등한 권한을 가지며, 버스가 비어 있다면 어떤 노드든 메시지를 전송할 수 있습니다. 또한, 모든 노드는 해당 메시지를 수신하여 처리할 수 있습니다.
- 간단한 구조
CAN High, CAN Low 두 개의 선만으로 여러 개의 ECU를 연결할 수 있어 배선이 간단하고 비용이 절감됩니다.
- 우선순위 기반 노드 중재
여러 노드가 동시에 데이터를 송신하려고 하면 식별자(ID)가 낮을수록 우선순위를 가집니다. 여러 노드가 동시에 데이터를 송신하려고 할 때 우선순위가 높은 메시지가 먼저 전송되고 우선순위가 낮은 메시지는 자동으로 대기 상태가 됩니다.
- 실시간 데이터 전송 가능
최대 1Mbps (CAN) / 8Mbps (CAN FD) 속도를 지원하여 실시간 데이터 전송이 가능합니다.
- 장거리 통신
전송 속도에 따라 통신 가능한 거리가 달라지므로 장거리 전송 시에는 저속 설정이 필요합니다
- 1Mbps -> 최대 40m
- 500kbps -> 최대 100m
- 125kbps -> 최대 500m
- 40kbps -> 최대 1km
- 탁월한 에러 처리와 제한 기능
에러가 지속적으로 발생하는 노드는 자동으로 네트워크에서 차단되어 문제가 있는 노드가 전체 네트워크에 영향을 미치는 것을 방지할 수 있습니다.
4. CAN High, CAN Low 신호

CAN 통신은 CAN High/Low 간의 전압 차를 이용하여 데이터를 표현합니다.
- CAN High - CAN Low 값이 0.9 ~ 5V → “0” Dominant 상태
- CAN High – CAN Low 값이 -0.1 ~ 0.5 → “1” Recessive 상태
- Dominant 가 Recessive 보다 우선순위가 높습니다.
CAN High/Low 간의 전압 차를 이용한 장점은 노이즈에 강한 특성을 갖고 있습니다.
마무리
CAN 통신은 자동차, 산업 자동화, 의료기기 등 다양한 분야에서 널리 사용되고 있습니다. 자율주행, 전기차 같은 미래 기술이 발전함에 따라 CAN 통신도 더욱 중요한 역할을 하게 될 것 같습니다.
'모빌리티 AI' 카테고리의 다른 글
HILS 검증이란? (0) | 2025.04.22 |
---|---|
자동차 SW - UDS 진단 통신 (0) | 2025.04.22 |
ISO 26262: 자동차 기능 안전 표준 이해하기 (2) | 2025.04.08 |