‘CAN FD’, 특수용도 기계장치 분야의 필드버스 및 산업용 이더넷에 도전
2014년 07월호 지면기사  / 토마스 바게르샤우저(Thomas Waggershauser), IXXAT 오토메이션(IXXAT Automation GmbH) 세일즈 디렉터

CAN-기반 시스템은 CANopen과 같은 표준화된 프로토콜은 물론, 독점적 솔루션의 특수용도 기계장치에 사용되곤 한다. CAN-기반 머신 네트워킹의 장점은 네트워크의 단순한 데이터 구조 및 저렴하면서도 유연한 구현성, 기존 네트워크의 간편한 확장성 및 오류 발생 시 편리한 시스템 분석 등이다.

CAN FD로 구현 가능한 애플리케이션

노드 수 및 전송률, 사이클 타임에 대한 높아지는 요구는 전통적인 CAN(8 데이터 바이트 및 1Mbit/s 데이터 전송률)을 통해서는 충족시킬 수 없게 되었다. 서비스 및 아날로그 데이터를 위한 짧은 데이터 길이 및 네트워크 확장으로 인한 데이터 전송률은 여기서 특별한 역할을 수행한다.
일상적으로, 이러한 한계는 절충을 통해 무마되고는 한다. 하지만 여러 애플리케이션에서 각기 다른 네트워크 영역 혹은 병렬 네트워크로 시스템을 분할하는 것은 기존 기술로는 계속해서 한계에 이르게 되며, 컨피규레이션 및 설정, 유지관리 측면에서 복잡하고 고비용의 솔루션을 초래하게 된다. 이론적으로 고성능 산업용 이더넷 기술로의 전환은 가능하다. 하지만 대부분 상당한 수준의 투자가 필요하고, 컨피규레이션을 위한 사고 모드 및 데이터 구조 변경은 특히 시간-제어식 시스템의 경우, 대규모 네트워크에서 상당한 문제를 초래한다. 또한 개발 및 시운전, 서비스를 위한 툴의 전환이 필요하고, 이는 많은 사용자들이 완벽한 전환을 단념하게 만드는 요인이 되기도 한다.

동시에 유용한 방식으로 기존의 노하우를 지속해서 사용하고자 하는 경향도 존재한다. 이는 CAN FD가 역할을 하게 되는 영역이다. CAN FD(유연한 데이터 전송속도를 갖춘 CAN)는 2012년 보쉬(Bosch)가 발표한 전통적인 CAN의 확장 버전으로, 가용 데이터 전송속도 및 가용 데이터 길이를 상당히 확장시켰다. 반면 메시지 ID 기반 중재 및 이벤트-중심 메시지 발송, 답신 비트를 이용해 수신된 메시지 확인 등과 같은 이미 입증된 CAN 컨셉트는 유지하고 있다.

향상된 데이터 전송속도

전통적인 CAN에 사용되는 리시버의 메시지 확인은 전송된 메시지 내에서 전송 성공 여부를 확인함으로써 다양한 혜택을 제공하는데, 예를 들어, 잠재적인 전송 오류를 신속하게 감지하고, 데이터를 매우 빠르게 재전송할 수 있다.
또한 CAN 식별자에 기반한 메시지 중재는 데이터 전송 중 충돌을 방지하고, 높은 버스 부하에서도 최우선 메시지에 대한 짧은 지연시간을 제공함으로써 제어 애플리케이션에 많은 혜택을 제공한다.
이러한 사용 기법의 단점은 샘플링 시간인데, 오류를 방지하기 위해 동일한 버스 레벨이 모든 노드에 존재해야 한다. 따라서 비트 간격은 네트워크에서 가장 먼 두 개의 원격 노드 사이에서도 이용할 수 있도록 충분한 신호 전파 시간이 유지되어야 한다. 이로 인해 비트 간격 및 이에 따른 데이터 전송속도는 네트워크 확장에 따라 직접 좌우된다. 즉, 최고 1Mbit/s까지 40m로 확장은 가능하지만, 250m로 확장하면 250kbit/s로 떨어지게 된다.
기존 통신 기술을 변경하지 않고 데이터 전송속도를 크게 증대시키기 위해서 CAN FD는 각기 다른 비트 레이트로 동작한다. 제어 명령어(중재, 메시지 타입, 종단 감지, 확인)를 위한 ´중재 레이트(Arbitration Rate)´는 전파속도, 즉 네트워크 확장에 따라 좌우된다. 현 시점에서는 메시지 송신기만 버스를 사용하는데, 이는 비트 시간 내로 직접 피드백 할 필요가 없음을 의미한다. 따라서 달성 가능한 최대 데이터 전송속도는 전송 매개체의 전송 특성에만 좌우되며, 신호전파는 상관이 없다. 현재 CAN FD 네트워크는 8Mbit/s대에서 생산적으로 이용할 수 있으며, CAN FD 표준에서는 최고 15Mbit/s까지 허용하고 있다. 또한 이러한 비트 레이트는 여러 테스트 시스템에 성공적으로 사용되고 있다.
이러한 두 데이터 전송속도는 두 개의 비트 타이밍 레지스터를 이용하는 CAN FD 컨트롤러에서는 서로 독립적이다. 두 데이터 전송속도 간의 전환은 프로토콜 상에서 두 개의 제어 비트를 이용해 실행된다. 지금까지 유지된 첫 번째 비트는 ´EDL(Extended Data Length)´ 비트로 사용되며, 열성 레벨에 따른 CAN FD 메시지를 정의한다. 실제 비트 레이트 전환은 새롭게 추가된 비트, ´BRS(Bit Rate Switch)´로 실행되며, 더 높은 비트 레이트로의 전환은 샘플링 시 만들어진다. 전환 복귀는 CRC 제약 비트가 샘플링되는 시점에서 수행된다.
 

그림 1. CAN FD의 장점

그림 1: CAN FD의 장점 1
 

이 사례에서는 총 42byte의 컨피규레이션 데이터가 전송된다. 이를 위해 전통적인 CAN의 경우 전송 프로토콜은 전체 데이터 용량을 8byte 메시지로 전송될 수 있도록 구현되어야 한다. 이 사례는 데이터 스트림 제어를 위해 첫 번째 데이터 바이트만을 이용하는 모델 전송 프로토콜에 기반하고 있다. 이는 최고 7byte를 여전히 각 CAN 메시지를 위해 이용할 수 있음을 의미한다. 구현된 전송 프로토콜에 따라 추가적인 데이터 필드가 제어를 위해 필요할 수 있다. 이에 반해 아래에는 6개의 전통적인 CAN 메시지를 대체할 수 있는 48byte의 사용자 데이터를 가진 단일 CAN FD 메시지가 있다. 또한 이 데이터는 위에 나타낸 것처럼 보다 높은 비트 레이트로 CAN FD 메시지에서 전송되기 때문에, CAN FD 메시지는 전통적인 CAN 메시지 보다 상당히 적은 버스 시간 만을 필요로 한다. 더불어, 단일 CAN FD 메시지 사용은 데이터 스트림 관리를 획기적으로 간소화할 수 있다.

사용자 데이터 확장

제어 데이터는 잘 알려진 것처럼 낮은 비트 레이트를 이용해 전송되기 때문에 달성할 수 있는 데이터 전송속도는 제한적이다. 사용자 데이터 영역을 최고 64byte까지 증가시킴으로써 더 많은 데이터를 고속 전송 모드로 전송할 수 있어 효과적으로 데이터 전송속도를 높일 수 있다.
전통적인 CAN은 8 데이터 바이트만 제공하기 때문에, 고정밀 아날로그 값 전송이나 여러 인코딩 값 및 드라이브 명령어를 가진 다축 로봇 제어와 같은 여러 데이터 애플리케이션에서는 더 이상 충분하지 않다. 따라서 서비스 데이터 또한 추가되어야 하며, 8byte 이상을 전송할 수 있는 전송 프로토콜이 필요하기 때문에 지금까지는 효과가 상당히 떨어진다.
CAN FD는 현재 최고 64 데이터 바이트를 사용할 수 있는 옵션을 제공한다. 이렇게 함으로써 더 큰 데이터 블록을 단일 메시지로 전송할 수 있으며, 특히 프로세스 데이터의 경우 보다 복잡한 장치를 단일 프로세스 메시지만을 이용해 완벽하게 제어할 수 있다. 또한 서비스 데이터의 경우에는, 컨피규레이션 데이터 및 이와 유사한 데이터를 위해 단일 CAN FD 메시지만을 필요로 하기 때문에 전송 프로토콜의 필요성이 적다.
또한 불필요하게 제어 데이터를 확장하는 것을 방지하기 위해 CAN FD는 데이터 코드 길이를 4bit로만 사용하며, 0~8 값은 전통적인 CAN에서 직접 얻는다. 지금까지 정의되지 않았던 값들(9~15, 혹은 1001~1111)은 새로 확장된 데이터 길이에 사용되며, 0~8byte 이외에 12, 16, 20, 24, 32, 48, 64byte 또한 사용자 데이터로 이용할 수 있다. 데이터 길이의 형식은 달라질 수 없으며, 사용하지 않은 영역은 ´필러 값(Filler Values)´을 반드시 추가해야 한다.
고속 전송 데이터 영역 이외에, 효과적으로 사용 가능한 데이터 전송속도는 CAN FD를 이용해 획기적으로 증대시킬 수 있으며, 사이클 주기 또한 상당히 감소될 수 있다. 이러한 방법으로, 500kbit의 중재, 4Mbit 데이터 전송, 64 데이터 바이트를 가진 CAN FD 네트워크는 실질적으로 5Mbit/s 이상의 데이터 전송속도로 달성할 수 있다.
 

