KR20190115325A - 차량을 진단하는 전자 장치 및 방법 - Google Patents

차량을 진단하는 전자 장치 및 방법 Download PDF

Info

Publication number
KR20190115325A
KR20190115325A KR1020180038226A KR20180038226A KR20190115325A KR 20190115325 A KR20190115325 A KR 20190115325A KR 1020180038226 A KR1020180038226 A KR 1020180038226A KR 20180038226 A KR20180038226 A KR 20180038226A KR 20190115325 A KR20190115325 A KR 20190115325A
Authority
KR
South Korea
Prior art keywords
vehicle
electronic device
information
vehicle device
processor
Prior art date
Application number
KR1020180038226A
Other languages
English (en)
Other versions
KR102471498B1 (ko
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 KR1020180038226A priority Critical patent/KR102471498B1/ko
Priority to US16/980,895 priority patent/US11645878B2/en
Priority to PCT/KR2019/003699 priority patent/WO2019194474A1/ko
Publication of KR20190115325A publication Critical patent/KR20190115325A/ko
Application granted granted Critical
Publication of KR102471498B1 publication Critical patent/KR102471498B1/ko
Priority to US18/143,224 priority patent/US20230274588A1/en

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/03Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for
    • B60R16/0315Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for using multiplexing techniques
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0816Indicating performance data, e.g. occurrence of a malfunction
    • G07C5/0825Indicating performance data, e.g. occurrence of a malfunction using optical means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • B60W2550/40
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2306/00Other features of vehicle sub-units
    • B60Y2306/15Failure diagnostics

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Transportation (AREA)
  • Selective Calling Equipment (AREA)
  • Traffic Control Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

다양한 실시예에 따르면, 전자 장치는, 차량 장치 또는 외부 전자 장치와 통신을 제공하도록 구성된 적어도 하나의 통신 회로, 상기 적어도 하나의 통신 회로에 전기적으로 연결된 적어도 하나의 프로세서, 및 상기 적어도 하나의 프로세서에 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행될 때, 상기 적어도 하나의 프로세서가, 상기 차량 장치에 연결되면, 상기 차량 장치와 연관된 제1 정보를 획득하여 저장하고, 상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하고, 상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치의 상태를 판단하고, 상기 판단에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장할 수 있다. 또한 다른 실시예들이 가능하다.

Description

차량을 진단하는 전자 장치 및 방법{ELECTRONIC APPARATUS AND METHOD FOR DIAGNOSING OF VEHICLE}
다양한 실시예들은 차량을 진단하는 전자 장치 및 방법에 관한 것이다.
OBD(on board diagnostics)는 차량에 문제가 발생하였을 경우 계기판의 MIL(malfunction indication lamp)를 점등하여 운전자나 정비사에게 차량의 이상 유무를 확인하여 점검 받을 수 있게 하는 장치이다.
OBD에는 예로, OBD-Ⅰ와 OBD-Ⅱ가 있으며, OBD-Ⅰ은 ECU(engine control unit)에 연결되어 있는 각종 입출력 센서들의 단선/단락으로 인한 고장여부를 판단하며, OBD-Ⅱ는 단선/단락 외의 센서의 rationality, performance 및 시스템의 정상여부에 대한 진단을 한다.
이러한, OBD는 현재 출시되는 차량의 전면 대시보드(dashboard) 쪽에 장착이 되어 있다. OBD는 차량에 장착됨으로써, 차량의 자기 진단을 수행할 수 있기 때문에, 차량 수리업체 또는 차량 보험사에서 유용하게 이용할 수 있다. 또한, OBD를 통하여 운전자의 운전 습관 등의 파악이 가능하여, 운전자는 OBD가 제공하는 피드백에 기초하여 운전 습관을 고치거나 차량을 안전하게 주행할 수 있다.
OBD는 차량의 상태 정보를 차량의 ECU로부터 획득할 수 있다. 예를 들어, ECU는 차량 내 다수의 센서 등을 통하여 차량 정보를 모니터링 하는 것으로, 차량의 외부 기기와의 통신을 수행하고, 이러한 통신을 통해서 OBD는 ECU로부터 차량의 연비, RPM(revolutions per minute), 속도, 연료 사용현황, 차량의 사고나 고장 여부, 배터리 및 소모품 현환, 주행 시간 등과 같은 차량에 대한 상태 정보를 획득할 수 있다.
차량 내의 ECU들은 차량의 발전과 함께 지속적으로 그 개수가 늘어나고 있으며, 서로 다른 차량 버전들(다른 엔진이나 트랜스미션들, 다양한 옵션들, 국가별 상이한 버전 등) 별로 각기 다르게 개발되고 있다. 이렇게 차량에 장착되는 ECU의 개수가 늘어남에 따라 ECU의 불법 튜닝이나 장착 등에 따른 위험이 증가되고 있는 추세에 있다. 이에 따라, 차량에 장착된 ECU의 상태를 감지하는 방안이 요구되고 있다.
다양한 실시예들에 따르면, 차량으로부터 획득된 정보를 이용하여 차량의 안전성을 판단할 수 있는 차량을 진단하는 전자 장치 및 방법을 제공할 수 있다.
다양한 실시예에 따르면, 전자 장치는, 차량 장치 또는 외부 전자 장치와 통신을 제공하도록 구성된 적어도 하나의 통신 회로, 상기 적어도 하나의 통신 회로에 전기적으로 연결된 적어도 하나의 프로세서, 및 상기 적어도 하나의 프로세서에 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행될 때, 상기 적어도 하나의 프로세서가, 상기 차량 장치에 연결되면, 상기 차량 장치와 연관된 제1 정보를 획득하여 저장하고, 상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하고, 상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치의 상태를 판단하고, 상기 판단에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따르면, 전자 장치는, 차량 장치 또는 제1 외부 전자 장치와 통신을 제공하도록 구성된 적어도 하나의 통신 회로, 상기 적어도 하나의 통신 회로와 전기적으로 연결된 적어도 하나의 프로세서, 및 상기 적어도 하나의 프로세서에 전기적으로 연결된 메모리를 포함하고, 상기 메모리는, 실행될 때, 상기 적어도 하나의 프로세서가, 상기 차량 장치에 연결되면, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치와 연관된 제1 정보를 획득하고, 상기 적어도 하나의 통신 회로를 통해서, 상기 제1 정보 중 적어도 일부를 상기 제1 외부 전자 장치로 전송하고, 상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하고, 상기 적어도 하나의 통신 회로를 통해서, 상기 제2 정보 중 적어도 일부를 상기 제1 외부 전자 장치로 전송하고, 상기 제1 정보 및 상기 제2 정보의 전송에 응답하여, 상기 적어도 하나의 통신 회로를 통해서, 상기 제1 외부 전자 장치로부터 상기 외부 전자 장치에 의해 판단된 상기 차량 장치의 상태와 연관된 정보를 수신하고, 상기 수신된 정보에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따르면, 인스트럭션들을 비일시적으로 저장하고 있는 저장 매체에 있어서, 상기 인스트럭션들은 적어도 하나의 회로에 의해서 실행될 때에 상기 적어도 하나의 회로로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로, 상기 적어도 하나의 동작은, 전자 장치와 차량 장치가 연결되면, 상기 차량 장치와 연관된 제1 정보를 획득하여 저장하는 동작, 상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하는 동작, 상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치의 상태를 판단하는 동작, 및 상기 판단에 기반하여, 지정된 동작을 수행하는 동작을 포함할 수 있다.
다양한 실시예들에서는, 차량으로부터 획득된 정보를 이용하여 차량의 안전성을 판단할 수 있는 차량을 진단하는 전자 장치 및 방법을 제공함으로써, 차량에 장착되는 ECU의 불법 튜닝이나 장착되는 상황을 방지할 수 있다.
도 1은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 다양한 실시예들에 따른 전자 장치가 차량 장치 및 외부 전자 장치와 통신 연결하는 시스템을 나타내는 도면이다.
도 3은 다양한 실시예들에 따른 전자 장치의 구성을 도시한 블록도이다.
도 4는 다양한 실시예들에 따른 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 5는 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 6은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 7은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 8은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 9는 다양한 실시예들에 따른 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 10은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도이다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)을 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)은 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)는, 예를 들면, 마이크, 마우스, 또는 키보드를 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)는, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)) (예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)은, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(388)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)으로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 하나 이상의 안테나들을 포함할 수 있고, 이로부터, 제 1 네트워크 198 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104 또는 108) 중 하나 이상의 외부 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2는 다양한 실시예들에 따른 전자 장치가 차량 장치 및 외부 전자 장치와 통신 연결하는 시스템(200)을 나타내는 도면이다.
도 2를 참조하면, 시스템(200)에는, 전자 장치(101)(예: 도 1의 전자 장치(101)), 차량(20) 내에 내장된 차량 장치(201), 제1 외부 전자 장치(210a)(예: 도 1의 서버(108)), 제2 외부 전자 장치(210b)(예: 도 1의 서버(108)), 및 제3 외부 전자 장치(210c)(예: 도 1의 전자 장치(102, 104))를 포함할 수 있다.
도 2에서, 다양한 실시예에 따른 전자 장치(101)는 차량(20)에 내장된 차량 장치(201)와 연결되어 통신을 수행하면서 차량(20)과 연관된 정보를 획득하거나, 또는 차량 장치(201)를 통해 차량(20)의 기능을 제어할 수 있다. 전자 장치(101)는 예를 들면, 도 1의 전자 장치(101)의 구성요소들 중 적어도 하나(예: 표시 장치(160), 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소(예: 제2 통신 모듈(392))가 추가되어 구현되는 OBD(on board diagnostics) 프로토콜에 기반한 OBD 장치를 포함할 수 있다.
전자 장치(101)는 차량 장치(201)와 전기적으로 연결되어 차량 장치(201)로부터 차량(20)의 상태 정보를 획득할 수 있다. 상태 정보는, 예를 들어, 차량(20)의 속도, 운행 시간, 엔진 회전수(RPM, revolution per minute), 운행 거리, 평균 연비 또는 순간 연비 등의 운행 상태에 대한 정보뿐만 아니라, 냉각수 온도, 흡입공기 온도, 흡입 공기량, 엔진오일 온도, 미션오일 온도, 연료 분사량, 산소 센서 전압, 점화 각도, 탄소 배출량 또는 공연비 학습량 등의 엔진 상태에 대한 정보와, 브레이크 상태, 배터리 전압 또는 전류량, 또는 에어컨 냉매 압력 등을 포함할 수 있다. 또한, 전자 장치(101)는 차량(20)에 문제가 발생한 경우, 차량 장치(201)로부터 획득된 차량(20)의 상태 정보에 기반하여, 차량(20)에 발생한 문제에 대한 정보를 확인할 수 있다.
도 2에서, 다양한 실시예에 따른 차량 장치(20)는 차량(20) 내에 내장되어 차량(20)의 운행과 관련된 다양한 기능 등을 전자적으로 제어할 수 있도록 하는 적어도 하나의 ECU(engine control unit)을 포함할 수 있다. 상기 ECU는 상기 전자 장치(101)가 장착되어 차량(20)의 전반적인 구동 기능 제어를 지원하는 시스템이 될 수 있으며, 예를 들어, 배출가스 제어나 엔진 제어, 라이트 제어, 브러쉬 제어 등 다양한 제어를 전자적으로 지원할 수 있다. 또한, ECU는 전자 장치(101)와 연결을 위한 차량용 커넥터(예: OBD 단자 또는 OBD 커넥터 등)를 포함할 수 있다. 차량용 커넥터는 전자 장치(101)의 커넥터에 결합될 수 있도록 다양한 형태 중 적어도 하나의 형태로 마련될 수 있다.
도 2에서, 다양한 실시예에 따른 제1 외부 전자 장치(210a), 제2 외부 전자 장치(210b) 및 제3 외부 전자 장치(210c)는 도 1에 도시된 전자 장치(101), 전자 장치(102), 전자 장치(104) 또는 서버(108)일 수 있다. 제1 외부 전자 장치(210a), 제2 외부 전자 장치(210b) 및 제3 외부 전자 장치(210c)는 차량 장치(201)와 연결된 전자 장치(101)에 데이터를 전송하거나, 전자 장치(101)로부터 데이터를 획득하는 장치일 수 있다. 제1 외부 전자 장치(210a), 제2 외부 전자 장치(210b) 및 제3 외부 전자 장치(210c)는 예를 들어, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치(wearable device), 서버(server), 클라우드 서버(cloud server) 중 적어도 하나를 포함할 수 있다.
제1 외부 전자 장치(210a)(예: 도 1의 서버(108))는 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(101)와 통신할 수 있다. 예를 들어, 제1 외부 전자 장치(210a)는 자동차 회사 서버일 수 있고, 전자 장치(101)로부터 차량(20)과 연관된 차량 정보(예: 차량의 고유 번호(VIN: vehicle identification number))를 수신하면, 차량 정보에 대응하는 차량(20)과 연관된 정보를 전자 장치(101)로 제공할 수 있다. 예를 들면, 제1 외부 전자 장치(210a)는 차량 정보에 대응하는 ECU ID 리스트 정보를 제공하거나, 차량 배터리 평균 소모량 정보를 제공하거나, ECU 팜웨어 버전(firmware version)의 확인을 제공하거나, 차량의 안전 제한 설정의 확인을 제공할 수 있다.
제2 외부 전자 장치(210b)(예: 도 1의 서버(108))는 네트워크(199)를 통하여 전자 장치(101)와 통신할 수 있다. 예를 들어, 제2 외부 전자 장치(210b)는 서비스 업체 서버(예: 보험 회사, 렌터카, 인증 회사)일 수 있고, 전자 장치(101)로부터 차량 장치(201)의 상태 이상 여부에 대한 통지를 수신하거나, 차량 장치(201)의 보증에 인증 처리를 제공할 수 있다.
제3 외부 전자 장치(210c)(예: 도 1의 전자 장치(102) 또는 전자 장치(104))는 근거리 네트워크(198)(예: 근거리 무선 통신 네트워크) 또는 네트워크(199)를 통하여 전자 장치(101)와 통신할 수 있다. 예를 들어, 제3 외부 전자 장치(210c)는 사용자의 휴대용 단말일 수 있고, 전자 장치(101)로부터 차량 장치(201)의 상태 이상 여부에 대한 통지를 수신하거나, 전자 장치(101)로 차량 장치(201)에 관한 명령어 데이터를 전송할 수 있다. 예를 들어, 명령어 데이터는 범용(generic) 명령어 데이터 및 개량(enhance) 명령어 데이터로 구분될 수 있다. 범용 명령어 데이터는, 예를 들면, OBD-Ⅱ 프로토콜에 따르는 명령어 데이터일 수 있다. 또한, 개량 명령어 데이터는, 예를 들면, 전자 장치(101)의 제조사 별 또는 차량(20)의 종류에 따라 규정된 포맷을 따르는 명령어 데이터일 수 있다. 다른 예로서, 명령어 데이터의 종류는, 제어 명령어 데이터 및 획득 명령어 데이터로 구분될 수 있다. 제어 명령어 데이터는, 차량(20)을 제어하는 명령어 데이터로서, 라이트(write) 명령어 데이터, 구동(actuation) 명령어 데이터 등을 포함할 수 있다. 획득 명령어 데이터는, 차량(20)의 상태 정보를 획득하는 명령어 데이터로서 리드(read) 명령어 데이터를 포함할 수 있다.
구체적으로, 제어 명령어 데이터에는, 차량(20)의 도어(door)를 잠그거나 또는 잠금을 해제하는 명령어 데이터, 차량(20)의 창문을 잠그거나 또는 잠금을 해제하는 명령어 데이터, 차량(20)의 비상 램프(hazard lamp)를 온 또는 오프하는 명령어 데이터, 차량(20)의 우측 또는 좌측 램프를 온 또는 오프하는 명령어 데이터, 차량(20)의 경적을 울리는 명령어 데이터, 차량(20)의 트렁크(trunk)를 개폐하는 명령어 데이터, 차량(20)의 브레이크를 구동시키는 명령어 데이터, 차량(20)의 가속 페달을 구동시키는 명령어 데이터 등을 포함할 수 있다.
또한, 획득 명령어 데이터에는, 차량(20)의 키 코딩(key coding) 개수를 획득하는 명령어 데이터, 차량(20)의 엔진 오일 양을 획득하는 명령어 데이터, 차량(20)의 안전벨트 착용 여부 상태를 획득하는 명령어 데이터, 차량(20)의 배터리 수명 또는 배터리 잔류량을 획득하는 명령어 데이터, 차량(20)의 램프의 라이트 상태를 획득하는 명령어 데이터, 차량(20)의 기어 상태를 획득하는 명령어 데이터, 차량(20)의 핸들 각도를 획득하는 명령어 데이터, 차량(20)의 브레이크 상태를 획득하는 명령어 데이터, 차량(20)의 속도를 획득하는 명령어 데이터, 차량(20)의 엔진 회전수를 획득하는 명령어 데이터 등을 포함할 수 있다. 다양한 실시예에 따르면, 획득 명령어 데이터는 차량 장치(201)의 ECU ID, 팜웨어 버전, 차량(20)의 안전 제한 설정 정보, 전류 소모량, ECU들 간의 브로드캐스팅 메시지의 모니터링 값을 획득하는 명령어 데이터를 포함할 수 있고, 전자 장치(101)는 상기 획득 명령어 데이터를 이용하여, 차량 장치(201)의 상태 이상을 판단하기 위한 정보를 획득할 수 있다.
도 3은 다양한 실시예들에 따른 전자 장치의 구성을 도시한 블록도(300)이다.
도 3을 참조하면, 다양한 실시예에 따른 전자 장치(101)는, 도 1의 전자 장치(101)의 적어도 일부 또는 동일한 구성을 가질 수 있으며, 구성요소들 중 적어도 하나(예: 표시 장치(160), 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소(예: 제2 통신 모듈(392))가 추가되어 구현되는 OBD(on board diagnostics) 프로토콜에 기반한 OBD 장치를 포함할 수 있다. 전자 장치(101)는 프로세서(320)(예: 도 1의 프로세서(120)), 제1 통신 모듈(391)(예: 도 1의 통신 모듈(190)), 제2 통신 모듈(392)(예: 차량용 통신 모듈), 센서 모듈(340)(예: 도 1의 센서 모듈(176)), 메모리(330)(예: 도 1의 메모리(130))를 포함할 수 있다. 프로세서(320)는 제1 프로세서(321) 및 제2 프로세서(322)를 포함할 수 있다. 또한, 전자 장치(101)는 마이크(microphone)와 스피커(speaker)를 구비한 오디오 처리부(미도시), 터치 기반의 입력을 위한 터치패드(미도시), 물리적인 키 입력을 지원하는 입력부(미도시), 전자 장치(101)의 운용에 따른 화면 데이터 표시를 위한 표시부(미도시), LED 등을 포함하는 발광부(미도시), 그리고 상기와 같은 구성들에 전원 공급을 위한 배터리(미도시) 등의 구성을 더 포함할 수 있다.
제1 통신 모듈(391) 및 제2 통신 모듈(392)은 유선 또는 무선 통신 방식으로 차량 장치(201) 및 외부 전자 장치(예: 도 2의 제1 내지 제3 외부 전자 장치(210a, 210b, 210c), 이하 210으로 총칭함)와 통신을 수행할 수 있다.
제1 통신 모듈(391) 및 제2 통신 모듈(392)은 그 목적, 기능 또는 구성에 따라 구분될 수 있다. 예를 들어, 제1 통신 모듈(391)은 외부 전자 장치(210)와 통신을 수행할 수 있고, 제2 통신 모듈(392)은 차량 장치(201)와 통신을 수행하도록 구분될 수 있다. 또한, 제1 통신 모듈(391)은 무선 통신 방식으로 통신을 수행할 수 있고, 제2 통신 모듈(392)은 유선 통신 방식으로 통신을 수행하도록 구분될 수 있다.
제1 통신 모듈(391)은 외부 전자 장치(210)와 무선 통신 방식으로 통신할 수 있다. 제1 통신 모듈(391)은 예들 들어, Wi-Fi 모듈(391a), 블루투스 모듈(391b) 및 셀룰러 통신 모듈(391c)을 포함할 수 있다.
전자 장치(101)는 셀룰러 통신 모듈(391c)을 이용하여 외부 전자 장치(210)(예: 외부 서버(210a, 210b))와 무선 통신할 수 있다. 셀룰러 통신 모듈(391c)은, 예를 들어, IEEE, 3G(3rd generation), 3GPP(3rd generation partnership project), LTE(long term evolution) 등과 같은 통신 표준에 따라 통신을 수행할 수 있다.
또한, 전자 장치(101)는 Wi-Fi 모듈(391a) 또는 블루투스 모듈(391b)을 이용하여 외부 전자 장치(210)(예: 모바일 장치(210c))와 근거리 무선 통신할 수 있다.
제2 통신 모듈(392)은 차량 장치(201)와 유선 통신 방식으로 통신할 수 있다. 제2 통신 모듈(392)은 예를 들어, K-Line 통신 모듈(392a), RS-232 통신 모듈(392b) 및 CAN 통신 모듈(392c)을 포함할 수 있다. 또한, 제2 통신 모듈(392)은 CAN FD 통신 모듈, MOST 통신 모듈, LIN 통신 모듈, Ethernet 통신 모듈, KWP2000 통신 모듈, ISO 9141 통신 모듈, PWN 통신 모듈, VPM 통신 모듈, UDS 통신 모듈 등을 포함할 수도 있다.
센서 모듈(340)은 전자 장치(101)의 상태 및 차량(20)의 상태를 감지하기 위한 다양한 센서들로 구성될 수 있다. 예를 들어, 센서 모듈(340)은 가속도 센서(acceleration sensor), 자이로 센서(gyro sensor), 조도 센서(illuminance sensor), 근접 센서(proximity sensor), 압력 센서(pressure sensor), 노이즈 센서(noise sensor(예: 마이크), 비디오 센서(video sensor)(예: 카메라 모듈), 온도 센서, 충격 센서(shock sensor) 및 타이머 중 적어도 하나의 센서를 포함할 수 있다.
센서 모듈(340)은 차량(20)의 상태 값으로서, 차량(20)의 배터리 잔량, 차량(20)의 온도, 차량(20)의 이동 속도, 차량(20)의 충격 여부 및 차량(20)의 가속도 중 적어도 하나를 감지할 수 있다. 또한, 센서 모듈(340)은 전자 장치(101)의 상태 정보로서, 전자 장치(101) 자체의 온도, 배터리 잔량, 동작 상태 중 적어도 하나를 감지할 수 있다.
메모리(330)는 전자 장치(101)에서 실행되고 처리되는 각종 소프트웨어와 데이터를 저장하며, 비휘발성 메모리(예: 도 1의 비휘발성 메모리(134)) 및 휘발성 메모리(예: 도 1의 휘발성 메모리(132)) 중 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(330)는 차량 장치(201)로부터 획득된 상태 정보, 외부 전자 장치(210)로부터 획득된 차량과 연관된 정보를 저장할 수 있다. 또한, 메모리(330)는 차량 장치(201)로 데이터를 전송할 있는 외부 기기의 목록 또는 전송을 거부할 수 있는 외부 기기의 목록을 저장할 수도 있다.
프로세서(320)는 전자 장치(101)의 전반적인 동작을 제어할 수 있다. 프로세서(320)는 제1 프로세서(321) 및 제2 프로세서(322)를 포함할 수 있다. 제1 프로세서(321) 및 제2 프로세서(322)는 전자 장치(101)의 동작을 제어하되, 그 목적, 기능 또는 구성에 따라 구분될 수 있다.
제1 프로세서(321)는 운영 체제(예를 들어, 안드로이드 OS 또는 타이젠 OS 등) 또는 응용 프로그램의 구동을 위한 AP(application processor)(예를 들어, MSM8916 AP 등) 등이 될 수 있다. 제1 프로세서(321)는 제2 프로세서(322)와 통신하기 위한 OBD 제어 모듈(321a)을 포함할 수 있다. 또한, 제1 프로세서(321)는 차량 장치(201)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보를 획득하고, 상기 획득된 정보에 기반하여 상기 차량 장치(201)의 상태를 판단하기 위한 OBD 판단 모듈(321b)을 포함할 수 있다.
제2 프로세서(322)는 차량 장치(201)의 자기 진단을 수행하기 위한 MCU(micro controller unit)(예를 들어, OBD-Ⅰ 또는 OBD-Ⅱ의 MCU 등)일 수 있다. 제2 프로세서(322)는 제1 프로세서(321)로부터 수신된 요청의 제1 포맷을 상기 차량 장치(201)로 전달 가능한 다른 제2 포맷(예를 들어, CAN 통신 포맷, KWP2000 통신 포맷 등)으로 변환할 수 있다. 또한, 제2 프로세서(322)는 차량 장치(201)로부터 수신된 정보의 제2 포맷을 상기 제1 프로세서(321)로 전달 가능한 상기 제1 포맷으로 변환할 수 있다.
제1 프로세서(321) 및 제2 프로세서(322)는 서로 간에 보안 모듈(323)(예: 보안 회로)을 통하여 데이터를 송신 또는 수신할 수 있다. 보안 모듈(323)은 예를 들어, eSE(embedded secure element) 모듈일 수 있다. 예를 들어, 제1 프로세서(321)은 보안 모듈(323)을 통하여, 전자 장치(101)가 차량 장치(201)로부터 상태 정보를 획득하기 위한 획득 명령어 데이터를 암호화하여 제2 프로세서(322)로 전송할 수 있다. 그리고, 제2 프로세서(322)는 획득 명령어 데이터에 대한 응답으로 차량 장치(201)의 상태 정보를 획득하고, 보안 모듈(323)을 통하여 상태 정보를 암호화하여 제1 프로세서(321)로 전송할 수 있다. 보안 모듈(323)은 명령어 전송 대상 목록을 포함할 수 있고, 명령어 전송 대상 목록에 해당되지 않는 명령어 데이터의 전송을 차단할 수 있다.
또한, 보안 모듈(323)은 제1 프로세서(321)에 이상 징후가 발생하는 경우, 제1 프로세서(321)에서 제2 프로세서(322)로의 명령어 데이터의 전송을 차단할 수 있다. 예를 들어, 프로세서(320)에는 보안 영역(예: trust zone)을 포함할 수 있고, 보안 영역에서 실시간 커널 보호(RKP, real time kernel protection) 기능을 실행하여, 커널 이벤트 후킹(kernel event hooking) 처리를 수행할 수 있다. 이에 따라, 제1 프로세서(321)는 제1 프로세서(321)의 운영 체제, 커널 또는 어플리케이션을 실시간으로 감시할 수 있고, 이들 중 적어도 하나에서 이상 징후(예: 데이터 변조, 제3 자에 의한 해킹 등)가 감지되면, 제1 프로세서(321)는 제2 프로세서(322)로의 명령어 데이터의 전송을 차단할 수 있다. 다른 예로서, 제1 프로세서(321) 및 제2 프로세서(322)는 분리되지 않고 하나의 프로세서(320)를 통해 동작할 수도 있다. 또한, 보안 모듈(323)은 제2 프로세서(322)에 보안 기능이 없을 경우, 보안 모듈(323)이 제2 프로세서(322)에 보안 기능을 제공할 수 있다. 또는 보안 모듈(323)은 프로세서(320) 내에 포함되지 않을 수도 있다.
도 4는 다양한 실시예들에 따른 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(400)이다.
다양한 실시예에 따르면, 동작 401 내지 동작 406은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 401 내지 동작 406이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 401에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)에 연결할 수 있다. 예를 들어, 전자 장치(101)는 OBD(on board diagnostics) 프로토콜에 기반한 OBD 장치를 포함할 수 있다. 또한, 차량 장치(201)는 차량(20)(예: 도 2의 차량(20)) 내에 내장되어 차량(20)의 운행과 관련된 다양한 기능 등을 전자적으로 제어할 수 있도록 하는 적어도 하나의 ECU(engine control unit)을 포함할 수 있다. 전자 장치(101)는 OBD 프로토콜에 기반한 OBD 커넥터를 포함하고, 상기 차량(20)에 마련된 커넥터에 연결됨으로써, 전자 장치(101)와 차량 장치(201)는 전기적으로 연결될 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 차량 장치(201)에 전기적으로 연결되면, 전자 장치(101)의 제2 통신 모듈(예: 도 3의 제2 통신 모듈(392))을 통해서, 차량 장치(201)와 유선 통신을 연결할 수 있다. 전자 장치(101)는 차량 장치(201)에 전기적으로 연결되면, 차량 장치(201)와의 연결이 초기 연결인지를 판단할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)와 통신이 연결되면, 차량 장치(201)로부터 차량(20)과 연관된 차량 정보(예: 차량의 고유 번호(VIN: vehicle identification number))를 수신할 수 있다. 전자 장치(101)는 차량 장치(201)로부터 수신된 차량 정보가 전자 장치(101)의 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330)) 내에 저장된 것인지를 확인할 수 있다. 전자 장치(101)는 차량 정보가 메모리(330)에 저장되어 있지 않은 경우, 차량 장치(201)와 초기 연결인 것으로 판단할 수 있다. 전자 장치(101)는 차량 장치(201)와 초기 연결인 것으로 판단되면, 차량 장치(201)의 차량 정보에 기반하여, 전자 장치(101)의 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제1 외부 전자 장치(예: 제1 서버)(210a))로 상기 차량 장치와 연관된 정보를 요청하고, 상기 외부 전자 장치(210a)로부터 요청의 응답으로 수신된 정보에 기반하여 제1 정보를 획득할 수 있다. 상기 외부 전자 장치(210a)는 예를 들어, 자동차 회사 서버일 수 있고, 전자 장치(101)로부터 차량(20)과 연관된 차량 정보를 수신하면, 차량 정보에 대응하는 차량(20)과 연관된 정보를 전자 장치(101)로 제공할 수 있다. 예를 들어, 차량(20)과 연관된 정보는 차량 정보에 대응하는 ECU ID 리스트 정보, 차량 배터리 평균 소모량 정보, ECU 팜웨어 버전 정보, 차량의 안전 제한 설정 정보 중 적어도 하나를 포함할 수 있다.
동작 402에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)와 연관된 제1 정보를 획득하여 저장할 수 있다. 예를 들어, 전자 장치(101)는 외부 전자 장치(210a)로부터 차량 장치와 연관된 정보 요청의 응답으로 수신된 정보에 기반하여 제1 정보를 획득하고, 획득된 제1 정보를 메모리(330) 내에 저장할 수 있다. 전자 장치(101)는 획득된 제1 정보를 메모리(330)의 보안 영역에 저장할 수 있다. 또는, 전자 장치(101)는 사용자에게 사용자 인터페이스를 제공하고, 사용자로부터 입력된 차량 정보에 기반하여 외부 전자 장치(210a)로부터 차량(20)과 연관된 정보를 획득할 수 있다. 또는, 전자 장치(101)는 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제3 외부 전자 장치(모바일 장치)(210c))와 무선 연결하고, 외부 전자 장치(210c)의 사용자 인터페이스를 통해 사용자로부터 입력된 차량 정보에 기반하여 외부 전자 장치(예: 도 2의 제1 외부 전자 장치(제1 서버))(210a)로부터 차량(20)과 연관된 정보를 수신할 수 있다. 또는, 전자 장치(101)는 제1 통신 모듈(391)을 통해서, 외부 전자 장치(210)(예: 도 2의 제3 외부 전자 장치(모바일 장치)(210c))와 무선 연결하고, 외부 전자 장치(210c)에 의해 설정된 차량 정보에 기반하여 외부 전자 장치(210c)로부터 차량(20)과 연관된 정보를 수신할 수 있다. 전자 장치(101)는 수신된 차량과 연관된 정보에 기반하여 차량 장치(201)의 ECU ID 리스트 정보, 차량 배터리 평균 소모량 정보, ECU 팜웨어 버전 정보, 차량의 안전 제한 설정 정보 중 적어도 하나를 획득하고, 이를 메모리(330) 내에 저장할 수 있다.
동작 403에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 전자 장치(101)가 지정된 조건을 만족하는지를 판단할 수 있다. 예를 들어, 전자 장치(101)는 전자 장치(101) 또는 차량 장치(201)가 재부팅과 관련된 상태이거나, 전자 장치(101) 또는 차량 장치(201)가 재장착과 관련된 상태이거나, 차량 장치(201)의 동작 속성(예: 차량의 시동 정지, 차량의 팜웨어 업데이트, 차량의 안전 제한 설정 변경 등)과 관련된 상태이거나, 미리 설정된 주기(예: 모니터링 주기)에 도달한 상태인 경우, 전자 장치(101)가 지정된 조건을 만족하는 것으로 판단할 수 있다. 전자 장치(101)는 지정된 조건이 만족되면 동작 404를 수행하고, 지정된 조건이 만족되지 않으면, 지정된 조건이 만족될 때까지 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 404에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 전자 장치(101)가 지정된 조건을 만족하는 것으로 판단된 경우, 제2 통신 모듈(예: 도 3의 제2 통신 모듈(392))을 통해서, 차량 장치(201)로부터 차량(20)과 연관된 제2 정보를 획득할 수 있다.
다양한 실시예에 따르면, 전자 장치(101)는 전자 장치(101)의 지정된 조건이 전자 장치(101) 또는 차량 장치(201)의 재부팅 또는 재장착과 관련된 상태이거나, 미리 설정된 주기에 도달한 상태인 경우, 차량 장치(201)로 차량 장치(201)와 연관된 정보를 요청하고, 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제2 정보를 획득할 수 있다. 예를 들면, 전자 장치(101)는 차량 장치(201)의 ECU ID를 확인하기 위해, 명령 요청을 전송하고, 명령 요청에 대한 응답을 수신할 수 있다. 일 실시예에서, 전자 장치(101)는 차량 장치(201)에 포함된 모든 ECU들에게 동일한 명령어를 전달하고, 이에 대한 응답을 수신하여 각 ECU의 ECU ID를 확인할 수 있다. 다른 실시예에서, 전자 장치(101)는 차량 장치(201)에 포함된 각 ECU들에게 개별적으로 명령어를 전달하고, 이에 대한 응답을 수신하여 각 ECU의 ECU ID를 확인할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 전자 장치(101)가 지정된 조건을 만족하는 것과 무관하게 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신하고, 수신된 메시지에 기반하여 각 ECU ID를 확인할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신하고, 수신된 메시지의 패턴(예: 브로드캐스팅 횟수, 메시지 데이터 량 등)을 확인할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 안전 제한 설정과 관련된 정보 또는 ECU 업데이트 버전(예: 팜웨어 버전) 정보를 확인하기 위해, 안전 제한 설정 정보 요청 명령 또는 ECU 업데이트 버전 정보 요청 명령을 전송하고, 명령 요청에 대한 응답으로 안전 제한 설정 정보 또는 ECU 업데이트 버전 정보를 수신할 수 있다. 또 다른 실시예에 따르면, 전자 장치(101)는 전자 장치(101)의 지정된 조건이 차량 장치(201)의 차량 시동 정비와 관련된 상태인 경우, 일정 시간 동안 차량 배터리 소모량을 확인할 수 있다.
동작 405에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 제1 정보 및 제2 정보에 기반하여 차량 장치(201)의 상태를 판단할 수 있다. 예를 들어, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 차량 장치(201)로부터의 응답에 기반한 ECU ID를 이용하여 차량 장치(201)의 상태를 판단할 수 있다. 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 응답에 기반한 ECU ID를 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 또는, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 모니터링에 기반한 ECU ID를 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 또는, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 패턴과 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 모니터링에 기반한 메시지의 패턴을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 또는, 전자 장치(101)는 메모리(330)에 저장된 안전 제한 설정과 관련된 정보와 차량 장치(201)로부터 수신된 안전 제한 설정을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 또한, 전자 장치(101)는 메모리(330)에 저장된 ECU 업데이트 버전(예: 팜웨어 버전) 정보와 차량 장치(201)로부터 수신된 ECU 업데이트 버전을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 메모리(330)에 저장된 차량의 시동이 정지되었을 때 차량 배터리의 평균 소모량 정보와 차량 장치(201)를 이용하여 차량의 시동이 정지되었을 때 일정 시간 동안 확인된 차량 배터리 소모량을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다.
동작 406에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 기반하여, 지정된 동작을 수행할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제1 외부 전자 장치(제1 서버)(210a), 제2 외부 전자 장치(제2 서버)(210b) 또는 제3 외부 전자 장치(모바일 장치)(210c))에 차량 장치(201)의 상태 이상을 통지할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다. 예를 들어, 메모리(330)의 보안 영역에는 차량의 보증 상태를 지시하는 보증 비트(attestation bit)를 포함할 수 있고, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 보증 비트의 값을 비활성화 값으로 설정하여 저장할 수 있다. 상기 차량의 보증은 일정 주기 마다 갱신이 이루어질 수 있고, 차량의 보증 갱신 주기가 도달하였을 때, 외부 전자 장치(210)(예: 도 2의 제2 외부 전자 장치(제2 서버)(210b)는 메모리(330)의 보안 영역에 저장된 보증 비트에 기반하여, 차량의 보증 연장을 결정할 수 있다.
도 5는 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(500)이다.
다양한 실시예에 따르면, 동작 501 내지 동작 511은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 501 내지 동작 511이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 501에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)에 연결할 수 있다. 전자 장치(101)는 차량 장치(201)에 전기적으로 연결되면, 차량 장치(201)와의 연결이 초기 연결인지를 판단할 수 있다. 전자 장치(101)는 차량 장치(201)와 초기 연결인 것으로 판단되면, 차량 장치(201)에게 차량(20)과 연관된 차량 정보(예: 차량의 고유 번호(VIN: vehicle identification number))를 요청할 수 있다.
동작 502에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)로부터 차량(20)과 연관된 차량 정보를 수신할 수 있다. 다른 예에서, 전자 장치(101)는 차량(20)꽈 연관된 차량 정보를 차량 장치(201)로부터 수신하지 않고, 전자 장치(101)의 사용자 인터페이스를 통해 사용자로부터 입력된 차량 정보를 수신할 수 있다. 또는, 전자 장치(101)는 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제3 외부 전자 장치(모바일 장치)(210c))와 무선 연결하고, 외부 전자 장치(210c)의 사용자 인터페이스를 통해 사용자로부터 입력된 차량 정보를 수신할 수도 있다.
동작 503에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량(20과 연관된 차량 정보를 외부 전자 장치(210)에 전송할 수 있다. 전자 장치(101)는 차량 정보를 전송함으로써, 외부 전자 장치(210)로부터 차량 정보에 대응하는 차량(20)과 연관된 정보를 요청할 수 있다.
동작 504에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 차량(20)과 연관된 정보를 수신할 수 있다. 예를 들어, 전자 장치(101)는 외부 전자 장치(210)로부터 차량 정보와 연관된 차량(20)의 ECU ID 리스트를 수신할 수 있다.
동작 505에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 수신된 ECU ID 리스트를 메모리(330)에 저장할 수 있다. 예를 들어, 전자 장치(101)는 수신된 ECU ID 리스트를 메모리(330)의 보안 영역에 저장할 수 있다.
동작 506에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 전자 장치(101)가 지정된 조건을 만족하는지를 판단할 수 있다. 예를 들어, 전자 장치(101)는 전자 장치(101) 또는 차량 장치(201)가 재부팅과 관련된 상태이거나, 전자 장치(101) 또는 차량 장치(201)가 재장착과 관련된 상태이거나, 미리 설정된 주기(예: 모니터링 주기)에 도달한 상태인 경우, 전자 장치(101)가 지정된 조건을 만족하는 것으로 판단할 수 있다. 전자 장치(101)는 지정된 조건이 만족되면 동작 507을 수행하고, 지정된 조건이 만족되지 않으면, 지정된 조건이 만족될 때까지 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 507에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 전자 장치(101)가 지정된 조건을 만족하는 것으로 판단된 경우, 제2 통신 모듈(예: 도 3의 제2 통신 모듈(392))을 통해서, 차량 장치(201)로 명령 요청을 전송할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)에 포함된 모든 ECU들에게 동일한 명령어를 전달하거나, 차량 장치(201)에 포함된 각 ECU들에게 개별적으로 명령어를 전달할 수 있다.
동작 508에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)로부터 명령 요청에 대한 응답을 수신할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)에 포함된 모든 ECU들에게 동일한 명령어를 전달하고, 이에 대한 응답을 수신하여 각 ECU의 ECU ID를 확인할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)에 포함된 각 ECU들에게 개별적으로 명령어를 전달하고, 이에 대한 응답을 수신하여 각 ECU의 ECU ID를 확인할 수 있다.
동작 509에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 차량 장치(201)로부터의 응답에 기반한 ECU ID를 이용하여 차량 장치(201)의 상태를 판단할 수 있다. 예를 들어, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 응답에 기반한 ECU ID를 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다.
동작 510에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단된 경우, 동작 511을 수행할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 발생되지 않은 것으로 판단된 경우, 동작 506을 수행하며, 지정된 조건이 만족될 때까지 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 511에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제1 외부 전자 장치(제1 서버)(210a), 제2 외부 전자 장치(제2 서버)(210b) 또는 제3 외부 전자 장치(모바일 장치)(210c))에 차량 장치(201)의 상태 이상을 통지할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다. 예를 들어, 메모리(330)의 보안 영역에는 차량의 보증 상태를 지시하는 보증 비트(attestation bit)를 포함할 수 있고, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 보증 비트의 값을 비활성화 값으로 설정하여 저장할 수 있다.
한 실시예에서, 메모리(330)의 보안 영역에 저장되거나 통지된 차량 장치(201)의 상태 이상 표시에 근거하여, 차량 장치(201)의 상태 이상은 외부 전자 장치(210) 또는 다른 전자 장치의 디스플레이 상에 표시될 수 있다.
도 6은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(600)이다.
다양한 실시예에 따르면, 동작 601 내지 동작 609는 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 601 내지 동작 609가 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 601 내지 동작 605는, 상기 동작 501 내지 동작 505와 실질적으로 동일할 수 있다. 전자 장치(101)는 차량 장치(201)에 연결되고, 차량 장치(201)로부터 차량 정보를 수신하고, 외부 전자 장치(210)에 차량 정보를 전송하고, 외부 전자 장치(210)로부터 차량 정보와 연관된 ECU ID 리스트를 수신하고, 수신된 ECU ID를 메모리(330)에 저장할 수 있다.
동작 606에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신하고, 수신된 메시지에 기반하여 각 ECU ID를 확인할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신하고, 수신된 메시지의 패턴(예: 브로드캐스팅 횟수, 메시지 데이터 량 등)을 확인할 수 있다.
동작 607에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 모니터링에 기반한 ECU ID를 이용하여 차량 장치(201)의 상태를 판단할 수 있다. 예를 들어, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 ECU ID 리스트와 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 모니터링에 기반한 ECU ID를 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 메모리(330)에 저장된 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 패턴과 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지의 모니터링에 기반한 메시지의 패턴을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다.
동작 608에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단된 경우, 동작 609를 수행할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 발생되지 않은 것으로 판단된 경우, 동작 606을 수행하며, 차량 장치(201)의 각 ECU들 간에 브로드캐스팅되는 메시지를 수신하여 모니터링하는 동작을 수행할 수 있다.
동작 609에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제1 외부 전자 장치(제1 서버)(210a), 제2 외부 전자 장치(제2 서버)(210b) 또는 제3 외부 전자 장치(모바일 장치)(210c))에 차량 장치(201)의 상태 이상을 통지할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다.
한 실시예에서, 메모리(330)의 보안 영역에 저장되거나 통지된 차량 장치(201)의 상태 이상 표시에 근거하여, 차량 장치(201)의 상태 이상은 외부 전자 장치(210) 또는 다른 전자 장치의 디스플레이 상에 표시될 수 있다.
도 7은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(700)이다.
다양한 실시예에 따르면, 동작 701 내지 동작 710은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 701 내지 동작 710이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 701 내지 동작 703은, 상기 동작 501 내지 동작 503 또는 상기 동작 601 내지 동작 603과 실질적으로 동일할 수 있다. 전자 장치(101)는 차량 장치(201)에 연결되고, 차량 장치(201)로부터 차량 정보를 수신하고, 외부 전자 장치(210)에 차량 정보를 전송할 수 있다.
동작 704에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 차량의 배터리 평균 소모량 정보를 수신할 수 있다. 예를 들어, 차량의 배터리 평균 소모량 정보는, 차량(20)의 시동이 정지되고, 일정 시간이 지난 시점에서 일정 시간 동안의 배터리 소모량에 대한 정보일 있다. 또는, 전자 장치(101)는 차량의 배터리 평균 소모량 정보를 외부 전자 장치(210)에 의존하지 않고, 전자 장치(101) 자체에서 수집하여 배터리 평균 소모량 정보를 산출할 수 있다.
동작 705에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 수신된 차량의 배터리 평균 소모량 정보를 저장할 수 있다. 또한, 전자 장치(101)는 차량의 배터리 평균 소모량 정보를 외부 전자 장치(210)에 의존하지 않고, 전자 장치(101) 자체에서 수집하여 배터리 평균 소모량 정보를 산출하여 저장할 경우, 차량(20)의 시동이 정지될 때마다, 배터리의 소모량에 대한 정보를 수집하여 업데이트함으로써, 정보의 최신성을 유지할 수 있다. 또한, 배터리는 시일이 지나면, 기본적으로 열화되는 특성이 있으므로, 차량의 연식이나, 주행 거리, 주행 시간, 배터리의 사용 기간 등을 감안하여 배터리의 소모량에 대한 정보를 수정할 수 있다. 또한, 배터리는 주변 온도에 따라 배터리가 상이하게 소모되는 특성이 있으므로, 배터리의 소모량에 대한 정보를 수집한 시점의 외기 온도를 함께 저장할 수도 있다.
동작 706에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량(20)의 시동이 정지하는지를 판단할 수 있다. 전자 장치(101)는 차량의 시동이 정지하는 경우, 동작 707을 수행할 수 있다. 또는, 전자 장치(101)는 차량의 시동이 정지하지 않는 경우, 차량(20)의 시동이 정지될 때까지 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 707에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량의 시동이 정지하면, 일정 시간이 지난 시점에서 차량 장치(201)로 배터리 소모량 획득을 위한 획득 명령어 데이터를 전송하고, 일정 시간 동안의 배터리 소모량에 대한 정보를 확인할 수 있다.
동작 708에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 메모리(330)에 저장된 차량 배터리 평균 소모량과 확인된 차량 배터리 소모량을 이용하여 차량 장치(201)의 상태를 판단할 수 있다. 예를 들어, 전자 장치(101)는 메모리(330)에 저장된 차량의 시동이 정지되었을 때 차량 배터리의 평균 소모량 정보와 차량 장치(201)를 이용하여 차량의 시동이 정지되었을 때 일정 시간 동안 확인된 차량 배터리 소모량을 비교하여 차이가 발생하면, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단할 수 있다. 이는 차량 장치(201)의 ECU가 불법적으로 장착되거나, 불법적인 튜닝에 의해 ECU의 동작이 정지되거나, 과도하게 동작될 수 있고, 이 경우, 배터리의 사용량이 변화될 수 있으므로, 이러한 차이를 감지함으로써, 차량 장치(201)의 상태 이상을 판단할 수 있다.
동작 709에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 발생된 것으로 판단된 경우, 동작 710을 수행할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 발생되지 않은 것으로 판단된 경우, 동작 707을 수행하며, 전자 장치(101)는 차량 장치(201)로 배터리 소모량 획득을 위한 획득 명령어 데이터를 전송하고, 일정 시간 동안의 배터리 소모량에 대한 정보를 확인하는 동작을 지속할 수 있다.
동작 710에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 제1 통신 모듈(예: 도 3의 제1 통신 모듈(391))을 통해서, 외부 전자 장치(210)(예: 도 2의 제1 외부 전자 장치(제1 서버)(210a), 제2 외부 전자 장치(제2 서버)(210b) 또는 제3 외부 전자 장치(모바일 장치)(210c))에 차량 장치(201)의 상태 이상을 통지할 수 있다. 다른 실시예에 따르면, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다.
한 실시예에서, 메모리(330)의 보안 영역에 저장되거나 통지된 차량 장치(201)의 상태 이상 표시에 근거하여, 차량 장치(201)의 상태 이상은 외부 전자 장치(210) 또는 다른 전자 장치의 디스플레이 상에 표시될 수 있다.
도 8은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(800)이다.
다양한 실시예에 따르면, 동작 801 내지 동작 808은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 801 내지 동작 808이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 801에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)의 업데이트를 확인할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)의 업데이트를 확인하기 위해 차량 장치(201)의 업데이트 버전 정보 요청 명령을 전송할 수 있다.
동작 802에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)로부터 업데이트 버전 정보 요청 명령의 응답으로 차량 장치(201)의 업데이트 버전 정보를 수신할 수 있다. 또는, 전자 장치(101)는 차량 장치(201)가 업데이트를 수행하는 경우, 업데이트 수행에 따른 업데이트 버전(예: 팜웨어 버전) 정보를 확인할 수 있다.
동작 803에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)와의 통신 가능 유무를 확인할 수 있다. 예를 들어, 전자 장치(101)는 외부 전자 장치(210)와 통신이 불가한 상태인 경우, 동작 804를 수행하고, 통신이 가능한 상태인 경우, 동작 805를 수행할 수 있다.
동작 804에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)와 통신이 불가한 상태인 경우, 획득된 차량 장치(201)의 업데이트 정보를 메모리(330)에 저장할 수 있다. 획득된 차량 장치(201)의 업데이트 정보를 메모리(330)의 보안 영역에 저장할 수 있다. 전자 장치(101)는 업데이트 정보를 메모리(330)에 저장하고, 외부 전자 장치(210)와의 통신이 가능하게 되면, 동작 805를 수행할 수 있다.
동작 805에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로 획득된 차량 장치(201)의 업데이트 버전 정보에 대한 확인을 요청할 수 있다. 외부 전자 장치(210)는 확인 요청에 포함된 차량 정보에 기반하여, 차량 정보에 대응하는 업데이트 버전 정보와 수신된 업데이트 버전 정보를 비교하여, 업데이트 버전 정보의 상태를 판단할 수 있다.
동작 806에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 업데이트 버전 정보에 대한 확인 결과를 수신할 수 있다.
동작 807에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 업데이트 상태에 이상이 발생된 것으로 판단된 경우, 동작 808을 수행할 수 있다. 또는, 전자 장치(101)는 업데이트 상태에 이상이 발생되지 않은 것으로 판단된 경우, 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 808에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 업데이트 상태에 이상이 발생된 것으로 판단된 경우, 차량 장치(201)의 상태에 이상이 발생한 것으로 판단하고, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다. 예를 들어, 메모리(330)의 보안 영역에는 차량의 보증 상태를 지시하는 보증 비트(attestation bit)를 포함할 수 있고, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 보증 비트의 값을 비활성화 값으로 설정하여 저장할 수 있다. 상기 차량의 보증은 일정 주기 마다 갱신이 이루어질 수 있고, 차량의 보증 갱신 주기가 도달하였을 때, 외부 전자 장치(210)(예: 도 2의 제2 외부 전자 장치(제2 서버)(210b)는 메모리(330)의 보안 영역에 저장된 보증 비트에 기반하여, 차량의 보증 연장을 결정할 수 있다.
도 9는 다양한 실시예들에 따른 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(900)이다.
다양한 실시예에 따르면, 동작 901 내지 동작 908은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 901 내지 동작 908이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 901에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)에 재연결될 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)에 전기적으로 연결되면, 전자 장치(101)의 제2 통신 모듈(예: 도 3의 제2 통신 모듈(392))을 통해서, 차량 장치(201)와 유선 통신을 연결할 수 있다. 전자 장치(101)는 차량 장치(201)에 전기적으로 연결되면, 차량 장치(201)와의 재연결인지를 판단할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)로부터 차량(20)과 연관된 차량 정보(예: 차량의 고유 번호(VIN: vehicle identification number))를 수신할 수 있고, 수신된 차량 정보가 전자 장치(101)의 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330)) 내에 저장된 것인지를 확인할 수 있다. 전자 장치(101)는 차량 정보가 메모리(330)에 저장되어 있는 경우, 차량 장치(201)와의 연결이 재연결인 것으로 판단할 수 있다.
동작 902에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)로 안전 제한 설정 정보 요청 명령을 전송하고, 명령 요청에 대한 응답으로 안전 제한 설정 정보를 수신할 수 있다.
동작 903에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량 장치(201)로부터 획득된 안전 제한 설정 정보를 메모리(330)의 보안 영역 내에 저장할 수 있다.
동작 904에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 저장된 안전 제한 설정 정보가 메모리(330)의 보안 영역 내에 기 저장된 정보와 차이가 있는지를 판단할 수 있다. 예를 들어, 전자 장치(101)는 획득된 안전 제한 설정 정보를 메모리(330)에 저장하기 전에, 메모리(330)에 기 저장된 안전 제한 설정 정보를 확인(예: snapshot)하고, 획득된 안전 제한 설정 정보를 저장한 이후에, 차이가 발생하는지를 판단할 수 있다. 전자 장치(101)는 기 저장된 정보와 차이가 발생한 것으로 판단된 경우, 동작 905를 수행하고, 차이가 발생하지 않은 경우, 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 905에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로 기 저장된 정보와의 차이에 대한 확인을 요청할 수 있다. 외부 전자 장치(210)는 확인 요청에 포함된 차량 정보에 기반하여, 차량 정보에 대응하는 안전 제한 설정 정보와 확인 요청된 정보를 비교하여, 안전 제한 설정 정보의 상태를 판단할 수 있다.
동작 906에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 안전 제한 설정 정보의 확인 결과를 수신할 수 있다.
동작 907에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 안전 제한 설정 정보의 상태에 이상이 발생된 것으로 판단된 경우, 동작 908을 수행할 수 있다. 또는, 전자 장치(101)는 안전 제한 설정 정보의 상태에 이상이 발생되지 않은 것으로 판단된 경우, 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 908에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 안전 제한 설정 정보의 상태에 이상이 발생된 것으로 판단된 경우, 차량 장치(201)의 상태에 이상이 발생한 것으로 판단하고, 메모리(330)의 보안 영역에 차량 장치(201)의 상태 이상 표시를 저장할 수 있다. 예를 들어, 메모리(330)의 보안 영역에는 차량의 보증 상태를 지시하는 보증 비트(attestation bit)를 포함할 수 있고, 전자 장치(101)는 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 보증 비트의 값을 비활성화 값으로 설정하여 저장할 수 있다. 상기 차량의 보증은 일정 주기 마다 갱신이 이루어질 수 있고, 차량의 보증 갱신 주기가 도달하였을 때, 외부 전자 장치(210)(예: 도 2의 제2 외부 전자 장치(제2 서버)(210b)는 메모리(330)의 보안 영역에 저장된 보증 비트에 기반하여, 차량의 보증 연장을 결정할 수 있다.
도 10은 다양한 실시예들에 따른 전자 장치와 외부 전자 장치가 차량 장치의 상태를 판단하는 동작을 설명하기 위한 흐름도(1000)이다.
다양한 실시예에 따르면, 동작 1001 내지 동작 1006은 도 1 내지 도 3의 전자 장치(101) 또는 프로세서(120, 320, 321, 322)를 통해 실행될 수 있다. 상기 전자 장치(101)는 상기 동작 1001 내지 동작 1006이 실행되도록 하는 인스트럭션들을 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))에 저장할 수 있다.
동작 1001에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량(20)의 보증 갱신 주기에 도달하는지를 판단할 수 있다. 전자 장치(101)는 차량(20)의 보증 갱신 주기에 도달한 경우, 동작 1002를 수행할 수 있고, 차량(20)의 보증 갱신 주기에 도달하지 않은 경우, 별도의 동작을 수행하지 않거나, 전자 장치(101)의 통상적인 동작을 수행할 수 있다.
동작 1002에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 차량(20)의 보증 갱신 주기에 도달한 경우, 메모리(330)의 보안 영역에 저장된 차량 장치(201)의 상태 정보를 외부 전자 장치(210)에 전송할 수 있다. 예를 들어, 전자 장치(101)는 차량 장치(201)의 상태 정보를 암호화하고, 암호화된 정보를 외부 전자 장치(210)에 전송할 수 있다.
동작 1003에서, 다양한 실시예에 따른 외부 전자 장치(210)(예: 도 2의 제2 외부 전자 장치(제2 서버)(210b))는 수신된 차량 장치(201)의 상태 정보에 기반하여, 차량 장치(201)의 상태를 판단할 수 있다. 예를 들어, 외부 전자 장치(210)는 암호화된 차량 장치(201)의 상태 정보를 복호화하고, 복호화된 차량 장치(201)의 상태 정보를 확인할 수 있다. 예를 들어, 외부 전자 장치(210)에 전송된 차량 장치(201)의 상태 정보는 차량의 보증 상태를 지시하는 보증 비트(attestation bit)를 포함할 수 있다. 외부 전자 장치(210)는 보증 비트의 값이 활성화 상태인지 비활성화 상태인지를 확인하고, 보증 비트의 값이 활성화 상태이면, 차량 장치(201)의 상태에 이상이 없는 것으로 판단하고, 동작 1004를 수행할 수 있다. 또는, 외부 전자 장치(210)는 보증 비트의 값이 비활성화 상태이면, 차량 장치(201)의 상태에 이상이 있는 것으로 판단하고, 동작 1006을 수행할 수 있다.
동작 1004에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 외부 전자 장치(210)로부터 차량 장치(201)의 보증 갱신 성공 통지를 수신할 수 있다.
동작 1005에서, 다양한 실시예에 따른 전자 장치(101)(예: 프로세서(120, 320, 321, 322))는, 메모리(330)의 보안 영역에 저장된 보증 비트의 만료 시기를 갱신하여, 차량(20)의 보증을 갱신할 수 있다.
동작 1006에서, 다양한 실시예에 따른 외부 전자 장치(210)(예: 도 2의 제2 외부 전자 장치(제2 서버)(210b))는 차량(20)의 보증 갱신을 실패한 것으로 처리하고, 차량 보증 관련 서비스에 제한을 설정할 수 있다. 또한, 외부 전자 장치(210)는 다른 외부 전자 장치(210(예: 도 2의 제1 외부 전자 장치(제1 서버)(210a)) 또는 제3 외부 전자 장치(모바일 장치)(210c))에 차량(20)의 보증 갱신 실패를 통지할 수 있다.
다양한 실시예에 따르면, 외부 전자 장치(210)는 차량(20)의 상태에 이상이 발생된 경우, 서비스 정책에 따라서 서비스를 제한하거나, 사용자에게 경고 알림을 통지할 수 있다. 이러한 시나리오에서, B사의 자동차를 소유한 A씨는 차량 구입 후 차량(20)의 성능을 높이기 위해 차량(20) 내부에 내장된 차량 장치(201)(예: ECU)를 불법으로 매핑을 하였다. ECU 불법 매핑은 제조사의 기준 차량 출력 세팅 값들을 변경하는 것을 의미한다. 이러한 ECU 불법 매핑으로 유해배기가스 배출이 증가되거나 차량 엔진의 손상을 가져올 수 있다. 무상 AS 기간에 A씨는 지나친 ECU 불법 매핑으로 차량의 엔진이 손상되었고, A씨는 차량 장치(201)의 ECU 팜웨어를 원상태로 복원한 후, 무상 수리를 요구하였지만, 다양한 실시예에 따른 비정상적인 ECU 업데이트를 검출, 기록 및 알림 기능으로 B사의 서비스 센터에서는 차량(20)의 불법 매핑을 확인할 수 있고, 차량의 무상 AS를 거절할 수 있다.
또 다른 시나리오에서, C씨는 1년간 안전운행 이행 시 일부 보험료 환급의 조건으로 보험사에서 제공한 전자 장치(101)(예: OBD 단말)를 차량(20)에 장착하였다. 그러나 보험 가입 이후 C씨는 계약을 어기고, 안전 제한 설정(예: 주행 중 DMB 시청, DVD 영화감상, Navigations 조작 등의 제한 설정) 값을 불법 자동차 정비소에서 해제하였다. 다양한 실시예에 따른 비정상적인 안전 제한 설정의 검출, 기록 및 알림 기능으로 보험사에서는 차량(20)의 불법 안전 제한 설정 변경을 확인할 수 있고, 보험금의 환급을 거절할 수 있다.
다양한 실시예에 따른 전자 장치(예: 도 1 내지 도 3의 전자 장치(101))는, 차량 장치(예: 도 1의 전자 장치(102) 또는 도 2의 차량 장치(201), 이하 201로 총칭함) 또는 외부 전자 장치(예: 도 1의 전자 장치(101), 전자 장치(102), 전자 장치(104), 서버(108) 또는 도 2의 제1 내지 제3 외부 전자 장치(210a, 210b, 210c), 이하, 210으로 총칭함)와 통신을 제공하도록 구성된 적어도 하나의 통신 회로(예: 도 1의 통신 모듈(190), 도 3의 제1 통신 모듈(391) 또는 도 3의 제2 통신 모듈(392)), 상기 적어도 하나의 통신 회로(190, 391, 392)에 전기적으로 연결된 적어도 하나의 프로세서(예: 도 1의 프로세서(120), 도 3의 프로세서(320), 도 3의 제1 프로세서(321) 또는 도 3의 제2 프로세서(322)), 및 상기 적어도 하나의 프로세서(120, 320, 321, 322)에 전기적으로 연결된 메모리(예: 도 1의 메모리(130) 또는 도 3의 메모리(330))를 포함하고, 상기 메모리(130, 330)는, 실행될 때, 상기 적어도 하나의 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)에 연결되면, 상기 차량 장치(201)와 연관된 제1 정보를 획득하여 저장하고, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 차량 장치(201)로부터 상기 차량 장치(201)와 연관된 제2 정보를 획득하고, 상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치(201)의 상태를 판단하고, 상기 판단에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 전자 장치(101)는, OBD(on board diagnostics) 프로토콜에 기반한 장치를 포함하고, 상기 차량 장치(201)는, 차량(예: 도 2의 차량(20))에 내장된 적어도 하나의 ECU(engine control unit)를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)에 전기적으로 연결되면, 상기 차량 장치(201)와의 연결이 초기 연결인지를 판단하고, 상기 차량 장치(201)와 초기 연결인 것으로 판단되면, 상기 차량 장치(201)의 초기 연결에 기반하여, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 외부 전자 장치(210)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 외부 전자 장치(210)로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제1 정보를 획득하고, 상기 획득된 제1 정보를 상기 메모리(130, 330) 내에 저장하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)에 전기적으로 연결되면, 상기 차량 장치(201)와의 연결이 초기 연결인지를 판단하고, 상기 차량 장치(201)와 초기 연결인 것으로 판단되면, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제1 정보를 회득하고, 상기 획득된 제1 정보를 상기 메모리(130, 330) 내에 저장하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 지정된 조건은, 상기 전자 장치(101) 또는 상기 차량 장치(201)가 재부팅과 관련된 상태인 조건, 상기 전자 장치(101) 또는 상기 차량 장치(201)가 재장착과 관련된 상태인 조건, 상기 차량 장치(201)의 동작 속성과 관련된 상태인 조건, 또는 미리 설정된 주기에 도달한 상태인 조건 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제2 정보를 획득하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 브로드캐스팅(broadcasting)되는 메시지에 기반하여, 상기 제2 정보를 획득하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 차량 장치(201)의 상태는, 차량(20)에 내장된 적어도 하나의 ECU(engine control unit)의 식별자의 이상 유무, 상기 차량(20)의 동작과 연관된 배터리 소모량, 상기 적어도 하나의 ECU들 간의 데이터 이상 유무, 상기 적어도 하나의 ECU의 팜웨어 버전(firmware version)의 이상 유무, 또는 상기 차량(20)의 안전 제한 설정의 이상 유무 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 외부 전자 장치(210)에 상기 차량 장치(201)의 이상 상태를 통지하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 차량 장치(201)의 이상 상태를 상기 메모리(130, 330)의 보안 영역에 저장하도록 설정될 수 있다.
상기 적어도 하나의 통신 회로(190, 391, 392)는, 상기 외부 전자 장치(210)와 무선 통신(예: 도 1 또는 도 2의 근거리 무선 통신 네트워크(198) 또는 도 1 또는 도 2의 원거리 무선 통신 네트워크(199))을 제공하도록 구성된 제1 통신 회로(예: 도 3의 제1 통신 모듈(391)) 및 상기 차량 장치(201)와 전기적으로 연결되어 유선 통신(예: 도 1의 연결 단자(178)를 통한 유선 통신)을 제공하도록 구성된 제2 통신 회로(예: 도 3의 제2 통신 모듈(392))를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 적어도 하나의 프로세서(120, 320, 321, 322)는, 상기 차량 장치(201)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보를 획득하고, 상기 획득된 정보에 기반하여 상기 차량 장치(201)의 상태를 판단하도록 구성된 제1 프로세서(예: 도 3의 제1 프로세서(321)) 및 상기 제1 프로세서(321)로부터 수신된 요청의 제1 포맷을 상기 차량 장치(201)로 전달 가능한 다른 제2 포맷으로 변환하고, 상기 차량 장치(201)로부터 수신된 정보의 제2 포맷을 상기 제1 프로세서(321)로 전달 가능한 상기 제1 포맷으로 변환하도록 구성된 제2 프로세서(예: 도 3의 제2 프로세서(322))를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 제1 프로세서(321) 및 상기 제2 프로세서(322) 간에 송수신되는 데이터를 암호화 또는 차단하도록 구성된 보안 회로(예: 도 3의 보안 모듈(323))를 더 포함할 수 있다.
다양한 실시예에 따른 전자 장치(예: 도 1 내지 도 3의 전자 장치(101))는, 차량 장치(201) 또는 제1 외부 전자 장치(예: 도 1의 전자 장치(101), 전자 장치(102), 전자 장치(104), 서버(108) 또는 도 2의 제1 외부 전자 장치(210a))와 통신을 제공하도록 구성된 적어도 하나의 통신 회로(190, 391, 392), 상기 적어도 하나의 통신 회로(190, 391, 392)와 전기적으로 연결된 적어도 하나의 프로세서(120, 320, 321, 322), 및 상기 적어도 하나의 프로세서(120, 320, 321, 322)에 전기적으로 연결된 메모리(130, 330)를 포함하고, 상기 메모리(130, 330)는, 실행될 때, 상기 적어도 하나의 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)에 연결되면, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)와 연관된 제1 정보를 획득하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 제1 정보 중 적어도 일부를 상기 제1 외부 전자 장치(210a)로 전송하고, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 상기 차량 장치(201)와 연관된 제2 정보를 획득하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 제2 정보 중 적어도 일부를 상기 제1 외부 전자 장치(210a)로 전송하고, 상기 제1 정보 및 상기 제2 정보의 전송에 응답하여, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 제1 외부 전자 장치(210a)로부터 상기 제1 외부 전자 장치(210a)에 의해 판단된 상기 차량 장치(201)의 상태와 연관된 정보를 수신하고, 상기 수신된 정보에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 지정된 조건은, 상기 전자 장치(101) 또는 상기 차량 장치(201)가 재부팅과 관련된 상태인 조건, 상기 전자 장치(101) 또는 상기 차량 장치(201)가 재장착과 관련된 상태인 조건, 상기 차량 장치(201)의 동작 속성과 관련된 상태인 조건, 또는 미리 설정된 주기에 도달한 상태인 조건 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로 상기 차량 장치(201)와 연관된 정보를 요청하고, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제2 정보를 획득하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 상기 차량 장치(201)로부터 브로드캐스팅(broadcasting)되는 메시지에 기반하여 상기 제2 정보를 획득하도록 설정될 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 차량 장치(201)의 상태는, 차량(20)에 내장된 적어도 하나의 ECU(engine control unit)의 식별자의 이상 유무, 상기 차량(20)의 동작과 연관된 배터리 소모량, 상기 적어도 하나의 ECU들 간의 데이터 이상 유무, 상기 적어도 하나의 ECU의 팜웨어 버전(firmware version)의 이상 유무, 또는 상기 차량(20)의 안전 제한 설정의 이상 유무 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따른 전자 장치(101)에 있어서, 상기 인스트럭션들은 상기 프로세서(120, 320, 321, 322)가, 상기 차량 장치(201)의 상태에 이상이 감지된 것으로 판단된 경우, 상기 적어도 하나의 통신 회로(190, 391, 392)를 통해서, 제2 외부 전자 장치(예: 도 1의 전자 장치(101), 전자 장치(102), 전자 장치(104), 서버(108) 또는 도 2의 제2 외부 전자 장치(210b))에 상기 차량 장치(201)의 이상 상태를 통지하거나, 상기 차량 장치(201)의 이상 상태를 상기 메모리(130, 330)의 보안 영역에 저장하도록 설정될 수 있다.
다양한 실시예에 따른 인스트럭션들을 비일시적으로 저장하고 있는 저장 매체에 있어서, 상기 인스트럭션들은 적어도 하나의 회로에 의해서 실행될 때에 상기 적어도 하나의 회로로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로, 상기 적어도 하나의 동작은, 전자 장치(101)와 차량 장치(201)가 연결되면, 상기 차량 장치(201)와 연관된 제1 정보를 획득하여 저장하는 동작, 상기 전자 장치(101)가 지정된 조건을 만족하는 경우, 상기 차량 장치(201)로부터 상기 차량 장치(201)와 연관된 제2 정보를 획득하는 동작, 상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치(201)의 상태를 판단하는 동작, 및 상기 판단에 기반하여, 지정된 동작을 수행하는 동작을 포함할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
101: 전자 장치, 320: 프로세서, 321: 제1 프로세서, 322: 제2 프로세서,
323: 보안 모듈, 330: 메모리, 340: 센서 모듈,
391: 제1 통신 모듈, 392: 제2 통신 모듈

