KR20230090398A - Autonomous driving computing platform based on redundant architecture - Google Patents

Autonomous driving computing platform based on redundant architecture Download PDF

Info

Publication number
KR20230090398A
KR20230090398A KR1020210178442A KR20210178442A KR20230090398A KR 20230090398 A KR20230090398 A KR 20230090398A KR 1020210178442 A KR1020210178442 A KR 1020210178442A KR 20210178442 A KR20210178442 A KR 20210178442A KR 20230090398 A KR20230090398 A KR 20230090398A
Authority
KR
South Korea
Prior art keywords
processor
autonomous driving
sensors
control
unit
Prior art date
Application number
KR1020210178442A
Other languages
Korean (ko)
Other versions
KR102656802B1 (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 KR1020210178442A priority Critical patent/KR102656802B1/en
Publication of KR20230090398A publication Critical patent/KR20230090398A/en
Application granted granted Critical
Publication of KR102656802B1 publication Critical patent/KR102656802B1/en

Links

Images

Classifications

    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • B60W60/0016Planning or execution of driving tasks specially adapted for safety of the vehicle or its occupants
    • 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
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • 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
    • 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/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • 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
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • 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
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0022Gains, weighting coefficients or weighting functions
    • 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
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • 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
    • 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/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/408Radar; Laser, e.g. lidar
    • B60W2420/42
    • B60W2420/52

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Traffic Control Systems (AREA)

Abstract

본 개시는 이중화 구조에 기반한 자율주행 제어 시스템을 제공한다. 이 시스템은, 자율주행 차량의 주변 환경에 관한 정보를 감지하도록 구성되는 복수의 센서를 포함하고, 자율 주행 차량의 메인 제어권을 보유하며, 복수의 센서로부터 수신되는 신호를 처리하여 자율 주행 차량의 제어에 사용되는 제1 제어 신호 세트를 생성하도록 구성되는 제1 프로세서 및 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 차량의 주변 환경을 감지하도록 구성되는 제2 프로세서를 포함하며, 제1 프로세서에 의한 동작 오류가 감지된 경우, 제1 프로세서는 제2 프로세서로 메인 제어권을 이전하여, 제2 프로세서가 제1 제어 신호 세트를 생성하도록 재구성된다.The present disclosure provides an autonomous driving control system based on a redundant structure. This system includes a plurality of sensors configured to sense information about the surrounding environment of the autonomous vehicle, holds the main control right of the autonomous vehicle, and controls the autonomous vehicle by processing signals received from the plurality of sensors. A first processor configured to generate a first set of control signals used in the vehicle and a second processor configured to sense the surrounding environment of the vehicle by processing signals received from at least some of the plurality of sensors, wherein the first processor When an operation error is detected, the first processor transfers the main control right to the second processor, and the second processor is reconfigured to generate the first set of control signals.

Description

이중화 구조 기반 자율주행 컴퓨팅 플랫폼{AUTONOMOUS DRIVING COMPUTING PLATFORM BASED ON REDUNDANT ARCHITECTURE}Autonomous driving computing platform based on redundant structure {AUTONOMOUS DRIVING COMPUTING PLATFORM BASED ON REDUNDANT ARCHITECTURE}

본 개시는 이중화 구조 기반 자율주행 컴퓨팅 플랫폼에 관한 것으로, 보다 상세하게는, 자율주행 제어를 위해 이중화된 복수의 프로세서 또는 시스템을 포함하는 이중화 구조를 제공함으로써, 자율주행 제어와 관련된 다양한 결함 또는 동작 오류에 효과적으로 대응 하여 자율주행 제어의 안전성과 신뢰성을 제공할 수 있는 자율주행 컴퓨팅 플랫폼에 관한 것이다.The present disclosure relates to a self-driving computing platform based on a redundant structure, and more particularly, by providing a redundant structure including a plurality of redundant processors or systems for self-driving control, various defects or operation errors related to self-driving control. It is about an autonomous driving computing platform that can effectively respond to autonomous driving control and provide safety and reliability.

자율주행 시스템은 신뢰성 있는 주행 및 안전보장을 위해 복수의 이종 센서들, 복수의 전력공급장치 또는 복수의 컴퓨팅 컴포넌트들을 사용할 수 있다. 예를 들어, 복수의 컴퓨팅 컴포넌트들(또는 프로세서들)이 동일한 센싱 데이터를 처리하여 자율주행 제어 신호들을 생성하는 경우, 자율주행 제어 신호들을 비교함으로써 동작 오류가 발생한 프로세서를 감지하고, 이에 대한 적절한 대응 절차를 실행함으로써 보다 신뢰성 있는 자율 주행을 구현할 수 있다. 또한, 효과적이고 안정적으로 자율 주행차를 운용하기 위해 다양한 소프트웨어 및 하드웨어의 보강이 이루어지고 있다.An autonomous driving system may use a plurality of heterogeneous sensors, a plurality of power supplies, or a plurality of computing components to ensure reliable driving and safety. For example, when a plurality of computing components (or processors) process the same sensing data to generate self-driving control signals, a processor with an operating error is detected by comparing the self-driving control signals, and an appropriate response is made. By executing the procedure, more reliable autonomous driving can be implemented. In addition, various software and hardware reinforcements are being made to operate autonomous vehicles effectively and stably.

또한, 자율주행 시스템의 안전에 관한 신뢰성을 높이기 위해, 중복 기능을 동시에 수행하는 복수의 프로세서 및 백업 프로세서를 구비할 수 있다. 그러나 이러한 다중화 구조의 자율주행 시스템은 고성능, 고안전성의 장점을 갖는 반면, 복수의 프로세서가 동일한 제어 기능을 수행함으로써 높은 전력이 소모되는 단점이 존재한다. 특히, 자율주행 시스템은, 주변 환경 인식 및 이에 기초한 자율주행 제어 신호의 생성을 위해 GPU와 같은 고성능의 프로세서를 이용한 이미지분석 등을 수행하기 때문에, 많은 연산량이 필요하고, 이는 높은 전력소모로 이어진다. In addition, in order to increase the reliability of the safety of the autonomous driving system, a plurality of processors and backup processors that simultaneously perform redundant functions may be provided. However, while such an autonomous driving system having a multiplexing structure has advantages of high performance and high safety, there is a disadvantage of high power consumption because a plurality of processors perform the same control function. In particular, since the autonomous driving system performs image analysis using a high-performance processor such as a GPU to recognize the surrounding environment and generate an autonomous driving control signal based thereon, a large amount of computation is required, which leads to high power consumption.

일반적으로 자율주행 시스템은 전기차에 적용되는데, 자율주행 제어에 필요한 많은 연산량에 따른 전력소모가 전기차의 연비에 직접적으로 영향을 미친다. 전기차에 사용되는 배터리 용량이 일정 수준 한계가 있는 상황에서, 전력 효율을 높이는 동시에 안전성과 신뢰도를 개선할 수 있는 방법이 아직 제공되지 못하고 있다. In general, autonomous driving systems are applied to electric vehicles, and power consumption according to the amount of computation required for autonomous driving control directly affects the fuel efficiency of electric vehicles. In a situation where the capacity of batteries used in electric vehicles is limited to a certain level, a method for improving safety and reliability at the same time as increasing power efficiency has not yet been provided.

본 개시는, 이상 설명한 종래의 자율주행 시스템의 문제를 해결하기 위해, 이중화 구조 기반 자율주행 컴퓨팅 플랫폼을 이용한 자율주행 시스템의 구성 및 운용 방법을 제공한다.The present disclosure provides a method for configuring and operating an autonomous driving system using a dual structure-based autonomous driving computing platform in order to solve the problems of the conventional autonomous driving system described above.

본 개시의 일 실시예에 따르면, 이중화 구조에 기반한 자율주행 제어 시스템은, 자율주행 차량의 주변 환경에 관한 정보를 감지하도록 구성되는 복수의 센서를 포함하고, 자율 주행 차량의 메인 제어권을 보유하며, 복수의 센서로부터 수신되는 신호를 처리하여 자율 주행 차량의 제어에 사용되는 제1 제어 신호 세트를 생성하도록 구성되는 제1 프로세서 및, 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 차량의 주변 환경을 감지하도록 구성되는 제2 프로세서를 포함하며, 제1 프로세서에 의한 동작 오류가 감지된 경우, 제1 프로세서는 제2 프로세서로 메인 제어권을 이전하여, 제2 프로세서가 제1 제어 신호 세트를 생성하도록 재구성된다.According to an embodiment of the present disclosure, an autonomous driving control system based on a redundant structure includes a plurality of sensors configured to detect information about the surrounding environment of an autonomous vehicle, and holds a main control right of the autonomous vehicle, A first processor configured to process signals received from a plurality of sensors to generate a first set of control signals used to control an autonomous vehicle; and a second processor configured to detect, and when an operation error by the first processor is detected, the first processor transfers the main control right to the second processor so that the second processor generates a first set of control signals. is reconstructed

일 실시예에 따르면, 자율주행 제어 시스템은, 자율주행 제어 시스템 상의 동작 오류와 관련된 복수의 패턴 정보를 저장하는 메모리를 더 포함하며, 제1 프로세서 또는 제1 프로세서와 연관된 주변 장치의 동작 패턴이 메모리에 저장된 복수의 패턴 정보 중 적어도 하나와 동일 또는 유사한 경우, 제1 프로세서의 동작 오류가 발생한 것으로 판단한다.According to an embodiment, the autonomous driving control system further includes a memory for storing a plurality of pattern information related to an operation error on the autonomous driving control system, and an operation pattern of a first processor or a peripheral device associated with the first processor is stored in the memory. If it is the same as or similar to at least one of the plurality of pattern information stored in , it is determined that an operation error of the first processor has occurred.

일 실시예에 따르면, 복수의 패턴 정보는, EMI 또는 EMC 동작 오류 패턴, 온도 오류 패턴, 프로세서 오류 패턴, 전력 오류 패턴, 메모리 CRC 오류 패턴, 메모리 비트 오류 패턴 중 적어도 하나를 포함한다.According to an embodiment, the plurality of pattern information includes at least one of an EMI or EMC operation error pattern, a temperature error pattern, a processor error pattern, a power error pattern, a memory CRC error pattern, and a memory bit error pattern.

일 실시예에 따르면, 자율주행 제어 시스템에서 메인 제어권을 이전 받은 제2 프로세서는, 감지된 주변 환경에 따라 제1 제어 신호 세트 중 적어도 일부를 생성하도록 재구성된다.According to an embodiment, the second processor to which the main control right is transferred in the autonomous driving control system is reconfigured to generate at least a part of the first set of control signals according to the detected surrounding environment.

일 실시예에 따르면, 자율주행 제어 시스템에서 메인 제어권을 이전 받은 제2 프로세서는, 감지된 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우 복수의 센서로부터 수신되는 신호에 상이한 센서별 가중치를 적용하도록 재구성된다.According to an embodiment, the second processor to which the main control right is transferred in the autonomous driving control system applies different sensor-specific weights to signals received from a plurality of sensors when the sensed surrounding environment requires a different level of autonomous driving control. restructured to

일 실시예에 따르면, 자율주행 제어 시스템에서 메인 제어권을 이전 받은 제2 프로세서는, 감지된 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우 복수의 센서로부터 수신되는 신호에 상이한 연산처리용량의 객체인식 모델을 적용하도록 재구성된다.According to an embodiment, the second processor to which the main control right is transferred in the autonomous driving control system, when the sensed surrounding environment requires a different level of autonomous driving control, responds to signals received from a plurality of sensors as objects having different processing capacities. It is restructured to apply the recognition model.

일 실시예에 따르면, 자율주행 시스템에서 제1 프로세서가 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 제1 제어 신호 세트를 생성하는 동안에, 제2 프로세서는 복수의 센서 중 적어도 일부로부터 수신되는 신호를 독립적으로 처리하여 제어 신호 세트 보다 작은 범위인 제2 제어 신호 세트를 생성한다.According to an embodiment, while a first processor generates a first set of control signals by processing signals received from at least some of a plurality of sensors in an autonomous driving system, a second processor is configured to process signals received from at least some of the plurality of sensors. The signals are independently processed to generate a second set of control signals that are of a smaller range than the set of control signals.

일 실시예에 따르면, 자율주행 제어 시스템에서 복수의 센서는, 라이다(LiDAR) 센서, 레이저 센서, 적외선 센서 및 카메라 중 적어도 하나를 포함한다.According to one embodiment, the plurality of sensors in the autonomous driving control system includes at least one of a LiDAR sensor, a laser sensor, an infrared sensor, and a camera.

본 개시의 다른 실시예에 따르면, 적어도 하나의 프로세서에 의해 실행되는, 이중화 구조에 기반한 자율주행 제어 방법은, 복수의 센서에 의해, 자율주행 차량의 주변 환경에 관한 정보를 감지하는 단계를 포함하고, 자율 주행 차량의 메인 제어권을 보유한 제1 프로세서에 의해, 복수의 센서로부터 수신되는 신호를 처리하여 자율 주행 차량의 제어에 사용되는 제1 제어 신호 세트를 생성하는 단계를 포함하고, 제2 프로세서에 의해, 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 차량의 주변 환경을 감지하는 단계 및, 제1 프로세서에 의한 동작 오류가 감지된 경우, 제1 프로세서에 의해, 제2 프로세서로 메인 제어권을 이전하여, 제2 프로세서가 제1 제어 신호 세트를 생성하도록 재구성하는 단계를 포함한다. According to another embodiment of the present disclosure, an autonomous driving control method based on a redundant structure, executed by at least one processor, includes sensing information about the surrounding environment of an autonomous vehicle by a plurality of sensors, generating a first set of control signals used for controlling the autonomous vehicle by processing signals received from a plurality of sensors by a first processor having a main control right for the autonomous vehicle; detecting the surrounding environment of the vehicle by processing signals received from at least some of the plurality of sensors, and when an operation error by the first processor is detected, the first processor transfers the main control right to the second processor Moving forward, reconfiguring the second processor to generate the first set of control signals.

본 개시의 또 다른 실시예에 따르면, 자율주행 제어 방법을 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 제공된다.According to another embodiment of the present disclosure, a computer program stored in a computer readable recording medium is provided to execute an autonomous driving control method in a computer.

본 개시의 다양한 실시예들에 따르면, 이중화 구조 기반 자율주행 제어 시스템은 결함 리스트(Fault List)에 기초하여 메인 프로세서 오류가 검출되면, 해당 오류에 따른 위험을 최소화하기 위해, 이중화된 복수의 프로세서 사이의 제어권의 전환에 걸리는 시간을 최소한으로 하여, 자율주행의 안전에 관한 신뢰성을 확보할 수 있다.According to various embodiments of the present disclosure, when a main processor error is detected based on a fault list, the redundant structure-based autonomous driving control system between a plurality of redundant processors in order to minimize the risk of the error. Reliability regarding the safety of autonomous driving can be secured by minimizing the time required for switching control rights.

본 개시의 다양한 실시예들에 따르면, 이중화 구조 기반 자율주행 제어 시스템을 운용함에 있어서 주변 상황에 따라, 자율주행 제어에 필요한 특정 센서 세트를 결정함으로써, 메인 프로세서의 결함에 대응하기 위해 대기중인 백업 프로세서에서 소모되는 전력을 효과적으로 감소시킬 수 있다.According to various embodiments of the present disclosure, in operating a redundant structure-based autonomous driving control system, a backup processor on standby to respond to a failure of a main processor by determining a specific sensor set necessary for autonomous driving control according to surrounding conditions. It is possible to effectively reduce the power consumed in

본 개시의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 다른 효과들은 청구범위의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.Effects of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

본 개시의 실시예들은, 이하 설명하는 첨부 도면들을 참조하여 설명될 것이며, 여기서 유사한 참조 번호는 유사한 요소들을 나타내지만, 이에 한정되지는 않는다.
도 1은 본 개시의 일 실시예에 따른 이중화 구조 기반 자율주행 시스템이 자율주행 차량의 도로주행을 제어하는 예시를 나타내는 도면이다.
도 2는 본 개시의 일 실시예에 따른 자율주행 제어 시스템의 구성을 나타내는 블록도이다.
도 3은 본 개시의 일 실시예에 따른 오류 감지부의 구성을 나타내는 블록도이다.
도 4는 본 개시의 일 실시예에 따른 제1 프로세서 및 제2 프로세서의 구성을 나타내는 블록도이다.
도 5는 본 개시의 일 실시예에 따른 이중화 구조 기반 자율주행 제어 방법을 나타내는 흐름도이다.
도 6은 본 개시의 다른 실시예에 따른 이중화 구조 기반 자율주행 제어 방법을 나타내는 흐름도이다.
Embodiments of the present disclosure will be described with reference to the accompanying drawings described below, wherein like reference numbers indicate like elements, but are not limited thereto.
1 is a diagram illustrating an example in which an autonomous driving system based on a dual structure according to an embodiment of the present disclosure controls road driving of an autonomous vehicle.
2 is a block diagram showing the configuration of an autonomous driving control system according to an embodiment of the present disclosure.
3 is a block diagram showing the configuration of an error detection unit according to an embodiment of the present disclosure.
4 is a block diagram illustrating configurations of a first processor and a second processor according to an embodiment of the present disclosure.
5 is a flowchart illustrating an autonomous driving control method based on a redundant structure according to an embodiment of the present disclosure.
6 is a flowchart illustrating an autonomous driving control method based on a redundant structure according to another embodiment of the present disclosure.

이하, 본 개시의 실시를 위한 구체적인 내용을 첨부된 도면을 참조하여 상세히 설명한다. 다만, 이하의 설명에서는 본 개시의 요지를 불필요하게 흐릴 우려가 있는 경우, 널리 알려진 기능이나 구성에 관한 구체적 설명은 생략하기로 한다. Hereinafter, specific details for the implementation of the present disclosure will be described in detail with reference to the accompanying drawings. However, in the following description, if there is a risk of unnecessarily obscuring the gist of the present disclosure, detailed descriptions of well-known functions or configurations will be omitted.

첨부된 도면에서, 동일하거나 대응하는 구성요소에는 동일한 참조부호가 부여되어 있다. 또한, 이하의 실시예들의 설명에 있어서, 동일하거나 대응하는 구성요소를 중복하여 기술하는 것이 생략될 수 있다. 그러나 구성요소에 관한 기술이 생략되어도, 그러한 구성요소가 어떤 실시예에 포함되지 않는 것으로 의도되지는 않는다. In the accompanying drawings, identical or corresponding elements are given the same reference numerals. In addition, in the description of the following embodiments, overlapping descriptions of the same or corresponding components may be omitted. However, omission of a description of a component does not intend that such a component is not included in an embodiment.

개시된 실시예의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것일 뿐이다.Advantages and features of the disclosed embodiments, and methods of achieving them, will become apparent with reference to the following embodiments in conjunction with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below and may be implemented in various different forms, only the present embodiments make the present disclosure complete, and those of ordinary skill in the art to which the present disclosure belongs It is provided only to fully inform the person of the scope of the invention.

본 개시에서 사용되는 용어에 대해 간략히 설명하고, 개시된 실시예에 대해 구체적으로 설명하기로 한다. Terms used in this disclosure will be briefly described, and the disclosed embodiments will be described in detail.

본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 관련 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다. The terminology used in the present disclosure has been selected from general terms that are currently widely used as much as possible while considering functions in the present disclosure, but they may vary depending on the intention or precedent of a person skilled in the related field, the emergence of new technologies, and the like. In addition, in a specific case, there is also a term arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the invention. Therefore, terms used in the present disclosure should be defined based on the meaning of the term and the general content of the present disclosure, not simply the name of the term.

본 개시에서의 단수의 표현은 문맥상 명백하게 단수인 것으로 특정하지 않는 한, 복수의 표현을 포함한다. 또한 복수의 표현은 문맥상 명백하게 복수인 것으로 특정하지 않는 한, 단수의 표현을 포함한다.Expressions in the singular number in this disclosure include plural expressions unless the context clearly dictates that they are singular. Also, plural expressions include singular expressions unless the context clearly specifies that they are plural.

본 개시의 전체에서 어떤 부분이 어떤 구성요소를 '포함'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. In the entirety of the present disclosure, when a certain part is said to 'include' a certain component, it means that it may further include other components, not excluding other components unless otherwise stated.

명세서에서 사용되는 '부' 또는 '모듈'이라는 용어는 소프트웨어 또는 하드웨어 구성요소를 의미하며, '부' 또는 '모듈'은 어떤 역할들을 수행한다. 그렇지만, '부' 또는 '모듈'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부' 또는 '모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서, '부' 또는 '모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 또는 변수들 중 적어도 하나를 포함할 수 있다. 구성요소들과 '부' 또는 '모듈'들은 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부' 또는 '모듈'들로 결합되거나 추가적인 구성요소들과 '부' 또는 '모듈'들로 더 분리될 수 있다.The term 'unit' or 'module' used in the specification means a software or hardware component, and the 'unit' or 'module' performs certain roles. However, 'unit' or 'module' is not meant to be limited to software or hardware. A 'unit' or 'module' may be configured to reside in an addressable storage medium and may be configured to reproduce one or more processors. Thus, as an example, 'unit' or 'module' refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties , procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, or variables. Functions provided within components and 'units' or 'modules' may be combined into a smaller number of components and 'units' or 'modules', or may be combined into additional components and 'units' or 'modules'. can be further separated.

본 개시의 일 실시예에 따르면, '부' 또는 '모듈'은 프로세서 및 메모리로 구현될 수 있다. 용어 "프로세서" 는 범용 프로세서, 중앙 처리 장치 (CPU), 마이크로프로세서, 디지털 신호 프로세서 (DSP), 제어기, 마이크로제어기, 상태 머신 등을 포함하도록 넓게 해석되어야 한다. 몇몇 환경에서는, "프로세서" 는 주문형 반도체 (ASIC), 프로그램가능 로직 디바이스 (PLD), 필드 프로그램가능 게이트 어레이 (FPGA) 등을 지칭할 수도 있다. 용어 "프로세서"는, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들의 조합, DSP 코어와 결합한 하나 이상의 마이크로프로세서들의 조합, 또는 임의의 다른 그러한 구성들의 조합과 같은 처리 디바이스들의 조합을 지칭할 수도 있다.According to one embodiment of the present disclosure, a 'unit' or 'module' may be implemented with a processor and a memory. The term “processor” should be interpreted broadly to include general-purpose processors, central processing units (CPUs), microprocessors, digital signal processors (DSPs), controllers, microcontrollers, state machines, and the like. In some circumstances, “processor” may refer to an application specific integrated circuit (ASIC), programmable logic device (PLD), field programmable gate array (FPGA), or the like. The term "processor" refers to a combination of processing devices, such as, for example, a combination of a DSP and a microprocessor, a combination of a plurality of microprocessors, a combination of one or more microprocessors in conjunction with a DSP core, or any other such configuration. may also refer to

본 개시에서, '시스템'은 하나 이상의 서버, 컴퓨팅 장치, 추천 기능 및/또는 사업성장확률을 예측하는 기능을 실행하는 소프트웨어 모듈 또는 구성요소들, 또는 이들이 결합된 형태를 포함하는 구성을 지칭할 수 있으며, 예를 들어, 하나 이상의 컴퓨팅 장치, 서버 장치, 또는 클라우드 서비스를 제공하는 분산된 컴퓨팅 장치를 지칭할 수 있으나, 이에 한정되는 것은 아니다. 이하 이중화 구조 기반 자율주행 시스템의 실시예들을 설명하는 경우, 시스템은 이중화 기반 자율주행을 구현하는 소프트웨어 구조(software architecture), 운영 체제, 라이브러리, 드라이버 또는 이들과 프로세서, 메모리 등과 같은 하드웨어 모듈의 하나 이상의 구성요소들이 결합된 것을 의미할 수 있다.In the present disclosure, 'system' may refer to a configuration including one or more servers, computing devices, software modules or components that execute a recommendation function and/or a function of predicting business growth probability, or a combination thereof. and, for example, it may refer to one or more computing devices, server devices, or distributed computing devices providing cloud services, but is not limited thereto. Hereinafter, when describing embodiments of a redundant structure-based autonomous driving system, the system includes one or more of a software architecture, an operating system, a library, a driver, or hardware modules such as processors and memories that implement redundancy-based autonomous driving. It may mean that components are combined.

도 1은 본 개시의 일 실시예에 따른 이중화 구조 기반 자율주행 시스템이 자율주행 차량의 도로주행을 제어하는 예시를 나타내는 도면이다.1 is a diagram illustrating an example in which an autonomous driving system based on a dual structure according to an embodiment of the present disclosure controls road driving of an autonomous vehicle.

도 1에 도시된 자율주행 차량(110)은, 자율주행 제어 신호를 생성하는 자율주행 모듈(120)을 포함할 수 있다. 자율주행 모듈(120)은, 복수의 센서로부터 수신되는 신호를 처리하여 자율주행 차량(110)의 제어에 사용되는 제어 신호 세트를 생성하도록 구성되는 메인 블록(Main Block)(이하 '제1 프로세서')(112)과, 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 차량(110)의 주변 환경을 감지하도록 구성되는 쉐도우 블록(Shadow Block)(이하 '제2 프로세서')(124)를 포함할 수 있다. 또한, 자율주행 차량(110)은 카메라(130), 라이다(140), 레이더(150) 등과 같은 복수의 센서를 포함할 수 있으나, 그 구성은 이에 한정되지 않는다. The autonomous vehicle 110 shown in FIG. 1 may include an autonomous driving module 120 generating an autonomous driving control signal. The self-driving module 120 includes a main block (hereinafter referred to as 'first processor') configured to process signals received from a plurality of sensors to generate a set of control signals used for controlling the self-driving vehicle 110. ) 112 and a shadow block (hereinafter referred to as 'second processor') 124 configured to sense the surrounding environment of the vehicle 110 by processing signals received from at least some of the plurality of sensors. can do. In addition, the self-driving vehicle 110 may include a plurality of sensors such as a camera 130, lidar 140, and radar 150, but the configuration is not limited thereto.

자율주행 모듈(120)은 복수의 센서들(130, 140, 150)로부터 수신한 신호(또는 센싱 데이터)를 처리하여 주변 환경 또는 객체 인식을 실행할 수 있다. 도로주행 예시(100)는, 자율주행 모듈(120)이 복수의 센서로부터 수신된 신호에 기초하여 다른 차량(160)을 포함하는 주변 환경 및 객체를 인식하는 예를 도시한다. The self-driving module 120 may process signals (or sensing data) received from the plurality of sensors 130 , 140 , and 150 to perform ambient environment or object recognition. The road driving example 100 shows an example in which the autonomous driving module 120 recognizes an object and a surrounding environment including another vehicle 160 based on signals received from a plurality of sensors.

일 실시예에서, 자율주행 모듈(120)의 메인 블록(제1 프로세서)(122)은 자율주행 차량(110)에 대한 메인 제어권을 보유한다. 메인 제어권을 보유한 메인 블록(122)는 차량(110)에 탑재된 모든 센서(130, 140, 150)로부터 수신된 신호에 기초하여 자율주행의 모든 기능을 실행하거나, 센서(130, 140, 150의 신호에 기초하여 인식된 주변 환경에 따라 자율주행의 일부 기능만을 실행할 수 있다. 예를 들어, 메인 블록(122)은 모든 센서(130, 140, 150)로부터 수신된 신호에 기초하여 고성능의 객체 인식 모델을 이용하여 주변 환경을 인식함으로써, 정밀하고 정확한 자율주행 제어를 실행할 수 있다.In one embodiment, the main block (first processor) 122 of the autonomous driving module 120 holds the main control right for the autonomous vehicle 110 . The main block 122 holding the main control right executes all functions of autonomous driving based on signals received from all sensors 130, 140, and 150 mounted in the vehicle 110, or controls the operation of sensors 130, 140, and 150. Only some functions of autonomous driving may be executed according to the surrounding environment recognized based on the signal For example, the main block 122 performs high-performance object recognition based on signals received from all sensors 130, 140, and 150. Precise and accurate autonomous driving control can be executed by recognizing the surrounding environment using the model.

일 실시예에서, 자율주행 모듈(120)의 쉐도우 블록(제2 프로세서)(124)은 메인 제어권을 보유하지 않은 상태에서 차량의 주변 환경을 감지할 수 있다. 자율주행 모듈(120)이 주변 환경에 따라 상이한 레벨의 자율 주행 제어를 요구하는 경우, 쉐도우 블록(제2 프로세서)(124)는 상이한 연산처리용량의 객체인식 모델 또는 상이한 센서별 가중치를 적용할 수 있다. 예를 들어, 쉐도우 블록(124)는, 주변 환경이 비교적 단순하고 사고 위험성이 낮은 경우 낮은 레벨의 자율주행 제어를 위해, 카메라(130)에 대해서 높은 가중치를 적용하는 반면 다른 센서들(140, 150)에 대해서는 낮은 가중치를 적용할 수 있다. 다른 예에서, 쉐도우 블록(124)는, 주변 환경이 비교적 복잡하고 사고 위험성이 높은 경우 높은 레벨의 자율주행 제어를 위해, 모든 센서(130, 140, 150)에 대해 높은 가중치를 적용할 수 있다. 추가적으로 또는 대안적으로, 쉐도우 블록(제2 프로세서)(124)은 메인 제어권이 없는 상태에서도 메인 블록(제1 프로세서)(122)과 중복되는 최소기능을 실행할 수도 있다. 예를 들어, 쉐도우 블록(124)은 메인 제어권이 없는 상태에서 센서들(140, 150) 중 일부로부터 수신된 신호에 기초하여 낮은 레벨의 자율주행 제어를 실행할 수 있다.In one embodiment, the shadow block (second processor) 124 of the autonomous driving module 120 may sense the surrounding environment of the vehicle without holding the main control right. When the autonomous driving module 120 requests a different level of autonomous driving control according to the surrounding environment, the shadow block (second processor) 124 may apply an object recognition model of different processing capacity or a weight for each sensor. there is. For example, the shadow block 124 applies a high weight to the camera 130 for low-level autonomous driving control when the surrounding environment is relatively simple and the risk of an accident is low, while the other sensors 140 and 150 ), a low weight can be applied. In another example, the shadow block 124 may apply a high weight to all sensors 130, 140, and 150 for a high level of autonomous driving control when the surrounding environment is relatively complex and the risk of an accident is high. Additionally or alternatively, the shadow block (second processor) 124 may execute a minimum function overlapping with the main block (first processor) 122 even in the absence of a main control right. For example, the shadow block 124 may execute low-level autonomous driving control based on signals received from some of the sensors 140 and 150 in a state in which there is no main control right.

일 실시예에서, 쉐도우 블록(제2 프로세서)(124)은 메인 블록(제1 프로세서)(122)의 결함에 대응하기 위해, 메인 블록(제1 프로세서)(122)이 제1 제어 신호 세트를 생성하는 동안에, 메인 블록(제1 프로세서)(122)과 중복되는 최소 자율주행 기능을 실행할 수 있다. 이 때, 쉐도우 블록(제2 프로세서)(124)은 중복되는 최소 자율주행 기능을 수행함에 있어, 메인 블록(제1 프로세서)(122)이 모든 자율주행 기능을 실행하기 위해 생성하는 제어 신호 세트보다 작은 범위의 제어 신호 세트를 생성할 수 있다.In one embodiment, the shadow block (second processor) 124 sends a first set of control signals to the main block (first processor) 122 to respond to defects in the main block (first processor) 122. During creation, a minimum autonomous driving function overlapping with the main block (first processor) 122 may be executed. At this time, the shadow block (second processor) 124 performs the least overlapping self-driving function, than the set of control signals generated by the main block (first processor) 122 to execute all autonomous driving functions. A small range of control signal sets can be generated.

일 실시예에서, 결함 리스트(Fault List)에 기초하여 메인 블록(제1 프로세서)(122)의 오류 패턴을 검출하고, 검출 결과에 따라 결함이 발생한 것으로 판단된 경우, 자율주행 차량(110)의 메인 제어권은 메인 블록(제1 프로세서)(122)에서 쉐도우 블록(제2 프로세서)(124)으로 이전될 수 있다. 제어권을 이양 받은 쉐도우 블록(제2 프로세서)(124)은, 메인 블록(제1 프로세서)(122)이 수행하던 모든 자율주행 기능을 수행하기 위한 제어 신호를 생성하거나, 인식된 주변 환경에 따라 일부 기능을 수행하기 위하 제어 신호를 생성할 수 있다.In one embodiment, an error pattern of the main block (first processor) 122 is detected based on a fault list, and when it is determined that a defect has occurred according to the detection result, the self-driving vehicle 110 The main control right may be transferred from the main block (first processor) 122 to the shadow block (second processor) 124 . The shadow block (second processor) 124 to which control has been transferred generates a control signal for performing all autonomous driving functions performed by the main block (first processor) 122 or, depending on the recognized surrounding environment, generates some control signals. It can generate control signals to perform functions.

일 실시예에서, 결함 리스트의 오류 패턴 정보는, EMI(Electromagnetic Interference), EMC(Electromagnetic Compatibility), 온도, 프로세서, 전력, 메모리 CRC, 메모리 비트 오류 패턴 등을 포함하지만, 이에 한정되지 않는다. 제1 프로세서 또는 제2 프로세서는 결함 리스트를 기반으로 제1 프로세서 또는 제1 프로세서와 연관된 주변 장치의 동작을 모니터링하여 내부 결함을 검출할 수 있다. In one embodiment, the error pattern information of the defect list includes, but is not limited to, electromagnetic interference (EMI), electromagnetic compatibility (EMC), temperature, processor, power, memory CRC, memory bit error pattern, and the like. The first processor or the second processor may detect an internal defect by monitoring an operation of the first processor or a peripheral device associated with the first processor based on the defect list.

상술한 실시예들에 따르면, 이중화된 구조를 갖는 복수의 프로세서를 포함하는 자율주행 제어 시스템에 있어서, 메인 제어권을 가진 프로세서(예를 들어, 제1 프로세서)는 주변 환경의 인식과 이에 기초한 자율주행 제어를 실행하는 동안, 다른 프로세서(예를 들어, 제2 프로세서)는 주변 환경에 대한 인식만을 실행할 수 있다. 이러한 구성에서, 메인 제어권을 가진 제1 프로세서에 결함이 발생된 경우, 제2 프로세서는 주변 환경에 대한 인식을 실행하고 있는 상태이기 때문에, 제1 프로세서로부터 제2 프로세서로 메인 제어권이 이전하면 제2 프로세서는 주변 환경 인식 결과에 기초하여 메인 제어권에 따른 자율주행 제어를 바로 실행할 수 있다. 따라서, 제1 프로세서로부터 제2 프로세서로 메인 제어권이 이전하는 동안에 정상적인 자율주행 제어의 공백기를 최소화하고, 시스템 안정성을 보장할 수 있다. 또한, 제2 프로세서는 메인 제어권이 없는 동안에 주변 환경 인식만을 실행함으로써, 메인 제어권이 없는 동안의 대기 소비전력을 감소시켜 시스템 전체적인 전력소모를 최소화할 수 있다.According to the above-described embodiments, in the autonomous driving control system including a plurality of processors having a dual structure, the processor (eg, the first processor) having the main control right recognizes the surrounding environment and autonomous driving based thereon. While executing control, another processor (eg, a second processor) may only exercise awareness of the surrounding environment. In this configuration, when a defect occurs in the first processor having the main control right, since the second processor is in a state in which the recognition of the surrounding environment is executed, when the main control right is transferred from the first processor to the second processor, the second processor The processor may immediately execute autonomous driving control according to the main control right based on the result of recognizing the surrounding environment. Accordingly, while the main control right is transferred from the first processor to the second processor, a vacuum period of normal autonomous driving control may be minimized and system stability may be ensured. In addition, the second processor can minimize power consumption of the entire system by reducing standby power consumption while there is no main control right by executing only recognition of the surrounding environment while the main control right is not held.

도 2는 본 개시의 일 실시예에 따른 자율주행 제어 시스템의 구성을 나타내는 블록도이다.2 is a block diagram showing the configuration of an autonomous driving control system according to an embodiment of the present disclosure.

도시된 바와 같이, 자율주행 제어 시스템(200)은. 센서부(210), 제어지시부(220), 오류감지부(230), 비상대응부(240), 가중치 부여부(250)를 포함할 수 있다. 제어 지시부(220), 오류 감지부(230), 비상 대응부(240), 가중치 부여부(250)는, 예를 들어, 도 1에 도시된 자율주행 모듈(120)에 대응될 수 있다.As shown, the autonomous driving control system 200. It may include a sensor unit 210, a control instruction unit 220, an error detection unit 230, an emergency response unit 240, and a weighting unit 250. The control instruction unit 220, the error detection unit 230, the emergency response unit 240, and the weighting unit 250 may correspond to the autonomous driving module 120 shown in FIG. 1, for example.

일 실시예에서, 센서부(210)는 복수의 센서, 즉, 카메라(130), 라이다(140), 레이더(150)를 포함할 수 있으나, 이에 한정되는 것은 아니다. 센서부(210)는 BUS(260)과 연결되어 제어 지시부(220)로 센싱 데이터를 전송할 수 있다. BUS(260)는 제어 지시부(220)의 센서 버스 인터페이스(222A, 222B)와 연결되어, 센싱 데이터를 전송할 수 있다. 제어 지시부(220)는, 센서부(210)로부터 수신한 센싱 데이터를 이용하여 자율주행 제어 신호를 생성할 수 있다.In one embodiment, the sensor unit 210 may include a plurality of sensors, that is, a camera 130, a lidar 140, and a radar 150, but is not limited thereto. The sensor unit 210 may be connected to the BUS 260 to transmit sensing data to the control directing unit 220 . The BUS 260 may be connected to the sensor bus interfaces 222A and 222B of the control instructing unit 220 to transmit sensing data. The control instructing unit 220 may generate an autonomous driving control signal using the sensing data received from the sensor unit 210 .

일 실시예에서, 제어 지시부(220)는, 제1 프로세서(221A) 및 제2 프로세서(221B)를 포함할 수 있다. 여기서, 제1 프로세서(221A)는 메인 블록에 대응될 수 있으며, 제2 프로세서(221B)는 쉐도우 블록에 대응될 수 있다. 제1 프로세서(221A)는 센서 버스 인터페이스(222A) 및 메인 연산부(223A)를 포함할 수 있으며, 메인 연산부(223A)는 주행 제어부(224A) 및 주변 감지부(225A)를 포함할 수 있다. 제2 프로세서(221B)는 센서 버스 인터페이스(222B) 및 서브 연산부(223A)를 포함할 수 있으며, 서브 연산부(223A)는 주행 제어부(224A) 및 주변 감지부(225B)를 포함할 수 있다.In one embodiment, the control directing unit 220 may include a first processor 221A and a second processor 221B. Here, the first processor 221A may correspond to the main block, and the second processor 221B may correspond to the shadow block. The first processor 221A may include a sensor bus interface 222A and a main calculation unit 223A, and the main calculation unit 223A may include a driving control unit 224A and an ambient sensing unit 225A. The second processor 221B may include a sensor bus interface 222B and a sub operation unit 223A, and the sub operation unit 223A may include a driving control unit 224A and an ambient sensing unit 225B.

일 실시예에서, 오류 감지부(230)는 메모리(232) 및 오류 패턴 감지부(234)를 포함할 수 있다. 오류 감지부(230)는 프로세서(221A, 221B)의 동작 상태를 모니터링하여 각 프로세서의 동작 오류를 검출할 수 있다. 오류 감지부(230)에서 오류의 검출에 있어, 프로세서(221A, 221B)의 현재 동작 상태와 오류 패턴을 비교하여 오류를 검출할 수 있다. 오류 패턴 감지부(234)는 메모리(232)에 저장된 결함 리스트에 포함된 오류 패턴들을 프로세서(221A, 221B)의 현재 동작 상태와 비교할 수 있다.In one embodiment, the error detecting unit 230 may include a memory 232 and an error pattern detecting unit 234 . The error detecting unit 230 may detect an operating error of each processor by monitoring the operating state of the processors 221A and 221B. In detecting an error in the error detecting unit 230, the error may be detected by comparing the current operating state of the processors 221A and 221B with an error pattern. The error pattern detecting unit 234 may compare error patterns included in the defect list stored in the memory 232 with current operating states of the processors 221A and 221B.

일 실시예에서, 비상 대응부(240)는 알람부(242) 및 비상경로 생성부(244)를 포함할 수 있다. 비상 대응부(240)는 오류 감지부(230)에서 오류 감지 시, 이에 대한 응답으로써 비상 대응 절차를 실행할 수 있다. 오류 감지부(230)에서 오류 감지 시, 알람부(242)에서 경고 메시지를 생성하여 송출할 수 있다. 경고 메시지 송출 이후, 자율주행 제어 시스템(200)은 반자율 주행, 수동주행 및 비상주행 중 어느 하나를 실시할 수 있다. In one embodiment, the emergency response unit 240 may include an alarm unit 242 and an emergency route generator 244. When the error detection unit 230 detects an error, the emergency response unit 240 may execute an emergency response procedure as a response thereto. When the error detection unit 230 detects an error, the alarm unit 242 may generate and transmit a warning message. After sending the warning message, the autonomous driving control system 200 may perform any one of semi-autonomous driving, manual driving, and emergency driving.

일 실시예에서, 반자율 주행 모드에서, 제어 지시부(220)는 센서부(210)로부터 수신된 센싱 데이터의 전부 또는 일부를 사용하여 자율주행 제어 신호를 생성할 수 있다. 수동 주행 모드에서, 제어 지시부(220)는 차량의 제어권을 운전자에게 전부 이양하거나, 운전자가 직접 차량 운행을 실행할 수 있도록 차선 유지 보조 등 주행 보조 서비스를 제공할 수 있다. 한편, 비상 주행 모드에서, 제어 지시부(220)는 비상경로 생성부(244)에서 생성된 비상경로를 따라 안전한 곳으로 차량을 이동시키도록 제어 신호를 생성할 있다. In one embodiment, in the semi-autonomous driving mode, the control instructing unit 220 may generate an autonomous driving control signal using all or part of the sensing data received from the sensor unit 210 . In the manual driving mode, the control instructing unit 220 may transfer all control rights of the vehicle to the driver or provide driving assistance services such as lane keeping assistance so that the driver may directly operate the vehicle. Meanwhile, in the emergency driving mode, the control instructing unit 220 may generate a control signal to move the vehicle to a safe place along the emergency path generated by the emergency path generating unit 244 .

일 실시예에서, 가중치 부여부(250)는 메모리(252) 및 센서 가중치 결정부(254)를 포함할 수 있다. 센서 가중치 결정부(254)는 주변 감지부(225A, 225B)에서 감지한 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우, 상이한 센서별 가중치를 적용할 수 있다. 또한, 주변 감지부(225A, 225B)에서 감지한 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우, 주행 제어부(224A, 224B)에서 상이한 연산처리용량의 객체인식 모델을 적용할 수 있다.In one embodiment, the weighting unit 250 may include a memory 252 and a sensor weight determining unit 254 . The sensor weight determination unit 254 may apply different weights for each sensor when the surrounding environment sensed by the surrounding sensing units 225A and 225B requires different levels of autonomous driving control. In addition, when the surrounding environment sensed by the surrounding sensors 225A and 225B requires different levels of autonomous driving control, the driving controllers 224A and 224B may apply object recognition models with different processing capacities.

도 3은 본 개시의 일 실시예에 따른 오류 감지부의 구성을 나타내는 블록도이다.3 is a block diagram showing the configuration of an error detection unit according to an embodiment of the present disclosure.

도시된 바와 같이, 오류 감지부(230)는 메모리(232) 및 오류 패턴 감지부(234)를 포함할 수 있다. 감지부(230)의 메모리(232)에는 프로세서 또는 그 주변장치와 관련된 결함 또는 오류 패턴들을 포함하는 결함 리스트(300)가 저장될 수 있다. 결함 리스트(300)의 오류 패턴에 근거하여 오류패턴 감지부(234)는 프로세서(221A, 221B)의 오류를 검출할 수 있다. 결함 리스트(300)의 오류 패턴 항목은, 예를 들어, EMI(Electro-Magnetic Interference) 동작 오류 패턴(310), EMC(Electro-Magnetic Compatibility) 동작 오류 패턴(320), 온도 오류 패턴(330), 프로세서 오류 패턴(340), 전력 오류 패턴(350), 메모리 CRC(Cyclic Redundancy Check : 순환중복검사) 오류 패턴(360) 등을 포함할 수 있으며, 이에 한정되지 않는다. As shown, the error detecting unit 230 may include a memory 232 and an error pattern detecting unit 234 . A defect list 300 including defects or error patterns related to the processor or its peripheral device may be stored in the memory 232 of the detector 230 . Based on the error pattern of the defect list 300, the error pattern detecting unit 234 may detect an error of the processors 221A and 221B. The error pattern items of the defect list 300 include, for example, an Electro-Magnetic Interference (EMI) operation error pattern 310, an Electro-Magnetic Compatibility (EMC) operation error pattern 320, a temperature error pattern 330, A processor error pattern 340, a power error pattern 350, a memory Cyclic Redundancy Check (CRC) error pattern 360, and the like may be included, but are not limited thereto.

결함 리스트(300)의 오류 패턴 항목들 중, EMI(Electro-Magnetic Interference)는 전자파장애를 의미할 수 있으며, 전자파장애는 자율주행 차량 내에 설치된 각종 전자부품에서 방사 또는 전도되는 전자파가 다른 기기의 기능에 장애를 주는 것을 의미할 수 있다. 또한, EMC(Electro-Magnetic Compatibility)는 전자파적합성 또는 양립성을 의미할 수 있으며, 전자파를 주는 측과 받는 측의 양쪽에 적용하여 성능을 확보할 수 있는 기기의 능력을 의미할 수 있다. 온도 오류 패턴(330)은 시스템 회로 일부의 온도 에러일 수 있으며, 회로에 영향을 미치는 수준의 온도를 의미할 수 있다. 프로세서 오류 패턴(340)은 BIST(내장 자체 시험)등에 의해 검사될 수 있는 오류 패턴을 의미할 수 있다. 전력 오류 패턴(350)은 시스템이 정상적으로 동작할 수 있는 전력 범위를 초과하거나 미만으로 공급하는 것을 의미할 수 있다. 메모리 CRC 오류 패턴(360)은 하드웨어의 문제와 소프트웨어의 문제로 나눌 수 있으며, 저장방식이나 작업방식, 저장오류, 바이러스 등에 의한 데이터의 직접적인 손상으로 발생할 수 있으며, 저장매체의 물리적 손상인 배드섹터나 크래시손상에 의해 발생할 수 있다.Among the error pattern items of the defect list 300, EMI (Electro-Magnetic Interference) may mean electromagnetic interference, and electromagnetic interference refers to electromagnetic waves radiated or conducted from various electronic parts installed in an autonomous vehicle that function as other devices. can mean hindering In addition, EMC (Electro-Magnetic Compatibility) may mean electromagnetic compatibility or compatibility, and may mean the ability of a device to secure performance by applying to both the electromagnetic wave giving side and the receiving side. The temperature error pattern 330 may be a temperature error of a part of a system circuit, and may mean a level of temperature that affects the circuit. The processor error pattern 340 may mean an error pattern that can be checked by BIST (built-in self-test) or the like. The power error pattern 350 may mean supplying power in excess of or less than the range in which the system can normally operate. Memory CRC error patterns (360) can be divided into hardware problems and software problems, and can be caused by direct damage to data due to storage methods or work methods, storage errors, viruses, etc. It can be caused by crash damage.

도 4는 본 개시의 일 실시예에 따른 제1 프로세서 및 제2 프로세서의 구성을 나타내는 블록도이다.4 is a block diagram illustrating configurations of a first processor and a second processor according to an embodiment of the present disclosure.

도 4는 제어 지시부(220)내의 제1 프로세서(221A) 및 제2 프로세서(221B)의 구성을 상세히 도시한다. 제1 프로세서 (221A)는 메인 연산부(223A) 및 메모리(440)를 포함할 수 있으며, 메인 연산부(223A)는 주행 제어부(224A) 및 주변 감시부(225A)를 포함할 수 있다. 제2 프로세서 (221B)는 서브 연산부(223B) 및 메모리(470)를 포함할 수 있으며, 서브 연산부(223B)는 주행 제어부(224B) 및 주변 감시부(225B)를 포함할 수 있다. 도 4에서, 메모리(440, 470)는 메인 연산부(223A) 및 서브 연산부(223B) 외부에 구성되는 것으로 도시되어 있으나, 메인 연산부(223A) 및 서브 연산부(223B) 내부에 구성될 수도 있다.FIG. 4 shows the configuration of the first processor 221A and the second processor 221B in the control instructing unit 220 in detail. The first processor 221A may include a main arithmetic unit 223A and a memory 440, and the main arithmetic unit 223A may include a driving control unit 224A and a peripheral monitoring unit 225A. The second processor 221B may include a sub arithmetic unit 223B and a memory 470, and the sub arithmetic unit 223B may include a driving control unit 224B and a surrounding monitoring unit 225B. In FIG. 4 , the memories 440 and 470 are shown as being configured outside the main operation unit 223A and the sub operation unit 223B, but may be configured inside the main operation unit 223A and the sub operation unit 223B.

일 실시예에서, 메인 연산부(223A)의 주행 제어부(224A)는 센서 세트 결정부(410)로 구성될 수 있고, 주변 감시부(225A)는 객체인식 모델 적용부(430)로 구성될 수 있다. 서브 연산부(223B)의 주행 제어부(224B)는 센서 세트 결정부(450)로 구성될 수 있고, 주변 감시부(225B)는 객체인식 모델 적용부(460)로 구성될 수 있다.In one embodiment, the driving control unit 224A of the main operation unit 223A may be configured with the sensor set determining unit 410, and the surrounding monitoring unit 225A may be configured with the object recognition model application unit 430. . The driving control unit 224B of the sub operation unit 223B may be configured with the sensor set determining unit 450, and the surrounding monitoring unit 225B may be configured with the object recognition model applying unit 460.

일 실시예에서, 메인 연산부(223A)의 주행 제어부(224A)는 주변 감지부(225A)에서 감지된 주변 상황에 따라 상이한 레벨의 자율주행 제어가 요구되는 경우, 센서 세트 결정부(410)를 통해 상이한 센서 세트를 결정한다. 주행 제어부(224A)의 주변 감지부(225A)는 주변 상황을 감지하여, 주변 상황에 따라 상이한 레벨의 자율주행 제어가 요구되는 경우, 객체인식 모델 적용부(430)에서 상이한 객체인식 모델을 적용한다. 상이한 센서 세트 및 상이한 객체인식 모델에 관한 정보는 메모리(440)에 저장되어 있을 수 있다.In one embodiment, the driving control unit 224A of the main operation unit 223A, when a different level of autonomous driving control is required according to the surrounding situation detected by the surrounding sensing unit 225A, through the sensor set determination unit 410 Determine the different sensor sets. The surrounding detection unit 225A of the driving control unit 224A detects the surrounding situation, and when a different level of autonomous driving control is required according to the surrounding situation, the object recognition model applying unit 430 applies a different object recognition model. . Information about different sensor sets and different object recognition models may be stored in the memory 440 .

일 실시예에서, 서브 연산부(223B)의 주행 제어부(224B)는 주변 감지부(225B)에서 감지된 주변 상황에 따라 제1 프로세서(221A)에 상이한 레벨의 자율주행 제어가 요구되는 경우, 센서 세트 결정부(450)에서 상이한 센서 세트를 결정한다. 주행 제어부(224B)의 주변 감지부(225B)는 주변 상황을 감지하여, 주변 상황에 따라 제1 프로세서(221A)에 상이한 레벨의 자율주행 제어가 요구되는 경우, 객체인식 모델 적용부(460)에서 상이한 객체인식 모델을 적용한다. 상이한 센서 세트 및 상이한 객체인식 모델에 관한 정보는 메모리(470)에 저장되어 있을 수 있다.In one embodiment, the driving control unit 224B of the sub-computing unit 223B may set a sensor set when a different level of autonomous driving control is requested from the first processor 221A according to the surrounding situation detected by the surrounding sensing unit 225B. The decision unit 450 determines different sensor sets. The surrounding detection unit 225B of the driving control unit 224B detects the surrounding situation, and when a different level of autonomous driving control is requested from the first processor 221A according to the surrounding situation, the object recognition model application unit 460 Apply different object recognition models. Information about different sensor sets and different object recognition models may be stored in the memory 470 .

일 실시예에서, 서브 연산부(223B)의 주행 제어부(224B)는, 메인 연산부(223A)에서 제1 제어 신호 세트를 생성하는 동안에, 복수의 센서 중 일부로부터 수신되는 신호를 독립적으로 처리하여, 메인 연산부(223A)에서 생성한 제1 제어 신호 세트보다 작은범위인 제2 제어 신호 세트를 생성할 수 있다. 서브 연산부(223B)는 오류 감지부(230)에서 제1 프로세서(221A)의 오류를 감지하기 전까지 자율주행 차량(110)의 메인 제어권을 보유하지 않을 수 있다. 서브 연산부(223B)에서 생성된 제2 제어 신호 세트는, 제1 프로세서(221A)의 오류에 대응하기 위한 자율주행 제어 신호일 수 있다.In one embodiment, the driving control unit 224B of the sub operation unit 223B independently processes signals received from some of the plurality of sensors while the main operation unit 223A generates the first control signal set, A second control signal set having a smaller range than the first control signal set generated by the calculation unit 223A may be generated. The sub operation unit 223B may not hold the main control right of the autonomous vehicle 110 until the error detection unit 230 detects an error in the first processor 221A. The second control signal set generated by the sub-computing unit 223B may be an autonomous driving control signal for responding to an error of the first processor 221A.

도 5는 본 개시의 일 실시예에 따른 이중화 구조 기반 자율주행 시스템의 동작 방법을 나타내는 흐름도이다.5 is a flowchart illustrating an operating method of an autonomous driving system based on a redundant structure according to an embodiment of the present disclosure.

도 5에 도시된 자율주행 시스템의 동작 방법(500)은, 센서데이터를 수신하는 단계(510)로 개시될 수 있다. 일 실시예에서, 단계(510)에서 수신하는 센싱 데이터는, 카메라(130), 라이다(140), 레이더(150)로부터 수신된 센싱 데이터일 수 있으며, 이에 한정되지 않는다.The operation method 500 of the autonomous driving system shown in FIG. 5 may start with a step 510 of receiving sensor data. In one embodiment, the sensing data received in step 510 may be sensing data received from the camera 130, lidar 140, and radar 150, but is not limited thereto.

주변 환경 정보를 감지하는 단계(520)가 실행될 수 있다. 일 실시예에서, 주변 환경 정보는, 복수의 센싱 데이터를 이용하여, 메인 연산부(223A) 및 서브 연산부(223B)의 주변 감지부(225A, 225B)에서 감지한 정보일 수 있다.An operation 520 of sensing surrounding environment information may be executed. In an embodiment, the surrounding environment information may be information sensed by the surrounding sensing units 225A and 225B of the main operation unit 223A and the sub operation unit 223B using a plurality of sensing data.

제1 프로세서에서 제1 제어 신호 세트를 생성하는 단계(530)가 실행될 수 있다. 일 실시예에서, 제1 제어 신호 세트는 주변 환경에 따라, 상이한 레벨의 자율주행 제어를 요구하는 경우 상이한 센서 세트의 데이터 및 상이한 연산처리용량의 객체인식 모델을 적용하여 생성될 수 있다.Step 530 of generating a first set of control signals in the first processor may be executed. In one embodiment, the first control signal set may be generated by applying object recognition models of different processing capacities and data of different sensor sets when different levels of autonomous driving control are required according to surrounding environments.

제2 프로세서가 센서의 일부로부터 수신되는 신호를 처리하여 주변 환경 정보를 인식하는 단계(540)가 실행될 수 있다. 일 실시예에서, 주변 환경 정보는 복수의 센싱 데이터를 이용하여, 서브 연산부(223B)의 주변 감지부(225B)에서 감지한 정보일 수 있다.Operation 540 of recognizing ambient environment information by processing signals received from some of the sensors by the second processor may be executed. In an embodiment, the surrounding environment information may be information sensed by the surrounding sensing unit 225B of the sub operation unit 223B using a plurality of sensing data.

제1 프로세서가 비정상 동작하는지를 판단하는 단계(550)가 실행될 수 있다. 일 실시예에서, 제1 프로세서의 비정상 동작 여부의 판단은 오류 감지부(230)에서 수행될 수 있으며, 메모리(232)에 저장된 결함 리스트(300)에 기반한 것 일수 있다.Step 550 of determining whether the first processor is operating abnormally may be executed. In one embodiment, the determination of whether the first processor operates abnormally may be performed by the error detecting unit 230 and may be based on the defect list 300 stored in the memory 232 .

단계(550)에서 제1 프로세서가 비정상 동작 중이라는 판단에 응답하여, 제2 프로세서로 메인 제어권을 이전할 수 있다. 일 실시예에서, 제2 프로세서(221B)는 프로세서(221A)로부터 메인 제어권을 이전 받아, 상이한 센서 세트의 데이터 및/또는 상이한 연산처리용량의 객체인식 모델을 적용하여 자율주행 제어 신호를 생성할 수 있다.In step 550, in response to determining that the first processor is operating abnormally, the main control right may be transferred to the second processor. In one embodiment, the second processor 221B may receive the main control right from the processor 221A and generate an autonomous driving control signal by applying data of different sensor sets and/or object recognition models of different processing capacities. there is.

자율주행 시스템의 동작 방법(500)은, 제2 프로세서에서 제1 제어 신호 세트를 생성하는 단계(570)를 더 포함할 수 있다. 일 실시예에서, 제1 제어 신호 세트는, 제1 프로세서(221A)의 오류 감지 전에 제2 프로세서(221B)에서 생성한 제2 제어 신호 세트보다 큰 범위의 제어 신호 세트 일수 있다. The method 500 of operating an autonomous driving system may further include generating a first set of control signals in a second processor (570). In one embodiment, the first control signal set may be a control signal set having a greater range than the second control signal set generated by the second processor 221B before the first processor 221A detects an error.

도 6은 본 개시의 다른 실시예에 따른 이중화 구조 기반 자율주행 시스템의 동작 방법을 나타내는 흐름도이다.6 is a flowchart illustrating an operating method of an autonomous driving system based on a redundant structure according to another embodiment of the present disclosure.

도시된 바와 같이, 자율주행 시스템의 동작 방법(600)은, 센서데이터를 수신하는 단계(610)로 개시될 수 있다. 일 실시예에서, 단계(610)에서 수신하는 센싱 데이터는, 카메라(130), 라이다(140), 레이더(150)일 수 있으며, 이에 한정되지 않는다.As shown, the method 600 of operating an autonomous driving system may begin with receiving sensor data (610). In one embodiment, the sensing data received in step 610 may be the camera 130, lidar 140, or radar 150, but is not limited thereto.

주변 환경 정보를 감지하는 단계(620)가 실행될 수 있다. 일 실시예에서, 주변 환경 정보는, 복수의 센싱 데이터를 이용하여, 메인 연산부(223A) 및 서브 연산부(223B)의 주변 감지부(225A, 225B)에서 감지한 정보일 수 있다.An operation 620 of sensing surrounding environment information may be executed. In an embodiment, the surrounding environment information may be information sensed by the surrounding sensing units 225A and 225B of the main operation unit 223A and the sub operation unit 223B using a plurality of sensing data.

또한, 제1 프로세서에서 제1 제어 신호 세트를 생성하는 단계(630)가 실행될 수 있다. 일 실시예에서, 제1 제어 신호 세트는 주변 환경에 따라, 상이한 레벨의 자율주행 제어가 요구되는 경우, 상이한 센서 세트의 데이터 및/또는 상이한 연산처리용량의 객체인식 모델을 적용하여 생성할 수 있다.Also, step 630 of generating a first set of control signals in the first processor may be executed. In one embodiment, the first set of control signals may be generated by applying data of different sensor sets and/or object recognition models of different processing capacities when different levels of autonomous driving control are required according to the surrounding environment. .

제2 프로세서가 센서의 일부로부터 수신되는 신호를 처리하여 주변 환경 정보를 인식하는 단계(640)가 실행될 수 있다. 일 실시예에서, 주변 환경 정보는 복수의 센싱 데이터를 이용하여, 서브 연산부(223B)의 주변 감지부(225B)에서 감지한 정보일 수 있다.Operation 640 of recognizing ambient environment information by processing signals received from some of the sensors by the second processor may be executed. In an embodiment, the surrounding environment information may be information sensed by the surrounding sensing unit 225B of the sub operation unit 223B using a plurality of sensing data.

제1 프로세서가 비정상 동작하는지를 판단하는 단계(650)가 실행될 수 있다. 일 실시예에서, 제1 프로세서의 비정상 동작 판단은 오류 감지부(230)에서 수행될 수 있으며, 메모리(232)에 저장된 결함 리스트(300)에 기반한 것일 수 있다.Step 650 of determining whether the first processor is operating abnormally may be executed. In one embodiment, the determination of the abnormal operation of the first processor may be performed by the error detecting unit 230 and may be based on the defect list 300 stored in the memory 232 .

단계(650)에서 제1 프로세서가 비정상 동작 중이라는 판단에 응답하여, 제2 프로세서로 메인 제어권을 이전하는 단계(660)가 실행될 수 있다. 일 실시예에서, 제2 프로세서(221B)는 메인 제어권을 이전 받아, 상이한 센서 세트의 데이터 및/또는 상이한 연산처리용량의 객체인식 모델을 적용하여 주행 제어 신호를 생성할 수 있다.In response to determining that the first processor is operating abnormally in step 650, step 660 of transferring the main control right to the second processor may be executed. In one embodiment, the second processor 221B may receive the main control right and generate a driving control signal by applying data of different sensor sets and/or object recognition models of different processing capacities.

제2 프로세서에서 제1 제어 신호 세트를 생성하는 단계(670)가 실행될 수 있다. 일 실시예에서, 제1 제어 신호 세트는, 제1 프로세서(221A)의 오류 감지 전에 제2 프로세서(221B)에서 생성한 제2 제어 신호 세트보다 큰 범위의 제어 신호 세트일 수 있다.Step 670 of generating a first set of control signals in the second processor may be executed. In one embodiment, the first control signal set may be a control signal set having a larger range than the second control signal set generated by the second processor 221B before the first processor 221A detects an error.

단계(650)에서 제1 프로세서(221A)가 정상 동작 중이라는 판단에 응답하여, 상이한 레벨의 자율주행을 요구하는 단계(652)가 실행될 수 있다.In response to determining that the first processor 221A is normally operating in step 650, step 652 of requesting a different level of autonomous driving may be executed.

단계(652)에서 상이한 레벨의 자율주행을 요구한다는 판단에 응답하여, 복수의 센서로부터 수신되는 신호에 상이한 센서별 가중치를 적용하는 단계(654)가 실행될 수 있다. 일 실시예에서, 고속도로에서 시내로 진입하는 상황이거나, 자율주행 차량(110)주변에 차량(160)들이 많아지는 상황에서는 모든 센서에 대해 높은 가중치를 적용할 수 있다. 예를 들어, 쉐도우 블록(124)는, 주변 환경이 비교적 단순하고 사고 위험성이 낮은 경우 낮은 레벨의 자율주행 제어를 위해, 카메라(130)에 대해서 높은 가중치를 적용하는 반면 다른 센서들(140, 150)에 대해서는 낮은 가중치를 적용할 수 있다. 다른 예에서, 쉐도우 블록(124)는, 주변 환경이 비교적 복잡하고 사고 위험성이 높은 경우 높은 레벨의 자율주행 제어를 위해, 모든 센서(130, 140, 150)에 대해 높은 가중치를 적용할 수 있다. In response to determining that different levels of autonomous driving are required in step 652, step 654 of applying different weights for each sensor to signals received from a plurality of sensors may be executed. In one embodiment, a high weight may be applied to all sensors in a situation in which a highway enters a city or in a situation in which there are many vehicles 160 around the self-driving vehicle 110 . For example, the shadow block 124 applies a high weight to the camera 130 for low-level autonomous driving control when the surrounding environment is relatively simple and the risk of an accident is low, while the other sensors 140 and 150 ), a low weight can be applied. In another example, the shadow block 124 may apply a high weight to all sensors 130, 140, and 150 for a high level of autonomous driving control when the surrounding environment is relatively complex and the risk of an accident is high.

제2 프로세서가 상이한 연산처리용량의 객체인식 모델을 적용하는 단계(656)가 실행될 수 있다. 또한, 제2 프로세서가 제2 제어신호세트를 생성하는 단계(658)가 실행될 수 있다. 일 실시예에서, 제2 프로세서(221B)는 제어권이 없는 상태에서도 제어신호세트를 생성할 수 있다. 제2 프로세서(221B)에서 생성된 제2 제어신호 세트는, 제1 프로세서(221A)에서 생성된 제1 제어신호 세트보다 작은 범위 일수 있다. Step 656 of applying, by the second processor, object recognition models of different processing capacities may be executed. Step 658 may also be executed in which the second processor generates a second set of control signals. In one embodiment, the second processor 221B may generate a control signal set even in the absence of a control right. The second control signal set generated by the second processor 221B may have a smaller range than the first control signal set generated by the first processor 221A.