그림 2. CAN FD의 장점 2

그림 2: CAN FD의 장점 2
 

이 그림은 그림 1에 디스플레이된 단일 타임라인 상의 CAN 메시지를 보여주고 있다. 250kbit/s의 전통적인 CAN 데이터 전송속도는 여기에서 추정된 것이다. 8byte의 사용자 데이터 메시지(사례에서는 전송 프로토콜용 1byte, 사용자 데이터 7byte) 및 가능한 최대한의 스터프 비트(Stuff Bits) 수를 위해 전통적인 CAN 메시지는 약 500µs의 버스 시간이 필요하다. 전송 노드가 모든 6개의 메시지를 지연없이 연속적으로 전송할 수 있다면, 버스는 42byte의 사용자 데이터 전송을 위해 3ms 동안 완벽하게 블록킹된다. 이와 비교해, 48byte의 사용자 데이터와 250kbit/s의 중재 레이트, 2Mbit/s의 데이터 비트 레이트를 가진 CAN FD 메시지는 약 365µs 동안만 버스를 사용하며, 더불어 최대 스터프 비트 수를 가지고 있다. 또한 획기적으로 빠른 데이터 전송은 현저히 짧은 반응 시간으로 인해 CAN 시스템의 실시간 동작을 향상시키며, 동시에 데이터 전송속도를 증대시키고, 데이터 관리의 복잡성을 줄여준다!

실시간 성능

여러 독립된 데이터 패킷을 단일 메시지로 통합하는 것은 많은 비용을 들여 개별 메시지를 서로 동기화할 필요가 없기 때문에 데이터 관리를 상당히 간소화할 수 있음을 의미한다. 전통적인 CAN에 비해 대규모 데이터 패킷 고속 전송이 가능해, 사실상 전통적인 8byte CAN 메시지에서 요구되는 시간과 거의 동일한 시간에 8배의 데이터 용량(64byte)을 전송할 수 있다. 이러한 방법으로 최우선 순위 메시지는 훨씬 더 빠르게 전송이 가능하고, 실시간 성능도 향상된다.

데이터 보안

데이터 보안은 중요한 문제이다. 전통적인 CAN에 비해 증대된 패킷 사이즈에도 불구하고, CAN FD는 데이터 보안 측면에서 동일한 요건을 충족하고 있다. 예를 들어, 적용된 알고리즘의 보다 긴 CRC 체크 키(Check Key)을 이용해 달성된다. 전송된 데이터 바이트 수에 따라, 최고 8 데이터 바이트의 메시지를 위한 이전의 CRC 공식은 물론, 최고 16 데이터 바이트 및 그 이상의 메시지를 위한 두 개의 향상된 알고리즘 등 3개의 각기 다른 CRC 알고리즘 중 하나가 사용된다. CAN 컨트롤러에 의해 사용된 알고리즘은 데이터 길이 코드에 따라 결정된다.
향상된 데이터 보안을 위해 부가적인 사항이 구현되었다. 그 결과, CAN FD 메시지의 CRC는 CAN 스터프 비트의 역할과 달리, 또 다른 5bit의 추가 스터프 비트를 포함시킨 후에 스터프 비트로 항상 시작하며, 이는 이전 비트의 비트 값에 독립적이다. 각 스터프 비트는 이전 비트에 대한 보충 값을 가지고 있다.

백워드 호환성

CAN에서 고속 통신 시스템으로 전환하는데 있어 한 가지 단점은 완벽한 변환을 위해 잦은 변경이 요구된다는 것이다. 즉, EtherCAT처럼 CAN에 속한 모든 요소들을 새로운 시스템으로 적용해야 한다. 그렇지 않다면, 머신 컨트롤러가 다중 이종 네트워크를 사용할 수 있도록 확장이 가능해야 한다. 두 방법 모두 장단점을 가지고 있다. CAN FD를 사용하면, 부가적인 보다 간단한 옵션으로 이용할 수 있다. CAN FD 컨트롤러는 전통적인 CAN 노드처럼 사용할 수 있기 때문에 모든 네트워크 노드를 CAN FD-지원 가능한 장치로 점진적으로 대체할 수 있다. 전체 네트워크가 CAN FD를 지원하게 되면, CAN FD의 장점을 충분히 이용할 수 있게 된다. 이는 특정 고객의 특수 장치나 내부적으로 개발된 장치에 사용되고 있는 이용 가능한 노드를 자유롭게 대체할 수 없는 네트워크 구성요소, 즉 특수용도 기계장치 분야에서 많은 관심을 두고 있다.

CAN FDN를 위한 툴

광범위한 PC 인터페이스를 위한 HMS 네트웍스(HMS Networks)의 IXXAT CAN-IB 500/600 PCIe 카드와 같은 PC-CAN FD 인터페이스 카드를 비롯해, CAN FD 기반 장치 및 네트워크를 개발할 수 있는 수많은 솔루션이 이용 가능하다. 이러한 CAN 카드는 윈도우, 리눅스 및 다른 운영시스템을 위한 포괄적인 드라이버 패키지를 포함하고 있으며, CAN 및 CAN FD를 지원하도록 기존 시스템과 쉽게 연결이 가능하고, 기존 소프트웨어 패키지를 CAN FD 네트워크에 빠르게 추가할 수 있다.
이외에도 관련 드라이버 소프트웨어 및 테스트, 분석 툴과 함께 하드웨어 인터페이스들이 효과적으로 CAN FD를 구현하기 위해 필요하다. 이와 관련하여, HMS는 이미 잘 알려진 IXXAT canAnalyser의 CAN FD-지원 버전을 통해 조만간 고성능의 완벽한 솔루션을 경제적인 가격으로 제공할 예정이다.

산업용 분야에서 CAN FD 부상

위에서 언급한 툴 이외에도, CAN FD를 생산환경에 적용하기 위해서는 또 다른 중요한 측면들이 있다. CANopen을 CAN FD로 변환함으로써 처리되는 CiA(CAN in Automation) 작업과 같은 산업용 애플리케이션에 사용하기 위해서는 표준화된 상위의 프로토콜을 적용하는 것이 바람직하며, CAN FD의 확장 버전인 CANopen V5 사양 또한 올해 중순에 이용할 수 있을 것으로 기대된다.
이외에도 CAN FD를 사용에 있어 중요한 경향 중 하나는 CAN/CAN FD 컨트롤러를 통합한 저렴한 마이크로컨트롤러가 대량으로 공급되고 있다는 점이다. 지금까지 공급되고 있는 장치는 대부분 CAN FD IP 코어를 갖춘 FPGA를 이용하고 있다. CAN FD 로직을 통합한 마이크로컨트롤러는 보통 자동차 분야의 복잡한 컨트롤러 디바이스를 위한 다중 CPU 코어를 갖춘 고성능 컴포넌트였다. 이제 CAN FD를 통합한 간단하면서도 저렴한 마이크로컨트롤러를 이용할 수 있게 되었으며, FPGA-기반 시스템은 가장 유연한 솔루션으로 대별되고 있다.

전망

CAN FD는 상당한 데이터 전송속도 향상 및 간단한 컨피규레이션, 전통적인 필드버스와 같은 분석 옵션을 보유함으로써 CAN 기반 솔루션을 위한 애플리케이션 분야로 확대되고 있다. CAN FD를 위한 CANopen 출시가 임박하면서 새로운 네트워크 시스템은 산업용 분야에 구현이 가능하게 되었으며, 100kbit/s에서 5Mbit/s의 데이터 전송속도를 갖춘 네트워크를 위한 효과적인 솔루션을 공급할 수 있게 되었다. 보다 높은 데이터 전송속도는 물론, 확장된 데이터 프레임워크를 개별적으로 혹은 통합하여 사용할 수 있는 옵션을 갖춘 유연한 CAN FD 디자인은 특수용도 기계장치를 위해 적용이 가능한 필드버스 시스템으로 매우 적합하다. end




저자: 토마스 바게르샤우저(Thomas Waggershauser)
HMS 그룹 자회사인 IXXAT 오토메이션(IXXAT Automation GmbH)의 세일즈 디렉터



AEM_Automotive Electronics Magazine


<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>


  • 100자평 쓰기
  • 로그인


  • 세미나/교육/전시

TOP