Claims (20)

  1. 전자 장치에 있어서,
    차량 장치 또는 외부 전자 장치와 통신을 제공하도록 구성된 적어도 하나의 통신 회로;
    상기 적어도 하나의 통신 회로에 전기적으로 연결된 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 전기적으로 연결된 메모리를 포함하고,
    상기 메모리는, 실행될 때, 상기 적어도 하나의 프로세서가,
    상기 차량 장치에 연결되면, 상기 차량 장치와 연관된 제1 정보를 획득하여 저장하고,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하고,
    상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치의 상태를 판단하고,
    상기 판단에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장하는 전자 장치.
  2. 제1항에 있어서,
    상기 전자 장치는, OBD(on board diagnostics) 프로토콜에 기반한 장치를 포함하고,
    상기 차량 장치는, 차량에 내장된 적어도 하나의 ECU(engine control unit)를 포함하는 전자 장치.
  3. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 차량 장치에 전기적으로 연결되면, 상기 차량 장치와의 연결이 초기 연결인지를 판단하고,
    상기 차량 장치와 초기 연결인 것으로 판단되면, 상기 차량 장치의 초기 연결에 기반하여, 상기 적어도 하나의 통신 회로를 통해서, 상기 외부 전자 장치로 상기 차량 장치와 연관된 정보를 요청하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 외부 전자 장치로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제1 정보를 획득하고,
    상기 획득된 제1 정보를 상기 메모리 내에 저장하도록 설정된 전자 장치.
  4. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 차량 장치에 전기적으로 연결되면, 상기 차량 장치와의 연결이 초기 연결인지를 판단하고,
    상기 차량 장치와 초기 연결인 것으로 판단되면, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로 상기 차량 장치와 연관된 정보를 요청하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제1 정보를 회득하고,
    상기 획득된 제1 정보를 상기 메모리 내에 저장하도록 설정된 전자 장치.
  5. 제1항에 있어서,
    상기 지정된 조건은, 상기 전자 장치 또는 상기 차량 장치가 재부팅과 관련된 상태인 조건, 상기 전자 장치 또는 상기 차량 장치가 재장착과 관련된 상태인 조건, 상기 차량 장치의 동작 속성과 관련된 상태인 조건, 또는 미리 설정된 주기에 도달한 상태인 조건 중 적어도 하나를 포함하는 전자 장치.
  6. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로 상기 차량 장치와 연관된 정보를 요청하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제2 정보를 획득하도록 설정된 전자 장치.
  7. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 브로드캐스팅(broadcasting)되는 메시지에 기반하여, 상기 제2 정보를 획득하도록 설정된 전자 장치.
  8. 제1항에 있어서,
    상기 차량 장치의 상태는, 차량에 내장된 적어도 하나의 ECU(engine control unit)의 식별자의 이상 유무, 상기 차량의 동작과 연관된 배터리 소모량, 상기 적어도 하나의 ECU들 간의 데이터 이상 유무, 상기 적어도 하나의 ECU의 팜웨어 버전(firmware version)의 이상 유무, 또는 상기 차량의 안전 제한 설정의 이상 유무 중 적어도 하나를 포함하는 전자 장치.
  9. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 차량 장치의 상태에 이상이 감지된 것으로 판단된 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 외부 전자 장치에 상기 차량 장치의 이상 상태를 통지하도록 설정된 전자 장치.
  10. 제1항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 차량 장치의 상태에 이상이 감지된 것으로 판단된 경우, 상기 차량 장치의 이상 상태를 상기 메모리의 보안 영역에 저장하도록 설정된 전자 장치.
  11. 제1항에 있어서,
    상기 적어도 하나의 통신 회로는,
    상기 외부 전자 장치와 무선 통신을 제공하도록 구성된 제1 통신 회로; 및
    상기 차량 장치와 전기적으로 연결되어 유선 통신을 제공하도록 구성된 제2 통신 회로를 포함하는 전자 장치.
  12. 제1항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 차량 장치로 상기 차량 장치와 연관된 정보를 요청하고, 상기 차량 장치로부터 상기 요청의 응답으로 수신된 정보를 획득하고, 상기 획득된 정보에 기반하여 상기 차량 장치의 상태를 판단하도록 구성된 제1 프로세서; 및
    상기 제1 프로세서로부터 수신된 요청의 제1 포맷을 상기 차량 장치로 전달 가능한 다른 제2 포맷으로 변환하고, 상기 차량 장치로부터 수신된 정보의 제2 포맷을 상기 제1 프로세서로 전달 가능한 상기 제1 포맷으로 변환하도록 구성된 제2 프로세서를 포함하는 전자 장치.
  13. 제12항에 있어서,
    상기 제1 프로세서 및 상기 제2 프로세서 간에 송수신되는 데이터를 암호화 또는 차단하도록 구성된 보안 회로를 더 포함하는 전자 장치.
  14. 전자 장치에 있어서,
    차량 장치 또는 제1 외부 전자 장치와 통신을 제공하도록 구성된 적어도 하나의 통신 회로;
    상기 적어도 하나의 통신 회로와 전기적으로 연결된 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서에 전기적으로 연결된 메모리를 포함하고,
    상기 메모리는, 실행될 때, 상기 적어도 하나의 프로세서가,
    상기 차량 장치에 연결되면, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치와 연관된 제1 정보를 획득하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 제1 정보 중 적어도 일부를 상기 제1 외부 전자 장치로 전송하고,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 제2 정보 중 적어도 일부를 상기 제1 외부 전자 장치로 전송하고,
    상기 제1 정보 및 상기 제2 정보의 전송에 응답하여, 상기 적어도 하나의 통신 회로를 통해서, 상기 제1 외부 전자 장치로부터 상기 제1 외부 전자 장치에 의해 판단된 상기 차량 장치의 상태와 연관된 정보를 수신하고, 상기 수신된 정보에 기반하여, 지정된 동작을 수행하도록 설정된 인스트럭션들(instructions)을 저장하는 전자 장치.
  15. 제14항에 있어서,
    상기 지정된 조건은, 상기 전자 장치 또는 상기 차량 장치가 재부팅과 관련된 상태인 조건, 상기 전자 장치 또는 상기 차량 장치가 재장착과 관련된 상태인 조건, 상기 차량 장치의 동작 속성과 관련된 상태인 조건, 또는 미리 설정된 주기에 도달한 상태인 조건 중 적어도 하나를 포함하는 전자 장치.
  16. 제14항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로 상기 차량 장치와 연관된 정보를 요청하고,
    상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 상기 요청의 응답으로 수신된 정보에 기반하여 상기 제2 정보를 획득하도록 설정된 전자 장치.
  17. 제14항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 적어도 하나의 통신 회로를 통해서, 상기 차량 장치로부터 브로드캐스팅(broadcasting)되는 메시지에 기반하여 상기 제2 정보를 획득하도록 설정된 전자 장치.
  18. 제14항에 있어서,
    상기 차량 장치의 상태는, 차량에 내장된 적어도 하나의 ECU(engine control unit)의 식별자의 이상 유무, 상기 차량의 동작과 연관된 배터리 소모량, 상기 적어도 하나의 ECU들 간의 데이터 이상 유무, 상기 적어도 하나의 ECU의 팜웨어 버전(firmware version)의 이상 유무, 또는 상기 차량의 안전 제한 설정의 이상 유무 중 적어도 하나를 포함하는 전자 장치.
  19. 제14항에 있어서,
    상기 인스트럭션들은 상기 프로세서가,
    상기 차량 장치의 상태에 이상이 감지된 것으로 판단된 경우, 상기 적어도 하나의 통신 회로를 통해서, 제2 외부 전자 장치에 상기 차량 장치의 이상 상태를 통지하거나, 상기 차량 장치의 이상 상태를 상기 메모리의 보안 영역에 저장하도록 설정된 전자 장치.
  20. 인스트럭션들을 비일시적으로 저장하고 있는 저장 매체에 있어서, 상기 인스트럭션들은 적어도 하나의 회로에 의해서 실행될 때에 상기 적어도 하나의 회로로 하여금 적어도 하나의 동작을 수행하도록 설정된 것으로, 상기 적어도 하나의 동작은,
    전자 장치와 차량 장치가 연결되면, 상기 차량 장치와 연관된 제1 정보를 획득하여 저장하는 동작;
    상기 전자 장치가 지정된 조건을 만족하는 경우, 상기 차량 장치로부터 상기 차량 장치와 연관된 제2 정보를 획득하는 동작;
    상기 제1 정보 및 상기 제2 정보에 기반하여, 상기 차량 장치의 상태를 판단하는 동작; 및
    상기 판단에 기반하여, 지정된 동작을 수행하는 동작을 포함하는 저장 매체.
