KR20230097641A - Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법 - Google Patents

Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법 Download PDF

Info

Publication number
KR20230097641A
KR20230097641A KR1020210187350A KR20210187350A KR20230097641A KR 20230097641 A KR20230097641 A KR 20230097641A KR 1020210187350 A KR1020210187350 A KR 1020210187350A KR 20210187350 A KR20210187350 A KR 20210187350A KR 20230097641 A KR20230097641 A KR 20230097641A
Authority
KR
South Korea
Prior art keywords
update
vehicle
usb
software
control unit
Prior art date
Application number
KR1020210187350A
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 KR1020210187350A priority Critical patent/KR20230097641A/ko
Publication of KR20230097641A publication Critical patent/KR20230097641A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/442Shutdown
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk
    • G06F2212/2146Solid state disk being detachable, e.g.. USB memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 차량의 내부 통신으로 연결되는 차량 내 차량제어기들의 소프트웨어를 업데이트할 때, USB 메모리에 저장된 업데이트 정보를 차량 내 제어기들에 전송한 후 업데이트할 수 있는 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법에 관한 것이다.
본 발명에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치는 업데이트를 위한 소프트웨어 데이터가 저장된 USB 메모리와 접속하기 위한 USB 접속부, 상기 USB 접속부에 접속된 상기 USB 메모리로부터 상기 소프트웨어 데이터를 읽어와 저장한 후 차량의 내부통신으로 연결된 차량제어기에 상기 소프트웨어 데이터를 전송하는 업데이트 제어부 및 상기 USB 메모리로부터 읽어온 상기 소프트웨어 데이터를 저장하는 저장부를 포함하며, 상기 업데이트 제어부는 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 상기 차량제어기에 상기 소프트웨어 데이터를 전송하도록 형성된다.

Description

USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법 {Vehicle software update device and method using USB}
본 발명은 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법에 관한 것으로, 더욱 상세하게는 차량의 내부 통신으로 연결되는 차량 내 차량제어기들의 소프트웨어를 업데이트할 때, USB 메모리에 저장된 업데이트 정보를 차량 내 제어기들에 전송한 후 업데이트할 수 있는 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법에 관한 것이다.
최근 전기자동차, 하이브리드 자동차, 첨단 지능형 자동차에 이르기까지 자동차에 첨단 IT기술을 접목시키는 기술개발이 이루어지고 있다. 첨단 지능형자동차에는 많은 수의 차량용 센서 및 ECU(Electronic Control Unit)가 장착되어 많은 정보처리를 수행하고 있다.
이러한 다양한 편의사양과 각종 제어가 전자제어 방식으로 첨단화되는 자동차에 각종 센서가 부착됨으로 인하여 자동차에 일반적인 상식을 갖고 있는 운전자나 정비사도 자동차의 각 부분에 대한 정상적인 동작 여부를 확인할 수 없다.
따라서 자동차에는 운행 중에 발생되는 각종 이상 상태를 자기 진단하여 기록하는 진단장치가 구비되어 있으며, 진단장치에 기록된 자기 진단 정보는 외부의 분석장치를 통해 차량의 이상 여부가 분석된다.
여기서 차량내에 장착되어 있는 진단장치와 외부의 분석장치는 차량에 설치되어 있는 OBD 모듈에 유선으로 접속 되며, 차량내의 진단장치는 외부 분석장치의 스크롤에 따라 해당하는 진단 정보를 출력하여 분석장치에 전송하고, 분석장치는 전송되는 진단정보의 분석을 통해 차량의 이상 여부를 판단하여 표시수단을 통해 정비 작업자에게 지시한다.
또한 차량의 스마트 정션박스의 펌웨어를 업데이트하거나 위와 같은 각종 편의장치 및 안정장치 등의 전자 제어장치의 기능을 개선하거나 오류를 수정하기 위한 소프트웨어 업데이트를 수행하기 위해서도 OBD 모듈과 접속하여 소프트웨어를 업데이트하게 된다.
그런데 OBD 모듈이 차량의 운전석 앞쪽 좁은 공간에 위치하고 있어 어두운 곳에서 별도의 발광원 없이 OBD 모듈의 유선커넥터와 케이블을 통해 접속하여 업데이트해야하는 불편함이 있다.
한국공개특허 제2007-0051523호 : 블루투스 이동통신단말기를 이용한 차량용 오디오/비디오/네비게이션 시스템의 펌웨어 업그레이드 시스템 및 그 방법
본 발명은 상기 문제점을 해결하기 위해 창출된 것으로, 차량의 내부통신으로 연결되는 차량 내 차량제어기들의 소프트웨어를 업데이트할 때 USB 메모리에 저장된 업데이트 정보를 읽어와 차량 내 차량제어기들에 전송하여 업데이트하고, 업데이트 결과를 디스플레이 가능한 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치는 업데이트를 위한 소프트웨어 데이터가 저장된 USB 메모리와 접속하기 위한 USB 접속부, 상기 USB 접속부에 접속된 상기 USB 메모리로부터 상기 소프트웨어 데이터를 읽어와 저장한 후 차량의 내부통신으로 연결된 차량제어기에 상기 소프트웨어 데이터를 전송하는 업데이트 제어부 및 상기 USB 메모리로부터 읽어온 상기 소프트웨어 데이터를 저장하는 저장부를 포함하며, 상기 업데이트 제어부는 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 상기 차량제어기에 상기 소프트웨어 데이터를 전송하도록 형성된다.
상기 업데이트 제어부는 업데이트 프로그램이 실행되어 상기 업데이트 정보에 기초로 내부 모듈 또는 차량 네트워크를 통해 연결된 외부 모듈에 대한 업데이트를 수행하며, 상기 업데이트 프로그램은 상기 업데이트 정보에 의해 지정된 적어도 하나 이상의 업그레이드 대상 모듈에 대한 업데이트 진행중 플래그를 생성한 후 시스템을 재부팅하고, 시스템의 재부팅시 상기 업그레이드 대상 모듈들의 업데이트 상태를 저장하는 인스톨 상태 파일을 생성함과 더불어 상기 업그레이드 대상 모듈들에 대한 업데이트를 수행하는 것이 바람직하다.
본 발명의 USB를 이용한 차량 소프트웨어 업데이트 방법은 업데이트 제어부가 USB 접속부에 USB 메모리가 접속되면, 상기 USB 메모리로부터 업데이트를 위한 소프트웨어 데이터를 읽어와 저장부에 저장하는 단계와, 상기 업데이트 제어부가 상기 저장부에 저장된 상기 소프트웨어 데이터를 차량의 내부통신으로 연결된 차량제어기에 전송하는 단계 및 상기 업데이트 제어부가 상기 차량제어기 중 디스플레이가 가능한 차량제어기를 통해 업데이트 상태를 출력하는 단계를 포함하고, 상기 차량제어기에 전송하는 단계는, 상기 업데이트 제어부가 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 상기 소프트웨어 데이터를 전송하는 것을 특징으로 한다.
본 발명의 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법은 차량의 내부통신으로 연결되는 차량내 차량제어기들의 소프트웨어를 업데이트할 때 USB 메모리에 저장된 업데이트 정보를 읽어와 차량 내 차량제어기들에 전송하여 업데이트하고, 업데이트 결과를 디스플레이 가능한 차량제어기를 통해 표시함으로써 업데이트 장비의 개발 비용 및 공수를 감소시킬 수 있고 휴대가 용이하며 다수의 차량제어기를 일괄적으로 업데이트할 수 있는 이점이 있다.
도 1은 본 발명에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치의 일 실시예의 구성을 도시한 블록도,
도 2는 도 1의 USB를 이용한 차량 소프트웨어 업데이트 장치에 의한 업데이트 방법을 표시한 흐름도,
도 3은 USB를 이용한 차량 소프트웨어 업데이트 장치의 다른 실시예의 구성도,
도 4는 도 3의 USB를 이용한 차량 소프트웨어 업데이트 장치에 의한 업데이트 과정을 표시한 흐름도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법에 대해 상세히 설명한다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하여 도시한 것이다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1에 도시된 바와 같이 본 발명의 일 실시예에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치는, USB 접속부(1), 업데이트 제어부(2) 및 저장부(4)를 포함한다.
USB 접속부(1)는 업데이트를 위한 소프트웨어 데이터가 저장된 USB 메모리(5)와 접속하여 USB 프로토콜 규격에 따라 USB 메모리(5)에 저장된 소프트웨어 데이터를 읽어올 수 있도록 제공한다.
저장부(4)는 USB 메모리(5)로부터 읽어온 소프트웨어 데이터를 저장한다.
업데이트 제어부(2)는 USB 접속부(1)에 접속된 USB 메모리(5)로부터 소프트웨어 데이터를 읽어와 저장부(4)에 저장한 후, UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 저장부(4)에 저장된 소프트웨어 데이터에 대해 차량의 내부통신으로 연결된 차량제어기(3)에 소프트웨어 데이터를 전송하여 업데이트를 수행한다.
여기서 차량의 내부통신은 CAN 통신으로 제 1차량제어기(3_1)로부터 제 n차량제어기(3_n)가 네트워크를 구성하여 연결될 수 있다. 따라서, 업데이트 제어부(2)는 CAN 통신으로 연결된 제 1차량제어기(3_1) 내지 제 n차량제어기(3_n) 중 업데이트가 필요한 차량제어기(3)에 대해 저장부(4)에 저장된 소프트웨어 데이터를 전송하여 업데이트를 수행하고, 업데이트 상태에 대해 제 1차량제어기(3_1) 내지 제 n차량제어기(3_n) 중 디스플레이가 가능한 차량제어기(3)를 통해 업데이트 상태를 출력한다.
상술한 바와 같이, 본 발명의 실시예에 의한 USB를 이용한 차량 소프트웨어 업데이트 장치에 따르면, 차량의 내부통신으로 연결되는 차량 내 차량제어기들의 소프트웨어를 업데이트할 때 USB 메모리에 저장된 업데이트 정보를 읽어와 차량 내 차량제어기들에 전송하여 업데이트하고, 업데이트 결과를 디스플레이 가능한 차량제어기를 통해 표시함으로써 업데이트 장비의 개발 비용 및 공수를 감소시킬 수 있고 휴대가 용이하며 다수의 차량제어기를 일괄적으로업데이트 시킬 수 있다.
도 2는 본 발명의 일 실시예에 따른 USB를 이용한 차량 소프트웨어 업데이트 방법을 설명하기 위한 흐름도이다.
도 2에 도시된 바와 같이 본 발명의 일 실시예에 따른 USB를 이용한 차량 소프트웨어 업데이트 방법에서는 먼저, 업데이트 제어부(2)가 USB 접속부(1)에 USB 메모리(5)가 접속되었는지 판단한다. (S1)
S10 단계에서 USB 메모리(5)가 접속되지 않은 경우에는 계속해서 USB 메모리(5)의 접속상태를 판단한다.
그러나 S1 단계에서 USB 접속부(1)에 USB 메모리(5)가 접속된 경우, 업데이트 제어부(2)는 USB 메모리(5)로부터 업데이트를 위한 소프트웨어 데이터를 읽어와 저장부(4)에 저장한다.(S2)
S2 단계에서 USB 메모리(5)에 저장된 소프트웨어 데이터를 저장부(4)에 저장한 후 업데이트 제어부(2)는 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 차량의 내부통신인 CAN 통신으로 연결된 제 1차량제어기(3_1) 내지 제 n차량제어기(3_n) 중 저장부(4)에 저장된 소프트웨어 데이터를 통해 업데이트할 차량제어기(3)로 소프트웨어 데이터를 전송한다.(S3)
이와 같이 S3 단계에서 소프트웨어 데이터를 차량제어기(3)로 전송하여 업데이트를 수행한 결과 및 업데이트 상태는 업데이트 제어부(2)가 내부통신으로 연결된 제 1차량제어기(3_1) 내지 제 n차량제어기(3_n) 중 디스플레이가 가능한 차량제어기(3)로 출력함으로써 해당 차량제어기(3)의 디스플레이를 통해 확인할 수 있도록 한다.(S4)
상술한 바와 같이, 본 발명의 실시예에 의한 USB를 이용한 차량 소프트웨어 업데이트 방법에 따르면, 차량의 내부통신으로 연결되는 차량 내 차량제어기들의 소프트웨어를 업데이트할 때 USB 메모리에 저장된 업데이트 정보를 읽어와 차량 내 차량제어기들에 전송하여 업데이트하고, 업데이트 결과를 디스플레이 가능한 차량제어기를 통해 표시함으로써 업데이트 장비의 개발 비용 및 공수를 감소시킬 수 있고 휴대가 용이하며 다수의 차량제어기를 일괄적으로 업데이트할 수 있다.
도 3 및 도 4에는 본 발명에 따른 USB를 이용한 차량 소프트웨어 업데이트 장치 및 방법에 대한 다른 실시예가 도시되어 있다.
본 실시예의 USB를 이용한 차량 소프트웨어 업데이트 장치는 외부 접속 단자(10)와 업데이트 제어부(20)를 구비하여 구성되고, 업데이트 제어부(20)는 터치 패널(12)을 통해 운전자로부터의 소정 명령을 입력받으며, 차량 네트워크(30)를 통해 다른 모듈(예컨대, TMU(40), 외장 AMP(50), 및 기타 유니트(60))과 통신한다.
외부 접속 단자(10)는 업데이트할 파일들이 압축되어 구성된 업그레이드 파일과 인증키(인증파일 및 업데이트 상세 정보를 포함함)가 저장된 외부 저장 매체(예를 들어, USB)가 접속되어 업데이트 제어부(20)가 외부 저장 매체에 저장된 데이터를 로딩할 수 있도록 한다. USB에 저장되는 업그레이드 파일은 업그레이드 대상 모듈에 대한 정보와, 업그레이드 버전 정보, 각 모듈이 업데이트시켜야 할 업데이트 데이터 등이 저장되고, 인증 파일은 멀티미디어 시스템의 업데이트 대상 여부를 확인하는데 이용되고, 업데이트 상세 정보는 업데이트 제어부(20) 및 업데이트 대상 모듈(예컨데, TMU(40), 외장 AMP(50), 및 기타 유니트(60))에 대한 업데이트 진행시 업데이트 전 삭제되어야 하는 파일 정보들을 확인하는데 이용된다.
외부 접속 단자(10)를 통해 USB가 접속된 상태에서, 터치 패널(12)을 통해 운전자로부터 업데이트 명령이 입력되면, 업데이트 제어부(20)는 업데이트 프로그램을 실행시켜서, USB에 저장된 데이터에 기초하여 업그레이드 대상 모듈에 대한 업데이트 동작이 수행되도록 한다.
업데이트 제어부(20)는 업그레이드 대상 모듈에 차량 네트워크(30)를 통해 연결된 TMU(40), 외장 AMP(50), 또는 기타 유니트(60)가 포함된 것이 확인되면, 차량 네트워크(30)를 통해 TMU(40), 외장 AMP(50), 또는 기타 유니트(60)로 업그레이드 명령을 지시한 후, 해당 모듈을 업그레이드시키기 위한 업데이트 파일을 그 모듈로 전송한다.
본 발명의 실시시예에서, 차량 네트워크(30)는 CAN(Control Area Network)을 채용하는 경우를 가정하여, CAN 통신 방식에 따라 차량 내 모듈간의 통신이 이루어지는 것으로 설명한다.
또, 차량 네트워크(30)에 접속되는 TMU(40), 외장 AMP(50), 기타 유니트(60)는 CAN 통신 방식에 따라 업데이트 제어부(20)로부터 업그레이드 명령이 수신되면, 업그레이드 준비 완료 신호를 업데이트 제어부(20)로 전송하고, 이어 업데이트 제어부(20)로부터 업데이트 데이터를 수신한 후, 수신된 업데이트 데이터에 기초하여 업데이트 동작을 실행한다.
TMU(40)는 GPS(Global Positioning System) 내장되어 현재 위치 정보를 확인 할 수 있으며, CAN통신을 통한 차량 진단 기능이 내장되어 차량의 고장 상태를 점검하는 기능을 수행한다. 시스템 기능 구현방식에 따라 지도 정보 등이 저장되어 업데이트 제어부(20)에 위치 정보를 제공한다. 또한 외부 통신을 위하여, 자체적으로 모뎀을 탑재하여, 업데이트 제어부(20)외 무선통신으로 차량 텔레매틱스 서비스를 지원하는 센터로 필요 정보를 송신할 수도 있다.
외장 AMP(50)는 업데이트 제어부(20)로부터의 오디오 신호를 수신하여 출력하는 기능을 수행하고, 기타 유니트(60)는 제조사 또는 소비자의 필요에 따라 구현될 수 있는 복수의 유니트를 포함한다.
업데이트 제어부(20)는 OS가 시동되기 이전에 미리 실행되면서 커널이 올바르게 시동되기 위해 필요한 모든 관련 작업을 마무리하고 최종적으로 운영 체제를 시동시키기 위한 목적을 가진 프로그램인 부트 로더(21), 부트스트랩 프로그램에 의해 컴퓨터 내에 최초로 적재된 후에, 업데이트 제어부(20) 내의 다른 프로그램들(예를 들어 애플리케이션)을 관리하는 프로그램인 OS(22), 다양한 응용 기능을 수행하는 애플리케이션(23), 업데이트 제어부(20)에 대한 전반적인 제어를 수행하고 터치 패널(12)로부터 입력되는 운전자 명령에 기초하여 업데이트 프로그램(25)을 실행시키는 마이컴(24), 및 마이컴(24)에 의해 실행되어 업데이트 대상 모듈에 대한 업데이트 동작을 실행하는 업데이트 프로그램(25), 업데이트 프로그램(25)에 의해 USB에 저장된 업데이트 파일이 저장되는 램(26), 및 체크 섬이 완료된 업데이트 파일의 데이터가 기록되는 플래시 메모리(27)를 포함하여 구성된다.
터치 패널(12)은 업데이트 제어부(20)의 입/출력 수단의 예로서 채용된 구성이며, 업데이트 진행 과정에서 발생하는 이벤트를 운전자에게 시각적으로 통지하는 디스플레이 수단과, 운전자에게 소정 명령을 입력받기 위한 명령 입력 수단으로서 기능한다.
도 4를 참조하면 본 실시예의 USB를 이용한 차량 소프트웨어 업데이트 장치를 통한 업데이트 과정은 다음과 같다.
먼저, 업그레이드 대상 모듈을 개별적으로 선정하여 각 업그레이드 대상 모듈에 제공될 업데이트 데이터를 탑재하고, 그 업데이트 데이터와 업그레이드 대상 모듈에 대한 정보, 업그레이드 버전 정보 등을 압축하여 업그레이드 파일을 생성한다. 이 업그레이드 파일은 임의의 외부 저장 매체에 저장될 수 있으며, 임의의 외부 저장 매체는 인증을 위한 인증 파일, 업데이트 상세 정보 및 업데이트 파일이 저장되는 것이 바람직하다.
상술한 것과 같은 데이터가 저장된 외부 저장 매체(이하, USB라 함)가 접속된 상태에서 터치 패널(12)을 통해 업데이트 명령이 입력되면(S2), 업데이트 제어부(20)의 마이컴(24)은 업데이트 프로그램(25)을 실행시킨다.(S4)
활성화된 업데이트 프로그램(25)은 USB에 대한 유효성을 검사하는데(S6), USB에 저장된 데이터에 대해 CRC(Cyclic Redundancy Checking)를 행하여 그 USB에 대한 유효성을 검사한다.
S6에서, USB에 대한 유효성 검사가 실패하면, 업데이트 프로그램(25)은 터치 패널(12)을 통해 운전자에게 해당 USB가 유효하지 않음을 통지한다.(S8)
그러나 이와 달리, S6에서 USB에 대한 유효성 검사가 성공하면, 업그레이드 버전 정보에 상응하는 업데이트 버전과 현재 설치되어 있는 버전을 비교하여(S10), 업데이트가 필요한지를 판단한다.(S12)
S12에서 업그레이드 버전 정보에 상응하는 업데이트 버전이 현재 설치되어 있는 버전보다 높지 않으면, 업데이트 프로그램(25)은 업데이트가 필요하지 않은 상태로 판단하여, 터치 패널(12)을 통해 운전자에게 현재 설치되어 있는 버전이 최상 버전이라서 업데이트가 필요하지 않음을 통지한다.(S8)
반면, S12의 판단결과, 업그레이드 버전 정보에 상응하는 업데이트 버전이 현재 설치되어 있는 버전보다 높으면, 업데이트 프로그램(25)은 업데이트가 필요한 것으로 판단하여 업데이트 대상 모듈에 대해 업데이트 진행중 플래그를 생성하여 상기 업데이트 대상 모듈이 시스템 재 부팅시 상기 업데이트 진행중 플래그를 참조하여 업데이트를 수행할 수 있도록 한다.(S16)
이어서 업데이트 프로그램(25)은 마이컴(24)으로 시스템 재부팅을 요청하고, 상기 요청에 응답하여 마이컴(24)은 현재 진행중인 모든 프로세스를 강제 종료한 후(S18), 업데이트 제어부(20)를 재부팅시킨다.(S20)
마이컴(24)은 재부팅이 됨과 동시에, 업데이트 진행중 플래그를 체크하여, 업데이트를 해야 할 대상 모듈이 있는지를 확인한다.(S22)
S22의 확인 결과, 업데이트 진행중 플래그가 확인되면, 마이컴(24)은 업데이트 프로그램(25)을 활성화 시켜, 업데이트 진행중 플래그가 생성되어 있는 모듈에 대해서 업데이트 동작이 실행되도록 한다.(S26)
반면, S22의 확인 결과, 업데이트 진행중 플래그가 확인되지 않으면, 마이컴(24)은 통상적인 부팅을 진행한다.(S24)
먼저, 업데이트 프로그램(25)은 인스톨 상태 파일(예를 들어, installa를 생성한다. 이 인스톨 상태 파일에는 업그레이드 진행 상태에 대한 데이터가 저장되는데, 예를 들어 업그레이드를 시켜야 할 대상 모듈들과, 각 업그레이드 대상 모듈을 업그레이드시키는 순서, 각 업그레이드 대상 모듈의 업그레이드 완료 여부 등이 저장될 수 있다.
업데이트 프로그램(25)은 USB에 저장된 업그레이드 파일을 임시로 복사한 후, 그 업그레이드 파일에 포함된 내부 파일들에 대해 유효성을 검사한다(S32) 여기서, 업데이트 프로그램(25)은 내부 파일들에 대해 CRC 검사를 행함으로써 USB 내부 파일에 대한 유효성을 검사한다.(S32)
S32 단계에서, USB 내부 파일에 대한 유효성 검사가 실패하면, 업데이트 프로그램(25)은 터치 패널(12)을 통해 운전자에게 USB 내부 파일이 유효하지 않음을 통지하고(S33) 종료한다.
이와 달리, S32의 검사 결과, USB 내부 파일에 대한 유효성 검사가 성공하면, 업데이트 프로그램(25)은 상기 USB 내부 파일 중 OS 또는 BSP(Board Support Package) 업데이트 파일을 내부 램(26)에 복사하고, 그 업데이트 파일에 대한 체크 섬 확인 후 플래시 메모리에 기록(write)함으로써 OS 또는 BSP 업데이트를 완료한다.(S34)
업데이트 프로그램(25)은 S34의 업데이트가 성공하면(S36에서 Yes), BSP에 대한 업데이트 성공 결과를 인스톨 상태 파일에 저장하고, S38로 진행한다.
S38에서 업데이트 프로그램(25)은 상기 USB 내부 파일 중 APP 업데이트 파일을 내부 램(26)에 복사하고, 그 업데이트 파일에 대한 체크 섬 확인 후 플래시 메모리에 기록함으로써 APP 업데이트를 완료한다.
업데이트 프로그램(25)은 S38의 업데이트가 성공하면(S40에서 Yes), APP에 대한 업데이트 성공 결과를 인스톨 상태 파일에 저장하고, S42로 진행한다.
S40에서, 업데이트 프로그램(25)은 상기 USB 내부 파일 중 TMN 업데이트 파일을 내부 램에 복사하고, 그 업데이트 파일에 대한 체크 섬 확인 후, 업데이트 파일에 상응하는 업데이트 데이터를 TMU(40)로 전송한다.(S42)
이 단계에서, 업데이트 프로그램(25)은 업데이트 파일을 TMU(40)로 전송하기 전에, CAN 통신을 통해 TMU(40)에 업그레이드 명령을 지시하고, 그 명령에 응답하여 TMU(40)로부터 전송된 업데이트 준비 완료 신호를 수신한 후에, 상기 업데이트 파일에 상응하는 업데이트 데이터를 TMU(40)에 전송한다.
본 실시예에서는 업데이트 프로그램(25)이 CAN 통신을 통해 TMU(40)로 업데이트 데이터를 전송하는 것으로 설명하였지만, 실제로는 업데이트 제어부에 마련된 CAN 통신 모듈(도시 생략)을 통해 전송된다.
한편, 도 3에는 도시되지 않았지만, TMU(40)에는 업데이트 프로그램이 탑재되어, 업데이트 제어부(20)로부터의 업데이트 데이터가 수신되면, 수신된 업데이트 데이터에 기초하여 TMU(40)에 대한 업데이트를 수행하고, 업데이트가 성공적으로 완료되면 업데이트 성공 결과를 업데이트 제어부(20)로 전송한다.
업데이트 성공 결과를 수신한 업데이트 제어부(20)는 업데이트 프로그램(25)에 의해 TMU(40)의 업데이트 성공 결과를 인스톨 상태 파일에 저장하고, S46으로 진행한다.
S46에서, 업데이트 프로그램(25)은 상기 USB 내부 파일 중 마이컴 업데이트 파일을 내부 램(26)에 복사하고, 그 업데이트 파일에 대한 체크 섬 확인 후 바로 마이컴(24)에 대한 업데이트를 수행하고, 마이컴(24)에 대한 업데이트가 성공하면(S48에서 Yes), 마이컴에 대한 업데이트 성공 결과를 인스톨 상태 파일에 저장한다.
이어서, 업데이트 프로그램(25)은 인스톨 상태 파일에 저장된 모든 업그레이드 대상 모듈에 대한 업데이트가 완료된 것이 확인되면, 그 인스톨 상태 파일을 삭제하고(S49), 마이컴(24)로 재부팅 명령을 전달하여 시스템을 재부팅시킨다.
이로써 시스템이 재부팅되면서 업데이트된 정보들을 기준으로 관련 모듈들이 동작하게 된다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최 광의의 범위에서 해석되어야 할 것이다.
1: USB 접속부
2: 업데이트 제어부
3: 차량제어기
4: 저장부
5: USB 메모리

Claims (3)

  1. 업데이트를 위한 소프트웨어 데이터가 저장된 USB 메모리와 접속하기 위한 USB 접속부;
    상기 USB 접속부에 접속된 상기 USB 메모리로부터 상기 소프트웨어 데이터를 읽어와 저장한 후 차량의 내부통신으로 연결된 차량제어기에 상기 소프트웨어 데이터를 전송하는 업데이트 제어부; 및
    상기 USB 메모리로부터 읽어온 상기 소프트웨어 데이터를 저장하는 저장부;를 포함하며,
    상기 업데이트 제어부는 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 상기 차량제어기에 상기 소프트웨어 데이터를 전송하는
    USB를 이용한 차량 소프트웨어 업데이트 장치.
  2. 제 1항에 있어서,
    상기 업데이트 제어부는 업데이트 프로그램이 실행되어 상기 업데이트 정보에 기초로 내부 모듈 또는 차량 네트워크를 통해 연결된 외부 모듈에 대한 업데이트를 수행하며,
    상기 업데이트 프로그램은 상기 업데이트 정보에 의해 지정된 적어도 하나 이상의 업그레이드 대상 모듈에 대한 업데이트 진행중 플래그를 생성한 후 시스템을 재부팅하고, 시스템의 재부팅시 상기 업그레이드 대상 모듈들의 업데이트 상태를 저장하는 인스톨 상태 파일을 생성함과 더불어 상기 업그레이드 대상 모듈들에 대한 업데이트를 수행하는 것을 특징으로 하는
    USB를 이용한 차량 소프트웨어 업데이트 장치.
  3. 업데이트 제어부가 USB 접속부에 USB 메모리가 접속되면, 상기 USB 메모리로부터 업데이트를 위한 소프트웨어 데이터를 읽어와 저장부에 저장하는 단계;
    상기 업데이트 제어부가 상기 저장부에 저장된 상기 소프트웨어 데이터를 차량의 내부통신으로 연결된 차량제어기에 전송하는 단계; 및
    상기 업데이트 제어부가 상기 차량제어기 중 디스플레이가 가능한 차량제어기를 통해 업데이트 상태를 출력하는 단계를 포함하고,
    상기 차량제어기에 전송하는 단계는, 상기 업데이트 제어부가 UDSonCAN(Unified Diagnostic Services on Controller Area Network) 업데이트 프로토콜에 따라 상기 소프트웨어 데이터를 전송하는 것을 특징으로 하는
    USB를 이용한 차량 소프트웨어 업데이트 방법.

KR1020210187350A 2021-12-24 2021-12-24 Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법 KR20230097641A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210187350A KR20230097641A (ko) 2021-12-24 2021-12-24 Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210187350A KR20230097641A (ko) 2021-12-24 2021-12-24 Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20230097641A true KR20230097641A (ko) 2023-07-03

Family

ID=87157327

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210187350A KR20230097641A (ko) 2021-12-24 2021-12-24 Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20230097641A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070051523A (ko) 2005-11-15 2007-05-18 주식회사 현대오토넷 블루투스 이동통신단말기를 이용한 차량용오디오/비디오/네비게이션 시스템의 펌웨어 업그레이드시스템 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070051523A (ko) 2005-11-15 2007-05-18 주식회사 현대오토넷 블루투스 이동통신단말기를 이용한 차량용오디오/비디오/네비게이션 시스템의 펌웨어 업그레이드시스템 및 그 방법

Similar Documents

Publication Publication Date Title
JP5708940B2 (ja) 情報管理装置、情報通信システム
JP2002044742A (ja) 車載制御装置の運用システム及び車載制御装置
CN113094072A (zh) 车辆升级方法、装置、电子装置及存储介质
US20230359454A1 (en) Software update device, update control method, and non-transitory storage medium
US20230297368A1 (en) Software update apparatus, software update method, non-transitory storage medium storing program, vehicle, and ota master
US11449329B2 (en) Vehicle control device and program update system
US20220107798A1 (en) Server, software update system, distribution method, and non-transitory storage medium
US20220244946A1 (en) Ota master, update control method, non-transitory storage medium, and vehicle
KR20230097641A (ko) Usb를 이용한 차량 소프트웨어 업데이트 장치 및 방법
US20220317994A1 (en) Ota master, update control method, and non-transitory storage medium
US11995429B2 (en) Software update device, update control method, non-transitory storage medium, and server
US20220283799A1 (en) Center, update management method, and non-transitory storage medium
CN108292210B (zh) 传输功能指令的方法及接口设备和系统
CN115454462A (zh) Ota管理器、系统、方法、非暂时性存储介质以及车辆
KR101207342B1 (ko) 자동 업그레이드 기능을 갖는 차량용 디지털 운행 기록계
CN110727450A (zh) 启动加载程序更新方法和装置
US20220391193A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
EP3944074A1 (en) Software update apparatus, update control method, non-transitory storage medium storing update control program, server, ota master, and center
US11954480B2 (en) Center, OTA master, system, method, non-transitory storage medium, and vehicle
JP7363853B2 (ja) Otaマスタ、センタ、システム、更新方法、更新プログラム、及び車両
KR20120062536A (ko) 차량 내 멀티미디어 시스템에 대한 업데이트 방법 및 시스템
US20220276853A1 (en) Ota master, center, system, update method, and vehicle
US20220405080A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
US20230032451A1 (en) Center, method, and non-transitory storage medium
CN116149906A (zh) 车辆里程信息的备份方法、装置、车辆及存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E601 Decision to refuse application