KR20230098100A - 자율주행 하위 제어 시스템 - Google Patents

자율주행 하위 제어 시스템 Download PDF

Info

Publication number
KR20230098100A
KR20230098100A KR1020230061645A KR20230061645A KR20230098100A KR 20230098100 A KR20230098100 A KR 20230098100A KR 1020230061645 A KR1020230061645 A KR 1020230061645A KR 20230061645 A KR20230061645 A KR 20230061645A KR 20230098100 A KR20230098100 A KR 20230098100A
Authority
KR
South Korea
Prior art keywords
value
control
target
acceleration
target acceleration
Prior art date
Application number
KR1020230061645A
Other languages
English (en)
Inventor
이경수
현영진
박대혁
Original Assignee
(주)스마트모빌리티랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)스마트모빌리티랩 filed Critical (주)스마트모빌리티랩
Priority to KR1020230061645A priority Critical patent/KR20230098100A/ko
Publication of KR20230098100A publication Critical patent/KR20230098100A/ko

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
    • 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
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/14Adaptive cruise control
    • B60W30/143Speed control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/0008Feedback, closed loop systems or details of feedback error signal
    • B60W2050/001Proportional integral [PI] controller
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • 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
    • B60W2710/00Output or target parameters relating to a particular sub-units
    • B60W2710/06Combustion engines, Gas turbines
    • B60W2710/0605Throttle position
    • 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
    • B60W2710/00Output or target parameters relating to a particular sub-units
    • B60W2710/06Combustion engines, Gas turbines
    • B60W2710/0666Engine torque
    • 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
    • B60W2710/00Output or target parameters relating to a particular sub-units
    • B60W2710/10Change speed gearings

Abstract

실시예에 따른 자율주행 하위 제어 시스템은 상위 제어기의 출력값인 목표 가속도값을 입력 받아 제어 대상(plant)을 직접 동작 시킨다. 실시예에서는 이네이블(Enable) 신호가 생성된 순간 부터 토크 명령(Torque Command)이 출력되는 시간 동안 제어대상을 안정적으로 목표값에 도달하게 한다. 일반적으로 하위제어를 통해 가속 비율(accelerator %)제어, 제동 범위(brake degree)를 제어를 수행하므로, 실시예에서는 가속 입력값 및 감속 입력값으로 하위 제어를 수행하는 시스템을 제공한다.

Description