KR1020180038226A 2018-04-02 2018-04-02 차량을 진단하는 전자 장치 및 방법 KR102471498B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020180038226A KR102471498B1 (ko) 2018-04-02 2018-04-02 차량을 진단하는 전자 장치 및 방법
US16/980,895 US11645878B2 (en) 2018-04-02 2019-03-29 Electronic device and method for diagnosing vehicle
PCT/KR2019/003699 WO2019194474A1 (ko) 2018-04-02 2019-03-29 차량을 진단하는 전자 장치 및 방법
US18/143,224 US20230274588A1 (en) 2018-04-02 2023-05-04 Electronic device and method for diagnosing vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180038226A KR102471498B1 (ko) 2018-04-02 2018-04-02 차량을 진단하는 전자 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190115325A true KR20190115325A (ko) 2019-10-11
KR102471498B1 KR102471498B1 (ko) 2022-11-28

Family

ID=68100997

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180038226A KR102471498B1 (ko) 2018-04-02 2018-04-02 차량을 진단하는 전자 장치 및 방법

Country Status (3)

Country Link
US (2) US11645878B2 (ko)
KR (1) KR102471498B1 (ko)
WO (1) WO2019194474A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102153900B1 (ko) * 2019-12-04 2020-09-09 (주)트라이월드홀딩스 차량 연장 보증 서비스 제공 장치 및 방법
CN112184948A (zh) * 2020-09-29 2021-01-05 深圳市元征科技股份有限公司 一种车辆数据读取方法及相关设备
KR20220001326A (ko) * 2020-06-29 2022-01-05 쌍용자동차 주식회사 헤드 유닛의 무단개조 방지장치 및 방법
WO2024003927A1 (en) * 2022-06-27 2024-01-04 Tvs Motor Company Limited Vehicle status communication system and method

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020170926A1 (ja) * 2019-02-18 2020-08-27 株式会社オートネットワーク技術研究所 車載通信装置、プログラム及び、通信方法
JP7443994B2 (ja) * 2020-09-02 2024-03-06 株式会社デンソー 駆動装置および駆動システム
EP3982250A1 (en) * 2020-10-08 2022-04-13 Elektrobit Automotive GmbH Generation of code for a system
JP7447766B2 (ja) * 2020-11-10 2024-03-12 トヨタ自動車株式会社 情報処理装置、方法、プログラム、及び車両
US11887411B2 (en) 2021-01-27 2024-01-30 Amazon Technologies, Inc. Vehicle data extraction service
CN113094111B (zh) * 2021-04-16 2024-01-09 三星(中国)半导体有限公司 设备以及设备的启动方法
CN113552502A (zh) * 2021-07-08 2021-10-26 深圳市道通科技股份有限公司 一种车辆漏电检测方法及装置
US11902374B2 (en) 2021-11-29 2024-02-13 Amazon Technologies, Inc. Dynamic vehicle data extraction service
CN114363385B (zh) * 2021-12-28 2023-05-23 重庆长安新能源汽车科技有限公司 一种云端更新汽车端软件的方法、系统、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100789965B1 (ko) * 2006-12-30 2008-01-02 화남전자 주식회사 차량의 전자제어유닛용 펌웨어의 업그레이드 방법 및 그프로그램이 수록된 기록매체
JP2009535626A (ja) * 2006-04-26 2009-10-01 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド 車両診断に使用される監督エージェントを使用したインテリジェントエージェント管理システム及び方法
KR101306149B1 (ko) * 2011-12-01 2013-09-10 동의대학교 산학협력단 Edr과 차량진단기능이 내장된 운행정보 확인 장치 및 그의 데이터 처리 방법
KR20130110714A (ko) * 2012-03-30 2013-10-10 삼성전자주식회사 Obd 탈부착 감지 장치 및 방법
KR20140074518A (ko) * 2012-12-10 2014-06-18 한국전자통신연구원 차량용 디지털 포렌식 분석 시스템 및 방법
KR101593571B1 (ko) * 2014-07-16 2016-02-18 현대오트론 주식회사 차량 전자제어유닛의 이상 진단을 위한 블랙박스장치 및 이의 제어 방법
JP2017501069A (ja) * 2013-11-08 2017-01-12 ゴゴロ インク 車両イベントデータを提供するための装置、方法及び物品

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4004422B2 (ja) 2003-03-18 2007-11-07 トヨタ自動車株式会社 車両特定システム及び車両特定方法
US7991585B2 (en) * 2008-10-01 2011-08-02 Toyota Motor Engineering & Manufacturing North America, Inc. Method and apparatus for three dimensional calibration of an on-board diagnostics system
WO2014059097A1 (en) 2012-10-11 2014-04-17 Automatic Labs, Inc. System to view automobile diagnostic information
US9116782B2 (en) 2012-10-17 2015-08-25 Toyota Motor Engineering & Manufacturing North America, Inc. Vehicle auxiliary system with global positioning system control
EP3340205B1 (en) * 2015-08-19 2021-09-15 Sony Group Corporation Information processing device, information processing method, and program
JP6350468B2 (ja) * 2015-09-18 2018-07-04 トヨタ自動車株式会社 運転支援装置
KR102598270B1 (ko) * 2016-08-01 2023-11-06 삼성전자주식회사 차량 탑승 인식 방법 및 이를 구현한 전자 장치
KR102645360B1 (ko) * 2017-01-12 2024-03-11 삼성전자주식회사 차량 장치 및 전자 장치와 차량 장치에서 디스플레이 방법 및 전자 장치에서 정보 전송 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009535626A (ja) * 2006-04-26 2009-10-01 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド 車両診断に使用される監督エージェントを使用したインテリジェントエージェント管理システム及び方法
KR100789965B1 (ko) * 2006-12-30 2008-01-02 화남전자 주식회사 차량의 전자제어유닛용 펌웨어의 업그레이드 방법 및 그프로그램이 수록된 기록매체
KR101306149B1 (ko) * 2011-12-01 2013-09-10 동의대학교 산학협력단 Edr과 차량진단기능이 내장된 운행정보 확인 장치 및 그의 데이터 처리 방법
KR20130110714A (ko) * 2012-03-30 2013-10-10 삼성전자주식회사 Obd 탈부착 감지 장치 및 방법
KR20140074518A (ko) * 2012-12-10 2014-06-18 한국전자통신연구원 차량용 디지털 포렌식 분석 시스템 및 방법
JP2017501069A (ja) * 2013-11-08 2017-01-12 ゴゴロ インク 車両イベントデータを提供するための装置、方法及び物品
KR101593571B1 (ko) * 2014-07-16 2016-02-18 현대오트론 주식회사 차량 전자제어유닛의 이상 진단을 위한 블랙박스장치 및 이의 제어 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102153900B1 (ko) * 2019-12-04 2020-09-09 (주)트라이월드홀딩스 차량 연장 보증 서비스 제공 장치 및 방법
WO2021112279A1 (ko) * 2019-12-04 2021-06-10 (주)트라이월드홀딩스 차량 연장 보증 서비스 제공 장치 및 방법
KR20220001326A (ko) * 2020-06-29 2022-01-05 쌍용자동차 주식회사 헤드 유닛의 무단개조 방지장치 및 방법
CN112184948A (zh) * 2020-09-29 2021-01-05 深圳市元征科技股份有限公司 一种车辆数据读取方法及相关设备
WO2024003927A1 (en) * 2022-06-27 2024-01-04 Tvs Motor Company Limited Vehicle status communication system and method

