Vehicle control methods, devices, equipment, and readable storage media

By dividing intelligent driving function algorithms into task flows based on functional modules, the method enhances algorithm development and update efficiency by decoupling them, simplifying thread scheduling and execution.

JP2026519544APending Publication Date: 2026-06-16ZHEJIANG GEELY HLDG GRP CO LTD +1

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
ZHEJIANG GEELY HLDG GRP CO LTD
Filing Date
2024-09-13
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

The high degree of coupling among algorithms for intelligent driving functions in different application scenarios leads to low efficiency in algorithm development and update, necessitating updates across all algorithms when changes are made to specific sensor data.

Method used

The method separates intelligent driving function algorithms into multiple task flows based on functional modules, allowing independent development and update of each module's task flow without affecting others, reducing algorithmic coupling.

Benefits of technology

This approach simplifies algorithm updates and development by decoupling intelligent driving functions, improving efficiency and reducing complexity in thread scheduling and execution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026519544000001_ABST
    Figure 2026519544000001_ABST
Patent Text Reader

Abstract

This application provides a vehicle control method, apparatus, device, and readable storage medium. The vehicle currently performs intelligent driving using a target intelligent driving function, and the method includes the steps of: acquiring the state of a target state machine and chassis data corresponding to the target intelligent driving function, wherein the target state machine is a driving state machine or a parking state machine; acquiring the state of an algorithm state machine of at least one functional module corresponding to the target intelligent driving function based on the state of the target state machine and chassis data, wherein the state of the algorithm state machine is used to indicate the state of the functional module; determining a task flow waiting to be executed in the functional module according to the state of the algorithm state machine; executing the task flow and obtaining the execution result of the task flow; and performing intelligent driving according to the execution result of the task flow. This application can reduce the degree of coupling of the intelligent driving function algorithms.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to intelligent driving technology, and particularly to a vehicle control method, apparatus, device, and readable storage medium.

Background Art

[0002] With the development of vehicle intelligent driving technology, especially the Advanced Driving Assistance System (ADAS), vehicles can identify, sense, and process environmental information around the vehicle through various sensors, and perform analysis and decision-making through computer algorithms, so as to realize a series of vehicle intelligent driving functions such as Adaptive Cruise Control (ACC) function and Auto Parking Assist (APA) function.

[0003] Currently, in the prior art, the algorithms of intelligent driving functions for analysis and decision-making based on data of multiple sensors in different application scenarios are mutually coupled, and the efficiency of algorithm development and update is low. For example, when it is necessary to update the processing algorithm of specific sensor data, it is necessary to update all the algorithms of intelligent driving functions that utilize the data of that sensor, resulting in low update efficiency. That is, in the prior art, the algorithms of intelligent driving functions have a high degree of coupling.

Summary of the Invention

Problems to be Solved by the Invention

[0004] An object of this application is to provide a vehicle control method, apparatus, device, and readable storage medium in order to reduce the degree of coupling of the algorithms of intelligent driving functions.

Means for Solving the Problems

[0005] In a first aspect, this application discloses a control method for a vehicle that is currently performing intelligent driving using a target intelligent driving function. The control method includes: A step of acquiring the state and chassis data of a target state machine corresponding to the target intelligent driving function, wherein the target state machine is a driving state machine or a parked state machine, and A step of obtaining the algorithmic state machine state of at least one functional module corresponding to a target intelligent operation function, based on the target state machine state and chassis data, wherein the algorithmic state machine state is used to indicate the state of the functional module. The algorithm states a step of determining the task flow waiting to be executed in the functional module, depending on the state of the machine, Steps include executing a task flow and obtaining the results of the task flow execution, This includes a step of performing intelligent operation according to the execution results of the task flow.

[0006] Selectively, depending on the state of the algorithmic state machine , machine The step of determining the task flow waiting to be executed in the function module is: A step of determining an event waiting to be executed from the event library of a functional module, depending on the state of the algorithmic state machine, wherein an event in the event library includes at least one operator-directed graph, and the operator-directed graph is used to describe the operators required to execute the event and the execution order between the operators. The process includes the steps of concatenating operator identifiers in series according to an operator-directed graph contained in the events awaiting execution, thereby obtaining a task flow awaiting execution.

[0007] Selectively, the steps of executing a task flow and obtaining the results of the task flow execution are: A step of calling the operator corresponding to the operator identifier from the operator library according to the operator identifier in the task flow, This includes the steps of executing the operator corresponding to the identifier of each operator in the task flow and obtaining the execution result of the task flow.

[0008] Selectively, the step of obtaining the algorithmic state of the machine for at least one functional module corresponding to the target intelligent operation function, based on the target state of the machine and chassis data, is: The process includes the step of obtaining the state of the algorithmic state machine of at least one functional module corresponding to the target intelligent operation function from a state library, based on the state of the target state machine and chassis data, the state library pre-stores mapping relationships between the state of the target state machine, chassis data and the states of algorithmic state machines of multiple functional modules.

[0009] Selectively, the steps to execute the task flow are: The steps include creating threads corresponding to task flows using the thread configuration policy in the autonomous driving calculation platform application framework, and This includes the step of executing a thread corresponding to the task flow.

[0010] Selectively, the method is, The further step includes managing threads corresponding to the created task flow using thread execution policies and / or monitoring policies in the autonomous driving computation platform application framework.

[0011] Selectively, thread configuration policies include the relationships between data reception and distribution between task flows. The step of executing the thread corresponding to the task flow is: The steps include obtaining the data callback interface and delivery interface using the registration callback mechanism, according to the data reception and delivery relationship between task flows, The steps include: obtaining input data for a thread corresponding to a task flow using a data callback interface, executing the thread corresponding to the task flow, and obtaining output data corresponding to the task flow; This includes the step of distributing output data corresponding to the task flow using a distribution interface.

[0012] In a second aspect, the present invention discloses a control device for a vehicle that is currently performing intelligent driving using a target intelligent driving function, the control device being: A first acquisition module for acquiring the state and chassis data of a target state machine corresponding to a target intelligent driving function, wherein the target state machine is a driving state machine or a parked state machine, and the first acquisition module, A second acquisition module for acquiring the algorithmic state of a machine of at least one functional module corresponding to a target intelligent operation function, based on the target state of the machine and chassis data, wherein the algorithmic state of the machine is used to indicate the state of the functional module. A decision module for determining the task flow waiting to be executed in the function module, based on the state of the algorithm state machine, An executable module for running a task flow and obtaining the results of the task flow execution, It includes a processing module for performing intelligent operation according to the execution results of the task flow.

[0013] In a third aspect, the present application provides an electronic device comprising a processor and a memory communicably connected to the processor. Memory stores computer execution instructions. The processor implements the vehicle control method of any one of the first embodiments by executing computer execution instructions stored in memory.

[0014] In a fourth aspect, the present invention provides a computer-readable storage medium in which computer execution instructions are stored, and when executed by a processor, the computer execution instructions are used to implement the vehicle control method of any one of the first aspects.

[0015] In a fifth aspect, the present application provides a computer program product comprising a computer program, and when the computer program is executed by a processor, the vehicle control method according to any one of the first aspects is implemented.

[0016] In a sixth aspect, the present application provides a chip, in which a computer program is stored, and when the computer program is executed by the chip, the vehicle control method according to any one of the first aspects is implemented.

Advantages of the Invention

[0017] Referring to the above technical solution, the vehicle control method, device, equipment and readable storage medium provided in the present application determine the task flow waiting to be executed in each functional module based on the state of the algorithm state machine of at least one functional module corresponding to the intelligent driving function, and thus obtain the execution result of the task flow of each functional module, and perform intelligent driving based on the execution result. The method simplifies the combination of algorithms corresponding to multiple intelligent driving functions in different application scenarios into the combination of task flows of multiple functional modules based on the algorithm of the intelligent driving function divided into multiple functional modules, separates the implementation of each functional module in different application scenarios algorithmically, divides it into multiple task flows, and when developing and updating the algorithms corresponding to the intelligent driving functions in different application scenarios, only the task flow of each functional module needs to be developed and updated, and there is no need to develop and update the algorithms corresponding to the intelligent driving functions in different application scenarios. Therefore, the coupling degree of the algorithms of the intelligent driving functions is reduced, and the efficiency of developing and updating the algorithms of the intelligent driving functions is improved.

Brief Description of the Drawings

[0018] [Figure 1] It is a schematic architecture diagram of an intelligent driving control system. [Figure 2] It is a schematic structural diagram of an automatic driving calculation platform. [Figure 3] This is a flowchart of a vehicle control method provided in this application. [Figure 4] This is a flowchart of another vehicle control method provided in this application. [Figure 5] This is a schematic structural diagram of a functional module provided in this application. [Figure 6] This is a schematic structural diagram of a vehicle control device provided in this application. [Figure 7] This is a schematic structural diagram of an electronic device provided in this application.

Embodiments for Implementing the Invention

[0019] First, terms related to this application will be described.

[0020] ADAS: Using various sensors installed in the vehicle, such as millimeter-wave radar, lidar, etc., it collects ambient environmental data during vehicle driving, identifies, senses, and processes static and dynamic objects, and through analysis and decision-making by computer algorithms, a series of vehicle intelligent driving functions are implemented.

[0021] State machine: It is a state transition diagram that performs state transitions according to preset states based on control signals.

[0022] Figure 1 is a schematic architecture diagram of an intelligent driving control system. As shown in Figure 1, the intelligent driving control system is divided into a sensing layer, a decision-making layer, and an execution layer.

[0023] The above sensing layer senses changes in the external environment by a hardware system and is used to obtain environmental information. This hardware system may be, for example, sensors such as cameras and lidar.

