팜테크(FAMTECH)

[CAN 통신] CAN 에러 State와 Error Frame Format(Error Active, Error Passive, Bus Off) 본문

기초이론/캔통신(CAN Communication)

[CAN 통신] CAN 에러 State와 Error Frame Format(Error Active, Error Passive, Bus Off)

FAMTECH 2024. 3. 12. 08:34

 

목차

     

    "관련제품 문의는 로고 클릭 또는 공지사항의 연락처를 통해 하실 수 있습니다."

     

     

     

     

    CAN 에러 State

     

     

     

    CAN 버스(CAN bus)는 차량이나 산업 장비에서 데이터를 교환하기 위해 사용되는 통신 네트워크입니다. 이 네트워크는 다양한 장치들이 서로 정보를 공유할 수 있게 해주며, 효율적이고 안정적인 데이터 전송을 가능하게 합니다. 그러나 통신 과정에서 여러 가지 오류가 발생할 수 있으며, CAN 시스템은 이러한 오류를 관리하기 위해 특정한 오류 상태를 갖습니다. 여기에는 세 가지 주요 오류 상태가 있습니다: 'Error Active', 'Error Passive', 'Bus Off'.

     

     

    Error Active (활성 오류)

    모든 노드(장치)는 'Error Active' 상태에서 시작합니다. 이 상태에서는 CAN 컨트롤러가 정상적으로 작동하고 있으며, 오류를 감지하면 6개의 Dominant 비트(전기적으로 더 강한 신호)를 보내어 오류를 알립니다.

     

    전송 오류 카운터(TEC)와 수신 오류 카운터(REC) 모두 127 미만이면, 오류를 감지할 때마다 '활성 오류 플래그'를 전송합니다.

     

     

    Error Passive (수동 오류)

    오류 카운터 중 하나가 127을 초과하면 'Error Passive' 상태로 전환됩니다. 이 상태에서는 오류를 감지해도 6개의 수동적인 비트(전기적으로 약한 신호)만을 보내며, 이는 오류를 감지한 것을 다른 노드에게 전염시키지 않습니다.

    'Error Passive' 상태의 CAN 컨트롤러는 연속된 두 개의 데이터 또는 원격 프레임을 보낼 때, 8비트의 '전송 중단 시간'을 기다려야 합니다.

     

    오류를 감지하면 '수동 오류 플래그'를 전송합니다.

     

     

     

    Bus Off (버스 오프)

    전송 오류 카운터가 255를 초과하면 'Bus Off' 상태가 됩니다. 이는 CAN 컨트롤러가 실패했거나 심각한 오류가 누적되었을 때 발생합니다. 이 상태가 되면 해당 CAN 노드는 CAN 네트워크에서 연결이 끊어지며, 더 이상 통신을 할 수 없게 됩니다.

     

     

    또한, 'Influx data loggers'는 이러한 CAN 오류를 ASAM 표준 형식으로 로깅하는 기능을 지원합니다. 이는 데이터 로그가 오류에 대해 검사되고, 품질이 좋은 데이터가 제공되도록 보장합니다. 

     

     

     

     

     

     

     

     

    Error Frame Format

     

    CAN 버스 시스템에서, 메시지를 전송하는 과정에서 오류가 발생하면, 해당 노드는 "오류 프레임(error frame)"이라는 특별한 메시지를 전송합니다. 오류 프레임은 CAN 메시지의 포맷 규칙을 고의로 위반하는 메시지로, 이로 인해 네트워크에 연결된 모든 다른 노드들도 오류 프레임을 전송하게 됩니다. 이러한 규칙 위반(즉, 6개의 지배적인 비트를 보내는 것)은 잘못된 데이터 또는 원격 프레임을 파괴하는 것을 보장하며, 이는 원래의 전송자가 메시지를 자동으로 재전송할 수 있게 합니다.

     

     

    오류 프레임은 6개의 지배적인 또는 수동적인 비트로 구성되며, 이는 전송하는 노드의 오류 상태에 따라 달라집니다. 오류를 감지한 노드에 의해 전송되며, 통신 오류가 발견되면 즉시 전송이 중단되고 나중에 재전송됩니다. 이 모든 과정은 응용 소프트웨어가 아닌 컨트롤러에 의해 제어됩니다.

     

     

    오류 플래그: CAN 버스를 따라 모든 CAN 컨트롤러는 메시지 내의 오류를 감지하려고 시도합니다. 이는 CAN 프로토콜에 내장된 오류 처리 기능 때문입니다. 오류가 발견되면, 해당 오류를 발견한 노드는 오류 플래그를 전송하여 버스 트래픽을 파괴합니다. 오류 카운터를 사용하여 CAN 노드는 결함을 감지하고 오류 제한을 수행할 수 있습니다.

     

     

    CAN 시스템에서 오류 프레임과 오류 플래그는 네트워크 상의 오류를 식별하고 제어하는 메커니즘입니다. 이를 통해 잘못된 메시지가 네트워크를 방해하는 것을 방지하고, 오류가 발생한 메시지의 자동 재전송을 가능하게 합니다.

     

     

     

     

     

     

    해당 내용과 관련해서 팜테크에서 교육 프로그램, 측정/분석 용역, 장비를 제공하고 있습니다.  관심 있으시면 아래 홈페이지 또는 연락처를 통해 문의 주시면 됩니다. :)

     

    https://famtech.co.kr/sub04/01_01.php

     

    교육일정및신청(주)팜테크

    education schedule 교육일정및신청 HOME > 교육 > 교육일정및신청

    famtech.co.kr

     

     

     

     

    Comments