팜테크(FAMTECH)
캔통신(CAN Communication)이란? CAN Bus Basics : A Simple Guide, 프레임 구조 본문
캔통신(CAN Communication)이란? CAN Bus Basics : A Simple Guide, 프레임 구조
FAMTECH 2023. 11. 11. 15:27
목차
"관련제품 문의는 로고 클릭 또는 공지사항의 연락처를 통해 하실 수 있습니다."
캔통신(CAN Communication), CAN Bus Protocol이란?
캔(CAN) 버스 프로토콜은 자동차와 같은 분야에서 중요한 역할을 합니다. BOSCH에 의해 개발된 이 시스템은 자동차 내의 다양한 전자 제어 장치(ECU)들 간의 통신을 위해 만들어졌습니다. 자동차의 기술이 발전함에 따라, 복잡한 데이터와 빠른 속도의 통신이 필요해졌고, 캔 버스는 이러한 요구를 충족시키는데 핵심적인 역할을 했습니다.
캔 버스는 각 모듈 간의 통신을 위해 자동차 내부에 수 킬로미터의 전선을 깔 필요가 없도록 설계되었습니다. 이는 차량의 무게를 줄이고, 통신 효율을 높이는 데 큰 기여를 했습니다. 또한, 캔은 다양한 기능을 갖추고 있어서 자동차 산업에서 빠르게 인기를 얻었습니다. 이러한 특성들 덕분에 오늘날 현대 자동차의 복잡한 네트워크를 효과적으로 관리할 수 있게 되었습니다.
CAN 주요 기능
- 꼬인 전선 케이블 사용: 캔은 두 개의 꼬인 전선 케이블을 사용하여 통신합니다. 이 구조는 신호 간섭을 줄여줍니다.
- 다수의 ECU 연결: 여러 전자제어장치(ECU)를 동일한 캔 버스에 연결할 수 있습니다.
- 무게와 비용 감소: 적은 양의 전선을 사용함으로써 무게와 비용을 줄일 수 있습니다.
- 오류 감소: 데이터 전송 시 오류를 줄여 안정성을 높입니다.
- 데이터의 빠른 교환: 중재 과정을 사용하여 우선순위가 높은 데이터가 버스에 먼저 접근할 수 있습니다.
- 업그레이드 가능성: 캔 시스템은 기술 발전에 따라 업그레이드가 가능합니다.
- 표준 CAN 2.0A: 11비트 식별자를 사용하여 총 2,048개의 고유 메시지를 전송할 수 있습니다.
- 확장된 CAN 2.0B: 29비트 식별자를 사용하여 약 5억 36백만 개의 메시지를 전송할 수 있습니다
캔통신 기본 동작(CAN Communication Basic)
캔 버스의 기본 레이아웃은 두 개의 꼬인 전선으로 구성되며, 이는 끝단에서 종료됩니다. 이러한 구조는 다수의 전자제어장치(ECU) 또는 필요한 모든 시스템이 이 전선들에 연결될 수 있게 합니다. 이는 캔 네트워크에 장치의 수에 제한이 없음을 의미합니다.
캔은 데이터를 네트워크에 연결된 모든 노드에게 제공하는 방식(Broadcasting)을 사용합니다. 정보가 필요한 사람들은 그것을 활용하고, 그렇지 않은 사람들은 무시합니다. 캔 네트워크에서도 각 노드는 자신에게 유용한 데이터를 수락하고 나머지는 무시합니다. 여기서 데이터는 우선 순위에 따라 작동하며, 모든 노드는 '마스터(Master)'로 기능합니다. 즉, 전통적인 마스터-슬레이브 구조가 없으며, 모든 노드가 동등한 역할을 합니다
캔 버스의 전압 수준과 전송 모드는 다음과 같이 작동합니다.
- 전압 수준: 표준 캔 버스는 5V 차등 신호로 운영됩니다. 이는 두 전선 간의 전압 차이를 이용하여 데이터를 전송합니다.
- 도미넌트 및 리세시브 모드(Dominant, Recessive State): 캔에서 '0'은 도미넌트 모드, '1'은 리세시브 모드를 나타냅니다. 도미넌트 모드는 더 강력한 신호를 나타내며, 데이터 버스에서 우선순위가 높습니다. 리세시브 모드는 더 약한 신호를 나타내며, 도미넌트 상태와 충돌할 경우 도미넌트 상태가 우선합니다.
이러한 방식은 캔 네트워크에서 데이터 충돌을 관리하고, 효율적인 데이터 전송을 보장하는 데 중요한 역할을 합니다. 예를 들어, 여러 장치가 동시에 데이터를 전송하려고 할 때, 도미넌트 상태를 가진 메시지가 리세시브 상태를 가진 메시지보다 먼저 전송됩니다. 이는 네트워크의 혼잡을 줄이고, 통신의 안정성을 높입니다.
CAN Communication Data Frame
캔 데이터 프레임은 여러 필드로 구성되어 있으며, 각 필드는 데이터 전송 과정에서 중요한 역할을 합니다.
- SOF (Start of Frame): 데이터 프레임의 시작을 나타내며, 도미넌트 '0'으로 표시됩니다.
- 주소 필드 (Address Field): 데이터의 우선 순위를 결정합니다. 주소가 낮을수록 우선순위가 높고, 도미넌트 '0'이 많은 주소가 가장 높은 우선순위를 갖습니다. 동일한 메시지 주소를 두 노드가 동시에 전송할 수는 없습니다.
- RTR (Remote Transmission Request): 연속적인 데이터 전송이 필요 없는 노드로부터 데이터를 요청할 때 사용됩니다. 특정 노드와의 직접적인 통신을 가능하게 합니다.
- 중재 (Arbitration): 어떤 노드가 특정 시점에서 마스터 역할을 할지 결정합니다. 논리적 '1'을 전송하는 노드는 논리적 '0'을 전송하는 노드에게 중재에서 패배합니다.
- IDE (Identifier Extension Bit): 향후 사용이나 확장을 위한 비트입니다. 리세시브 IDE는 추가적인 18비트의 주소를 생성합니다.
- RSRV (Reserve Bit): 미래의 업그레이드를 위해 예약된 비트입니다.
- DLC (Data Length Code): 데이터 길이를 나타내며, 0에서 8바이트 사이의 값을 가집니다.
- DATA: 사용자가 정의한 데이터로, 0에서 64비트 사이의 값을 가질 수 있습니다.
- CRC (Cyclic Redundancy Check): 오류나 데이터 손상을 탐지합니다.
- ACK (Acknowledgement): 수신측에서 데이터 수신을 인정합니다.
- EOF (End Of Frame): 데이터 프레임의 끝을 나타내며, 리세시브 '1'로 구성된 7비트로 이루어져 있습니다.
CAN Communication과 자동차 산업
캔 버스는 자동차 산업에서 중요한 역할을 합니다.
기존 시스템의 한계로 과거에는 각 전자 장치가 별도의 많은 전선으로 연결되었지만, 시스템이 복잡해지면서 이 방식은 비효율적이었습니다.
- 캔 버스의 개발: 고속, 효율적인 통신을 지원하고 용이하게 하기 위해 특별히 개발되었습니다.
- 장점: 전선의 길이, 비용 및 무게 감소, 복잡한 전용 배선의 필요성 감소.
- 단점: 캔은 최대 40미터 길이의 전선을 지원하며, 노드의 수가 제한적일 수 있습니다. 다른 네트워크에 비해 비용이 더 들 수 있으며, 유지보수와 문제 해결이 비싼 편입니다.
그러나 캔 버스의 다양한 장점을 고려할 때, 복잡한 환경에서 효율적인 솔루션을 제공하며 제조 과정을 간소화하고 오류 가능성을 크게 줄였다고 할 수 있습니다.
CAN Communication 장치: Influx
"Influx"는 엔지니어링 및 자동차 데이터 로깅 솔루션을 제공하는 회사로 국내는 팜테크를 통해 CAN 통신 관련 모듈을 제공하고 있습니다. 이들은 특히 캔 버스 데이터 로거, 캔 버스 계측 모듈, 그리고 캔 버스 소프트웨어 도구에 전문화되어 있습니다. 캔(CAN)은 마이크로컨트롤러와 장치들이 호스트 컴퓨터 없이 서로의 애플리케이션과 통신할 수 있도록 설계된 견고한 차량 버스 표준입니다. Influx는 이러한 캔 기술을 기반으로 한 솔루션을 통해 자동차 산업의 데이터 관리 및 분석에 기여하고 있습니다.
제품에 관심이 있으시다면 아래 연락처 또는 홈페이지에 문의 남기시면 됩니다.