CAN 통신의 전기적 특성 및 물리 계층 분석
1. CAN 통신의 물리 계층 개요
Controller Area Network(CAN) 통신은 자동차, 산업 자동화, 로봇 공학 등 다양한 분야에서 널리 사용되는 직렬 통신 프로토콜입니다. CAN은 신뢰성이 높고 노이즈 내성이 강한 특징을 가지고 있으며, 이를 위해 물리 계층에서 차동 신호(differential signal)를 사용합니다.
본 포스팅에서는 CAN 통신의 전기적 특성과 물리 계층을 분석하고, CAN_H와 CAN_L의 차이, 차동 신호의 원리, 노이즈 내성, 종단 저항(termination) 및 버스 무결성(bus integrity)에 대해 설명하겠습니다.
2. CAN_H와 CAN_L의 차이
CAN 버스 구성
CAN 네트워크는 두 개의 주요 신호선인 CAN_H(CAN High)와 CAN_L(CAN Low)로 구성됩니다. 이 두 신호선은 차동 신호를 사용하여 데이터 전송을 수행합니다. 일반적으로 CAN 버스는 다음과 같은 상태를 가질 수 있습니다.
상태 | CAN_H 전압 | CAN_L 전압 | 의미 |
---|---|---|---|
공통 모드 | 2.5V | 2.5V | 대기(idle) 상태 |
DOMINANT | 3.5V | 1.5V | 논리 '0' (bus 활성 상태) |
RECESSIVE | 2.5V | 2.5V | 논리 '1' (bus 비활성 상태) |
CAN 통신에서 논리 0(Dominant)은 강제적으로 버스에 신호를 가하는 상태이며, 논리 1(Recessive)은 기본 상태로 유지됩니다.
차동 신호의 동작 원리
차동 신호는 두 개의 전압 차이를 이용하여 신호를 표현하는 방식입니다. CAN_H와 CAN_L 사이의 전압 차이로 데이터를 인코딩하여 전송하며, 이 방식은 전자기 간섭(EMI)에 대한 내성을 높이는 효과가 있습니다.
CAN 버스에서 신호를 전송할 때 다음과 같이 동작합니다.
- Dominant 상태(논리 0): CAN_H는 3.5V, CAN_L은 1.5V로 유지되며, 두 신호선 간의 전압 차이가 2V가 됩니다.
- Recessive 상태(논리 1): CAN_H와 CAN_L 모두 2.5V를 유지하며, 전압 차이가 0V가 됩니다.
이렇게 하면 외부 노이즈가 두 개의 선에 동일하게 영향을 미치더라도 차동 신호 덕분에 데이터의 무결성을 유지할 수 있습니다.
3. 차동 신호(differential signal) 및 노이즈 내성
차동 신호의 원리
차동 신호 방식은 CAN 통신이 높은 신뢰성을 유지할 수 있도록 도와줍니다. 차동 신호는 다음과 같은 원리로 동작합니다.
- 공통 모드 노이즈 제거: 외부에서 발생하는 전자기 간섭(EMI)이 두 신호선(CAN_H, CAN_L)에 동일하게 영향을 미치면, 두 신호선의 전압 차이는 그대로 유지됩니다. 따라서 외부 노이즈가 데이터에 영향을 주지 않습니다.
- 신호 왜곡 최소화: 장거리 전송 시 전압 강하가 발생할 수 있지만, 차동 방식에서는 두 선 간의 상대적인 전압 차이만 중요하므로 신호 왜곡이 최소화됩니다.
- 강한 노이즈 내성: 산업 환경이나 자동차 환경에서는 높은 수준의 전자기 간섭이 발생할 수 있지만, CAN의 차동 신호 방식은 이러한 환경에서도 안정적으로 동작합니다.
노이즈 내성을 위한 추가적인 기술
- 트위스트 페어 케이블 사용: CAN_H와 CAN_L 선을 서로 꼬아 놓은(Twisted Pair) 구조를 사용하면 외부 노이즈에 대한 보호 기능이 강화됩니다.
- 차동 수신기 사용: CAN 컨트롤러 내부에서 차동 신호를 감지하고 처리하는 차동 수신기를 사용하여 신호 무결성을 유지합니다.
- 적절한 종단 저항 사용: 버스의 전기적 반사를 방지하기 위해 종단 저항을 적절히 배치합니다.
4. 종단 저항(Termination)과 버스 무결성
종단 저항의 역할
CAN 버스는 하나의 물리적 버스를 여러 노드가 공유하는 방식으로 동작합니다. 따라서 버스 끝단에서 신호 반사를 방지하기 위해 종단 저항(Termination Resistor)을 사용해야 합니다.
- 종단 저항은 120Ω 값을 가지며, 네트워크 양 끝단에 각각 하나씩(총 2개) 배치해야 합니다.
- 종단 저항은 CAN_H와 CAN_L 사이에 연결되며, 이는 신호의 안정성을 유지하는 데 중요한 역할을 합니다.
종단 저항이 없는 경우 발생하는 문제
- 신호 반사로 인해 데이터 무결성이 손상될 수 있습니다.
- 버스 신호가 왜곡되거나, 오류 프레임(Error Frame)이 증가할 수 있습니다.
- 일부 노드는 올바른 데이터를 수신하지 못할 수 있습니다.
올바른 종단 저항 구성 방법
- CAN 네트워크의 양 끝단에 각각 120Ω 저항을 연결합니다.
- 종단 저항이 없는 경우, CAN 통신이 정상적으로 동작하지 않을 수 있으므로 반드시 확인해야 합니다.
- 일부 CAN 컨트롤러는 내부적으로 종단 저항을 포함하고 있을 수 있으므로, 회로 설계 시 이를 고려해야 합니다.
5. 결론
CAN 통신은 신뢰성이 높은 직렬 통신 방식이며, 물리 계층에서 차동 신호를 사용하여 강한 노이즈 내성을 갖춥니다. CAN_H와 CAN_L의 차이를 이해하고, 차동 신호의 원리를 익히면 CAN 버스에서 발생할 수 있는 노이즈 문제를 효과적으로 해결할 수 있습니다.
또한, 올바른 종단 저항 구성을 통해 신호 반사를 방지하고 CAN 버스의 무결성을 유지하는 것이 매우 중요합니다. CAN 네트워크를 설계할 때 물리 계층을 정확히 이해하고 구성하면 더욱 안정적인 시스템을 구축할 수 있습니다.
'CAN 통신' 카테고리의 다른 글
CAN 인터페이스 및 주요 하드웨어 (0) | 2025.02.22 |
---|---|
CAN 하드웨어 구성 및 주요 요소 (0) | 2025.02.20 |
CAN 통신의 특징 및 장점 (0) | 2025.02.19 |
CAN 프로토콜 개요 (0) | 2025.02.18 |
CAN(Controller Area Network)이란? (0) | 2025.02.17 |