KR20240038457A - 차량 데이터 검증 장치 및 방법 - Google Patents

차량 데이터 검증 장치 및 방법 Download PDF

Info

Publication number
KR20240038457A
KR20240038457A KR1020220117348A KR20220117348A KR20240038457A KR 20240038457 A KR20240038457 A KR 20240038457A KR 1020220117348 A KR1020220117348 A KR 1020220117348A KR 20220117348 A KR20220117348 A KR 20220117348A KR 20240038457 A KR20240038457 A KR 20240038457A
Authority
KR
South Korea
Prior art keywords
vehicle data
processor
data
vehicle
verification
Prior art date
Application number
KR1020220117348A
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 KR1020220117348A priority Critical patent/KR20240038457A/ko
Priority to US18/142,875 priority patent/US20240096149A1/en
Publication of KR20240038457A publication Critical patent/KR20240038457A/ko

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
    • G07C5/0841Registering performance data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/321Display for diagnostics, e.g. diagnostic result display, self-test user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/368Test management for test version control, e.g. updating test cases to a new software version
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Vehicle Cleaning, Maintenance, Repair, Refitting, And Outriggers (AREA)

Abstract

본 발명은 차량 데이터 검증 장치 및 방법에 관한 것으로, 데이터베이스(DB) 및 상기 DB와 연결되는 프로세서를 포함하고, 상기 프로세서는, 적어도 하나의 차량 데이터 세트를 입력 받고, 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는지를 확인하고, 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는 경우, 상기 적어도 하나의 차량 데이터 세트 내 차량 데이터들에 대한 검증을 수행하고, 상기 차량 데이터들에 대한 검증 결과를 출력할 수 있다.

Description

차량 데이터 검증 장치 및 방법{VEHICLE DATA VERIFICATION APPARATUS AND METHOD}
본 발명은 차량 데이터 검증 장치 및 방법에 관한 것이다.
차량 개발 시 차량 데이터를 확인하고 검증하는 과정(process)을 거친다. 차량 데이터를 확인하는 과정에서는 ETAS사에서 공급하는 INCA 툴(tool)을 활용하여 차량 데이터 해석 및 비교를 수행할 수 있다. 그러나, 기존의 툴은 차량 데이터의 재가공이 어렵고, 비교 결과를 시각화할 수 없고, 가독성이 낮으며 N개의 데이터를 동시에 시각화할 수도 없다.
또한, 기존에는 신규 소프트웨어 또는 일부 수정된 소프트웨어를 배포할 때, 각 기능 담당자들의 역량에 의존하여 소프트웨어를 수동으로 검증하였다. 즉, 담당자가 수기로 2~4만 여개의 차량 데이터 변수(label)를 검토해야 한다. 이러한 기존의 검증 과정에서 각 담당자가 모든 차량 데이터를 검토하기는 현실적으로 어렵고, 중요한 라벨만 검토하더라도 많이 시간이 소요된다. 또한, 기존에는 데이터 검증 기준에 대한 노하우 전달이 어렵고, 데이터 검증 기준이 표준화되어 있지 않아 담당자가 교체될 경우 과거 개선되었던 문제의 재발이 잦다. 뿐만 아니라, 기존에는 법규 미준수에 따른 빈번한 품질 문제 및 인증 리스크도 발생한다.
본 발명은 차량 데이터의 해석 및 검증을 자동으로 수행하는 차량 데이터 검증 장치 및 방법을 제공하고자 한다.
본 발명의 실시 예들에 따른 차량 데이터 검증 장치는 데이터베이스(DB) 및 상기 DB와 연결되는 프로세서를 포함하고, 상기 프로세서는, 적어도 하나의 차량 데이터 세트를 입력 받고, 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는지를 확인하고, 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는 경우, 상기 적어도 하나의 차량 데이터 세트 내 차량 데이터들에 대한 검증을 수행하고, 상기 차량 데이터들에 대한 검증 결과를 출력할 수 있다.
상기 프로세서는, 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있지 않은 경우, 상기 차량 데이터들 중 ROM 데이터를 전처리하고, 전처리된 ROM 데이터를 포함한 차량 데이터들을 해석하고, 해석된 차량 데이터들을 기정해진 데이터 프레임 형태로 상기 DB에 저장할 수 있다.
상기 프로세서는, 상기 차량 데이터들 중 어느 하나를 기준 데이터로 설정하고, 기준 데이터로 설정된 차량 데이터와 나머지 차량 데이터들을 비교할 수 있다.
상기 프로세서는, 상기 차량 데이터들을 시각화하여 출력할 수 있다.
상기 프로세서는, 상기 차량 데이터들에 대한 유효성 검사를 수행할 수 있다.
상기 프로세서는, 사용자에 의해 정의된 검토 규칙을 입력 받을 수 있다.
상기 프로세서는, 상기 검토 규칙에 기반하여 상기 차량 데이터들을 검토할 수 있다.
상기 프로세서는, 고장 진단 표준 정보를 입력 받을 수 있다.
상기 프로세서는, 상기 고장 진단 표준 정보를 기반으로 상기 차량 데이터들을 검토하여 새로운 검토 규칙을 생성할 수 있다.
상기 새로운 검토 규칙은, 상기 차량 데이터들에 대한 검토결과를 포함할 수 있다.
본 발명의 실시 예들에 따른 차량 데이터 검증 방법은 프로세서가 적어도 하나의 차량 데이터 세트를 입력 받는 단계, 상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 데이터베이스(DB)에 저장되어 있는지를 확인하는 단계, 상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는 경우, 상기 적어도 하나의 차량 데이터 세트 내 차량 데이터들에 대한 검증을 수행하는 단계, 및 상기 프로세서가 상기 차량 데이터들에 대한 검증 결과를 출력하는 단계를 포함할 수 있다.
상기 차량 데이터 검증 방법은 상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있지 않은 경우, 상기 차량 데이터들 중 ROM 데이터를 전처리하는 단계, 상기 프로세서가 전처리된 ROM 데이터를 포함한 차량 데이터들을 해석하는 단계, 및 상기 프로세서가 해석된 차량 데이터들을 기정해진 데이터 프레임 형태로 상기 DB에 저장하는 단계를 더 포함할 수 있다.
상기 차량 데이터들에 대한 검증을 수행하는 단계는, 상기 프로세서가 상기 차량 데이터들 중 어느 하나를 기준 데이터로 설정하고, 기준 데이터로 설정된 차량 데이터와 나머지 차량 데이터들을 비교하는 단계를 포함할 수 있다.
상기 차량 데이터들에 대한 검증을 수행하는 단계는, 상기 프로세서가 상기 차량 데이터들을 시각화하여 출력하는 단계를 더 포함할 수 있다.
상기 차량 데이터들에 대한 검증을 수행하는 단계는, 상기 프로세서가 상기 차량 데이터들에 대한 유효성 검사를 수행하는 단계를 더 포함할 수 있다.
상기 적어도 하나의 차량 데이터 세트를 입력 받는 단계는, 상기 프로세서가 사용자에 의해 정의된 검토 규칙을 입력 받는 단계를 포함할 수 있다.
상기 차량 데이터들에 대한 검증을 수행하는 단계는, 상기 프로세서가 상기 검토 규칙에 기반하여 상기 차량 데이터들을 검토하는 단계를 포함할 수 있다.
상기 적어도 하나의 차량 데이터 세트를 입력 받는 단계는, 상기 프로세서가 고장 진단 표준 정보를 입력 받는 단계를 포함할 수 있다.
상기 차량 데이터들에 대한 검증을 수행하는 단계는, 상기 프로세서가 상기 고장 진단 표준 정보를 기반으로 상기 차량 데이터들을 검토하여 새로운 검토 규칙을 생성하는 단계를 포함할 수 있다.
본 발명은 OBD(On Board Diagnostics) 법규 및 제어기 데이터의 해석 및 검증을 자동으로 수행할 수 있게 한다.
또한, 본 발명은 차량 데이터의 검증 프로세스를 ROM(Read Only Memory) 데이터의 자체적인 해석 및 비교를 통해 효율화 및 강건화할 수 있다.
또한, 본 발명은 각 규칙 파일을 활용하여 검증 업무를 표준화할 수 있으며 검증 프로세스에 대한 신뢰성을 확보할 수 있다.
도 1은 본 발명의 실시 예들에 따른 차량 데이터 검증 장치를 도시한 블록구성도이다.
도 2는 본 발명의 실시 예들에 따른 차량 데이터 검증 툴의 라이브러리 구조를 도시한 도면이다.
도 3은 본 발명의 일 실시 예에 따른 차량 데이터 비교 기능 실행 화면을 도시한 도면이다.
도 4는 본 발명의 다른 실시 예에 따른 차량 데이터 검토 기능 실행 화면을 도시한 도면이다.
도 5는 본 발명의 다른 실시 예에 따른 검토식 작성을 위한 연산자 정보를 도시한 도면이다.
도 6는 본 발명의 또 다른 실시 예에 따른 규칙 생성 기능 실행 화면을 도시한 도면이다.
도 7은 본 발명의 일 실시 예에 따른 차량 데이터 검증 방법을 도시한 흐름도이다.
도 8은 본 발명의 다른 실시 예에 따른 차량 데이터 검증 방법을 도시한 흐름도이다.
이하, 본 발명의 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면 상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명의 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시 예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다.
본 발명의 실시 예의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 또한, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 실시 예들에 따른 차량 데이터 검증 장치를 도시한 블록구성도이다.
차량 데이터 검증 장치(100)는 차량 데이터를 해석(decode), 비교(compare) 및/또는 검토(review)할 수 있으며, 차량 고장 진단 정보를 기반으로 새로운 규칙 파일(rule file)을 생성할 수 있다. 규칙 파일은 차량 데이터 검토 시 사용될 수 있다.
도 1을 참조하면, 차량 데이터 검증 장치(100)는 통신 모듈(110), 사용자 인터페이스(120), 인터페이스(130), 메모리(140), 디스플레이(150) 및 프로세서(160)를 포함할 수 있다.
통신 모듈(110)은 차량 데이터 검증 장치(100)와 외부 전자 장치(예: ECU(Electronic Control Unit) 간의 유선 및/또는 무선 통신을 지원할 수 있다. 통신 모듈(110)은 안테나를 통해 정보를 송신 및 수신하는 트랜시버(transceiver)를 포함할 수 있다. 통신 모듈(110)은 외부 전자 장치로부터 전송되는 차량 데이터 세트를 수신할 수 있다.
사용자 인터페이스(120)는 사용자의 조작에 따른 데이터(즉, 사용자 입력)를 발생시킬 수 있다. 사용자 인터페이스(120)는 키보드, 키패드, 버튼, 스위치, 터치 패드 및/또는 터치 스크린 등으로 구현될 수 있다.
인터페이스(130)는 차량 데이터 검증 장치(100)에 연결되는 외부 기기와의 통로 역할을 할 수 있다. 인터페이스(130)는 외부 기기로부터 데이터를 전송받거나 전원을 공급받아 차량 데이터 검증 장치(100) 내부의 각 구성 요소에 전달하거나 차량 데이터 검증 장치(100) 내부의 데이터가 외부 기기로 전송되도록 할 수 있다. 인터페이스(130)는 외부 기기로부터 전송되는 차량 데이터 세트를 수신할 수 있다. 예를 들어, 인터페이스(130)는 유/무선 데이터 I/O(Input/Output) 포트 및/또는 메모리 카드(memory card) 포트 등을 포함할 수 있다.
메모리(140)는 차량 데이터 검증 툴(차량 데이터 관리 툴), 제1 라이브러리, 제2 라이브러리, 해석 알고리즘, 비교 알고리즘, 검토 알고리즘 및/또는 규칙 편집 알고리즘 등을 저장할 수 있다. 또한, 메모리(140)는 차량 데이터 세트, 데이터베이스(DB), 결과 파일 및/또는 해석 이력 등을 저장할 수 있다. DB에는 과거 해석이 완료된 차량 데이터 및/또는 현재 해석이 완료된 차량 데이터가 표준화된 형식(표준 형식) 즉, 데이터 프레임(data frame) 형태로 저장될 수 있다.
메모리(140)는 프로세서(160)에 의해 실행되는 명령어들(instructions)을 저장하는 저장매체(non-transitory storage medium)일 수 있다. 메모리(140)는 플래시 메모리(flash memory), 하드디스크(hard disk), SSD(Solid State Disk), SD 카드(Secure Digital Card), RAM(Random Access Memory), SRAM(Static Random Access Memory), ROM(Read Only Memory), PROM(Programmable Read Only Memory), EEPROM(Electrically Erasable and Programmable ROM), EPROM(Erasable and Programmable ROM) 및/또는 착탈형 디스크 등의 저장매체 중 적어도 하나를 포함할 수 있다.
디스플레이(150)는 시각 정보를 출력할 수 있다. 디스플레이(150)는 액정 디스플레이(Liquid Crystal Display, LCD), 박막 트랜지스터 액정 디스플레이(Thin Film Transistor-Liquid Crystal Display, TFT-LCD), 유기 발광 다이오드(Organic Light-Emitting Diode, OLED) 디스플레이, 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 투명디스플레이, 헤드업 디스플레이(Head-Up Display, HUD) 및/또는 터치스크린 등의 표시 장치 중 적어도 하나를 포함할 수 있다. 디스플레이(150)는 청각 정보를 출력할 수 있는 스피커(speaker)와 같은 음향 출력 모듈을 포함할 수도 있다.
프로세서(160)는 차량 데이터 검증 장치(100)의 전반적인 동작을 제어할 수 있다. 프로세서(160)는 ASIC(Application Specific Integrated Circuit), DSP(Digital Signal Processor), PLD(Programmable Logic Device), FPGA(Field Programmable Gate Array), CPU(Central Processing unit), 마이크로컨트롤러(microcontroller) 및/또는 마이크로프로세서(microprocessor) 등의 처리장치 중 적어도 하나를 포함할 수 있다.
프로세서(160)는 사용자 인터페이스(120)로부터 수신되는 사용자 입력에 따라 차량 데이터 검증 툴을 실행할 수 있다. 프로세서(160)는 차량 데이터 검증 툴의 실행 화면을 디스플레이(150)에 출력할 수 있다. 프로세서(160)는 차량 데이터 검증 툴을 이용하여 차량 데이터 검증을 수행할 수 있다.
프로세서(160)는 통신 모듈(110), 인터페이스(130) 또는 메모리(140)로부터 적어도 하나의 차량 데이터 세트(data set)를 입력 데이터 세트로 수신할 수 있다. 적어도 하나의 차량 데이터 세트 각각은 ROM, DCM(DAMOS Container Module), CSV(comma-separated values) 및/또는 CDFX와 같은 파일 포맷으로 생성된 차량 데이터들 포함할 수 있다. 다시 말해서, 각 차량 데이터 세트는 ROM 데이터, DCM 데이터, CSV 데이터 및/또는 CDFX 데이터 등을 포함할 수 있다. ROM 데이터는 차량 제어기(예: ECU(Engine Control Unit), TCU(Transmission Control Unit), HCU(Hybrid Control Unit), VCU(Vehicle Control Unit) 등)에 입력되는 모든 차량 데이터를 의미할 수 있다. ROM 데이터는 차량 제어기 내 ROM에 저장되는 데이터 파일로, A2L 파일 및 HEX(또는 S19) 파일로 구성될 수 있다. A2L 파일은 ASAM MCD-2MC(ASAP2)에서 개발한 ASAP2 ECU(Electronic Control Unit) 기술 파일(Description File)로, ECU와 관련된 파라미터(parameters), 특성 커브와 맵(characteristic curves and maps), 실제 측정 변수(real measurement variables), 가상의 측정 변수(virtual measurement variables), 다양한 의존값들(variant dependencies)을 포함할 수 있다. HEX 파일은 16진 소스 파일로, 바이너리 또는 텍스트 형식으로 저장될 수 있다. ROM 데이터 해석을 위해서는 A2L 파일과 HEX 파일을 결합해야 한다. CSV 데이터는 쉼표로 구분된 값들이 포함된 파일이며, DCM 데이터는 데이터 보존 형식(Data Conservation format) 즉, ASCET, INTECRIO 및 INCA에서 사용되는 DAMOS 형식으로 저장된 파일이고, CDFX 데이터는 확장된 캘리브레이션 데이터 포맷(Extended Calibration Data Format)으로 각 라벨의 개발 상태와 과거 변경 이력을 포함하는 파일이다.
프로세서(160)는 차량 데이터 검증 툴에 적어도 하나의 차량 데이터 세트가 입력(import)되면 입력된 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 확인할 수 있다. 프로세서(160)는 DB 내 적어도 하나의 차량 데이터 세트 유무를 확인하고 그 확인 결과에 따라 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 결정할 수 있다. 예컨대, 프로세서(160)는 적어도 하나의 차량 데이터 세트가 메모리(140) 내 DB에 저장되어 있는 경우, 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있다고 결정할 수 있다. 한편, 프로세서(160)는 적어도 하나의 차량 데이터 세트가 메모리(140) 내 DB에 저장되어 있지 않은 경우, 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없다고 결정할 수 있다.
프로세서(160)는 입력된 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없는 경우 적어도 하나의 차량 데이터 세트에 포함된 차량 데이터들의 파일 포맷 및/또는 파일 경로를 확인하여 파일 목록을 생성할 수 있다.
프로세서(160)는 생성된 파일 목록 내 차량 데이터 파일에 대한 해석을 수행할 수 있다. 다시 말해서, 프로세서(160)는 적어도 하나의 차량 데이터 세트 내 차량 데이터(차량 변수)를 해석할 수 있다. 이때, 프로세서(160)는 제1 라이브러리를 이용하여 ROM 데이터, DCM 데이터, CSV 데이터 및/또는 CDFX 데이터의 해석을 실시할 수 있다. ROM 데이터 해석을 위해서는 ROM 데이터에 대한 전처리 과정이 요구될 수 있다. 전처리 과정에서, 프로세서(160)는 ROM 데이터에 대해 기정해진 복수 개의 함수들을 연산하고, 그 연산된 결과값들을 통합(종합)할 수 있다. 즉, 프로세서(160)는 전처리 과정을 통해 A2L 파일과 HEX 파일 각각에 명시되지 않은 정보를 결합(또는 matching)할 수 있다. 프로세서(160)는 전처리 과정에서 결합된 정보(즉, ROM 데이터)를 해석할 수 있다.
프로세서(160)는 차량 데이터 해석 결과를 데이터 프레임 형태로 출력할 수 있다. 프로세서(160)는 ROM 데이터 해석 결과, DCM 데이터 해석 결과, CSV 데이터 해석 결과 및/또는 CDFX 데이터 해석 결과를 통합하여 데이터 프레임을 생성할 수 있다. 프로세서(160)는 생성된 데이터 프레임을 메모리(140) 내 DB에 할 수 있다. 데이터 프레임은 미리 정해지는 표준 형식으로, 차량 변수, 변수 설명, 변수 타입, 변수 기능 분류(function), 변수 값(2차원 이상의 경우 내부 테이블 값을 의미함), 변수 단위, X축 값(CURVE, MAP, CUBOID에 한함), X축 단위, Y축 값(CURVE, MAP, CUBOID에 한함) 및/또는 Y축 단위 등을 포함할 수 있다.
프로세서(160)는 해석된(또는 decoded) 차량 데이터들(즉, 데이터 프레임)을 기반으로 제2 라이브러리에 포함된 비교 기능(compare), 검토 기능(review) 및/또는 규칙 생성 기능을 수행할 수 있다.
프로세서(160)는 비교 기능을 이용하여 해석된 차량 데이터들 간의 비교를 수행할 수 있다. 일 예로, 프로세서(160)는 둘 이상의 차량 데이터들이 입력된 경우 즉, 둘 이상의 차량 데이터 파일이 입력된 경우 둘 이상의 차량 데이터들을 상호 간 비교할 수 있다. 다른 일 예로, 프로세서(160)는 하나의 차량 데이터가 입력된 경우 즉, 단일 차량 데이터 파일이 입력된 경우 하나의 차량 데이터에 대한 해석 결과를 출력할 수 있다. 또 다른 일 예로, 프로세서(160)는 차량 데이터를 시각화(예: 그래프)할 수 있으며, 차량 데이터에 대해 유효성 검사를 수행할 수 있다.
프로세서(160)는 검토 기능(자동 검증 기능)을 이용하여 해석된 차량 데이터들을 검토(검증)할 수 있다. 이때, 프로세서(160)는 규칙 파일 내 정의된 검토 규칙에 기반하여 해석된 차량 데이터들을 검토할 수 있다. 프로세서(160)는 검토 알고리즘에 따라 해석된 차량 데이터들과 규칙 파일 내 차량 데이터(또는 차량 변수, 차량 데이터 변수)의 검토 결과(예: pass 및 fail)를 출력할 수 있다.
프로세서(160)는 규칙 생성 기능을 이용하여 규칙 파일을 자동으로 생성할 수 있다. 프로세서(160)는 차량 고장 진단 정보를 가지고 있는 DTC(Diagnostic Trouble Code) 파일을 기반으로 규칙 파일을 생성할 수 있다. 생성된 규칙 파일은 재사용이 가능하며, 새로 정의된 규칙에 기반한 검토 결과를 포함할 수 있다.
도 2는 본 발명의 실시 예들에 따른 차량 데이터 검증 툴의 라이브러리 구조를 도시한 도면이다.
도 2에 도시된 바와 같이, 차량 데이터 검증 툴은 2개의 라이브러리(패키지) 즉, 제1 라이브러리(210) 및 제2 라이브러리(220)를 포함할 수 있다.
제1 라이브러리(210)는 모든 종류의 차량 데이터 포맷을 해석할 수 있는 차량 데이터 해석 기능(이하, 해석 기능)을 포함할 수 있다. 해석 기능은 파일 판독(read) 과정, 전처리 과정 및 해석 과정으로 이루어질 수 있다. 파일 판독 과정에서는 해석할 차량 데이터 목록을 판독할 수 있다. 전처리 과정에서는 차량 데이터들 중 ROM 데이터에 대한 전처리를 수행할 수 있다. 전처리 과정에서, 먼저, 프로세서(160)는 읽기 함수(예: sort 함수)를 이용하여 ROM 데이터를 읽어올 수 있다. 예를 들어, 프로세서(160)는 sort_A2L 함수를 이용하여 A2L 파일을 판독하여 항목별로 데이터를 분류하고, 분류된 데이터들 중 기정의된 차량 변수 해석에 필요한 데이터들을 선별하여 사전(dictionary)형태로 출력할 수 있다. 프로세서(160)는 sort_HEX_S19 함수를 이용하여 HEX(S19) 파일을 읽고, 데이터 주소 및 값(HEX)을 사전 형태(예: {'0X0000001' : A0, '0X0000002' : 84 …})로 출력할 수 있다. 다음, 프로세서(160)는 sort_A2L 함수를 통해 출력되는 데이터들을 정리 및 가공하는 함수들(예: COMPU_VTAB, COMPU_METHOD, RECORD_LAYOUT, AXIS_PTS)을 이용하여 가공할 수 있다. 여기서, COMPU_VTAB 함수는 특정 값(차량 변수, 차량 데이터)을 해석하는 과정에서 필요한 정보로, 수식이 아닌 사전에 정의된 1:1 대응 값 정보(예: {1 : “100”, 2: “50”, 3 : “10”})를 출력할 수 있다. COMPU_METHOD 함수는 특정 값을 해석하는 과정에서 필요한 정보로, 수식 정보(예: 방정식)를 출력해 주며, 수식의 해를 구하는 과정을 통해 물리 값을 도출할 수 있다. RECORD_LAYOUT 함수는 1 및 2 차원 데이터의 서술 방법 및 순서 정보(예: x축 우선 쓰기, y축 우선 쓰기, 값의 타입(WORD, SWORD, UWORD…))를 출력할 수 있다. AXIS_PTS 함수는 축 데이터 정보를 해석하여 출력할 수 있다. 이어서, 프로세서(160)는 CHARACTERISTIC 함수를 이용하여 가공된 데이터들을 결합할 수 있다. 프로세서(160)는 MEASUREMENT 함수를 이용하여, CHARACTERISTIC 함수에 의해 결합된 변수를 제외한 나머지 MEASUREMENT 변수들을 변수 정보를 가지고 있으나 특정 값으로 정의되지 않은 상태로 출력할 수 있다. 나머지 MEASUREMENT 변수들의 값(변수 정보)은 차량 상태에 따라 지속적으로 변화하는 값이다. 해석 과정에서는 전처리된 ROM 데이터, CSV 데이터, DCM 데이터 및/또는 CDFX 데이터를 해석하고, 해석된 차량 데이터들을 데이터 프레임 형태로 DB에 저장할 수 있다.
제2 라이브러리(220)는 GUI(Graphic User Interface) 및 주요 기능(main function)을 포함할 수 있다. GUI는 set_Config 함수, push_Button 함수, drag_and_drop 함수, show_Message 함수, check_Option 함수 및/또는 get_Directory 함수로 구성될 수 있다. set_Config 함수는 이전 실행 정보를 저장 및 로딩(loading)할 수 있다. push_Button 함수는 파일 추가, 제거 및 리셋, 실행 중단 및 종료 버튼, 및/또는 진행상황을 출력(표시)할 수 있다. drag_and_drop 함수는 사용자 편의성을 위한 기능으로 파일 경로를 직접 입력할 필요 없이 파일들을 드래그앤드롭으로 입력할 수 있다. show_Message 함수는 상황별 다양한 팝업 메시지를 출력할 수 있다. check_Option 함수는 해석 실행 전 추가 기능 표출 여부를 선택할 수 있다. get_Directory 함수는 입력된 파일들의 경로를 출력하는 함수이다.
제2 라이브러리(220)는 GUI를 기반으로 다양한 사용자 선택 및 요구사항 정보를 판독할 수 있다. 제2 라이브러리(220)는 사용자 입력에 따라 차량 데이터를 불러오기하고, 해당 차량 데이터가 과거에 해석된 이력이 있는지를 확인할 수 있다. 이는, 동일한 차량 데이터에 대한 재해석으로 인한 시간 소요를 제거하기 위함이다.
제2 라이브러리(220)는 비교 기능, 검토 기능 및/또는 규칙 생성 기능과 같은 주요 기능을 포함할 수 있다. 제2 라이브러리(220)는 DB로부터 과거 또는 현재 해석이 완료된 차량 데이터들 즉, 데이터 프레임들을 로딩(loading)할 수 있다. 제2 라이브러리(220)는 로딩된 데이터 프레임들에 대해 비교, 검토 및 규칙 생성을 수행하도록 지원할 수 있다. 비교 기능은 다수의 차량 데이터들 간의 비교를 담당하며, 추가적인 옵션으로 차량 데이터 시각화 및 데이터 유효성 검사를 지원할 수 있다. 또한, 비교 기능은 단일 파일 즉, 1개의 차량 데이터 입력 시 해당 1개의 차량 데이터만 해석하여 그 해석 결과를 출력할 수 있다. 검토 기능은 사용자에 의해 작성된 규칙에 기반하여 해석된 차량 데이터를 검토하고 그 검토 결과를 예컨대 통과(pass) 또는 실패(fail)를 출력할 수 있다. 규칙 생성 기능은 차량 고장 진단 정보가 포함된 마스터 파일을 기반으로 재사용이 가능한 새로운 규칙 파일을 자동으로 생성할 수 있다. 또한, 규칙 생성 기능은 생성된 규칙 파일을 이용하여 차량 데이터를 검토하고 그 검토 결과를 출력할 수 있다. 규칙 생성 기능은 출력되는 검토 결과를 규칙 파일에 추가할 수 있다.
도 3은 본 발명의 일 실시 예에 따른 차량 데이터 비교 기능 실행 화면을 도시한 도면이다.
도 3을 참조하면, 프로세서(160)는 차량 데이터 검증 툴이 실행되면 해당 실행 화면을 디스플레이(150)에 출력할 수 있다. 프로세서(160)는 툴 실행 화면에서 'Compare' 탭을 선택하면 비교 기능 실행 화면(300)을 디스플레이(150)에 출력할 수 있다.
프로세서(160)는 비교 기능 실행 화면(300)에서 적어도 하나의 차량 데이터 세트(예: Data Set 1, Data Set 2, ..., Data Set N)(310)를 입력 받을 수 있다. 구체적으로, 비교 기능 실행 화면(300)에서 사용자가 'open' 버튼(320)을 입력하여 차량 데이터 파일을 선택하면, 프로세서(160)는 사용자에 의해 선택된 차량 데이터의 파일 경로를 판독(read)할 수 있다.
또한, 사용자가 'Add to Master' 버튼(330)을 조작하여 기준 데이터로 사용될 하나의 차량 데이터 파일(마스터 데이터)을 선택하고, 'Add to Sub' 버튼(340)을 조작하여 기준 데이터와 비교할 적어도 하나 이상의 차량 데이터 파일(서브 데이터)을 선택하면, 프로세서(160)는 사용자 선택(입력)에 따라 마스터 데이터와 적어도 하나의 서브 데이터의 파일 포맷 및 파일 경로를 확인하여 파일 목록(350)을 생성하여 표시할 수 있다.
또한, 사용자가 'Extract single data' 버튼(360)을 선택하는 경우, 프로세서(160)는 단일 데이터만 추출할 수 있다.
프로세서(160)는 사용자에 의해 'Reset' 버튼(370)이 조작되면 파일 목록을 초기화할 수 있다. 프로세서(160)는 파일 목록 중 적어도 하나의 항목이 선택된 상태에서 'Delete Row' 버튼(380)이 입력되면 선택된 적어도 하나의 항목을 삭제할 수 있다.
프로세서(160)는 옵션 중 'Chart' 체크박스가 선택되면, 차량 데이터들 즉, 마스터 데이터 및 적어도 하나의 서브 데이터를 그래프 형태로 시각화하여 출력할 수 있다.
프로세서(160)는 옵션 중 'Validity' 체크박스가 선택되면, 차량 데이터들에 대한 유효성 검사를 수행하고, 그 결과를 테이블 형태로 시각화하여 출력할 수 있다. 이러한 데이터 유효성 검사를 통해 차량 개발 프로세스에서 발생할 수 있는 캘리브레이션 오류를 사전에 제거할 수 있다.
프로세서(160)는 사용자에 의해 'Compare' 버튼(390)이 조작되면 마스터 데이터와 적어도 하나의 서브 데이터 간의 비교를 개시할 수 있다. 프로세서(160)는 마스터 데이터를 기준으로 적어도 하나의 서브 데이터를 비교할 수 있다. 이때, 프로세서(160)는 마스터 데이터 내 차량 변수에 매칭되는 적어도 하나의 서브 데이터 내 차량 변수의 값을 모두 비교할 수 있다. 프로세서(160)는 적어도 하나의 서브 데이터의 차량 변수 값이 마스터 데이터의 차량 변수 값과 일치하면 'pass'를 결정하고, 적어도 하나의 서브 데이터의 차량 변수 값이 마스터 데이터의 차량 변수 값과 일치하지 않으면 'fail'을 결정할 수 있다. 예컨대, 프로세서(160)는 마스터 데이터의 변수 A의 값이 100이고, 제1 서브 데이터, 제2 서브 데이터 및 제3 서브 데이터의 변수 A의 값이 모두 100인 경우 'pass'를 결정할 수 있다. 한편, 프로세서(160)는 마스터 데이터의 변수 A의 값이 100이고, 제1 서브 데이터, 제2 서브 데이터 및 제3 서브 데이터의 변수 A의 값이 각각 100, 90 및 100인 경우 'fail'을 결정할 수 있다.
프로세서(160)는 비교 결과(캘리브레이션 데이터)를 테이블 형태의 파일(예: 엑셀 파일)로 출력할 수 있다. 비교 결과 파일에는 차량 변수의 변수 이름, 변수 기능 분류, 변수 설명, 변수 타입, 변수 단위, 비교 결과(즉, 일치 여부) 및/또는 변수 값(내부 값) 등을 포함할 수 있다.
도 4는 본 발명의 다른 실시 예에 따른 차량 데이터 검토 기능 실행 화면을 도시한 도면이다. 도 5는 본 발명의 다른 실시 예에 따른 검토식 작성을 위한 연산자 정보를 도시한 도면이다.
프로세서(160)는 차량 데이터 검증 툴이 실행되면 해당 실행 화면을 디스플레이(150)에 출력할 수 있다. 프로세서(160)는 툴 실행 화면에서 'Review' 탭을 선택하면 검토 기능 실행 화면(400)을 디스플레이(150)에 출력할 수 있다.
프로세서(160)는 검토 기능 실행 화면(400)에서 적어도 하나의 차량 데이터 세트(예: Data Set 1, Data Set 2, ..., Data Set N)(410)를 입력 받을 수 있다. 검토 기능 실행 화면(400)에서 사용자가 'open' 버튼(420)을 입력하여 검토하고자 하는 차량 데이터를 선택하면, 프로세서(160)는 사용자에 의해 선택된 차량 데이터의 파일 경로를 판독(read)할 수 있다.
검토 기능 실행 화면에서 사용자가 'open' 버튼(430)을 입력하여 규칙 파일(440)을 선택하면, 프로세서(160)는 해당 규칙 파일(440)을 입력(import) 받을 수 있다. 규칙 파일(440)은 검토식을 포함할 수 있다. 검토식은 도 5에 도시된 검토식 작성을 위한 연산자 정보에 기반하여 작성될 수 있다.
프로세서(160)는 입력된 규칙 파일(440) 및 적어도 하나의 ROM 데이터(410)의 파일 포맷 및 파일 경로를 확인하여 목록(450)을 생성하고, 생성된 목록(450)을 표시할 수 있다.
이후, 사용자에 의해 'Review data' 버튼(460)이 입력되면, 프로세서(160)는 규칙 파일(440)에 포함된 검토식(검토 규칙)을 기반으로 ROM 데이터를 검토(검증)할 수 있다. 예를 들어, 프로세서(160)는 ROM 데이터에 대해 검토식을 수행하여 참(true) 또는 거짓(false)을 판별할 수 있다.
상기한 검토 기능은 개발담당자의 기술 및 노하우 전수를 위한 도구로써의 기능을 할 수 있으며, 인적 오류(human error)를 사전에 제거할 수 있게 한다.
도 6는 본 발명의 또 다른 실시 예에 따른 규칙 생성 기능 실행 화면을 도시한 도면이다.
프로세서(160)는 차량 데이터 검증 툴이 실행되면 해당 실행 화면을 디스플레이(150)에 출력할 수 있다. 프로세서(160)는 툴 실행 화면에서 'DTC Master' 탭을 선택하면 규칙 생성 기능 실행 화면(600)을 디스플레이(150)에 출력할 수 있다.
프로세서(160)는 규칙 생성 기능 실행 화면(600)에서 하나의 차량 데이터 세트(예: Data Set 1)(610)과 고장 진단 표준 정보(DTC Master)(620)를 입력 받을 수 있다. 규칙 생성 기능 실행 화면(600)에서 사용자가 'open' 버튼(630, 640)을 입력하여 차량 데이터 파일을 선택하고, DTC 마스터 파일을 선택하면, 프로세서(160)는 사용자에 의해 선택된 차량 데이터 파일과 DTC 마스터 파일을 불러오기(import)할 수 있다. DTC 마스터 파일 내 고장 진단 표준 정보는 차량의 판매지역, 파워트레인 및 옵션 정보 등에 따라 유동적으로 변경될 수 있다.
프로세서(160)는 차량 데이터 세트(610)와 고장 진단 표준 정보(620)를 입력 받으면, 차량 데이터 세트(610)와 고장 진단 표준 정보(620)를 검토할 수 있고 재사용 가능한 새로운 규칙 파일을 생성할 수 있다. 또한, 최초 실행 시 고장 진단 표준 정보(620)와 차량 데이터 세트(610) 내 차량 데이터가 일치하는지를 검토하고 그 검토결과를 새로 생성된 규칙 정보와 함께 출력할 수 있다.
또한, 프로세서(160)는 사용자 입력에 따라 DTC 마스터 파일 내 특정 위치(즉, 특정 행(rows) 및 열(column))의 정보(650)를 생성할 수 있다. 해당 정보(650)는 차량 제어기 공급사 정보, 시트(sheet) 정보 및 라벨 정보를 포함할 수 있다.
사용자에 의해 'Create Rulefile and Review' 버튼(660)이 입력되면, 프로세서(160)는 DTC 마스터 파일(620)을 기반으로 재사용 가능한 규칙 파일을 생성하고, 생성된 규칙 파일을 기반으로 차량 데이터 검토까지 수행할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 차량 데이터 검증 방법을 도시한 흐름도이다. 본 실시 예는 프로세서(160)가 차량 데이터 관리 툴을 실행하여 차량 데이터 비교 기능을 수행하는 것을 설명한다.
프로세서(160)는 적어도 하나의 차량 데이터 세트를 입력 받을 수 있다(S100). 프로세서(160)는 사용자 인터페이스(120)로부터 수신되는 사용자 입력에 따라 통신 모듈(110), 인터페이스(120) 또는 메모리(140)로부터 적어도 하나의 차량 데이터 세트(입력 데이터 세트)를 수신할 수 있다. 적어도 하나의 차량 데이터 세트 각각은 ROM, DCM, CSV 및/또는 CDFX와 같은 파일 포맷으로 가지는 차량 데이터들을 포함할 수 있다.
프로세서(160)는 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 확인할 수 있다(S110). 다시 말해서, 프로세서(160)는 적어도 하나의 차량 데이터 세트가 과거에 해석을 진행했던 데이터 세트인지를 확인할 수 있다. 프로세서(160)는 적어도 하나의 차량 데이터 세트가 DB 내 존재하는지를 확인하므로 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 결정할 수 있다. 프로세서(160)는 적어도 하나의 차량 데이터 세트가 DB에 있는 경우 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있다고 결정할 수 있다. 한편, 프로세서(160)는 적어도 하나의 차량 데이터 세트가 DB에 없는 경우 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없다고 결정할 수 있다.
S110에서 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없다고 확인되는 경우, 프로세서(160)는 적어도 하나의 차량 데이터 세트에 포함된 차량 데이터 파일 목록을 확인할 수 있다(S120). 프로세서(160)는 적어도 하나의 차량 데이터 세트 내 차량 데이터 파일의 포맷 및/또는 경로를 순차적으로 확인하고, 확인된 내용을 목록 형태의 텍스트로 출력할 수 있다.
프로세서(160)는 제1 라이브러리(210)를 이용하여 적어도 하나의 차량 데이터 세트 내 차량 데이터에 대한 해석을 진행할 수 있다(S130). 프로세서(160)는 차량 데이터인 ROM 데이터, DCM 데이터, CSV 데이터 및/또는 CDFX 데이터에 대한 해석을 실시할 수 있다. 이때, 프로세서(160)는 ROM 데이터 해석을 위한 전처리를 수행할 수 있다. 프로세서(160)는 전처리 과정에서 ROM 데이터에 대해 기정해진 8개의 함수를 연산하여 결과값들을 도출하고, 도출된 결과값들을 종합할 수 있다. 프로세서(160)는 종합된 결과값들에 대한 해석을 수행할 수 있다.
프로세서(160)는 차량 데이터에 대한 해석 결과를 출력할 수 있다(S140). 프로세서(160)는 해석 결과를 데이터 프레임 형태로 생성하여 저장할 수 있다. 데이터 프레임은 사전에 미리 정해진 표준화된 형식(표준 형식)으로 정의될 수 있다. 프로세서(160)는 ROM 데이터 해석 결과, CSV 데이터 해석 결과, DCM 데이터 해석 결과 및 CDFX 데이터 해석 결과를 통합하여 데이터 프레임을 생성할 수 있다. 프로세서(160)는 생성된 데이터 프레임을 DB에 저장할 수 있다.
S110에서 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있다고 확인되는 경우 또는 S140 이후, 프로세서(160)는 다수의 데이터 프레임을 통합(merge)할 수 있다(S150).
프로세서(160)는 통합된 데이터 프레임 내 차량 데이터들을 비교할 수 있다(S160). 프로세서(160)는 제2 라이브러리(220) 내 비교 함수를 이용하여 차량 데이터들의 비교를 수행할 수 있다.
프로세서(160)는 차량 데이터들의 비교 결과를 출력할 수 있다(S170). 프로세서(160)는 비교 결과를 기정해진 파일 포맷으로 출력할 수 있다.
도 8은 본 발명의 다른 실시 예에 따른 차량 데이터 검증 방법을 도시한 흐름도이다. 본 실시 예는 프로세서(160)가 차량 데이터 관리 툴을 실행하여 차량 데이터 검토 기능을 수행하는 것을 설명한다.
프로세서(160)는 적어도 하나의 차량 데이터 세트를 입력 받을 수 있다(S200). 프로세서(160)는 사용자 인터페이스(120)로부터 수신되는 사용자 입력에 따라 통신 모듈(110), 인터페이스(120) 또는 메모리(140)로부터 적어도 하나의 차량 데이터 세트(입력 데이터 세트)를 수신할 수 있다. 적어도 하나의 차량 데이터 세트 각각은 ROM, DCM, CSV 및/또는 CDFX와 같은 파일 포맷으로 가지는 차량 데이터들을 포함할 수 있다.
프로세서(160)는 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 확인할 수 있다(S210). 프로세서(160)는 DB 내 적어도 하나의 차량 데이터 세트 존재 여부 확인을 통해 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있는지 여부를 결정할 수 있다. 프로세서(160)는 적어도 하나의 차량 데이터 세트가 DB에 존재하는 경우 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있다고 결정할 수 있다. 한편, 프로세서(160)는 적어도 하나의 차량 데이터 세트가 DB에 존재하지 않는 경우 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없다고 결정할 수 있다.
S210에서 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 없다고 확인되는 경우, 프로세서(160)는 적어도 하나의 차량 데이터 세트에 포함된 차량 데이터 파일 목록을 확인할 수 있다(S220). 프로세서(160)는 적어도 하나의 차량 데이터 세트 내 차량 데이터 파일의 포맷 및/또는 경로를 순차적으로 확인하고, 확인된 내용을 목록 형태의 텍스트로 출력할 수 있다.
프로세서(160)는 제1 라이브러리(210)를 이용하여 적어도 하나의 차량 데이터 세트 내 차량 데이터에 대한 해석을 진행할 수 있다(S230). 프로세서(160)는 차량 데이터인 ROM 데이터, DCM 데이터, CSV 데이터 및/또는 CDFX 데이터에 대한 해석을 실시할 수 있다. 이때, 프로세서(160)는 ROM 데이터 해석을 위한 전처리를 수행할 수 있다. 프로세서(160)는 전처리 과정에서 ROM 데이터에 대해 기정해진 8개의 함수를 연산하여 결과값들을 도출하고, 도출된 결과값들을 종합할 수 있다. 프로세서(160)는 종합된 결과값들에 대한 해석을 수행할 수 있다.
프로세서(160)는 차량 데이터에 대한 해석 결과를 출력할 수 있다(S240). 프로세서(160)는 해석 결과를 데이터 프레임 형태로 생성하여 저장할 수 있다. 데이터 프레임은 사전에 미리 정해진 표준화된 형식(표준 형식)으로 정의될 수 있다. 프로세서(160)는 ROM 데이터 해석 결과, CSV 데이터 해석 결과, DCM 데이터 해석 결과 및 CDFX 데이터 해석 결과를 통합하여 데이터 프레임을 생성할 수 있다. 프로세서(160)는 생성된 데이터 프레임을 DB에 저장할 수 있다.
S210에서 적어도 하나의 차량 데이터 세트가 과거에 해석된 이력이 있다고 확인되는 경우 또는 S240 이후, 프로세서(160)는 다수의 데이터 프레임을 통합(merge)할 수 있다(S250).
프로세서(160)는 검토 규칙을 확인할 수 있다(S260). 검토 규칙은 사용자에 의해 작성되며 파일 형태로 저장될 수 있다.
프로세서(160)는 확인된 검토 규칙을 기반으로 통합된 데이터 프레임 내 차량 데이터들을 검토할 수 있다(S270). 프로세서(160)는 제2 라이브러리(220) 내 검토 함수를 이용하여 차량 데이터들의 비교를 수행할 수 있다.
프로세서(160)는 차량 데이터들 검토 결과를 출력할 수 있다(S280). 프로세서(160)는 검토 결과를 기정해진 파일 포맷으로 출력할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (19)

  1. 데이터베이스(DB); 및
    상기 DB와 연결되는 프로세서를 포함하고,
    상기 프로세서는,
    적어도 하나의 차량 데이터 세트를 입력 받고,
    상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는지를 확인하고,
    상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는 경우, 상기 적어도 하나의 차량 데이터 세트 내 차량 데이터들에 대한 검증을 수행하고,
    상기 차량 데이터들에 대한 검증 결과를 출력하는 것을 특징으로 하는 차량 데이터 검증 장치.
  2. 청구항 1에 있어서,
    상기 프로세서는,
    상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있지 않은 경우, 상기 차량 데이터들 중 ROM 데이터를 전처리하고,
    전처리된 ROM 데이터를 포함한 차량 데이터들을 해석하고,
    해석된 차량 데이터들을 기정해진 데이터 프레임 형태로 상기 DB에 저장하는 것을 특징으로 하는 차량 데이터 검증 장치.
  3. 청구항 1에 있어서,
    상기 프로세서는,
    상기 차량 데이터들 중 어느 하나를 기준 데이터로 설정하고, 기준 데이터로 설정된 차량 데이터와 나머지 차량 데이터들을 비교하는 것을 특징으로 하는 차량 데이터 검증 장치.
  4. 청구항 3에 있어서,
    상기 프로세서는,
    상기 차량 데이터들을 시각화하여 출력하는 것을 특징으로 하는 차량 데이터 검증 장치.
  5. 청구항 3에 있어서,
    상기 프로세서는,
    상기 차량 데이터들에 대한 유효성 검사를 수행하는 것을 특징으로 하는 차량 데이터 검증 장치.
  6. 청구항 1에 있어서,
    상기 프로세서는,
    사용자에 의해 정의된 검토 규칙을 입력 받는 것을 특징으로 하는 차량 데이터 검증 장치.
  7. 청구항 6에 있어서,
    상기 프로세서는,
    상기 검토 규칙에 기반하여 상기 차량 데이터들을 검토하는 것을 특징으로 하는 차량 데이터 검증 장치.
  8. 청구항 1에 있어서,
    상기 프로세서는,
    고장 진단 표준 정보를 입력 받는 것을 특징으로 하는 차량 데이터 검증 장치.
  9. 청구항 8에 있어서,
    상기 프로세서는,
    상기 고장 진단 표준 정보를 기반으로 상기 차량 데이터들을 검토하여 새로운 검토 규칙을 생성하는 것을 특징으로 하는 차량 데이터 검증 장치.
  10. 청구항 9에 있어서,
    상기 새로운 검토 규칙은,
    상기 차량 데이터들에 대한 검토결과를 포함하는 것을 특징으로 하는 차량 데이터 검증 장치.
  11. 프로세서가 적어도 하나의 차량 데이터 세트를 입력 받는 단계;
    상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 데이터베이스(DB)에 저장되어 있는지를 확인하는 단계;
    상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있는 경우, 상기 적어도 하나의 차량 데이터 세트 내 차량 데이터들에 대한 검증을 수행하는 단계; 및
    상기 프로세서가 상기 차량 데이터들에 대한 검증 결과를 출력하는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  12. 청구항 11에 있어서,
    상기 프로세서가 상기 적어도 하나의 차량 데이터 세트가 상기 DB에 저장되어 있지 않은 경우, 상기 차량 데이터들 중 ROM 데이터를 전처리하는 단계;
    상기 프로세서가 전처리된 ROM 데이터를 포함한 차량 데이터들을 해석하는 단계; 및
    상기 프로세서가 해석된 차량 데이터들을 기정해진 데이터 프레임 형태로 상기 DB에 저장하는 단계를 더 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  13. 청구항 11에 있어서,
    상기 차량 데이터들에 대한 검증을 수행하는 단계는,
    상기 프로세서가 상기 차량 데이터들 중 어느 하나를 기준 데이터로 설정하고, 기준 데이터로 설정된 차량 데이터와 나머지 차량 데이터들을 비교하는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  14. 청구항 13에 있어서,
    상기 차량 데이터들에 대한 검증을 수행하는 단계는,
    상기 프로세서가 상기 차량 데이터들을 시각화하여 출력하는 단계를 더 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  15. 청구항 13에 있어서,
    상기 차량 데이터들에 대한 검증을 수행하는 단계는,
    상기 프로세서가 상기 차량 데이터들에 대한 유효성 검사를 수행하는 단계를 더 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  16. 청구항 11에 있어서,
    상기 적어도 하나의 차량 데이터 세트를 입력 받는 단계는,
    상기 프로세서가 사용자에 의해 정의된 검토 규칙을 입력 받는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  17. 청구항 16에 있어서,
    상기 차량 데이터들에 대한 검증을 수행하는 단계는,
    상기 프로세서가 상기 검토 규칙에 기반하여 상기 차량 데이터들을 검토하는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  18. 청구항 11에 있어서,
    상기 적어도 하나의 차량 데이터 세트를 입력 받는 단계는,
    상기 프로세서가 고장 진단 표준 정보를 입력 받는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
  19. 청구항 18에 있어서,
    상기 차량 데이터들에 대한 검증을 수행하는 단계는,
    상기 프로세서가 상기 고장 진단 표준 정보를 기반으로 상기 차량 데이터들을 검토하여 새로운 검토 규칙을 생성하는 단계를 포함하는 것을 특징으로 하는 차량 데이터 검증 방법.
KR1020220117348A 2022-09-16 2022-09-16 차량 데이터 검증 장치 및 방법 KR20240038457A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220117348A KR20240038457A (ko) 2022-09-16 2022-09-16 차량 데이터 검증 장치 및 방법
US18/142,875 US20240096149A1 (en) 2022-09-16 2023-05-03 Vehicle data verification apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220117348A KR20240038457A (ko) 2022-09-16 2022-09-16 차량 데이터 검증 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20240038457A true KR20240038457A (ko) 2024-03-25

Family

ID=90244073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220117348A KR20240038457A (ko) 2022-09-16 2022-09-16 차량 데이터 검증 장치 및 방법

Country Status (2)

Country Link
US (1) US20240096149A1 (ko)
KR (1) KR20240038457A (ko)

Also Published As

Publication number Publication date
US20240096149A1 (en) 2024-03-21

Similar Documents

Publication Publication Date Title
US9501596B2 (en) Graphical design verification environment generator
CN101295173B (zh) 可编程控制器的模拟装置
US8694958B1 (en) Marking up objects in code generation
US20080109780A1 (en) Method of and apparatus for optimal placement and validation of i/o blocks within an asic
US20140279810A1 (en) System and method for developing business rules for decision engines
CN107451112B (zh) 表格工具数据检查方法、装置、终端设备及存储介质
CN114860531B (zh) 安全芯片的故障检测方法、装置、电子设备及介质
CN101681245A (zh) 数据可视化
Tierno et al. Open issues for the automotive software testing
CN111400992A (zh) 一种自动化验证装箱布局布线的测试方法及系统
US8347223B2 (en) GUI evaluation system, method, and program for evaluating a text input component
CN111680463A (zh) 一种文件检查方法和装置
US11892935B2 (en) Verification of control coupling and data coupling analysis in software code
KR20240038457A (ko) 차량 데이터 검증 장치 및 방법
CN115599618B (zh) 寄存器动态改配验证方法、装置、存储介质和处理器
CN116302079A (zh) 一种业务数据处理方法、装置、电子设备及存储介质
CN113360388B (zh) 对无人机地面站软件的测试过程进行一体化管理的方法
CN110928761A (zh) 需求链及其应用的系统和方法
CN115934513A (zh) 一种需求分析及测试设计适配方法、装置、设备及介质
JP2010165141A (ja) テキストログからの特定箇所抽出方法およびプログラム
CN112631852B (zh) 宏检查方法、装置、电子设备和计算机可读存储介质
CN113805913A (zh) 软件查询信息管理系统及软件查询信息管理方法
KR101843092B1 (ko) 복수의 보험상품 시스템에 대하여 그 시스템들의 정확성을 순차적으로 검증하는 방법
CN109800155B (zh) 一种基于Probe的QTE联锁应用软件测试方法及装置
JP4397393B2 (ja) モジュラー構造のメッセージを修正する方法および装置