KR102378939B1 - 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 - Google Patents
차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR102378939B1 KR102378939B1 KR1020170083577A KR20170083577A KR102378939B1 KR 102378939 B1 KR102378939 B1 KR 102378939B1 KR 1020170083577 A KR1020170083577 A KR 1020170083577A KR 20170083577 A KR20170083577 A KR 20170083577A KR 102378939 B1 KR102378939 B1 KR 102378939B1
- Authority
- KR
- South Korea
- Prior art keywords
- electronic device
- vehicle
- monitoring
- data
- monitoring result
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/005—Testing of electric installations on transport means
- G01R31/006—Testing of electric installations on transport means on road vehicles, e.g. automobiles or trucks
- G01R31/007—Testing of electric installations on transport means on road vehicles, e.g. automobiles or trucks using microprocessors or computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0736—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
- G06F11/0739—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME 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/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/085—Registering performance data using electronic data carriers
- G07C5/0866—Registering performance data using electronic data carriers the electronic data carrier being a digital video recorder in combination with video camera
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Mechanical Engineering (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Traffic Control Systems (AREA)
Abstract
본 발명은 차량에 탑재된 장치 또는 시스템을 제어하는 복수의 전자 제어 모듈 및 복수의 전자 제어 모듈을 연결하는 캔(CAN) 통신망을 포함하고, 하나의 캔 통신망 점검 메시지를 통해 복수의 전자 제어 모듈의 동작 상태 또는 고장 여부를 확인할 수 있는 차량용 전자 제어 모듈의 점검 장치를 제공할 수 있다.
Description
본 발명은 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치에 관한 것으로, 더욱 상세하게는 차량 내 전기전자 장치들의 동작을 감시하고, 문제가 발생하는 경우 용이하게 복원할 수 있는 제어 방법과 장치에 관한 것이다.
차량 기술의 발전에 따라 차량에는 여러 가지 전자장치들이 탑재되어 있다. 차량에 탑재된 전자장치에는 차량의 주행을 제어하기 위한 모듈뿐만 아니라 차량의 운전자 또는 탑승자에게 편의성을 제공하기 위한 모듈도 포함될 수 있다. 예를 들어, 차량의 주행에 관련한 전자 제어 모듈은 차량에 탑재된 여러 장치 또는 시스템을 제어할 수 있다. 전자 제어 모듈의 예로는 엔진 제어 모듈(Electric Control Unit, ECU), 전송 제어 모듈(Transmission Control Unit, TCU), 에어백 제어 모듈(Airbag Control Unit, ACU), 안티 록 브레이크 시스템 모듈(Antilock Braking System, ABS), 계측기 및 드라이버 정보 모듈(INST) 등이 있을 수 있다. 또한, 운전자 또는 탑승자에게 편의성을 제공하는 모듈로는 오디오 장치, 라디오 장치, 비디오 장치 등을 포함할 수 있는 멀티 미디어 장치와 음성 인식, 핸즈 프리 등을 지원하는 장치 등이 차량에 탑재될 수 있다.
차량에 탑재된 전자장치에서, 예기치 못한 오류가 발생하는 경우, 해당 프로세스 또는 해당 동작을 초기화하여 다시 수행하는 것이 일반적이다. 하지만, 사용자의 요구에 대응하여 정보 또는 편의성을 제공하는 전자장치의 프로세스를 초기화하여 다시 수행하는 경우, 운전자, 탑승자 또는 사용자는 불편함을 느낄 수 있다.
본 발명은 차량 내 전자 장치 중 제어 신호 또는 데이터를 심리스(seamless)하게 입출력하고 가공하는 프로세스를 수행하는 전자 장치에 한하여, 해당 프로세스 또는 해당 프로세스의 출력 데이터를 감시하는 별도의 프로세스와 감시 결과를 일시 저장하는 저장소를 통하여, 프로세스가 충돌 또는 오작동 등의 경우 감시 결과를 이용하여 해당 프로세스를 복원 또는 복구할 수 있는 방법 및 장치를 제공할 수 있다.
또한, 본 발명은 차량에 탑재된 컴퓨팅 장치 내 제어 신호 또는 데이터를 심리스(seamless)하게 입출력하고 가공하는 프로세스가 충돌 또는 오작동할 경우, 해당 프로세스를 중지하고 초기화하는 방법을 통해 복원 또는 복구할 필요 없이, 준비된 감시 결과를 이용하여 복원 또는 복구함으로써 사용자가 해당 프로세스가 충돌 또는 오작동인 상황을 인지하지 못하게 함으로써, 컴퓨팅 장치의 신뢰도가 향상될 수 있는 방법 및 장치를 제공할 수 있다.
또한, 본 발명은 전술한 방법과 장치를 적용하여, 차량에 탑재된 멀티미디어 시스템에서 음성 데이터와 이미지 데이터 간에 동기화가 되지 않아 사용자가 불편함을 느끼는 경우에 초기화 동작 없이 동기화를 제어하거나, 차량에 탑재된 블랙박스에서 저장하는 이미지의 양을 실시간으로 조절하여 동일한 저장 공간에 보다 긴 시간 동안의 이미지를 저장하는 데에 적용할 수 있다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 차량용 전자 제어 장치는 차량에 탑재되어 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하기 위한 적어도 하나의 전자 장치; 및 상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하고, 상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 모니터링 장치를 포함하고, 상기 전자 장치는 상기 모니터링 장치에서 제공하는 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있다.
또한, 상기 기 설정된 주기는 상기 전자 장치가 제공하는 상기 정보 또는 데이터의 특성에 따라 달라질 수 있다.
또한, 상기 전자 장치가 출력하는 상기 정보 또는 데이터가 음성 데이터인 경우, 상기 기 설정된 주기는 40ms(밀리초) 이하일 수 있다.
또한, 상기 전자 장치가 내비게이션 장치인 경우, 상기 기 설정된 주기는 상기 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작을 수 있다.
또한, 상기 전자 장치가 차량용 블랙박스인 경우, 상기 기 설정된 주기는 상기 차량이 주행 중인지 정차/주차 중인지에 따라 달라질 수 있다.
또한, 상기 모니터링 장치는 상기 상태 로그가 업데이트되면, 상기 기 설정된 주기에 관계없이 상기 감시 결과를 수집하여 저장할 수 있다.
또한, 상기 적어도 하나의 전자 장치와 상기 모니터링 장치는 프로세스들간의 상호 자료와 정보 교환하는 통신 방법으로 공유 메모리를 사용하거나 메시지 전달하는 방식의 프로세스간 통신(inter-process communication, IPC)을 통해 상기 상태 로그 및 상기 감시 결과를 전달할 수 있다.
또한, 상기 모니터링 장치는 상기 상태 로그 및 상기 감시 결과를 저장하는 상태 저장부; 상기 감시 결과에 근거하여 상기 전자 장치를 동작시키는 제어부; 및 상기 전자 장치로부터 상기 심리스 컴퓨팅에 문제가 발생하였음을 수신하면 상기 상태 저장부에 저장된 상기 감시 결과를 상기 제어부로 전달하는 판단부를 포함할 수 있다.
또한, 상기 전자 장치가 음성 데이터를 출력하는 오디오 드라이버(audio driver) 및 상기 음성 데이터의 싱크(sync)를 제어할 수 있는 어플리케이션 프로세서(application processor, AP)를 포함하고, 상기 모니터링 장치는 상기 어플리케이션 프로세서 및 상기 오디오 드라이버의 동작을 감지하여 언더런(underrun)을 감지하고, 상기 언더런의 시작 시점부터 종료 시점까지의 시간을 기록한 후, 상기 어플리케이션 프로세서가 기록된 상기 시간만큼 보상시키도록 할 수 있다.
또한, 상기 전자 장치가 영상 데이터를 출력하는 비디오 드라이버(video driver)를 더 포함하고, 상기 모니터링 장치는 상기 어플리케이션 프로세서를 통해 상기 시간에 대응하는 비디오 데이터를 출력장치에 전송하거나 차단하도록 상기 비디오 드라이버를 제어할 수 있다.
또한, 상기 전자 장치는 차량용 블랙 박스 카메라를 포함하고, 상기 모니터링 장치는 상기 차량이 주차 또는 정차 중이라고 판단되면 상기 차량용 블랙 박스 카메라를 통해 수집되는 영상 내 기 설정된 객체 패턴이 존재하는지 이동하는지를 판단하여 상기 영상의 보존 여부를 결정할 수 있다.
또한, 상기 기 설정된 객체 패턴은 사람 또는 차량의 형상을 포함할 수 있다.
또한, 상기 모니터링 장치는 상기 영상 내에 상기 기 설정된 객체 패턴이 존재한다고 판단되면, 해당 영역을 관심 영역으로 지정하고, 상기 차량용 블랙 박스 카메라를 통해 상기 영상 중 상기 관심 영역 내 데이터만 지속적으로 저장시키고, 상기 영상 중 상기 관심 영역 외 데이터는 저장시키지 않을 수 있다.
또한, 상기 모니터링 장치는 상기 기 설정된 패턴을 상기 영상을 통해 습득되는 객체 정보를 바탕으로 업데이트할 수 있다.
본 발명의 다른 실시예에 따른 차량용 전자 장치의 제어 방법은 차량에 탑재된 적어도 하나의 전자 장치를 통해 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하는 차량에 있어서, 상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하는 단계; 및 상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 단계를 포함하고, 상기 전자 장치를 통해 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있다.
또한, 상기 기 설정된 주기는 상기 전자 장치가 제공하는 상기 정보 또는 데이터의 특성에 따라 달라질 수 있다.
또한, 상기 전자 장치가 출력하는 상기 정보 또는 데이터가 음성 데이터인 경우, 상기 기 설정된 주기는 40ms(밀리초) 이하일 수 있다.
또한, 상기 전자 장치가 내비게이션 장치인 경우, 상기 기 설정된 주기는 상기 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작을 수 있다.
또한, 상기 전자 장치가 차량용 블랙박스인 경우, 상기 기 설정된 주기는 상기 차량이 주행 중인지 정차/주차 중인지에 따라 달라질 수 있다.
또한, 상기 감시 결과를 저장하는 단계는 상기 상태 로그가 업데이트되면, 상기 기 설정된 주기에 관계없이 상기 감시 결과를 수집하여 저장하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따른 컴퓨터 판독 가능한 기록매체는 프로세서에 의해 실행되는 것을 통하여, 전술한 차량용 전자 장치의 제어 방법을 실현하는 것을 특징으로 하는 응용 프로그램이 기록될 수 있다.
본 발명의 다른 실시예에 따른 전자 제어 모듈은 차량에 탑재되어 차량 내 장치 또는 시스템을 제어하기 위해 적어도 하나의 프로세서와 컴퓨터 프로그램이 저장된 적어도 하나의 메모리 장치를 포함하는 프로세싱 시스템을 포함하고, 상기 프로세싱 시스템은 상기 차량에 탑재되어 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하기 위한 적어도 하나의 전자 장치와 연동하고, 상기 프로세싱 시스템은 상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하는 단계; 및 상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 단계를 수행하도록 하며, 상기 전자 장치를 통해 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있다.
또한, 상기 프로세싱 시스템과 상기 적어도 하나의 전자 장치는 프로세스들간의 상호 자료와 정보 교환하는 통신 방법으로 공유 메모리를 사용하거나 메시지 전달하는 방식의 프로세스간 통신(inter-process communication, IPC)을 통해 상기 상태 로그 및 상기 감시 결과를 전달할 수 있다.
또한, 상기 전자 장치가 음성 데이터를 출력하는 오디오 드라이버(audio driver) 및 상기 음성 데이터의 싱크(sync)를 제어할 수 있는 어플리케이션 프로세서(application processor, AP)를 포함하고, 상기 프로세싱 시스템은 상기 오디오 드라이버의 동작을 감지하여 언더런(underrun)을 감지하고, 상기 언더런의 시작 시점부터 종료 시점까지의 시간을 기록한 후, 상기 어플리케이션 프로세서가 기록된 상기 시간만큼 보상시키도록 할 수 있다.
또한, 상기 전자 장치가 영상 데이터를 출력하는 비디오 드라이버(video driver)를 더 포함하고, 상기 프로세싱 시스템은 상기 어플리케이션 프로세서를 통해 상기 시간에 대응하는 비디오 데이터를 출력장치에 전송하거나 차단하도록 상기 비디오 드라이버를 제어할 수 있다.
또한, 상기 전자 장치는 차량용 블랙 박스 카메라를 포함하고, 상기 프로세싱 시스템은 상기 차량이 주차 또는 정차 중이라고 판단되면 상기 차량용 블랙 박스 카메라를 통해 수집되는 영상 내 기 설정된 객체 패턴이 존재하는지 이동하는지를 판단하여 상기 영상의 보존 여부를 결정할 수 있다.
또한, 상기 기 설정된 객체 패턴은 사람 또는 차량의 형상을 포함할 수 있다.
또한, 상기 프로세싱 시스템은 상기 영상 내에 상기 기 설정된 객체 패턴이 존재한다고 판단되면, 해당 영역을 관심 영역으로 지정하고, 상기 차량용 블랙 박스 카메라를 통해 상기 영상 중 상기 관심 영역 내 데이터만 지속적으로 저장시키고, 상기 영상 중 상기 관심 영역 외 데이터는 저장시키지 않을 수 있다.
또한, 상기 프로세싱 시스템은 상기 전자 장치에서 수행되는 적어도 하나의 프로세스와 각 프로세스에 포함된 적어도 하나의 트랜잭션이 완료될 때마다 그 결과를 감시하고 저장할 수 있다.
상기 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명에 따른 장치에 대한 효과에 대해 설명하면 다음과 같다.
본 발명은 차량 내 탑재된 전자 장치의 동작에 대한 사용자 또는 운전자의 신뢰도를 향상시킬 수 있다.
또한, 본 발명은 차량 내 탑재된 전자 장치의 충돌, 오동작 등을 빠른 시간 내에 복구 또는 복원할 수 있다.
또한, 본 발명은 차량 내 탑재된 컴퓨팅 장치의 자원을 보다 효율적으로 사용할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
이하에 첨부되는 도면들은 본 발명에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 본 발명에 대한 실시예들을 제공한다. 다만, 본 발명의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시예로 구성될 수 있다.
도1은 심리스(seamless) 컴퓨팅을 지원하는 차량에 탑재된 전자 장치를 감시하고 제어할 수 있는 모니터링 장치를 설명한다.
도2는 차량에 탑재된 전자 장치를 감시하는 방법과 전자 장치의 동작을 복원하는 방법을 설명한다.
도3은 차량에 탑재된 오디오 장치와 오디오 장치를 감시하는 방법을 설명한다.
도4는 차량용 블랙박스와 차량용 블랙박스를 감시하는 방법을 설명한다.
도5는 차량용 전자 장치의 제어 방법을 설명한다.
도1은 심리스(seamless) 컴퓨팅을 지원하는 차량에 탑재된 전자 장치를 감시하고 제어할 수 있는 모니터링 장치를 설명한다.
도2는 차량에 탑재된 전자 장치를 감시하는 방법과 전자 장치의 동작을 복원하는 방법을 설명한다.
도3은 차량에 탑재된 오디오 장치와 오디오 장치를 감시하는 방법을 설명한다.
도4는 차량용 블랙박스와 차량용 블랙박스를 감시하는 방법을 설명한다.
도5는 차량용 전자 장치의 제어 방법을 설명한다.
이하, 본 발명의 실시예들이 적용되는 장치 및 다양한 방법들에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
실시예의 설명에 있어서, 각 구성 요소의 "상(위) 또는 하(아래)"에 형성되는 것으로 기재되는 경우에 있어, 상(위) 또는 하(아래)는 두 개의 구성 요소들이 서로 직접 접촉되거나 하나 이상의 또 다른 구성 요소가 두 개의 구성 요소들 사이에 배치되어 형성되는 것을 모두 포함한다. 또한, "상(위) 또는 하(아래)"으로 표현되는 경우 하나의 구성 요소를 기준으로 위쪽 방향뿐만 아니라 아래쪽 방향의 의미도 포함할 수 있다.
제어 신호 또는 데이터를 심리스(seamless)하게 입출력하고 가공하는 프로세스를 수행하는 전자 장치 또는 컴퓨팅 장치는 전자 장치 또는 컴퓨팅 장치가 연속적으로 데이터를 입출력하고 가공한다는 의미가 아니라, 사용자의 관점에서 이음새(seam)가 없이 서비스, 데이터 등이 제공되고 있는 것을 특징으로 한다. 예를 들어, 복수의 장치를 통해 제공될 수 있는 경우, 사용자가 어떤 애플리케이션을 사용할 때 그 애플리케이션이 퍼스널 컴퓨터(PC)를 통한 것인지, 전용 단말기를 사용하는 것인지, 웹인지, 실제 그 환경이 어떻게 달라지는지 느끼지 못할 정도로 언제 어디서나 "똑같은 환경"을 느끼며 사용할 수 있도록 하여 사용자가 다른 장치 혹은 애플리케이션을 사용하게 될 때 같은 일을 할 때 다른 무언가를 사용하고 그러기 위해 별도의 무언가를 인식해야 할 필요가 없도록 하자는 것이다. 말 그대로 이 환경과 저 환경에 이음새가 필요치 않도록 하는 것이다.
도1은 심리스(seamless) 컴퓨팅을 지원하는 차량에 탑재된 전자 장치를 감시하고 제어할 수 있는 모니터링 장치를 설명한다.
도시된 바와 같이, 차량에는 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하기 위한 적어도 하나의 전자 장치(20)가 탑재될 수 있다. 차량에 탑재된 전자 장치 중에서도 적어도 일부는 심리스 컴퓨팅(seamless computing)을 수행할 필요가 있다. 차량의 운전자 또는 사용자는 주행 중 주행 안전을 위한 정보 또는 주행 중 편의를 위한 정보 들을 심리스하게 제공받는 경우 차량 내에서 편안함과 안락함을 느낄 수 있다. 만약 차량에 탑재된 전자 장치 들을 통해 제공받는 정보가 이음새(seam)가 있는 경우, 운전자 또는 사용자는 불편함을 느끼게 된다. 예를 들어, 차량에 탑재된 내비게이션 장치의 경우 주행 안내를 하는 도중 GPS 신호가 정확하지 않을 경우 경로를 재탐색하는 동작을 수행한다. 내비게이션 장치의 경로 재탐색과 같은 동작은 이음새(seam)의 대표적인 예일 수 있다. 사용자는 내비게이션 장치가 경로를 재탐색할 때부터 재탐색된 경로를 제공하는 시점까지 불편함 또는 불안함을 느낄 수 있다.
심리스 컴퓨팅이 필요한 또 다른 예로는 멀티미디어 장치가 있다. 멀티미디어 장치의 경우, 사용자가 접하는 오디오(음성) 데이터는 이음새(seam)가 없어야 한다. 멀티미디어 장치가 실제 오디오 또는 비디오 데이터를 가공하는 것은 연속적이지 않을 수 있더라도, 사용자에게 제공되는 오디오 또는 비디오 데이터는 이음새가 없이 제공되어야 사용자 또는 운전자의 만족도가 높아진다.
또한, 차량에는 적어도 하나의 전자 장치(20)의 상태 로그 또는 기 설정된 주기에 따라 전자 장치(20)의 동작을 감시하여 감시 결과를 저장하고, 전자 장치(20)의 동작이 비정상적인 경우 저장된 감시 결과를 전자 장치(20)에 제공하는 모니터링 장치(50)가 탑재될 수 있다. 모니터링 장치(50)와 연동하는 전자 장치(20)는 모니터링 장치(50)에서 제공하는 감시 결과로부터 심리스 컴퓨팅을 수행할 수 있다.
모니터링 장치(50)가 전자 장치(20)를 감시하는 기 설정된 주기는 전자 장치(20)가 사용자에게 제공하는 정보 또는 데이터의 특성에 따라 달라질 수 있다. 예를 들어, 전자 장치(20)가 출력하는 정보 또는 데이터가 음성 데이터인 경우, 기 설정된 주기는 40ms(밀리초) 이하일 수 있다.
한편, 전자 장치(20)가 내비게이션 장치인 경우, 기 설정된 주기는 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작을 수 있다.
또한, 모니터링 장치(50)는 전자 장치(20)의 상태 로그가 업데이트되거나 전자 장치(20)에서 이벤트가 발생하여 해당 내용이 모니터링 장치(50)로 전달되면, 모니터링 장치(50)는 기 설정된 주기에 관계없이 해당 이벤트 또는 상태 로그에 대응하여 감시 결과를 수집하고 저장할 수 있다.
예를 들어, 모니터링 장치(50)는 전자 장치(20)로부터 전달된 상태 로그 및 감시 결과를 저장하는 상태 저장부(52), 감시 결과에 근거하여 전자 장치(20)를 동작시키는 제어부(56), 및 전자 장치(20)로부터 심리스 컴퓨팅에 문제가 발생하였음을 수신하면 상태 저장부(52)에 저장된 감시 결과를 제어부(56)로 전달하는 판단부(54)를 포함할 수 있다.
적어도 하나의 전자 장치(20)와 모니터링 장치(50)는 프로세스들간의 상호 자료와 정보 교환하는 통신 방법으로 공유 메모리를 사용하거나 메시지 전달하는 방식의 프로세스간 통신(inter-process communication, IPC)을 통해 상태 로그 및 감시 결과를 전달할 수 있다.
예를 들어, 전자 장치(20)와 모니터링 장치(50)가 공유 메모리를 사용하는 경우, 공유 메모리는 상태 저장부(52)의 기능을 포함할 수 있다. 전자 장치(20)는 상태 로그 및 동작 결과를 공유 메모리에 저장하고, 모니터링 장치(50)는 저장된 상태 로그 및 동작 결과를 전자 장치(20)에 피드백할 수 있다.
전자 장치(20)와 모니터링 장치(50)가 메시지를 전달하는 방식으로 상태 로그 및 감시 결과를 전달하는 경우, 차량 내부 통신망을 이용하거나, 컴퓨팅 장치 내 보드에서 제공되는 버스(bus)를 통해 전달할 수 있다.
한편, 실시예에 따라, 모니터링 장치(50)는 복수의 전자 장치(20)와 연동할 수도 있고, 하나의 전자 장치(20)에 하나의 모니터링 장치(50)가 배치될 수도 있다. 또한, 모니터링 장치(50)와 전자 장치(20)는 하나의 보드에 구현될 수도 있다.
도2는 차량에 탑재된 전자 장치를 감시하는 방법과 전자 장치의 동작을 복원하는 방법을 설명한다.
구체적으로, 도2의 (a)는 전자 장치(20)에서 심리스 컴퓨팅을 통해 정상적인 동작을 수행하는 경우, 모니터링 장치(50)에서 상태 로그와 감시 결과를 저장하는 과정을 설명한다.
전자 장치(20)는 심리스 컴퓨팅을 통해 사용자에게 데이터 혹은 정보들을 제공할 수 있다. 심리스 컴퓨팅을 위해, 전자 장치(20)는 적어도 하나의 프로세스(Process #1, Process #2) 등을 수행할 수 있다. 여기서 전자 장치(20)에서 수행되는 적어도 하나의 프로세스는 기 설정된 시간 간격을 두고 수행될 수도 있고, 서로 중첩되어 수행될 수도 있고, 연속적으로 수행될 수도 있다. 전자 장치(20)에서 수행되는 각각의 프로세스로 인해 상태 로그가 변경되는 경우, 전자 장치(20)는 상태 로그의 변경을 모니터링 장치(Process health monitor, 50)에 전달할 수 있다. 또한, 모니터링 장치(50)는 전자 장치(20)가 특정 정보를 전달하지 않더라도, 주기적으로 전자 장치(20)의 동작과 프로세스의 상태를 감시하여 해당 정보를 저장할 수 있다.
도2의 (b)는 전자 장치(20) 내 프로세스가 충돌(crash)하여 문제가 발생하였을 때 모니터링 장치(50)가 해당 문제를 인지하는 과정을 설명한다. 전자 장치(20)에서 수행되는 프로세스 중 적어도 하나에서 문제가 발생할 수 있다. 예를 들어, 전자 장치(20)에서 수행되는 제1프로세스(Process #1)는 정상적으로 동작하고 있고, 제2프로세스(Process #2)가 동작 중 충돌(crash)가 발생했다고 가정할 수 있다. 이때, 제2프로세스(Process #2)에서 발생한 충돌은 모니터링 장치(50)로 전달될 수 있다(crash notification). 여기서, 충돌(crash)은 프로세스가 정상적으로 수행되지 못하는 경우에 대한 예로서, 프로세스가 정상적으로 수행되지 않는 모든 경우에 대해 전자 장치(20)는 모니터링 장치(50)에 해당 정보를 전달할 수 있다.
또한, 모니터링 장치(50)는 전자 장치(20)의 심리스 컴퓨팅을 지원하기 위해, 제2프로세스(Process #2)에서 발생한 충돌에 대한 정보를 제1프로세스(Process #1)에 전달할 수 있다. 이를 통해 제1프로세스(Process #1)는 제2프로세스(Process #2)의 상태를 인지할 수 있고, 전자 장치(20)가 제2프로세스(Process #2)의 충돌을 반영하여 사용자에게 제공하는 심리스 컴퓨팅이 지속될 수 있도록 유지할 수 있다.
도2의 (c)는 모니터링 장치(50)가 감시 결과를 피드백하여 전자 장치(20)가 심리스 컴퓨팅을 정상적으로 수행할 수 있도록 하는 과정을 설명한다. 전자 장치(20)에서 수행되던 제2프로세스(Process #2)가 충돌했음을 인지한 모니터링 장치(50)는 제2프로세스(Process #2)가 충돌하기 전까지, 모니터링 장치(50)가 수집한 감시 결과와 제2프로세스(Process #2)의 재시작, 복구, 또는 복원을 위한 제어 신호 등을 전자 장치(20)에 전달할 수 있다.
종래에는 전자 장치에서 수행되는 프로세스 내 충돌(crash)이 발생한 후 해당 프로세스의 재 동작 시 기존 동작 상태 정보가 없는 상태로 새롭게 시작하는 것이 일반적이고, 전자 장치를 사용하는 사용자는 프로세스의 실행 결과가 표시되는 화면 상에서 변화(예, 블루 스크린 등)가 발생하는 것을 보고 프로세스 내 충돌(crash)이 발생했음을 알 수 있다. 화면 상에서 변화는 사용자의 불편함을 초래할 수 있다.
심리스 컴퓨팅을 지원하기 위해, 전자 장치(20)와 연동하는 모니터링 장치(50)는 전자 장치(20)에서 생성되는 각각의 프로세서와 프로세서의 상태를 저장할 수 있다. 모니터링 장치(50)는 전자 장치(20) 내에서 수행되는 프로세스의 상태기록, 재시동, 충돌(crash) 등의 내용을 다른 프로세서에 전달할 수 있다.
특히, 모니터링 장치(50)는 전자 장치(20)에서 수행되는 것으로 등록된 프로세스 중 적어도 하나에서 충돌(crash) 발생 시, 충돌이 발생한 프로세스와 관련한 또는 관심을 두는 다른 프로세스들에게 충돌 상황을 알릴 수 있다. 여기서, 관련된 또는 관심을 두는 프로세스는 사용자에게 심리스 컴퓨팅을 제공하기 위해 전자 장치(20) 내에서 상호 연동하여 수행되는 프로세스 들을 포함할 수 있다. 충돌이 발생한 프로세스가 다시 정상적으로 수행되기 전까지, 관련된 또는 관심을 두는 다른 프로세스들은 사용자에게 심리스 컴퓨팅을 제공할 수 있다. 그 동안, 모니터링 장치(50)는 충돌이 발생하기 전까지 해당 프로세스와 관련하여 저장된 감시 결과, 상태 로그 등을 전자 장치(20)에 피드백하여 프로세스가 다시 정상적으로 수행하도록 할 수 있다. 만약, 피드백된 정보와 데이터를 바탕으로 충돌된 프로세스가 정상적으로 수행되면, 모니터링 장치(50)는 해당 프로세스가 정상적으로 수행되고 있음을 관련된 또는 관심을 두는 다른 프로세스에 전달할 수 있다.
전자 장치(20)에서 실행되는 프로세스의 상태(Status)는 하나 이상의 트랜잭션(transaction) 처리를 통해 변경될 수 있다. 여기서, 트랜잭션(transaction)은 컴퓨팅 장치가 수행해야 할 일련의 연산의 묶음으로 이해할 수 있다. 프로세스가 특정 트랜잭션을 완료하면, 다음 예정된 트랜잭션을 수행할 수 있다. 모니터링 장치(50)는 하나 이상의 트랜잭션들을 기록하고 복원하는 역할을 수행하여 해당 프로세스가 충돌 등의 이유로 정상적으로 실행되지 않더라도 충돌되기 전 마지막 상태로의 복원을 가능하게 할 수 있다.
통상적으로, 컴퓨팅 장치 내 프로세스가 수행하는 트랜잭션이 정상적으로 진행되지 않을 경우, 롤백(Rollback) 기능을 통해 해당 트랜잭션을 다시 수행할 수 있다. 하지만, 롤백(Rollback) 기능은 프로세스가 정상적으로 수행될 수 있는 경우에 시도될 수 있는 것으로, 프로세스가 충돌 등의 이유로 정상 수행이 불가능한 경우에는 롤백 기능을 사용하기 어렵다. 본 발명에서는 이러한 경우에도 모니터링 장치(50)가 프로세스 내 상태 정보를 가지고 있기 때문에 프로세스를 정상화시킬 수 있고 사용자에게 프로세스의 복원, 복구, 또는 재시동 등의 과정을 노출시키지 않을 수 있다.
한편, 실시예에 따라, 모니터링 장치(50)는 다른 프로세스와 동일한 중앙처리장치(CPU) 혹은 차량에 탑재된 다른 중앙처리장치(예, micom, DSP, secure world 등)에 존재할 수 있다.
또한, 심리스(Seamless)한 복구를 위해서 모니터링 장치(50)는 전자 장치(20) 내에서 실행되는 각각의 프로세스의 주요 화면 천이 시 화면을 구성하는 요소(component)들에 대한 여러 상황 정보(context)를 주기적으로 전달 받을 수 있다. 모니터링 장치(50)는 프로세스가 충돌할 수 있는 상황을 고려하여 주기적으로 주요 화면 천이 이후에는 사용자에게 노출되는 화면에 대한 정보를 저장할 수 있다. 이를 통해, 전자 장치(20)에서 수행되는 특정 프로세스에서 충돌이 발생하더라도 모니터링 장치(50)는 해당 프로세스를 통해 사용자에게 제공되는 정보에 대응하여 이미 저장해 놓은 마지막 화면을 화면을 통해 제공할 수 있다.
모니터링 장치(50)는 프로세스가 복원, 복구 또는 재시동할 수 있도록 감시 결과를 제공할 수 있을 뿐만 아니라, 프로세스가 복원, 복구 또는 재시동되는 동안 사용자에게 보여지는 화면을 통해 출력되는 내용을 유지시킬 수 있다. 이를 통해, 전자 장치(20)를 사용하는 사용자는 전자 장치(20)에서 실행되는 프로세스에 충돌이 발생하였는지를 인지하지 못할 수 있다. 이를 통해, 모니터링 장치(50)는 차량에 탑재된 전자 장치(20)에 대한 사용자의 신뢰도를 높일 수 있다.
도3은 차량에 탑재된 오디오 장치와 오디오 장치를 감시하는 방법을 설명한다.
먼저, 도3의 (a)는 어플리케이션 프로세서(12)와 오디오 코덱(14) 간의 연동과정에서 모니터링 장치(미도시)를 이용한 피드백을 설명하다.
어플리케이션 프로세서(12)는 고성능 연산 장치(CPU core)를 바탕으로 멀티미디어 등의 관련된 기능을 통합해 놓은 것일 수 있고, 오디오 코덱(14)은 어플리케이션 프로세서/마이크 등으로부터 들어온 데이터를 신호 처리(예, ADC, DAC, EQ 등) 후 결과를 스피커, 헤드셋, 어플리케이션 프로세서로 출력할 수 있는 것일 수 있다. 어플리케이션 프로세서(12)와 오디오 코덱(14)은 디지털 오디오 장치에 표준 통신법으로 사용되는 I2S(Inter-IC Sound, or Integrated Interchip Sound)를 통해 서로 연결될 수 있다.
사용자에게 끊기지 않는(seamless) 음원, 즉 연속적인 소리 정보를 제공하기 위해서 차량에 탑재된 어플리케이션 프로세서(12)는 적어도 하나의 프로세스를 수행할 수 있다. 만약 어플리케이션 프로세서(12)에서 수행되는 프로세스에 충돌이 발생하는 경우, 모니터링 장치(미도시)를 통해 어플리케이션 프로세서(12)에서 오디오 코덱(14)으로 전달하는 정보를 피드백하여 어플리케이션 프로세서(12)가 피드백된 정보를 바탕으로 프로세스를 복원, 복구, 또는 재가동할 수 있다.
또한, 도3의 (b)는 어플리케이션 프로세서(12), 싱크 처리부(16) 및 증폭부(18) 간의 연동 과정에서 모니터링 장치(미도시)를 통한 피드백을 설명한다. 비디오 데이터와 동기시켜 사용자에게 출력되어야 하는 오디오 데이터의 경우, 어플리케이션 프로세서(12)에서 싱크 처리부(16)를 통해 출력단인 증폭부(18)로 전달될 수 있다. 만약 내부 프로세스의 문제로 인해 오디오 데이터가 비디오 데이터와 동기화되지 못하면 사용자는 영상과 함께 제공되는 음성이 어긋남을 인지할 수 있다. 이를 방지하기 위해서는 어플리케이션 프로세서(12) 및 싱크 처리부(16)에서 출력되는 정보를 피드백하여, 오디오 데이터의 신호 처리의 속도를 높이거나 줄이는 방법을 통해 오디오 데이터가 비디오 데이터와 동기화되어 사용자에게 전달될 수 있도록 할 수 있다. 도시되지 않았지만, 모니터링 장치(미도시)를 통해 어플리케이션 프로세서(12) 및 싱크 처리부(16)에서 출력되는 정보를 피드백할 수 있다.
예를 들어, 차량에 탑재된 전자 장치가 음성 데이터를 출력하는 오디오 드라이버(audio driver) 및 음성 데이터의 싱크(sync)를 제어할 수 있는 어플리케이션 프로세서(application processor, AP)를 포함할 수 있다. 전자 장치와 연동하는 모니터링 장치는 어플리케이션 프로세서 및 오디오 드라이버의 동작을 감지하여 언더런(underrun)을 감지할 수 있다. 모니터링 장치는 언더런의 시작 시점부터 종료 시점까지의 시간을 기록한 후, 어플리케이션 프로세서가 기록된 시간만큼 보상시켜 음성 데이터를 출력하도록 제어할 수 있다.
또한, 차량에 탑재된 전자 장치가 영상 데이터를 출력하는 비디오 드라이버(video driver)를 더 포함할 수 있다. 이 경우, 모니터링 장치는 어플리케이션 프로세서를 통해 음성 데이터의 싱크를 조절하거나, 시간에 대응하는 비디오 데이터를 출력장치에 전송하거나 차단하도록 비디오 드라이버를 제어할 수 있다.
통상적으로, 전자 장치 내 어플리케이션 프로세서가 오디오 데이터를 전달하면, 해당 오디오 데이터는 출력단을 거쳐 사용자에게 전달되었다고 가정하고, 오디오 데이터와 비디오 데이터의 싱크를 조절할 수 있다. 하지만, 오디오 또는 비디오 데이터를 처리하는 시간이 늘어나는 경우, 오디오 데이터와 비디오 데이터가 동기화되지 못하고 어긋날 수 있다. 만약, 오디오 또는 비디오 데이터를 처리하는 시간이 조금씩 차이가 나서, 누적된 시간이 약 40ms(밀리초)에 이르면, 사용자는 오디오 데이터와 비디오 데이터가 동기화되지 않고 있음을 인지할 수 있다. 따라서, 오디오 또는 비디오 데이터를 처리하는 시간에 차이가 발생함을 모니터링 장치를 통해 감지하면, 누적된 차이가 40ms에 이르기 전에 모니터링 장치가 시간 차이를 어플리케이션 프로세서에 전달할 수 있다. 어플리케이션 프로세서가 해당 시간을 보상하면, 사용자는 오디오 또는 비디오 데이터의 처리 시간이 달라 어긋날 수도 있었던 상황을 인지하지 못하고 전자 장치가 정상적으로 작동한다고 느낄 수 있다.
전술한 바와 같이, 모니터링 장치는 오디오 또는 비디오 데이터의 처리 과정을 감시하여, 사용자가 인지할 수 있는 정도의 시간 차이가 발생하기 전에 오디오 및 비디오 데이터의 처리 과정에서 발생하는 시간 차이를 조정해 갈 수 있다. 예를 들어, 오디오 또는 비디오 데이터의 처리 과정에서 발생한 시간 차이를 보상하기 위해, 어플리케이션 프로세서에서 수행되는 오디오 또는 비디오 데이터의 처리를 위한 프로세스의 우선 순위를 높이거나 낮추는 방법을 통해 시간 차이를 조정할 수 있다.
도4는 차량용 블랙박스와 차량용 블랙박스를 감시하는 방법을 설명한다.
도시된 바와 같이, 차량에 탑재된 전자 장치는 차량용 블랙 박스 카메라(26)를 포함할 수 있다. 차량용 블랙 박스 카메라(26)는 모니터링 장치(50)와 연동할 수 있으며, 모니터링 장치(50)는 차량의 상태정보를 전달받을 수 있다. 여기서, 차량의 상태정보는 차량이 주행 중인지, 정차 중인지, 주차 중인지 같은 것을 포함할 수 있다. 차량용 블랙박스 카메라(26)와 연동하는 모니터링 장치(50)가 감시하는 기 설정된 주기는 차량이 주행 중인지 정차/주차 중인지에 따라 달라질 수 있다.
모니터링 장치(50)는 차량이 주차 또는 정차 중이라고 판단되면 차량용 블랙 박스 카메라(26)를 통해 수집되는 영상 내 기 설정된 객체 패턴이 존재하는지 이동하는지를 판단하여 영상의 보존 여부를 결정할 수 있다.
구체적으로, 차량이 주차 중인 경우를 가정한다. 주차 중인 차량에 탑재된 차량용 블랙 박스 카메라(26)가 획득할 수 있는 영상 정보(60)에는 주차장 구분선(64)과 차량(66) 등이 포함될 수 있다. 이때, 영상 정보(60)는 기 설정된 패턴(예, 차량 형상(66))이 포함되는 영역(62a)과 그렇지 않은 영역(62b)으로 구분될 수 있다. 설명의 편의를 위해 중심에 설정된 가상의 점선을 통해 영상 정보(60)를 두 구역으로 구분한다.
모니터링 장치(50)는 영상 정보(60) 내에 기 설정된 객체 패턴(예, 66)이 존재한다고 판단되면, 해당 영역(62a)을 관심 영역(Region Of Interest, ROI)으로 지정하고, 차량용 블랙 박스 카메라(26)를 통해 영상 정보(60) 중 관심 영역(62a) 내 데이터만 지속적으로 저장시키고, 영상 정보(60) 중 관심 영역 외(62b) 데이터는 저장시키지 않을 수 있다. 즉, 관심 영역의 영상 정보는 계속 수집되어 저장되지만, 관심 영역이 아닌 영역의 영상 정보는 수집되지 않고 초기에 수집된 영상으로 대체될 수 있다. 이를 통해, 주차 중인 차량에서 수집되는 영상 정보(60)의 크기(양)을 줄일 수 있다. 단위 시간 당 수집 저장되는 영상 정보(60)의 크기가 작으면 작을수록, 기 설정된 저장 공간을 사용하는 차량용 블랙 박스 카메라(26)가 수집할 수 있는 영상 시간은 더욱 증가할 수 있다.
한편, 실시예에 따라, 효율성을 높이기 위해 영상의 한 화면 내 포함되는 관심 영역을 더 작게 만들 수도 있고, 더 크게 만들 수도 있다. 관심 영역이 작을수록 시간 당 저장하는 영상 데이터의 크기는 작아지고, 관심 영역이 커질수록 시간당 저장하는 영상 데이터의 크기가 커질 수 있다.
모니터링 장치(50)가 영상 정보(60) 내에서 인지할 수 있는 기 설정된 객체 패턴은 사람 또는 차량의 형상을 포함할 수 있다. 이는 실시예에 따라 달라질 수 있다. 또한, 모니터링 장치(50)는 기 설정된 패턴을 영상 정보(60)를 통해 습득되는 객체 정보를 바탕으로 업데이트할 수 있다. 이를 통해 모니터링 장치(50)가 인지하는 객체의 정확성이 높아질 수 있다.
차량용 블랙박스 카메라(26)는 영상 저장 시 이미지 센서로부터 입력되는 프레임 정보(frame data) 모두를 압축하여 저장하는 것이 일반적이다. 하지만, 차량이 주행 중인 경우와 달리, 정차 또는 주차 시에 차량용 블랙박스 카메라(26)가 획득하는 이미지, 영상의 화면의 상당부분은 고정되어 있을 수 있다. 예를 들어, 화면 내 보행자, 차량 등의 객체는 화면상에서 변화하나 배경은 크게 변하지 않을 수 있다. 배경의 변화 유무를 판단하여 변화가 없을 시 배경의 저장을 생략하고, 배경 내 특정 영역만 변화발생 시 특정영역을 관심 영역으로 선정하여 해당 영역만 저장하면 시간당 저장할 필요가 있는 데이터의 양이 크게 줄어들 수 있다.
만약 화면상에서 객체가 커질 경우, 관심 영역의 크기를 크게 하여 저장할 수 있고, 저장된 영상 정보를 재생하는 경우 배경과 관심 영역에 대한 데이터를 합성하여 사용자에게 전달할 수 있어, 사용자는 저장된 영상 정보를 확인하는 데 어려움이 없을 수 있다.
전술한 바와 같이, 차량용 블랙박스 카메라(26)와 연동하는 모니터링 장치(50)가 정차 또는 주차 시에 저장되는 영상 데이터를 조정함으로써, 저장장치 내 기억 소자(예, NAND flash)의 쓰기(erase/write) 횟수를 줄여 저장장치의 수명 향상이 가능하며 보다 적은 데이터를 기록하기에 더 긴 시간의 영상을 저장할 수 있다.
모니터링 장치(50)가 설정할 수 있는 관심 영역은 영상 정보 내 사람 혹은 차량 등 관심 (미리 등록된) 객체가 포함되는 사각형의 영역으로 선정할 수 있다. 차량용 블랙박스 카메라(26)가 획득하는 영상 데이터, 즉 각 프레임(frame)의 시간 내 객체 인식을 수행해야 하기에, 전체 영상 정보에서 관심 영역을 찾으려 하지 않고 산발적 영역(예, Logarithmic search 등 사용) 내에서 관심 객체에 대한 패턴을 찾으려고 시도할 수 있다. 또한, 객체를 제대로 찾는 경우에 그렇지 못한 경우에 대한 학습을 통해 점진적으로 객체 발견 확률을 높일 수 있다. 이를 통해 차량용 블랙박스 카메라가 영상을 획득하는 과정이 심리스(seamless)하게 진행될 수 있다.
도5는 차량용 전자 장치의 제어 방법을 설명한다.
도시된 바와 같이, 차량용 전자 장치의 제어 방법은 차량에 탑재된 적어도 하나의 전자 장치를 통해 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하는 단계(32), 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 전자 장치의 동작을 감시하여 감시 결과를 저장하는 단계(34), 전자 장치의 동작이 비정상적인 경우 감시 결과를 전자 장치에 제공하는 단계(36), 전자 장치를 통해 감시 결과로부터 심리스 컴퓨팅을 수행할 수 있는 단계(38)를 포함할 수 있다.
차량용 전자 장치의 제어 방법에서, 전자 장치를 감시하는 기 설정된 주기는 전자 장치가 제공하는 정보 또는 데이터의 특성에 따라 달라질 수 있다. 예를 들어, 전자 장치가 출력하는 정보 또는 데이터가 음성 데이터인 경우, 기 설정된 주기는 40ms(밀리초) 이하일 수 있다. 또한, 전자 장치가 내비게이션 장치인 경우, 기 설정된 주기는 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작을 수 있다. 또한, 전자 장치가 차량용 블랙박스인 경우, 기 설정된 주기는 차량이 주행 중인지 정차/주차 중인지에 따라 달라질 수 있다. 전자 장치에서 수행되는 적어도 하나의 프로세스와 각 프로세스에 포함된 적어도 하나의 트랜잭션의 수, 크기, 실행 시간 등에 차이가 있지만, 매 트랜잭션(transaction)이 완료(commit)될 때마다 그 결과를 감시하고 저장할 수 있다.
또한, 차량용 전자 장치의 제어 방법에서 감시 결과를 저장하는 단계(34)는 상태 로그가 업데이트되면, 기 설정된 주기에 관계없이 감시 결과를 수집하여 저장하는 단계(미도시)를 포함할 수 있다.
상술한 실시예에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 포함된다.
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상술한 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다.
따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
20: 전자 장치
50: 모니터링 장치
12: 어플리케이션 프로세서
50: 모니터링 장치
12: 어플리케이션 프로세서
Claims (29)
- 차량에 탑재되어 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하기 위한 적어도 하나의 전자 장치; 및
상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하고, 상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 모니터링 장치를 포함하고,
상기 전자 장치는 상기 모니터링 장치에서 제공하는 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 기 설정된 주기는 상기 전자 장치가 제공하는 상기 정보 또는 데이터의 특성에 따라 달라지는, 차량용 전자 제어 장치. - 제2항에 있어서,
상기 전자 장치가 출력하는 상기 정보 또는 데이터가 음성 데이터인 경우, 상기 기 설정된 주기는 40ms(밀리초) 이하인, 차량용 전자 제어 장치. - 제2항에 있어서,
상기 전자 장치가 내비게이션 장치인 경우, 상기 기 설정된 주기는 상기 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작은, 차량용 전자 제어 장치. - 제2항에 있어서,
상기 전자 장치가 차량용 블랙박스인 경우, 상기 기 설정된 주기는 상기 차량이 주행 중인지 정차/주차 중인지에 따라 달라지는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 모니터링 장치는 상기 상태 로그가 업데이트되면, 상기 기 설정된 주기에 관계없이 상기 감시 결과를 수집하여 저장하는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 적어도 하나의 전자 장치와 상기 모니터링 장치는 프로세스들간의 상호 자료와 정보 교환하는 통신 방법으로 공유 메모리를 사용하거나 메시지 전달하는 방식의 프로세스간 통신(inter-process communication, IPC)을 통해 상기 상태 로그 및 상기 감시 결과를 전달하는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 모니터링 장치는
상기 상태 로그 및 상기 감시 결과를 저장하는 상태 저장부;
상기 감시 결과에 근거하여 상기 전자 장치를 동작시키는 제어부; 및
상기 전자 장치로부터 상기 심리스 컴퓨팅에 문제가 발생하였음을 수신하면 상기 상태 저장부에 저장된 상기 감시 결과를 상기 제어부로 전달하는 판단부
를 포함하는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 전자 장치가 음성 데이터를 출력하는 오디오 드라이버(audio driver) 및 상기 음성 데이터의 싱크(sync)를 제어할 수 있는 어플리케이션 프로세서(application processor, AP)를 포함하고,
상기 모니터링 장치는 상기 어플리케이션 프로세서 및 상기 오디오 드라이버의 동작을 감지하여 언더런(underrun)을 감지하고, 상기 언더런의 시작 시점부터 종료 시점까지의 시간을 기록한 후, 상기 어플리케이션 프로세서가 기록된 상기 시간만큼 보상시키도록 하는, 차량용 전자 제어 장치. - 제9항에 있어서,
상기 전자 장치가 영상 데이터를 출력하는 비디오 드라이버(video driver)를 더 포함하고,
상기 모니터링 장치는 상기 어플리케이션 프로세서를 통해 상기 시간에 대응하는 비디오 데이터를 출력장치에 전송하거나 차단하도록 상기 비디오 드라이버를 제어하는, 차량용 전자 제어 장치. - 제1항에 있어서,
상기 전자 장치는 차량용 블랙 박스 카메라를 포함하고,
상기 모니터링 장치는 상기 차량이 주차 또는 정차 중이라고 판단되면 상기 차량용 블랙 박스 카메라를 통해 수집되는 영상 내 기 설정된 객체 패턴이 존재하는지 이동하는지를 판단하여 상기 영상의 보존 여부를 결정하는, 차량용 전자 제어 장치. - 제11항에 있어서,
상기 기 설정된 객체 패턴은 사람 또는 차량의 형상을 포함하는, 차량용 전자 제어 장치. - 제11항에 있어서,
상기 모니터링 장치는 상기 영상 내에 상기 기 설정된 객체 패턴이 존재한다고 판단되면, 해당 영역을 관심 영역으로 지정하고, 상기 차량용 블랙 박스 카메라를 통해 상기 영상 중 상기 관심 영역 내 데이터만 지속적으로 저장시키고, 상기 영상 중 상기 관심 영역 외 데이터는 저장시키지 않는, 차량용 전자 제어 장치. - 제11항에 있어서,
상기 모니터링 장치는 상기 기 설정된 패턴을 상기 영상을 통해 습득되는 객체 정보를 바탕으로 업데이트하는, 차량용 전자 제어 장치. - 차량에 탑재된 적어도 하나의 전자 장치를 통해 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하는 차량에 있어서,
상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하는 단계; 및
상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 단계를 포함하고,
상기 전자 장치를 통해 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있는, 차량용 전자 장치의 제어 방법. - 제15항에 있어서,
상기 기 설정된 주기는 상기 전자 장치가 제공하는 상기 정보 또는 데이터의 특성에 따라 달라지는, 차량용 전자 장치의 제어 방법. - 제16항에 있어서,
상기 전자 장치가 출력하는 상기 정보 또는 데이터가 음성 데이터인 경우, 상기 기 설정된 주기는 40ms(밀리초) 이하인, 차량용 전자 장치의 제어 방법. - 제16항에 있어서,
상기 전자 장치가 내비게이션 장치인 경우, 상기 기 설정된 주기는 상기 내비게이션 장치에 사용자가 설정한 교통정보 업데이트 주기보다 작은, 차량용 전자 장치의 제어 방법. - 제16항에 있어서,
상기 전자 장치가 차량용 블랙박스인 경우, 상기 기 설정된 주기는 상기 차량이 주행 중인지 정차/주차 중인지에 따라 달라지는, 차량용 전자 장치의 제어 방법. - 제15항에 있어서,
상기 감시 결과를 저장하는 단계는
상기 상태 로그가 업데이트되면, 상기 기 설정된 주기에 관계없이 상기 감시 결과를 수집하여 저장하는 단계를 포함하는, 차량용 전자 장치의 제어 방법. - 프로세서에 의해 실행되는 것을 통하여, 청구항 제15항 내지 제20항 중 어느 한 항에 기재된 차량용 전자 장치의 제어 방법을 실현하는 것을 특징으로 하는 응용 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
- 차량에 탑재되어 차량 내 장치 또는 시스템을 제어하기 위해 적어도 하나의 프로세서와 컴퓨터 프로그램이 저장된 적어도 하나의 메모리 장치를 포함하는 프로세싱 시스템을 포함하는 전자 제어 모듈에 있어서,
상기 프로세싱 시스템은 상기 차량에 탑재되어 심리스 컴퓨팅(seamless)을 통한 정보 또는 데이터를 제공하기 위한 적어도 하나의 전자 장치와 연동하고,
상기 프로세싱 시스템은
상기 전자 장치의 상태 로그 또는 기 설정된 주기에 따라 상기 전자 장치의 동작을 감시하여 감시 결과를 저장하는 단계; 및
상기 전자 장치의 동작이 비정상적인 경우 상기 감시 결과를 상기 전자 장치에 제공하는 단계를 수행하도록 하며,
상기 전자 장치를 통해 상기 감시 결과로부터 상기 심리스 컴퓨팅을 수행할 수 있는, 전자 제어 모듈. - 제22항에 있어서,
상기 프로세싱 시스템과 상기 적어도 하나의 전자 장치는 프로세스들간의 상호 자료와 정보 교환하는 통신 방법으로 공유 메모리를 사용하거나 메시지 전달하는 방식의 프로세스간 통신(inter-process communication, IPC)을 통해 상기 상태 로그 및 상기 감시 결과를 전달하는, 전자 제어 모듈. - 제22항에 있어서,
상기 전자 장치가 음성 데이터를 출력하는 오디오 드라이버(audio driver) 및 상기 음성 데이터의 싱크(sync)를 제어할 수 있는 어플리케이션 프로세서(application processor, AP)를 포함하고,
상기 프로세싱 시스템은 상기 오디오 드라이버의 동작을 감지하여 언더런(underrun)을 감지하고, 상기 언더런의 시작 시점부터 종료 시점까지의 시간을 기록한 후, 상기 어플리케이션 프로세서가 기록된 상기 시간만큼 보상시키도록 하는, 전자 제어 모듈. - 제24항에 있어서,
상기 전자 장치가 영상 데이터를 출력하는 비디오 드라이버(video driver)를 더 포함하고,
상기 프로세싱 시스템은 상기 어플리케이션 프로세서를 통해 상기 시간에 대응하는 비디오 데이터를 출력장치에 전송하거나 차단하도록 상기 비디오 드라이버를 제어하는, 전자 제어 모듈. - 제22항에 있어서,
상기 전자 장치는 차량용 블랙 박스 카메라를 포함하고,
상기 프로세싱 시스템은 상기 차량이 주차 또는 정차 중이라고 판단되면 상기 차량용 블랙 박스 카메라를 통해 수집되는 영상 내 기 설정된 객체 패턴이 존재하는지 이동하는지를 판단하여 상기 영상의 보존 여부를 결정하는, 전자 제어 모듈. - 제26항에 있어서,
상기 기 설정된 객체 패턴은 사람 또는 차량의 형상을 포함하는, 전자 제어 모듈. - 제26항에 있어서,
상기 프로세싱 시스템은 상기 영상 내에 상기 기 설정된 객체 패턴이 존재한다고 판단되면, 해당 영역을 관심 영역으로 지정하고, 상기 차량용 블랙 박스 카메라를 통해 상기 영상 중 상기 관심 영역 내 데이터만 지속적으로 저장시키고, 상기 영상 중 상기 관심 영역 외 데이터는 저장시키지 않는, 전자 제어 모듈. - 제22항에 있어서,
상기 프로세싱 시스템은 상기 전자 장치에서 수행되는 적어도 하나의 프로세스와 각 프로세스에 포함된 적어도 하나의 트랜잭션이 완료될 때마다 그 결과를 감시하고 저장할 수 있는, 전자 제어 모듈.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170083577A KR102378939B1 (ko) | 2017-06-30 | 2017-06-30 | 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170083577A KR102378939B1 (ko) | 2017-06-30 | 2017-06-30 | 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190003094A KR20190003094A (ko) | 2019-01-09 |
KR102378939B1 true KR102378939B1 (ko) | 2022-03-25 |
Family
ID=65017161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170083577A KR102378939B1 (ko) | 2017-06-30 | 2017-06-30 | 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102378939B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102535293B1 (ko) * | 2020-06-17 | 2023-05-22 | 구효정 | 차량의 외부 디스플레이를 이용한 디지털 지능화 정보 공유 기반의 광고 시스템 및 방법 |
CN115794550B (zh) * | 2022-11-23 | 2024-04-02 | 广州汽车集团股份有限公司 | 进程管理方法、装置、交通工具以及存储介质 |
KR102705894B1 (ko) * | 2023-11-03 | 2024-09-12 | 주식회사 마바산업 | 차량의 광고 출력 제어 시스템 및 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101421065B1 (ko) | 2013-04-23 | 2014-07-21 | (주)아이트로닉스 | 차량용 블랙박스 |
KR101551904B1 (ko) | 2014-03-06 | 2015-09-09 | 재단법인 다차원 스마트 아이티 융합시스템 연구단 | 저장 공간을 절약하는 차량용 블랙박스의 제어방법 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11230764A (ja) * | 1998-02-10 | 1999-08-27 | Sony Corp | 多機能ナビゲーション装置 |
KR20070030004A (ko) * | 2005-09-12 | 2007-03-15 | 엘지전자 주식회사 | 카 네비게이션 정보 제공방법 |
KR20070062445A (ko) | 2005-12-12 | 2007-06-15 | (주)디디오넷 | 다중 스레드 기반의 어플리케이션 시스템에서 소프트웨어오류 처리 방법 |
KR20140038793A (ko) * | 2012-09-21 | 2014-03-31 | 주식회사엔스케치 | 자가 진단 기능을 구비하는 차량용 블랙박스 장치 |
-
2017
- 2017-06-30 KR KR1020170083577A patent/KR102378939B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101421065B1 (ko) | 2013-04-23 | 2014-07-21 | (주)아이트로닉스 | 차량용 블랙박스 |
KR101551904B1 (ko) | 2014-03-06 | 2015-09-09 | 재단법인 다차원 스마트 아이티 융합시스템 연구단 | 저장 공간을 절약하는 차량용 블랙박스의 제어방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20190003094A (ko) | 2019-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102378939B1 (ko) | 차량 내 전자 장치의 동작을 감시하거나 복원하기 위한 방법 및 장치 | |
US20180345980A1 (en) | Driver monitoring system | |
US9900389B2 (en) | Information processing apparatus and execution management program | |
CN104581355A (zh) | 用于自主车辆媒体控制的系统和方法 | |
US10286781B2 (en) | Method for the automatic execution of at least one driving function of a motor vehicle | |
WO2021212504A1 (zh) | 车辆和车舱域控制器 | |
CN111694433A (zh) | 语音交互的方法、装置、电子设备及存储介质 | |
CN110278277A (zh) | 用于实现车载信息娱乐功能的系统 | |
CN111532281A (zh) | 驾驶行为的监测方法、装置、终端及存储介质 | |
US20220309916A1 (en) | Server, server control method, server control program, vehicle, vehicle control method, and vehicle control program | |
TWM592840U (zh) | 用以映射智慧型手機功能之可攜式車載觸控螢幕裝置 | |
CN111142655A (zh) | 交互方法、终端及计算机可读存储介质 | |
US20220073019A1 (en) | Vehicle device | |
KR102124197B1 (ko) | 이동 단말기를 이용한 차량 인포테인먼트 장치의 제어 시스템 및 그 동작 방법 | |
CN114089811A (zh) | 一种数据处理方法、装置、设备以及存储介质 | |
US11734967B2 (en) | Information processing device, information processing method and program | |
CN111475233A (zh) | 信息获取方法、图形码生成方法以及装置 | |
CN115079819A (zh) | 一种基于手势的智能座舱控制方法及系统 | |
CN112061132A (zh) | 驾驶辅助方法和驾驶辅助装置 | |
US20230162514A1 (en) | Intelligent recommendation method, vehicle-mounted device, and storage medium | |
US20240059303A1 (en) | Hybrid rule engine for vehicle automation | |
JP7377883B2 (ja) | 端末装置、情報処理方法及び端末装置用プログラム | |
JP2023128911A (ja) | 車両情報提供装置 | |
US20240282157A1 (en) | Information processing device | |
US8977550B2 (en) | Information providing apparatus and information providing method |
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 |