본문 바로가기

자율주행 이론

차량 네트워크 : CAN, LIN, FlexRay

    자율주행 차량은 내부의 각 시스템 간 정보교환을 위해 다양한 방식의 유무선 통신을 활용한다. 이는, 자율주행 차량 내 시스템이 차량의 주변 상황을 인식하기 위한 센서 시스템, 구동을 위한 기본적인 전장 시스템, 엑추에이터, high level 제어기, 주변과의 무선 통신을 위한 OBU 등으로 다양한 시스템이 유기적으로 얽혀있기 때문이다. 각 시스템에 따라 적합한 유무선 통신 방식과 프로토콜이 다르기에 자율주행 차량 내에는 다양한 방식의 유무선 통신이 활용된다. 자율주행 차량에서 활용되는 대표적인 통신 프로토콜은 CAN, LIN, FlexRay, Ethernet 등이 있으며 이 중 차량에서만 사용되는 대표적인 3가지의 통신 프로토콜은 CAN, LIN, FlexRay로 들 수 있다. 각 통신 프로토콜의 특징과 장단점은 다음과 같다.

 

728x90

 

CAN 통신

우선, CAN 통신은 민간회사 BOSCH의 주도로 개발된 차량용 통신 프로토콜이다. 현재 가장 범용적으로 쓰이는 통신 기법으로 주로 차량 내 제어 명령이나 진단 통신에 활용된다. 제어기 간 안정적인 정보 교환이 가능하며 Classic Can, TT CAN, Low-speed CAN, CAN-FD 순으로 안정성과 속도가 발전하는 방향으로 개발되어 왔다. CAN 통신은 high와 low 두 가지 통신선으로 이뤄지며 연결된 각 제어기는 모두 master가 될 수 있다는 장점을 갖는다. 또한 twisted pair 구조로 기존의 일대일 대응 연결 기법에 디해 단순한 선로를 구성 가능하여 차량의 무게를 절감함으로써 연비를 절감 수 있다. Bus topology를 차용하여 제어기의 추가 및 삭제가 용이하다는 장점이 존재한다. 단점은, Ethernet 통신 기법에 비하여 상대적으로 속도가 느리므로 대용량 센서 데이터를 수신하고 이를 처리하는 센서 시스템과 high level 제어기를 연결하는데에는 적합하지 못하다는 단점을 갖는다.

 

LIN 통신

LIN 통신은 차량 내 센서 정보를 다른 제어기에 전달 시 사용하는 통신 기법이다. 일반적으로 CAN 통신을 활용할 때보다 개발 및 재료 비용이 저렴한 특징을 갖는다. 유선 방식을 활용하며 차량용 내부 통신 중 하나이다. Sigle wire 방식으로 구성된다. 서브 네트워크 방식으로 CAN과 함께 조합하여 활용될 수 있으며 센서과 간단한 기능 제어에 활용된다. 단순한 기능을 구현하기 위하여 CAN을 활용하는 것은 불필요한 자원 낭비이므로 LIN을 활용함으로써 단순 기능을 구현하여 비용 절감 및 구현의 단순화를 이룰 수 있다. 하나의 master와 여러 개의 slave 구조로 이뤄짐으로써 스케쥴링이 가능하다는 장점이 있다. 이를 통해 지정한 시간에 메시지가 전달될 수 있는 장점을 갖는다. 또한 트랜시버 칩 교체로 여러 MCU에서 호환가능하다는 장점잉 있다. 그러나, 메시지 크기와 속도 제한으로 인하여 단순한 센서 정보 수신 및 간단한 기능 제어 외에는 적용이 어렵다는 단점이 존재한다.

 

FlexRay 통신

FlexRay 통신은 twisted pair로 이루어지며 CAN과 달리 네트워크가 차폐되지 않는 구조를 갖는다. 차폐되어 있지 않음에도 불구하고 외부 노이즈로부터 강인한 장점을 갖는다. 또한 time-triggered schedule communication이 가능하다는 장점이 있다. 이를 통해 유연한 스케쥴링이 가능하다. FlexRay는 Classic Can보다는 빠르다는 장점을 갖으나, Ethernet에 비하면 느린 전송 속도를 가지므로 라이다와 같은 고성능 센서에 적용되기에는 어렵다는 단점을 갖는다.

본 글은 필자가 작성한 글을 이관한 글입니다: 차량네트워크 : CAN, LIN, FlexRay (velog.io)

728x90