관리 메뉴

드럼치는 프로그래머

[자동차] CAN 통신1 본문

★─My Life/☆─자동차 통신

[자동차] CAN 통신1

드럼치는한동이 2011. 4. 14. 14:01

CAN 통신

 

CAN 프로토콜의 이해

 

1) CAN 프로토콜의 개요

 

CAN 프로토콜의 변천과정은 다음과 같다.

① 자동차용 네트워크의 표준이라고 할 수 있는 CAN(Controller Area

Network)은 1986년 2월 SAE(Society of Automotive Engineers,

자동차기술자 협회)에서 독일의 로버트 보쉬사가 제안

② 1991년 CAN 프로토콜 2.0 발표

③ 1992년 메르세데스 벤츠사가 CAN을 채택한 자동차 출시

④ 1993년 11월 ISO 국제표준규격으로 "ISO 11898" 공개

⑤ 1988년 Bosch와 Intel에서 개발된 차량용 네트워크 시스템

CAN 통신은 마이크로컨트롤러들 간의 통신을 위해 설계된 시리얼 네트워크 통신방식으로 여러 개의 CAN 디바이스(device)가 서로 통신할 수 있는 경제적이며 안정적인 네트워크(network)를 제공한다.

단 하나의 CAN 인터페이스(interface)로 여러 개의 ECU (Electronic Control Units)를 제어함으로서 자동차의 전체 비용(cost)과 중량을 줄일 수 있고 시스템 제어 속도와 안전성을 향상시킬 수 있다.

또한 각 디바이스마다 CAN 컨트롤러 칩이 있으므로 효율적으로 각 시스템을 제어할 수 있다.

① CAN은 ISO(International Standards Organization)와 SAE(Society Automotive Engineers)의 표준 프로토콜이다.

② 멀티 마스터 통신을 한다.(CAN컨트롤러들은 모두가 Master역할을 하므로 원할 때 사용이 가능하다).

③ 사용되는 전선의 길이가 짧다(2선 만을 사용하기 때문에 많은 컨트롤러들이 버스를 공유하더라도 추가되는 선의 양이 거의 없다).

④ 각 시스템의 고장진단을 위한 자기진단이 간편하다(모든 시스템이 CAN통신 방식으로 진단이 가능함에 따라 자기진단 커넥터에 전원12V, 접지, CAN High, CAN Low 4개의 라인만 있으면 모든 시스템의 진단이 가능해 자동차의 자기진단 라인도 매우 간단해 진다).

PLUG & PLAY 를 제공한다(간편하게 CAN 컨트롤러를 버스에 연결하고 끊을 수 있다).

⑥ 우선순위가 있다.

⑦ ECU의 분산제어 적용이 용이하다.

⑧ 설정된 ID 만 골라 수신할 수 있다.

⑨ 다른 통신에 비해 장거리 통신이 가능하다(1km 정도)

 

 

2) CAN 프로토콜의 필요성

① 차량 적용 센서(sense)의 공용화 요구

② ECU간의 정보 공유의 필요성

③ 노이즈의 영향을 적게 받는 통신의 필요성

④ 차량의 중량 감소 및 신속한 제어의 필요성


3) CAN 프로토콜의 장점

 

① 다량의 정보 전달이 가능하다.

② 생산원가가 낮고 정비성이 우수하다.

③ 스캐너를 통해 송·수신 데이터의 확인과 고장진단이 가능하다.

④ 시스템의 신뢰성과 확장성이 우수하다.

⑤ 노이즈에 매우 강하다(twist pair 2선을 사용한 전기적 differential 통신).

⑥ 통신 속도가 비교적 빠르다(CAN C, 고속CAN 전송속도 500k~1Mbps).

 

4) CAN 프로토콜의 특성

 

여러 개의 ECU를 병렬로 연결하여 데이터를 주고받는 통신방법이다.

2가닥의 꼬임선(Twist Pair Wire)으로 연결되어 있다.

③ CAN BUS는 아래 그림과 같이 직렬통신 프로토콜이다.

④ 주소가 아닌 ID(identifier)에 의해 메시지의 내용과 우선순위가 결정된다.

⑤ 모든 노드(node)는 공통 보-레이트(baud rate)를 사용한다.

 

 

 

노드(node): 일반적으로 네트워크 시스템에서는 연결점을 노드로 나타내는데, 데이터 송·수신의 끝점을 말하기도 한다.

컴퓨터 통신제어에서는 사용되는 컴퓨터를 노드라 하는데, 자동차 통신제어에서는 각 버스라인에 연결된 ECU를 나타낸다.

 

보 레이트(baud rate): 마이크로컨트롤러에서 데이터 통신속도를 나타내는 단위로 사용된다.

일반적으로 마이크로컨트롤러의 전송속도는 변조속도로 많이 나타낸다.

bps(bits per sec)는 1초에 몇 비트의 데이터를 전송할 수 있는가를 나타내지만, 보 레이트는 1초에 얼마를 변조할 수 있는가를 나타내는 단위이다.

 

이제부터 구체적으로 자동차 CAN 통신에 대해 살펴보도록 하겠습니다.

 

한국폴리텍대학   자동차과    정태균


'★─My Life > ☆─자동차 통신' 카테고리의 다른 글

[자동차] OBD-II 커넥터  (0) 2011.04.18
[자동차] CAN 통신2  (1) 2011.04.14
Comments