-
CAN (Controller Area Network) 통신 속도와 자동차 통신 방식카테고리 없음 2022. 12. 9. 07:28반응형
CAN(Controller Area Network) 버스는 자동차에서 다수의 ECU(Electronic Control Unit)의 네트워킹을 지원하기 위해 개발되었어요. CAN은 전자기 노이즈가 많은 환경에서 일반적으로 신뢰성을 위해 설계된 Unshielded Twisted Pair(UTP) 케이블을 사용하여 구현합니다.
CAN은 1986년 초기 ECU와 함께 처음 도입된 이후 크게 발전했습니다. 오늘날, 특정 애플리케이션 시나리오에 최적화된 몇 가지 변형이 생겨났습니다. 대부분 CAN 통신 속도의 증가에 따라 스펙이 변경되면서 파생방식이 생겼났어요.1. CAN 통신 속도에 따른 CAN방식 분류
CAN은 양방향, 멀티마스터, 직렬 버스이며 현재 자동차에 사용되는 여러 차내 네트워크 프로토콜 중 가장 대중적입니다.
120Ω의 특성 임피던스로 UTP를 통해 데이터를 전송하는 방식입니다. 통신속도는 케이블의 종류도 달라집니다. 이러한 방식중 하나는 CAN_Low(CAN_L)이고 다른 하나는 CAN_High(CAN_H)입니다.ECU는 CAN 트랜시버를 통해 CAN 버스와 인터페이스하는 CAN 컨트롤러를 포함하며, 이 컨트롤러는 논리 신호를 CAN 버스를 통해 전송되는 차동 전압 신호로 변환합니다
CAN은 차량의 다중 배선에 사용되는 메시지 기반 프로토콜로, 와이어링 하니스 무게를 절약하고 높은 데이터 속도를 지원해주고 있어요. 각 메시지 또는 데이터 프레임은 순차적으로 전송되고 각각의 ID를 가지고 있어서 자기에게 필요한 데이타만 사용하게 됩니다.
두 개 이상의 노드가 동시에 전송하는 경우, 데이터 전송은 우선순위가 가장 높은 노드에 버스에 대한 액세스 권한이 부여되도록 구성합니다. 다른 노드는 모든 전송을 중지하는 방식입니다. 메시지는 전송을 시작하는 노드를 포함하여 모든 노드에서 수신하게 됩니다. CAN은 다양한 데이터 속도와 다양한 내결함성 기능을 갖춘 다양한 스펙이 있습니다.- 저속 CAN(LS-CAN)
- 고속 CAN(HS-CAN)
- 가변 데이터 전송 속도 CAN(CAN FD)
- 3세대, extra-long CAN (CAN XL)위에서 속도별나 나눈 각각의 CAN방식에 대해서 설명을 하도록 하겠습니다.
2. 저속 내결함성 CAN(저속 CAN(LS-CAN)
LS-CAN(최대 125kbit/s)은 내결함성이 있으며 ISO 11898-3 및 ISO-11992-1에서 표준화되었습니다. 선형 버스, 스타 버스 또는 선형 버스로 연결된 다중 스타 버스를 사용하여 구현할 수 있습니다. 전체 종단 저항은 100Ω 이상으로 해야합니다. LS-CAN에는 케이블이 아닌 송수신기에 종단 저항이 있어요.
LS-CAN 구현은 내결함성이 있기 때문에 데이터 라인 중 하나에 대한 개방, 단락 및 잘못된 로드를 견딜 수 있습니다. 장애 상태가 발생하더라도 네트워크는 단일 데이터 라인을 사용하여 계속 작동합니다. (엔드포인트 노드뿐만 아니라) 각 노드의 종단 저항기는 네트워크 기능을 유지할 수 있게 합니다. 데이터 속도는 동일한 내결함성 기능에 의해 125kbit/s로 제한됩니다.3. 고속 CAN(HS-CAN)
HS-CAN은 가장 일반적인 CAN 구현체로, 40 kbit/s ~ 1 Mbit/s의 보드 속도를 지원합니다. 자동차 시스템에서 가장 일반적인 속도는 500 kbit/s입니다. HS-CAN은 다음을 포함하여 여러 표준에 의해 관리되며 사용이 요구된다.
ISO-11898-1, -2, -5
ISO-11783-2
SAE J1939
SAE J2284-1, -2, -3 CANopen
DeviceNet
MilCAN케이블 길이는 1 Mbit/s에서 약 40 m부터 40 kbit/s에서 약 1 km까지 baud rate와 관련이 있습니다. 그리고 노드가 배치될 수 있는 중앙 CAN 네트워크로부터의 거리(스텁 길이)도 baud rate와 관련이 있습니다. 자동차 네트워크의 CAN 네트워크 스텁은 일반적으로 1m 미만이어야 한다.
4. 가변 데이터 전송 속도(CAN FD)
CAN FD는 ISO 11898-1에 명시된 CAN 버스 프로토콜의 확장버젼입니다. CAN FD는 ECU가 더 크거나 더 작은 메시지 크기로 서로 다른 데이터 속도로 동적으로 전환할 수 해줍니다.
일반적으로, 더 느린 데이터 속도는 동일한 CAN 프레임 내에서 더 많은 데이터를 전송하고 최적화된 속도로 CAN 버스를 통해 전송할 수 있습니다. CAN FD를 사용하여 센서 및 제어 데이터를 개별적으로 최적화할 수 있습니다. 또한 ECU가 더 빨리 보내고 받을 수 있다. 실행 중인 ECU에 의해 실행된 명령들은 또한 출력 제어기에 더 빨리 도달하도록 해줍니다.
CAN FD 기능은 다음과 같습니다.
- CRC 알고리즘 성능이 향상되어 탐지되지 않은 오류가 줄어듭니다.
- 기존 CAN 2.0 네트워크와의 호환성은 CAN FD를 기존 CAN과 동일한 네트워크에서 실행할 수 있음을 의미합니다.
- 올바른 CAN 신호 개선 기능(SIC) 트랜시버를 사용하면 비트 전송률이 최대 8MBit/s까지 가능하여 기존 CAN보다 최대 8배 많은 데이터를 이동할 수 있습니다.
※ CAN 데이터 구조
CAN 데이터 프레임은 프레임의 시작, 중재 필드, 제어 필드, 데이터 필드, CRC(Cyclic Redundancy Check) 필드, ACK(확인 문자) 필드 및 프레임의 끝(그림 2)의 7가지 다른 비트 필드로 구성됩니다.
- 프레임의 시작은 하나의 "지배적인" 비트로 구성됩니다.
- 중재 필드는 식별자 및 무선 텔레타입 수신기(RTR) 비트를 포함한다.
- 제어 필드는 예약 비트 2개와 허용 데이터 길이 값이 0 ~ 8바이트인 데이터 길이 4비트를 포함하여 6비트로 구성됩니다.
- 데이터 필드는 길이를 나타내는 길이 코드에 따라 버퍼를 전송합니다. 수신된 데이터도 마찬가지입니다. 제어 필드와 마찬가지로 0에서 8바이트까지 가능하며, 각 바이트는 8비트를 포함합니다.
- CRC 코드 필드는 CRC 필드(15비트)와 CRC 경계 문자(암묵 비트)로 구성됩니다. CRC 계산에 사용되는 다항식은 초기 도메인, 중재 도메인, 제어 도메인, 데이터 도메인, 디필링 비트 스트림을 포함한다.
- ACK 필드는 응답 갭 및 송신자로부터의 응답 정의 열성 비트를 포함한다. 올바른 CRC 시퀀스를 수신하는 모든 노드는 송신 노드의 응답 간격에서 송신된 열성 비트를 지배 비트로 변경합니다.CAN FD는 HS-CAN에 비해 상당한 속도 향상이 있습니다. 최대 페이로드 크기(8바이트에서 64바이트로 증가)와 결합된 더 빠른 속도는 CAN FD 네트워크의 순 처리량을 크게 할 수 있게 되었습니다.
5. 3세대, extra-long CAN(CAN XL)
CAN XL은 최대 10Mbit/s의 데이터 전송 속도를 제공하며 CAN FD와 100BASE-T1(이더넷) 사이의 속도에 해당됩니다. CAN 데이터 링크 계층의 3세대로서 3가지 프로토콜 유형(기본 CAN, CAN FD, CAN XL)을 모두 지원하는 특징도 있습니다.
CAN FD와 마찬가지로 두 가지 비트 타이밍 설정이 지정됩니다. CAN XL은 또한 선택적 구성 기능이 있는 상위 계층을 위한 새로운 프로토콜 내장 구성 기능을 제공합니다. 한 가지 예는 일반 NRZ(Non-Return-to-Zero) 코딩의 대안으로 펄스 폭 변조(PWM) 코딩을 활성화하고 오류 신호를 끄는 것입니다. PWM 코딩을 추가하면 물리적 네트워크 설계에 따라 10 Mbit/s 이상의 비트 전송률을 지원합니다.
다른 CAN 구현과 마찬가지로 CAN XL은 백본 및 서브백본 네트워크 응용 프로그램을 위해 고안되었습니다. CAN XL은 TCP/IP 네트워크 시스템에 쉽게 통합할 수 있도록 설계되었습니다.
CAN XL을 배포하는 데 관심이 있는 설계자는 CAN을 위한 국제 사용자 및 제조업체 그룹인 CAN in Automation(CiA)에서 특수 이익 그룹(SIG)의 활동을 알고 있어야 합니다.아래 그림은 CAN방식별로 속도와 가격을 한눈에 확인하실 수 있어요. 속도가 올라가는 건 좋은데.. 스펙업으로 가격도 같이 상승합니다. ㅠㅠ
CiASIG는 CAN XL 관련 사양 및 권장 사항을 포함하는 여러 문서를 개발했습니다.
CiA 610: CAN XL 사양 및 테스트 계획
CIA 611: CAN XL 상위 계층 서비스
CiA 612: CAN XL 지침 및 애플리케이션 참고 사항
CiA 613: CAN XL 추가 서비스6. CAN버스 통신방식의 선택
CAN은 현재 가장 널리 사용되는 차량 내 네트워킹 프로토콜입니다. UTP 케이블을 사용하여 전자기적으로 소음이 많은 환경에서 신뢰성을 보장하는 양방향 멀티 마스터 직렬 버스죠.
CAN은 LS-CAN, HS-CAN 및 CAN-XL을 포함한 여러 성능 버전으로 제공되고 있어서 매우 강력한 운영 및 확장된 데이터 세트에 의존하는 애플리케이션을 포함하여 다양한 애플리케이션의 요구사항을 충족시킬 수 있어요.최신 세대인 CAN XL은 현재 10BASE-T1 이더넷을 사용하고 최대 10Mbit/s의 데이터 전송 속도를 제공하는 애플리케이션을 대상으로 하며 CAN FD와 100BASE-T1 이더넷 사이의 격차를 메웁니다.
하지만 점차 high-speed에 대한 요구가 커지면서 CAN-FD를 지나CAN-XL 그리고 추후에는 ethernet으로까지 속도향상이 필요할지도 모르겠네요.
반응형댓글