자율주행 하위 제어 시스템{AUTONOMOUS DRIVING CHASSIS CONTROL SYSTEM}
본 개시는 자율주행 하위 제어 시스템 및 방법에 관한 것으로 구체적으로, 자율주행 차량에서 가속 및 감속 입력 값으로 속도제어 및 횡방향 제어를 통해 직선로, 등판로, 회전구간, 신호등, 보행로, 고속도로를 비롯한 다양한 차선에서 주행을 제어하는 자율주행 차량의 하위 제어 시스템에 관한 것이다.
본 명세서에서 달리 표시되지 않는 한, 이 섹션에 설명되는 내용들은 이 출원의 청구항들에 대한 종래 기술이 아니며, 이 섹션에 포함된다고 하여 종래 기술이라고 인정되는 것은 아니다.
자율주행 기술이 급격하게 발전하여 향후 5년 이내 4단계 자율주행 자동차가 상용화 될 것으로 기대되고 있다. 또한 최근 자율주행 자동차의 극한상황에서 조종안정성을 높이기 위한 제어기법에 대한 연구가 활발하다.
정밀제어란 주어진 전기기계시스템에서 최대한 짧은 시간 내에 초정밀의 움직임을 제어하는 것이다. 정밀제어시스템은 크게 로봇이나 공작기계 자체인 전기기계부, 로봇팔이나 공작물을 가공하는 툴을 움직이는 구동부, 움직임을 감지하는 센서부, 구동부를 제어하는 서보 제어기로 구성된 하위 제어기, 로봇 모션 명령이나 공작물의 가공 명령을 총괄하는 상위제어기, 하위제어기와 상위제어기를 연결하는 통신부로 구성될 수 있다.
상위 제어기는 설정 속도와 차량의 속도 차이를 통해서 하위 제어기로 목표 가속도 신호를 전달하고, 하위 제어기는 상위 제어기로부터 원하는 가속도를 받아서 실제로 감속 및 가속을 조절한다. 예컨대, 하위제어기는 사람이 운전하는 것과 같이 뇌에서 판단된 내용을 기반으로 사람의 팔, 다리가 움직이는 것처럼 데이터 인지 및 판단 결과에 따라 가속 제어, 감속 제어 및 횡방향 제어를 수행한다.
상위 제어기는 일종의 컴퓨팅 시스템으로, 설정한 속도와 현재 차량의 속도 간의 차이를 통해서 필요한 가속도를 계산한다. 만약 현재 차량의 속도가 설정한 속도보다 낮다면, 필요한 가속도는 +가 될 것이고, 반대의 경우에는 -로 산출된다. 반면, 하위 제어기는 상위 제어기의 출력인 필요한 가속도를 실제로 차량이 낼 수 있도록 구현해주는 역할을 수행한다. 필요한 가속도가 + 라면 스로틀 제어를 통해서 구동력을 낼 것이며, 필요한 가속도가 - 라면 마스터 실린더(Master Cylinder) 유압 조절을 통해서 제동력을 생성한다.
상위 제어기는 현재 속도와 설정 속도의 오차를 통해서 필요한 가속도를 생성한다. 상위제어기는 대부분의 경우 PID 제어기를 사용한다. PID 제어기는 (Propotional, Integral, Derivative) 즉 비례, 적분 그리고 미분을 사용한 제어기이다. P는 오차값에 비례하는 값을 I는 오차의 적분값을 D는 오차의 미분값을 통해서 계산한다. 상위 제어기를 설계하기 위해서는 하위 제어기와 제어대상인 플랜트를 간단한 시스템으로 간주한다. 직진 방향 동역학에서는 하위 제어기와 플랜트를 1차 지연 시스템으로 모델링 할 수 있다. 상위 제어기는 Vref(설정 속도)와 Vx(현재 차량 속도)의 오차를 기반으로 목표 가속도를 계산한다. 계산은 PID 제어를 통해서 이루어지는데, 실제로 모델링해서 크루즈 컨트롤을 구현하는 경우, Kp 값의 변화에 따라 오버슈트(overshoot)가 발생한다. 또한, 차량의 중요 통신 데이터 문제로 인해, 제어기에서 CAN 에러가 발생하는 문제가 있다.
1. 한국 특허등록 제 10-2120108호 (2020.06.02) 2. 한국 특허등록 제 10-2084528호 (2020.02.27)
실시예에 따른 자율주행 하위제어 시스템은 자율주행 차량에서 가속 및 감속 입력 값으로 속도제어 및 횡방향 제어를 통해 직선로, 등판로, 회전구간, 신호등, 보행로, 고속도로를 비롯한 다양한 차선에서 주행을 제어한다.
실시예에 따른 자율주행 하위 제어 시스템은 상위 제어기의 출력값인 목표 가속도값을 입력 받아 제어 대상(plant)을 직접 동작 시킨다. 실시예에서는 이네이블(Enable) 신호가 생성된 순간 부터 토크 명령(Torque Command)이 출력되는 시간 동안 제어대상을 안정적으로 목표값에 도달하게 한다.
일반적으로 하위제어를 통해 가속 비율(accelerator %)제어, 제동 범위(brake degree)를 제어를 수행하므로, 실시예에서는 가속 입력값 및 감속 입력값으로 하위 제어를 수행하는 시스템을 제공한다.
실시예에 따른 자율주행 차량 하위 제어 시스템은 현재 차량의 속도 및 목표 가속도값을 입력 받아, 목표 가속도값을 확인하는 판단모듈; 목표 가속도 값이 양수인 경우, 제1명령값을 생성하고, 목표 가속도 값이 음수인 경우 제2명령값을 생성하고, 현재 차량 속도와 목표 가속도값을 기반으로 필요한 가속도를 만족시키기 위한 엔진 토크 값을 연산하는 연산모듈; 을 포함한다.
이상에서와 같은 자율주행 하위제어 시스템은 입력 값과 목표 값을 기반으로 하위제어를 수행하여 자율주행 차량의 정밀 제어를 가능하게 하고, 에러 영향을 줄여 오작동을 방지한다. 또한, 자율주행 차량의 크루즈 컨트롤 모드에서 초정밀 제어를 가능하게 하여 보다 안정적인 자율주행을 가능하게 하여 승차감을 향상시킬 수 있도록 한다.
본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.
도 1은 실시예에 따른 하위제어를 수행하는 자율주행 차량의 시스템 구성을 나타낸 도면
도 2는 실시예에 따른 자율주행 차량의 하위제어 시스템 블록도 구성을 나타낸 도면
도 3은 실시예에 따른 자율주행 차량의 하위제어 시스템 동작을 설명하기 위한 도면
도 4는 실시예에 따른 하위제어기의 데이터 처리 블록을 나타낸 도면
도 5는 실시예에 따른 하위제어기의 연산 과정을 나타낸 도면
도 6은 실시예에 따른 하위제어기에 의한 자율주행 차량의 신호 변화를 나타낸 그래프
도 7은 실시예에 따른 하위제어기의 제동 제어 성능을 나타낸 그래프
도 8은 실시예에 따른 자율주행 차량 하위제어 시스템의 종방향 제어 성능 검증 시나리오를 나타낸 도면
도 9는 기존 차량의 CAN 데이터를 분리, 필터링 하여 사용할 수 있는 로직을 나타낸 도면
도 10 및 도 11은 자율주행 하위제어 시스템의 로직 구현(Simulink logic)의 예를 나타낸 도면
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 실시예에 따른 하위제어를 수행하는 자율주행 차량의 시스템 구성을 나타낸 도면이다.
실시예에 따른 자율주행 차량은 차량 전면에는 라이더 센서, 전면카메라, AVM(Around View Monitoring) 카메라 등이 구성되고 차량 후면에는 GPS, 라이더 센서, 컨트롤러 등이 구성될 수 있다. 실시예에 따른 자율주행 하위 제어 시스템은 상위 제어기의 출력값인 목표 가속도값을 입력 받아 제어 대상(plant)을 직접 동작 시킨다. 실시예에서는 이네이블(Enable) 신호가 시작되는 순간(신호 생성 순간) 부터 토크 명령(Torque Command)이 출력되는 시간 동안 제어대상을 안정적으로 목표값에 도달하게 한다. 현재 상용되는 자율주행 차량에서 가속 비율(accelerator %)제어, 제동 범위(brake degree)를 제어하고 있으므로 실시예에서는 가속 입력값 및 감속 입력값으로 하위 제어를 수행하는 제어기를 제공한다.
도 2는 실시예에 따른 자율주행 차량의 하위제어 시스템 블록도 구성을 나타낸 도면이다.
도 2를 참조하면, 실시예에 따른 자율주행 차량의 하위제어 시스템은 HMI(300), ACU(Actuator control unit)(100), 하위제어기(200) 및 차량 시스템(400)을 포함하여 구성될 수 있다. 실시예에서는 시스템우선모드에서 운전자우선모드를 스위치를 통해 선택할 수 있다. 탑승자가 시스템우선모드를 선택하면 차량의 하위 제어기가 설정되고, 자율주행 차량을 ACU에서 제어할 수 있도록 시스템이 구성된다.
도 3은 실시예에 따른 자율주행 차량의 하위제어 시스템 동작을 설명하기 위한 도면이다.
도 3을 참조하면, 상위 제어기는 설정 속도와 차량의 속도 차이를 통해서 하위 제어기로 목표 가속도 신호를 전달한다. 하위 제어기는 상위 제어기로부터 원하는 가속도를 전달받아서 실제로 감속 및 가속을 조절한다. 가속을 위해서는 스로틀(Throttle)값을, 감속을 위해서는 마스터 실린더 압력(Master Cylinder Pressure)값을 조절한다. 실시예에서 상위제어기는 설정한 속도와 현재 차량의 속도 간의 차이를 통해서 필요한 가속도를 계산한다. 만약 현재 차량의 속도가 설정한 속도보다 낮다면, 필요한 가속도는 플러스(+)가 될 것이고, 반대의 경우에는 마이너스(-)가 된다. 하위 제어기는 상위 제어기의 출력인 필요한 가속도를 실제로 차량이 낼 수 있도록 구현해주는 역할을 한다. 필요한 가속도가 플러스(+) 라면 스로틀 제어를 통해서 구동력을 낼 것이며, 필요한 가속도가 마이너스(-) 라면 마스터 실린더(Master Cylinder) 유압 조절을 통해서 제동력을 만들어준다. 상위 제어기는 현재 속도와 설정 속도의 오차를 통해서 필요한 가속도를 생성한다. 이를 위해 상위제어기는 하위 제어기와 제어대상을 1차 지연 함수로 모델링한다. 이때, x는 변위 이므로 x의 미분은 속도, x의 이차 미분은 가속도이다. 상위 제어기는 Vref(설정 속도)와 Vx(현재 차량 속도)의 오차를 기반으로 목표 가속도를 계산한다.
도 4는 실시예에 따른 하위제어기의 데이터 처리 블록을 나타낸 도면이다.
도 4를 참조하면, 실시예에 따른 하위제어기는 판단모듈(210) 및 연산모듈(230)을 포함하여 구성될 수 있다. 본 명세서에서 사용되는 '모듈' 이라는 용어는 용어가 사용된 문맥에 따라서, 소프트웨어, 하드웨어 또는 그 조합을 포함할 수 있는 것으로 해석되어야 한다. 예를 들어, 소프트웨어는 기계어, 펌웨어(firmware), 임베디드코드(embedded code), 및 애플리케이션 소프트웨어일 수 있다. 또 다른 예로, 하드웨어는 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어, 센서, 멤스(MEMS; Micro-Electro-Mechanical System), 수동 디바이스, 또는 그 조합일 수 있다.
판단모듈(210)은 현재 차량의 속도 및 목표 가속도값을 입력 받아, 목표 가속도값을 확인한다. 실시예에서 판단모듈(210)은 상위제어기로부터 입력된 목표 가속도 값이 양수인지 음수인지 확인하고 확인결과를 연산모듈(230)로 전달한다.
연산모듈(230)은 목표 가속도 값이 양수인 경우, 제1명령값을 생성하고, 목표 가속도 값이 음수인 경우 제2명령값 및 제3명령값을 생성하고, 현재 차량 속도와 목표 가속도값을 기반으로 필요한 가속도를 만족시키기 위한 엔진 토크 값을 연산한다. 실시예에서 연산모듈(230)은 목표 가속도 값이 양수인 경우 스로틀(Throttle) 명령값을 제1명령값으로 생성하고, 목표 가속도가 음수인 경우 마스터 실린더 압력(Master Cylinder Pressure) 명령값을 제2명령값으로 생성하여 차량의 엑츄에이터(Actuator)로 전달한다. 또한, 실시예에서 연산모듈(230)은 목표 가속도가 음수인 경우, 브레이크 입력값을 제3명령값으로 생성하여 브레이크로 전달한다. 실시예에서 제1내지 제3 명령값은 목표 가속도에 도달하기 위한 제어대상의 제어량 데이터를 포함할 수 있다. 실시예에서 연산 모듈(230)은 제어기 신호가 시작 순간 부터 토크 명령(Torque Command)이 출력되는 시간까지의 시간 변화량 내에 목표 제어량에 도달하도록 하는 제어량을 산출한다. 또한, 산출된 엔진 토크값 및 엔진맵(Engine map), 구동체의 토크값 및 구동력의 맵을 포함한 룩업테이블(Lookup Table)에서 계산된 토크 값을 보간하여 스로틀 명령(Throttle Command) 값을 산출할 수 있다. 또한, 실시예에 따른 자율주행 하위제어 시스템은 전기차, 수소차 및 친환경 자동차를 포함하는 미래형 자동차에서 자율주행 하위제어를 위한 제어량을 산출할 수 있다. 실시예가 미래형 자동차에 구성되는 경우, 연산 모듈(230)은 제어기 신호가 시작 순간 부터 모터 제어 명령이 출력되는 시간까지의 시간 변화량 내에 모터 등 제어대상이 목표 제어량에 도달하도록 하는 제어량을 산출할 수 있다. 실시예에서는 미래형 자동차의 모터 구동 데이터 테이블에서 계산된 토크 값을 보간하여 스로틀 명령값을 산출할 수 있다.
실시예에서 스로틀 명령값은 차량 엑츄에이터 및 타이어 입력으로 전달된다. 또한, 실시예에서 연산모듈(230)은 토크값 산출을 위해 현재 차량의 속도에 따라서 기어 시프트 로직(Gear Shift Logic) 및 카심(carsim)을 활용할 수 있다. 카심(carsim)은 특정 환경에서 운전자 제어에 대한 응답으로 차량의 성능을 예측하는 상용 소프트웨어 패키지이다.
도 5는 실시예에 따른 하위제어기의 연산 과정을 나타낸 도면이다.
도 5를 참조하면, 실시예에 따른 자율주행 차량의 하위제어기(200)는 피드포워드(Feedforward) 로직을 사용한 PI 제어를 통해 스로틀, 브레이크, 마스터 실린더를 포함하는 제어대상을 컨트롤 한다. 피드포워드 제어는 목표값, 외란값과 같은 정보에 근거하여 제어량을 결정한다. 피드포워드 시스템은 제어 조작과 출력이 독립적이다.
피드 포워드(Feedforward) 로직은 제어 시스템에서 사용되는 하나의 제어 방법으로 현재의 시스템 상태에서 미래의 출력값을 예측하여 그것을 이용하여 시스템을 제어하는 방식이다. 실시예에서는 피드 포워드 로직을 통해 외부 변화나 불확실한 요인들에 대응하여 예측치를 이용하여 제어를 조절하기 때문에, 피드백 제어보다 더 정확한 제어가 가능하게 한다. 실시예에서 연산모듈(230)은 센서를 이용하여 측정한 값을 모델링하여 예측치를 계산하고, 계산된 예측치를 이용하여 제어를 조절한다. 예컨대, 연산모듈(230)은 자동차의 속도를 유지하기 위해 사용되는 크루즈 컨트롤(Cruise Control) 시스템을 피드 포워드 로직을 이용하여 제어할 수 있다. 실시예에서는 연산모듈(230)는 크루즈 컨트롤을 위해, 자동차의 현재 속도와 기타 요인들을 이용하여 예측치를 계산하고, 예측치를 이용하여 자동차의 속도를 제어한다.
또한, 실시예에서 연산모듈(230)는 예측치의 정확도가 제한되는 경우에는 피드백 제어와 결합하여 제어대상을 제어한다. 예컨대, 연산모듈(230)는 피드 포워드 로직과 피드백 제어를 결합하여 사용하는 내부 모델 기반 제어(Internal Model Control, IMC)를 통해 제어대상을 제어할 수 있다. 내부 모델 기반 제어는 피드백 제어와 피드 포워드 로직의 장점을 결합하여 더욱 정확하고 신뢰성 높은 제어가 가능하도록 한다. 실시예에서 연산모듈(230)는 IMC를 통해 제어 시스템의 출력 값과 목표값 사이의 오차를 측정하고 피드백 제어를 이용하여 제어대상을 제어한다. 동시에, 이 오차를 이용하여 내부 모델을 구축하고, 이 모델을 이용하여 피드 포워드 로직을 실행합니다. 이렇게 피드 포워드 로직은 피드백 제어에서 제어가 불가능한 외부 변화나 불확실한 요인들을 예측하고, 그것을 이용하여 제어를 보완한다.
실시예에서 연산모듈(230)는 딥러닝 뉴럴 네트워크를 트레이닝 데이터 셋으로 학습시켜 제어 시스템의 동작을 예측하기 위해 사용되는 내부모델을 구현한다. 내부 모델(Internal Model)이란, 제어 시스템의 동작을 예측하기 위해 사용되는 모델 로서, 내부 모델은 실제 시스템과 유사한 수학적 모델로 구성되며, 제어 시스템에서는 내부 모델을 이용하여 미래의 시스템 동작을 예측하고, 이를 바탕으로 효과적인 제어를 수행 있다. 내부 모델은 일반적으로 시스템의 입력과 출력 사이의 상관관계를 설명하는 수학적 모델로 구성된다. 예를 들어, 제어 시스템이 자동차의 속도를 제어하는 경우, 내부 모델은 자동차의 속도와 가속도 사이의 관계를 나타내는 수학적 모델로 구성된다.
실시예에서 연산모듈(230)은 내부 모델을 이용하여 시스템의 동작을 예측하고, 이를 기반으로 피드백 제어나 피드 포워드 로직을 수행한다. 내부 모델이 정확하게 설계되고 구현되면, 제어 시스템의 성능을 크게 향상시킬 수 있다.
또한, 실시예에서 연산모듈(230)은 내부 모델을 통해 제어 시스템의 디버깅과 테스트를 수행할 수 있다. 실시예에서 연산모듈(230)은 내부 모델을 이용하여 시뮬레이션을 수행하여, 제어 시스템의 동작을 예측하고 문제를 해결할 수 있도록 한다. 실시예에서 딥러닝 뉴럴 네트워크는 DNN(Deep Neural Network), CNN(Convolutional Neural Network) RNN(Recurrent Neural Network) 및 BRDNN(Bidirectional Recurrent Deep Neural Network) 중 적어도 하나를 포함할 수 있다. 실시예에서 내부 모델 학습을 위한 트레이닝 데이터 셋은 시스템의 입력과 출력 사이의 상관관계를 설명하는 데이터를 포함한다. 예를 들어, 제어 시스템이 자동차의 속도를 제어하는 경우, 트레이닝 데이터 셋은 자동차의 가속도, 브레이크, 엑셀러레이터 등의 입력 신호와 속도의 출력 신호를 포함한다.
트레이닝 데이터 셋은 실제 시스템에서 측정된 데이터와, 시뮬레이션을 통해 생성된 데이터를 포함한다. 또한, 실시예에서 내부 모델은 트레이닝 데이터 셋을 선택할 때는 데이터의 시간적 일관성을 고려하여 선택한다. 예컨대, 실시예에서 트레이닝 데이터 셋은 시간적으로 일관된 데이터로 구성한다.
또한, 실시예에서 하위제어기의 연산모듈(230)은 입력된 가속도 값에 따라 제1명령값인 스로틀 제어량을 수학식 1에 따라 산출할 수 있다.
수학식 1
Figure pat00001
실시예에서 하위제어기의 연산모듈(230)은 입력된 가속도 값에 따라 제3명령값인 브레이크 제어량을 수학식 2에 따라 산출할 수 있다.
수학식 2
Figure pat00002
또한, 실시예에 따른 하위제어기의 연산모듈(230)은 명목상 게인 값(Nominal Gain Value)인 K_(P,thr), K_(P,brk)를 다음과 같은 과정을 통해 산출할 수 있다.
Figure pat00003
도 6은 실시예에 따른 하위제어기에 의한 자율주행 차량의 신호 변화를 나타낸 그래프이다.
도 6을 참조하면, 실시예에서는 제어기의 이네이블(Enable) 신호가 시작되는 순간 부터 토크 명령(Torque Command)이 출력되는 시간까지의 시간 변화량인 0.01초(dt = 0.01sec) 동안 실제 각도(Angle)로 안정적으로 도달하게 한다. 시간 변화량은 차량 모델링에 따라 다르게 적용될 수 있고, 차량 각각에 따른 알고리즘을 적용하여 설정된 시간 변화량 이내에 제어 대상의 제어값을 안정적으로 도달시킨다.
도 7은 실시예에 따른 하위제어기의 제동 제어 성능을 나타낸 그래프이다.
도 7을 참조하면, 목표 가속도 값이 -2.1 이상일 때, 자율주행 차량이 10초와 20초에서 감속 제어를 수행하는 경우, 실시예에 따른 하위제어에 의해 가속도 변화량이 마이너스로 조정되어 감속될 수 있다. 도 7에 도시된 시간에 따른 가속도(Ax)그래프를 참조하면, 10초와 20초 시점에서 가속도가 감속하도록 제어되어, 차량 속도가 서서히 감속될 수 있도록 한다. 속도(Vx) 그래프를 확인해 보면, 10초와 20초 시점에서 감속이 되고, 0초에서 25초 구간동안 서서히 지속적으로 속도가 감속되는 것을 확인할 수 있다. 도 7에 도시된 제어량(Cmd)변화 비율 그래프를 참조하면, 하위제어를 통해 가속도를 마이너스 제어한 10초 및 20초 지점에서 브레이크 제어량과 스로틀 제어량이 가장 크게 변화한 것을 확인할 수 있다.
도 8은 실시예에 따른 자율주행 차량 하위제어 시스템의 종방향 제어 성능 검증 시나리오를 나타낸 도면이다.
도 8을 참조하면, 실시예에 따른 자율주행 차량 하위제어 시스템은 감속 성능의 경우, -1.1m/s2, -1.5m/s2, -2m/s2에 해당하는 가속도 변화를 제어하여, 40kph에서 50 kph 만큼 차량이 주행 가능하도록 한다. 또한 가속 성능의 경우, 1.1m/s2,2m/s2에 해당하는 가속도 변화 제어를 수행하여, 최대 40kph 만큼의 속도 지표를 나타낼 수 있도록 한다. 또한, 경사로에서 정속 유지 성능은 슬로프 경사도가 -5 내지 5퍼센트로 변화하는 경우, 20kph 내지 55kph의 속도 지표를 나타낼 수 있다.
도 9는 기존 차량의 CAN 데이터를 분리, 필터링 하여 사용할 수 있는 로직을 나타낸 도면이고, 도 10 및 도 11은 자율주행 하위제어 시스템의 로직 구현(Simulink logic)의 예를 나타낸 도면이다.
도 9내지 도 11을 참조하면, 기존 차량 시스템에서는 추가적인 제어기 장착으로 인하여 통신 인피던스가 맞지 않는 문제가 발생하여 통신 에러로 주행이 불가능한 현상이 발생할 수 있으므로, 하위시스템에서 필터 기능을 내장하여 우회함으로써, 자율주행 제어 시스템이 기존의 차량 시스템의 영향을 받지 않고 제어할 수 있도록 한다. 이상에서와 같은 자율주행 하위제어 시스템은 입력 값과 목표 값을 기반으로 하위제어를 수행하여 자율주행 차량의 정밀 제어를 가능하게 하고, 에러 영향을 줄여 시스템 오작동을 방지한다. 또한, 자율주행 차량의 크루즈 컨트롤 모드에서 초정밀 제어를 가능하게 하여 보다 안정적인 자율주행을 가능하게 하여 승차감을 향상시킬 수 있도록 한다.
개시된 내용은 예시에 불과하며, 특허청구범위에서 청구하는 청구의 요지를 벗어나지 않고 당해 기술분야에서 통상의 지식을 가진 자에 의하여 다양하게 변경 실시될 수 있으므로, 개시된 내용의 보호범위는 상술한 특정의 실시예에 한정되지 않는다.

Claims (3)

  1. 자율주행 차량 하위 제어 시스템에 있어서,
    자율주행 차량의 현재 속도와 설정 속도의 오차를 통해 하위 제어기와 제어대상을 1차 지연 함수로 모델링하여 필요한 목표 가속도를 생성하는 자율주행 차량의 상위 제어기로부터, 현재 차량의 속도 및 목표 가속도값을 입력 받아, 목표 가속도값을 확인하는 판단모듈;
    목표 가속도 값이 양수인 경우, 제1명령값을 생성하고, 목표 가속도 값이 음수인 경우 제2명령값을 생성하고, 현재 차량 속도와 목표 가속도값을 기반으로 필요한 가속도를 만족시키기 위한 엔진 토크 값을 연산하는 연산모듈; 을 포함하고
    상기 연산모듈; 은
    목표 가속도 값이 양수인 경우 스로틀(Throttle) 명령값을 제1명령값으로 생성하고, 목표 가속도가 음수인 경우 마스터 실린더 압력(Master Cylinder Pressure) 명령값을 제2명령값으로 생성하여 차량의 엑츄에이터(Actuator)로 전달하고, 목표 가속도가 음수인 경우, 브레이크 입력값을 제3명령값으로 생성하여 브레이크로 전달하고,
    상기 상위 제어기는
    설정 속도와 현재 차량 속도의 오차를 기반으로 목표 가속도를 계산하고,
    기어 시프트 로직(Gear Shift Logic) 및 차량의 성능을 예측하는 상용 소프트웨어인 카심(carsim)을 이용하여 토크 값을 산출하고,
    상기 자율주행 차량 하위제어 시스템은
    목표값, 외란값을 기반으로 제어량을 결정하는 피드포워드(Feedforward) 로직을 사용한 PI(Proportional-Integral) 제어를 통해 스로틀, 브레이크, 마스터 실린더를 포함하고
    상기 자율주행 하위 제어 시스템은
    상위 제어기의 출력값인 목표 가속도값을 입력 받아 제어 대상(plant)을 직접 동작 시키기 위해, 가속 입력값 및 감속 입력값으로 하위 제어를 수행하는 제어기를 제공하고 전기차, 수소차 및 친환경 자동차를 포함하는 미래형 자동차에서 자율주행 하위제어를 위한 제어량을 산출하고,
    상기 연산 모듈은
    목표 가속도 값이 음수인 경우 제2명령값 및 제3명령값을 생성하고, 현재 차량 속도와 목표 가속도값을 기반으로 필요한 가속도를 만족시키기 위한 엔진 토크 값을 연산하고,
    상기 연산 모듈은
    엔진 토크 값인 토크 명령(Torque Command)이 출력되는 시간까지 목표 가속도 값인 목표 제어량에 도달하도록 하는 엔진 토크 값을 포함하는 제어량을 산출하고,
    산출된 토크 값을 보간하여 스로틀 명령(Throttle Command) 값을 산출하고 제어대상을 컨트롤 하고
    내부 모델을 이용하여 시스템의 동작을 예측하고, 예측된 동작을 기반으로 피드백 제어 또는 피드 포워드 로직을 수행하는 것을 특징으로 하는 자율주행차량 하위 제어 시스템.
  2. 제1항에 있어서, 상기 연산 모듈; 은
    출력값과 목표값 사이의 오차를 측정하여 측정된 오차를 기반으로 피드백 제어를 이용하여 제어대상을 제어하고,
    상기 오차를 이용하여 내부 모델을 구축하고, 구축된 내부 모델을 이용하여 피드 포워드 로직을 실행하는 것을 특징으로 하는 자율주행 차량 하위 제어 시스템.
  3. 제2항에 있어서, 상기 연산 모듈; 은
    DNN(Deep Neural Network), CNN(Convolutional Neural Network) RNN(Recurrent Neural Network) 및 BRDNN(Bidirectional Recurrent Deep Neural Network) 중 적어도 하나를 포함하는 딥러닝 뉴럴 네트워크를 트레이닝 데이터 셋으로 학습시켜 제어 시스템의 동작을 예측하기 위해 사용되는 내부모델을 구현하는 것을 특징으로 하는 자율주행 차량 하위 제어 시스템.