[0024] The decision-making layer utilizes information from the sensing layer to formulate an appropriate control strategy. This decision-making layer includes an intelligent driving domain control unit (DCU), which may include, for example, an integrated driving / parking DCU, or both a driving DCU and a parking DCU, but is not limited thereto. The intelligent driving DCU may be a system on a chip (SOC) or a microcontroller unit (MCU). The implementer of this application is the intelligent driving DCU.

[0025] The intelligent driving DCU (Data Control Unit) deploys an automated driving computing platform, which includes various algorithms, communication protocols, middleware, and other components that support intelligent driving functions.

[0026] The execution layer described above executes commands to the vehicle according to the decisions made by the decision-making layer, enabling intelligent driving. This execution layer includes components such as the vehicle's wheels and steering wheel.

[0027] Figure 2 is a schematic diagram of the structure of the autonomous driving calculation platform. As shown in Figure 2, the autonomous driving Computing platform This includes the hardware platform layer, system software layer, functional software layer, and application software layer.

[0028] The hardware platform layer described above includes a computing unit and a control unit, and provides hardware support to the software layer described above. The computing unit may be, for example, a CPU, GPU, FPGA, etc., and the control unit may be, for example, an MCU, etc.

[0029] The system software layer described above includes the operating system kernel, virtualization management (hypervisor), portable operating system interface (POSIX), and system middleware.

[0030] The operating system kernel may be any operating system kernel, such as Linux® or Vxworks. This virtualization management is a hardware virtualization technology that manages and virtualizes hardware resources (CPU, memory, peripherals, etc.) and provides them to multiple operating system kernels. POSIX is a standard that defines the interfaces and functions of operating systems, and aims to enable the portability of application programs between different operating systems. This system middleware is used to manage computing resources and network communications, and may include, for example, distributed communication services, providing data and information exchange services between the functional software layer and the application software layer in a publish / subscribe manner.

[0031] The above functional software layer includes application software interfaces, intelligent driving general-purpose models, application frameworks, and data abstractions.

[0032] The application software interface refers to the interface between the hardware and the application software layer described above. By providing calls and services to the application software through the integrated application software interface, the development and execution of application software in the application software layer are realized without depending on specific sensors or vehicle models.

[0033] This general-purpose intelligent driving model abstracts and models general processes in intelligent driving, such as intelligent cognition, intelligent decision-making, and intelligent control. The general-purpose intelligent driving model includes a sensing model, a decision-making model, and a planning model. The decision-making model includes both a driving state machine and a parking state machine.

[0034] This application framework includes thread scheduling, network connectivity cloud control services, information security, and recursive abstraction, abstracting, deploying, and driving algorithms in a general-purpose intelligent operation model, and solving cross-domain, cross-platform deployment and computation problems.

[0035] This data abstraction provides various different data sources to a higher-level intelligent driving general-purpose model by standardizing data such as sensors, actuators, vehicle status, and maps.

[0036] The above application software layer is used to implement intelligent driving functions, including algorithms that support intelligent driving functions in various application scenarios.

[0037] Currently, at the application software layer, algorithms for intelligent driving functions in different application scenarios are interconnected. For example, in a scenario where the vehicle is driving normally, the intelligent driving DCU executes the algorithm corresponding to the ACC function. However, if an unexpected situation occurs during normal vehicle driving, such as the appearance of a pedestrian on the road, braking becomes necessary. In this case, the algorithm corresponding to that scenario includes not only the algorithm for the ACC function but also an algorithm for braking. In other words, the algorithms for intelligent driving functions are interconnected based on multiple application scenarios.

[0038] This approach makes algorithm updates and development inconvenient. For example, if it's necessary to update the processing algorithm for specific sensor data, all algorithms for intelligent driving functions that use that sensor data must be updated, resulting in low update efficiency. When developing algorithms for intelligent driving functions, it's necessary to consider their integration with algorithms for other intelligent driving functions in different application scenarios, leading to low algorithm development efficiency. This phenomenon is caused by the high degree of coupling among the algorithms for intelligent driving functions.

[0039] In view of this, the present invention proposes a vehicle control method in which, based on multiple functional modules of an intelligent driving function algorithm, the algorithm of each functional module is separated, the algorithm corresponding to each functional module is divided into multiple task flows, and intelligent driving functions in different scenes are implemented using combinations of multiple task flows. When developing or updating algorithms, only the task flow of each functional module needs to be developed and updated, and there is no need to individually develop and update the algorithms of various intelligent driving functions in different scenes, thus realizing the separation of intelligent driving function algorithms and improving the efficiency of algorithm development and updating.

[0040] The following describes in detail, based on specific embodiments, the technical solutions of the present application and how they solve the above-mentioned technical problems. The following specific embodiments can be implemented in combination with each other, and identical or similar concepts or processes may not be described repeatedly in some embodiments. The embodiments of the present application will be described below with reference to the drawings.

[0041] Figure 3 is a flowchart of a vehicle control method provided in this application. The application software layer is divided into multiple functional modules based on algorithms for intelligent driving functions in various application scenarios. Each algorithm included in a functional module is used to realize one type of sub-function, and can be divided into, for example, a sensing module, a positioning module, a fusion module, a planning module, a control module, etc., and the implementation of intelligent driving functions corresponds to at least one functional module. The vehicle currently performs intelligent driving using the target intelligent driving function, as shown in Figure 3. 3 As shown, the method includes S101 to S105.

[0042] In S101, the machine's state and chassis data are acquired to correspond to the target intelligent driving function.

[0043] The above-mentioned target intelligent driving function refers to the intelligent driving function currently in use by the vehicle. This target intelligent driving function can be triggered, for example, by the user via an in-vehicle terminal, or it can be implemented after the vehicle's intelligent driving DCU has made a decision based on the vehicle's status and current environmental information.

[0044] The above target state machine is either a driving state machine or a parking state machine. The driving state machine or parking state machine corresponding to each intelligent driving function should be understood as the target state machine at the time of vehicle state decision-making. The above intelligent driving DCU switches the target state machine corresponding to the target intelligent driving function to the state corresponding to the target intelligent driving function, depending on the intelligent driving function currently being used by the vehicle. For example, if the target intelligent driving function currently being used by the vehicle is the ACC function, the target state machine is the driving state machine, and its state is the ACC state.

[0045] The intelligent driving DCU can directly acquire the status of the corresponding target state machine from the driving state machine or the parking state machine, depending on the target intelligent driving function. The relationship between the distribution and subscription of status data from the driving state machine and the parking state machine can also be pre-configured. In other words, when a change occurs in the status data, the status data is automatically transmitted to the function module that has subscribed to that data.

[0046] The chassis data mentioned above refers to data related to the vehicle's chassis, such as chassis fault identifiers, door open / close identifiers, vehicle hood open / close identifiers, and vehicle trunk open / close identifiers. This chassis data includes, but is not limited to, vehicle software or hardware-related data such as vehicle body condition and chassis faults, and may also include other types of chassis data. Specifically, it can be configured according to actual needs, and this invention is not limited thereto.

[0047] The chassis data may be obtained by the intelligent driving DCU from the application interface of the automated driving calculation platform, and the application interface is used to implement mutual communication between the application software layer and the vehicle chassis data. The chassis data may also be related to a pre-configured relationship between the distribution of chassis data of the application interface and subscription, that is, when a change occurs in the chassis data, the chassis data is automatically transmitted to the functional module that has subscribed to the data.

[0048] Furthermore, it is possible to pre-set an identifier in the chassis data to indicate that the chassis is free from malfunctions.

[0049] In S102, the algorithm state of the machine is obtained for at least one functional module corresponding to the target intelligent operation function, based on the target state of the machine and chassis data.

[0050] The state of the algorithmic state machine described above is used to indicate the state of the functional module corresponding to that algorithmic state machine. Each functional module has its own pre-configured algorithmic state machine, and the state of the functional module can be used to indicate the function that the functional module should implement.

[0051] Regarding the method for obtaining the state of the algorithmic state machine of a functional module, one possible implementation involves pre-configuring a state library for each functional module, which stores the mapping relationship between the state of the algorithmic state machine of that functional module, the state of the target state machine, and chassis data. The intelligent operation DCU can then obtain the state of the algorithmic state machine of that functional module from the corresponding state library, based on the state of the target state machine and chassis data.

[0052] In another possible implementation, a state library is pre-configured, and this state library stores the mapping relationship between the state of the target state machine, chassis data, and the state of the algorithm state machine of each functional module. Based on the state of the target state machine and chassis data, the intelligent operation DCU can retrieve the state of the algorithm state machine of each functional module from this state library.

[0053] Regarding a method for obtaining the state of the algorithmic state machine of at least one functional module corresponding to a target intelligent operation function, in one possible implementation, a mapping relationship between the intelligent operation function and the functional module corresponding to the intelligent operation function is pre-defined. The intelligent operation DCU can obtain the state of the algorithmic state machine of at least one functional module corresponding to the intelligent operation function by first obtaining the identifier of at least one functional module corresponding to the intelligent operation function based on the mapping relationship between the intelligent operation function and the functional module corresponding to the intelligent operation function, and then obtaining the state of the algorithmic state machine of the functional module based on the state of the target state machine, chassis data, and the identifier of at least one functional module, using the aforementioned method.

[0054] In another possible implementation, the algorithmic state machine of each of the above-mentioned functional modules, after switching states, transmits a state switching response containing the functional module identifier to the intelligent operation DCU, and the intelligent operation DCU obtains the state of the algorithmic state machine of at least one functional module corresponding to the intelligent operation function, using the aforementioned method for obtaining the state of the algorithmic state machine of a functional module according to the received state switching response.

[0055] In S103, the task flow waiting to be executed in the functional module is determined according to the algorithm state of the machine in that functional module.

[0056] The task flow awaiting execution mentioned above refers to the task flow that should be executed by the function corresponding to the state of the algorithm state machine, and which is executed by the function module in question.

[0057] In one possible implementation, the above-mentioned functional module has a pre-configured event library, which stores the mapping relationship between the state of the functional module and events. These events are used to indicate a single function of the functional module. The intelligent operation DCU can, depending on the state of the algorithm state machine of the functional module, retrieve an event corresponding to the state of the algorithm state machine from the functional module's event library and treat this event as a task flow awaiting execution in the functional module.

[0058] In another possible implementation, a single integrated event library is pre-configured, and this integrated event library stores the mapping relationship between the state of the algorithm state machine of each functional module and events. The intelligent operation DCU can retrieve events corresponding to the state of the algorithm state machine of the functional module from the integrated event library, depending on the state of the algorithm state machine of that functional module, and treat these events as task flows waiting to be executed in that functional module.

[0059] In one further possible implementation, the functional module is pre-configured with a task flow library for that functional module, which stores the mapping relationships between multiple task flows of the functional module and the states of the algorithm state machine, and each task flow is used to implement one of the functional modules' functions. The intelligent operation DCU can determine which task flows are awaiting execution in the functional module from the task flow library, depending on the state of the algorithm state machine of the functional module.

[0060] In S104, a task flow awaiting execution of at least one functional module corresponding to the target intelligent driving function is executed, and the execution result of each task flow is obtained.

[0061] In one possible implementation, the task flow awaiting execution contains multiple operators, and a combination of these operators is used to implement a single function of the functional module. The operators of the task flow are executed directly to obtain the execution result of the task flow.

[0062] In another possible implementation, the task flow awaiting execution contains identifiers for multiple operators. The operator corresponding to the operator identifier is executed to obtain the execution result of the task flow.

[0063] In S105, intelligent operation is performed according to the execution result of the task flow of at least one functional module corresponding to the target intelligent operation function.

[0064] Selectively, as described above, at least one functional module corresponding to the target intelligent driving function includes a control module, which generates a control signal according to the execution result of the other functional modules corresponding to the target intelligent driving function and transmits it to the execution layer of the intelligent driving control system via the communication method and application software interface set in the system middleware of the automated driving calculation platform described above, so that vehicle intelligent driving is performed.

[0065] The vehicle control method provided in this application determines the task flow awaiting execution in each function module based on the algorithm state of the machine of at least one function module corresponding to the intelligent driving function, obtains the execution result of the task flow of each function module, and performs intelligent driving based on the execution result. This method simplifies the combination of algorithms corresponding to multiple intelligent driving functions in different application scenes to a combination of task flows of multiple function modules, based on the algorithm of the intelligent driving function divided into multiple function modules, algorithmically separates the implementation of each function module in different application scenes, divides it into multiple task flows, and when developing or updating the algorithm corresponding to the intelligent driving function in different application scenes, it is only necessary to develop or update the task flow of each function module, and there is no need to develop or update the algorithm corresponding to the intelligent driving function in different application scenes, thus reducing the degree of coupling of the intelligent driving function algorithms and improving the efficiency of developing and updating the intelligent driving function algorithms.

[0066] The following example illustrates how the algorithm state responds to the machine state, assuming that the event library for that function module is pre-configured. , machine This section explains how the function module determines which task flows are awaiting execution, executes those task flows, and retrieves the execution results of those task flows.

[0067] Figure 4 is a flowchart of a control method for another vehicle provided in the present invention. As shown in Figure 4, the method includes S201 to S204.

[0068] In S201, depending on the algorithm state of the functional module, the system determines which events are awaiting execution from the event library of that functional module.

[0069] Selectively, depending on the function of the functional module, the algorithm of the functional module is separated into multiple operators, and the function of the functional module is implemented using a combination of these operators. When developing or updating the algorithm of the functional module, only the operators need to be developed or updated. Furthermore, separating the algorithm of the functional module improves the efficiency of algorithm development and updating for intelligent driving functions.

[0070] An event in the above event library includes at least one operator-directed graph, which is used to describe the operators required to execute the event and the execution order between those operators. The operator-directed graph contains the identifiers of the operators required to execute the event and the execution order between those operator identifiers.

[0071] In one possible implementation, the operator library for the functional module is pre-configured, and this operator library stores the operators and operator identifiers for that functional module. In another possible implementation, a single integrated operator library is pre-configured, and this operator library stores the operators and operator identifiers for each functional module.

[0072] As mentioned above, the event library has pre-configured mapping relationships between events and the states of the algorithm state machine, and the events awaiting execution are determined according to the mapping relationship between the states of the algorithm state machine and time.

[0073] In S202, the operator identifiers are concatenated sequentially according to the operator-directed graph included in the pending events to obtain the pending task flow.

[0074] For example, the identifiers of each operator are concatenated in series according to the execution order between the operator identifiers in the operator-directed graph included in the pending event, and the pending task flow is obtained.

[0075] The above method determines events waiting to be executed based on the event library of the functional module, and then determines the task flow waiting to be executed according to the operator-directed graph contained in the events. This method operatorizes the algorithm of the functional module, determines the task flow waiting to be executed using serial connections between operators, and implements further separation of the functional module's algorithm.

[0076] In S203, depending on the identifier of the operator in the task flow awaiting execution of the relevant functional module, the operator corresponding to that identifier is called from the operator library.

[0077] The operator library mentioned above may be the operator library of the aforementioned functional module, or it may be the integrated operator library.

[0078] In S204, the operator corresponding to the identifier of each operator in the task flow awaiting execution of the relevant functional module is executed to obtain the execution result of the task flow.

[0079] Using steps S201 to S204 described above, a task flow awaiting execution of at least one functional module corresponding to the target intelligent driving function is executed, and the execution result of each task flow is obtained.

[0080] The vehicle control method provided in this application involves operatorizing the algorithm of a functional module, storing the operators in an operator library, and configuring a task flow awaiting execution in the functional module by serially linking the operators. When developing or updating the algorithm of a functional module, only the operators in the operator library need to be developed or updated, thereby further separating the algorithm of the functional module and reducing the degree of coupling of the algorithms of the intelligent driving function.

[0081] In conventional technologies, the combination of intelligent driving function algorithms in different application scenarios within the application software layer complicates thread scheduling for the application software layer of the intelligent driving DCU. For example, in the aforementioned algorithm that combines braking under the ACC function, it is necessary to pre-configure information for at least one thread that executes the ACC function and two threads that execute the braking function, based on the application scenario. In other words, the thread configuration policy must be set based on the application scenario. Furthermore, the intelligent driving DCU needs to set a unified process carrier and schedule threads for intelligent driving function algorithms in various application scenarios, resulting in a high level of complexity in thread configuration and scheduling.

[0082] Figure 5 is a schematic diagram of the structure of a functional module provided in this application. As shown in Figure 5, the functional module includes an algorithm state machine, an event library, a task flow pool, and an operator library. In Figure 5, only the case where the event library contains three events and the operator library contains three operators is illustrated.

[0083] The above algorithmic state machine is used to switch the state of the functional module based on the state of the target state machine and chassis data.

[0084] The event library mentioned above is used to store various events of the relevant functional module.

[0085] The operator library mentioned above is used to store the various operators of the relevant functional module.

[0086] The task flow pool described above is used to store task flows waiting to be executed in the relevant functional module.

[0087] The aforementioned application software layer's functional modules are set as process carriers, the multiple task flows of each functional module are configured as threads of that process carrier, the corresponding threads are executed according to the task flows of each functional module, and the unified process carrier thread scheduling corresponding to the intelligent operation function algorithm is converted into thread scheduling where each functional module becomes a process carrier, thereby reducing the complexity of thread configuration and scheduling.

[0088] For example, the application framework of the above-mentioned autonomous driving calculation platform includes a thread configuration policy, which is used to configure the attributes of a thread, such as the thread name, the storage usage ratio, and the operating system kernel being executed. In the embodiment described above, the algorithm of each functional module can be divided into multiple task flows, and the thread configuration policy for the task flow of each functional module can be pre-configured based on this. When executing a task flow waiting to be executed for at least one functional module corresponding to the target intelligent driving function, a thread corresponding to that task flow is created according to the thread configuration policy, and the thread corresponding to that task flow is executed.

[0089] Selectively, the relevant thread The configuration policy may also include the relationship between data reception and distribution between task flows. When executing a thread corresponding to the above task flow, the registration callback mechanism is used to obtain the data callback interface and distribution interface according to the relationship between data reception and distribution between task flows, the input data for the thread corresponding to the task flow is obtained using the data callback interface, the output data for the task flow is obtained by executing the thread corresponding to the task flow, and the output data for the task flow is distributed using the distribution interface.

[0090] The registration callback mechanism refers to a callback function and a registration function. In a task flow that needs to deliver data, the callback function, or delivery interface, is set up to deliver the output data of that task flow. In a task flow that needs to retrieve data, the registration function, or callback interface, is set up to call the callback function and retrieve the data corresponding to that callback function.

[0091] Selectively, the application framework of the above-mentioned autonomous driving computation platform includes thread execution policies and / or monitoring policies, thread The execution policy is used to configure the execution behavior of a thread and may include, for example, execution priority, maximum execution time, the identifier of the next thread for that thread, and thread Monitoring policies are used to monitor thread execution and may include, for example, the actual storage utilization ratio of a thread, the actual execution time, etc. When executing task flows waiting for the execution of at least one functional module corresponding to the target intelligent operation function, threads corresponding to each created task flow are managed through the thread execution policy and / or monitoring policy.

[0092] The vehicle control method provided in this application reduces the complexity of thread configuration because, based on the application framework and each functional module of the autonomous driving calculation platform, the corresponding thread information for the task flow of each functional module can be pre-configured, and the thread information can be configured without considering the application scenario. At the same time, by scheduling threads with each functional module as a process carrier, the complexity of thread scheduling in a unified process carrier is converted into a simple thread scheduling with each functional module as a process carrier, thereby reducing the complexity of thread scheduling.

[0093] Figure 6 is a schematic diagram of the structure of the vehicle control device provided in this application. As shown in Figure 6, the device comprises a first acquisition module 11, a second acquisition module 12, a decision module 13, an execution module 14, and a processing module 15. The first acquisition module 11 is used to acquire the state of a target state machine and chassis data corresponding to the target intelligent driving function, and the target state machine is either a driving state machine or a parked state machine. The second acquisition module 12 is used to acquire the algorithmic state of the machine of at least one functional module corresponding to the target intelligent operation function, based on the target state of the machine and chassis data, and the algorithmic state of the machine is used to indicate the state of the functional module. The decision module 13 is used to determine the task flow waiting to be executed by the function module, depending on the state of the algorithm state machine. The execution module 14 is used to execute the task flow and obtain the execution results of the task flow. The processing module 15 is used to perform intelligent operation according to the execution results of the task flow.

[0094] In one possible implementation, the decision module 13 specifically determines an event awaiting execution from the event library of the functional module, depending on the state of the algorithmic state machine, wherein an event in the event library includes at least one operator-directed graph, which is used to describe the operators required for the execution of the event and the execution order between the operators, and is used to obtain a task flow awaiting execution by concatenating operator identifiers in series according to the operator-directed graph included in the event awaiting execution.

[0095] In one possible implementation, the execution module 14 is specifically used to call operators from the operator library according to the operator identifiers in the task flow, execute operators corresponding to each operator identifier in the task flow, and obtain the execution result of the task flow.

[0096] In one possible implementation, the second acquisition module 12 is specifically used to acquire the state of the algorithmic state machine of at least one functional module corresponding to the target intelligent operation function from the state library, based on the state of the target state machine and chassis data, and the state library pre-stores the mapping relationships between the state of the target state machine, chassis data and the states of the algorithmic state machines of multiple functional modules.

[0097] In one possible implementation, the execution module 14 is specifically used to create threads corresponding to task flows and to execute threads corresponding to task flows, using the thread configuration policy in the autonomous driving calculation platform application framework.

[0098] In one possible implementation, the management module 16 is used to manage threads corresponding to the created task flow, using thread execution policies and / or monitoring policies in the autonomous driving computation platform application framework.

[0099] In one possible implementation, the thread configuration policy includes the relationship between receiving and distributing data between task flows, and the execution module 14 is specifically used to obtain a data callback interface and a distribution interface using a registration callback mechanism according to the relationship between receiving and distributing data between task flows, to obtain input data for the thread corresponding to the task flow using the data callback interface, to execute the thread corresponding to the task flow and obtain output data corresponding to the task flow, and to distribute the output data corresponding to the task flow using the distribution interface.

[0100] The vehicle control device provided in this application can perform the vehicle control method in the embodiment of the above method, and its implementation principle and technical effects are similar, so they will not be described again here.

[0101] Figure 7 is a schematic diagram of the structure of the electronic device provided in this application. As shown in Figure 7, the electronic device 300 may include at least one processor 301 and memory 302. The electronic device may also be the intelligent operation DCU described above.

[0102] Memory 302 is used to store programs. Specifically, a program can contain program code, and the program code is stored in the computer. execution Includes commands.

[0103] Memory 302 may include high-speed RAM memory, or it may include non-volatile memory, such as at least one disk memory.

[0104] The processor 301 is used to execute computer execution instructions stored in the memory 302 so that the vehicle control method described in the embodiments of the above-described method is implemented. The processor 301 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to carry out the embodiments of the present application.

[0105] The electronic device 300 may also be equipped with a communication interface 303, which allows it to communicate and interact with external devices via the communication interface 303. Examples of external devices include computers and tablets.

[0106] In a specific implementation, if the communication interface 303, memory 302, and processor 301 are implemented independently, they can be interconnected via a bus to complete communication between them. The bus can be an Industrial Standard Architecture (ISA) bus or a Peripheral Component (CCU) bus. Interconnect Examples include the PCI bus or the Extended Industry Standard Architecture (EISA) bus. Buses are classified into address buses, data buses, control buses, etc., but this does not mean that there is only one bus or only one type of bus.

[0107] Optionally, in a specific implementation, if the communication interface 303, memory 302, and processor 301 are integrated and implemented on a single chip, the communication interface 303, memory 302, and processor 301 can complete communication via an internal interface.

[0108] The present invention further provides a computer-readable storage medium, which may include various media capable of storing program code, such as USB memory, portable hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, and optical disks. Specifically, the computer-readable storage medium stores computer execution instructions, which are used in the vehicle control method described in the above embodiment.

[0109] The present invention further provides a computer program product which includes execution instructions stored in a readable storage medium. At least one processor of the electronic device 300 can read the execution instructions from the readable storage medium, and the electronic device 300 will carry out the methods provided in the various embodiments described above by the execution of the execution instructions by the at least one processor.

[0110] The present invention further provides a vehicle equipped with an intelligent driving DCU for implementing the vehicle control method of the above embodiment.

[0111] The present invention further provides a chip on which a computer program is stored, and when the computer program is executed by the chip, the methods provided in various embodiments are implemented.

[0112] The above describes only specific embodiments of the present application, but the scope of protection of this application is not limited thereto. Any modification or substitution that a person skilled in the art could easily conceive within the technical scope disclosed herein should be included in the scope of protection of this application. Therefore, the scope of protection of this application is based on the scope of protection described in the claims.

[0113] <Cross-reference of related applications> This application claims priority to the Chinese patent application filed with the China National Patent Office on September 13, 2023, with application number 2023111807070, titled "Vehicle Control Method, Apparatus, Device and Readable Memory Medium," all of which are incorporated herein by reference.

Claims

1. Currently, a control method for a vehicle that is performing intelligent driving using a target intelligent driving function, A step of acquiring the state and chassis data of a target state machine corresponding to the aforementioned intelligent driving function, wherein the target state machine is a driving state machine or a parked state machine. A step of obtaining the state of the algorithmic state machine of at least one functional module corresponding to the target intelligent operation function, based on the state of the target state machine and chassis data, wherein the state of the algorithmic state machine is used to indicate the state of the functional module. The steps include determining the task flow waiting to be executed in the functional module according to the state of the algorithm state machine, The steps include executing the task flow and obtaining the execution result of the task flow, A vehicle control method characterized by including the step of performing intelligent operation according to the execution result of the task flow.

2. The step of determining the task flow waiting to be executed in the target function module, according to the state of the algorithm state machine, A step of determining an event waiting to be executed from the event library of the functional module according to the state of the algorithm state machine, wherein the event in the event library includes at least one operator-directed graph, and the operator-directed graph is used to describe the operators required for the execution of the event and the execution order between the operators. The method according to claim 1, comprising the step of concatenating operator identifiers in series according to an operator-directed graph included in the pending event to obtain the pending task flow.

3. The step of executing the task flow and obtaining the execution result of the task flow is: The steps include: calling an operator from the operator library corresponding to the operator identifier in the task flow; The method according to the previous invention, comprising the step of executing an operator corresponding to the identifier of each operator in the task flow and obtaining the execution result of the task flow.

4. The step of obtaining the algorithmic state of the machine of at least one functional module corresponding to the target intelligent operation function, based on the target state of the machine and chassis data, is: The method according to claim 1, comprising the step of obtaining the state of an algorithm state machine of at least one functional module corresponding to the target intelligent operation function from a state library based on the state of the target state machine and chassis data, wherein the state library pre-stores mapping relationships between the state of the target state machine, chassis data and the states of algorithm state machines of a plurality of functional modules.

5. The step of executing the aforementioned task flow is: The steps include creating a thread corresponding to the task flow using the thread configuration policy in the autonomous driving calculation platform application framework, The method according to any one of claims 1 to 4, comprising the step of executing a thread corresponding to the task flow.

6. The aforementioned method, The method according to claim 5, further comprising the step of managing threads corresponding to the created task flow using the thread execution policy and / or monitoring policy in the autonomous driving calculation platform application framework.

7. The aforementioned thread configuration policy includes the relationship between receiving and delivering data between task flows. The step of executing the thread corresponding to the task flow is: The steps include obtaining the data callback interface and delivery interface using the registration callback mechanism, according to the data reception and delivery relationship between task flows, The steps include: obtaining input data for the thread corresponding to the task flow using the data callback interface, executing the thread corresponding to the task flow, and obtaining output data corresponding to the task flow; The method according to claim 5, further comprising the step of distributing output data corresponding to the task flow using the distribution interface.

8. Currently, a control device for a vehicle that is performing intelligent driving using a target intelligent driving function, A first acquisition module for acquiring the state and chassis data of a target state machine corresponding to the aforementioned intelligent driving function, wherein the target state machine is a driving state machine or a parked state machine, and the first acquisition module, A second acquisition module for acquiring the algorithm state of at least one functional module corresponding to the target intelligent operation function, based on the state of the target state machine and chassis data, wherein the state of the algorithm state machine is used to indicate the state of the functional module, and the second acquisition module A decision module for determining the task flow waiting to be executed by the functional module, according to the state of the algorithm state machine, An executable module for executing the task flow and obtaining the execution result of the task flow, A vehicle control device characterized by including a processing module for performing intelligent operation according to the execution results of the task flow.

9. An electronic device comprising a processor and a memory connected to the processor in a communicative manner, The aforementioned memory stores computer execution instructions, The electronic device is characterized in that the vehicle control method according to any one of claims 1 to 7 is implemented by the processor executing computer execution instructions stored in the memory.

10. A computer-readable storage medium, wherein computer execution instructions are stored in the computer-readable storage medium, and the computer execution instructions, when executed by a processor, are used to implement the vehicle control method described in any one of claims 1 to 7.