Also Published As

Publication number Publication date
US20230274588A1 (en) 2023-08-31
US20210012588A1 (en) 2021-01-14
US11645878B2 (en) 2023-05-09
WO2019194474A1 (ko) 2019-10-10
KR102471498B1 (ko) 2022-11-28

Similar Documents

Publication Publication Date Title
KR102471498B1 (ko) 차량을 진단하는 전자 장치 및 방법
CN108762783B (zh) 车辆系统的软件更新方法、装置及车辆系统
US20210155176A1 (en) Vehicle electronic control system, self-retention power execution control method and computer program product
US20210167988A1 (en) Vehicle master device, update data distribution control method, computer program product and data structure of specification data
US9904531B2 (en) Apparatus and method for installing vehicle correction program
US10723361B2 (en) Monitoring apparatus, communication system, vehicle, monitoring method, and non-transitory storage medium
US8583317B2 (en) In-vehicle device, vehicle authentication system and data communication method
JP2017510504A (ja) タイヤ圧力センサの構成方法
US11467821B2 (en) Vehicle master device, installation instruction determination method and computer program product
CN105320520A (zh) 用于将数据功能集成在用于车辆的运动控制系统中的方法
KR20120093283A (ko) 차량 관련 정보를 처리하기 위한 방법 및 시스템
US20210155173A1 (en) Vehicle master device, vehicle electronic control system, activation request instruction method and computer program product
US20210165651A1 (en) Electronic control unit, vehicle electronic control system, difference data consistency determination method and computer program product
US11928459B2 (en) Electronic control unit, retry point specifying method and computer program product for specifying retry point
JP7176488B2 (ja) データ保存装置、及びデータ保存プログラム
KR102426367B1 (ko) 무선 기기 및 이의 외부 기기와 통신 연결 방법
CN105320035A (zh) 用于将数据功能集成在用于车辆的运动控制系统中的设备
US20200410778A1 (en) Vehicle consumable management system, terminal device, computer program, and vehicle consumable management method
KR20190074857A (ko) 펌웨어를 업데이트하는 인터페이스 장치, 모바일 장치 및 펌웨어 업데이트 방법
CN118082426A (zh) 操作轮胎监测装置的方法、控制装置及轮胎监测系统
CN113254047A (zh) 车辆的配置升级方法、车载终端、服务器、车辆及介质
US10417016B2 (en) Data communication system for vehicle
WO2017033579A1 (ja) 車両用電子制御装置
KR102545127B1 (ko) 외부 전자 장치의 키와 관련된 어플리케이션을 관리하는 전자 장치 및 전자 장치의 동작 방법
JP2011188176A (ja) 車載装置及びデータ処理システム及びデータ処理方法及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant