KR20140132063A - 캔 통신 장치 및 방법 - Google Patents

캔 통신 장치 및 방법 Download PDF

Info

Publication number
KR20140132063A
KR20140132063A KR1020130051068A KR20130051068A KR20140132063A KR 20140132063 A KR20140132063 A KR 20140132063A KR 1020130051068 A KR1020130051068 A KR 1020130051068A KR 20130051068 A KR20130051068 A KR 20130051068A KR 20140132063 A KR20140132063 A KR 20140132063A
Authority
KR
South Korea
Prior art keywords
frame
receiving
transmitting
frames
terminal
Prior art date
Application number
KR1020130051068A
Other languages
English (en)
Inventor
황현용
이정환
한태만
권오천
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020130051068A priority Critical patent/KR20140132063A/ko
Priority to US14/179,013 priority patent/US20140337680A1/en
Publication of KR20140132063A publication Critical patent/KR20140132063A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 송신 단말에서 CAN 네트워크로 연결된 수신 단말로의 프레임을 송신하는 CAN 통신 방법으로, 상기 수신 단말로부터의 요청에 따라, 기설정된 크기를 초과하는 메시지를 분할한 복수의 프레임들을 상기 수신 단말로 송신하는 단계와, 상기 수신 단말로부터 전송 오류가 발생된 프레임의 순번 정보를 포함하는 흐름 제어 프레임을 수신함에 따라, 상기 전송 오류가 발생한 프레임을 확인하는 단계와, 상기 전송 오류가 발생한 프레임을 재송신한다.

Description

