Vehicle domain controller system, decoupling method and medium
By adopting the vertical three-layer vertical multi-dimensional software architecture and the decoupling and division method of the main control module in the domain controller system, the problem of low cohesion and high coupling in the existing domain controller system is solved, and the software design with high cohesion and low coupling is realized, which improves the development efficiency.
Patent Information
- Application Number
- CN202210616696.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-01
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2042-06-01
AI Technical Summary
The existing domain controller systems have low cohesion and high coupling, resulting in low software design and development efficiency and difficulty in decoupling of functions.
The software architecture of three vertical layers and each layer is horizontally multi-dimensional, including the whole machine function layer, the fusion boundary layer and the feature key layer. The new functions are decoupled and divided through the main control module to adapt to the function allocation at different levels.
It realizes high cohesion and low coupling of domain controller systems, improves software design and development efficiency, reduces the difficulty at the software architecture design level, and improves development collaboration efficiency.
Smart Images

Figure CN114954305B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of domain controllers, and particularly to a vehicle domain controller system, a decoupling method, and a medium. Background Art
[0002] The design of application software needs to be as highly cohesive and lowly coupled as possible in order to improve readability, reduce the difficulty of software iteration, and improve the portability of the platform, so as to achieve the improvement of software quality. However, for complex multi-dimensional control systems, it is difficult to achieve full decoupling.
[0003] As the mainstream direction in the automotive industry in recent years, the application of domain controllers has become more and more common, and the software complexity in the corresponding domain controllers has also become higher and higher. For example, there are application integrations based on cross-knowledge domains or based on regional locations, and even the future goal is to be integrally integrated into a central brain supercomputer platform. This has a great impact on the design of software architecture and requires consideration of many influencing relationships, such as the integration of power / chassis / body. The original associated modules for drive and braking need to be redesigned, and the original human-vehicle interaction control also needs to be reconsidered. Also, for better OTA function upgrades in the later stage, service extraction from atoms / bases / applications to the platform needs to be carried out based on the SOA method, which is also in continuous hierarchical design, thus affecting the architecture design of logical software. In addition, many times the system and software designs always define their own hierarchical methods, resulting in isolation, or the system design is too shallow, making it necessary for software designers to have more interpretations and experiences, which further increases the difficulty of obtaining a good software architecture. Summary of the Invention
[0004] The main purpose of the present invention is to provide a vehicle domain controller system and a decoupling method for vehicle domain controller functions, aiming to solve the technical problems in the prior art that the domain controller system has low cohesion and high coupling, and the decoupling of domain controller functions is difficult, resulting in low software design and development efficiency.
[0005] To achieve the above object, the present invention provides a vehicle domain controller system. The vehicle domain controller system has a software architecture with three longitudinal layers and multi-dimensional transverse layers. The vehicle domain controller system includes:
[0006] The whole-machine function layer of the first layer, in which the functions of the domain controller are divided into two dimensions: basic functions and application functions;
[0007] The fusion boundary layer of the second layer, in which the functions of the domain controller are divided into three dimensions: ECU, knowledge domain, and responsible team;
[0008] The feature key point layer of the third layer divides the functions of the domain controller in the fusion boundary layer according to three dimensions: target control type, target control quantity, and logical link complexity.
[0009] The main control module is used to decouple and divide the new function when a new function is detected to be incorporated, so as to perform adaptive function allocation for the whole machine function layer of the first layer, the fusion boundary layer of the second layer, and the feature key point layer of the third layer.
[0010] Optionally, the basic functions include one or more of acquisition, drive, wake-up and sleep, communication, network, update, configuration, storage, and diagnostic repair, and the application functions include one or more of machine start-stop, machine safe entry, machine energy safety, machine energy use, machine energy replenishment, machine work safety, machine damage protection, human-machine interface, machine indication, and machine state adjustment.
[0011] Optionally, the ECU includes one or more of VCU, BMS, motor control, body control, and chassis control, and the knowledge domain includes one or more of battery, motor, vehicle electronic control, body, intelligent driving, and chassis.
[0012] Optionally, the target control type includes drive control of the IO end actuator and / or request control of the ECU, the target control quantity defines that when the number does not exceed a preset first quantity, the control objects for realizing the function are few, and when it exceeds the preset first quantity, the control objects for realizing the function are many, and the logical link complexity defines that when the number of associated interaction reciprocations does not exceed a preset second quantity, the link interaction for realizing the function is not complex, and when the number of associated interaction reciprocations exceeds the preset second quantity, the link interaction for realizing the function is complex.
[0013] To achieve the above object, the present invention provides a method for decoupling the functions of a vehicle domain controller. The method for decoupling the functions of the vehicle domain controller is applied to the vehicle domain controller system as described above, and includes the following steps:
[0014] When a new function is incorporated into the vehicle domain controller system, the new function is decoupled and divided according to the software architecture of each layer in the longitudinal three layers and each dimension in the horizontal direction.
[0015] Optionally, the step of decoupling and dividing the new function according to the software architecture of each layer in the longitudinal three layers and each dimension in the horizontal direction includes:
[0016] In the whole machine function layer of the first layer, the new function is divided into the existing basic functions or application functions.
[0017] If the new function cannot be divided into the existing basic functions or application functions, a module for the new function is added.
[0018] Optionally, the step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multiple horizontal dimensions for each layer further includes:
[0019] In the fusion boundary layer of the second layer, determine the association relationships between the various dimensions of the new function in the second layer and the target modules corresponding to the association relationships, split the new function under the target modules, and allocate it under the corresponding overall vehicle functions of the target modules in the first layer.
[0020] Optionally, the step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multiple horizontal dimensions for each layer further includes:
[0021] In the feature key point layer of the third layer, if the new function has no linkage relationship with the IO end actuators of other modules or the control of the ECU, split it according to the target control quantity;
[0022] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is not complex, after recombination with the existing modules, allocate the third layer modules according to the module definition of the second layer;
[0023] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is complex, after recombination with the existing modules, split it into multiple modules in terms of conditional judgment, calculation, arbitration, and output, and allocate the third layer modules according to the module definition of the second layer.
[0024] Optionally, the step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multiple horizontal dimensions for each layer further includes:
[0025] In the feature key point layer of the third layer, for the new function split in the second layer, combine all the target modules after splitting to judge the logical link complexity of the new function;
[0026] If the link interaction is complex, after recombination with the existing modules, split it into multiple modules in terms of conditional judgment, calculation, arbitration, and output, and allocate the third layer modules according to the module definition of the second layer.
[0027] In addition, to achieve the above object, the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the decoupling method for the vehicle domain controller function as described above are implemented.
[0028] A vehicle domain controller system, decoupling method and medium proposed by an embodiment of the present invention. The vehicle domain controller system has a software architecture with three longitudinal layers and multiple horizontal dimensions in each layer. The vehicle domain controller system includes: a whole-machine function layer in the first layer, where the functions of the domain controller are divided into two dimensions of basic functions and application functions; a fusion boundary layer in the second layer, where the functions of the domain controller are divided into three dimensions of ECU, knowledge domain, and responsible team; a feature key point layer in the third layer, where the functions of the domain controller are divided into three dimensions of target control type, target control quantity, and logical link complexity; a main control module, which is used to perform decoupling division on the new function when a new function is detected to be incorporated, so as to perform adaptive function allocation on the whole-machine function layer of the first layer, the fusion boundary layer of the second layer, and the feature key point layer of the third layer. The decoupling method of the vehicle domain controller function is applied to the vehicle domain controller system as described above. When a new function is incorporated into the vehicle domain controller system, the new function is decoupled and divided according to the software architecture with three longitudinal layers and multiple horizontal dimensions in each layer.
[0029] It is required that one longitudinal layer covers the whole-machine function, the second layer reflects the fusion boundary, and the third layer reflects the feature key points. The first layer's horizontal dimension requires differentiation: basic and application; the second layer's horizontal dimension requires differentiation: different ECUs (Electronic Control Units), different knowledge domains, and different teams; the third layer's horizontal dimension requires differentiation: target control type, target control number, and logical link complexity. This can help quickly locate and decouple the newly integrated functions of the vehicle domain controller, making the domain controller system have low cohesion and high coupling, and providing system design support for the rapid decoupling design of the final software architecture.
[0030] Considering from a global system perspective, ensuring decoupling at a rough level can also provide support for in-depth decoupling, realizing step-by-step decoupling from rough to fine, reducing the difficulty of software architecture design, ensuring coherent traceability of the design, and at the same time considering the boundaries between different cooperation parties, improving the development collaboration efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] Figure 1 It is a schematic diagram of the terminal structure of the hardware operating environment involved in the solution of the embodiment of the present invention;
[0032] Figure 2 It is a schematic diagram of the architecture of an embodiment of a vehicle domain controller system of the present invention;
[0033] Figure 3 It is a schematic diagram of the construction of an embodiment of a vehicle domain controller system of the present invention.
[0034] The realization, functional features and advantages of the object of the present invention will be further described in conjunction with the embodiments with reference to the accompanying drawings. Detailed implementation manners
[0035] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0036] Refer to Figure 1 , Figure 1 which is a schematic structural diagram of a terminal for the hardware operating environment involved in the embodiment solution of the present invention.
[0037] As Figure 1 shown, the terminal device may include: a processor 1001, such as a Central Processing Unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Among them, the communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may include a display screen (Display) and an input unit such as a keyboard (Keyboard). Optionally, the user interface 1003 may further include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a Wireless-Fidelity (WI-FI) interface). The memory 1005 may be a high-speed random access memory (Random Access Memory, RAM) or a stable non-volatile memory (Non-Volatile Memory, NVM), such as a disk memory. Optionally, the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
[0038] Those skilled in the art can understand that Figure 1 the structure shown in
[0039] does not constitute a limitation on the terminal device, and may include more or fewer components than shown in the figure, or combine some components, or have different component arrangements. Figure 1 As
[0040] shown, in the memory 1005 as a storage medium, there may be included an operating system, a data storage module, a network communication module, a user interface module, and a computer program. Figure 1 In the terminal device shown in , the network interface 1004 is mainly used for data communication with other devices; the user interface 1003 is mainly used for data interaction with users; the processor 1001 and the memory 1005 in the terminal device of the present invention may be disposed in the terminal device. The terminal device calls the computer program stored in the memory 1005 through the processor 1001 and performs the following operations:
[0041] When a new function is incorporated into the vehicle domain controller system, the new function is decoupled and partitioned according to the software architecture with three vertical layers and multi-dimensional horizontal layers for each layer.
[0042] Furthermore, the processor 1001 can call the computer program stored in the memory 1005 and also perform the following operations:
[0043] The step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multi-dimensional horizontal layers for each layer includes:
[0044] In the first-layer overall machine function layer, the new function is partitioned into existing basic functions or application functions;
[0045] If the new function cannot be partitioned into existing basic functions or application functions, a module for the new function is added.
[0046] Furthermore, the processor 1001 can call the computer program stored in the memory 1005 and also perform the following operations:
[0047] The step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multi-dimensional horizontal layers for each layer further includes:
[0048] In the second-layer fusion boundary layer, determine the association relationships between the various dimensions of the new function in the second layer and the target modules corresponding to the association relationships, split the new function under the target modules, and allocate it under the overall machine function corresponding to the target modules in the first layer.
[0049] Furthermore, the processor 1001 can call the computer program stored in the memory 1005 and also perform the following operations:
[0050] The step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multi-dimensional horizontal layers for each layer further includes:
[0051] In the third-layer feature key point layer, if the new function does not have a linkage relationship with the IO end actuators of other modules or the control of the ECU, it is split according to the target control quantity;
[0052] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is not complex, after recombination with existing modules, the third-layer modules are allocated according to the module definition of the second layer;
[0053] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is complex, after recombination with existing modules, it is split into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and the third-layer modules are allocated according to the module definition of the second layer.
[0054] Further, the processor 1001 may call the computer program stored in the memory 1005 and further perform the following operations:
[0055] The step of decoupling and partitioning the new function according to the software architecture with three longitudinal layers and multi-dimensional horizontally for each layer further includes:
[0056] In the feature key point layer of the third layer, for the new functions split in the second layer, combine all the target modules after splitting to judge the logical link complexity of the new functions;
[0057] If the link interaction is complex, after recombination with the existing modules, split them into multiple modules according to the four aspects of conditional judgment, calculation, arbitration, and output, and allocate the third-layer modules according to the module definition of the second layer.
[0058] The embodiment of the present invention provides a vehicle domain controller system. Refer to Figure 2 , Figure 2 which is a schematic diagram of the architecture of an embodiment of a vehicle domain controller system of the present invention.
[0059] In this embodiment, the vehicle domain controller system has a software architecture with three longitudinal layers and multi-dimensional horizontally for each layer. The vehicle domain controller system includes:
[0060] The whole machine function layer of the first layer, in which the functions of the domain controller are divided according to two dimensions of basic functions and application functions;
[0061] The fusion boundary layer of the second layer, in which the functions of the domain controller are divided according to three dimensions of ECU, knowledge domain, and responsible team;
[0062] The feature key point layer of the third layer, in which the functions of the domain controller are divided according to three dimensions of target control type, target control quantity, and logical link complexity;
[0063] The main control module is used for decoupling and partitioning the new function when detecting the incorporation of the new function, so as to perform adaptive function allocation for the whole machine function layer of the first layer, the fusion boundary layer of the second layer, and the feature key point layer of the third layer.
[0064] In order to achieve the architecture goal of a better loosely coupled relationship for complex systems in the end, with high cohesion and low coupling, it is necessary to design the upstream and downstream to cooperate together, and associate and progress gradually from shallow to deep. Therefore, the front-end system designers should be able to, from a global perspective, initially define the software architecture within a relatively positive range, reducing the difficulty for software architecture designers to further decouple.
[0065] For a vehicle domain controller system used to integrate the control functions of the three electric systems, chassis, and body, as the number of integrated control functions increases, the intertwined relationships between functions become more complex, greatly increasing the decoupling difficulty and development efficiency at the software architecture level. As the number of integrated functions increases, when there is a coupling relationship between the newly incorporated function and the existing functions, it is necessary to re-split and reorganize the different functions with associated relationships at the architecture end to ensure the loose coupling relationship of the architecture.
[0066] This embodiment mainly proposes a vertical three-layer and horizontal multi-dimensional module definition and splitting strategy. It is required that the first vertical layer covers the whole machine functions, the second layer reflects the integration boundaries, and the third layer reflects the key features. In the first horizontal dimension of the first layer, it is required to distinguish between basic and application; in the second horizontal dimension of the second layer, it is required to distinguish between different ECUs (Electronic Control Unit), different knowledge domains, and different teams; in the third horizontal dimension of the third layer, it is required to distinguish between target control types, target control numbers, and logical link complexities. This can help quickly locate and decouple the newly integrated functions of the vehicle domain controller, providing system design support for the rapid decoupling design of the final software architecture.
[0067] Among them, the main control module is used to decouple and divide the new function when detecting the incorporation of a new function. Specifically, in the whole machine function layer of the first layer, the main control module divides the new function into the existing basic function or application function; if the new function cannot be divided into the existing basic function or application function, a module for the new function is added. In the integration boundary layer of the second layer, the main control module determines the association relationship between the new function in each dimension of the second layer and the target module corresponding to the association relationship. The main control module splits the new function under the target module and allocates it under the whole machine function corresponding to the target module in the first layer. In the key feature layer of the third layer, if the new function does not have a linkage relationship with the IO end actuator of other modules or the control of the ECU, the main control module splits it according to the target control quantity; if the new function has a linkage relationship with the IO end actuator of other modules or the control of the ECU and the link interaction is not complex, after reorganizing with the existing module, the main control module allocates the third layer module according to the module definition of the second layer; if the new function has a linkage relationship with the IO end actuator of other modules or the control of the ECU and the link interaction is complex, after reorganizing with the existing module, it is split into multiple modules in terms of condition judgment, calculation, arbitration, and output, and the third layer module is allocated according to the module definition of the second layer. In the key feature layer of the third layer, for the newly split function in the second layer, the main control module combines all the target modules after splitting to judge the logical link complexity of the new function; if the link interaction is complex, after reorganizing with the existing module, it is split into multiple modules in terms of condition judgment, calculation, arbitration, and output, and the third layer module is allocated according to the module definition of the second layer.
[0068] After dividing a basic version according to the above strategy, when new functions are incorporated, for the first layer, it is updated by incorporating into existing modules or adding new modules. For the second layer of modules, they adapt to the differences of the new function cooperation parties and flexibly adjust the module division to clarify the respective boundaries of the cooperation parties. For the third layer, it can recombine, split, or add new modules to the defined third-layer modules based on the adjustment of the second-layer modules. In this embodiment, the order of the three-layer division for incorporating subsequent new functions in the updated and iterated version is not limited. It can be divided sequentially in the forward order during the development of the basic version, or in other orders. After the splitting is completed according to the splitting strategy of each layer, the matching between the modules after splitting each layer can be carried out.
[0069] In this embodiment, the vehicle domain controller system is a software architecture with three longitudinal layers and multi-dimensional horizontally, including the whole-machine function layer in the first layer, the fusion boundary layer in the second layer, and the feature key point layer in the third layer. The whole-machine function layer includes basic functions and application functions. The fusion boundary layer includes ECUs, knowledge domains, and responsible teams. The feature key point layer includes target control types, target control quantities, and logical link complexities.
[0070] It is required that the first longitudinal layer covers the whole-machine functions, the second layer reflects the fusion boundary, and the third layer reflects the feature key points. In the horizontal dimension of the first layer, it is required to distinguish: basic and application; in the horizontal dimension of the second layer, it is required to distinguish: different ECUs (Electronic Control Unit), different knowledge domains, different teams; in the horizontal dimension of the third layer, it is required to distinguish: target control types, target control numbers, and logical link complexities. This can help quickly locate and decouple the newly integrated functions of the vehicle domain controller, making the domain controller system have low cohesion and high coupling, and providing system design support for the rapid decoupling design of the final software architecture.
[0071] Considering from a global system perspective, ensuring decoupling at a coarse level can also provide support for in-depth decoupling, realizing step-by-step decoupling from coarse to fine, reducing the difficulty at the software architecture design level, ensuring coherent traceability of the design, and at the same time considering the boundaries between different cooperation parties, improving the development collaboration efficiency.
[0072] Optionally, the basic functions include one or more of acquisition, drive, wake-up and sleep, communication, network, update, configuration, storage, and diagnostic repair. The application functions include one or more of machine start / stop, machine safe entry, machine energy safety, machine energy usage, machine energy replenishment, machine work safety, machine damage protection, human-machine interface, machine indication, and machine state adjustment.
[0073] Optionally, the ECU includes one or more of VCU, BMS, motor control, body control, and chassis control, and the knowledge domain includes one or more of battery, motor, vehicle electric control, body, intelligent driving, and chassis.
[0074] Optionally, the target control type includes the drive control of the IO end actuator and / or the request control of the ECU. The target control quantity is defined as having fewer control objects for realizing the function when not exceeding a preset first quantity, and having more control objects for realizing the function when exceeding the preset first quantity. The logical link complexity is defined as having a non-complex link interaction for realizing the function when the number of associated interaction reciprocations does not exceed a preset second quantity, and having a complex link interaction for realizing the function when the number of associated interaction reciprocations exceeds the preset second quantity.
[0075] To assist in the rapid decoupling at the software architecture level and reduce the difficulty of decoupling, a vehicle domain controller system for the rapid decoupling of the functions of the vehicle domain controller is proposed. It can not only provide scope constraints for the architecture implementation from the system level, but also ensure the collaboration of different knowledge domains or teams, and can also provide relatively in-depth pre-decoupling support for software design. It proposes a system module definition and splitting strategy with three vertical layers and multiple horizontal dimensions, specifically:
[0076] Vertically: The first layer covers the overall functions of the machine, the second layer reflects the integration boundary, and the third layer reflects the characteristic key points.
[0077] Horizontally: Different horizontal dimensions are defined for each vertical layer, and decoupling and splitting are carried out according to the dimensions.
[0078] Among them, the first-layer horizontal dimension requires differentiation: basic functions and application functions; the second-layer horizontal dimension requires differentiation: different ECUs, different knowledge domains, different teams; the third-layer horizontal dimension requires differentiation: target control type, target control quantity, and logical link complexity.
[0079] Specifically, the first layer reflects the overall functions of the machine, and is considered from two dimensions of basic and application. Each dimension includes specific aspects: including the following basic aspects, one or more of acquisition, drive, wake-up and sleep, communication, network, update, configuration, storage, diagnosis and repair; and the following application aspects, one or more of machine start-stop, machine safe entry, machine energy safety, machine energy use, machine energy replenishment, machine work safety, machine damage protection, human-machine interface, machine indication, machine state regulation.
[0080] The second layer reflects the integration boundary, which is considered from three dimensions: different ECUs, different knowledge domains, and different teams. Each dimension includes specific aspects: Different ECUs include one or more of VCU (Vehicle Control Unit), BMS (Battery Management System), motor control, body control, and chassis control; Different knowledge domains include one or more of battery, motor, vehicle electric control, body, intelligent driving, and chassis; Different teams: Similar to the division of knowledge domains, the functions of the same knowledge domain may also be split and responsible for by different teams.
[0081] The third layer reflects the characteristic points, which are considered from three dimensions: control target type, number of control targets, and complexity of the logical link. Each dimension includes specific aspects: Control target type: Drive control of IO - end actuators, request control of ECUs; Number of control targets: Few control objects for implementing functions (e.g., not exceeding 2), many control objects for implementing functions; Complexity of the logical link: The link interaction for implementing functions is not complex (e.g., the number of associated interactions does not exceed 3 times), the logical link is complex.
[0082] An embodiment of the present invention provides a decoupling method for the functions of a vehicle domain controller.
[0083] In this embodiment, the decoupling method for the functions of the vehicle domain controller is applied to the vehicle domain controller system as described above, and includes the following steps:
[0084] When a new function is integrated into the vehicle domain controller system, the new function is decoupled and divided according to the software architecture with three longitudinal layers and multiple horizontal dimensions for each layer.
[0085] Refer to Figure 3 , Figure 3 which is a schematic diagram of the construction of an embodiment of a vehicle domain controller system of the present invention. When a new function is integrated, for the first layer, it is updated by integrating into existing modules or adding new modules; for the second layer, the modules are adapted to the differences of the new function's cooperation parties, and the module division is flexibly adjusted to clarify the respective boundaries of the cooperation parties; for the third layer, based on the adjustment of the second - layer modules, the defined third - layer modules can be recombined, split, or new modules can be added.
[0086] Optionally, the step of decoupling and dividing the new function according to the software architecture with three longitudinal layers and multiple horizontal dimensions for each layer includes:
[0087] In the overall machine function layer of the first layer, the new function is divided into existing basic functions or application functions;
[0088] If the new function cannot be divided into existing basic functions or application functions, a module for the new function is added.
[0089] The splitting method for the first layer is as follows: split it into blocks according to the defined specific aspects, determine whether the new function can be classified into the existing basic functions or application functions, otherwise add a new function module.
[0090] Optionally, the step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multiple horizontal dimensions for each layer further includes:
[0091] In the fusion boundary layer of the second layer, determine the association relationships between the various dimensions of the new function in the second layer and the target modules corresponding to the association relationships, split the new function under the target modules, and allocate it under the corresponding overall machine functions of the target modules in the first layer.
[0092] The splitting method for the second layer is as follows: if the fusion function comes from this ECU1 but has an association relationship with the functions from other ECU2, then split this function into XXX function_ECU1 and XXX function_ECU2, and allocate XXX function_ECU2 under the first layer function where ECU2 is located. If the fusion function comes from ECU1 but the covered knowledge part belongs to another function module, split it into XXX function_1 and XXX function_2, and transfer XXX function_2 to another function module defined in the first layer. If the fusion functions come from the same ECU but are responsible for different teams, then split XXX function_ECU4 and XXX function_ECU5 and unify them under a certain function module in the first layer.
[0093] Optionally, the step of decoupling and partitioning the new function according to the software architecture with three vertical layers and multiple horizontal dimensions for each layer further includes:
[0094] In the feature key point layer of the third layer, if the new function has no linkage relationship with the IO end actuators of other modules or the control of the ECU, then split it according to the target control quantity;
[0095] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is not complex, then after reorganizing with the existing modules, allocate the third layer modules according to the module definition of the second layer;
[0096] If the new function has a linkage relationship with the IO end actuators of other modules or the control of the ECU and the link interaction is complex, then after reorganizing with the existing modules, split it into multiple modules according to the four aspects of condition judgment, calculation, arbitration, and output, and allocate the third layer modules according to the module definition of the second layer.
[0097] The splitting method for the third layer is as follows: Add a control block. If there is no linkage relationship with other module I / O actuators or ECU target controls, it needs to be split according to the control objects based on the number of its own control targets. If there is a linkage relationship with other actuators or ECU target controls and the logic link is not complex, it can be recombined with the existing module into a module and then split according to the requirements of the second layer. If the control link is complex, it needs to be recombined with the existing module and then split into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and the third-layer modules are allocated according to the module definition of the second layer.
[0098] Optionally, the step of decoupling and partitioning the new function according to the vertically three-layer and horizontally multi-dimensional software architecture further includes:
[0099] In the feature key point layer of the third layer, for the new functions split in the second layer, combine all the target modules after splitting to judge the complexity of the logic link of the new functions;
[0100] If the link interaction is complex, it is recombined with the existing module and then split into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and the third-layer modules are allocated according to the module definition of the second layer.
[0101] The splitting method for the third layer further includes: For the modules split from the second layer to other two-layer modules, it is necessary to combine all the split modules to judge the complexity of their links. If the complexity is high, it needs to be recombined with the split modules and then split into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and then the third-layer modules are allocated according to the definition of the second layer.
[0102] In addition, an embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the decoupling method for the vehicle domain controller function described above are implemented.
[0103] It should be noted that in this article, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or system. Without further limitation, the element defined by the statement "including one..." does not exclude the existence of another identical element in the process, method, article or system including the element.
[0104] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages and disadvantages of the embodiments.
[0105] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-described embodiment methods can be implemented by means of software plus a necessary general hardware platform. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art can be embodied in the form of a software product. This computer software product is stored in a storage medium as described above (such as ROM / RAM, magnetic disk, optical disk), and includes several instructions for causing a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of the present invention.
[0106] The above are only the preferred embodiments of the present invention, and do not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the content of the specification and drawings of the present invention, or directly or indirectly applied in other related technical fields, shall be equally included in the patent protection scope of the present invention.
Claims
1. A vehicle domain controller system, characterized in that, the vehicle domain controller system has a software architecture with three longitudinal layers and multiple horizontal dimensions in each layer, and the vehicle domain controller system includes: The whole-machine function layer of the first layer, in which the functions of the domain controller are divided into two dimensions of basic functions and application functions; The fusion boundary layer of the second layer, in which the functions of the domain controller are divided into three dimensions of ECU, knowledge domain, and responsible team; The feature key layer of the third layer, in which the functions of the domain controller are divided into three dimensions of target control type, target control quantity, and logical link complexity; A main control module, which is used to decouple and divide the new function when a new function is detected to be incorporated, so as to perform adaptive function allocation for the whole-machine function layer of the first layer, the fusion boundary layer of the second layer, and the feature key layer of the third layer; The basic functions include one or more of acquisition, drive, wake-up and sleep, communication, network, update, configuration, storage, and diagnostic repair, and the application functions include one or more of machine start-stop, machine safe entry, machine energy safety, machine energy use, machine energy replenishment, machine work safety, machine damage protection, human-machine interface, machine indication, and machine state adjustment; The ECU includes one or more of VCU, BMS, motor control, body control, and chassis control, and the knowledge domain includes one or more of battery, motor, vehicle electric control, body, intelligent driving, and chassis; The target control type includes drive control of the IO end actuator and / or request control of the ECU. The target control quantity is defined as having fewer control objects for realizing functions when not exceeding a preset first quantity, and having more control objects for realizing functions when exceeding the preset first quantity. The logical link complexity is defined as having a simple link interaction for realizing functions when the number of associated interaction reciprocations does not exceed a preset second quantity, and having a complex link interaction for realizing functions when the number of associated interaction reciprocations exceeds the preset second quantity.
2. A decoupling method for vehicle domain controller functions, characterized in that, the decoupling method for vehicle domain controller functions is applied to the vehicle domain controller system as described in claim 1, and includes the following steps: When a new function is incorporated into the vehicle domain controller system, the new function is decoupled and divided according to the software architecture with three longitudinal layers and multiple horizontal dimensions in each layer.
3. The decoupling method for vehicle domain controller functions as described in claim 2, characterized in that, the step of decoupling and dividing the new function according to the software architecture with three longitudinal layers and multiple horizontal dimensions in each layer includes: In the whole-machine function layer of the first layer, the new function is divided into existing basic functions or application functions; If the new function cannot be divided into existing basic functions or application functions, a module for the new function is added.
4. The decoupling method for vehicle domain controller functions as described in claim 3, characterized in that, the step of decoupling and dividing the new function according to the software architecture with three longitudinal layers and multiple horizontal dimensions in each layer further includes: In the fusion boundary layer of the second layer, determine the association relationship between each dimension of the new function in the second layer and the target module corresponding to the association relationship, split the new function under the target module, and allocate it under the corresponding overall vehicle function of the target module in the first layer.
5. The method for decoupling the functions of a vehicle domain controller according to claim 4, wherein, the step of decoupling and partitioning the new function according to the software architecture with three longitudinal layers and multiple horizontal dimensions for each layer further includes: In the feature key point layer of the third layer, if the new function has no linkage relationship with the IO end actuator of other modules or the control of the ECU, split it according to the target control quantity; If the new function has a linkage relationship with the IO end actuator of other modules or the control of the ECU and the link interaction is not complex, after recombination with the existing module, allocate the third layer module according to the module definition of the second layer; If the new function has a linkage relationship with the IO end actuator of other modules or the control of the ECU and the link interaction is complex, after recombination with the existing module, split it into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and allocate the third layer module according to the module definition of the second layer.
6. The method for decoupling the functions of a vehicle domain controller according to claim 5, wherein, the step of decoupling and partitioning the new function according to the software architecture with three longitudinal layers and multiple horizontal dimensions for each layer further includes: In the feature key point layer of the third layer, for the new function split in the second layer, combine all the target modules after splitting to judge the logical link complexity of the new function; If the link interaction is complex, after recombination with the existing module, split it into multiple modules in four aspects: conditional judgment, calculation, arbitration, and output, and allocate the third layer module according to the module definition of the second layer.
7. A computer-readable storage medium, wherein, a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the method for decoupling the functions of a vehicle domain controller according to any one of claims 2 to 6 are implemented.
Citation Information
Patent Citations
Method, device and system for controlling numerical control systems
CN102566513A
Vehicle network system and component of network
US20060111825A1