Vehicle configuration method, device, vehicle and storage medium
By obtaining and comparing the configuration information to be configured in the vehicle MCU and updating the configuration information, the high R&D and production costs caused by hardware replacement in the prior art are solved, and the timely meeting and cost reduction of users' differentiated configuration needs are achieved.
Patent Information
- Application Number
- CN202411807315.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-10
- Publication Date
- 2025-04-08
AI Technical Summary
In the existing smart cockpit technology, differentiating models of different configurations by replacing hardware leads to an increase in R&D and production costs, and it is impossible to meet users' configuration needs for vehicle functions in a timely manner.
By obtaining the configuration information to be configured in the vehicle MCU, comparing it with the original configuration information stored in the target storage unit, updating the configuration information to achieve differentiated configuration, receiving configuration requests from the architecture application and calling the target configuration information for vehicle configuration.
It realizes users' differentiated configuration of the same vehicle model, reduces the workload and cost of automobile research and development, and can meet users' vehicle configuration needs in a timely manner without adding additional configuration costs.
Smart Images

Figure CN119781840A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the technical field of smart cockpits, and in particular to a vehicle configuration method, device, vehicle, and storage medium. Background Art
[0002] With the progress of society, cars are becoming more and more intelligent, and consumers are becoming more and more demanding on the functions and performance of cars. In order to meet the needs of different consumers, car manufacturers need to produce the same model with multiple configurations. This has led to an increase in the workload and cost of car research and development. In the field of smart cockpit technology, the most common practice is to distinguish models with different configurations by replacing different hardware. However, this method will significantly increase the cost of research and development and production, and if the hardware conditions allow, if the user wants to configure certain functions of the vehicle, it is often unable to meet the user's needs in a timely manner, and will also lead to additional configuration costs. Summary of the invention
[0003] In view of the above problems, embodiments of the present invention provide a vehicle configuration method, device, vehicle and storage medium.
[0004] According to one aspect of an embodiment of the present invention, a vehicle configuration method is provided, the method comprising: obtaining information to be configured written in a vehicle computer MCU, the information to be configured being used to characterize the software and hardware configuration corresponding to the current vehicle; comparing the information to be configured with original configuration information stored in a target storage unit to obtain a configuration comparison result; when the configuration comparison result indicates that the information to be configured is different from the original configuration information, updating the original configuration information based on the information to be configured to obtain target configuration information; when a vehicle configuration request initiated by a first architecture application for the target configuration information is received, calling the target configuration information from the target storage unit, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
[0005] In an optional implementation, obtaining the to-be-configured information written in the vehicle computer MCU includes:
[0006] Create a data acquisition service to obtain the configuration information written in the vehicle MCU;
[0007] Create a data receiving service that communicates with the data acquisition service to receive the configuration information uploaded by the data acquisition service;
[0008] Create a data reading process that communicates with the data receiving service through the resource manager;
[0009] Based on the data reading process, the to-be-configured information received by the data receiving service is read.
[0010] In an optional implementation, comparing the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result includes:
[0011] Create a data checking thread that communicates with the data reading process;
[0012] Based on the data checking thread, the information to be configured is compared with the original configuration information stored in the target storage unit to obtain a configuration comparison result.
[0013] In an optional implementation, when the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information, including:
[0014] Obtain the character string in the original configuration information that is different from the to-be-configured information, and obtain the to-be-updated character string;
[0015] Identify original position information of the string to be updated in the original configuration information, and determine the string to be written that matches the original position information in the configuration information;
[0016] The character string to be updated is updated based on the character string to be written, so as to update the original configuration information and obtain the target configuration information.
[0017] In an optional implementation, when a vehicle configuration request initiated by the first architecture application for the target configuration information is received, the target configuration information is called from the target storage unit so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information, including:
[0018] Creating a first application calling interface based on the data reading process;
[0019] Receiving a vehicle configuration request initiated by a first architecture application through a first application calling interface;
[0020] The target configuration information is loaded into the first architecture application based on the vehicle configuration request, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
[0021] In an optional implementation, when it is necessary to configure the current vehicle based on the second architecture application, the method includes:
[0022] Create an application writing process that communicates with the data reading process through the resource manager;
[0023] Creating an application reading process that communicates with the application writing process, the application reading process communicating with the second architecture application through the second application calling interface;
[0024] When a vehicle configuration request initiated by the second architecture application for the target configuration information is received, the target configuration information called from the target storage unit by the application writing process is read based on the application reading process, so that the second architecture application configures the current vehicle based on the target configuration information.
[0025] In an optional implementation, the target configuration information is stored in a non-volatile storage area of the target storage unit. When the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated to obtain the target configuration information. The method further includes:
[0026] Restarting the vehicle operating system of the current vehicle, and copying the target configuration information to the volatile storage area of the target storage unit during the restart of the vehicle operating system;
[0027] When a vehicle configuration request initiated by the first architecture application and / or the second architecture application for target configuration information is received, the target configuration information is called from the volatile storage area.
[0028] According to another aspect of an embodiment of the present invention, a vehicle configuration device is provided, including: an information acquisition module, used to acquire information to be configured written in the vehicle computer MCU, the information to be configured is used to characterize the software and hardware configuration corresponding to the current vehicle; an information comparison module, used to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; an information update module, used to update the original configuration information based on the information to be configured to obtain the target configuration information when the configuration comparison result indicates that the information to be configured is different from the original configuration information; and a vehicle configuration module, used to call the target configuration information from the target storage unit when receiving a vehicle configuration request initiated by a first architecture application for the target configuration information, so that the first architecture application configures the current vehicle based on the target configuration information.
[0029] According to another aspect of an embodiment of the present invention, a vehicle is provided, comprising: a processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface communicate with each other via the communication bus; the memory is used to store at least one executable instruction, and the executable instruction enables the processor to execute the operation of one of the aforementioned vehicle configuration methods.
[0030] According to another aspect of an embodiment of the present invention, a computer-readable storage medium is provided, in which at least one executable instruction is stored, and the executable instruction enables a vehicle / device to perform the operation of the aforementioned vehicle configuration method.
[0031] The technical solution provided by the embodiment of the present invention obtains the information to be configured written in the vehicle MCU to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; when the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information; when a vehicle configuration request initiated by the first architecture application for the target configuration information is received, the target configuration information is called from the target storage unit, so that the first architecture application configures the current vehicle based on the target configuration information, thereby realizing differentiated configuration of the same vehicle model by users, reducing the workload and cost of automobile research and development, and being able to meet the user's vehicle configuration requirements in a timely manner without additionally increasing the configuration cost when hardware conditions permit.
[0032] The above description is only an overview of the technical solution of the embodiment of the present invention. In order to more clearly understand the technical means of the embodiment of the present invention, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the embodiment of the present invention more obvious and easy to understand, the specific implementation methods of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] The accompanying drawings are only used to illustrate the embodiments and are not to be considered as limiting the present invention. In addition, the same reference symbols are used to represent the same components throughout the accompanying drawings. In the accompanying drawings:
[0034] Figure 1 A schematic flow chart of a vehicle configuration method provided by the present invention is shown;
[0035] Figure 2 A schematic diagram of a vehicle configuration method provided by the present invention is shown;
[0036] Figure 3 Another schematic diagram of a vehicle configuration method provided by the present invention is shown;
[0037] Figure 4 A schematic diagram of updating configuration information in a vehicle configuration method provided by the present invention is shown;
[0038] Figure 5 A schematic structural diagram of a vehicle configuration device provided by the present invention is shown;
[0039] Figure 6 A structural schematic diagram of a vehicle provided by the present invention is shown. DETAILED DESCRIPTION
[0040] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0041] Figure 1 The flowchart of the first embodiment of a vehicle configuration method of the present invention is shown, which is applicable to a vehicle, which includes a smart cockpit host SOC, a vehicle MCU, and a target storage unit. The smart cockpit host SOC includes a Qualcomm 8155 chip, an 8295 chip, and other processing chips that support the vehicle operating system. Figure 1 As shown, the method comprises the following steps:
[0042] Step 110, obtaining the configuration information written into the vehicle MCU.
[0043] Among them, the above-mentioned information to be configured is used to characterize the software and hardware configuration corresponding to the current vehicle. The information to be configured usually includes the vehicle's hardware version number, software version number, firmware version number, and specific configuration parameters. This information is crucial for the vehicle operating system because it determines how the operating system interacts with the vehicle's hardware and how to optimize software functions based on the vehicle's specific configuration. In addition, the above-mentioned information to be configured can be written by the user based on the MCU configuration tool. Throughout the life cycle of the vehicle, this configuration information may be updated based on the vehicle's usage and upgrade requirements. For example, when the vehicle's hardware or software changes, the corresponding configuration information needs to be updated to ensure that the vehicle operating system can correctly identify and adapt to these changes.
[0044] In an optional manner, when obtaining the information to be configured written in the vehicle MCU, a data acquisition service can be created to obtain the information to be configured written in the vehicle MCU; a data receiving service that communicates with the data acquisition service is created to receive the information to be configured uploaded by the data acquisition service; a data reading process is created to communicate with the data receiving service through a resource manager; and based on the data reading process, the information to be configured received by the data receiving service is read.
[0045] For example, when the above-mentioned vehicle operating system is a QNX system, and the current vehicle needs to be configured based on the first architecture application running on the QNX system, the information to be configured can be written into the above-mentioned vehicle MCU through the MCU configuration tool, and a data acquisition service drop_server is created on the QNX system side to communicate with the vehicle MCU to obtain the information to be configured written in the vehicle MCU. Subsequently, a data receiving service ecu_config_utility is created on the QNX system side for communicating with the data acquisition service drop_server to receive the information to be configured uploaded by the data acquisition service drop_server. Then, a data reading process ecu_config is created on the QNX system side. The process creates a resource manager resource manager based on the functional characteristics of the QNX system, which can implement functions such as read, write, Devtrl, and provide an operation interface for the process. Finally, the data receiving service ecu_config_utility writes the received information to be configured to the data reading process ecu_config by calling the resource manager resource manager provided by the data reading process ecu_config.
[0046] Step 120 , compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result.
[0047] As described above, by comparing the information to be configured with the original configuration information stored in the target storage unit, it is determined whether to update the original configuration information stored in the target storage unit based on the configuration comparison result.
[0048] In an optional manner, when the information to be configured is compared with the original configuration information stored in the target storage unit and the configuration comparison result is obtained, a data check thread that communicates with the data reading process can be first created; based on the data check thread, the information to be configured is compared with the original configuration information stored in the target storage unit to obtain the configuration comparison result.
[0049] For example, after the data reading process ecu_config creates the resource manager resourcemanager, a data checking thread data_check may be created to check whether the information to be configured uploaded by the data receiving service ecu_config_utility is consistent with the original configuration information stored in the target storage unit.
[0050] In an optional manner, the information to be configured is compared with the original configuration information stored in the target storage unit, and when the configuration comparison result is obtained, the first operation result corresponding to the original configuration information can also be obtained; a hash operation is performed on the content limited by the information to be configured to obtain a second hash result, and the second hash result is compared with the first hash result; if the second hash result is different from the first hash result, it is determined that the configuration comparison result represents that the content of the original configuration information and the information to be configured is different; if the second hash result is the same as the first hash result, it is determined that the configuration comparison result represents that the content of the original configuration information and the information to be configured is the same.
[0051] Step 130: When the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information.
[0052] In an optional manner, when the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information, and a character string in the original configuration information that is different from the information to be configured can be obtained to obtain the character string to be updated; the original position information of the character string to be updated in the original configuration information is identified, and a character string to be written that matches the original position information is determined in the information to be configured; and the character string to be updated is updated based on the character string to be written to update the original configuration information to obtain the target configuration information.
[0053] During the update process, in order to ensure the consistency and accuracy of data, a transaction processing mechanism can be used. First, the difference between the information to be configured and the original configuration information is analyzed to generate an update plan. Then, according to the update plan, the strings to be updated in the original configuration information are replaced one by one. Before each replacement operation, the system records the current state so that it can roll back to the previous stable state when an error occurs.
[0054] In addition, after the update operation is completed, the system can also perform a final verification step to ensure that all strings to be updated have been correctly replaced and no new errors have been introduced. If the verification passes, the update operation is successful and the target configuration information will be saved and applied to the system. If the verification fails, it is necessary to re-analyze the differences and generate a new update plan until it succeeds.
[0055] In some cases, the original configuration information may be accessed by multiple users or systems at the same time. To prevent data conflicts during the update process, a lock mechanism can be implemented. Before the update begins, the system locks the original configuration information to prevent other operations from modifying it. Only after the update operation is confirmed to be complete will the lock be released to allow other operations to continue.
[0056] Finally, in order to improve the maintainability and scalability of the system, every step of the update process should be recorded in the log. These logs are not only helpful for post-analysis and troubleshooting, but also can be used as a reference for system upgrades and optimizations.
[0057] In an optional manner, the update process may also include adding new configuration items in the information to be configured to the original configuration information, or replacing configuration items in the original configuration information that are inconsistent with the information to be configured. For example, if the information to be configured contains a new software version number or hardware parameters, these new information will be written to the target storage unit to ensure the latest and accuracy of the vehicle configuration information.
[0058] After updating the target configuration information, the system can further perform a verification step to ensure that the updated configuration information is valid. This step may include restarting related services or processes to make the new configuration information effective and performing a series of self-tests to ensure that the configuration update does not introduce any errors or conflicts.
[0059] In addition, in order to improve the stability and reliability of the system, the update process can also include recording detailed log information. These logs will record every step of the configuration update, including the original configuration information before the update, the target configuration information after the update, and any errors or warnings that occurred during the update process. In this way, if any problems occur after the update, technicians can quickly locate the problem by viewing the logs and take appropriate solutions.
[0060] Finally, to ensure the security of vehicle configuration information, the update process can also include encryption measures. Before writing the configuration information to the target storage unit, the information can be encrypted to prevent unauthorized access or tampering. Encryption can use various algorithms, such as AES, RSA, etc., to ensure the security of data during transmission and storage.
[0061] Step 140 , when receiving a vehicle configuration request initiated by the first architecture application for the target configuration information, calling the target configuration information from the target storage unit, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
[0062] In an optional manner, when a vehicle configuration request initiated by a first architecture application for target configuration information is received, the target configuration information is called from a target storage unit so that the first architecture application configures the current vehicle based on the target configuration information. A first application calling interface can be created based on a data reading process; a vehicle configuration request initiated by the first architecture application through the first application calling interface is received; and the target configuration information is loaded into the first architecture application based on the vehicle configuration request so that the first architecture application configures the current vehicle based on the target configuration information.
[0063] For example, the data reading process ecu_config creates the first application call interface get_config1 for other applications to call. After the application calls, it will get a 128-byte data, each byte represents one or several configurations, which are defined according to the functional requirements protocol. The first architecture application can perform corresponding vehicle configuration on the current vehicle through the target configuration information called by the first application call interface get_config1.
[0064] In an optional way, in order to further optimize the vehicle configuration process, the first application call interface can be designed to support input and output of multiple data formats to meet the needs of different applications. In addition, the interface design should take into account ease of use and extensibility so that new functions can be easily added or new configuration parameters can be supported in the future. In terms of implementation, the RESTful API design principle can be adopted to ensure the standardization and cross-platform compatibility of the interface.
[0065] In actual deployment, the first architecture application may be located in different network environments. Therefore, the transmission process of vehicle configuration requests needs to ensure the integrity and security of data. To this end, the HTTPS protocol can be used for encrypted transmission to ensure that the data is not eavesdropped or tampered with during transmission. At the same time, in order to improve the response speed and reliability of the system, you can consider deploying a load balancer on the interface server to disperse the request load and provide a failover mechanism.
[0066] In addition, to ensure the accuracy and consistency of the vehicle configuration, the first architecture application should perform necessary verification and validation after receiving the target configuration information. This includes but is not limited to verifying the version number of the configuration information, verifying the integrity of the data, and confirming the compatibility of the configuration information with the current state of the vehicle. If any inconsistency or error is found during the verification process, the first architecture application should be able to provide clear error information and take appropriate error handling measures, such as rolling back to the last stable configuration or notifying technicians to intervene.
[0067] Finally, in order to continuously improve the vehicle configuration method and device, a feedback mechanism can be established to collect feedback information from the actual use of the first architecture application. This information may include the success rate of configuration requests, performance bottlenecks in the configuration process, and user satisfaction with the configuration process. By analyzing this data, technicians can continuously optimize the vehicle configuration process and improve system stability and user experience.
[0068] In an alternative approach, see Figure 2When it is necessary to configure the current vehicle based on the second architecture application, an application write process can be created to communicate with the data read process through the resource manager; an application read process can be created to communicate with the application write process, and the application read process communicates with the second architecture application through the second application call interface; when a vehicle configuration request initiated by the second architecture application for target configuration information is received, the target configuration information called by the application write process from the target storage unit is read based on the application read process, so that the second architecture application configures the current vehicle based on the target configuration information.
[0069] For example, when the above-mentioned vehicle operating system is an Android system, and it is necessary to configure the current vehicle based on the second architecture application running on the Android system, the application writing process ecu_config_be can communicate with the data reading process ecu_config through the resource manager, and an application reading process ecu_config_fe can be created on the Android system side. Then, based on the application reading process ecu_config_fe, a second application calling interface get_config2 is created. The application reading process ecu_config_fe communicates with the second architecture application through the second application calling interface get_config2, and the second architecture application can call the target configuration information through the second application calling interface get_config2 to perform corresponding vehicle configuration for the current vehicle.
[0070] In an optional manner, in order to further ensure the efficiency and accuracy of the configuration process, the application writing process and the application reading process can adopt an asynchronous communication mechanism. This means that when the application writing process is processing the data writing operation, the application reading process can independently perform the data reading operation, thereby avoiding resource idleness caused by waiting for the data writing to be completed. In addition, in order to improve the response speed and processing power of the system, a cache mechanism can be introduced to store frequently accessed configuration information in a high-speed cache to reduce the number of direct accesses to the target storage unit.
[0071] In the actual deployment process, the scalability and maintainability of the system also need to be considered. To this end, a modular architecture can be designed so that each process and interface can be updated and replaced independently without affecting the stable operation of the entire system. At the same time, in order to facilitate monitoring and management, a logging and monitoring system can be integrated to record key events and abnormal situations in the vehicle configuration process in real time, which is convenient for rapid location and resolution of problems.
[0072] Finally, in order to ensure the security of vehicle configuration, the entire configuration process must be strictly controlled. This includes but is not limited to encrypting the data transmission process to ensure the security of configuration information during transmission; strictly controlling access rights so that only authorized second-architecture applications can initiate vehicle configuration requests; and conducting regular security audits to check whether the system has potential security vulnerabilities and to promptly patch and reinforce them.
[0073] The vehicle configuration method of the embodiment of the present invention obtains the information to be configured written in the vehicle MCU to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; when the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information; when a vehicle configuration request initiated by the first architecture application for the target configuration information is received, the target configuration information is called from the target storage unit, so that the first architecture application configures the current vehicle based on the target configuration information, thereby realizing differentiated configuration of the same vehicle model by users, reducing the workload and cost of automobile research and development, and being able to meet the user's vehicle configuration needs in a timely manner without additionally increasing the configuration cost when hardware conditions permit.
[0074] Figure 3 FIG. 2 is a flow chart showing another embodiment of a vehicle configuration method of the present invention, the method being executed by a vehicle. Figure 3 As shown, the method comprises the following steps:
[0075] Step 310, obtaining the configuration information written into the vehicle MCU.
[0076] For details, please see Figure 1 Step 110 of the illustrated embodiment will not be described in detail here.
[0077] Step 320, compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result.
[0078] For details, please see Figure 1 Step 120 of the illustrated embodiment will not be described in detail here.
[0079] Step 330: When the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain target configuration information, and the target configuration information is stored in the non-volatile storage area of the target storage unit.
[0080] Step 340 , restarting the vehicle operating system of the current vehicle, and copying the target configuration information to the volatile storage area of the target storage unit during the restarting of the vehicle operating system.
[0081] For details, please refer to Figure 4 Since other drivers that need the target configuration information are started earlier, and the car MCU relies on some services such as networks that are started relatively late, a non-volatile storage area config_data can be added to the target storage unit ufs (the data is not lost after restart), and a volatile storage area ecu_config_data (the data is lost after restart) is applied in the memory corresponding to the target storage unit. The non-volatile storage area config_data and the volatile storage area ecu_config_data both store the target configuration information. When the car operating system is started, the car operating system will copy the data in the non-volatile storage area config_data to the volatile storage area ecu_config_data.
[0082] Step 350 : when a vehicle configuration request initiated by the first architecture application and / or the second architecture application for target configuration information is received, the target configuration information is called from the volatile storage area of the target storage unit.
[0083] Specifically, when a vehicle configuration request initiated by the first architecture application for target configuration information is received, the target configuration information is called from the volatile storage area of the target storage unit. When a vehicle configuration request initiated by the second architecture application for target configuration information is received, the target configuration information is called from the volatile storage area of the target storage unit. When vehicle configuration requests initiated by the first architecture application and the second architecture application for target configuration information are received, the first architecture application and the second architecture application may be called sequentially based on the time or order of initiation of the call. For details, please refer to Figure 1 Step 140 of the illustrated embodiment will not be described in detail here.
[0084] In an optional manner, after calling the target configuration information, the system will process the target configuration information accordingly according to the type and content of the request. For example, if the request is for a first architecture application, the system will convert the target configuration information into a format that the first architecture application can recognize and use. Similarly, if the request is for a second architecture application, the system will perform corresponding format conversion to ensure the correct transmission and application of the information.
[0085] After processing, the system sends the processed configuration information to the corresponding application through the vehicle MCU. This process ensures the real-time update of vehicle configuration information and the instant response of applications, improving the overall performance of the vehicle system and user experience. In addition, the system also has an error detection and recovery mechanism. Once an error occurs during the call or transmission of configuration information, the system can quickly identify and take measures to correct it, ensuring the stability and reliability of the vehicle configuration process.
[0086] The vehicle configuration method of the embodiment of the present invention can significantly reduce the configuration time during vehicle startup and operation, and optimize the vehicle startup process. At the same time, through the coordinated use of the volatile storage area and the non-volatile storage area, it is ensured that even if the vehicle is powered off or restarted, the key vehicle configuration information will not be lost, thereby improving the stability and reliability of the vehicle system.
[0087] Figure 5 FIG. 2 is a schematic diagram showing a structure of an embodiment of a vehicle configuration device of the present invention. Figure 5 As shown, the device comprises:
[0088] The information acquisition module 510 is used to acquire the configuration information written in the vehicle MCU, and the configuration information is used to represent the software and hardware configuration corresponding to the current vehicle;
[0089] The information comparison module 520 is used to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result;
[0090] An information updating module 530 is used to update the original configuration information based on the information to be configured to obtain target configuration information when the configuration comparison result indicates that the information to be configured is different from the original configuration information;
[0091] The vehicle configuration module 540 is used to call the target configuration information from the target storage unit when receiving the vehicle configuration request initiated by the first architecture application for the target configuration information, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
[0092] In an optional implementation, the information acquisition module 510 includes:
[0093] The information acquisition submodule is used to create a data acquisition service to obtain the configuration information written in the vehicle MCU;
[0094] The service creation submodule is used to create a data receiving service that communicates with the data acquisition service to receive the to-be-configured information uploaded by the data acquisition service;
[0095] The process creation submodule is used to create a data reading process that communicates with the data receiving service through the resource manager;
[0096] The information reading submodule is used to read the information to be configured received by the data receiving service based on the data reading process.
[0097] In an optional implementation, the information comparison module 520 includes:
[0098] The thread creation submodule is used to create a data checking thread that communicates with the data reading process;
[0099] The information comparison submodule is used to compare the information to be configured with the original configuration information stored in the target storage unit based on the data checking thread to obtain a configuration comparison result.
[0100] In an optional implementation, the information updating module 530 includes:
[0101] The string acquisition submodule is used to acquire the string in the original configuration information that is different from the information to be configured, and obtain the string to be updated;
[0102] A position determination submodule, used to identify the original position information of the character string to be updated in the original configuration information, and determine the character string to be written that matches the original position information in the configuration information;
[0103] The string update submodule is used to update the string to be updated based on the string to be written, so as to update the original configuration information and obtain the target configuration information.
[0104] In some optional embodiments, the vehicle configuration module 540 includes:
[0105] A first interface creation submodule, used to create a first application calling interface based on a data reading process;
[0106] A configuration request receiving submodule, used to receive a vehicle configuration request initiated by the first architecture application through the first application calling interface;
[0107] The first vehicle configuration submodule is used to load the target configuration information into the first architecture application based on the vehicle configuration request, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
[0108] In some optional implementations, the vehicle configuration module 540 further includes:
[0109] A writing process creation submodule is used to create an application writing process that communicates with a data reading process through a resource manager;
[0110] A read process creation submodule, used to create an application read process that communicates with the application write process, the application read process communicates with the second architecture application through the second application call interface;
[0111] The second vehicle configuration submodule is used to, when receiving a vehicle configuration request initiated by the second architecture application for the target configuration information, read the target configuration information called from the target storage unit by the application write process based on the application read process, so that the second architecture application configures the current vehicle based on the target configuration information.
[0112] In some optional embodiments, the target configuration information is stored in a non-volatile storage area of a target storage unit. The vehicle configuration module 540 is also used to restart the vehicle operating system of the current vehicle, and copy the target configuration information to the volatile storage area of the target storage unit during the restart of the vehicle operating system; when a vehicle configuration request initiated by the first architecture application and / or the second architecture application for the target configuration information is received, the target configuration information is called from the volatile storage area.
[0113] The further functional description of each of the above modules and units is the same as that of the above corresponding method embodiments and will not be repeated here.
[0114] Through the above device and its components, the technical solution provided by the embodiment of the present invention has the following advantages:
[0115] The vehicle configuration device of the embodiment of the present invention obtains the information to be configured written in the vehicle MCU to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; when the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated based on the information to be configured to obtain the target configuration information; when a vehicle configuration request initiated by the first architecture application for the target configuration information is received, the target configuration information is called from the target storage unit, so that the first architecture application configures the current vehicle based on the target configuration information, thereby realizing differentiated configuration of the same vehicle model by users, reducing the workload and cost of automobile research and development, and being able to meet the user's vehicle configuration needs in a timely manner without additionally increasing the configuration cost when hardware conditions permit.
[0116] See also Figure 6 , Figure 6 is a schematic diagram of the structure of a vehicle provided by an optional embodiment of the present invention, such as Figure 6 As shown, the vehicle includes: one or more processors 610, a memory 620, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses for communication, and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed in the vehicle, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple vehicles can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 6 A processor 610 is taken as an example.
[0117] The processor 610 may be a central processing unit, a network processor or a combination thereof. The processor 610 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable logic gate array, a general purpose array logic or any combination thereof.
[0118] The memory 620 stores instructions executable by at least one processor 610, so that the at least one processor 610 executes the method shown in the above embodiment.
[0119] The memory 620 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created based on the use of a vehicle displayed on a small program landing page, etc. In addition, the memory 620 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 620 may optionally include a memory remotely arranged relative to the processor 610, and these remote memories may be connected to the vehicle via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a server cluster, a mobile communication network, and a combination thereof.
[0120] The memory 620 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 620 may also include a combination of the above types of memory.
[0121] The vehicle also includes a communication interface 630 for the vehicle to communicate with other devices or communication networks.
[0122] An embodiment of the present invention further provides a computer-readable storage medium storing at least one executable instruction. When the executable instruction is executed on a vehicle / vehicle configuration device, the vehicle / vehicle configuration device executes the vehicle configuration method in any of the above method embodiments.
[0123] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system or other device. In addition, the embodiments of the present invention are not directed to any particular programming language.
[0124] In the description provided herein, a large number of specific details are described. However, it is understood that embodiments of the present invention can be practiced without these specific details. Similarly, in order to simplify the present invention and help understand one or more of the various inventive aspects, in the above description of exemplary embodiments of the present invention, the various features of the embodiments of the present invention are sometimes grouped together into a single embodiment, figure, or description thereof. Wherein, the claims that follow the specific embodiment are hereby expressly incorporated into the specific embodiment, wherein each claim itself is a separate embodiment of the present invention.
[0125] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and further may be divided into a plurality of submodules or subunits or subcomponents. Except that at least some of such features and / or processes or units are mutually exclusive.
[0126] It should be noted that the above embodiments illustrate the present invention rather than limit it, and that those skilled in the art may design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbol between brackets shall not be construed as a limitation on the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "one" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present invention may be implemented by means of hardware comprising a number of different elements and by means of a suitably programmed computer. In a unit claim that lists a number of devices, several of these devices may be embodied by the same hardware item. The use of the words first, second, and third, etc. does not indicate any order. These words may be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be understood as limitations on the order of execution.
Claims
1. A vehicle configuration method, characterized in that: The method comprises: Obtain the configuration information written in the vehicle MCU, where the configuration information is used to represent the software and hardware configuration corresponding to the current vehicle; Comparing the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; When the configuration comparison result indicates that the information to be configured is different from the original configuration information, updating the original configuration information based on the information to be configured to obtain target configuration information; When a vehicle configuration request initiated by the first architecture application for the target configuration information is received, the target configuration information is called from the target storage unit, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
2. The method according to claim 1, characterized in that The obtaining of the to-be-configured information written into the vehicle computer MCU includes: Create a data acquisition service to obtain the configuration information written in the vehicle MCU; Creating a data receiving service that communicates with the data acquisition service to receive the information to be configured uploaded by the data acquisition service; Creating a data reading process that communicates with the data receiving service through a resource manager; Based on the data reading process, the to-be-configured information received by the data receiving service is read.
3. The method according to claim 2, characterized in that The step of comparing the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result includes: Creating a data checking thread that communicates with the data reading process; Based on the data checking thread, the information to be configured is compared with the original configuration information stored in the target storage unit to obtain a configuration comparison result.
4. The method according to claim 1, characterized in that: When the configuration comparison result indicates that the information to be configured is different from the original configuration information, updating the original configuration information based on the information to be configured to obtain target configuration information includes: Acquire a character string in the original configuration information that is different from the information to be configured, to obtain a character string to be updated; Identifying original position information of the string to be updated in the original configuration information, and determining a string to be written that matches the original position information in the information to be configured; The character string to be updated is updated based on the character string to be written, so as to update the original configuration information and obtain the target configuration information.
5. The method according to claim 3, characterized in that: When receiving a vehicle configuration request initiated by the first architecture application for the target configuration information, calling the target configuration information from the target storage unit so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information includes: Creating a first application calling interface based on the data reading process; Receiving the vehicle configuration request initiated by the first architecture application through the first application calling interface; The target configuration information is loaded into the first architecture application based on the vehicle configuration request, so that the first architecture application performs vehicle configuration on the current vehicle based on the target configuration information.
6. The method according to claim 2, characterized in that When it is necessary to configure the current vehicle based on the second architecture application, the method includes: Creating an application writing process that communicates with the data reading process through the resource manager; Creating an application reading process that communicates with the application writing process, wherein the application reading process communicates with the second architecture application through a second application calling interface; When a vehicle configuration request initiated by the second architecture application for the target configuration information is received, the target configuration information called from the target storage unit by the application write process is read based on the application read process, so that the second architecture application configures the current vehicle based on the target configuration information.
7. The method according to any one of claims 1 to 6, characterized in that: The target configuration information is stored in a non-volatile storage area of the target storage unit. When the configuration comparison result indicates that the information to be configured is different from the original configuration information, the original configuration information is updated to obtain the target configuration information. The method further includes: Restarting the vehicle operating system of the current vehicle, and copying the target configuration information to the volatile storage area of the target storage unit during the restart of the vehicle operating system; When a vehicle configuration request initiated by the first architecture application and / or the second architecture application for the target configuration information is received, the target configuration information is called from the volatile storage area.
8. A vehicle configuration device, characterized in that: The device comprises: An information acquisition module is used to acquire the configuration information written in the vehicle MCU, where the configuration information is used to characterize the software and hardware configuration corresponding to the current vehicle; An information comparison module, used to compare the information to be configured with the original configuration information stored in the target storage unit to obtain a configuration comparison result; An information updating module, configured to update the original configuration information based on the information to be configured to obtain target configuration information when the configuration comparison result indicates that the information to be configured is different from the original configuration information; The vehicle configuration module is used to call the target configuration information from the target storage unit when receiving a vehicle configuration request initiated by the first architecture application for the target configuration information, so that the first architecture application configures the current vehicle based on the target configuration information.
9. A vehicle, characterized in that: include: A processor, a memory, a communication interface and a communication bus, wherein the processor, the memory and the communication interface communicate with each other via the communication bus; The memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform the operation of the vehicle configuration method as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that: The storage medium stores at least one executable instruction, and when the executable instruction is executed on the vehicle, the vehicle executes the operation of the vehicle configuration method as described in any one of claims 1 to 7.