캔 통신 장치 및 방법{Apparatus and Method for CAN Comnunication}
본 발명은 CAN(Controller Area Network) 통신에 관한 것으로서, 구체적으로는 프레임 송수신의 신뢰성을 높일 수 있는 CAN 통신 장치 및 방법에 관한 것이다.
과거의 자동차는 사람 또는 물건을 나르기 위한 단순한 운송 시스템에 불과하였으나 현재의 자동차는 기존 운송 시스템 기능 이외에 정보와 오락의 기능을 부가한 인포테인먼트 시스템으로서 사용되고 있다. 이러한 차량의 인포테인먼트 시스템으로의 사용을 위해, CAN(Controller Area Network)이 정교한 오류검출 등의 장점들을 이용하여 산업체 특히 자동차용 네트워크에서 널리 사용되고 있다.
CAN(Controller Area Network)은 매우 높은 보안 레벨을 가지는 분산된 실시간 제어를 지원하는 효율적인 시리얼 통신 프로토콜이다. 캔 프레임은 8바이트의 고정길이로 데이터를 전송하기 때문에 대용량의 데이터를 전송하기 위해서 분할(Segmentation) 및 재조립(Reassembly) 방식이 사용된다. 즉, 송신할 메시지의 크기에 따라 단일 프레임(Single Frame) 또는 복수의 연속 프레임(Consecutive Frame)이 송신될 수 있다.
그런데, 8바이트로 분할된 프레임을 전송하는 도중에 프레임의 손상이나 유실이 발생하는 경우, 수신측에서는 이전에 성공적으로 전송된 데이터를 모두 무시하고 원래의 메시지를 복원할 수 없다. 메시지 복원을 위해 송신측에서는 메시지를 구성하는 모든 프레임들을 처음부터 재전송을 해야 하므로 비효율적이다.
본 발명은 연속 프레임의 전송 오류 발생시에 프레임을 재송신할 수 있어 데이터 송수신의 신뢰성을 높일 수 있는 CAN 통신 장치 및 방법을 제공한다.
본 발명은 송신 단말에서 CAN 네트워크로 연결된 수신 단말로의 프레임을 송신하는 CAN 통신 방법으로, 상기 수신 단말로부터의 요청에 따라, 기설정된 크기를 초과하는 메시지를 분할한 복수의 프레임들을 상기 수신 단말로 송신하는 단계와, 상기 수신 단말로부터 전송 오류가 발생된 프레임의 순번 정보를 포함하는 흐름 제어 프레임을 수신함에 따라, 상기 전송 오류가 발생한 프레임을 확인하는 단계와, 상기 전송 오류가 발생한 프레임을 재송신한다.
본 발명은 수신 단말에서 CAN 네트워크로 연결된 송신 단말로부터 CAN 프레임을 수신하는 CAN 통신 방법으로, 상기 송신 단말로 CAN 메시지를 요청한 후, 상기 송신 단말로부터 둘 이상의 분할된 프레임들을 수신하는 단계와, 상기 프레임들의 순번을 확인하여, 상기 복수의 프레임들 중 적어도 하나의 순번이 누락되었는지를 확인하는 단계와, 상기 누락된 순번을 포함하는 흐름 제어 프레임을 상기 송신 단말에 전송하는 단계와, 상기 흐름 제어 프레임으로부터 상기 순번의 프레임의 전송 오류의 발생이 확인됨에 따라, 송신 단말로부터 재전송된 상기 순번의 프레임을 재수신하는 단계와, 상기 전송 오류가 발생한 프레임을 재수신하는 단계를 포함한다.
본 발명은 CAN 통신 장치로, 기설정된 크기를 초과하는 메시지를 복수의 프레임들로 분할하는 메시지 분할부와, CAN 네트워크로 연결된 수신 단말로부터의 요청에 따라, 상기 메시지 분할부에 의해 분할된 복수의 프레임들을 상기 수신 단말로 송신하는 프레임 송신부와, 상기 수신 단말로부터 전송 오류가 발생된 프레임의 순번을 포함하는 흐름 제어 프레임을 수신함에 따라, 상기 프레임 송신부가 상기 전송 오류가 발생한 프레임을 재송신하도록 제어하는 전송 오류 확인부를 포함한다.
본 발명은 CAN 통신 장치로, CAN 네트워크로 연결된 송신 단말로 CAN 메시지를 전송을 요청한 후, 상기 송신 단말로부터 둘 이상의 분할된 프레임들을 수신하는 프레임 수신부와, 상기 프레임 수신부에 의해 수신된 프레임들의 순번을 확인하여, 상기 복수의 프레임들 중 적어도 하나의 순번이 누락되었는지를 확인하고, 상기 누락된 순번을 포함하는 흐름 제어 프레임을 상기 송신 단말에 전송함과 아울러, 상기 송신 단말로부터 상기 순번의 프레임을 재수신하도록 제어하는 전송 오류 확인부를 포함한다.
본 발명에 따르면, 캔 프레임으로 분할된 데이터를 전송하는 도중에 데이터의 손상이나 유실이 발생하는 경우, 수신되지 못한 연속 프레임이 존재하는지 여부를 확인할 수 있을 뿐만 아니라, 수신되지 못한 연속 프레임에 대한 재전송을 요청할 수 있어, 메시지 복원율을 높일 수 있다.
도 1은 본 발명의 일 실시 예에 따른 CAN 통신 장치를 도시한 구성도이다.
도 2 및 3은 일반적인 송신 단말의 CAN 모듈과 수신 단말의 CAN 모듈의 통신 방법을 도시한 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 송신 단말의 CAN 모듈과 수신 단말의 CAN 모듈의 통신 방법을 도시한 흐름도이다.
도 5는 본 발명의 다른 실시 예에 따른 송신 단말의 CAN 모듈과 수신 단말의 CAN 모듈의 통신 방법을 도시한 흐름도이다.
도 6a는 본 발명의 일 실시 예에 따른 송신 단말의 CAN 모듈의 상세 구성도이다.
도 6b는 본 발명의 일 실시 예에 따른 수신 단말의 CAN 모듈의 상세 구성도이다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시 예를 통하여 본 발명을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명 실시 예들의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
명세서 전반에 걸쳐 사용되는 용어들은 본 발명 실시 예에서의 기능을 고려하여 정의된 용어들로서, 사용자 또는 운용자의 의도, 관례 등에 따라 충분히 변형될 수 있는 사항이므로, 이 용어들의 정의는 본 발명의 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 도 1을 참조하여 본 발명의 실시 예에 따른 CAN 통신 장치에 대하여 설명한다.
도 1에 도시된 바와 같이, 본 발명의 실시 예에 따른 CAN 통신 장치는 송신 단말(110) 및 수신 단말(120)을 포함한다.
송신 단말(110)과 수신 단말(120)은 차량 내 ECU(Electronic Control Unit)로서, 상세하게는 AUTOSAR SW-C(111, 121), RTE(112, 122), PDU 라우터(113, 123) 및 CAN 모듈(114, 124)을 각각 포함하며, CAN 네트워크를 통하여 서로 메시지를 송수신할 수 있다.
AUTOSAR SW-C(111, 121)는 차량의 응용 기능 단위로서, 포트를 통해 RTE(112, 122) 및 다른 AUTOSAR SW-C(111, 121)와 송신할 메시지를 전달한다.
RTE(112, 122)는 ECU 상에 가상 네트워크를 구성한 실시간 환경으로서, 송신 단말(110) 및 수신 단말(120)을 포함하는 ECU의 AUTOSAR SW-C(Software Componet) 간의 분산 통신을 지원하며, AUTOSAR SW-C(111, 121)로부터 전달받은 메시지를 PDU 라우터(113, 123)에 전달한다.
PDU 라우터(113, 123)는 상위 계층의 RTE(112, 122) 및 하위 계층의 CAN 모듈(114, 124)과 인터페이스하며, AUTOSAR SW-C(111, 121)로부터 송신되어 RTE(112, 122)로부터 전달받은 메시지를 CAN 모듈(114, 124)로 전달한다.
CAN 모듈(114, 124)은 PDU 라우터(113, 123)로부터 전달받은 송신할 메시지의 분할, CAN 네트워크로부터 수신한 메시지의 재조립, 전송의 흐름 제어, 에러 검출 및 송신 취소 등을 수행한다.
CAN 모듈(114, 124)은 CanDriver, CanIf(Controller Area Network Interface) 모듈, CanTp(Controller Area Network Transport Protocol) 모듈, CanSm(Controller Area State Manageer) 모듈, CanNm(Controller Area Network Network Management) 모듈 등으로 구성되는데, CanTp 모듈에 의하여 메시지의 재조립, 전송의 흐름 제어, 에러 검출 및 송신 취소 등이 수행된다.
CAN 모듈(114, 124)은 PDU 라우터(113, 123)로부터 전달받은 메시지의 크기와 임계크기와 비교하여 단일 프레임으로 송신할지 또는, 복수의 연속 프레임으로 송신할지를 결정하고, 결정에 따라 단일 프레임 또는 복수의 연속 프레임을 CAN 네트워크를 통하여 송신한다. 상세하게는, 송신 단말의 CAN 모듈(114)은 PDU 라우터(113)로부터 전달받은 메시지의 크기가 단일 프레임의 페이로드 이하이면 메시지를 단일 프레임에 실어 송신하며 반면, 메시지의 크기가 단일 프레임의 페이로드보다 크면, 메시지를 복수의 연속 프레임을 분할하여 싣고, 복수의 연속 프레임을 CAN 네트워크를 통해 송신하며, 수신 단말의 CAN 모듈(124)은 CAN 네트워크로부터 수신한 복수의 연속 프레임을 재조립하여 원래 메시지를 복원하여 PDU 라우터(123)로 전달한다. 캔 네트워크 도메인에서 송신 단말의 CAN 모듈(114)과 수신 단말의 CAN 모듈(124)간에 대용량의 데이터를 전송하는 경우에 ISO 15765 표준에 따라 분할된 다수의 캔 프레임들 전송한다. ISO 15765 표준에서는 캔 프레임으로 8 바이트보다 긴 데이터를 전송하는 경우에 CAN I-PDU를 8 바이트 단위의 CAN N-PDU로 분해(Segmentation)하고 재조립(Reassembly)한다.
우선, 도 2 및 도 3을 참조하여 일반적인 송신 단말의 CAN 모듈(114)과 수신 단말의 CAN 모듈(124)의 CAN 네트워크를 통한 통신 방법에 대하여 설명한다. 도 2는 송수신 오류가 미발생하였을 경우의 흐름도이며, 도 3은 오류가 발생하였을 경우의 흐름도이다.
도 2 및 3에서는, 송신 단말(110)의 CAN 모듈(114)이 PDU 라우터(113)로부터 전달받은 메시지를 4개로 분할하여 4개의 연속 프레임에 실어 송신하며, 하나의 블록 크기 4인 경우를 예로 들어 설명한다.
도 2를 참조하면, 수신 단말(120)의 요청(S210)에 따라, 송신 단말(110)은 4개의 연속 프레임(Consecutive Frame : CF)을 전송하기에 앞서, 시작 프레임(First Frame)을 송신한다(S220). 이때, 수신 단말(120)은 수신될 연속 프레임의 개수를 이미 알고 있다.
이어서, 수신 단말(120)은 시작 프레임에 대한 응답으로, FS, BS 및 STmin의 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신한다(S230). 여기서, FS(Flow Status) 파라미터는 기설정된 통신 흐름 제어를 위한 정보에 관한 것이며, BS 파라미터는 기설정된 블록 크기(Block Size)로서, 흐름 제어 프레임과 흐름 제어 프레임의 사이에 송신될 수 있는 연속 프레임의 최대 개수이며, STmin(Separation Time Minimum) 파라미터는 기설정된 각 연속 프레임 사이의 최소 시간 간격이다. 여기서, BS는 4인 것으로 가정한다.
송신 단말(110)은 기설정된 블록 크기(BS)에 따라 4개의 연속 프레임을 연속적으로 송신한다(S240).
수신 단말(120)은 4개의 연속 프레임을 수신하면, 응답 메시지를 송신한다(S250). 이때, 수신 단말(120)은 연속 프레임의 순번(Sequence Number: SN)를 확인하여 수신하지 못한 연속 프레임이 있는지를 확인하고, 수신하지 못한 연속 프레임이 없으면 수신 성공(SUCCESS)을 알리는 응답 메시지를 송신한다.
도면에는 도시되어 있지 않지만, 수신 단말(120)의 CAN 모듈(124)는 4개의 연속 프레임을 모두 성공적으로 수신하면, 이들을 재조립하여 메시지를 복원하고, 이를 PDU 라우터(123), RTE(122)를 통해 AUTOSAR SW-C(121)로 전달할 수 있다. 이때도, 수신 단말(120)은 연속 프레임의 순번(SN: Sequence Number)를 확인하여 연속 프레임을 모두 성공적으로 수신하였는지 여부를 확인할 수 있다.
한편, 수신 단말(120)은 4개의 연속 프레임들(제1 내지 제4 연속 프레임) 중 하나라도 수신하지 못하면, 도 3에 도시된 바와 같이 수신 실패했음을 알리는 응답 메시지(FAIL)를 전송할 수 있다.
도 3을 참조하면, 송신 단말(110)은 기설정된 블록 크기에 따라 4개의 연속 프레임을 연속적으로 송신한다(S340). 그러나, CAN 네트워크에 이상이 발생하여, 순번(SN : Sequence Number)가 3인 제 3 연속 프레임이 손상 또는 유실될 수 있다. 이러한 경우에 S340에서, 수신 단말(120)에 3개의 정상적인 연속 프레임만이 전송된다.
그러면, 수신 단말(120)은 연속 프레임의 순번(Sequence Number : SN)을 확인하여 수신하지 못한 연속 프레임이 있는지를 확인하고, 수신하지 못한 연속 프레임이 있으므로 수신 실패(FAIL)를 알리는 응답 메시지를 송신한다(S350).
이러한 경우에 이전에 정상적으로 전송되었던 3개의 연속 프레임들은 모두 폐기되어 메시지가 복원되지 못하고, 프레임은 처음부터 재전송되어야 한다. 이는 전송 효율을 저하시키는 원인이 된다.
이러한 문제점을 해결하기 위해, 본 발명에서는 메시지 전송 오류에 따라 효율적으로 메시지를 재전송하기 위해 두 가지 실시 예를 제안한다.
일 실시 예로, 수신 단말(120)이 흐름 제어 프레임을 통해 손실된 프레임의 순번을 송신 단말(110)에 알리면, 송신 단말(110)이 손실된 프레임부터 재전송하도록 한다.
다른 실시 예로, 수신 단말(120)이 흐름 제어 프레임을 통해 손실된 프레임의 순번을 송신 단말(110)에 알리면, 송신 단말(110)이 손실된 프레임만을 재전송하도록 한다.
각각의 실시 예들에 대해 도 4 및 도 5를 참조하여 상세히 살펴보기로 한다.
도 4는 본 발명의 일 실시 예에 따른 송신 단말의 CAN 모듈과 수신 단말의 CAN 모듈의 통신 방법을 도시한 흐름도이다.
도 4를 참조하면, 수신 단말(120)의 요청(S410)에 따라, 기설정된 크기를 초과하는 메시지를 분할하여 복수의 연속 프레임을 생성하고, 상기 복수의 연속 프레임에 순번을 부가하여 프레임 전송 준비를 한다.
송신 단말(110)은 4개의 연속 프레임(Consecutive Frame : CF)을 전송하기에 앞서, 시작 프레임(First Frame)을 송신하며(S420), 수신 단말(120)은 시작 프레임에 대한 응답으로, FS, BS 및 STmin의 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신한다(S430).
이어서, 송신 단말(110)은 기설정된 블록 크기에 따라 4개의 연속 프레임을 연속적으로 송신하며(S440), 수신 단말(120)은 연속 프레임을 수신하면서, 연속 프레임을 순번을 확인하여 수신하지 못한 연속 프레임이 있는지를 확인한다.
수신 단말(120)은 제1 내지 제4 연속 프레임(CF #1 ~ CF#4) 중, 제3 연속 프레임(CF #3)의 수신에 실패한 것을 확인하면, 제3 연속 프레임(CF #3)의 정보를 포함하는 별도의 흐름 제어 프레임(Flow Control Frame)을 송신한다(S450). 여기서 전송되는 흐름 제어 프레임(Flow Control Frame)에는 FT(Frame Type), FS, BS, STmin 파라미터 이외에도, SN 파라미터를 더 포함한다. 즉, 유실된 연속 프레임의 시퀀스 넘버(SN=3)가 포함된다. 따라서, 송신 단말(110)은 흐름 제어 프레임의 SN 값에서 수신에 실패한 연속 프레임의 순번을 확인할 수 있다.
송신 단말(110)은 흐름 제어 프레임을 수신하면, 흐름 제어 프레임을 통해 수신에 실패한 연속 프레임이 제3 연속 프레임(CF #3)인 것을 확인하고, 제3 연속 프레임(CF #3)부터 제3 연속 프레임(CF #3)이 포함된 블록의 마지막 프레임인 제4 연속 프레임(CF #4)까지를 재송신한다(S460).
수신 단말(120)은 재송신된 제3 내지 제4 연속 프레임(CF #3 ~ CF#4)의 수신에 성공하면, 응답 메시지(SUCCESS)를 송신한다(S470). 그러면, 수신 단말(120)은 제1 내지 제4 연속 프레임(CF #1 ~ CF #4)을 재조립하여 메시지를 복원할 수 있다.
도 5는 본 발명의 다른 실시 예에 따른 송신 단말의 CAN 모듈과 수신 단말의 CAN 모듈의 통신 방법을 도시한 흐름도이다.
도 5를 참조하면, 수신 단말(120)의 요청(S510)에 따라, 송신 단말(110)은 4개의 연속 프레임(Consecutive Frame : CF)을 전송하기에 앞서, 시작 프레임(First Frame)을 송신하며(S520), 수신 단말(120)은 시작 프레임에 대한 응답으로, FS, BS 및 STmin의 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신한다(S530).
이어서, 송신 단말(110)은 기설정된 블록 크기에 따라 4개의 연속 프레임을 연속적으로 송신하며(S540), 수신 단말(120)은 연속 프레임을 수신하면서, 연속 프레임을 순번을 확인하여 수신하지 못한 연속 프레임이 있는지를 확인한다.
수신 단말(120)은 제1 내지 제4 연속 프레임(CF #1 ~ CF#4) 중, 제3 연속 프레임(CF #3)의 수신에 실패한 것을 확인하면, 제3 연속 프레임(CF #3)의 정보를 포함하는 별도의 흐름 제어 프레임(Flow Control Frame)을 송신한다(S550). 흐름 제어 프레임(Flow Control Frame)에는 유실된 연속 프레임의 순번(SN=3)을 포함한다.
송신 단말(110)은 흐름 제어 프레임을 수신하면, 흐름 제어 프레임을 통해 수신에 실패한 연속 프레임이 제3 연속 프레임(CF #3)인 것을 확인하고, 제3 연속 프레임(CF #3)만을 재송신한다(S560).
수신 단말(120)은 재송신된 제3 연속 프레임(CF #3)의 수신에 성공하면, 응답 메시지(SUCCESS)를 송신한다(S570). 그러면, 수신 단말(120)은 제1 내지 제4 연속 프레임(CF #1 ~ CF #4)을 재조립하여 메시지를 복원할 수 있다.
도 6a는 본 발명의 일 실시 예에 따른 송신 단말의 CAN 모듈의 상세 구성도이다.
도 6a를 참조하면, 송신 단말(110)의 CAN 모듈(114)은 메시지 분할부(10), 프레임 송신부(11) 및 전송 오류 확인부(12)를 포함한다.
메시지 분할부(10)는 전송하고자 하는 메시지를 둘 이상의 프레임들로 분할한다. 분할된 프레임들은 시작 프레임(First Frame: FF) 및 하나 이상의 연속 프레임(Consecutive Frame : CF)들로 정의될 수 있다.
프레임 송신부(11)는 수신 단말(110)의 요청 메시지(REQ)를 수신함에 따라, 메시지 분할부(10)에 의해 분할된 시작 프레임(First Frame) 및 하나 이상의 연속 프레임(Consecutive Frame : CF)들을 연속적으로 송신한다. 그런데, 이때 시작 프레임(First Frame)의 전송 응답으로 수신 단말(120)로부터 흐름 제어 프레임(Flow Control Frame)을 수신한 후, 흐름 제어 프레임(Flow Control Frame)에 포함된 FS, BS 및 STmin의 파라미터를 참조하여 하나 이상의 연속 프레임(Consecutive Frame : CF)들을 연속적으로 송신한다.
전송 오류 확인부(12)는 수신 단말(120)로부터 전송된 별도의 흐름 제어 프레임이 수신되면, 흐름 제어 프레임의 SN 값에서 송신에 실패한 연속 프레임의 순번를 확인한다.
그리고, 전송 오류 확인부(12)는 프레임 송신부(11)에 전송 오류를 정정하기 위한 프레임을 재전송하도록 제어한다. 일 실시 예에 따라, 전송 오류 확인부(12)는 송신에 실패한 연속 프레임부터 해당 연속 프레임이 포함된 블록의 마지막 프레임까지를 재전송하도록 제어한다. 다른 실시 예에 따라, 전송 오류 확인부(12)는 송신에 실패한 연속 프레임만을 재전송하도록 제어한다.
도 6b는 본 발명의 일 실시 예에 따른 수신 단말의 CAN 모듈의 상세 구성도이다.
도 6b를 참조하면, 수신 단말(120)의 CAN 모듈(124)은 프레임 수신부(20), 메시지 조립부(21) 및 전송 오류 확인부(22)를 포함한다.
프레임 수신부(20)는 송신 단말(110)의 특정 메시지 전송을 요청(REQ)한 후, 송신 단말(110)로부터 특정 메시지의 시작 프레임(First Frame : FF)이 수신됨에 따라, 시작 프레임에 대한 응답으로, FS, BS 및 STmin의 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신한다. 그런 후, 프레임 수신부(21)는 기설정된 블록 크기에 따라 연속 프레임(Consecutive Frame : CF)들을 연속적으로 수신한다. 본 발명에 따라, 프레임 수신부(20)는 재전송되는 프레임들을 수신할 수 있다.
메시지 조립부(21)는 프레임 수신부(20)에서 수신한 둘 이상의 프레임들을 재조립하여 메시지를 복원할 수 있다.
전송 오류 확인부(22)는 연속 프레임을 순번을 확인하여 수신하지 못한 연속 프레임이 있는지를 확인하고, 연속 프레임들 중, 손실된 연속 프레임이 있는 것을 확인하면, 손실된 연속 프레임의 정보를 포함하는 별도의 흐름 제어 프레임(Flow Control Frame)을 송신 단말(110)에 전송한다. 이때, 전송되는 흐름 제어 프레임(Flow Control Frame)에는 FT(Frame Type), FS, BS, STmin 파라미터 이외에도, SN 파라미터가 더 포함된다. 즉, 유실된 연속 프레임의 순번(SN)이 포함된다.
그리고, 전송 오류 확인부(22)는 프레임 수신부(20)에 전송 오류를 정정하기 위한 프레임을 재수신하도록 제어한다. 일 실시 예에 따라, 전송 오류 확인부(22)는 송신에 실패한 연속 프레임부터 해당 연속 프레임이 포함된 블록의 마지막 프레임까지를 재수신하도록 제어한다. 다른 실시 예에 따라, 전송 오류 확인부(22)는 송신에 실패한 연속 프레임만을 재수신하도록 제어한다.

Claims (15)

  1. 송신 단말에서 CAN 네트워크로 연결된 수신 단말로의 프레임을 송신하는 CAN 통신 방법에 있어서,
    상기 수신 단말로부터의 요청에 따라, 기설정된 크기를 초과하는 메시지를 분할한 복수의 프레임들을 상기 수신 단말로 송신하는 단계와,
    상기 수신 단말로부터 전송 오류가 발생된 프레임의 순번 정보를 포함하는 흐름 제어 프레임을 수신함에 따라, 상기 전송 오류가 발생한 프레임을 확인하는 단계와,
    상기 전송 오류가 발생한 프레임을 재송신하는 단계를 포함함을 특징으로 하는 CAN 통신 방법.
  2. 제 1항에 있어서, 상기 재송신하는 단계는
    상기 전송 오류가 발생한 프레임부터 마지막 프레임까지 재전송함을 특징으로 하는 CAN 통신 방법.
  3. 제 1항에 있어서, 상기 기설정된 크기는
    ISO 15765 표준에 따라, 8 바이트(Byte)임을 특징으로 하는 CAN 통신 방법.
  4. 제 1항에 있어서, 상기 송신하는 단계는
    시작 프레임(First Frame)을 송신하는 단계와,
    상기 시작 프레임(First Frame) 다음으로 송신될 수 있는 연속 프레임의 최대 개수인 블록 크기 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 수신하는 단계와,
    상기 수신된 블록 크기에 상응하는 갯수의 연속 프레임(Consecutive Frame : CF)들을 순차적으로 전송하는 단계를 포함함을 특징으로 하는 CAN 통신 방법.
  5. 수신 단말에서 CAN 네트워크로 연결된 송신 단말로부터 CAN 프레임을 수신하는 CAN 통신 방법에 있어서,
    상기 송신 단말로 CAN 메시지를 요청한 후, 상기 송신 단말로부터 둘 이상의 분할된 프레임들을 수신하는 단계와,
    상기 프레임들의 순번을 확인하여, 상기 복수의 프레임들 중 적어도 하나의 순번이 누락되었는지를 확인하는 단계와,
    상기 누락된 순번을 포함하는 흐름 제어 프레임을 상기 송신 단말에 전송하는 단계와,
    상기 흐름 제어 프레임으로부터 상기 순번의 프레임의 전송 오류의 발생이 확인됨에 따라, 송신 단말로부터 재전송된 상기 순번의 프레임을 재수신하는 단계와,
    상기 전송 오류가 발생한 프레임을 재수신하는 단계를 포함함을 특징으로 하는 CAN 통신 방법.
  6. 제 5항에 있어서, 상기 재수신하는 단계는
    상기 전송 오류가 발생한 프레임부터 마지막 프레임까지 재수신함을 특징으로 하는 CAN 통신 방법.
  7. 제 5항에 있어서, 상기 수신하는 단계는
    시작 프레임(First Frame)을 수신하는 단계와,
    상기 시작 프레임(First Frame) 다음으로 수신될 수 있는 연속 프레임의 최대 개수인 블록 크기 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신하는 단계와,
    상기 블록 크기에 상응하는 갯수의 연속 프레임(Consecutive Frame : CF)들을 순차적으로 수신하는 단계를 포함함을 특징으로 하는 CAN 통신 방법.
  8. 제 5항에 있어서,
    상기 수신된 복수의 프레임을 조합하여 원래 메시지를 복원하는 단계를 더 포함함을 특징으로 하는 CAN 통신 방법.
  9. 제 5항에 있어서,
    상기 수신에 성공하면, 수신 성공을 알리는 응답 메시지를 송신 단말에 전송하는 단계를 더 포함하는 CAN 통신 방법.
  10. 기설정된 크기를 초과하는 메시지를 복수의 프레임들로 분할하는 메시지 분할부와,
    CAN 네트워크로 연결된 수신 단말로부터의 요청에 따라, 상기 메시지 분할부에 의해 분할된 복수의 프레임들을 상기 수신 단말로 송신하는 프레임 송신부와,
    상기 수신 단말로부터 전송 오류가 발생된 프레임의 순번을 포함하는 흐름 제어 프레임을 수신함에 따라, 상기 프레임 송신부가 상기 전송 오류가 발생한 프레임을 재송신하도록 제어하는 전송 오류 확인부를 포함함을 특징으로 하는 CAN 통신 장치.
  11. 제 10항에 있어서, 상기 전송 오류 확인부는
    상기 전송 오류가 발생한 프레임부터 마지막 프레임까지 재전송되도록 제어함을 특징으로 하는 CAN 통신 장치.
  12. 제 10항에 있어서, 상기 프레임 송신부는
    시작 프레임(First Frame)을 송신하고, 상기 시작 프레임(First Frame) 다음으로 수신될 수 있는 연속 프레임의 최대 개수인 블록 크기 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 수신하고, 상기 수신된 블록 크기에 상응하는 갯수의 연속 프레임(Consecutive Frame : CF)들을 순차적으로 전송함을 특징으로 하는 CAN 통신 장치.
  13. CAN 네트워크로 연결된 송신 단말로 CAN 메시지를 전송을 요청한 후, 상기 송신 단말로부터 둘 이상의 분할된 프레임들을 수신하는 프레임 수신부와,
    상기 프레임 수신부에 의해 수신된 프레임들의 순번을 확인하여, 상기 복수의 프레임들 중 적어도 하나의 순번이 누락되었는지를 확인하고, 상기 누락된 순번을 포함하는 흐름 제어 프레임을 상기 송신 단말에 전송함과 아울러, 상기 송신 단말로부터 상기 순번의 프레임을 재수신하도록 제어하는 전송 오류 확인부와,
    상기 프레임 수신부에서 수신한 둘 이상의 프레임들을 재조립하여 메시지를 복원하는 메시지 조립부를 포함함을 특징으로 하는 CAN 통신 장치.
  14. 제 13항에 있어서, 상기 전송 오류 확인부는
    상기 전송 오류가 발생한 프레임부터 마지막 프레임까지 재수신하도록 제어함을 특징으로 하는 CAN 통신 장치.
  15. 제 13항에 있어서, 상기 프레임 수신부는
    시작 프레임(First Frame)을 수신하고, 상기 시작 프레임(First Frame) 다음으로 수신될 수 있는 연속 프레임의 최대 개수인 블록 크기 파라미터를 포함하는 흐름 제어 프레임(Flow Control Frame)을 송신하고, 상기 블록 크기에 상응하는 연속 프레임(Consecutive Frame : CF)들을 순차적으로 수신함을 특징으로 하는 CAN 통신 장치.
KR1020130051068A 2013-05-07 2013-05-07 캔 통신 장치 및 방법 KR20140132063A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130051068A KR20140132063A (ko) 2013-05-07 2013-05-07 캔 통신 장치 및 방법
US14/179,013 US20140337680A1 (en) 2013-05-07 2014-02-12 Can communication apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130051068A KR20140132063A (ko) 2013-05-07 2013-05-07 캔 통신 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20140132063A true KR20140132063A (ko) 2014-11-17

Family

ID=51865742

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130051068A KR20140132063A (ko) 2013-05-07 2013-05-07 캔 통신 장치 및 방법

Country Status (2)

Country Link
US (1) US20140337680A1 (ko)
KR (1) KR20140132063A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170142398A (ko) 2016-06-17 2017-12-28 주식회사 만도 게이트웨이 및 이의 구동 방법
KR20230077266A (ko) * 2021-11-25 2023-06-01 웨이즈원 주식회사 V2x 메시지 처리 장치 및 방법
US12062255B2 (en) 2020-07-10 2024-08-13 Lg Energy Solution, Ltd. Diagnosis information generating apparatus and method, and diagnosing system including the same

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016225791A (ja) 2015-05-29 2016-12-28 株式会社デンソー 車載ネットワークシステム
US11606376B2 (en) * 2019-07-25 2023-03-14 Battelle Memorial Institute CAN bus protection systems and methods
KR20210054939A (ko) * 2019-11-06 2021-05-14 현대자동차주식회사 차량 제어 장치, 그를 포함한 시스템 및 그 방법
CN112702411B (zh) * 2020-12-21 2023-01-17 上汽大通汽车有限公司 一种解决cantp多帧丢包重传的方法
CN113485284B (zh) * 2021-06-07 2023-04-07 岚图汽车科技有限公司 报文数据的处理方法、装置、设备及存储介质
CN115604187A (zh) * 2021-07-09 2023-01-13 诺博汽车科技有限公司(Cn) Can总线数据发送方法、装置、存储介质及电子设备
CN114553373B (zh) * 2022-02-23 2024-07-12 深圳市元征科技股份有限公司 一种数据传输方法、装置、设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493343B1 (en) * 1998-01-07 2002-12-10 Compaq Information Technologies Group System and method for implementing multi-pathing data transfers in a system area network
US8533307B2 (en) * 2002-07-26 2013-09-10 Robert Bosch Gmbh Method and device for monitoring a data transmission
JP2004158988A (ja) * 2002-11-05 2004-06-03 Nissan Motor Co Ltd データ送信装置及び方法、データ通信システム
US7457954B2 (en) * 2003-06-18 2008-11-25 Denso Corporation Communications system and packet structure
JP4466188B2 (ja) * 2003-07-16 2010-05-26 株式会社デンソー 車両用制御装置
US7779167B2 (en) * 2006-09-28 2010-08-17 Delphi Technologies, Inc. Universal integration system for auxiliary digital audio playback
US8892797B2 (en) * 2008-10-27 2014-11-18 Lennox Industries Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
US8774210B2 (en) * 2008-10-27 2014-07-08 Lennox Industries, Inc. Communication protocol system and method for a distributed-architecture heating, ventilation and air conditioning network
JP5308802B2 (ja) * 2008-12-16 2013-10-09 ルネサスエレクトロニクス株式会社 Canノード
JP2012080379A (ja) * 2010-10-04 2012-04-19 Renesas Electronics Corp 半導体データ処理装置及びデータ処理システム
US9037631B2 (en) * 2012-02-22 2015-05-19 Ether-2 Corp. Network communications
KR101438978B1 (ko) * 2012-12-31 2014-09-11 현대자동차주식회사 리프로그래밍 방법 및 시스템
DE102013213856A1 (de) * 2013-07-16 2015-01-22 Robert Bosch Gmbh Vorrichtung, Verfahren und System zur Kommunikation mit einer Steuerungseinrichtung eines Kraftfahrzeugs

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170142398A (ko) 2016-06-17 2017-12-28 주식회사 만도 게이트웨이 및 이의 구동 방법
US12062255B2 (en) 2020-07-10 2024-08-13 Lg Energy Solution, Ltd. Diagnosis information generating apparatus and method, and diagnosing system including the same
KR20230077266A (ko) * 2021-11-25 2023-06-01 웨이즈원 주식회사 V2x 메시지 처리 장치 및 방법

Also Published As

Publication number Publication date
US20140337680A1 (en) 2014-11-13

Similar Documents

Publication Publication Date Title
KR20140132063A (ko) 캔 통신 장치 및 방법
EP1909468B1 (en) Method and apparatus for backing up TCP connection
US6760766B1 (en) Data transmission method and device
US20040221207A1 (en) Proxy response apparatus
US8976814B2 (en) Method of transporting data from sending node to destination node
CN103959722A (zh) 改进以太网网络的系统
CN111147573A (zh) 一种数据传输的方法和装置
CN113765976A (zh) 一种通信方法和系统
CN111083049B (zh) 一种用户表项恢复方法、装置、电子设备及存储介质
CN115580379A (zh) 一种多链路网络传输方法及系统
CN110417707B (zh) 数据发送保护方法、装置、系统及计算机可读存储介质
US7724755B2 (en) Communications apparatus
KR20130064500A (ko) 캔통신 시스템에서 메시지 송수신 시의 오류 복구 방법
US8185795B1 (en) Side channel for forward error correction used with long-haul IP links
WO2018088462A1 (ja) 通信制御装置、通信制御方法およびプログラム
JP5592301B2 (ja) クライアント装置、通信システム、生存確認方法、及びプログラム
CN105721395B (zh) 数据同步配置方法、设备及系统
CN116455532A (zh) 一种数据的可靠传输方法、装置、设备及电子介质
KR20110069501A (ko) Autosar 기반 can 통신 장치 및 방법
CN106788908B (zh) 一种afdx总线消息的校验系统及方法
CN106789510B (zh) 冗余can总线通信系统的数据通信方法
CN110677283B (zh) 一种网络双冗余快速切换的方法
CN104243107A (zh) 数据传输方法、装置、终端、服务器及系统
JP6182779B1 (ja) 転送装置、転送方法およびプログラム
JP4710719B2 (ja) 通信異常時の再送装置

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid