ECU wake-up method and apparatus based on behavior learning, device, and storage medium
By using a behavior-based ECU wake-up method, the ECU wake-up strategy is optimized according to scenario requirements and user behavior, solving the problem of excessive power consumption in traditional wake-up methods and achieving more flexible network management and more efficient power saving.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SINO TRUK JINAN POWER CO LTD
- Filing Date
- 2023-12-27
- Publication Date
- 2026-08-04
AI Technical Summary
The ECU wake-up method in the traditional vehicle bus structure leads to problems such as excessive power consumption in network management, excessive system overhead, excessive data transmission volume, and excessive bandwidth usage, which affect system performance and reliability.
By using behavior learning-based methods, we can obtain scene wake-up requirements, determine target wake-up groups, judge whether the ECU has completed behavior learning, and wake up the corresponding ECU according to the scene learning number in the network management message, thereby optimizing the network management strategy to reduce unnecessary wake-ups.
The system enables more flexible grouping for local network management, optimizes the sleep-wake network management strategy, makes vehicles more energy-efficient, and improves system performance and reliability.
Smart Images

Figure CN117749562B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of ECU network management technology, and in particular to an ECU wake-up method, apparatus, device and storage medium based on behavior learning. Background Technology
[0002] The wake-up principle of an automotive Electronic Control Unit (ECU) is based on in-vehicle network bus communication. In this architecture, each ECU on the bus can reduce power consumption in a bus sleep mode to save energy. When an ECU needs to be woken up, a wake-up signal is sent through the bus. Upon receiving the signal, the woken ECU resumes its sleep mode and rejoins the control of the vehicle system.
[0003] New energy vehicles contain various ECUs (Electronic Control Units), all of which require electricity. The vehicle's power supply is typically a battery, but since battery capacity is limited, excessive power consumption in new energy vehicles would significantly impact the vehicle's driving range. Therefore, to minimize power consumption, network management was proposed. Network management involves sending commands across the ECU network to establish rules for coordinated sleep and wake-up of the various ECUs. The purpose of network management is to ensure the orderly sleep and wake-up of ECU nodes within the network. Sleeping when there is no communication need and waking up when communication is required conserves battery power. In other words, one of the most important functions of network management is power saving.
[0004] In traditional network management, when an ECU in a network segment is woken up or a wake-up request is made, all ECUs in the entire segment are woken up simultaneously. However, in many scenarios, only a limited number of ECUs in the segment need to participate, which may lead to unnecessary power consumption. The ECU wake-up method in the traditional vehicle bus structure is prone to problems such as excessive system overhead, excessive data transmission volume, and excessive bandwidth usage, thereby affecting the system's performance and reliability. Summary of the Invention
[0005] This application provides a behavior learning-based ECU wake-up method, apparatus, device, and storage medium to solve the problem of excessive power consumption caused by network segment wake-up of ECUs in current network management.
[0006] Firstly, this application provides a behavior learning-based ECU wake-up method, comprising:
[0007] The scene wake-up requirements are obtained, and a target wake-up group is determined based on the scene wake-up requirements. The target wake-up group includes: a first controller that has been woken up and a plurality of second controllers that have not been woken up.
[0008] Determine whether the first controller has completed behavior learning;
[0009] If it is determined that the first controller has not completed behavior learning, then the plurality of second controllers are awakened;
[0010] If it is determined that the first controller has completed behavior learning, then the third controller is determined according to the first scenario learning number in the network management message of the first controller, and the third controller is woken up. The third controller is at least one of the plurality of second controllers.
[0011] Optionally, after waking up the plurality of second controllers, the method further includes:
[0012] Enable the scenario learning mode and determine the usage status of the plurality of second controllers;
[0013] Based on the usage status, at least one third controller is determined from the plurality of second controllers, wherein the usage status of the third controller is "used";
[0014] The at least one third controller is controlled to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position.
[0015] Optionally, determining the third controller based on the first scenario learning number in the network management message of the first controller includes:
[0016] Obtain network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller based on the scenario learning number bits of the multiple network management messages;
[0017] Determine whether the learning ID of the second scenario matches the learning ID of the first scenario;
[0018] When the second scene learning number matches the first scene learning number, the second controller corresponding to the second scene learning number is used as the third controller.
[0019] Optionally, after waking up the third controller, the method further includes:
[0020] The system acquires user behavior data and determines the fourth controller whose usage status has changed based on the user behavior data.
[0021] If the usage status changes from unused to used, the fourth controller is controlled to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position.
[0022] If the usage status changes from used to unused, the fourth controller will delete the first scene learning number from the corresponding scene learning number bit.
[0023] Optionally, after determining the third controller based on the first scenario learning number in the network management message of the first controller, the method further includes:
[0024] Determine whether the third controller and the first controller are in a cross-network segment state;
[0025] When the third controller and the first controller are in a cross-network segment state, the central gateway controls the network management message of the first controller to the target network segment corresponding to the third controller, so that the controller in the target network segment can determine whether it needs to be woken up based on the first scenario learning number in the network management message.
[0026] Secondly, this application provides an ECU wake-up device based on behavior learning, comprising:
[0027] The acquisition module is used to acquire scene wake-up requirements and determine a target wake-up group based on the scene wake-up requirements. The target wake-up group includes: a first controller that has been woken up and a plurality of second controllers that have not been woken up.
[0028] The judgment module is used to determine whether the first controller has completed behavior learning;
[0029] A wake-up module is used to wake up the plurality of second controllers if it is determined that the first controller has not completed behavior learning;
[0030] The determination module is configured to, if it is determined that the first controller has completed behavior learning, determine the third controller based on the first scenario learning number in the network management message of the first controller, and wake up the third controller, wherein the third controller is at least one of the plurality of second controllers.
[0031] Optionally, the device further includes: a control module;
[0032] The determining module is used to activate the scene learning mode and determine the usage status of the plurality of second controllers;
[0033] The determining module is further configured to determine at least one third controller from the plurality of second controllers based on the usage status, wherein the usage status of the third controller is "used";
[0034] The control module is used to control the at least one third controller to fill the first scene learning number in the network management message sent by the first controller into the corresponding scene learning number position.
[0035] Optionally, the acquisition module is further configured to acquire network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller based on the scenario learning number bits of the multiple network management messages;
[0036] The judgment module is further configured to determine whether the second scene learning number matches the first scene learning number;
[0037] The determining module is further configured to, when the second scene learning number matches the first scene learning number, use the second controller corresponding to the second scene learning number as the third controller.
[0038] Optionally, the acquisition module is further configured to acquire user behavior and determine the fourth controller whose usage status has changed based on the user behavior;
[0039] The control module is further configured to, if the usage status changes from unused to used, control the fourth controller to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position;
[0040] The control module is further configured to control the fourth controller to delete the first scene learning number from the corresponding scene learning number position if the usage status changes from used to unused.
[0041] Optionally, the judgment module is further configured to determine whether the third controller and the first controller are in a cross-network segment state;
[0042] The control module is further configured to control the central gateway to send the network management message of the first controller to the target network segment corresponding to the third controller when the third controller and the first controller are in a cross-network segment state, so that the controller in the target network segment can determine whether it needs to be woken up according to the first scenario learning number in the network management message.
[0043] Thirdly, this application provides an ECU wake-up device based on behavior learning, the device comprising:
[0044] Memory;
[0045] processor;
[0046] The memory stores computer-executed instructions;
[0047] The processor executes computer execution instructions stored in the memory to implement the behavior learning-based ECU wake-up method as described in the first aspect and various possible implementations of the first aspect above.
[0048] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the behavior learning-based ECU wake-up method as described in the first aspect and various possible implementations of the first aspect above.
[0049] The ECU wake-up method, apparatus, device, and storage medium based on behavior learning provided in this application acquire scene wake-up requirements and determine target wake-up groups based on these requirements. The target wake-up groups include a first controller that has already been woken up and multiple second controllers that have not yet been woken up. It determines whether the first controller has completed behavior learning. If it is determined that the first controller has not completed behavior learning, multiple second controllers are woken up. If it is determined that the first controller has completed behavior learning, a third controller is determined based on the first scene learning number in the network management message of the first controller, and the third controller is woken up. This method learns the user's usage of the controller in different scenarios, enabling scene behavior learning. After successful learning, when the user uses the controller again with the same operation, only the controller matching that scenario is woken up. Compared to conventional network management, the grouping of local network management is more flexible, optimizing the simultaneous sleep and wake-up network management strategy and making the vehicle more energy-efficient. Attached Figure Description
[0050] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0051] Figure 1 A flowchart illustrating the behavior learning-based ECU wake-up method provided in this application. Figure 1 ;
[0052] Figure 2 A flowchart illustrating the behavior learning-based ECU wake-up method provided in this application. Figure 2 ;
[0053] Figure 3 A schematic diagram of the structure of the behavior learning-based ECU wake-up device provided in this application;
[0054] Figure 4 A schematic diagram of the structure of the behavior learning-based ECU wake-up device provided in this application.
[0055] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0056] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are within the scope of protection of this invention.
[0057] The terms “first,” “second,” “third,” “fourth,” etc. (if present) in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a particular order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented, for example, in orders other than those illustrated or described herein. Furthermore, the terms “comprising” and “having,” and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, products, or apparatus.
[0058] In this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0059] The wake-up principle of an automotive Electronic Control Unit (ECU) is based on in-vehicle network bus communication. In this architecture, each ECU on the bus can reduce power consumption in a bus sleep mode to save energy. When an ECU needs to be woken up, a wake-up signal is sent through the bus. Upon receiving the signal, the woken ECU resumes its sleep mode and rejoins the control of the vehicle system.
[0060] New energy vehicles contain various ECUs (Electronic Control Units), all of which require electricity. The vehicle's power supply is typically a battery, but since battery capacity is limited, excessive power consumption in new energy vehicles would significantly impact the vehicle's driving range. Therefore, to minimize power consumption, network management was proposed. Network management involves sending commands across the ECU network to establish rules for coordinated sleep and wake-up of the various ECUs. The purpose of network management is to ensure the orderly sleep and wake-up of ECU nodes within the network. Sleeping when there is no communication need and waking up when communication is required conserves battery power. In other words, one of the most important functions of network management is power saving.
[0061] In traditional network management, when an ECU in a network segment is woken up or a wake-up request is made, all ECUs in the entire segment are woken up simultaneously. However, in many scenarios, only a limited number of ECUs in the segment need to participate, which may lead to unnecessary power consumption. The ECU wake-up method in the traditional vehicle bus structure is prone to problems such as excessive system overhead, excessive data transmission volume, and excessive bandwidth usage, thereby affecting the system's performance and reliability.
[0062] Currently, there are two main types of automotive network management: Automotive Open System Architecture (AutoSAR) network management and OSEK (Open systems and their interfaces for electronics in automobiles) network management. In the AutoSAR network management strategy, although the controller can wake up the local network controller in a certain CAN network segment by using local network management flags, the group division is fixed and does not take into account the user's perspective. Therefore, the fixed group network wake-up strategy cannot accurately match the user's needs for users with different usage habits.
[0063] To address the aforementioned issues, this application proposes an ECU wake-up method based on behavior learning. This method learns how users interact with the controller in different scenarios, enabling the formation of wake-up groups for each scenario. This allows the system to determine which controllers should be woken up and which should not be, based on the same scenario, the next time the user uses the vehicle. Furthermore, the network management strategy of this invention is applicable not only to single-segment networks but also to multi-segment networks with a central gateway.
[0064] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0065] Figure 1 A flowchart illustrating the behavior learning-based ECU wake-up method provided in this application embodiment. Figure 1 The executing entity in this embodiment is the vehicle control system. For example... Figure 1 As shown, the method includes:
[0066] S101: Obtain scene wake-up requirements and determine target wake-up groups based on the scene wake-up requirements. The target wake-up groups include: a first controller that has been woken up and multiple second controllers that have not been woken up.
[0067] Among them, scene wake-up requirements refer to the controller wake-up requirements corresponding to user behavior operations.
[0068] Understandably, when a user interacts with a car, a series of actions are performed. These actions require multiple controllers to work together, forming a wake-up group. The target wake-up group consists of the controllers needed to complete the current action. The first controller is the one that must be woken up; subsequent wake-up controllers must determine their status based on the first controller woken up.
[0069] S102: Determine whether the first controller has completed behavior learning.
[0070] Among them, behavior learning refers to the fact that the first controller has already performed scene learning, that is, the first controller has its fixed scene behavior, and there are multiple controllers that complete the scene behavior.
[0071] Understandably, the first controller is determined based on the wake-up request. The network management message from the first controller is then used to determine if it has completed behavior learning. If so, the first controller has a scene learning number. If it has not completed behavior learning, its scene learning number is empty.
[0072] Network management messages are data units used for exchange and data transmission between various controllers in network management. Table 1 shows a schematic diagram of the byte structure of a network management message. Table 2 shows the specific definitions of network status bits in a network management message.
[0073] Table 1
[0074]
[0075] Table 2
[0076] 0x00 invalid 0x01 Sleep state 0x02 Presleep state 0x03 Duplicate message status 0x04 Normal operating status 0x05 Preparing for sleep 0x06~0x15 Undefined
[0077] Understandably, network status bits can clearly indicate the network status of each node in the network, and technicians can perform network management through network management messages.
[0078] S103: If it is determined that the first controller has not completed behavior learning, then the plurality of second controllers are woken up.
[0079] Understandably, if the first controller has not completed behavior learning, that is, the scenario learning number of the first controller is empty, then all controllers in the network segment where the first controller is located are awakened. All controllers in the current network segment are also the second controller. The first controller fills its own network management message with the scenario learning number, the filling content is its own source address, and sets the active learning bit and the scenario learning bit to 1. The scenario learning number, its own source address, the active learning bit, and the position of the scenario learning bit in the network management message are shown in Table 1.
[0080] The scenario learning number is used to distinguish different usage scenarios of users.
[0081] S104: If it is determined that the first controller has completed behavior learning, then the third controller is determined according to the first scene learning number in the network management message of the first controller, and the third controller is woken up. The third controller is at least one of the plurality of second controllers.
[0082] Understandably, if it's determined that the first controller has completed behavior learning, then the first controller's scene learning number will have specific content; the first scene learning number is also the first controller's scene learning number. The second controller monitors the network management messages sent by the first controller to determine if it has the same scene learning number as the first controller. If it does, it is identified as the third controller and is activated. The controller group that was last learned is activated based on the first scene learning number, while other controllers remain dormant. The controller group that was last learned is also the third controller, and the third controller's scene learning number is the same as the first scene learning number.
[0083] The behavior-learning-based ECU wake-up method provided in this embodiment acquires scene wake-up requirements and determines a target wake-up group based on these requirements. The target wake-up group includes a first controller that has already been woken up and multiple second controllers that have not yet been woken up. It determines whether the first controller has completed behavior learning. If it is determined that the first controller has not completed behavior learning, multiple second controllers are woken up. If it is determined that the first controller has completed behavior learning, a third controller is determined based on the first scene learning number in the network management message of the first controller, and the third controller is woken up. This method learns how users use the controllers in different scenarios, enabling scene-based behavior learning. After successful learning, when the user uses the controllers again with the same operation, only the controller matching that scenario is woken up. Compared to conventional network management, local network management grouping is more flexible, optimizing the simultaneous sleep and wake-up network management strategy and making the vehicle more energy-efficient.
[0084] Figure 2 A flowchart illustrating the behavior learning-based ECU wake-up method provided in this application embodiment. Figure 2 This embodiment is... Figure 1 Based on the embodiments, a detailed description of the behavior learning-based ECU wake-up method is provided.
[0085] like Figure 2 As shown, the method includes:
[0086] S201: Obtain scene wake-up requirements and determine target wake-up groups based on the scene wake-up requirements. The target wake-up groups include: a first controller that has been woken up and multiple second controllers that have not been woken up.
[0087] S202: Determine whether the first controller has completed behavior learning.
[0088] Steps S201 to S202 are similar to steps S101 to S102, and will not be described again here.
[0089] S203: If it is determined that the first controller has not completed behavior learning, then the plurality of second controllers are awakened.
[0090] Understandably, since the first controller has not completed behavior learning, it is necessary to wake up multiple second controllers and then determine the wake-up group corresponding to the scenario based on the user's behavior.
[0091] For example, in a network with three subnets connected by a central gateway, the three subnets are CAN1, CAN2, and CAN3. The CAN1 subnet contains ECU1 (source address 0x00) and ECU2 (source address 0x03), the CAN2 subnet contains ECU3 (source address 0x0B), ECU4 (source address 0x0F), and ECU5 (source address 0x10), and the CAN3 subnet contains ECU6 (source address 0x17) and ECU7 (source address 0x3D). The central gateway source address is 0xC1. The source addresses of the controllers are unique, and each controller has a different source address.
[0092] The controller in sleep mode does not send any network management messages, but it can listen for messages in the network. When the user needs to use the vehicle, there is a wake-up requirement in the network. At this time, ECU1 actively wakes up and works normally (ECU1 is the first controller), and starts sending network management messages. In the network management messages sent by ECU1, the scene learning bit is filled with 0x01, the active wake-up bit is filled with 0x01, the active learning bit is filled with 0x01, the local network information bit is filled with 0x01, the node fault identifier bit is filled with 0x00, the scene number is filled with ECU1 source address 0x00, and the number of controllers to be woken up is filled with 0x00.
[0093] Since the number of controllers to be woken up is 0, the first controller has not completed behavior learning. Therefore, ECU1 will wake up ECU2 and the central gateway on the same network segment. The central gateway will also wake up all controllers on other network segments in turn. ECU2, the central gateway, and all controllers on other network segments are collectively referred to as the second controller. In the network management message sent by the central gateway and other controllers after being woken up, the scenario learning bit is filled with 0x01, the active wake-up bit is filled with 0x00, the active learning bit is filled with 0x01, the local network information bit is filled with 0x01, the node fault identifier bit is filled with 0x00, and the scenario number is filled with ECU1's source address 0x00.
[0094] S204: Enable scene learning mode and determine the usage status of the plurality of second controllers.
[0095] Understandably, setting the active learning bit and scene learning bit to 1 on the first controller indicates that any user operation that can wake up the controller or change the controller's signal value will be learned, thus activating scene learning mode. Controllers used after the first controller will be added to the learning scene corresponding to the first controller. After scene learning begins, the usage status of the second controller is determined, and based on this status, it is decided whether it needs to be added to the wake-up group.
[0096] S205: Based on the usage status, determine at least one third controller from the plurality of second controllers, wherein the usage status of the third controller is "used".
[0097] Understandably, the usage status of all second controllers is obtained, and the controllers whose usage status is "used" are identified as third controllers. The third controllers are the controllers newly added to the first controller wake-up group.
[0098] For example, following the example in step S203, during the process of ECU1 waking up ECU2 and the central gateway on the same network segment, and the central gateway also successively waking up all controllers on other network segments, the user uses ECU2, that is, the usage status of ECU2 changes, and ECU2 is determined to be the third controller. The active learning bit in the network management message sent by ECU2 is filled with 0x01, and other controllers with the active learning bit set to 1 detect a new controller that needs to be added to the wake-up group. At this time, the number of wake-up controllers becomes 2, and the wake-up group includes ECU21 and ECU2.
[0099] Optionally, it can be determined whether the third controller and the first controller are in a cross-network segment state.
[0100] When the third controller and the first controller are in a cross-network segment state, the central gateway controls the network management message of the first controller to the target network segment corresponding to the third controller, so that the controller in the target network segment can determine whether it needs to be woken up based on the first scenario learning number in the network management message.
[0101] Understandably, the central gateway connects to multiple network segments. The central gateway will determine whether the controllers in the wake-up group are in different network segments. If all controllers in the wake-up group are in the same network segment in a certain scenario, the central gateway does not need to participate in the wake-up. If the controllers in the wake-up group are in different network segments, the central gateway will send a network management message with the corresponding scenario learning number to the target network segment. After receiving the message, the controller in the target network segment will determine whether it needs to be woken up in that scenario.
[0102] For example, if the controller used by the user is not on the same network segment as the first controller, according to the example in step S203, when the user uses ECU3, the active learning bit in the network management message sent by ECU3 is filled with 0x01. When the central gateway detects cross-network segment wake-up, the active learning bit in the network management message sent also needs to be filled with 0x01. At this time, the number of wake-up controllers is 4, and the number of wake-up controllers in the network management messages sent by all controllers with active learning bit of 1 is updated to 0x04.
[0103] Understandably, the active learning bit of all controllers that have completed behavior learning is filled with 0x01, and the number of controllers woken up, i.e., the number of wake-up groups, will change continuously with the user's behavior. At this time, the number of controllers woken up is updated to 0x04, and the controllers are ECU1, ECU2, ECU3 and the central gateway.
[0104] S206: Control the at least one third controller to fill the first scene learning number in the network management message sent by the first controller into the corresponding scene learning number position.
[0105] Understandably, after the third controller is determined, the first scenario learning number from the first controller's network management message is entered into the scenario learning number field of the third controller. The scenario learning number of the third controller is the same as the first scenario learning number, indicating that the third controller and the first controller are in the same learning scenario. When the user no longer uses any controllers, all controllers will enter a sleep state, and the network will also enter a sleep state.
[0106] S207: If it is determined that the first controller has completed behavior learning, obtain network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller according to the scenario learning number bits of the multiple network management messages.
[0107] Understandably, it is determined that the first controller has completed behavior learning, meaning the first controller has a scene learning number and its corresponding wake-up group. The network management messages of the second controllers are obtained, and the second scene learning number of each second controller is determined from these messages. Based on the second scene learning number, the controller that needs to be woken up is determined.
[0108] For example, following the example in step S203, when the user uses it again, ECU1 is woken up first. In the network management message sent, the scene learning bit is filled with 0x01, the active wake-up bit is filled with 0x01, the active learning bit is filled with 0x01, the local network information bit is filled with 0x01, the node fault identifier bit is filled with 0x00, the scene number is filled with ECU1 source address 0x00, and the number of wake-up controllers is filled with 0x04.
[0109] S208: Determine whether the learning number of the second scenario matches the learning number of the first scenario.
[0110] S209: When the learning number of the second scene does not match the learning number of the first scene, the second controller remains in sleep mode.
[0111] This is understandable, because controllers required for the same scenario will have the same scenario learning number after completing behavior learning. Therefore, the second controller corresponding to the scenario can be identified through the scenario learning number. The second scenario learning number is obtained from the second controller and compared with the first scenario learning number. If the second scenario learning number is different from the first scenario learning number, it means that the second controller and the first controller are not controllers for the same scenario, and the second controller remains in sleep mode.
[0112] S210: When the second scene learning number matches the first scene learning number, the second controller corresponding to the second scene learning number is used as the third controller.
[0113] S211: Wake up the third controller, which is at least one of the plurality of second controllers.
[0114] Understandably, the learning ID of the second scene is compared with the learning ID of the first scene. If the learning IDs of the second and first scenes are the same, it indicates that the first and second controllers are the controllers required for the same scene. The second controller is then identified as the third controller, and the third controller is activated. The third controller is the set of all second controllers that share the same learning ID as the first scene.
[0115] For example, following the example in step S203, ECU1 is the first controller to complete behavior learning. Based on the wake-up group learned last time, it wakes up ECU2, ECU3, and the central gateway. Other controllers, upon receiving the network management message with scenario number 0x00, will not be woken up and will remain in sleep mode. The network management message sent by the woken controller is filled with 0x01 for the active learning bits, 0x00 for the scenario number (ECU1 source address), and 0x04 for the number of controllers to be woken up.
[0116] S212: Obtain user behavior and determine the fourth controller whose usage state has changed based on the user behavior.
[0117] Understandably, the number of controllers in a wake-up group will be updated based on user behavior. During the wake-up process of the previously learned wake-up group, if the user uses other controllers, the network management messages of those controllers will change according to the first controller in the wake-up group. The fourth controller can originate from either the second or third controller.
[0118] S213: If the usage status changes from unused to used, the fourth controller is controlled to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position.
[0119] Understandably, the change from unused to used means that during the wake-up process of the controller that has completed behavior learning, the user performs an operation and uses another controller. This newly added controller is also called the fourth controller. After being woken up, the fourth controller will update its own network management message according to the network management message of the first controller corresponding to the current scenario, and will be newly added to the wake-up group. It will be woken up together the next time the wake-up group is woken up.
[0120] For example, following the example in step S203, the user uses ECU5 and ECU6. ECU5 and ECU6 are woken up sequentially. The network management message sent by the newly woken controller has the active learning bit filled with 0x01, the scene number filled with the source address of ECU1 (0x00), and the initial number of woken controllers filled with 0x04. After ECU5 and ECU6 are added to the wake-up group, the total number of woken controllers is filled with 0x06. ECU5 and ECU6 are the fourth controller. Since ECU5 and ECU6 are newly added controllers, the number of controllers in the wake-up group increases to six.
[0121] S214: If the usage status changes from used to unused, the fourth controller is controlled to delete the first scene learning number from the corresponding scene learning number bit.
[0122] Understandably, the change in usage status from used to unused means that during the wake-up process of the controller that has completed behavioral learning, the user deletes a certain action in the scenario, causing the third controller to enter a sleep state. At this time, the third controller that enters the sleep state is also the fourth controller. Before entering the sleep state, the fourth controller deletes the first scenario learning number in its network management message, leaves the wake-up group, and will not be woken up with the wake-up group again.
[0123] For example, following the example in step S203, when the user shuts down ECU3, before ECU3 enters hibernation, the number of network management messages sent to wake up controllers will be filled with 0x05 until other controllers also become 0x05. ECU3 then leaves the wake-up group, enters hibernation, and stops sending network management messages.
[0124] Optionally, during network management wake-up, there may be a node failure. In this case, a node failure flag can be set in the network management message to indicate and handle the situation. The fault flag is filled with 0x00 by default. When a node fails in network management, this flag is filled with 0x01.
[0125] The node fault flag indicates that the node has failed and cannot participate in network management and network communication. In this case, the node will quickly send a network management message with a fault flag of 0x01, sending a total of 20 frames. Then the faulty node will be forced into a sleep state until the node recovers.
[0126] For example, following the example in step S203, if the number of controllers to be woken up in the network management message sent by ECU6 during the exit process of ECU3 is still not 0x05, ECU6 should set the node fault flag to 1. Other controllers that are being woken up will ignore ECU6 after receiving it, and ECU6 will be forced to enter a sleep state and stop sending network management messages, but will not leave the current wake-up group. ECU6 will still be woken up the next time it is used.
[0127] Understandably, since ECU3 is shut down and leaves the current wake-up group, the number of controllers in the group should change from 6 to 5. All controllers in the current wake-up group should also change the number of controllers in their network management messages. However, in the network management message sent by ECU6, the number of controllers remains 6. ECU6 has malfunctioned, so it sets the node fault flag to 1 and forces itself into a sleep state. If ECU6 is still in a fault state when the wake-up group is woken up again, it will continue to enter a sleep state until it recovers. ECU6 will not leave the current wake-up group during its recovery process.
[0128] This embodiment provides an ECU wake-up method based on behavior learning. This method determines the target wake-up group according to scene wake-up requirements and performs behavior learning on the first controller. If the first controller has not completed behavior learning, multiple second controllers are woken up and their usage status is determined. Then, at least one third controller is selected based on the usage status, and the learning number is filled into the network management message. If the first controller has completed behavior learning, the network management messages of multiple second controllers are obtained and matched with the scene learning number to determine the third controller. If the scene learning number matches, the second controller becomes the third controller; otherwise, the second controller remains in the wake-up state, and the third controller is woken up. This method learns from user operations, sets an active learning flag in the network management message to mark the controller that the user needs to wake up during this use, and records the scene learning number. After successful learning, when the user uses the same operation again, only the controller matching the scene is woken up. Compared with conventional network management, local network management grouping is more flexible, optimizes the simultaneous sleep and wake-up network management strategy, and makes the vehicle more energy-efficient.
[0129] Figure 3 A schematic diagram of the ECU wake-up device based on behavior learning provided in this application. Figure 3 As shown, the behavior learning-based ECU wake-up device 300 provided in this application includes:
[0130] The acquisition module 301 is used to acquire scene wake-up requirements and determine a target wake-up group based on the scene wake-up requirements. The target wake-up group includes: a first controller that has been woken up and a plurality of second controllers that have not been woken up.
[0131] The judgment module 302 is used to determine whether the first controller has completed behavior learning;
[0132] The wake-up module 303 is used to wake up the plurality of second controllers if it is determined that the first controller has not completed behavior learning;
[0133] The determination module 304 is configured to, if it is determined that the first controller has completed behavior learning, determine the third controller based on the first scene learning number in the network management message of the first controller, and wake up the third controller, wherein the third controller is at least one of the plurality of second controllers.
[0134] Optionally, the device further includes: a control module 305;
[0135] The determining module 304 is used to activate the scene learning mode and determine the usage status of the plurality of second controllers;
[0136] The determining module 304 is further configured to determine at least one third controller from the plurality of second controllers based on the usage status, wherein the usage status of the third controller is "used";
[0137] The control module 305 is used to control the at least one third controller to fill the first scene learning number in the network management message sent by the first controller into the corresponding scene learning number position.
[0138] Optionally, the acquisition module 301 is further configured to acquire network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller based on the scenario learning number bits of the multiple network management messages;
[0139] The judgment module 302 is further configured to determine whether the second scene learning number matches the first scene learning number;
[0140] The determining module 304 is further configured to, when the second scene learning number matches the first scene learning number, use the second controller corresponding to the second scene learning number as the third controller.
[0141] Optionally, the acquisition module 301 is further configured to acquire user behavior and determine the fourth controller whose usage status has changed based on the user behavior;
[0142] The control module 305 is further configured to, if the usage status changes from unused to used, control the fourth controller to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position;
[0143] The control module 305 is further configured to control the fourth controller to delete the first scene learning number from the corresponding scene learning number position if the usage status changes from used to unused.
[0144] Optionally, the judgment module 302 is further configured to determine whether the third controller and the first controller are in a cross-network segment state;
[0145] The control module 305 is further configured to control the central gateway to send the network management message of the first controller to the target network segment corresponding to the third controller when the third controller and the first controller are in a cross-network segment state, so that the controller in the target network segment can determine whether it needs to be woken up according to the first scenario learning number in the network management message.
[0146] Figure 4 A schematic diagram of the structure of the behavior learning-based ECU wake-up device provided in this application. Figure 4 As shown, this application provides an ECU wake-up device based on behavior learning. The ECU wake-up device 400 based on behavior learning includes: a receiver 401, a transmitter 402, a processor 403, and a memory 404.
[0147] Receiver 401 is used to receive instructions and data;
[0148] Transmitter 402 is used to send commands and data;
[0149] Memory 404 is used to store instructions executed by the computer;
[0150] The processor 403 is used to execute computer execution instructions stored in the memory 404 to implement the various steps of the behavior learning-based ECU wake-up method in the above embodiments. For details, please refer to the relevant descriptions in the foregoing embodiments of the behavior learning-based ECU wake-up method.
[0151] Alternatively, the memory 404 can be either standalone or integrated with the processor 403.
[0152] When the memory 404 is set up independently, the electronic device also includes a bus for connecting the memory 404 and the processor 403.
[0153] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the behavior-learning-based ECU wake-up method as described above by the behavior-learning-based ECU wake-up device.
[0154] It will be understood by those skilled in the art that all or some of the steps, systems, or apparatuses disclosed above, and their functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof. In hardware implementations, the division between functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed collaboratively by several physical components. Some or all physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software may be distributed on a computer-readable medium, which may include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, it is well known to those skilled in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0155] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the following claims.
[0156] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A behavior-learning-based ECU wake-up method, characterized in that, The method includes: The scene wake-up requirements are obtained, and a target wake-up group is determined based on the scene wake-up requirements. The target wake-up group includes: a first controller that has been woken up and a plurality of second controllers that have not been woken up. Determine whether the first controller has completed behavior learning; If it is determined that the first controller has not completed behavior learning, then the plurality of second controllers are awakened; If it is determined that the first controller has completed behavior learning, then the third controller is determined according to the first scenario learning number in the network management message of the first controller, and the third controller is woken up. The third controller is at least one of the plurality of second controllers.
2. The method according to claim 1, characterized in that, After waking up the plurality of second controllers, the method further includes: Enable the scenario learning mode and determine the usage status of the plurality of second controllers; Based on the usage status, at least one third controller is determined from the plurality of second controllers, wherein the usage status of the third controller is "used"; The at least one third controller is controlled to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position.
3. The method according to claim 2, characterized in that, The step of determining the third controller based on the first scenario learning number in the network management message of the first controller includes: Obtain network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller based on the scenario learning number bits of the multiple network management messages; Determine whether the learning ID of the second scenario matches the learning ID of the first scenario; When the second scene learning number matches the first scene learning number, the second controller corresponding to the second scene learning number is used as the third controller.
4. The method of claim 3, wherein, After waking up the third controller, the method further includes: The system acquires user behavior data and determines the fourth controller whose usage status has changed based on the user behavior data. If the usage status changes from unused to used, the fourth controller is controlled to fill the first scenario learning number in the network management message sent by the first controller into the corresponding scenario learning number position. If the usage status changes from used to unused, the fourth controller will delete the first scene learning number from the corresponding scene learning number bit.
5. The method of claim 4, wherein, After determining the third controller based on the first scenario learning number in the network management message of the first controller, the method further includes: Determine whether the third controller and the first controller are in a cross-network segment state; When the third controller and the first controller are in a cross-network segment state, the central gateway controls the network management message of the first controller to the target network segment corresponding to the third controller, so that the controller in the target network segment can determine whether it needs to be woken up based on the first scenario learning number in the network management message.
6. An ECU wake-up device based on behavior learning, characterized in that, The device includes: The acquisition module is used to acquire scene wake-up requirements and determine a target wake-up group based on the scene wake-up requirements. The target wake-up group includes: a first controller that has been woken up and a plurality of second controllers that have not been woken up. The judgment module is used to determine whether the first controller has completed behavior learning; A wake-up module is used to wake up the plurality of second controllers if it is determined that the first controller has not completed behavior learning; The determination module is configured to, if it is determined that the first controller has completed behavior learning, determine the third controller based on the first scenario learning number in the network management message of the first controller, and wake up the third controller, wherein the third controller is at least one of the plurality of second controllers.
7. The apparatus of claim 6, wherein, The device further includes: a control module; The determining module is used to activate the scene learning mode and determine the usage status of the plurality of second controllers; The determining module is further configured to determine at least one third controller from the plurality of second controllers based on the usage status, wherein the usage status of the third controller is "used"; The control module is used to control the at least one third controller to fill the first scene learning number in the network management message sent by the first controller into the corresponding scene learning number position.
8. The apparatus according to claim 6, characterized in that: The acquisition module is also used to acquire network management messages sent by multiple second controllers, and determine the second scenario learning number of each second controller based on the scenario learning number bits of the multiple network management messages; The judgment module is further configured to determine whether the second scene learning number matches the first scene learning number; The determining module is further configured to, when the second scene learning number matches the first scene learning number, use the second controller corresponding to the second scene learning number as the third controller.
9. A behavior learning based ECU wake-up device, characterized by, include: Memory; processor; The memory stores computer-executed instructions; The processor executes the computer execution instructions stored in the memory to implement the behavior learning-based ECU wake-up method as described in any one of claims 1-5.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the behavior-learning-based ECU wake-up method as described in any one of claims 1-5.