상술한 실시예들에 따르면, 이중화된 구조를 갖는 복수의 프로세서를 포함하는 자율주행 제어 시스템에 있어서, 메인 제어권을 가진 프로세서(예를 들어, 제1 프로세서)는 주변 환경의 인식과 이에 기초한 자율주행 제어를 실행하는 동안, 다른 프로세서(예를 들어, 제2 프로세서)는 주변 환경에 대한 인식만을 실행할 수 있다. 이러한 구성에서, 메인 제어권을 가진 제1 프로세서에 결함이 발생된 경우, 제2 프로세서는 주변 환경에 대한 인식을 실행하고 있는 상태이기 때문에, 제1 프로세서로부터 제2 프로세서로 메인 제어권이 이전하면 제2 프로세서는 주변 환경 인식 결과에 기초하여 메인 제어권에 따른 자율주행 제어를 바로 실행할 수 있다. 따라서, 제1 프로세서로부터 제2 프로세서로 메인 제어권이 이전하는 동안에 정상적인 자율주행 제어의 공백기를 최소화하고, 시스템 안정성을 보장할 수 있다. 또한, 제2 프로세서는 메인 제어권이 없는 동안에 주변 환경 인식만을 실행함으로써, 메인 제어권이 없는 동안의 대기 소비전력을 감소시켜 시스템 전체적인 전력소모를 최소화할 수 있다.According to the above-described embodiments, in the autonomous driving control system including a plurality of processors having a dual structure, the processor (eg, the first processor) having the main control right recognizes the surrounding environment and autonomous driving based thereon. While executing control, another processor (eg, a second processor) may only exercise awareness of the surrounding environment. In this configuration, when a defect occurs in the first processor having the main control right, since the second processor is in a state in which the recognition of the surrounding environment is executed, when the main control right is transferred from the first processor to the second processor, the second processor The processor may directly execute autonomous driving control according to the main control right based on the result of recognizing the surrounding environment. Accordingly, while the main control right is transferred from the first processor to the second processor, a vacuum period of normal autonomous driving control may be minimized and system stability may be ensured. In addition, the second processor can minimize power consumption of the entire system by reducing standby power consumption while there is no main control right by executing only recognition of the surrounding environment while the main control right is not held.

상술한 방법은 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램으로 제공될 수 있다. 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The above method may be provided as a computer program stored in a computer readable recording medium to be executed on a computer. The medium may continuously store programs executable by a computer or temporarily store them for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or combined hardware, but is not limited to a medium directly connected to a certain computer system, and may be distributed on a network. Examples of the medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROM and DVD, magneto-optical media such as floptical disks, and ROM, RAM, flash memory, etc. configured to store program instructions. In addition, examples of other media include recording media or storage media managed by an app store that distributes applications, a site that supplies or distributes various other software, and a server.

본 개시의 방법, 동작 또는 기법들은 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이러한 기법들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수도 있다. 본원의 개시와 연계하여 설명된 다양한 예시적인 논리적 블록들, 모듈들, 회로들, 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양자의 조합들로 구현될 수도 있음을 통상의 기술자들은 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 대체를 명확하게 설명하기 위해, 다양한 예시적인 구성요소들, 블록들, 모듈들, 회로들, 및 단계들이 그들의 기능적 관점에서 일반적으로 위에서 설명되었다. 그러한 기능이 하드웨어로서 구현되는지 또는 소프트웨어로서 구현되는지의 여부는, 특정 애플리케이션 및 전체 시스템에 부과되는 설계 요구사항들에 따라 달라진다. 통상의 기술자들은 각각의 특정 애플리케이션을 위해 다양한 방식들로 설명된 기능을 구현할 수도 있으나, 그러한 구현들은 본 개시의 범위로부터 벗어나게 하는 것으로 해석되어서는 안된다.The methods, acts or techniques of this disclosure may be implemented by various means. For example, these techniques may be implemented in hardware, firmware, software, or combinations thereof. Those skilled in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchange of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the particular application and design requirements imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementations should not be interpreted as causing a departure from the scope of the present disclosure.

하드웨어 구현에서, 기법들을 수행하는 데 이용되는 프로세싱 유닛들은, 하나 이상의 ASIC들, DSP들, 디지털 신호 프로세싱 디바이스들(digital signal processing devices; DSPD들), 프로그램가능 논리 디바이스들(programmable logic devices; PLD들), 필드 프로그램가능 게이트 어레이들(field programmable gate arrays; FPGA들), 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전자 디바이스들, 본 개시에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 컴퓨터, 또는 이들의 조합 내에서 구현될 수도 있다.In a hardware implementation, the processing units used to perform the techniques may include one or more ASICs, DSPs, digital signal processing devices (DSPDs), programmable logic devices (PLDs) ), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, electronic devices, and other electronic units designed to perform the functions described in this disclosure. , a computer, or a combination thereof.

따라서, 본 개시와 연계하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서, DSP, ASIC, FPGA나 다른 프로그램 가능 논리 디바이스, 이산 게이트나 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본원에 설명된 기능들을 수행하도록 설계된 것들의 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한, 컴퓨팅 디바이스들의 조합, 예를 들면, DSP와 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 연계한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 구성의 조합으로서 구현될 수도 있다.Accordingly, the various illustrative logical blocks, modules, and circuits described in connection with this disclosure may be incorporated into a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or may be implemented or performed in any combination of those designed to perform the functions described in A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, eg, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other configuration.

펌웨어 및/또는 소프트웨어 구현에 있어서, 기법들은 랜덤 액세스 메모리(random access memory; RAM), 판독 전용 메모리(read-only memory; ROM), 비휘발성 RAM(non-volatile random access memory; NVRAM), PROM(programmable read-only memory), EPROM(erasable programmable read-only memory), EEPROM(electrically erasable PROM), 플래시 메모리, 컴팩트 디스크(compact disc; CD), 자기 또는 광학 데이터 스토리지 디바이스 등과 같은 컴퓨터 판독가능 매체 상에 저장된 명령들로서 구현될 수도 있다. 명령들은 하나 이상의 프로세서들에 의해 실행 가능할 수도 있고, 프로세서(들)로 하여금 본 개시에 설명된 기능의 특정 양태들을 수행하게 할 수도 있다.In firmware and/or software implementation, the techniques include random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), PROM ( on a computer readable medium, such as programmable read-only memory (EPROM), erasable programmable read-only memory (EPROM), electrically erasable PROM (EEPROM), flash memory, compact disc (CD), magnetic or optical data storage device, or the like. It can also be implemented as stored instructions. Instructions may be executable by one or more processors and may cause the processor(s) to perform certain aspects of the functionality described in this disclosure.

이상 설명된 실시예들이 하나 이상의 독립형 컴퓨터 시스템에서 현재 개시된 주제의 양태들을 활용하는 것으로 기술되었으나, 본 개시는 이에 한정되지 않고, 네트워크나 분산 컴퓨팅 환경과 같은 임의의 컴퓨팅 환경과 연계하여 구현될 수도 있다. 또 나아가, 본 개시에서 주제의 양상들은 복수의 프로세싱 칩들이나 장치들에서 구현될 수도 있고, 스토리지는 복수의 장치들에 걸쳐 유사하게 영향을 받게 될 수도 있다. 이러한 장치들은 PC들, 네트워크 서버들, 및 휴대용 장치들을 포함할 수도 있다.Although the embodiments described above have been described as utilizing aspects of the presently-disclosed subject matter in one or more stand-alone computer systems, the disclosure is not limited thereto and may be implemented in conjunction with any computing environment, such as a network or distributed computing environment. . Further, aspects of the subject matter in this disclosure may be implemented in a plurality of processing chips or devices, and storage may be similarly affected across multiple devices. These devices may include PCs, network servers, and portable devices.

본 명세서에서는 본 개시가 일부 실시예들과 관련하여 설명되었지만, 본 발명이 속하는 기술분야의 통상의 기술자가 이해할 수 있는 본 개시의 범위를 벗어나지 않는 범위에서 다양한 변형 및 변경이 이루어질 수 있다는 점을 알아야 할 것이다. 또한, 그러한 변형 및 변경은 본 명세서에 첨부된 특허청구의 범위 내에 속하는 것으로 생각되어야 한다.Although the present disclosure has been described in relation to some embodiments in this specification, it should be noted that various modifications and changes can be made without departing from the scope of the present disclosure that can be understood by those skilled in the art. something to do. Moreover, such modifications and variations are intended to fall within the scope of the claims appended hereto.

110: 자율주행 차량 120: 자율주행모듈
122: Main Block 124: Shadow Block
130: Camera 140: LIDAR
150: Radar 160: 차량
200: 자율주행 제어 시스템 210: 센서부
220: 제어 지시부 221A: 제1 프로세서
222A: 센서버스인터페이스 223A: 메인 연산부
224A: 주행 제어부 225A: 주변 감지부
221B: 제2 프로세서 222B: 센서버스인터페이스
223B: 서브 연산부 224B: 주행 제어부
225B: 주변 감지부 230: 오류감지부
232: 메모리 234: 오류 패턴 감지부
240: 비상 대응부 242: 알람부
244: 비상경로 생성부 250: 가중치 부여부
252: 메모리 254: 센서 가중치 결정부
300: Fault List(300) 410: 센서 세트 결정부
430: 객체인식 모델 적용부 440: 메모리
450: 센서 세트 결정부 460: 객체인식 모델 적용부
470: 메모리
110: autonomous vehicle 120: autonomous driving module
122: Main Block 124: Shadow Block
130: Camera 140: LIDAR
150: Radar 160: Vehicle
200: autonomous driving control system 210: sensor unit
220: control instruction unit 221A: first processor
222A: sensor bus interface 223A: main operation unit
224A: driving control unit 225A: surrounding sensing unit
221B: second processor 222B: sensor bus interface
223B: sub calculation unit 224B: driving control unit
225B: peripheral detection unit 230: error detection unit
232: memory 234: error pattern detector
240: emergency response unit 242: alarm unit
244: emergency route generation unit 250: weighting unit
252: memory 254: sensor weight determination unit
300: Fault List (300) 410: Sensor set determining unit
430: object recognition model application unit 440: memory
450: sensor set determination unit 460: object recognition model application unit
470: memory

Claims (10)

이중화 구조에 기반한 자율주행 제어 시스템에 있어서,
자율주행 차량의 주변 환경에 관한 정보를 감지하도록 구성되는 복수의 센서;
자율 주행 차량의 메인 제어권을 보유하며, 상기 복수의 센서로부터 수신되는 신호를 처리하여 상기 자율 주행 차량의 제어에 사용되는 제1 제어 신호 세트를 생성하도록 구성되는 제1 프로세서; 및
상기 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 상기 차량의 주변 환경을 감지하도록 구성되는 제2 프로세서를 포함하며,
상기 제1 프로세서에 의한 동작 오류가 감지된 경우, 상기 제1 프로세서는 상기 제2 프로세서로 상기 메인 제어권을 이전하여, 상기 제2 프로세서가 상기 제1 제어 신호 세트를 생성하도록 재구성되도록 하는, 자율주행 제어 시스템.
In an autonomous driving control system based on a redundant structure,
A plurality of sensors configured to sense information about the surrounding environment of the self-driving vehicle;
a first processor configured to hold a main control right of the autonomous vehicle and to process signals received from the plurality of sensors to generate a first set of control signals used to control the autonomous vehicle; and
And a second processor configured to sense the surrounding environment of the vehicle by processing signals received from at least some of the plurality of sensors,
When an operation error by the first processor is detected, the first processor transfers the main control right to the second processor so that the second processor is reconfigured to generate the first set of control signals. control system.
제1항에 있어서,
상기 자율주행 제어 시스템 상의 동작 오류와 관련된 복수의 패턴 정보를 저장하는 메모리를 더 포함하며,
상기 제1 프로세서 또는 상기 제1 프로세서와 연관된 주변 장치의 동작 패턴이 상기 메모리에 저장된 복수의 패턴 정보 중 적어도 하나와 동일 또는 유사한 경우, 상기 제1 프로세서의 동작 오류가 발생한 것으로 판단하는, 자율주행 제어 시스템.
According to claim 1,
Further comprising a memory for storing a plurality of pattern information related to an operation error on the autonomous driving control system,
When an operation pattern of the first processor or a peripheral device associated with the first processor is the same as or similar to at least one of a plurality of pattern information stored in the memory, it is determined that an operation error of the first processor has occurred. system.
제2항에 있어서,
상기 복수의 패턴 정보는, EMI 또는 EMC 동작 오류 패턴, 온도 오류 패턴, 프로세서 오류 패턴, 전력 오류 패턴, 메모리 CRC 오류 패턴, 메모리 비트 오류 패턴 중 적어도 하나를 포함하는, 자율주행 제어 시스템.
According to claim 2,
The plurality of pattern information includes at least one of an EMI or EMC operation error pattern, a temperature error pattern, a processor error pattern, a power error pattern, a memory CRC error pattern, and a memory bit error pattern.
제1항에 있어서,
상기 메인 제어권을 이전 받은 상기 제2 프로세서는,
상기 감지된 주변 환경에 따라 상기 제1 제어 신호 세트 중 적어도 일부를 생성하도록 재구성되는, 자율주행 제어 시스템.
According to claim 1,
The second processor to which the main control right has been transferred,
The autonomous driving control system is reconfigured to generate at least a part of the first set of control signals according to the sensed surrounding environment.
제1항에 있어서,
상기 메인 제어권을 이전 받은 상기 제2 프로세서는,
상기 감지된 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우 상기 복수의 센서로부터 수신되는 신호에 상이한 센서별 가중치를 적용하도록 재구성되는, 자율주행 제어 시스템.
According to claim 1,
The second processor to which the main control right has been transferred,
Wherein the autonomous driving control system is reconfigured to apply different sensor-specific weights to signals received from the plurality of sensors when the sensed surrounding environment requires a different level of autonomous driving control.
제1항에 있어서,
상기 메인 제어권을 이전 받은 상기 제2 프로세서는,
상기 감지된 주변 환경이 상이한 레벨의 자율주행 제어를 요구하는 경우 상기 복수의 센서로부터 수신되는 신호에 상이한 연산처리용량의 객체인식 모델을 적용하도록 재구성되는, 자율주행 제어 시스템.
According to claim 1,
The second processor to which the main control right has been transferred,
The autonomous driving control system, which is reconfigured to apply object recognition models of different processing capacities to signals received from the plurality of sensors when the sensed surrounding environment requires a different level of autonomous driving control.
제1항에 있어서,
상기 제1 프로세서가 상기 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 상기 제1 제어 신호 세트를 생성하는 동안에, 상기 제2 프로세서는 상기 복수의 센서 중 적어도 일부로부터 수신되는 신호를 독립적으로 처리하여 상기 제어 신호 세트 보다 작은 범위인 제2 제어 신호 세트를 생성하는, 자율주행 제어 시스템.
According to claim 1,
While the first processor processes signals received from at least some of the plurality of sensors to generate the first set of control signals, the second processor independently processes signals received from at least some of the plurality of sensors. to generate a second control signal set having a smaller range than the control signal set.
제1항에 있어서,
상기 복수의 센서는, 라이다(LiDAR) 센서, 레이저 센서, 적외선 센서 및 카메라 중 적어도 하나를 포함하는, 자율주행 제어 시스템.
According to claim 1,
The plurality of sensors include at least one of a LiDAR sensor, a laser sensor, an infrared sensor, and a camera.
적어도 하나의 프로세서에 의해 실행되는, 이중화 구조에 기반한 자율주행 제어 방법에 있어서,
복수의 센서에 의해, 자율주행 차량의 주변 환경에 관한 정보를 감지하는 단계;
자율 주행 차량의 메인 제어권을 보유한 제1 프로세서에 의해, 상기 복수의 센서로부터 수신되는 신호를 처리하여 상기 자율 주행 차량의 제어에 사용되는 제1 제어 신호 세트를 생성하는 단계;
제2 프로세서에 의해, 상기 복수의 센서 중 적어도 일부로부터 수신되는 신호를 처리하여 상기 차량의 주변 환경을 감지하는 단계; 및
상기 제1 프로세서에 의한 동작 오류가 감지된 경우, 상기 제1 프로세서에 의해, 상기 제2 프로세서로 상기 메인 제어권을 이전하여, 상기 제2 프로세서가 상기 제1 제어 신호 세트를 생성하도록 재구성하는 단계를 포함하는, 자율주행 제어 방법.
In the autonomous driving control method based on a redundant structure, executed by at least one processor,
Sensing information about the surrounding environment of the self-driving vehicle by a plurality of sensors;
generating a first set of control signals used to control the autonomous vehicle by processing signals received from the plurality of sensors, by a first processor having a main control right of the autonomous vehicle;
sensing, by a second processor, a surrounding environment of the vehicle by processing signals received from at least some of the plurality of sensors; and
When an operation error by the first processor is detected, transferring, by the first processor, the main control right to the second processor, and reconfiguring the second processor to generate the first control signal set. Including, autonomous driving control method.
제9항에 따른 방법을 컴퓨터에서 실행하기 위해 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer readable recording medium to execute the method according to claim 9 on a computer.
KR1020210178442A 2021-12-14 2021-12-14 Autonomous driving computing platform based on redundant architecture KR102656802B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210178442A KR102656802B1 (en) 2021-12-14 2021-12-14 Autonomous driving computing platform based on redundant architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210178442A KR102656802B1 (en) 2021-12-14 2021-12-14 Autonomous driving computing platform based on redundant architecture

Publications (2)

Publication Number Publication Date
KR20230090398A true KR20230090398A (en) 2023-06-22
KR102656802B1 KR102656802B1 (en) 2024-04-12

Family

ID=86989271

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210178442A KR102656802B1 (en) 2021-12-14 2021-12-14 Autonomous driving computing platform based on redundant architecture

Country Status (1)

Country Link
KR (1) KR102656802B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100067563A (en) * 2008-12-11 2010-06-21 재단법인대구경북과학기술원 Breakdown perception apparatus and method of fuel warning light
KR20100098155A (en) * 2009-02-27 2010-09-06 주식회사 와이즈오토모티브 System for controlling integration electronic control unit
KR20150136336A (en) * 2014-05-27 2015-12-07 한국전자통신연구원 Wireless Sensor Network System for Vehicle and Method Operating Thereof
KR20190012607A (en) * 2017-07-28 2019-02-11 현대모비스 주식회사 Apparatus for warning rear collision of vehicle and control method thereof
KR20210073705A (en) * 2019-12-10 2021-06-21 현대모비스 주식회사 Vehicle control system according to failure of autonomous driving vehicle and method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100067563A (en) * 2008-12-11 2010-06-21 재단법인대구경북과학기술원 Breakdown perception apparatus and method of fuel warning light
KR20100098155A (en) * 2009-02-27 2010-09-06 주식회사 와이즈오토모티브 System for controlling integration electronic control unit
KR20150136336A (en) * 2014-05-27 2015-12-07 한국전자통신연구원 Wireless Sensor Network System for Vehicle and Method Operating Thereof
KR20190012607A (en) * 2017-07-28 2019-02-11 현대모비스 주식회사 Apparatus for warning rear collision of vehicle and control method thereof
KR20210073705A (en) * 2019-12-10 2021-06-21 현대모비스 주식회사 Vehicle control system according to failure of autonomous driving vehicle and method thereof

Also Published As

Publication number Publication date
KR102656802B1 (en) 2024-04-12

Similar Documents

Publication Publication Date Title
US20210046944A1 (en) Determination of reliability of vehicle control commands via redundancy
US10579484B2 (en) Apparatus and method for enhancing reliability of watchdog circuit for controlling central processing device for vehicle
JP6599054B2 (en) Abnormality determination device, abnormality determination method, and abnormality determination program
US11609567B2 (en) Apparatus and method for controlling vehicle based on redundant architecture
US20230339481A1 (en) Determination of reliability of vehicle control commands using a voting mechanism
US10691565B2 (en) Storage control device and storage control method
JP5163807B2 (en) Microcomputer mutual monitoring system and microcomputer mutual monitoring method
CN110785742A (en) Device and method for actuating a vehicle module as a function of a status signal
US20210229684A1 (en) Determination of reliability of vehicle control commands via memory test
EP3736694A1 (en) Automatic driving processing system, system on chip and method for monitoring processing module
US20140351658A1 (en) Redundant computing architecture
US20190033367A1 (en) System, Apparatus And Method For Functional Testing Of One Or More Fabrics Of A Processor
US9221492B2 (en) Method for operating an electrical power steering mechanism
US20190361764A1 (en) Redundant processor architecture
JPH11250029A (en) Monitoring method and device for computer device consisting of at least two processors
EP4257453A1 (en) Control method, monitoring method, electronic control units, controller and control system
KR102656802B1 (en) Autonomous driving computing platform based on redundant architecture
KR20050016545A (en) System and method to determine a healthy group of processors and associated firmware for booting a system
CN114771556A (en) Vehicle control method and device based on distributed redundancy, electronic device and medium
CN115712517A (en) Fault processing method and device of neural network processor
JP2019121043A (en) Vehicle control system and vehicle control apparatus
WO2019001329A1 (en) Fault detection and processing method and apparatus for electric vehicle inverter, and storage medium
US11796591B1 (en) Smart storage of shutdown LBIST status
KR102007246B1 (en) Method and Apparatus for Checking Operation of Watchdog Detection
US20230134320A1 (en) Information processing device, vehicle, and information processing method

Legal Events

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