KR1020230061645A 2021-12-24 2023-05-12 자율주행 하위 제어 시스템 KR20230098100A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230061645A KR20230098100A (ko) 2021-12-24 2023-05-12 자율주행 하위 제어 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210186945 2021-12-24
KR1020230061645A KR20230098100A (ko) 2021-12-24 2023-05-12 자율주행 하위 제어 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210186945 Division 2021-12-24 2021-12-24

Publications (1)

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

Family

ID=87157216

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230061645A KR20230098100A (ko) 2021-12-24 2023-05-12 자율주행 하위 제어 시스템

Country Status (1)

Country Link
KR (1) KR20230098100A (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102084528B1 (ko) 2018-12-11 2020-03-04 한국교통대학교산학협력단 협력 자율주행 시스템에서 자율주행 경로 제어와 차량통신 네트워크 부하 분산을 위한 방법 및 장치
KR102120108B1 (ko) 2017-05-12 2020-06-09 엘지전자 주식회사 자율주행 차량 및 그 제어 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102120108B1 (ko) 2017-05-12 2020-06-09 엘지전자 주식회사 자율주행 차량 및 그 제어 방법
KR102084528B1 (ko) 2018-12-11 2020-03-04 한국교통대학교산학협력단 협력 자율주행 시스템에서 자율주행 경로 제어와 차량통신 네트워크 부하 분산을 위한 방법 및 장치

Similar Documents

Publication Publication Date Title
CN109964188B (zh) 控制车辆的方法、系统和存储介质
CN111775949B (zh) 一种人机共驾控制系统的个性化驾驶员转向行为辅助方法
Wang et al. A framework of vehicle trajectory replanning in lane exchanging with considerations of driver characteristics
JP7345676B2 (ja) 自動または半自動運転車両の適応制御
JP4811075B2 (ja) 回避操作算出装置、回避制御装置、各装置を備える車両、回避操作算出方法および回避制御方法
CN110386189B (zh) 在级联调节时将干扰信号接入至基准量
JP4720107B2 (ja) ドライバモデルおよび同モデルを備えた車両挙動制御システムのアシスト機能評価装置
CN111295317B (zh) 驾驶员辅助系统、机动车辆以及用于调节车辆动力学的方法
JP2009018623A (ja) 走行制御装置
WO2010101749A1 (en) Predictive semi-autonomous vehicle navigation system
CN110626334A (zh) 用于基于预期的车道偏离控制车辆的系统和方法
WO2011009011A1 (en) An integrated framework for vehicle operator assistance based on a trajectory prediction and threat assessment
Samuel et al. Lane keeping maneuvers using proportional integral derivative (PID) and model predictive control (MPC)
CN112977461A (zh) 用于确定调节系统的调节参数的方法
CN114761895A (zh) 混合自动车队的直接和间接控制
CN112937551B (zh) 一种考虑驾驶员输入特征的车辆控制方法及系统
CN114987511A (zh) 模拟人类驾驶行为以训练基于神经网络的运动控制器的方法
CN112693468A (zh) 用于机动车的控制系统和用于调整控制系统的方法
KR20230098100A (ko) 자율주행 하위 제어 시스템
JP2023017703A (ja) 車両のビークルダイナミックコントロールシステムを最適にパラメータ化するための方法および装置
KR101930163B1 (ko) 차로 유지 제어 장치 및 방법
Schorn et al. Automatic steering and braking for a collision avoiding vehicle
JP2023512548A (ja) 車両を制御する方法
Ali et al. Multi-objective collision avoidance
CN116323351A (zh) 用于生成横向偏移轨迹的方法

Legal Events

Date Code Title Description
A107 Divisional application of patent