SYSTEM AND METHOD FOR RAILWAY CONSTRUCTION FOR TRANSITIONS BETWEEN DRAW CENTERING APPLICATIONS
The system facilitates smooth transitions between lane-centering applications in autonomous vehicles by maintaining the vehicle's path and applying dynamic stabilization thresholds, addressing abrupt lane changes and improving the driving experience.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- GM GLOBAL TECHNOLOGY OPERATIONS LLC
- Filing Date
- 2025-01-14
- Publication Date
- 2026-05-21
AI Technical Summary
Existing autonomous vehicle systems require vehicles to return to the center of the lane when switching between lane-centering applications, leading to abrupt or inefficient lane changes, especially during intentional off-center positioning, which can disrupt the driving experience and prompt driver intervention.
A computer-implemented path construction method that allows vehicles to transition smoothly between lane-centering applications by maintaining the vehicle's current path and applying dynamic stabilization thresholds, using data processing hardware to generate path commands that adjust the vehicle's mode based on its states and road conditions.
Enables seamless transitions between lane-centering applications without the need for driver intervention, maintaining vehicle stability and reducing abrupt lane changes, thereby enhancing the driving experience and safety.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
INTRODUCTION
[0001] The information provided in this section serves the purpose of providing a general overview of the context of the disclosure. Neither the work of the inventors currently named, to the extent described in this section, nor those aspects of the description that could not otherwise qualify as prior art at the time of filing, are expressly or implicitly recognized as prior art against the present disclosure.
[0002] This disclosure relates generally to track designs for transitions between lane-centering applications. Autonomous lane-centering applications are essential components of modern autonomous vehicle systems designed to maintain a vehicle's position within a defined lane. These applications use a combination of sensors, cameras, and advanced algorithms to detect lane markings and adjust the vehicle's steering to keep it centered. By continuously monitoring the vehicle's position relative to the lane boundaries, these systems can make real-time adjustments to ensure the vehicle remains in its lane, thereby improving safety and reducing driver fatigue.Current lane centering technologies can handle various driving conditions, including straight roads, curves and lane changes, by maintaining a consistent position in the lane.
[0003] However, when switching from one lane-centering application to another, existing autonomous vehicle systems typically require the vehicle to return to the center of the lane. This requirement can lead to abrupt or inefficient lane changes if the vehicle is intentionally positioned off-center, such as during lane merging or obstacle avoidance. The need to recenter the vehicle before switching applications can result in a less smooth driving experience and may prompt the driver to make inputs or intervene. Addressing this limitation is essential for developing more advanced and seamless autonomous driving technologies. SUMMARY
[0004] One aspect of the disclosure provides a computer-implemented path construction method for transitions between lane centering applications, which, when executed in data processing hardware, causes the data processing hardware to perform operations which, while deployed in a first feature mode of a vehicle, include receiving a request to deploy a second feature mode of the vehicle, the second feature mode being different from the first feature mode, and identifying, based on states of the vehicle, that a path of the vehicle is offset from a center of a lane of the vehicle.The system and procedure also include determining that the vehicle's states do not exceed a dynamic stabilization threshold and generating path commands that instruct the vehicle to transition from the vehicle's first feature mode to the vehicle's second feature mode.
[0005] Implementations of the disclosure may include one or more of the following optional features. In certain implementations, the path commands maintain the vehicle's path, offset from the center of the vehicle's track, as the vehicle transitions from the first feature mode to the second feature mode. In certain examples, the first feature mode contains a first set of feature states, and the second feature mode contains a second set of feature states. In these examples, the first set of feature states and the second set of feature states may contain at least one feature state in common. Here, the path commands may mix the at least one common feature state as the vehicle transitions from the first feature mode to the second feature mode.Additionally or alternatively, the operations may also include applying a gradient rate limiter to the at least one common feature state while the vehicle transitions from the first feature mode to the second feature mode.
[0006] In certain implementations, the vehicle states include a steering angle of the vehicle with respect to the center of the vehicle's lane and / or a lateral offset of the vehicle with respect to the center of the vehicle's lane. In certain examples, the operations further include receiving initial lane states of the vehicle and setting the dynamic stabilization threshold based on these lane states. Here, the lane states can include lane width and / or lane curvature and / or lane features and / or vehicle accessories.Additionally or alternatively, the operations further include receiving updated road conditions of the vehicle's lane, where the updated road conditions are different from the initial road conditions, and setting the dynamic stabilization threshold based on the updated road conditions of the vehicle's lane.
[0007] Another aspect of the disclosure provides a path construction system for transitions between lane centering applications, comprising data processing hardware and storage hardware communicating with the data processing hardware. The storage hardware stores instructions which, when executed by the data processing hardware, cause the data processing hardware to perform operations that, while operating in a first feature mode of a vehicle, include receiving a request to engage a second feature mode of the vehicle, the second feature mode being different from the first feature mode, and identifying, based on the vehicle's states, that a path of the vehicle is offset from the center of a lane of the vehicle.The system and procedure also include determining that the vehicle's states do not exceed a dynamic stabilization threshold and generating path commands that instruct the vehicle to transition from the vehicle's first feature mode to the vehicle's second feature mode.
[0008] This aspect can include one or more of the following optional features. In certain implementations, the path commands maintain the vehicle's path, offset from the center of the vehicle's lane, as the vehicle transitions from the first feature mode to the second feature mode. In certain examples, the first feature mode contains a first set of feature states, and the second feature mode contains a second set of feature states. In these examples, the first set of feature states and the second set of feature states can share at least one feature state. Here, the path commands can shuffle this at least one shared feature state as the vehicle transitions from the first feature mode to the second feature mode.Additionally or alternatively, the operations may also include applying a gradient rate limiter to the at least one common feature state while the vehicle transitions from the first feature mode to the second feature mode. In certain implementations, the vehicle states include a heading angle of the vehicle with respect to the center of the vehicle's lane and / or a lateral offset of the vehicle with respect to the center of the vehicle's lane.
[0009] Another aspect of the disclosure provides a method for dynamically setting a stabilization threshold for centering applications. When executed in data processing hardware, this method causes the hardware to perform operations that include receiving initial lane states of a vehicle, setting a dynamic stabilization threshold based on the initial lane states of the vehicle, and identifying the vehicle's states. The operations also include performing a vehicle stabilization check to determine whether the vehicle's states exceed the dynamic stabilization threshold.If the vehicle's states do not exceed the dynamic stabilization threshold, the operations further include allowing the vehicle to transition between a first feature mode and a second feature mode.
[0010] This aspect can include one or more of the following optional features. In certain implementations, the lane states include the width of the vehicle's lane and / or the curvature of the vehicle's lane and / or lane features and / or vehicle accessories. Additionally or alternatively, the operations further include receiving updated lane states of the vehicle's lane, where the updated lane states are different from the initial lane states, and setting the dynamic stabilization threshold based on the updated lane states of the vehicle's lane.
[0011] The details of one or more implementations of the disclosure are set forth in the accompanying drawings and the description below. Further aspects, features, and advantages will become clear from the description, the drawings, and the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The drawings described here serve only to illustrate selected configurations and are not intended to limit the scope of this disclosure; they show: Fig. 1 a schematic view of an example system for track construction for transitions between lane centering applications; Fig. 2 a schematic view of example components of the system of Fig. 1; Fig. 3 a shift mediation model for the system of Fig. 1; Fig. 4A- Fig. 4D schematic views of a dynamic stabilization threshold of the system of Fig. 1, while a vehicle's environment changes; Fig. 5. A flowchart of an exemplary arrangement of operations for a track design procedure for transitions between lane centering applications; and Fig. 6. A flowchart of an exemplary sequence of operations for a procedure for dynamically setting a stabilization threshold of centering applications.
[0013] Throughout the drawings, corresponding reference symbols denote corresponding parts. DETAILED DESCRIPTION
[0014] Exemplary configurations are now described in more detail with reference to the accompanying drawings. Exemplary configurations are provided to ensure that this disclosure is thorough and fully conveys its scope to those skilled in the art. Specific details, such as examples of specific components, devices, and processes, are presented to provide a precise understanding of the configurations of this disclosure. It is evident to those skilled in the art that specific details need not be used, that exemplary configurations can be embodied in many different forms, and that the specific details and exemplary configurations are not intended to limit the scope of the disclosure.
[0015] The terminology used here serves only to describe certain exemplary configurations and is not intended to be restrictive. As used here, the singular articles "a," "an," and "the" may be intended to include the plural forms unless the context clearly indicates otherwise. The terms "includes," "comprise," "contain," and "exhibit" are inclusive and therefore establish the presence of features, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more further features, steps, operations, elements, components, and / or groups thereof.The procedural steps, processes, and operations described herein are not intended to necessarily require their execution in the specific order discussed or illustrated, unless explicitly identified as such. Additional or alternative steps may be employed.
[0016] When an element or layer is described as "attached to," "intervening with," "connected to," "attached to," or "coupled to" another element or layer, it may be directly attached to, intervening with, connected to, attached to, or coupled to that other element or layer, or there may be intermediate elements or layers. Conversely, when an element is described as "directly attached to," "directly intervening with," "directly connected to," "directly attached to," or "directly coupled to" another element or layer, there need not be any intermediate elements or layers. Other words used to describe the relationship between elements should be interpreted similarly (e.g., "between" or "directly between," "adjacent" or "directly adjacent," etc.).As used herein, the expression “and / or” includes all combinations of one or more of the associated listed elements.
[0017] The terms "first," "second," "third," etc., can be used here to describe different elements, components, areas, layers, and / or sections. These elements, components, areas, layers, and / or sections are not intended to be limited by these terms. These terms can only be used to distinguish one element, component, area, layer, or section from another. Terms such as "first," "second," and other numerical terms do not imply any sequence or order unless clearly indicated by the context.Thus, a first element, a first component, a first area, a first layer or a first section discussed below can be referred to as a second element, a second component, a second area, a second layer or a second section without deviating from the instructions of the exemplary configurations.
[0018] In this application, including the definitions below, the term "module" may be replaced by the term "circuit". The term "module" may refer to, be part of, or include an application-specific integrated circuit (ASIC); a digital, analog, or mixed analog / digital discrete circuit; a digital, analog, or mixed analog / digital integrated circuit; a combinational logic circuit; a field-programmable gate array (FPGA); a processor (shared, dedicated, or a group) that executes code; a working memory (shared, dedicated, or a group) that stores code executed by a processor; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system on a chip.
[0019] The term "code," as used above, can include software, firmware, and / or microcode, and can refer to programs, routines, functions, classes, and / or objects. The term "shared processor" includes a single processor that executes some or all of the code from multiple modules. The term "group processor" includes a processor that, in combination with additional processors, executes some or all of the code from multiple modules. The term "shared memory" includes a single memory that stores some or all of the code from multiple modules. The term "group memory" includes memory that, in combination with additional memory, stores some or all of the code from one or more modules. The term "memory" can be a subset of the term "computer-readable medium."The term "computer-readable medium" encompasses non-transient electrical and electromagnetic signals that propagate through a medium and can therefore be considered a physical, non-transient storage medium. Non-restrictive examples of non-transient storage include physical computer-readable media such as non-volatile memory, magnetic storage, and optical storage.
[0020] The devices and methods described in this application can be partially or completely implemented by one or more computer programs executed by one or more processors. The computer programs contain processor-executable instructions stored on at least one non-transient, computer-readable physical medium. The computer programs may also contain and / or access stored data.
[0021] A software application (i.e., a software resource) can refer to computer software that causes a computing device to perform a task. In certain examples, a software application may be called an "application," an "app," or a "program." Example applications include, but are not limited to, system diagnostic applications, system management applications, system maintenance applications, word processing applications, spreadsheet applications, messaging applications, media streaming applications, social networking applications, and gaming applications.
[0022] Non-transient memory can be physical devices used to store programs (e.g., sequences of instructions) or data (e.g., program state information) on a temporary or permanent basis for use by a computing device. Non-transient memory can be volatile and / or non-volatile addressable semiconductor memory. Examples of non-volatile memory include, but are not limited to, flash memory and read-only memory (ROM) / programmable read-only memory (PROM) / erasable programmable read-only memory (EPROM) / electronically erasable programmable read-only memory (EEPROM) (which is typically used, for example, for firmware such as boot programs).Examples of volatile memory include, but are not limited to, write / read memory (RAM), dynamic write / read memory (DRAM), static write / read memory (SRAM), phase change memory (PCM), and disks or tapes.
[0023] These computer programs (also known as programs, software, software applications, or code) contain machine instructions for a programmable processor and may be implemented in a high-level procedural and / or object-oriented programming language and / or in assembly / machine language. As used here, the terms "machine-readable medium" and "computer-readable medium" refer to a computer program product, a non-transient computer-readable medium, a device, and / or a device (e.g., magnetic disks, optical disks, memory, programmable logic devices (PLDs)) used to provide machine instructions and / or data to a programmable processor, which includes a machine-readable medium that receives machine instructions as a machine-readable signal.The term "machine-readable signal" refers to a signal that is used to provide machine instructions and / or data to a programmable processor.
[0024] Various implementations of the systems and techniques described herein can be realized in digital electronics and / or an optical circuit arrangement, an integrated circuit arrangement, specially designed ASICs (application-specific integrated circuits), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include an implementation in one or more computer programs that are executable and / or interpretable in a programmable system comprising at least one programmable processor, which may be specialized or general-purpose and is coupled to receive data and instructions from and send data and instructions to a storage system, at least one input device, and at least one output device.
[0025] The processes and logic operations described in this application can be performed by one or more programmable processors, also referred to as data processing hardware, which execute one or more computer programs to perform functions by working on input data and generating outputs. The processes and logic operations can also be performed by a special-purpose logic circuit arrangement, such as an FPGA (field-programmable gate array) or an ASIC (application-specific integrated circuit). Processors suitable for executing a computer program include, by way of example, general-purpose microprocessors, special-purpose microprocessors, and one or more processors of any type of digital computer. Generally, a processor receives instructions and data from read-only memory and / or read / write memory.The essential elements of a computer are a processor for executing instructions and one or more storage devices for storing instructions and data. Generally, a computer also includes, or is functionally coupled to, the ability to receive data from and / or send data to one or more mass storage devices for storing data, such as magnetic, magneto-optical, or optical media. However, a computer does not necessarily have to have such devices. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and storage devices, such as semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic media (e.g., internal hard drives or removable media); magneto-optical media; and CD-ROM and DVD-ROM media.The processor and memory can be supplemented or incorporated by a logic circuit arrangement for a specific purpose.
[0026] To provide interaction with a user, one or more aspects of the disclosure may be implemented in a computer that has a display device, such as a CRT (cathode ray tube), an LCD (liquid crystal display), or a touchscreen for displaying information to the user, and optionally a keyboard and pointing device, such as a mouse or trackball, with which the user can provide input to the computer. Other types of devices may also be used to provide interaction with a user; for example, feedback provided to the user may be any form of sensory feedback, such as...Visual, auditory, or haptic feedback; and input can be received from the user in any form, including auditory, verbal, or tactile input. Additionally, a computer can interact with a user by sending documents to and receiving documents from a device used by the user; for example, by sending web pages to an internet browser in a user's client device in response to requests received from the internet browser.
[0027] Fig. Figure 1 illustrates an example system 100 that includes a vehicle 10 and / or a remote system 60 communicating with the vehicle 10 via a network 40. The vehicle 10 and / or the remote system 60 execute a path-changing system 200, which operates when a user engages a system control feature mode 242 (e.g., hands-free or hand-guided control) of the vehicle 10. In the examples shown, the path-changing system 200 is implemented in a vehicle 10. However, the path-changing system 200 can be implemented in other computing devices (e.g., computing devices communicating with the vehicle 10), such as, without limitation, a smartphone, a tablet, a smart display, a desktop / laptop computer, a smartwatch, a smart device, or smart glasses / headset. Additionally or alternatively, the path-changing system 200 can be implemented in other propulsion systems, such as...and can be implemented without restriction in motorcycles, trucks, all-terrain vehicles, agricultural equipment, trains, aircraft, and the like. The vehicle 10 contains data processing hardware 12 and memory hardware 14 that stores instructions which, when executed in the data processing hardware 12, cause the data processing hardware 14 to perform operations. The vehicle 10 further contains one or more sensors 16 configured to acquire / receive sensor data specifying the states 18 of the vehicle 10. The one or more sensors 16 may include one or more long-range radar sensors and / or one or more camera sensors capable of acquiring image data. The states 18 may generally include the yaw, velocity, acceleration, approach angle, and other states of the vehicle 10 that may affect the trajectory of the vehicle 10.
[0028] As in Fig. As shown in Figure 1, vehicle 10 contains a central longitudinal axis A 10 and drives in lane 20, which is a center C 20 The lane 20 can also be defined by lane markings 22a, 22b, which have a width W. 20 The lanes 20 are spaced apart from each other. A position of vehicle 10 in relation to center C. 20 Lane 20 can be by means of a lateral offset LO 10 the central longitudinal axis A 10 from Center C 20 The lane 20 is defined accordingly. The heading of vehicle 10 can be defined by a heading angle α. 10 the longitudinal axis A 10 of vehicle 10 in relation to center C 20 The lane 20 must be defined. The states 18 of vehicle 10 can determine the lateral offset LO. 10 and the heading angle α 10included, which work together to define the path of vehicle 10 in lane 20. In cases where the longitudinal axis A 10 to center C 20 is aligned with lane 20 and the steering angle α 10 zero (0) with respect to center C 20 If the lane is 20, vehicle 10 can be considered to be traveling on a centered path. Conversely, if the longitudinal axis A 10 from Center C 20 the lane 20 by a lateral offset L 10 is spaced apart and / or the heading angle α 10 a number greater than zero (0) with respect to the center C 20 Since lane 20 is used, vehicle 10 is considered to be traveling with an offset track.
[0029] The remote system 60 (e.g., a server, a cloud computing environment) also contains data processing hardware 62 and storage hardware 64, which stores instructions that, when executed on the data processing hardware 62, cause the data processing hardware 62 to perform operations. In certain examples, the execution of the track-changing system 200 is shared between the vehicle 10 and the remote system 60. As described below with reference to Fig. 2 and Fig. As described in more detail in Section 3, the lane-change system 200, which is executed in the vehicle 10, and / or the remote system 60 execute a feature transfer module 210, a dynamic stabilization check module 220, and a mode intervention module 230 and are configured to receive a request to change a feature mode 242 of the vehicle 10 from a first feature mode 242a to a second feature mode 242b and then, if the states 18 of the vehicle 10 do not exceed a dynamic stabilization threshold, generate lane commands 326 for the vehicle to transition from the first feature mode 242a to the second feature mode 242b, while minimizing disturbance to the driver of the vehicle 10 and eliminating the need for driver input or intervention. In particular, conventional methods of transitions between lane-centering feature modes 242 require that the longitudinal axis A 10 and the tax rate α 10of vehicle 10 to center C 20 are aligned with lane 20 before the transfer is initiated. However, the lane change system 200 performs this transfer between feature modes 242a and 242b while maintaining the vehicle's current path, regardless of whether the vehicle is traveling along an offset path (i.e., a transverse offset LO). 10 and / or a heading angle α 10 ) with regard to center C 20 driving in lane 20.
[0030] As used here, each feature mode 242 can generally refer to a type of cross-offset LO. 10 of vehicle 10 from center C 20the lane 20 in which the vehicle 10 is traveling. The feature modes 242 can include hand-guided lane centering as well as hands-free lane centering. For example, feature modes 242 can include SuperCruise® Hands-Free Driving, hand-guided lane centering, and other applications where the vehicle 10 is intentionally not centered in lane 20. As described in more detail below, each feature mode 242 can include a corresponding set of feature states 244 that are involved / mediated to center the path of the vehicle 10 with respect to center C. 20to maintain lane 20. For example, feature states 244 can, without restriction, include a vehicle impairment lateral offset, a driver-requested lateral offset, a non-divided lane lateral offset, an overlapping lateral offset, a maintain prof lateral offset, a curvature lateral offset, a construction zone lateral offset, a lane change target lane lateral offset, a path lane keeping support lateral offset, and a behavior planner lateral offset. In certain cases, each feature mode 242 has a unique set of feature states 244 that includes and / or omits a feature state 244 of another feature mode 242. For example, the path lane keeping support lateral offset feature state 244 may be relevant for a first feature mode 242a but not for a second feature mode 242b.In further examples, one or more feature modes 242 can use feature states 244 together in such a way that when the vehicle 10 transitions between feature states 242 (e.g. from a first feature mode 242a to a second feature mode 242b), one or more feature states 244 that are active in the first feature mode 242a remain active in the second feature mode 242b.
[0031] With reference to Fig. 1 and Fig. 2. While the vehicle 10 is moving and operating in a first feature mode 242a, the feature switching module 210 of the path change system 200 is configured to receive a feature request 202 as input and to engage a second feature mode 242b of the vehicle 10, which is different from the first feature mode 244a. The feature request 202 can be received by a driver and / or a passenger of the vehicle 10 or can be initiated automatically by another control process of the vehicle 10. As shown, the feature switching module 210 has access to a feature mode data store 240, which can be stored in any memory hardware 14, 64. The feature mode data store 240 stores the feature modes 242 of the vehicle 10 and, for each feature mode 242, its corresponding set of feature states 244.For example, the first feature mode 242a contains the first set of feature states 244a, while the second feature mode 242b contains the second set of feature states 244b. Here, the first set of feature states 244a and the second set of feature states 244b can share at least one feature state 244. In other cases, the first set of feature states 244a and the second set of feature states 244b need not share any feature states 244.
[0032] The feature mediation module 210 can additionally receive as input the first set of feature states 244a, which corresponds to the first feature mode 242a, and the states 18 of vehicle 10. Based on the states 18 of vehicle 10, the feature mediation mode 210 can identify that the path of vehicle 10 is from center C. 20The vehicle 10 is offset from its lane 20. The feature mediation module 210 can also receive the requested second feature mode 242b and the corresponding second set of feature states 242b as input and generate path commands 326 as output, which instruct the vehicle 10 to transition from the first feature mode 242a of the vehicle 10 to the second feature mode 242b of the vehicle 10. Here, the path of the vehicle 10 is retained, although it is offset from center C. 20 the lane 20 of the vehicle 10 is offset, the track commands 326 the offset track of the vehicle 10 while it transitions from the first feature mode 242a to the second feature mode 242b.
[0033] With reference to Fig. 2 and Fig. 3. The feature mediation module 210 executes an offset mediation model 300 which, for each feature state 244 of the first set of feature states 244a, determines how the feature state 244 is to be transitioned from the first feature mode 242a to the second feature mode 242b, and generates the path commands 326 so that the vehicle 10 maintains its current path while transitioning from the first feature mode 242a to the second feature mode 242b. In other words, the feature mediation module 210 can perform mediation for each feature state 244 that is currently engaged by the first feature mode 242a to determine how the feature state 244 is to be either tapered or reduced to zero, or how the feature state 244 is to be smoothly transitioned for use in the second feature mode 242b.By performing a mediation, the offset mediation model 300 enables a smooth transition between the first feature mode 242a and the second feature mode 242b by seamlessly integrating and incorporating varying cross-offset values of each of the feature states 244a, 244b.
[0034] In Operation 302, the offset mediation model 300 determines whether the specific feature state 244 is continuous between the first feature mode 242a and the second feature mode 242b. Here, the offset mediation model 300 can determine that the specific feature state 244 is continuous if it is present in both the first set of feature states 244a and the second set of feature states 244b. If the feature state 244 is continuous between the first feature mode 242a and the second feature mode 242b, the offset mediation model 300 proceeds to Operation 304, which determines whether the magnitude of the difference between the current cross-offset LO10 of vehicle 10 and the requested lateral offset LO 10 The vehicle's 10 (i.e., the one specified in requirement 202) is greater than a smoothing threshold. Here, the smoothing threshold can be a configurable threshold that minimizes the vehicle's jerk between feature modes 242a and 242b.
[0035] If the amount of the difference between the current cross-offset LO 10 of vehicle 10 and the requested lateral offset LO 10 If the vehicle 10 is greater than the smoothing threshold, the offset mediation model 300 proceeds to operation 306 and applies a gradient rate limiter to a continuous specific feature state 244 that is common between the first feature mode 242a and the second feature mode 242b to manage the transition between the current lateral offset LO 10 of vehicle 10 and the requested lateral offset LO 10to smooth the vehicle 10. Then, in operation 324, the offset mediation model 300 can mix the summary of all feature states 244 to generate the final path commands 326. In certain cases, the offset mediation model 300 mixes the feature states 244 by calculating a path for each feature state 244 in a cubic polynomial form and solving the system using Gaussian elimination on a sequence of extended matrices until the final matrix is in upper triangular form, which is used to create a mixed path that is used to generate the path commands 326. In other cases, the offset mediation model 300 mixes the feature states 244 by comparing the direction of the transverse offset LO. 10, which is assigned to each feature state 244, where a leftward offset has a positive sign and a rightward offset has a negative sign. In cases where all offsets are positive, the maximum offset value is used to generate the path commands 326. If all offsets are negative, the minimum offset value is used to generate the path commands 326, and in all other scenarios, a weighted sum is used to generate the path commands 326.
[0036] If the amount of the difference between the current cross-offset LO 10 of vehicle 10 and the requested lateral offset LO 10 If the vehicle's 10 is smaller than the smoothing threshold, the offset mediation model 300 proceeds to operation 308 and determines the current lateral offset LO. 10 of feature state 244 directly to the requested cross offset LO 10, which is defined by requirement 202, to switch without a rate limiter on the cross offset LO 10 of feature state 244. Here, switching without applying the rate limiter can be included in the path commands 326 if feature states 244 are mixed in operation 324.
[0037] Conversely, if the offset mediation model 300 determines that the specified feature state 244 is not continuous between the first feature mode 242a and the second feature mode 242b, the offset mediation model 300 proceeds to operation 310 and sets a transition mode timer. Afterwards, in operation 312, the offset mediation model 300 can determine the requested cross offset LO. 10 , which is assigned to the specific feature state 244, identify and determine in operation 314 whether the requested cross offset LO 10, which is assigned to the specific feature state 244, is already in transition, has an active transition mode timer, or is a currently active feature state 244. If the requested cross offset LO 10 , which is assigned to the specific feature state 244, is already in transition, has an active transition mode timer, or is a currently active feature state 244, the offset mediation model 300 continues to apply the requested cross offset LO 10 , which is assigned to the specific feature state 244, to monitor. However, if the requested cross offset LO 10 If the feature associated with feature state 244 is not in transition, has an expired transition mode timer, or is inactive, the offset mediation model 300 proceeds to operation 316 and identifies that feature state 244 is not active.
[0038] In operation 318, the offset mediation model 300 determines whether the amount of the current lateral offset LO 10 The feature state 244 is greater than the smoothing threshold, and if so, it proceeds to operation 320 and applies a rate limiter to the current cross-offset LO. 10 to smooth the transition of feature state 244 from the first feature mode 242a to the second feature mode 242b. Here, the applied rate limiter can be included in the path commands 326 if the feature states 244 are mixed. Conversely, operation 322 is then used if the magnitude of the current cross offset LO 10 If the feature state 244 is smaller than the smoothing threshold, the offset mediation model 300 determines the feature state 244 of the current lateral offset LO. 10 to zero (0). In operation 324, the offset mediation model 300 can determine the feature states 244, which define the current lateral offset LO. 10, which is set to zero (0), contain, mix when the path commands 326 are generated.
[0039] With renewed reference to Fig. 2. While the feature mediation module 210 executes the offset mediation model 300 to generate the path commands 326, the dynamic stabilization check module 220 determines whether the transition from the first feature mode 242a to the second feature mode 242b exceeds a dynamic stabilization threshold. In other words, the dynamic stabilization check module 220 detects whether the current path of the vehicle 10 is stable enough to initiate a transition between the first feature mode 242a and the second feature mode 242b. Advantageously, the dynamic stabilization check module 220 can dynamically adjust and / or update the dynamic stabilization threshold that the current path must meet to initiate the transition between feature modes 242a and 242b as the track and the environment surrounding the vehicle 10 change.
[0040] Specifically referring to Fig. 4A- Fig. In Figure 4D, environments 400a-400d are shown and each contains vehicle 10 driving in lane 20a, 20b, where the dynamic stabilization test module 220 dynamically updates the dynamic stabilization threshold. In particular, lane 20a, which is in Fig. 4A and Fig. As shown in 4B, a wider width W 20a on as a width W 20b lane 20b, which is in Fig. 4C and Fig. 4D is shown. With reference to Fig. 4A can move vehicle 10 to the left of center C using an offset track. 20a drive in lane 20a in such a way that the longitudinal axis A 10 of vehicle 10 to the left (i.e. closer to the left lane marking 22a1) of center C 20aThe lane 20a is offset. Based on the fact that the road conditions 24 specify the wider lane 20a and the path of the vehicle 10 in lane 20a, the dynamic stabilization test module 220 determines the steering angle α. 10a of the dynamic stabilization threshold to increase the threshold for paths to the right, while decreasing the threshold for paths to the left.
[0041] With reference to Fig. 4A, vehicle 10 is still driving in lane 20a, which has a width of W. 20a exhibits this. Here, vehicle 10 has moved to an offset track to the right of center C. 20a the lane 20a moves in such a way that the longitudinal axis A 10 of vehicle 10 now to the right (i.e. closer to the right lane marking 22b1) of center C 20aThe lane 20a is offset. Here, based on the fact that the road conditions 24 specify the wider lane 20a and the path of the vehicle 10 in lane 20a, the dynamic stabilization test module 220 determines the steering angle α. 10b of the dynamic stabilization threshold to increase the threshold for paths to the left, while decreasing the threshold for paths to the right.
[0042] With reference to Fig. 4C now transports vehicle 10 in lane 20b, which has a narrower width W20b than the width W20a of lane 20a. Here, vehicle 10 travels with the offset track to the left of center C. 20b the lane 20b such that the longitudinal axis A 10 of vehicle 10 to the left (i.e. closer to the left lane marking 22a2) from center C 20b The lane 20b is offset. In response, the dynamic stabilization module 220 adjusts the steering angle α. 10cof the dynamic stabilization threshold to reduce the threshold for tracks both to the left and to the right, where the threshold value to the left is smaller than the threshold value to the right. Accordingly, with reference to Fig. 4D the vehicle 10 is still in lane 20b, but is now to the right (i.e. closer to the right lane marker 22b2) from center C 20b The vehicle is displaced from lane 20b. In response, the dynamic stabilization module 220 adjusts the steering angle α. 10d of the dynamic stabilization threshold to reduce the threshold for tracks both to the left and to the right, with the track threshold value to the right now being smaller than the track threshold value to the left.
[0043] With renewed reference to Fig. 2. The dynamic stabilization test module 220 can receive as input the vehicle states 18, which specify the path of the vehicle 10, and initial roadway states 24 of the lane 20 in which the vehicle 10 is traveling. The roadway states 24 can generally specify the width W. 20The initial road conditions 24 of vehicle 10, the curvature of lane 20, road surface characteristics of lane 20, and accessories (e.g., trailer mode) of vehicle 10 are included. Based on the received initial road surface conditions 24, the dynamic stabilization test module 220 can set a dynamic stabilization threshold. Subsequently, the dynamic stabilization test module 220 can perform a stabilization test to determine whether the conditions 18 of vehicle 10 exceed the dynamic stabilization threshold. If the vehicle 10 states 18 do not exceed the dynamic stabilization threshold set by the initial road conditions 24, the dynamic stabilization check module 220 can generate a trigger to the mode intervention module 230, which authorizes the mode intervention module 230 to allow the transition between the first feature mode 242a and the second feature mode 242b.Here, the mode intervention module 230 can additionally receive the path commands 236 from the feature mediation module 210 and can generate the path commands 236 as output to switch to the second feature mode 242b.
[0044] In certain cases, the dynamic stabilization check module 220 may receive updated road conditions 24 for lane 20 of vehicle 10 at a later time. In these cases, the updated road conditions 24 differ from the previously received initial road conditions 24 due to the mobility of vehicle 10. Here, the dynamic stabilization check module 220 dynamically adjusts the dynamic stabilization threshold in real time based on the updated road conditions 24 for lane 20 of vehicle 10.
[0045] Fig. Section 5 contains a flowchart of an exemplary sequence of operations for a Procedure 500 for dynamically setting a stabilization threshold for centering applications. The Procedure 500 can be described with reference to Fig. 1- Fig. 4D can be described. A data processing hardware (e.g., the data processing hardware 12, 62 of Fig. 1) can execute instructions stored in memory hardware (e.g., memory hardware 14, 64 of Fig. 1) are stored to perform the exemplary sequence of operations for procedure 500.
[0046] Operations 502-508 of procedure 500 can be performed while a first feature mode 242a of a vehicle 10 is being used. In operation 502, procedure 500 includes receiving a request 202 to use a second feature mode 242b of the vehicle 10. Here, the second feature mode 242b is different from the first feature mode 242a. In operation 504, procedure 500 includes identifying, based on states 18 of the vehicle 10, that a path of the vehicle from a center C 20 The procedure 500 further comprises, in operation 506, determining that the states 18 of the vehicle 10 do not exceed a dynamic stabilization threshold. In operation 508, the procedure 500 also comprises generating path commands 326 that instruct the vehicle 10 to transition from the first feature mode 242a of the vehicle 10 to the second feature mode 242b of the vehicle 10.
[0047] Fig. Section 6 contains a flowchart of an exemplary sequence of operations for a procedure 600 for dynamically setting a stabilization threshold for centering applications. The procedure 600 can be described with reference to Fig. 1- Fig. 4D can be described. A data processing hardware (e.g., the data processing hardware 12, 62 of Fig. 1) can execute instructions stored in memory hardware (e.g., memory hardware 14, 64 of Fig. 1) are stored to perform the exemplary sequence of operations for procedure 600.
[0048] In Operation 602, Procedure 600 includes receiving initial lane states 24 of a lane 20 of a vehicle 10. In Operation 604, Procedure 600 also includes setting a dynamic stabilization threshold based on the initial lane states 24 of the lane 20 of the vehicle 10. Procedure 600 also includes, in Operation 606, identifying states 18 of the vehicle 10.
[0049] In Operation 608, Procedure 600 further includes performing a stabilization test of the vehicle 10 to determine whether the states 18 of the vehicle 10 exceed the dynamic stabilization threshold. If the states 18 of the vehicle 10 do not exceed the dynamic stabilization threshold, Procedure 600 further includes in Operation 610 allowing the vehicle 10 to transition between a first feature mode 242a and a second feature mode 242b.
[0050] Several implementations have been described. However, it should be understood that various modifications can be made without deviating from the concept and scope of the disclosure. Accordingly, further implementations fall within the scope of the following claims.
[0051] The preceding description is provided for illustrative and descriptive purposes only. It is not intended to be exhaustive or to limit the disclosure. Individual elements or features of a particular configuration are generally not restricted to that particular configuration but are, where applicable, interchangeable and may be used in any chosen configuration, even if not specifically shown or described. They may also be varied in many ways. Such variations are not to be considered a deviation from the disclosure, and it is intended that all such modifications are included within the scope of the disclosure.
Claims
[1] A computer-implemented procedure which, when executed in data processing hardware, causes the data processing hardware to perform operations which include: while it is used in a first feature mode of a vehicle: Receiving a request to use a second feature mode of the vehicle, wherein the second feature mode is different from the first feature mode; Identifying, based on the vehicle's state, that a path of the vehicle is offset from the center of a lane of the vehicle; Determine that the vehicle's states do not exceed a dynamic stabilization threshold; and Generating path commands that instruct the vehicle to transition from the vehicle's first feature mode to the vehicle's second feature mode. [2] Method according to claim 1, wherein the path commands maintain the path of the vehicle which is offset from the center of the vehicle's lane while the vehicle transitions from the first feature mode to the second feature mode. [3] Method according to claim 1, wherein the first feature mode contains a first set of feature states and the second feature mode contains a second set of feature states. [4] Method according to claim 3, wherein the first set of feature states and the second set of feature states contain at least one common feature state. [5] Method according to claim 4, wherein the track commands mix the at least one common feature state while the vehicle transitions from the first feature mode to the second feature mode. [6] Method according to claim 4, wherein the operations further comprise applying a gradient rate limiter to the at least one common feature state while the vehicle transitions from the first feature mode to the second feature mode. [7] Method according to claim 1, wherein the vehicle states comprise: a steering angle of the vehicle in relation to the center of the vehicle's lane and / or a lateral offset of the vehicle in relation to the center of the vehicle's lane. [8] The method of claim 1, wherein the operations further comprise: Receiving initial road conditions of the vehicle's lane; and Setting the dynamic stabilization threshold based on the road conditions of the vehicle's lane. [9] The method of claim 8, wherein the road conditions comprise: a width of the vehicle's lane and / or a curvature of the vehicle's lane and / or road surface characteristics and / or Vehicle accessories. [10] The method of claim 8, wherein the operations further comprise: Receiving updated road conditions of the vehicle's lane, where the updated road conditions are different from the initial road conditions; and Setting the dynamic stabilization threshold based on the updated road conditions of the vehicle's lane.