KR102246106B1 - Can 통신 데이터 송수신 방법 - Google Patents
Can 통신 데이터 송수신 방법 Download PDFInfo
- Publication number
- KR102246106B1 KR102246106B1 KR1020190164474A KR20190164474A KR102246106B1 KR 102246106 B1 KR102246106 B1 KR 102246106B1 KR 1020190164474 A KR1020190164474 A KR 1020190164474A KR 20190164474 A KR20190164474 A KR 20190164474A KR 102246106 B1 KR102246106 B1 KR 102246106B1
- Authority
- KR
- South Korea
- Prior art keywords
- communication data
- value
- checksum
- counter value
- alive
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40039—Details regarding the setting of the power status of a node according to activity on the bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법은, CAN 통신 데이터의 송신 전에 얼라이브 카운터값을 증가하는 카운터값 증가 단계, 상기 CAN 통신 데이터의 체크섬값을 산출하는 체크섬 산출 단계, 상기 얼라이브 카운터값과 상기 체크섬값을 연산하여 유효성 판정 정보를 획득하는 연산 단계, 및 상기 유효성 판정 정보가 포함되는 상기 CAN 통신 데이터를 송신하는 송신 단계를 포함한다.
Description
본 발명은 CAN 통신 데이터 송수신 방법에 관한 것이다.
고급 차량으로 갈수록 차량 내 전자제어장치 및 멀티미디어 장비가 증가되고, 이러한 분리 시스템들을 상호 연결하기 위해서 일반적으로 사용되는 배선 장치는 믿어지지 않을 정도의 엄청난 케이블을 필요로 한다.
이것은 전체적인 차량의 무게와 제조 비용에서 상당한 부분을 차지하며 신뢰성 저하 및 품질 문제 발생 요소의 증가를 가져와 근본적인 대책이 필요하게 되었다.
이 문제의 확실한 해결책은 이러한 모든 시스템들을 차량 둘레에서 실행되는 한 개 혹은 두 개의 전선들로 구성된, 사무실의 데스크탑들을 함께 연결한 것과 같은 방식인, 하나의 공통 네트워크 버스에 연결하는 것이다.
상기 공통 네트워크 버스는 차량에서의 배선 양을 획기적으로 감소시키며, 네트워크 인터페이스 칩들이 아주 저렴한 이상, 차량의 총 제조 비용도 감소된다.
이것이 바로 계측 제어기간 통신망인 CAN통신이다.
최근에는, 차량용 편의 장치가 지속적으로 증가하면서, 차량 내부에서 CAN 통신을 통해 차량 제어기와 편의 장치 간 주고 받는 정보량이 늘어나고 있는 추세이다.
이러한 추세에 따라 통신 데이터의 유효성을 판단하는 방안이 요구되고 있고, 이와 동시에 보다 많은 데이터를 전달할 수 있는 통신 기술의 개발이 요구되고 있다.
이에 본 발명은 상기한 사정을 감안하여 안출된 것으로, 하드웨어 변경 없이 소프트웨어 측면에서 유효성 판정 방법을 최적화하여 보다 많은 데이터를 전송할 수 있는 CAN 통신 데이터 송수신 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법은, CAN 통신 데이터의 송신 전에 얼라이브 카운터값을 증가하는 카운터값 증가 단계; 상기 CAN 통신 데이터의 체크섬값을 산출하는 체크섬 산출 단계; 상기 얼라이브 카운터값과 상기 체크섬값을 연산하여 유효성 판정 정보를 획득하는 연산 단계; 및 상기 유효성 판정 정보가 포함되는 상기 CAN 통신 데이터를 송신하는 송신 단계;를 포함한다.
상기 연산 단계는, 상기 얼라이브 카운터값과 상기 체크섬값을 XOR 연산할 수 있다.
상기 연산 단계는, 상기 CAN 통신 데이터의 체크섬값 필드에 상기 유효성 판정 정보를 포함시키고, 상기 CAN 통신 데이터의 얼라이브 카운터값 필드에 추가 데이터 정보를 포함시킬 수 있다.
상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법은, CAN 통신 데이터를 수신하는 수신 단계; 상기 CAN 통신 데이터의 체크섬값을 산출하는 산출 단계; 상기 체크섬값과 상기 CAN 통신데이터의 유효성 판정 정보를 연산하는 제1 연산 단계; 및 상기 연산 단계의 연산 결과에 따라 상기 CAN 통신 데이터의 유효성을 판단하는 판단 단계;를 포함한다.
상기 제1 연산 단계는, 상기 체크섬값과 상기 유효성 판정 정보를 XOR 연산할 수 있다.
상기 판단 단계는, 상기 연산 단계의 제1 XOR 결과값과 상기 CAN 통신 데이터를 수신하기 전의 이전 얼라이브 카운터값을 비교하는 제1 비교 단계를 포함할 수 있다.
상기 판단 단계는, 상기 제1 XOR 결과값과 상기 이전 얼라이브 카운터값이 일치하는 경우 얼라이브 에러로 판단하는 얼라이브 에러 단계를 더 포함할 수 있다.
상기 판단 단계는, 상기 제1 XOR 결과값과 상기 이전 얼라이브 카운터값이 일치하지 않는 경우, 하나의 카운터값이 증가된 이전 얼라이브 카운터값과 상기 유효성 판정 정보에 대해 XOR 연산을 수행하는 제2 연산 단계를 더 포함할 수 있다.
상기 판단 단계는, 상기 제2 연산 단계의 제2 XOR 결과값과 상기 체크섬값을 비교하는 제2 비교 단계, 상기 제2 XOR 결과값과 상기 체크섬값이 일치하는 경우, 하나의 카운터값이 증가된 이전 얼라이브 카운터값을 현재 얼라이브 카운터값으로 저장하는 저장 단계, 및 상기 제2 XOR 결과값과 상기 체크섬값이 일치하지 않는 경우, 두 개의 카운터값이 증가된 이전 카운터값과 유효성 판정 정보에 대해 XOR 연산을 수행하는 제3 연산 단계를 더 포함할 수 있다.
상기 판단 단계는, 상기 제3 연산 단계의 제3 XOR 결과값과 상기 체크섬값을 비교하는 제3 비교 단계, 상기 제3 XOR 결과값과 상기 체크섬값이 일치하는 경우, 상기 통신 데이터에 신호 에러가 발생한 것으로 판단하는 신호 에러 단계, 및 상기 제3 XOR 결과값과 상기 체크섬값이 일치하지 않는 경우, 상기 체크섬값에 에러가 발생한 것으로 판단하는 체크섬 에러 단계를 더 포함할 수 있다.
본 발명의 바람직한 실시예에 따른 따른 CAN 통신 데이터 송수신 방법에 의하면, 별도의 하드웨어 변경없이 기존의 CAN 통신을 활용하여 더 많은 데이터를 전송 가능하므로 통신 리소스를 확보할 수 있는 효과가 있다.
도 1은 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 시스템의 블록도이다.
도 2는 CAN 통신 데이터 구조를 보여주는 도면이다.
도 3은 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법 의 CAN 통신 데이터 송신 과정을 보여주는 순서도이다.
도 4는 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법 의 CAN 통신 데이터 수신 과정을 보여주는 순서도이다.
도 2는 CAN 통신 데이터 구조를 보여주는 도면이다.
도 3은 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법 의 CAN 통신 데이터 송신 과정을 보여주는 순서도이다.
도 4는 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법 의 CAN 통신 데이터 수신 과정을 보여주는 순서도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
도 1은 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 시스템의 블록도이다.
도 1을 참고하면, 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 시스템은 송신 장치(100)와 수신 장치(200)를 포함할 수 있다. 송신 장치(100)와 수신 장치(200)는 CAN 버스를 통해 통신 연결될 수 있다. 여기서, 송신 장치(100)와 수신 장치(200)는 발명 설명의 용이함을 위해 명명된 것으로서, 이에 한정되는 것은 아니다.
송신 장치(100)는 MCU(110), CAN 콘트롤러(120), 및 송수신부(130)를 포함할 수 있다.
MCU(110)는 수신 장치(200)로 전송하기 위한 CAN 통신 데이터를 생성할 수 있다. MCU(110)는 CAN 통신 데이터의 유효성 판정을 위해 얼라이브 카운터와 체크섬을 생성할 수 있다. 또한, MCU(110)는 데이터 왜곡과 업데이트 여부를 함께 반영하기 위해, 얼라이브 카운터와 체크섬에 대해 별도의 연산 과정을 거쳐서 유효성 판정 정보를 생성할 수 있다. MCU(110)는 유효성 판정 정보를 CAN 통신 데이터에 추가할 수 있다.
CAN 콘트롤러(120)는 CAN 통신 메시지를 송수신하고 수신된 메시지에 대한 메시지 필터링 기능을 수행할 수 있다. 또는, CAN 콘트롤러(120)는 재전송 제어를 위한 메시지 버퍼 및 MCU(110)와의 인터페이스 기능을 제공할 수 있다.
송수신부(130)는 CAN 컨넥터(미도시) 또는 CAN 허브(미도시)를 통해 CAN 버스와 연결될 수 있다. 송수신부(130)는 송신 장치(100)의 물리 계층을 구성할 수 있다. 송수신부(130)는 CAN 버스의 장애를 감지하고 이를 관리하는 기능 및 CAN 통신 데이터의 송수신 기능을 제공할 수 있다.
수신 장치(200)는 MCU(210), CAN 콘트롤러(220), 및 송수신부(230)를 포함할 수 있다.
MCU(210)는 송신 장치(200)로부터 전달받은 CAN 통신 데이터의 유효성을 판정할 수 있다. MCU(210)는 CAN 통신 데이터의 유효성 판정 정보를 통해 데이터 왜곡과 업데이트 여부를 판정할 수 있다.
CAN 콘트롤러(220)는 CAN 통신 메시지를 수신하고 수신된 메시지에 대한 메시지 필터링 기능을 수행할 수 있다. 또는, CAN 콘트롤러(220)는 재전송 제어를 위한 메시지 버퍼 및 MCU(210)와의 인터페이스 기능을 제공할 수 있다.
송수신부(230)는 CAN 컨넥터(미도시) 또는 CAN 허브(미도시)를 통해 CAN 버스와 연결될 수 있다. 송수신부(230)는 수신 장치(200)의 물리 계층을 구성할 수 있다. 송수신부(230)는 CAN 버스의 장애를 감지하고 이를 관리하는 기능 및 CAN 통신 데이터의 송수신 기능을 제공할 수 있다.
도 2는 종래의 CAN 통신 데이터 구조를 보여주는 도면이다.
도 2를 참고하면, 종래의 CAN 통신 데이터는, 데이터 유효성 판정을 위해 얼라이브 카운터(alive counter) 및 체크섬(CRC, checksum) 값이 7 번째 바이트(Byte[7])의 하위 여섯개의 비트 영역에 포함된다. 여기서, 얼라이브 카운터는, CAN 통신 데이터가 송신되지 않은 경우 이전 데이터가 CAN 버스에 남아 있기 때문에, 동일한 데이터를 송신할 때에도 업데이트 여부를 인식하게 해주는 역할을 수행한다. 체크섬은 CAN 통신 데이터의 송수신 과정에서 데이터가 왜곡되지 않는지 CAN 통신 데이터의 유효성을 판정할 수 있도록 한다.
얼라이브 카운터와 체크섬의 경우, 서로 다른 고장을 감지할 수 있는 역할을 수행하므로, 일반적으로 함께 적용되어 서로를 상호 보완하고 있다.
도 3은 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 구조를 보여주는 도면이다.
도 3을 참고하면, 데이터의 왜곡을 확인하기 위한 체크섬 값과, 업데이트 여부를 함께 반영하기 위한 얼라이브 카운터 값을 별도의 연산 과정을 통해 유효성 판정 정보로 병합할 수 있다. 여기서, 연산 과정은 XOR 연산 과정일 수 있다.
일 실시예에 있어서, 얼라이브 카운터 값이 ‘0100’ 이고 체크섬 값이 ‘0011’인 경우, XOR 연산 과정을 통해 XOR 결과값이 ‘0111’으로 나타날 수 있다. 여기서, 얼라이브 카운터 값의 하위 비트값 ‘00’의 경우 XOR 연산 과정에서 임의로 추가될 수 있다.
XOR 결과값은 CAN 통신 데이터의 체크섬 필드(7 번째 바이트(Byte[7])의 하위 네 개의 비트(0, 1, 2, 3))에 유효성 판정 정보로 포함될 수 있다.
유효성 판정 정보는, 기존의 얼라이브 카운터와 체크섬을 대체 가능하므로, 얼라이브 카운터 필드(7 번째 바이트(Byte[7])의 상위 두 개의 비트(4, 5))에 추가 데이터가 포함될 수 있다.
이를 통해, 별도의 하드웨어 변경없이 기존의 CAN 통신 데이터에 더 많은 데이터를 포함시킬 수 있고, 통신 리소스를 확보할 수 있는 효과가 있다.
도 2와 도 3에서 CAN 통신 데이터의 구조에 대해 단순 비트 데이터 순서로 표현하였으나, 이는 발명 설명의 용이함을 위한 것이지 이에 한정되는 것은 아니다. 즉, CAN 통신 데이터의 각 비트 필드는, SOF(Start Of Frame) 필드, ID(Identifier) 필드, RTR(Remote Transmission Request) 필드, IDE(IDentifier Extension) 필드, R(Reserved) 필드, DLC(Data Length Code) 필드, Data 필드, 얼라이브 카운터 필드, CRC(Cyclic Redundancy Check) 필드, ACK(ACKnowledgement) 필드, EOF(End Of Frame) 필드 및 IFS(InterFrame Space) 필드 중에서 어느 하나의 필드로 구성될 수 있다.
도 4는 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법의 CAN 통신 데이터 송신 과정을 보여주는 순서도이다.
도 1 및 도 4를 참고하면, 송신 장치(100)의 MCU(110)는 새로운 CAN 통신 데이터를 메모리로부터 수신하고, 이에 맞춰 얼라이브 카운터 값을 증가시킨다(S310).
일 실시예에 있어서, 현재 얼라이브 카운터값(AliveCounter)은 이전 얼라이브 카운터값에서 카운터값 1이 증가될 수 있다.
MCU(110)는 새로운 CAN 통신 데이터에 따라 체크섬을 산출한다(S320). 체크섬 산출은 이미 알려진 방식으로 이루어질 수 있으며 이에 대한 상세 설명은 생략한다.
MCU(110)는 산출된 체크섬 결과값과 얼라이브 카운터값에 대해 XOR 연산을 수행한다(S330). MCU(110)는 XOR 연산 결과에 따른 유효성 판정 정보(Valid Information)를 획득할 수 있다. MCU(110)는 유효성 판정 정보를 CAN 통신 데이터의 체크섬 필드에 포함시킬 수 있다. MCU(110)는 기존 얼라이브 카운터 필드에 추가 데이터 정보를 포함시킬 수 있다.
MCU(110)는 유효성 판정 정보가 포함된 CAN 통신 데이터를 송신한다(S340).
도 5는 본 발명의 바람직한 실시예에 따른 CAN 통신 데이터 송수신 방법의 CAN 통신 데이터 수신 과정을 보여주는 순서도이다.
도 1 및 도 5를 참고하면, 수신 장치(200)의 MCU(210)는 CAN 통신 데이터를 수신한다(S401).
MCU(210)는 수신한 CAN 통신 데이터의 체크섬값을 산출한다(S403).
MCU(210)는 산출한 체크섬 결과값과 수신한 CAN 통신 데이터의 유효성 판정 정보에 대해 XOR 연산을 수행한다(S405).
MCU(210)는 S405 단계의 XOR 결과값(이하, 제1 XOR 결과값)과 이전 얼라이브 카운터값(Alive counter old)을 비교한다(S407). 여기서, 이전 얼라이브 카운터값은 S401단계에서 수신한 CAN 통신 데이터보다 한 프레임 전에 수신한 CAN 통신 데이터의 얼라이브 카운터값일 수 있다.
MCU(210)는 제1 XOR 결과값과 이전 얼라이브 카운터값이 일치하는 경우, 얼라이브 에러(ALIVE ERROR)로 판단한다(S409). MCU(210)는 수신한 CAN 통신 데이터가 업데이트되지 않은 것으로 판단할 수 있다. MCU(210)는 수신한 CAN 통신 데이터를 무시하여 삭제 처리할 수 있다.
MCU(210)는 제1 XOR 결과값과 이전 얼라이브 카운터값이 일치하지 않는 경우, 카운터값 1이 증가된 이전 카운터값(Alive Counter Old + 1)과 유효성 판정 정보에 대해 XOR 연산을 수행한다(S411). 이때 MCU(210)는 수신한 CAN 통신 데이터가 업데이트된 것으로 판단할 수 있다.
MCU(210)는 S411 단계의 XOR 결과값(이하, 제2 XOR 결과값)과 수신한 CAN 통신 데이터의 체크섬값을 비교한다(S413).
MCU(210)는 제2 XOR 결과값과 체크섬값이 일치하는 경우, 카운터값 1이 증가된 이전 얼라이브 카운터값을 현재 얼라이브 카운터값으로 저장한다(S415). 이때 MCU(210)는 수신한 CAN 통신 데이터의 왜곡 발생이 없는 것으로 판단할 수 있다. MCU(210)는 CAN 통신 데이터의 유효성 판정 과정을 종료할 수 있다.
MCU(210)는 제2 XOR 결과값과 체크섬값이 일치하지 않는 경우, 카운터값 2가 증가된 이전 카운터값(Alive Counter Old + 2)과 유효성 판정 정보에 대해 XOR 연산을 수행한다(S417).
MCU(210)는 S417 단계의 XOR 결과값(이하, 제3 XOR 결과값)과 수신한 CAN 통신 데이터의 체크섬값을 비교한다(S419).
MCU(210)는 제3 XOR 결과값과 체크섬값이 일치하는 경우, 수신한 CAN 통신 데이터에 신호 에러가 발생한 것으로 판단한다(S421). 이때 MCU(210)는 CAN 통신 데이터를 무시하여 삭제 처리하고, 유효성 판정 과정을 종료할 수 있다.
MCU(210)는 제3 XOR 결과값과 체크섬값이 일치하지 않는 경우, 수신한 CAN 통신 데이터를 통해 산출된 체크섬값에 에러가 발생한 것으로 판단한다(S423). 이때 MCU(210)는 CAN 통신 데이터의 체크섬값을 새롭게 산출하거나, CAN 통신 데이터를 무시하여 삭제 처리할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.
본 발명에 따른 단계들 및/또는 동작들은 기술분야의 통상의 기술자에 의해 이해될 수 있는 것과 같이, 다른 순서로, 또는 병렬적으로, 또는 다른 에포크(epoch) 등을 위해 다른 실시 예들에서 동시에 일어날 수 있다.
실시 예에 따라서는, 단계들 및/또는 동작들의 일부 또는 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/또는 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 또는 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합으로 구현될 수 있다.
100: 송신 장치
110: MCU
120: CAN 콘트롤러
130: 송수신부
200: 송신 장치
210: MCU
220: CAN 콘트롤러
230: 송수신부
110: MCU
120: CAN 콘트롤러
130: 송수신부
200: 송신 장치
210: MCU
220: CAN 콘트롤러
230: 송수신부
Claims (10)
- CAN 통신 데이터의 송신 전에 얼라이브 카운터값을 증가하는 카운터값 증가 단계;
상기 CAN 통신 데이터의 체크섬값을 산출하는 체크섬 산출 단계;
상기 얼라이브 카운터값과 상기 체크섬값을 연산하여 유효성 판정 정보를 획득하는 연산 단계; 및
상기 유효성 판정 정보가 포함되는 상기 CAN 통신 데이터를 송신하는 송신 단계;
를 포함하고,
상기 연산 단계는, 상기 얼라이브 카운터값과 상기 체크섬값을 대체하여 상기 유효성 판정 정보를 상기 CAN 통신 데이터에 포함시키는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 1 항에 있어서,
상기 연산 단계는,
상기 얼라이브 카운터값과 상기 체크섬값을 XOR 연산하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 1 항에 있어서,
상기 연산 단계는,
상기 CAN 통신 데이터의 체크섬값 필드에 상기 유효성 판정 정보를 포함시키고, 상기 CAN 통신 데이터의 얼라이브 카운터값 필드에 추가 데이터 정보를 포함시키는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - CAN 통신 데이터를 수신하는 수신 단계;
상기 CAN 통신 데이터의 체크섬값을 산출하는 산출 단계;
산출된 상기 체크섬값과 상기 CAN 통신데이터의 유효성 판정 정보를 연산하는 제1 연산 단계; 및
상기 연산 단계의 연산 결과에 따라 상기 CAN 통신 데이터의 유효성을 판단하는 판단 단계;
를 포함하고,
상기 유효성 판정 정보는 상기 CAN 통신 데이터의 송신시에 체크섬값과 얼라이브 카운터값을 대체하여 마련된 것인 CAN 통신 데이터 송수신 방법. - 제 4 항에 있어서,
상기 제1 연산 단계는,
산출된 상기 체크섬값과 상기 유효성 판정 정보를 XOR 연산하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 5 항에 있어서,
상기 판단 단계는,
상기 제1 연산 단계의 제1 XOR 결과값과 상기 CAN 통신 데이터를 수신하기 전의 이전 얼라이브 카운터값을 비교하는 제1 비교 단계를 포함하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 6 항에 있어서,
상기 판단 단계는,
상기 제1 XOR 결과값과 상기 이전 얼라이브 카운터값이 일치하는 경우 얼라이브 에러로 판단하는 얼라이브 에러 단계를 더 포함하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 6 항에 있어서,
상기 판단 단계는,
상기 제1 XOR 결과값과 상기 이전 얼라이브 카운터값이 일치하지 않는 경우, 하나의 카운터값이 증가된 이전 얼라이브 카운터값과 상기 유효성 판정 정보에 대해 XOR 연산을 수행하는 제2 연산 단계를 더 포함하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 8 항에 있어서,
상기 판단 단계는,
상기 제2 연산 단계의 제2 XOR 결과값과 상기 체크섬값을 비교하는 제2 비교 단계,
상기 제2 XOR 결과값과 상기 체크섬값이 일치하는 경우, 하나의 카운터값이 증가된 이전 얼라이브 카운터값을 현재 얼라이브 카운터값으로 저장하는 저장 단계, 및
상기 제2 XOR 결과값과 상기 체크섬값이 일치하지 않는 경우, 두 개의 카운터값이 증가된 이전 카운터값과 유효성 판정 정보에 대해 XOR 연산을 수행하는 제3 연산 단계를 더 포함하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법. - 제 9 항에 있어서,
상기 판단 단계는,
상기 제3 연산 단계의 제3 XOR 결과값과 상기 체크섬값을 비교하는 제3 비교 단계,
상기 제3 XOR 결과값과 상기 체크섬값이 일치하는 경우, 상기 통신 데이터에 신호 에러가 발생한 것으로 판단하는 신호 에러 단계, 및
상기 제3 XOR 결과값과 상기 체크섬값이 일치하지 않는 경우, 상기 체크섬값에 에러가 발생한 것으로 판단하는 체크섬 에러 단계를 더 포함하는 것을 특징으로 하는 CAN 통신 데이터 송수신 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190164474A KR102246106B1 (ko) | 2019-12-11 | 2019-12-11 | Can 통신 데이터 송수신 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190164474A KR102246106B1 (ko) | 2019-12-11 | 2019-12-11 | Can 통신 데이터 송수신 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102246106B1 true KR102246106B1 (ko) | 2021-04-28 |
Family
ID=75721337
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190164474A KR102246106B1 (ko) | 2019-12-11 | 2019-12-11 | Can 통신 데이터 송수신 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102246106B1 (ko) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101780278B1 (ko) | 2014-10-17 | 2017-09-21 | 현대자동차주식회사 | Can 통신에서의 통신 부하 절감 방법 및 장치 |
KR20180029846A (ko) * | 2016-09-13 | 2018-03-21 | 현대자동차주식회사 | 차량 네트워크에서 asil에 기초한 통신 방법 및 장치 |
US20180232959A1 (en) * | 2017-02-15 | 2018-08-16 | Ford Global Technologies, Llc | Enhanced central gateway for vehicle networking |
US20190359225A1 (en) * | 2017-02-23 | 2019-11-28 | Honda Motor Co., Ltd. | Vehicle control system and control method |
-
2019
- 2019-12-11 KR KR1020190164474A patent/KR102246106B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101780278B1 (ko) | 2014-10-17 | 2017-09-21 | 현대자동차주식회사 | Can 통신에서의 통신 부하 절감 방법 및 장치 |
KR20180029846A (ko) * | 2016-09-13 | 2018-03-21 | 현대자동차주식회사 | 차량 네트워크에서 asil에 기초한 통신 방법 및 장치 |
US20180232959A1 (en) * | 2017-02-15 | 2018-08-16 | Ford Global Technologies, Llc | Enhanced central gateway for vehicle networking |
US20190359225A1 (en) * | 2017-02-23 | 2019-11-28 | Honda Motor Co., Ltd. | Vehicle control system and control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102382432B1 (ko) | 비트 에러를 검출하기 위한 방법 및 장치 | |
US9077448B2 (en) | Read optical power link service for link health diagnostics | |
WO2015058497A1 (zh) | 一种光纤链路识别的方法、设备和系统 | |
CN113341906B (zh) | 一种故障处理方法、装置、设备及汽车 | |
US11218501B2 (en) | Detector, detection method, and detection program | |
US7783964B2 (en) | Redundant 3-wire communication system and method | |
CN112688759B (zh) | 数据接收处理方法及装置 | |
CN111447238A (zh) | 基于区块链的数据共享系统 | |
KR102246106B1 (ko) | Can 통신 데이터 송수신 방법 | |
JP7417773B1 (ja) | ネットワークインターフェースカード、および送信性能監視方法 | |
US7839765B2 (en) | Advertising port state changes in a network | |
CN114124745B (zh) | 一种用于诊断mvb通信故障的方法与系统 | |
US20230188536A1 (en) | Communication method based on dual channels and rssp-i, apparatus, electronic device and storage medium | |
CN112825501B (zh) | 信号劣化处理方法、装置及系统 | |
CN112219373B (zh) | 海缆故障判断方法和装置 | |
WO2024087676A1 (zh) | 端口故障诊断方法、通信设备及计算机可读存储介质 | |
KR102054853B1 (ko) | 위성 통신을 이용한 파일 수신 방법 | |
CN110198322B (zh) | 数据通信网络接入方法 | |
US20240097935A1 (en) | Controller area network system and a method for the system | |
US20220026859A1 (en) | Multi-unit cooperative distributed electrical control system and electrical system | |
CN110492979B (zh) | 一种增量数据传输方法、装置、从机及存储介质 | |
US11646957B1 (en) | Network packet loss period expansion | |
CN116414614A (zh) | 数据库集群的数据处理方法、存储介质及设备 | |
JP3239138B2 (ja) | 通信網の転送データ誤り検出方法 | |
KR20240026754A (ko) | 차량 네트워크 내의 통신 채널 상태를 진단하는 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |