Activity activation method for electronic control unit (ECU)
By defining semantic groups for ECU activities and monitoring data reception, the problem of fixed ECU activity activation methods was solved, resulting in more efficient data processing and improved user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-14
- Publication Date
- 2026-04-14
AI Technical Summary
In the prior art, the activation method of electronic control unit (ECU) is fixed, which makes it difficult to adapt to complex situations, resulting in low efficiency of software system when processing signals from multiple data sources.
By identifying semantic groups associated with an activity, monitoring data reception, and controlling activity activation based on the data reception status of the semantic groups, a flexible data activation logic can be achieved.
It improves the responsiveness and accuracy of software systems, provides a better user experience, and simplifies the development and maintenance process.
Smart Images

Figure CN121858170A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of automotive electronic control, and more specifically, to an activation method for an electronic control unit (ECU), a computer program product, a computer-readable storage medium, and a domain controller. Background Technology
[0002] In the field of automotive electronic control, an "activity" typically refers to an executable software component or task, which is the basic unit operating within an electronic control unit (ECU). Each "activity" may represent a specific function or service, such as an aspect of engine control, braking control, or an infotainment system.
[0003] An activity may consist of multiple runnable subtasks that execute concurrently or sequentially, each responsible for handling different logic or operations. Additionally, if an activity has multiple input ports, this typically means that the activity can receive input signals or data from multiple data sources, such as sensors, other ECUs, or other components within the system.
[0004] The concepts of activity and runnable help build modular, scalable, and easily maintainable software systems (such as automotive middleware software). By defining clearly defined input ports and utilizing runnables to execute specific functions, automotive ECUs can efficiently process signals from different data sources, realizing complex control logic and system management. However, in the prior art, activity activation methods include: (1) triggering based on a preset time or time interval, i.e., time activation; or (2) triggering based on whether data is received or changes in data, i.e., data activation. These existing activation methods are relatively fixed and difficult to adapt to complex situations. Summary of the Invention
[0005] The inventors of this application recognized that in certain situations (such as in automotive middleware software), the activation of an "Activity" may depend on the complete reception of a specific combination of data. Based on this, the inventors propose semantic grouping to more precisely control which data combinations are necessary for the activation of an activity. Data received within the same group typically serves similar or consistent functional goals, such as vehicle control, security monitoring, or infotainment. The setting of semantic groups allows developers to flexibly define the activation logic of data according to actual needs, adapting to different application scenarios. Furthermore, through semantic groups, the software architecture can be more modular, with each group able to be developed and maintained independently.
[0006] According to one aspect of this application, an activity activation method for an electronic control unit (ECU) is provided, the method comprising: determining one or more semantic groups associated with the activity, each semantic group including one or more data input ports associated with an excitation source, and the semantic groups being used by functional logic to group input data; monitoring data reception of the one or more semantic groups; and controlling the activation of the activity based on the data reception.
[0007] As a supplement or replacement to the above scheme, in the above method, the activity is a software component or service that performs a specific function or task based on specific inputs or conditions.
[0008] As a supplement or replacement to the above scheme, in the above method, monitoring the data reception status of the one or more semantic groups includes: determining whether each semantic group meets a single activation condition, wherein the single activation condition includes all data input ports within the semantic group receiving data at least once.
[0009] As a supplement or replacement to the above scheme, in the above method, controlling the activation of the activity based on the data reception status includes: activating the activity when any semantic group satisfies the single activation condition.
[0010] As a supplement or replacement to the above scheme, in the above method, controlling the activation of the activity based on the data reception status includes: when the single activation condition is not met in all semantic groups, retaining the received data and waiting for the reception of further data.
[0011] As a supplement or alternative to the above scheme, in the above method, the excitation source is sensor data, user input, system state changes, or messages sent by other electronic control units (ECUs) to trigger the execution of the activity.
[0012] As a supplement or replacement to the above solution, in the above method, the method is executed by automotive middleware software.
[0013] According to another aspect of this application, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the method described above.
[0014] According to another aspect of this application, a computer program product is provided, including a computer program that, when executed by a processor, implements the method described above.
[0015] According to another aspect of this application, a domain controller is provided, including a memory, a processor, and a computer program stored in the memory, the processor executing the computer program to perform the following steps: receiving data from one or more sensors; and, based on the received data, performing the method as described above.
[0016] The activity activation scheme for an Electronic Control Unit (ECU) according to embodiments of this application controls the activation of the activity by identifying one or more semantic groups associated with the activity and monitoring the data reception of these semantic groups. Because semantic groups are associated with interactions, developers can focus on developing specific semantic groups without having to handle the synchronization and activation logic of all data. Furthermore, the setting of semantic groups allows developers to flexibly define the data activation logic according to actual needs to adapt to different application scenarios. In addition, this activation scheme activates associated activities based on semantic group data, enabling software systems (e.g., automotive middleware software) using this scheme to react faster and more accurately, providing a better user experience. Attached Figure Description
[0017] The above and other objects and advantages of this application will become more fully clear from the following detailed description taken in conjunction with the accompanying drawings, wherein the same or similar elements are denoted by the same reference numerals.
[0018] Figure 1 A schematic flowchart of an active activation method for an electronic control unit (ECU) according to an embodiment of this application is shown.
[0019] Figure 2 A schematic diagram of the structure of a domain controller according to an embodiment of this application is shown; and
[0020] Figure 3 A schematic diagram illustrating the implementation of a port synchronization method according to one or more embodiments of this application is shown. Detailed Implementation
[0021] In the following, active activation schemes for electronic control units (ECUs) according to various exemplary embodiments of the present application will be described in detail with reference to the accompanying drawings.
[0022] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of the embodiments of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance. In addition, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples, without contradiction.
[0023] Figure 1 A schematic flowchart of an active activation method 1000 for an electronic control unit (ECU) according to an embodiment of this application is shown. Figure 1 As shown, the method 1000 includes the following steps:
[0024] In step S110, one or more semantic groups associated with the activity are determined, each semantic group including one or more data input ports associated with the excitation source, and the semantic group is used by functional logic to group the input data;
[0025] In step S120, the data reception status of the one or more semantic groups is monitored; and
[0026] In step S130, the activation of the activity is controlled based on the data reception status.
[0027] In one or more embodiments, an "activity" is a software component or service that performs a specific function or task based on specific input or conditions. Activities can be triggered by various stimuli, such as sensor signals, user input, time events, or changes in other system states.
[0028] In one or more embodiments, the above-described activation method 1000 for an electronic control unit (ECU) can be executed by automotive middleware software. In the context of this application, "automotive middleware software" is a type of intermediate-layer software used to connect and coordinate various electronic control units (ECUs) and software applications within a vehicle. It resides between the operating system and applications, providing standardized interfaces and services to facilitate communication and collaboration between different components. The primary purpose of automotive middleware is to simplify the development, integration, and maintenance of complex systems, and to improve the scalability, reliability, and security of the system.
[0029] Its main functions and features include the following:
[0030] (1)Communication management
[0031] Middleware software typically manages communication between different ECUs, supporting protocols such as CAN, LIN, and Ethernet. It ensures accurate information transmission between modules and handles errors and data integrity during communication. It also handles data transmission between processes or between ports within a process on the POSIX system.
[0032] (2) Abstract Hardware
[0033] By providing a Hardware Abstraction Layer (HAL), middleware software decouples applications from the underlying hardware. This means developers can develop applications without directly dealing with hardware details, thereby improving development efficiency and code portability.
[0034] (3) Task scheduling
[0035] Middleware typically includes the task scheduling functionality of a real-time operating system (RTOS), managing the execution order, priority, and resource allocation of multiple tasks to ensure that critical tasks can be completed on time.
[0036] In one or more embodiments, middleware is used to handle data transfer between activities and manage the execution of activities. Common automotive middleware software platforms include AUTOSAR, which provides standardized interfaces and services to facilitate communication and collaboration between different components, simplifying the development, integration, and maintenance of complex systems, and improving system scalability, reliability, and security. Specifically, AUTOSAR (AUTomotive Open System Architecture) is an open system architecture standard jointly developed by major global automakers, component suppliers, and electronics industry companies. It defines a layered software architecture to support the integration of automotive electronic systems, including the application layer, runtime environment layer (RTE), and base software layer (BSW). The AUTOSAR Classic Platform (CP) is primarily used for traditional embedded control systems, such as body control, chassis control, and powertrain systems, while the AUTOSAR Adaptive Platform (AP) is designed for systems requiring high-end computing power, such as autonomous driving.
[0037] In one or more embodiments of this application, method 1000 is mainly optimized for the task scheduling function of automotive middleware.
[0038] In step S110, one or more semantic groups associated with the activity are determined, each semantic group including one or more data input ports associated with the excitation source, and the semantic group is used by functional logic to group the input data.
[0039] In the context of this application, a "semantic group" is a group of data items that have similar meanings, functions, or uses. For example, sensor data that affects vehicle acceleration, braking, or steering can be organized into semantic groups for centralized management and processing. Another example is organizing sensor data related to vehicle safety, such as collision detection and lane departure warnings, into semantic groups for rapid response to potential safety threats.
[0040] In the AUTOSAR architecture, an "Activity" can represent an executable part of a Software Component (SWC), which encapsulates specific functions or algorithms and can be triggered by runtime environment (RTE) events. Determining one or more semantic groups associated with an activity in step S110 means configuring relevant data input ports for a specific activity. These semantic groups are part of the functional logic; they group input data so that the activity can perform the corresponding function based on the received data.
[0041] Specifically, a semantic group may include one or more data input ports associated with an excitation source (such as sensor signals, user input, etc.). These ports act as interfaces for the SWC, allowing the component to communicate and exchange data with other ECUs or other components within the system. For example, an SWC controlling vehicle speed might have a semantic group that includes data input ports from the speed sensor. Relevant activities in the SWC are only activated when all relevant speed sensor data has been received.
[0042] In step S120, the data reception status of the one or more semantic groups is monitored; and in step S130, based on the data reception status, the activation of the activity is controlled. In one embodiment, step S120 includes: determining whether each semantic group meets a single activation condition, the single activation condition including that all data input ports within the semantic group receive data at least once. Based on this, step S130 may include: activating the activity when any semantic group meets the single activation condition; and when none of the semantic groups meet the single activation condition, retaining the received data and waiting for further data reception.
[0043] The single activation condition refers to whether all data input ports of a single semantic group receive data at least once. In other words, the data within the same semantic group are in an "AND" relationship; that is, the single activation condition is satisfied only if all data are received.
[0044] The data in different semantic groups are in an "OR" relationship, meaning that the activity can be activated when any semantic group satisfies the aforementioned single activation condition.
[0045] In one embodiment, the semantic group is configurable, meaning that which data received by the "activity" is used as activation conditions can be configured. In one embodiment, checking whether the aforementioned activation conditions are met is only required if configured as a semantic group.
[0046] refer to Figure 3 It illustrates a schematic diagram of the implementation of a port synchronization method according to one or more embodiments of this application. Figure 3 In this context, 310 represents an activity, which may be, for example, an aspect of an engine control, brake control, or infotainment system. The activity 310 includes multiple subtasks 312, 314, and 316, each subtask / process 312, 314, and 316 responsible for handling different logic or operations.
[0047] For example, the input port associated with activity 310 is in Figure 3 The input ports are labeled 302 / 304 / 306 / 308, where input ports 302 / 304 / 306 / 308 are configured according to functional logic as one or more semantic groups (or activation groups). From Figure 3 As can be seen, ports 302 and 304 are coupled to the first sensor 322 and the second sensor 324 respectively, and receive first data 332 and second data 334 from the first sensor 322 and the second sensor 324 respectively, while ports 306 and 308 are coupled to the third sensor 326 and the fourth sensor 328 respectively, and receive third data 336 and fourth data 338 from the third sensor 326 and the fourth sensor 328 respectively.
[0048] In one embodiment, the first sensor 322, the second sensor 324, the third sensor 326, and the fourth sensor 328 are all speed sensors, and the input ports 302 / 304 / 306 / 308 are configured as a semantic group (or activation group). In this embodiment, all speed sensor data (i.e., first data 332, second data 334, third data 336, and fourth data 338) must be received by the data input ports 302 / 304 / 306 / 308 in order to activate the execution of activity 310.
[0049] In another embodiment, the first sensor 322, the second sensor 324, the third sensor 326, and the fourth sensor 328 are still speed sensors, but unlike the previous embodiment, the input ports 302 / 304 / 306 / 308 are configured into four different semantic groups (or activation groups). In this case, as long as any data input port receives speed sensor data (i.e., the first data 332, the second data 334, the third data 336, or the fourth data 338), the execution of activity 310 can be activated.
[0050] In another embodiment, the first sensor 322 and the second sensor 324 are speed sensors, the third sensor 326 and the fourth sensor 328 are steering sensors, the data input ports 302 / 304 associated with the speed sensors are configured as a first semantic group (or a first activation group), and the data input ports 306 / 308 associated with the steering sensors are configured as a second semantic group (or a second activation group). Then, activity 310 can be activated as long as both data input ports 306 / 308 receive steering sensor data (i.e., the third data 336 and the fourth data 338), or activity 310 can be activated as long as both data input ports 302 / 304 receive speed sensor data (i.e., the first data 332 and the second data 334).
[0051] Furthermore, those skilled in the art will readily understand that the activation method 1000 for an electronic control unit (ECU) provided in one or more embodiments of this application can be implemented by a computer program. For example, the computer program is included in a computer program product, and when executed by a processor, it implements the activation method 1000 for an electronic control unit (ECU) according to one or more embodiments of this application. As another example, when a computer-readable storage medium (e.g., a USB flash drive) storing the computer program is connected to a computer, running the computer program executes one or more embodiments of this application, specifically the activation method 1000 for an electronic control unit (ECU).
[0052] refer to Figure 2 It shows a schematic diagram of the structure of a domain controller 2000 according to an embodiment of this application. Figure 2 As shown, the domain controller 2000 includes a memory 210 and a processor 220, on which a computer program is stored. In one embodiment, the processor 220 executes the computer program to perform the following functions or steps: receiving data from one or more sensors; and, based on the received data, executing an activity activation method 1000 for an electronic control unit (ECU).
[0053] In one or more embodiments, the automotive middleware software is implemented within a domain controller 2000. It needs to process data from multiple sensors, such as speed sensors, acceleration sensors, and steering sensors. In one embodiment, the automotive middleware software configures the data from these sensors into two semantic groups: a speed group and a steering group, and defines activation conditions as follows: vehicle control activity is activated when all data from the speed group is received at least once, or when any data from the steering group is received. Then, when the speed sensor or acceleration sensor receives data, it checks whether the activation conditions for the speed group are met. When the steering sensor receives data, it checks whether the activation conditions for the steering group are met. Based on the received data and the activation conditions, it is determined whether to activate vehicle control activity.
[0054] In summary, the activity activation scheme for an Electronic Control Unit (ECU) according to embodiments of this application controls the activation of the activity by identifying one or more semantic groups associated with the activity and monitoring the data reception of these semantic groups. Because semantic groups are associated with interactions, developers can focus on developing specific semantic groups without having to handle the synchronization and activation logic of all data. Furthermore, the setting of semantic groups allows developers to flexibly define the data activation logic according to actual needs to adapt to different application scenarios. In addition, this activation scheme activates associated activities based on semantic group data, enabling software systems (e.g., automotive middleware software) using this scheme to react faster and more accurately, providing a better user experience.
[0055] The above examples primarily illustrate the active activation scheme for an electronic control unit (ECU) according to embodiments of this application. Although only some embodiments of this application have been described, those skilled in the art should understand that this application can be implemented in many other forms without departing from its spirit and scope. Therefore, the examples and embodiments shown are considered illustrative rather than restrictive, and various modifications and substitutions may be made without departing from the spirit and scope of this application as defined in the claims.
Claims
1. A method for activating an electronic control unit (ECU), characterized in that, The method includes: Identify one or more semantic groups associated with the activity, each semantic group including one or more data input ports associated with the stimulus source, and the semantic groups are used by functional logic to group the input data; Monitor the data reception status of the one or more semantic groups; and The activation of the activity is controlled based on the data received.
2. The method as described in claim 1, wherein, The activity is a software component or service that performs a specific function or task based on specific inputs or conditions.
3. The method as described in claim 2, wherein, The function or task is an aspect of engine control, braking control, or infotainment systems.
4. The method of claim 1, wherein, Monitoring the data reception of the one or more semantic groups includes: Determine whether each semantic group meets the single activation condition, which includes that all data input ports within the semantic group receive data at least once.
5. The method of claim 4, wherein, Based on the data reception status, controlling the activation of the activity includes: The activity is activated when any semantic group satisfies the single activation condition.
6. The method of claim 4, wherein, Based on the data reception status, controlling the activation of the activity includes: If the single activation condition is not met in all semantic groups, the received data is retained and the system waits for the reception of further data.
7. The method of claim 1, wherein, The excitation source is sensor data, user input, system state changes, or messages sent by other electronic control units (ECUs) that trigger the execution of the activity.
8. The method of claim 1, wherein, The method is executed by automotive middleware software.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 8.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 8.
11. A domain controller, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to perform the following steps: Receive data from one or more sensors; and Based on the received data, perform the method as described in any one of claims 1 to 8.