Node deployment method, device, apparatus and storage medium

By acquiring the basic components and configuration files of the target service, the target node is automatically generated and deployed, solving the problem of complex application generation and deployment in ROS2 middleware software and realizing a simplified node development process.

CN116028065BActive Publication Date: 2026-02-17GUOKE FOUNDATION STONE (CHONGQING) SOFTWARE CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202211741225.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-30
Publication Date
2026-02-17
Estimated Expiration
2042-12-30

AI Technical Summary

Technical Problem

In ROS2 middleware software, the generation and deployment of automotive industry applications are complex, requiring users to write code manually, which increases the difficulty and complexity of development.

Method used

By acquiring the basic components and configuration files of the target service, the target node is automatically generated and deployed, simplifying the node development process. Users do not need to understand network architecture or write code.

Benefits of technology

It lowers the barrier to node development and simplifies the complexity of service generation and deployment. Users only need to determine the target service and configuration items to complete the node development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116028065B_ABST
    Figure CN116028065B_ABST
Patent Text Reader

Abstract

This disclosure relates to a method, apparatus, device, and storage medium for deploying nodes. The method includes: obtaining a basic component corresponding to a defined target service, a first configuration file, and a second configuration file, wherein the first configuration file is used to configure the communication framework of the target service, and the second configuration file is used to configure the design functions of the target service; determining a first set of configuration items in the first configuration file; determining a second set of configuration items in the second configuration file; generating a target node in a target communication network based on the basic component, the first set of configuration items, and the second set of configuration items; and deploying the target node on a target control unit in a vehicle. According to embodiments of this disclosure, users can complete the generation and deployment of nodes within the network architecture without understanding the network architecture or writing code.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of automotive technology, and more particularly to methods, apparatus, devices, and storage media for deploying nodes. Background Technology

[0002] With the advent of the software-defined vehicles (SDV) trend, SOA (Service-Oriented Architecture) has become the software evolution direction for major automakers. In SOA architecture, middleware software is particularly crucial, serving as the link between upper-layer business services and the underlying communication protocols and operating system (OS).

[0003] Robot Operating System 2 (ROS2) middleware software, which is mature and widely used in the field of intelligent robots, has become a new choice for car manufacturers due to its features such as distributed communication, multi-level abstraction, multi-language support, and rich Analytic Data Set (ADS) algorithm library.

[0004] However, compared to the robotics field, the automotive industry demands more diverse functionalities and higher levels of standardization. Therefore, for the automotive industry, the ROS2 middleware software suffers from an incomplete development toolchain. Specifically, the ROS2 middleware software cannot generate many applications required by the automotive industry and deploy them as nodes within the ROS2 network framework to the vehicle's hardware. Consequently, users must manually input the application code to deploy these applications, significantly increasing the complexity of generating and deploying applications within the ROS2 middleware software's network framework. Summary of the Invention

[0005] To overcome the problems existing in related technologies, this disclosure provides a method, apparatus, device and storage medium for deploying nodes.

[0006] According to a first aspect of the present disclosure, a method for deploying a node is provided, comprising:

[0007] Obtain the basic components, first configuration file, and second configuration file corresponding to the defined target service, wherein the first configuration file is used to configure the communication framework of the target service, and the second configuration file is used to configure the design functions of the target service;

[0008] Determine the first group of configuration items in the first configuration file;

[0009] Determine the second set of configuration items in the second configuration file;

[0010] Generate the target node in the target communication network based on the basic components, the first set of configuration items, and the second set of configuration items;

[0011] The target node is deployed on the target control unit in the vehicle.

[0012] As an optional embodiment, generating the target node in the target communication network based on the basic components, the first set of configuration items, and the second set of configuration items includes:

[0013] The first configuration file is converted into a target format, and the communication framework of the target service is generated using the first set of configuration items in the first configuration file of the target format.

[0014] The second configuration file is parsed, and the application code is generated using the second group of configuration items in the parsed second configuration file.

[0015] The application code is added to the basic components to obtain the software framework of the target service;

[0016] The target node is generated based on the communication framework and the software framework.

[0017] As an optional embodiment, generating the communication framework of the target service using the first set of configuration items in the first configuration file of the target format includes:

[0018] A third configuration item is read from the third configuration file of the target communication network. The third configuration item is a configuration item other than the first set of configuration items in the third configuration file. The third configuration file is an inherent configuration file in the target communication network.

[0019] The first set of configuration items and the third configuration item in the first configuration file of the target format are input into the code generator to generate the communication framework of the target service.

[0020] As an optional embodiment, before deploying the target node on the target control unit in the vehicle, the method further includes:

[0021] Obtain the application scenario of the target service;

[0022] The communication type of the target node in the target communication network is determined based on the application scenario.

[0023] Control the target node to communicate with other nodes in the target communication network through the communication type.

[0024] As an optional embodiment, deploying the target node on a target control unit in the vehicle includes:

[0025] Determine the target hardware for deploying the target node;

[0026] The target node is placed in a preset container;

[0027] The attribute values ​​of the container are determined based on the target hardware;

[0028] The container with the configured attribute values ​​is deployed on the target control unit, which is the control unit of the target hardware.

[0029] As an optional embodiment, determining the first set of configuration items in the first configuration file includes:

[0030] Displays all optional configuration items in the first configuration file;

[0031] If a selection operation is detected, the optional configuration item targeted by the selection operation is determined to be the first group of configuration items.

[0032] According to a second aspect of the present disclosure, a node deployment apparatus is provided, comprising:

[0033] The acquisition module is used to acquire the basic components, first configuration file and second configuration file corresponding to the defined target service, wherein the first configuration file is used to configure the communication framework of the target service and the second configuration file is used to configure the design functions of the target service.

[0034] The first determining module is used to determine the first group of configuration items in the first configuration file;

[0035] The second determining module is used to determine the second set of configuration items in the second configuration file;

[0036] A generation module is used to generate target nodes in the target communication network based on the basic components, the first set of configuration items, and the second set of configuration items.

[0037] The deployment module is used to deploy the target node on the target control unit in the vehicle.

[0038] According to a third aspect of the present disclosure, a computer program product is provided that stores a set of instructions, which are executed by the computer program product to implement the node deployment method provided by the node deployment aspect of the present disclosure.

[0039] According to a fourth aspect of the present disclosure, an electronic device is provided, comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement a node deployment method provided by the node deployment aspect of the present disclosure.

[0040] According to a fifth aspect of the present disclosure, a computer-readable storage medium is provided that stores computer program instructions thereon, which, when executed by a processor, implement the steps of the node deployment method provided by the node deployment aspect of the present disclosure.

[0041] The technical solutions provided by the embodiments of this disclosure can include the following beneficial effects: by obtaining the configuration file and basic components of each service within the network framework, and configuring the service in the configuration file, logic code can be automatically generated based on the configured configuration file and basic components, and a target service can be generated. The target service is a node in the target communication network, and this node can also be automatically deployed to the control unit of the vehicle hardware. Compared with the prior art, where users need to actively write programs, this disclosure does not require users to understand the network architecture or have coding experience. As long as users can determine the desired target service and configure the configuration items, they can complete the node development. This greatly reduces the threshold for node development and simplifies the complexity of generating and deploying services.

[0042] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description

[0043] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.

[0044] Figure 1 This is a flowchart illustrating a node deployment method according to an exemplary embodiment.

[0045] Figure 2 This is a flowchart illustrating a method for deploying a node according to another exemplary embodiment.

[0046] Figure 3 This is a flowchart illustrating a method for deploying a node according to yet another exemplary embodiment.

[0047] Figure 4 This is a flowchart illustrating a method for deploying a node according to yet another exemplary embodiment.

[0048] Figure 5 This is a flowchart illustrating a node deployment method according to another exemplary embodiment.

[0049] Figure 6 This is a block diagram illustrating a node deployment apparatus according to an exemplary embodiment.

[0050] Figure 7 This is a block diagram illustrating an electronic device according to an exemplary embodiment. Detailed Implementation

[0051] The exemplary embodiments will now be described in detail with reference to the accompanying drawings.

[0052] It should be noted that the relevant embodiments and accompanying drawings are only for describing and illustrating exemplary embodiments provided by this disclosure, and not all embodiments of this disclosure, nor should this disclosure be understood to be limited to the relevant exemplary embodiments.

[0053] It should be noted that the terms "first," "second," etc., used in this disclosure are only used to distinguish different steps, devices, or modules. These terms do not represent any specific technical meaning, nor do they indicate any order or interdependence between them.

[0054] It should be noted that the terms “a,” “a plurality of,” and “at least one” used in this disclosure are illustrative rather than restrictive. Unless otherwise expressly indicated in the context, they should be understood as “one or more.”

[0055] It should be noted that the term "and / or" used in this disclosure is used to describe the relationship between related objects, and generally indicates that there are at least three relationships. For example, A and / or B can at least indicate: the existence of A alone, the existence of both A and B, and the existence of B alone.

[0056] It should be noted that the various steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Unless otherwise specified, the scope of this disclosure is not limited by the order in which the steps are described in the relevant embodiments.

[0057] It should be noted that all actions involving the acquisition of signals, information, or data in this disclosure are carried out in compliance with the relevant data protection laws and policies of the country where the location is situated, and with authorization from the owner of the relevant device.

[0058] Exemplary methods

[0059] Figure 1 This is a flowchart illustrating a node deployment method according to an exemplary embodiment, such as... Figure 1 As shown, the node deployment method is used in node deployment and includes the following steps.

[0060] In step S110, the corresponding basic components, first configuration file and second configuration file of the defined target service are obtained, wherein the first configuration file is used to configure the communication framework of the target service and the second configuration file is used to configure the design functions of the target service.

[0061] In this embodiment, the basic component refers to the basic code of the user-defined target service. The first configuration file includes the configuration content of the communication framework of the target service, and the second configuration file includes the configuration content of the design functions of the target service.

[0062] This embodiment provides a code generation tool within a preset framework. Users can define each target service within this framework, specify the code generation rules for that target service, and design configuration options in the first and second configuration files to obtain code generation parameters. By inputting these parameters into the code generator, the basic code corresponding to the target service can be generated.

[0063] In one embodiment, the target service can be a health management module. The code generation process for the health management module is as follows: First, the user defines the constant and incremental attributes of the health management module, such as defining the timeout period. After defining the constant and incremental attributes, the user further defines the service interface of the health management module and binds the service interface to the communication protocol. The user then configures the network and hardware environment for the health management module application. The basic code corresponding to the target service can then be generated.

[0064] In step S120, the first set of configuration items in the first configuration file is determined.

[0065] In this embodiment, the first configuration file is a configuration file for the communication layer under the framework, which includes multiple communication-related configuration items. Users can determine the required configuration items in the first configuration file, and the first group of configuration items is the configuration items determined by the user.

[0066] For example, the configuration items in the first configuration file may include: discovery behavior, network / discovery configuration, multi-participant merging, data path configuration, network partition configuration, thread configuration, and tracing configuration.

[0067] The discovery behavior can include agent information at the communication layer, information that can be shared, network interface information, quality of service information, startup mode of the communication network, startup duration, and latency of deleting configuration items in the communication network.

[0068] Network configuration can include the default configuration of the communication network, loopback, priority, unicast / multicast and other multi-port configurations, configuration of whether to use network partition addresses and interfaces, application status configuration of multicast ports and unicast ports, communication configuration of wide area networks, related configurations for adapting to secure transport layer protocols, and related configurations for adapting to raw Ethernet interfaces.

[0069] In addition, under the multicast port, it is also necessary to configure data communication, participants, and which interfaces listen for multicast.

[0070] Discovery configurations can include configurations for discovery addresses, configurations that enable asymmetric discovery of communication networks, configurations for packet timing in communication networks, configurations for time intervals between packets in communication networks, and configurations for ignoring network partitions during endpoint discovery.

[0071] The configuration for multi-participant merging includes configurations that enable the communication network to perform participant merging.

