KR20160043378A - 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 - Google Patents
복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 Download PDFInfo
- Publication number
- KR20160043378A KR20160043378A KR1020140137674A KR20140137674A KR20160043378A KR 20160043378 A KR20160043378 A KR 20160043378A KR 1020140137674 A KR1020140137674 A KR 1020140137674A KR 20140137674 A KR20140137674 A KR 20140137674A KR 20160043378 A KR20160043378 A KR 20160043378A
- Authority
- KR
- South Korea
- Prior art keywords
- update
- module
- information
- function module
- target
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- 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
-
- 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/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
본 발명은 업데이트 대상의 주소 정보를 기초로 차량 기기 내 각 모듈을 업데이트하는 장치 및 방법을 제안한다. 본 발명에 따른 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치는 업데이트 정보를 생성하는 업데이트 정보 생성 모듈; 특정 기능을 수행하는 것으로서, 업데이트 정보가 수신되면 자신을 업데이트시키는 적어도 하나의 기능 모듈; 및 하나의 차량 기기 내에 기능 모듈과 함께 내장되며, 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단하고, 자신이 업데이트 대상인 것으로 판단되면 자신을 업데이트시키며, 기능 모듈이 업데이트 대상인 것으로 판단되면 기능 모듈로 업데이트 정보를 전송하는 업데이트 대상 판단 모듈을 포함한다.
Description
본 발명은 차량에 장착된 차량 기기를 업데이트하는 장치 및 방법에 관한 것이다. 보다 상세하게는, 복수개의 모듈들을 구비하는 차량 기기를 업데이트하는 장치 및 방법에 관한 것이다.
기존 차량에 사용되는 유닛은 한개의 마이컴(MICOM)을 업데이트하기 위해서 진단 프로토콜을 사용하였다. 마이컴의 내부 코드 플래시(Code Flash) 영역은 많은 영역으로 나누어져 있고, 업데이트하고자 하는 어드레스(Address)는 내부 구성을 어떻게 하느냐에 따라 업데이트 시작하는 주소가 달라지긴 하지만 모두 공통적으로 하나의 고유 어드레스를 가진다. 프로토콜은 업데이트 시작시 해당 고유 어드레스와 크기(Size)를 진단 장비(업데이트 장비)에서 업데이트하고자 하는 유닛으로 전송으로 시작된다. 따라서 기준 프로토콜 상에는 진단 통신으로 업데이트할 수 있는 대상은 한 유닛당 하나만 가능하다.
한국공개특허 제2014-0049775호는 차량용 기기를 업데이트하는 시스템에 관한 것이다. 그러나 이 시스템은 헤드 유닛을 이용하여 외장 앰프를 업데이트하는 것이기 때문에 전술한 문제점을 해결할 수 없다.
본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 업데이트 대상의 주소 정보를 기초로 차량 기기 내 각 모듈을 업데이트하는 장치 및 방법을 제안하는 것을 목적으로 한다.
그러나 본 발명의 목적은 상기에 언급된 사항으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명은 상기한 목적을 달성하기 위해 안출된 것으로서, 업데이트 정보를 생성하는 업데이트 정보 생성 모듈; 특정 기능을 수행하는 것으로서, 상기 업데이트 정보가 수신되면 자신을 업데이트시키는 적어도 하나의 기능 모듈; 및 하나의 차량 기기 내에 상기 기능 모듈과 함께 내장되며, 상기 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하고, 자신이 업데이트 대상인 것으로 판단되면 자신을 업데이트시키며, 상기 기능 모듈이 업데이트 대상인 것으로 판단되면 상기 기능 모듈로 상기 업데이트 정보를 전송하는 업데이트 대상 판단 모듈을 포함하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치를 제안한다.
바람직하게는, 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단한다.
바람직하게는, 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단한다.
바람직하게는, 상기 업데이트 정보 생성 모듈은 CAN을 이용하여 상기 업데이트 대상 판단 모듈로 상기 업데이트 정보를 전송하며, 상기 업데이트 대상 판단 모듈은 UART를 이용하여 상기 기능 모듈로 상기 업데이트 정보를 전송한다.
바람직하게는, 상기 차량 기기는 이머전시 콜(Emergency Call) 유닛이며, 상기 기능 모듈은 모뎀 또는 GNSS 모듈이다.
바람직하게는, 상기 기능 모듈과 상기 업데이트 대상 판단 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 상기 업데이트 정보로 자신을 업데이트시킨다.
바람직하게는, 상기 기능 모듈과 상기 업데이트 대상 판단 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검한다.
또한 본 발명은 업데이트 정보 생성 모듈이 업데이트 정보를 생성하는 단계; 업데이트 대상 판단 모듈이 상기 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 적어도 하나의 기능 모듈이 업데이트 대상인지 여부를 판단하는 단계; 자신이 업데이트 대상인 것으로 판단되면 상기 업데이트 대상 판단 모듈이 자신을 업데이트시키는 1단계; 상기 기능 모듈이 업데이트 대상인 것으로 판단되면 상기 업데이트 대상 판단 모듈이 상기 기능 모듈로 상기 업데이트 정보를 전송하는 단계; 및 상기 업데이트 대상 판단 모듈과 하나의 차량 기기에 함께 내장되는 상기 기능 모듈이 상기 업데이트 정보가 수신되면 자신을 업데이트시키는 2단계를 포함하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 방법을 제안한다.
바람직하게는, 상기 판단하는 단계에서 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단한다.
바람직하게는, 상기 판단하는 단계에서 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단한다.
바람직하게는, 상기 생성하는 단계와 상기 판단하는 단계 사이에 상기 업데이트 정보 생성 모듈은 CAN을 이용하여 상기 업데이트 대상 판단 모듈로 상기 업데이트 정보를 전송하며, 상기 전송하는 단계에서 상기 업데이트 대상 판단 모듈은 UART를 이용하여 상기 기능 모듈로 상기 업데이트 정보를 전송한다.
바람직하게는, 상기 업데이트시키는 1단계에서 상기 업데이트 대상 판단 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 상기 업데이트 정보로 자신을 업데이트시키며, 상기 업데이트시키는 2단계에서 상기 기능 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 상기 업데이트 정보로 자신을 업데이트시킨다.
바람직하게는, 상기 업데이트시키는 1단계에서 상기 업데이트 대상 판단 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검하며, 상기 업데이트시키는 2단계에서 상기 기능 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검한다.
본 발명은 업데이트 대상의 주소 정보를 기초로 차량 기기 내 각 모듈을 업데이트함으로써 다음 효과를 얻을 수 있다.
첫째, 마이컴(MICOM), GNSS 모듈, 모뎀(Modem) 등을 동일한 장비로 업데이트 가능하게 되어 편의성이 ?상된다.
둘째, 기존 업데이트별로 별도 케이블이나 별도의 통신 방식을 사용하는 경우 다수의 연결 케이블과 장비가 필요한데, 본 발명의 경우 하나의 장비와 케이블로 업데이트 가능하다.
도 1은 본 발명의 일실시예에 따른 차량 유닛 업데이트 시스템을 개략적으로 도시한 개념도이다.
도 2는 코드 플래시 메모리(Code Flash Memory) 구조의 예시도이다.
도 3은 제1 업데이트 방법을 이용하여 모뎀을 업데이트하는 과정의 일실시예 흐름도이다.
도 4는 제1 업데이트 방법을 이용하여 GNSS 모듈을 업데이트하는 과정의 일실시예 흐름도이다.
도 5는 제1 업데이트 방법을 이용하여 마이컴을 업데이트하는 과정의 일실시예 흐름도이다.
도 6은 eCall 유닛의 업데이트 과정을 보여주는 흐름도이다.
도 2는 코드 플래시 메모리(Code Flash Memory) 구조의 예시도이다.
도 3은 제1 업데이트 방법을 이용하여 모뎀을 업데이트하는 과정의 일실시예 흐름도이다.
도 4는 제1 업데이트 방법을 이용하여 GNSS 모듈을 업데이트하는 과정의 일실시예 흐름도이다.
도 5는 제1 업데이트 방법을 이용하여 마이컴을 업데이트하는 과정의 일실시예 흐름도이다.
도 6은 eCall 유닛의 업데이트 과정을 보여주는 흐름도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
차량에서 사용하는 진단 프로토콜을 이용하여 유닛을 업데이트할 때 종래 방법 이용시 진단 통신을 이용하여 한 유닛에 한 모듈만 업데이트 가능하게 되어 있다. 본 발명에서는 정해져 있는 프로토콜을 이용하여 하나의 유닛에 여러 개의 모듈들이 있는 경우 진단 통신의 업데이트 프로토콜로 여러 개의 모듈들을 업데이트 가능하도록 하는 방법을 제안한다.
도 1은 본 발명의 일실시예에 따른 차량 유닛 업데이트 시스템(100)을 개략적으로 도시한 개념도이다.
많은 차량에서는 CAN 진단 프로토콜인 UDS나 KWP을 사용하여 진단한다. 해당 진단 기능의 하나로 통신하는 유닛 ECU를 업데이트하는 프로토콜이 있다. 업데이트 프로토콜을 시작하는 과정에 유닛 ECU의 업데이트하고자 하는 코드 플래시(Code Flash)의 메모리 어드레스(Memory Address)와 메모리 크기(Memory Size)를 진단기(120)로부터 유닛 ECU으로 전송하는 프로토콜이 존재한다. 도 2는 코드 플래시 메모리(Code Flash Memory) 구조의 예시도이다. 해당 프로토콜은 해당 1개의 유닛에는 1개의 업데이트 대상이 있는 것으로 가정하여 만들어진 프로토콜이다.
보통 차량에 적용되는 하나의 유닛에는 하나의 ECU가 들어가게 되어 1개를 업데이트하게 프로토콜이 정의되어 있다. 그래서 종래 차량용 유닛의 경우 해당 프로토콜을 이용해서 1개의 업데이트를 실행하게 구현된다.
그런데 eCall(emergency Call) 유닛(110)의 경우 UDS 진단 프로토콜을 이용해서 업데이트해야 하는 한 유닛 내의 업데이트 대상이 모뎀(111), GNSS 모듈(112), 마이컴(113) 등 3개 존재한다. 또한 진단 프로토콜인 UDS와 KWP의 경우 한 유닛에 한개의 업데이트를 대상으로 만들어져 있다.
본 발명은 해당 프로토콜을 변경할 수 없는 상황에서 종래 프로토콜의 메모리 어드레스를 이용하여 업데이트 대상을 구분하거나 데이터의 크기로 구분하여 다수의 업데이트 대상을 구분하여 업데이트 가능하게 하는 로직을 제안한다.
진단 통신(UDS, KWP)은 CAN 표준이 차량에 따라 결정되어 있기 때문에 임의로 변경하지 못한다. 따라서 기존 프로토콜을 이용하여 한 유닛 내부의 여러 개의 모듈을 업데이트하기 위해서 본 발명에서는 아래 두가지 방법으로 구현함으로써 목적 달성이 가능해진다.
첫째, 메모리 어드레스(memory address)를 이용하여 업데이트 대상을 구분한다. 이하 이를 제1 업데이트 방법이라 칭한다.
프로토콜의 경우 업데이트 시작시 메모리 어드레스와 크기(size)를 보내도록 되어 있다. 메모리 어드레스는 유닛이 알고 있는 주소로서 필요하지 않으므로 해당을 업데이트 모듈의 구분으로 사용한다.
메모리 어드레스를 다음과 같이 구분하여 해당 어드레스 입력에 따라 업데이트 모듈을 구분한다.
- 메모리 어드레스 0x10000 : GNSS 모듈(112) 업데이트(Update)
- 메모리 어드레스 0x20000 : 모뎀(111) 업데이트
- 메모리 어드레스 0x30000 : 마이컴(113) 업데이트
상기와 같이 구분하도록 정의한다면 각 업데이트 모듈에 대하여 진단기(120)에 입력하는 바이너리(binary)가 별도로 존재하며 해당 바이너리에 따라 어드레스(Address)를 다르게 하여 진단기(120)에서 전송을 시작하면 한 유닛 내의 여러 개의 모듈에 대하여 업데이트 구분이 가능해진다.
한편 차량 유닛 업데이트 시스템(100)에서 진단기(120)는 업데이트 유닛(110)과 CAN을 이용하여 통신하며, 업데이트 유닛(110) 내에서 마이컴(113)은 모뎀(111), GNSS 모듈(112) 등과 UART를 이용하여 통신한다.
도 3은 제1 업데이트 방법을 이용하여 모뎀을 업데이트하는 과정의 일실시예 흐름도이다. 이하 도 1과 도 3을 참조하여 설명한다.
진단기(120)가 CAN을 이용하여 마이컴(113)으로 업데이트 대상 정보를 전송한다(S310).
이후 마이컴(113)이 업데이트 대상 정보에 포함된 어드레스 정보를 기초로 업데이트 대상을 판단한다. 본 실시예에서 어드레스 정보(Memory Address)는 0x020000으로 구성될 수 있다.
업데이트 대상이 모뎀(111)인 것으로 판단되면 마이컴(113)은 UART를 이용하여 이 사실(업데이트 대상이 모뎀(111)임)을 모뎀(111)에게 알린다. 그러면 모뎀(111)은 업데이트 대상이 자신임을 진단기(120)로 통지한다(S320). 이때 모뎀(111)은 진단기(120)에게 자신의 메모리 크기(Memory Size)를 함께 통지할 수 있다. 본 실시예에서 메모리 크기는 0x0A0000으로 구성될 수 있다.
이후 진단기(120)가 모뎀 업데이트 용도의 데이터를 마이컴(113)을 거쳐 모뎀(111)으로 전송한다(S330).
한편 진단기(120)가 업데이트 대상 정보와 업데이트 용도의 데이터가 결합된 업데이트 정보를 마이컴(113)으로 전송하고, 마이컴(113)이 업데이트 대상이 누구인지를 판단한 뒤 업데이트 대상에게 업데이트 정보를 전송하는 것도 가능하다. 즉 마이컴(113)이 모뎀(111)에게 직접 업데이트 정보를 전송하는 것도 가능하다.
도 4는 제1 업데이트 방법을 이용하여 GNSS 모듈을 업데이트하는 과정의 일실시예 흐름도이다. 이하 도 1과 도 4를 참조하여 설명한다.
진단기(120)가 CAN을 이용하여 마이컴(113)으로 업데이트 대상 정보를 전송한다(S410).
이후 마이컴(113)이 업데이트 대상 정보에 포함된 어드레스 정보를 기초로 업데이트 대상을 판단한다. 본 실시예에서 어드레스 정보(Memory Address)는 0x020000으로 구성될 수 있다.
업데이트 대상이 GNSS 모듈(112)인 것으로 판단되면 마이컴(113)은 UART를 이용하여 이 사실(업데이트 대상이 GNSS 모듈(112)임)을 GNSS 모듈(112)에게 알린다. 그러면 GNSS 모듈(112)은 업데이트 대상이 자신임을 진단기(120)로 통지한다(S420). 이때 GNSS 모듈(112)은 진단기(120)에게 자신의 메모리 크기(Memory Size)를 함께 통지할 수 있다. 본 실시예에서 메모리 크기는 0x0A0000으로 구성될 수 있다.
이후 진단기(120)가 GNSS 모듈 업데이트 용도의 데이터를 마이컴(113)을 거쳐 GNSS 모듈(112)로 전송한다(S430).
한편 진단기(120)가 업데이트 대상 정보와 업데이트 용도의 데이터가 결합된 업데이트 정보를 마이컴(113)으로 전송하고, 마이컴(113)이 업데이트 대상이 누구인지를 판단한 뒤 업데이트 대상에게 업데이트 정보를 전송하는 것도 가능하다. 즉 마이컴(113)이 GNSS 모듈(112)에게 직접 업데이트 정보를 전송하는 것도 가능하다.
도 5는 제1 업데이트 방법을 이용하여 마이컴을 업데이트하는 과정의 일실시예 흐름도이다. 이하 도 1과 도 5를 참조하여 설명한다.
진단기(120)가 CAN을 이용하여 마이컴(113)으로 업데이트 대상 정보를 전송한다(S510).
이후 마이컴(113)이 업데이트 대상 정보에 포함된 어드레스 정보를 기초로 업데이트 대상을 판단한다. 본 실시예에서 어드레스 정보(Memory Address)는 0x020000으로 구성될 수 있다.
업데이트 대상이 자신인 것으로 판단되면 마이컴(113)은 업데이트 대상이 자신임을 진단기(120)로 통지한다(S520). 이때 마이컴(113)은 진단기(120)에게 자신의 메모리 크기(Memory Size)를 함께 통지할 수 있다. 본 실시예에서 메모리 크기는 0x0A0000으로 구성될 수 있다.
이후 진단기(120)가 마이컴 업데이트 용도의 데이터를 마이컴(113)으로 전송한다(S530).
이상 도 3 내지 도 5를 참조하여 설명한 바와 같이 CAN으로 진단 프로토콜을 이용해서 직접 입력받는 마이컴(113)에서는 CAN으로 진단 프로토콜로 업데이트 요구가 입력되었을 때 어드레스가 0x10000, 0x20000 등으로 입력되는 경우 마이컴(113)을 업데이트하지 않고 해당 데이터를 모뎀(111), GNSS 모듈(112) 등으로 UART 업데이트 프로토콜에 따라 전송한다. 0x30000으로 입력되는 경우만 마이컴(113)이 자체 업데이트에 사용하도록 동작한다.
이상 설명한 제1 업데이트 방법은 한 유닛 내의 여러 개의 모듈을 업데이트해야 하고 업데이트할 바이너리에 대하여 각각 입력되는 경우에 사용 가능한 로직이다.
둘째, 여러 개의 모듈에 대하여 하나의 바이너리로 제작 송신, 수신 유닛에서 데이터 위치로 구분하여 업데이트한다. 이하 이를 제2 업데이트 방법이라 칭한다.
이 방법은 업데이트 바이너리 생성시 미리 약속된 크기의 각 모듈의 바이너리를 1개의 업데이트 바이너리로 만들고 진단기(120)에서는 기존처럼 해당 바이너리를 업데이트 대상 유닛(110)으로 전송한다. 업데이트 대상 유닛(110)은 수신된 데이터를 미리 약속된 데이터 위치에 따라 해당하는 모듈로 데이터를 전송하여 업데이트 동작을 한다.
- GNSS 모듈 업데이트 바이너리(update binery) : 0x0000(start) ~ 0xFFFF(end)
- 모뎀 업데이트 바이너리 : 0x10000(start) ~ 0x1FFFF(end)
- 마이컴 업데이트 바이너리 : 0x20000(start) ~ 0x2FFFF(end)
해당 유닛(110) 내부에서 미리 약속된 업데이트 바이너리의 크기가 상기와 같이 정의되어 있으면 진단기(120) 쪽에서는 통합된 하나의 파일을 전송하게 된다. 이때 CAN으로 데이터를 수신하는 마이컴(113)에서 처음 0x0000~0xFFFF까지의 데이터는 GNSS 모듈(112)로 내부 프로토콜에 따라서 전송한다. 이후 0x10000 ~ 0x1FFFF까지의 데이터는 모뎀(111)으로 전송하며, 마지막으로 0x20000 ~ 0x2FFFF까지의 데이터는 마이컴(113) 자신을 업데이트하는 데에 사용한다.
제1 업데이트 방법의 장점은 각 모듈별로 업데이트가 가능하고 실제 업데이트하는 크기만큼 데이터를 전송하게 된다. 단점의 경우 진단기(120)에서 한 유닛에 대하여 한 개의 업데이트만 지원하였으나 여러 개 업데이트 가능하도록 수정할 필요가 있다는 것이다.
제2 업데이트 방법의 장점은 진단기(120)의 변경 없이 기존처럼 하나의 업데이트로 가능하다. 단점은 사이즈가 고정되어 있어 사이즈를 맞추기 위한 실제 필요없는 데이터가 전송되어 시간이 오래 걸리고 고정된 데이터의 크기가 넘는 경우 업데이트가 불가능해진다는 것이다.
종래 진단 통신으로 업데이트하는 경우 하나의 모듈에 대한 업데이트가 대상이므로 2가지 이상 업데이트가 필요한 모듈의 경우 본 발명에서 제안한 방법들에 따라 2개 이상의 모듈에 대한 업데이트를 실현할 수 있다.
도 6은 도 1 내지 도 5에서 설명한 유닛이 eCall 유닛일 때의 업데이트 과정을 보여주는 흐름도이다.
eCall 유닛을 업데이트할 때 고속 CAN(진단 CAN)을 이용한 SW 이미지 업데이트 방법을 이용할 수 있다. 즉 OBD 업데이트 장비(610)가 C-CAN(진단 CAN)을 이용하여 업데이트 정보를 SW 이미지 형태로 OBD 커넥터(620)를 거쳐 eCall 박스(630)로 전송함으로써 eCall 박스(630)의 업데이트를 실현할 수 있다.
OBD 업데이트 장비(610)가 도 1에서 설명한 진단기(120)에 대응하는 구성이며, eCall 박스(630)가 도 1에서 설명한 업데이트 유닛(110)에 대응하는 구성이다.
SW 이미지 업데이트 방법은 부트 영역(Boot Area)에 리프로그램(Re-program) SW 모듈을 구현하고, 업데이트시 RAM 영역에서 동작 수행되도록 할 수 있다.
한편 SW 이미지를 이용하여 모듈의 업데이트를 수행하는 것이 실패할 경우 그 대책(Fail-Safety 방안)으로 이미지 체크섬(checksum)을 이용한 업데이트 성공/실패 판단, 부트 스왑(Boot Swap), 이미지 업데이트 완료 체크 등을 이용할 수 있다.
한편 본 발명에서는 업데이트 도중 문제 발생시 네거티브 응답(Negative Response)을 전송하여 업데이트를 재시도하도록 하는 것도 가능하다.
이상 도 1 내지 도 6을 참조하여 본 발명의 일실시 형태에 대하여 설명하였다. 이하에서는 이러한 일실시 형태로부터 추론 가능한 본 발명의 바람직한 형태에 대하여 설명한다.
본 발명의 바람직한 실시예에 따른 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치는 업데이트 정보 생성 모듈, 기능 모듈 및 업데이트 대상 판단 모듈을 포함한다.
본 실시예에서 차량 기기는 이머전시 콜(Emergency Call) 유닛으로 구현될 수 있다.
업데이트 정보 생성 모듈은 업데이트 정보를 생성하는 기능을 수행한다. 업데이트 정보 생성 모듈은 도 1의 진단기(110)에 대응하는 개념이다.
업데이트 정보 생성 모듈은 CAN을 이용하여 업데이트 대상 판단 모듈로 업데이트 정보를 전송할 수 있다.
기능 모듈은 특정 기능을 수행하는 것으로서, 업데이트 정보가 수신되면 자신을 업데이트시키는 기능을 수행한다. 본 실시예에서 기능 모듈은 적어도 하나 구비된다. 기능 모듈은 도 1의 모뎀(111), GNSS 모듈(112) 등에 대응하는 개념이다.
업데이트 대상 판단 모듈은 하나의 차량 기기 내에 기능 모듈과 함께 내장되며, 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단하는 기능을 수행한다.
또한 업데이트 대상 판단 모듈은 자신이 업데이트 대상인 것으로 판단되면 자신을 업데이트시키며, 기능 모듈이 업데이트 대상인 것으로 판단되면 기능 모듈로 업데이트 정보를 전송하는 기능을 수행한다. 업데이트 대상 판단 모듈은 도 1의 마이컴(113)에 대응하는 개념이다.
업데이트 대상 판단 모듈은 업데이트 정보 내의 데이터의 위치를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단할 수 있다.
업데이트 대상 판단 모듈은 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 업데이트 정보 내의 데이터의 위치를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단할 수 있다.
업데이트 대상 판단 모듈은 UART(Universal Asynchronous Receiver/Transmitter)를 이용하여 기능 모듈로 업데이트 정보를 전송할 수 있다.
한편 기능 모듈과 업데이트 대상 판단 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 업데이트 정보로 자신을 업데이트시킬 수 있다.
또한 기능 모듈과 업데이트 대상 판단 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검할 수 있다.
다음으로 이상 설명한 차량 기기 업데이트 장치의 작동 방법에 대하여 설명한다.
먼저 업데이트 정보 생성 모듈이 업데이트 정보를 생성한다.
이후 업데이트 대상 판단 모듈이 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 적어도 하나의 기능 모듈이 업데이트 대상인지 여부를 판단한다.
이 단계에서 업데이트 대상 판단 모듈은 업데이트 정보 내의 데이터의 위치를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단할 수 있다.
또한 이 단계에서 업데이트 대상 판단 모듈은 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 업데이트 정보 내의 데이터의 위치를 기초로 자신과 기능 모듈이 업데이트 대상인지 여부를 판단할 수 있다.
한편 업데이트 정보를 생성하는 단계와 업데이트 대상인지 여부를 판단하는 단계 사이에 업데이트 정보 생성 모듈은 CAN을 이용하여 업데이트 대상 판단 모듈로 업데이트 정보를 전송할 수 있다.
자신이 업데이트 대상인 것으로 판단되면, 업데이트 대상 판단 모듈이 자신을 업데이트시킨다. 이때 업데이트 대상 판단 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 업데이트 정보로 자신을 업데이트시킬 수 있다.
한편 업데이트 대상 판단 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검할 수 있다.
기능 모듈이 업데이트 대상인 것으로 판단되면, 업데이트 대상 판단 모듈이 기능 모듈로 업데이트 정보를 전송한다. 이때 업데이트 대상 판단 모듈은 UART를 이용하여 기능 모듈로 업데이트 정보를 전송할 수 있다.
이후 업데이트 대상 판단 모듈과 하나의 차량 기기에 함께 내장되는 기능 모듈이 업데이트 정보가 수신되면 자신을 업데이트시킨다. 이때 기능 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 업데이트 정보로 자신을 업데이트시킬 수 있다.
한편 기능 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검할 수 있다.
이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 상세한 설명에서 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구 범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (10)
- 업데이트 정보를 생성하는 업데이트 정보 생성 모듈;
특정 기능을 수행하는 것으로서, 상기 업데이트 정보가 수신되면 자신을 업데이트시키는 적어도 하나의 기능 모듈; 및
하나의 차량 기기 내에 상기 기능 모듈과 함께 내장되며, 상기 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하고, 자신이 업데이트 대상인 것으로 판단되면 자신을 업데이트시키며, 상기 기능 모듈이 업데이트 대상인 것으로 판단되면 상기 기능 모듈로 상기 업데이트 정보를 전송하는 업데이트 대상 판단 모듈
을 포함하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 1 항에 있어서,
상기 업데이트 대상 판단 모듈은 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 2 항에 있어서,
상기 업데이트 대상 판단 모듈은 상기 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 1 항에 있어서,
상기 업데이트 정보 생성 모듈은 CAN을 이용하여 상기 업데이트 대상 판단 모듈로 상기 업데이트 정보를 전송하며,
상기 업데이트 대상 판단 모듈은 UART를 이용하여 상기 기능 모듈로 상기 업데이트 정보를 전송하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 1 항에 있어서,
상기 차량 기기는 이머전시 콜(Emergency Call) 유닛이며,
상기 기능 모듈은 모뎀 또는 GNSS 모듈인 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 1 항에 있어서,
상기 기능 모듈과 상기 업데이트 대상 판단 모듈은 UDS 프로토콜이나 KWP 프로토콜을 이용하여 상기 업데이트 정보로 자신을 업데이트시키는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 제 1 항에 있어서,
상기 기능 모듈과 상기 업데이트 대상 판단 모듈은 업데이트 실패시 체크섬(checksum)을 이용하여 업데이트 실패를 점검하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치. - 업데이트 정보 생성 모듈이 업데이트 정보를 생성하는 단계;
업데이트 대상 판단 모듈이 상기 업데이트 정보에 포함된 업데이트 대상의 주소 정보를 기초로 자신과 적어도 하나의 기능 모듈이 업데이트 대상인지 여부를 판단하는 단계;
자신이 업데이트 대상인 것으로 판단되면 상기 업데이트 대상 판단 모듈이 자신을 업데이트시키는 1단계;
상기 기능 모듈이 업데이트 대상인 것으로 판단되면 상기 업데이트 대상 판단 모듈이 상기 기능 모듈로 상기 업데이트 정보를 전송하는 단계; 및
상기 업데이트 대상 판단 모듈과 하나의 차량 기기에 함께 내장되는 상기 기능 모듈이 상기 업데이트 정보가 수신되면 자신을 업데이트시키는 2단계
를 포함하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 방법. - 제 8 항에 있어서,
상기 판단하는 단계에서 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 방법. - 제 9 항에 있어서,
상기 판단하는 단계에서 상기 업데이트 대상 판단 모듈은 상기 업데이트 정보에 업데이트 대상의 주소 정보가 포함되어 있지 않을 때 상기 업데이트 정보 내의 데이터의 위치를 기초로 자신과 상기 기능 모듈이 업데이트 대상인지 여부를 판단하는 것을 특징으로 하는 복수개의 모듈들을 구비하는 차량 기기의 업데이트 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140137674A KR102256988B1 (ko) | 2014-10-13 | 2014-10-13 | 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140137674A KR102256988B1 (ko) | 2014-10-13 | 2014-10-13 | 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160043378A true KR20160043378A (ko) | 2016-04-21 |
KR102256988B1 KR102256988B1 (ko) | 2021-05-26 |
Family
ID=55917892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140137674A KR102256988B1 (ko) | 2014-10-13 | 2014-10-13 | 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102256988B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843952A (zh) * | 2017-01-13 | 2017-06-13 | 百度在线网络技术(北京)有限公司 | 更新应用中功能模块的方法与装置 |
KR20180039387A (ko) * | 2016-10-10 | 2018-04-18 | 현대오트론 주식회사 | 리프로그래밍 장치, 전자제어유닛 및 이를 이용한 리프로그래밍 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010071003A (ko) * | 1998-07-22 | 2001-07-28 | 추후제출 | 멀티-포인트 직렬 링크 데이터 전송 프로토콜을 이용하는컴퓨터화된 자동차 정비 장치 |
KR20010113595A (ko) * | 2001-08-10 | 2001-12-28 | 이철재 | 스마트카드를 이용한 차량 데이터 수집 및 차량 진단시스템 및 방법, 그리고 차량 편의장치 자동 설정 방법 |
KR20090041484A (ko) * | 2007-10-24 | 2009-04-29 | 이필경 | 무선 업그레이드 존에서의 네비게이션 단말기 소프트웨어및 컨텐츠 다운로드 시스템 및 그 방법 |
KR20100041574A (ko) * | 2008-10-14 | 2010-04-22 | 현대자동차주식회사 | 차량 진단프로그램 생성을 위한 진단정보 메시지 자동생성 시스템 및 그 방법 |
KR20110117225A (ko) * | 2009-02-10 | 2011-10-26 | 애플 인크. | 무선 네트워크를 통한 응급 호출 데이터 전송 장치 및 방법 |
-
2014
- 2014-10-13 KR KR1020140137674A patent/KR102256988B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010071003A (ko) * | 1998-07-22 | 2001-07-28 | 추후제출 | 멀티-포인트 직렬 링크 데이터 전송 프로토콜을 이용하는컴퓨터화된 자동차 정비 장치 |
KR20010113595A (ko) * | 2001-08-10 | 2001-12-28 | 이철재 | 스마트카드를 이용한 차량 데이터 수집 및 차량 진단시스템 및 방법, 그리고 차량 편의장치 자동 설정 방법 |
KR20090041484A (ko) * | 2007-10-24 | 2009-04-29 | 이필경 | 무선 업그레이드 존에서의 네비게이션 단말기 소프트웨어및 컨텐츠 다운로드 시스템 및 그 방법 |
KR20100041574A (ko) * | 2008-10-14 | 2010-04-22 | 현대자동차주식회사 | 차량 진단프로그램 생성을 위한 진단정보 메시지 자동생성 시스템 및 그 방법 |
KR20110117225A (ko) * | 2009-02-10 | 2011-10-26 | 애플 인크. | 무선 네트워크를 통한 응급 호출 데이터 전송 장치 및 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180039387A (ko) * | 2016-10-10 | 2018-04-18 | 현대오트론 주식회사 | 리프로그래밍 장치, 전자제어유닛 및 이를 이용한 리프로그래밍 방법 |
CN106843952A (zh) * | 2017-01-13 | 2017-06-13 | 百度在线网络技术(北京)有限公司 | 更新应用中功能模块的方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
KR102256988B1 (ko) | 2021-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106598632B (zh) | 一种光模块的固件升级方法及装置 | |
CN105700510A (zh) | Can通信系统的错误分散检测方法及can通信系统 | |
CN110580235B (zh) | 一种sas扩展器通信方法及装置 | |
US8364872B2 (en) | Slave and communicating method between a master and the same | |
US10496279B2 (en) | Slave device, control method of slave device, non-volatile computer readable recording medium | |
KR100778114B1 (ko) | 통신에러를 개선하기 위한 통신방법 및 그 통신방법이적용된 전자장치 | |
CN101064653A (zh) | 通信系统、控制设备和车载导航设备 | |
CN101630964B (zh) | 图像形成系统、图像形成装置、信息处理装置及控制方法 | |
KR20160043378A (ko) | 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법 | |
WO2022188664A1 (zh) | 一种胎压传感器信息处理方法、装置及设备 | |
JP2020147250A (ja) | 電子制御装置 | |
JP2000010902A (ja) | デイジーチェイン接続機器およびデイジーチェイン接続機器のアドレス設定方法 | |
US8954639B2 (en) | Integrated link calibration and multi-processor topology discovery | |
KR101260313B1 (ko) | 전자장치 및 그 데이터 송수신방법과, 슬레이브 장치 및복수의 장치 간의 통신방법 | |
JP5418670B2 (ja) | バス制御装置及びバス制御方法 | |
US11983134B2 (en) | Method for recognizing another electronic device by using plurality of interfaces, and electronic device therefor | |
CN113960991A (zh) | 车辆故障诊断系统、方法、装置、片上系统芯片及车辆 | |
KR20150110860A (ko) | 차량의 펌웨어 업데이트 장치 및 그 방법 | |
KR20060023862A (ko) | 캔 네트워크 관리 시스템 및 이의 테스트 및 디버깅 방법 | |
KR20190037690A (ko) | 버스 시스템 | |
US10700730B2 (en) | Semiconductor device, electronic device, data transmission method, timing controller, and vehicle | |
EP2782013A2 (en) | Fault-spot locating method, switching apparatus, fault-spot locating apparatus, and information processing apparatus | |
JP2017091048A (ja) | 中継装置、中継方法および中継制御プログラム | |
US10509754B2 (en) | Information processing apparatus, control method for information processing apparatus, and storage medium | |
JP2755242B2 (ja) | エラー通知方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |