CAN통신을 들어보셨나요?



-위키백과(CAN버스)-


CAN(Controller Area Network)은 차량 내에서 호스트 컴퓨터 없이 마이크로 콘트롤러나 장치들이 서로 통신하기 위해 설계된 표준 통신 규격이다.


1983년 최초로 Bosch사에서 개발하였고 현재 생산되는 대부분의 자동차에서 사용되고 있다.


CAN통신은 OBD-II 라고 불리는 차량 진단용 통신 표준의 5대 프로토콜 중 하나로 포함되어 있다.


위 표준은 미국에서 판매되는 차량의 필수사항으로 적용되고 있다.


(출처 : 위키백과)





위키백과에서 대략적인 흐름을 잘 말해주고 있습니다.


즉 차량내에 ECU(Electronic Control Unit)들은 CAN방식으로 통신하고 있습니다.




(출처 : http://infialpha.com)


초기에는 UART방식으로 통신하였지만 UART는 일대일(Point to Point)방식으로 


ECU의 수가 증가하면 배선이 증가하게 되어서 관리도 힘들고 무게 측면에서도 비효율적이었습니다.


위의 UART의 단점을 CAN방식 통신은 극복하고 있습니다. 


(현재 자동차에는 인포테인먼트, 전기차의 배터리 등으로 ECU의 수가 증가하고 있습니다.)




CAN통신의 핵심은 차동방식이라고 생각합니다.


(http://www.epnc.co.kr)


이게 차동방식을 보여주는 신호 파형입니다.


보통 신호선과 GND선으로 구성되어있지만


CAN통신은 CAN_H, CAN_L와 GND로 구성되어있어 CAN_H, CAN_L의 차이로 신호를 파악합니다.


여기서 일반 신호선에 잡음이 들어가면 신호를 파악하기 힘들어지지만


CAN통신에서 CAN_H 와 CAN_L의 선은 보통 꼬여있습니다. 따라서 잡음이 비슷하게 적용됩니다.


결국 CAN_H와 CAN_L의 차이로 신호를 파악하면 잡음의 영향이 줄어들게 되는 강점이 있습니다.




CAN통신의 장점!!!!!


1. 노이즈에 강함


2. 저비용


3. 빠른 통신 속도(1Mbps)


4. 장거리 통신 가능(1km)




CAN통신을 살펴보다 보면 자동차에 사용되는 통신 용어중에 LIN과 FlexRay가 있습니다.



LIN(Local Interconnect Network)


가장 느리고 싸다.


따라서 자동차에서 비교적 고속이 필요하지 않은 부분에 사용한다. (비용 절감을 위해 - single wire)


FlexRay


가장 비싸지만 빠르고 안전하다.


CAN통신보다 더 빠른 속도를 요구하는 부분에 사용한다.


MOST(Media Oriented Systems Transport)


고속으로 멀티미디어 데이터를 전송할 때 사용한다.

+ Recent posts