[0072] Data path configuration includes retransmission merging configuration, retransmission backlog configuration, control fragment configuration, receive processing configuration, minimum receive latency configuration, and maximum payload configuration.

[0073] The retransmission merging configuration includes configuring whether retransmission requests and normal requests are merged. If retransmission requests and normal requests are determined to be merged, the merging time window is further configured. The retransmission backlog configuration includes configuring the number of retransmission queue samples and the number of bytes. The fragmentation control configuration includes configuring the size of the data sample segments. The receive processing configuration includes configuring the queue size between the receive thread and the transmit thread.

[0074] Network partition configuration includes configuring the number of network partitions and configuring network partition setting rules.

[0075] Thread configuration includes configuring the thread name, stack size, and scheduling priority among threads.

[0076] The tracing configuration includes configuring the contents of the file that needs to be written to the tracing entries. Specifically, the file should be configured to include all fatal errors that would cause the program to terminate immediately, errors that might affect correctness but would not cause the program to terminate immediately, and other exceptional conditions that would not affect the program's correctness.

[0077] In addition, the tracking configuration includes a complete dump of the configuration, notification of general information, configuration of all discovery activities, configuration of the data content of the sample included in the tracking, configuration of periodic reporting of the CPU load of each thread, configuration of periodic reporting of total outgoing data, configuration of connections supported by the Transmission Control Protocol, connection cache management, configuration of detailed information on topic explanations, configuration of the dumping method of the parameter list, and configuration of buffer management.

[0078] In step S130, the second set of configuration items in the second configuration file is determined.

[0079] In this embodiment, the second configuration file is a configuration file defined within the target service, and the configuration items in the second configuration file are used to support the operation of the target service. The second set of configuration items are the configuration items determined in the second configuration file.

[0080] For example, when the target service is the health management module, if it detects that a project is not executing according to the preset logic, it can read the configuration items in the second configuration file and handle that project. These configuration items can be "restart the project" or "ignore the project".

[0081] In step S140, a target node in the target communication network is generated based on the basic components, the first set of configuration items, and the second set of configuration items.

[0082] In this embodiment, after determining the basic components, the first configuration file, and the second configuration file of the target service, the basic components, the first configuration file, and the second configuration file can be combined to automatically generate the code corresponding to the target service, that is, generate the target service. Then, the target service can be set as a target node in the target communication network, so that the target node can rely on the communication framework of the target communication network to communicate with other nodes.

[0083] In step S150, the target node is deployed on the target control unit in the vehicle.

[0084] In this embodiment, the target node needs to be deployed on a control unit of the vehicle's hardware to enable the target node to perform actions on the vehicle's hardware. For example, a sub-communication network in which the target node operates can be first determined, and this sub-communication network may include at least one control unit. Then, the target control unit to which the target node is to be deployed is further determined, and the deployment of the target node is completed. This target control unit can be any control unit within the sub-communication network.

[0085] This disclosure obtains the configuration file and basic components of each service within the network framework, configures the service in the configuration file, and then automatically generates logic code and the target service based on the configured configuration file and basic components. The target service is a node in the target communication network, which can also be automatically deployed to the control unit of the vehicle hardware. Compared with the prior art, which requires users to actively write programs, this disclosure does not require users to understand the network architecture or have coding experience. As long as users can determine the desired target service and configure the configuration items, they can complete the node development. This greatly reduces the threshold for node development and simplifies the complexity of generating and deploying services.

[0086] As an optional embodiment, such as Figure 2 As shown, the above-mentioned S140 may further include:

[0087] In step S210, the first configuration file is converted into a target format, and the communication framework of the target service is generated using the first set of configuration items in the first configuration file of the target format.

[0088] In this embodiment, the first configuration file includes multiple configuration items. Users can select the first set of required configuration items in the first configuration file through a visual interface associated with the first configuration file. In this way, users can complete the configuration of the communication framework by adjusting the first configuration file.

[0089] Furthermore, since this disclosure runs under the network framework of the preset ROS2 middleware software, the first configuration file is in XML format. Only by converting the first configuration file in XML format to XSD format can the first configuration file generate the communication framework code under the ROS2 system through the pre-set code generator, thereby generating the communication framework of the target service.

[0090] Since the communication framework is generated based on the first configuration file configured with the first set of configuration items, the communication framework conforms to the first set of configuration items configured by the user.

[0091] In step S220, the second configuration file is parsed, and application code is generated using the second group of configuration items in the parsed second configuration file;

[0092] In this embodiment, the second configuration file includes multiple configuration items. Users can select the required second set of configuration items in the second configuration file through a visual interface associated with the second configuration file, and adjust the second configuration file accordingly.

[0093] Subsequently, the adjusted second configuration file can be parsed, and the application code can be generated using the second set of configuration items in the parsed second configuration file. The application code includes the attributes determined by the user in the second set of configuration items.

[0094] In step S230, the application code is added to the basic components to obtain the software framework of the target service;

[0095] In this embodiment, the basic components are the header file and logic code corresponding to the user's target service. The application code corresponding to the second set of configuration items can be added to the header file and logic code corresponding to the basic components, thus generating the software framework of the target service.

[0096] In step S240, the target node is generated according to the communication framework and the software framework.

[0097] In this embodiment, after the communication framework code and software framework code of the target service are generated, the communication framework code and software framework code can be combined to generate the target service required by the user. The target service is then deployed to the communication network to obtain the target node in the communication network.

[0098] As an optional embodiment, such as Figure 3 As shown, generating the communication framework for the target service using the first set of configuration items in the first configuration file of the target format includes:

[0099] In step S310, a third configuration item is read from the third configuration file of the target communication network. The third configuration item is a configuration item other than the first set of configuration items in the third configuration file. The third configuration file is a configuration file inherent in the target communication network.

[0100] In this embodiment, since this application relies on the existing ROS2 system, and the ROS2 system has platform-level default configuration items, namely the configuration items in the third configuration file. The first set of configuration items is obtained by the user through custom configuration of the first configuration file in the visual interface. During the generation of the communication framework, the first set of configuration items in the first configuration file configured by the user in the visual interface is read first.

[0101] The first group of configuration items overrides the same category of configuration items in the third configuration file. Only if there are unconfigured configuration items outside the first group can these unconfigured items be configured according to the default configuration method in the third configuration file. In other words, the first group of configuration items has higher priority than the configuration items in the system's default third configuration file.

[0102] In step S320, the first set of configuration items and the third configuration item in the first configuration file of the target format are input into the code generator to generate the communication framework of the target service.

[0103] In this embodiment, the ROS2 system has a pre-set code generator that can convert the first set of configuration items configured by the user and the default third configuration item into the target format, which can be the xsd format. Then, the first set of configuration items and the third configuration item in the target format are input into the code generator, and the communication framework code of the target service will be automatically generated, thus obtaining the required communication framework.

[0104] As an optional embodiment, such as Figure 4 As shown, before deploying the target node on the target control unit in the vehicle, the method further includes:

[0105] In step S410, the application scenario of the target service is obtained;

[0106] In step S420, the communication type of the target node in the target communication network is determined according to the application scenario;

[0107] In this embodiment, after the logic in the target service is generated, it is necessary to further determine the communication type of the target service as a target node in the target communication network. For example, the communication type of the target node includes at least the following three types: Service / Client, Pub / Sub, and Action.

[0108] Specifically, the toolchain provides different types of communication models based on the customized ROS2 framework. Each communication model corresponds to a communication type, and the configuration items provided for each communication type are also different. The target node will select different communication models, i.e., determine different communication types, according to its application scenario.

[0109] In step S430, the target node is controlled to communicate with other nodes in the target communication network through the communication type.

[0110] In this embodiment, after determining the communication type of each target node, the selected communication type can be used to control the target node to communicate with other nodes in the target communication network.

[0111] As an optional embodiment, such as Figure 5 As shown, deploying the target node on the target control unit in the vehicle includes:

[0112] In step S510, the target hardware for deploying the target node is determined;

[0113] In this embodiment, the target node needs to be deployed on the target hardware in the vehicle. Since the deployment of the target node can be cross-electronic control unit (ECU), the same target node can actually be deployed in multiple ECUs under the same sub-communication network. However, for adaptation, when deployed to different ECUs under the sub-communication network, the attributes of the target node need to be adjusted according to the different ECUs.

[0114] In step S520, the target node is placed in a preset container;

[0115] In step S530, the attribute values ​​of the container are determined based on the target hardware;

[0116] In step S540, the container with the configured attribute value is deployed on the target control unit, which is the control unit of the target hardware.

[0117] In this embodiment, the target node can be deployed using a containerized approach. Specifically, the basic components of the target node can be installed in a pre-defined container. Then, to adapt to the target hardware to be deployed, the container's attributes are adjusted, and a corresponding configuration file is provided for the container to facilitate the deployment of the target hardware. Subsequently, the container with the configured attribute values ​​can be deployed on the target control unit of the target hardware, thus completing the deployment of the target node.

[0118] As an optional embodiment, determining the first set of configuration items in the first configuration file includes:

[0119] Displays all optional configuration items in the first configuration file;

[0120] If a selection operation is detected, the optional configuration item targeted by the selection operation is determined to be the first group of configuration items.

[0121] In this embodiment, a visualization tool can be provided, which is associated with the first configuration file. This visualization tool can display all optional configuration items in the first configuration file, and the user can select these optional configuration items. Whenever a user selection operation on an optional configuration item is detected, that optional configuration item can be identified as the first group of configuration items.

[0122] For example, users can select the DDS protocol stack version or the hardware mapping type on the visual tool.

[0123] Exemplary device

[0124] Figure 6This is a block diagram of a node deployment apparatus 600 according to an exemplary embodiment. (Refer to...) Figure 6 The device 600 includes an acquisition module 610, a first determination module 620, a second determination module 630, a generation module 640, and a deployment module 650.

[0125] The acquisition module 610 is used to acquire the basic components, first configuration file and second configuration file corresponding to the defined target service, wherein the first configuration file is used to configure the communication framework of the target service and the second configuration file is used to configure the design functions of the target service.

[0126] The first determining module 620 is used to determine the first set of configuration items in the first configuration file;

[0127] The second determining module 630 is used to determine the second set of configuration items in the second configuration file;

[0128] The generation module 640 is used to generate target nodes in the target communication network based on the basic components, the first set of configuration items and the second set of configuration items.

[0129] The deployment module 650 is used to deploy the target node on a target control unit in a vehicle.

[0130] As an optional embodiment, the generation module 640 is further configured to:

[0131] The first configuration file is converted into a target format, and the communication framework of the target service is generated using the first set of configuration items in the first configuration file of the target format.

[0132] The second configuration file is parsed, and the application code is generated using the second group of configuration items in the parsed second configuration file.

[0133] The application code is added to the basic components to obtain the software framework of the target service;

[0134] The target node is generated based on the communication framework and the software framework.

[0135] As an optional embodiment, the generation module 640 is further configured to:

[0136] A third configuration item is read from the third configuration file of the target communication network. The third configuration item is a configuration item other than the first set of configuration items in the third configuration file. The third configuration file is an inherent configuration file in the target communication network.

[0137] The first set of configuration items and the third configuration item in the first configuration file of the target format are input into the code generator to generate the communication framework of the target service.

[0138] As an optional embodiment, the deployment device 600 for the above-mentioned nodes is further configured to:

[0139] Obtain the application scenario of the target service;

[0140] The communication type of the target node in the target communication network is determined based on the application scenario.

[0141] Control the target node to communicate with other nodes in the target communication network through the communication type.

[0142] As an optional embodiment, the deployment module 650 is further configured to:

[0143] Determine the target hardware for deploying the target node;

[0144] The target node is placed in a preset container;

[0145] The attribute values ​​of the container are determined based on the target hardware;

[0146] The container with the configured attribute values ​​is deployed on the target control unit, which is the control unit of the target hardware.

[0147] As an optional embodiment, the first determining module 620 described above is further configured to:

[0148] Displays all optional configuration items in the first configuration file;

[0149] If a selection operation is detected, the optional configuration item targeted by the selection operation is determined to be the first group of configuration items.

[0150] The node deployment device provided in this embodiment of the invention can implement the steps in the above method embodiments, and will not be repeated here to avoid repetition.

[0151] Exemplary electronic devices

[0152] Figure 7 This is a block diagram illustrating an electronic device 700 according to an exemplary embodiment. The electronic device 700 may be a vehicle controller, an in-vehicle terminal, an in-vehicle computer, or other types of electronic devices.

[0153] Reference Figure 7The electronic device 700 may include at least one processor 710 and a memory 720. The processor 710 can execute instructions stored in the memory 720. The processor 710 is communicatively connected to the memory 720 via a data bus. In addition to the memory 720, the processor 710 can also be communicatively connected to an input device 730, an output device 740, and a communication device 350 via the data bus.

[0154] The processor 710 can be any conventional processor, such as a commercially available CPU. The processor may also include, for example, a Graphics Processing Unit (GPU), a Field Programmable Gate Array (FPGA), a System-on-Chip (SOC), an Application-Specific Integrated Circuit (ASIC), or a combination thereof.

[0155] The memory 720 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.

[0156] In this embodiment of the present disclosure, the memory 720 stores executable instructions, and the processor 710 can read the executable instructions from the memory 720 and execute the instructions to implement all or part of the steps of the node deployment method described in any of the exemplary embodiments above.

[0157] Exemplary computer-readable storage media

[0158] In addition to the methods and apparatus described above, exemplary embodiments of this disclosure may also be a computer program product or a computer-readable storage medium storing the computer program product. The computer product includes computer program instructions that can be executed by a processor to perform all or part of the steps described in any of the methods in the exemplary embodiments described above.

[0159] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. These programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages, and scripting languages ​​(e.g., Python). The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0160] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media include: static random access memory (SRAM) having one or more electrically connected wires, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk, or any suitable combination thereof.

[0161] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of this disclosure. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure 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 disclosure are indicated by the following claims.

[0162] It should be understood that this disclosure is not limited to the precise structures 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 disclosure is limited only by the appended claims.

Claims

1. A method of deploying a node, characterized by, The method comprises: acquiring corresponding basic components, a first configuration file and a second configuration file of a defined target service, wherein the first configuration file is used for configuring a communication framework of the target service, and the second configuration file is used for configuring a design function of the target service; determining a first group of configuration items in the first configuration file, wherein the first group of configuration items comprises a discovery behavior, a network configuration, a discovery configuration, a multi-participant merge configuration, a data path configuration, a network partition configuration, a thread configuration and a tracking configuration; determining a second group of configuration items in the second configuration file; generating a target node in a target communication network according to the basic components, the first group of configuration items and the second group of configuration items; deploying the target node on a target control unit in a vehicle; the generating of the target node in the target communication network according to the basic components, the first group of configuration items and the second group of configuration items comprises: converting the first configuration file into a target format, and generating the communication framework of the target service by using the first group of configuration items in the first configuration file in the target format; parsing the second configuration file, and generating application code by using the second group of configuration items in the parsed second configuration file; adding the application code into the basic components to obtain a software framework of the target service; generating the target node according to the communication framework and the software framework.

2. The method of claim 1, wherein, the generating of the communication framework of the target service by using the first group of configuration items in the first configuration file in the target format comprises: reading a third configuration item in a third configuration file of the target communication network, the third configuration item being a configuration item other than the first group of configuration items in the third configuration file, and the third configuration file being a configuration file inherent in the target communication network; inputting the first group of configuration items in the first configuration file in the target format and the third configuration item into a code generator to generate the communication framework of the target service.

3. The method of claim 1, wherein, before the deploying of the target node on the target control unit in the vehicle, the method further comprises: acquiring an application scenario of the target service; determining a communication type of the target node in the target communication network according to the application scenario; controlling the target node to communicate with other nodes in the target communication network through the communication type.

4. The method of claim 1, wherein, the deploying of the target node on the target control unit in the vehicle comprises: determining a target hardware for deploying the target node; setting the target node in a preset container; determining an attribute value of the container according to the target hardware; deploying the container after the configuration of the attribute value on the target control unit, the target control unit being a control unit of the target hardware.

5. The method of claim 1, wherein, the determining of the first group of configuration items in the first configuration file comprises: displaying all optional configuration items in the first configuration file; in a case where a selection operation is detected, determining the optional configuration item targeted by the selection operation as the first group of configuration items.

6. The method of deploying nodes of claim 1, wherein, the multi-participant merge configuration comprises a configuration for causing a communication network to perform participant merge. The data path configuration comprises configuration of retransmission merging, configuration of retransmission backlog, configuration of control fragmentation, configuration of reception processing, configuration of minimizing reception delay, and configuration of maximum payload; wherein the configuration of retransmission merging comprises configuration of whether to merge retransmission requests with normal requests, and if the retransmission requests are determined to be merged with the normal requests, configuration of a time window of the merging; the configuration of retransmission backlog is configuration of a number of retransmission queue samples and a number of bytes; the configuration of control fragmentation is configuration of a size of data sample segmentation; the configuration of reception processing comprises configuration of a queue size between a reception thread and a delivery thread; The network partition configuration comprises configuration of a number of network partitions and configuration of network partition setting rules; The thread configuration comprises configuration of thread names, configuration of stack sizes, and configuration of scheduling priorities between threads.

7. The method of claim 1, wherein, The base component is a base code, and in a case where the target service is a health management module, the corresponding base component of the defined target service comprises: defining constant attributes and incremental attributes of the health management module; defining a service interface of the health management module; binding the service interface to a communication protocol; configuring a network environment and a hardware environment applied by the health management module, and generating a base code corresponding to the target service.

8. The method of claim 1, wherein, In a case where the target service is a health management module, the second group of configuration items in the second configuration file comprises: when it is detected that there is a project that does not execute according to a preset logic, reading a second group of configuration items in the second configuration file, the second group of configuration items being to restart the project or ignore the project.

9. A deployment apparatus of a node, characterized by, comprise: an acquisition module, configured to acquire a corresponding base component of a defined target service, a first configuration file, and a second configuration file, wherein the first configuration file is used to configure a communication framework of the target service, and the second configuration file is used to configure a design function of the target service; a first determination module, configured to determine a first group of configuration items in the first configuration file, wherein the first group of configuration items comprises a discovery behavior, network configuration, discovery configuration, multi-participant merging configuration, data path configuration, network partition configuration, thread configuration, and tracking configuration; a second determination module, configured to determine a second group of configuration items in the second configuration file; a generation module, configured to generate a target node in a target communication network according to the base component, the first group of configuration items, and the second group of configuration items, and the generation of the target node in the target communication network according to the base component, the first group of configuration items, and the second group of configuration items comprises: converting the first configuration file into a target format, and generating a communication framework of the target service by using the first group of configuration items in the first configuration file in the target format; parsing the second configuration file, and generating application code by using the second group of configuration items in the parsed second configuration file; adding the application code into the base component to obtain a software framework of the target service; generating the target node according to the communication framework and the software framework. a deployment module for deploying the target node on a target control unit in a vehicle.

10. An electronic device, comprising: comprising: a processor; a memory for storing processor-executable instructions; the processor for reading the executable instructions from the memory and executing the instructions to implement the method of deploying a node according to any of claims 1-8.

11. A computer-readable storage medium having stored thereon computer program instructions, wherein, the program instructions, when executed by a processor, implement the steps of the method of deploying a node according to any of claims 1-8.

Citation Information

Patent Citations

  • Data processing method and apparatus for implementing reconfiguration of automobile communication gateway software

    CN102811232A

  • Vehicle-mounted gateway controller, development method and device and computer readable storage medium

    CN111966362A

  • Operation framework design method of functional software and readable storage medium

    CN114546346A