Vehicle controller information acquisition method, device, equipment and storage medium
By acquiring vehicle configuration information of new energy commercial vehicles, parsing and processing controller protocol configuration information, and using CAN and UDS protocols in parallel to obtain controller version information, the problem of incomplete controller information collection in existing technologies has been solved, achieving efficient and reliable information collection.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZERON AUTOMOBILE TECHNOLOGY CO LTD
- Filing Date
- 2026-02-06
- Publication Date
- 2026-06-05
Smart Images

Figure CN122151629A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of automotive technology, specifically to vehicle detection technology, vehicle testing technology and other technical fields, and particularly to a method, device, equipment and storage medium for acquiring vehicle controller information. Background Technology
[0002] In the testing of new energy commercial vehicle production lines, it is often necessary to collect version information of various controllers (Electronic Control Unit, ECU).
[0003] Currently, controller information acquisition solutions for related technologies include manual configuration and single-protocol acquisition. These methods cannot cover all vehicle controllers; different vehicle models and configurations require repeated configuration of the acquisition method, resulting in a large workload and poor efficiency and flexibility in information acquisition. Summary of the Invention
[0004] This application provides a method, apparatus, device, and storage medium for acquiring vehicle controller information, which can solve the problem of poor flexibility in acquiring vehicle controller information. The technical solution is as follows: Firstly, a method for obtaining vehicle controller information is provided, the method comprising: Obtain the vehicle configuration information of the vehicle to be tested; Based on the vehicle configuration information, the configuration information of multiple controllers of the vehicle is obtained; The configuration information of each controller is parsed and processed to obtain the protocol configuration information of each controller; Based on the protocol configuration information of each controller, determine the controller for the first acquisition method and the controller for the second acquisition method; Based on the vehicle's configuration information, the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method are acquired in parallel using the first acquisition method and the second acquisition method.
[0005] In one possible implementation, obtaining the configuration information of multiple controllers of the vehicle based on the vehicle configuration information includes: Based on the vehicle configuration information, a controller baseline table is obtained; Based on the controller baseline table, the configuration information of multiple controllers of the vehicle is obtained.
[0006] In one possible implementation, the parsing of the configuration information of each controller to obtain the protocol configuration information of each controller includes: The configuration information of each controller is parsed and processed using a preset parsing algorithm; Based on the results of the parsing process, the protocol configuration information of each controller is obtained.
[0007] In one possible implementation, determining the controller for the first acquisition method and the controller for the second acquisition method based on the protocol configuration information of each controller includes: Determine whether the controller's protocol configuration information includes the controller area network identifier; In response to the controller's protocol configuration information, including the controller's LAN identifier, the controller is determined to be the controller of the first acquisition method.
[0008] In one possible implementation, the method further includes: In response to the controller's protocol configuration information not including the controller LAN identifier, determine whether the controller's protocol configuration information includes a data identifier; In response to the controller's protocol configuration information including the data identifier, the controller is determined to be the controller of the second acquisition method.
[0009] In one possible implementation, the step of acquiring, based on the vehicle's configuration information, controller version information corresponding to the controller in the first acquisition method and controller version information corresponding to the controller in the second acquisition method in parallel using the first acquisition method and the second acquisition method includes: Based on the vehicle's configuration information, the information storage address of the controller using the first acquisition method and the information storage address of the controller using the second acquisition method are obtained. Based on the controller information storage address obtained by the first acquisition method and the controller information storage address obtained by the second acquisition method, the controller version information corresponding to the controller obtained by the first acquisition method and the controller version information corresponding to the controller obtained by the second acquisition method are obtained in parallel using the first acquisition method and the second acquisition method.
[0010] Secondly, a device for acquiring vehicle controller information is provided, the device comprising: The acquisition unit is used to acquire the vehicle configuration information of the vehicle to be tested; The obtaining unit is used to obtain configuration information of multiple controllers of the vehicle based on the vehicle configuration information; The parsing unit is used to parse the configuration information of each controller to obtain the protocol configuration information of each controller; The determining unit is used to determine the controller with the first acquisition method and the controller with the second acquisition method based on the protocol configuration information of each controller; The parallel unit is used to acquire, based on the vehicle's configuration information, the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method in parallel using the first acquisition method and the second acquisition method.
[0011] Thirdly, a computer-readable storage medium is provided, wherein at least one instruction is stored therein, the at least one instruction being loaded and executed by a processor to implement the aspects and any possible implementations described above.
[0012] Fourthly, an electronic device is provided, comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the methods described above and any possible implementations.
[0013] The beneficial effects of the technical solution provided in this application include at least the following: As can be seen from the above technical solution, the embodiments of this application can obtain the vehicle configuration information of the vehicle under test, obtain the configuration information of multiple controllers of the vehicle based on the vehicle configuration information, parse and process the configuration information of each controller to obtain the protocol configuration information of each controller, determine the controller of the first acquisition method and the controller of the second acquisition method based on the protocol configuration information of each controller, and obtain the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method in parallel based on the vehicle configuration information. Since the optimal controller information acquisition method can be automatically selected from the two methods according to the controller configuration information, dual-channel unified management is realized, and dual-channel collection can realize the parallel acquisition of multiple controllers, thereby ensuring the stability and reliability of the vehicle controller information collection process.
[0014] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0015] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1 This is a flowchart illustrating a method for obtaining vehicle controller information according to an embodiment of this application; Figure 2 This is a structural block diagram of a vehicle controller information acquisition device provided in another embodiment of this application; Figure 3 This is a block diagram of an electronic device used to implement the vehicle controller information acquisition method of the embodiments of this application. Detailed Implementation
[0017] The following description, in conjunction with the accompanying drawings, illustrates exemplary embodiments of this application, including various details to aid understanding. These should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this application. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.
[0018] Obviously, the described embodiments are only some, not all, of the embodiments in this application. All other embodiments obtained by those skilled in the art based on the embodiments in this application without inventive effort are within the scope of protection of this application.
[0019] Furthermore, the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0020] Please refer to Figure 1 This document illustrates a flowchart of a method for obtaining vehicle controller information according to an embodiment of this application. Specifically, this method for obtaining vehicle controller information may include: Step 101: Obtain the vehicle configuration information of the vehicle to be tested.
[0021] Step 102: Based on the vehicle configuration information, obtain the configuration information of multiple controllers of the vehicle.
[0022] Step 103: Parse the configuration information of each controller to obtain the protocol configuration information of each controller.
[0023] Step 104: Based on the protocol configuration information of each controller, determine the controller for the first acquisition method and the controller for the second acquisition method.
[0024] Step 105: Based on the vehicle's configuration information, using the first acquisition method and the second acquisition method, simultaneously acquire the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method.
[0025] It should be noted that vehicle configuration information can include the overall configuration table of vehicles in the database.
[0026] It should be noted that the acquisition method can be any method of collecting controller information. The first acquisition method can be based on the Controller Area Network (CAN). The second acquisition method can be based on Unified Diagnostic Services (UDS).
[0027] It should be noted that vehicle controller information may also include the chassis VIN code, vehicle configuration name, system configuration name, controller version information, etc. Controller version information may include software version information, hardware version information, calibration version information, etc.
[0028] In this way, by acquiring the vehicle configuration information of the vehicle under test, and based on the vehicle configuration information, the configuration information of multiple controllers of the vehicle can be obtained. The configuration information of each controller is parsed to obtain the protocol configuration information of each controller. Based on the protocol configuration information of each controller, the controller for the first acquisition method and the controller for the second acquisition method are determined. Based on the vehicle configuration information, the controller version information corresponding to the controller for the first acquisition method and the controller version information corresponding to the controller for the second acquisition method are acquired in parallel using the first acquisition method and the second acquisition method. Since the optimal controller information acquisition method can be automatically selected from the two methods based on the controller configuration information, dual-channel unified management is achieved, and dual-channel collection can realize the parallel acquisition of multiple controllers, thereby ensuring the stability and reliability of the vehicle controller information collection process.
[0029] Optionally, in one possible implementation of this embodiment, in step 102, firstly, a controller baseline table can be obtained based on the vehicle configuration information. Secondly, configuration information of multiple controllers of the vehicle can be obtained based on the controller baseline table.
[0030] In this implementation, the vehicle configuration information may include configuration information that supports the Common Data Identifier (DID) and configuration information that supports the Extended DID.
[0031] Here, the configuration information for a generic DID can be applied to all controllers. The configuration information for an extended DID can be grouped by controller.
[0032] In one specific implementation of this approach, configuration information for each controller in the vehicle is obtained based on the controller baseline table.
[0033] In this implementation, the controller's configuration information may include the baseline version configuration.
[0034] For example, vehicle configuration information can be a vehicle configuration information table, the specific structure of which can be as follows: -- vehicle_configuration table CREATE TABLE vehicle_configuration ( vehicle_id INTEGER PRIMARY KEY, vehicle_vin VARCHAR(17) UNIQUE, vehicle_ecu TEXT, -- comma-separated list of controllers vehicle_common_did TEXT, -- General DID, format: "F190|value;F1A8|value;" vehicle_expand_did TEXT -- Extended DID, format: "VCU:F1A9|value;ICM:F1A9|value;" ); In this way, the configuration information of each controller in the vehicle can be obtained from the vehicle configuration information, ensuring the accuracy and reliability of the controller configuration information. Moreover, by dynamically loading vehicle configurations from the database, manual configuration is not required, and automatic matching by vehicle model and baseline version is supported, reducing the configuration workload by more than 80%.
[0035] Optionally, in one possible implementation of this embodiment, in step 103, firstly, a preset parsing algorithm can be used to parse the configuration information of each controller. Secondly, based on the result of the parsing process, the protocol configuration information of each controller can be obtained.
[0036] In this implementation, the preset parsing algorithm may include a matching parsing algorithm based on a preset protocol configuration table.
[0037] In a specific implementation of this approach, the protocol configuration information of each controller is obtained based on a preset protocol configuration table and the configuration information of each controller.
[0038] In this implementation, the controller's protocol configuration information may include the controller LAN identifier, data identifier, etc.
[0039] For example, the structure of a preset protocol configuration table can be as follows: -- protocol table (protocol configuration) CREATE TABLE protocol ( protocol_id INTEGER PRIMARY KEY, controller_name VARCHAR(50), version_did VARCHAR(10), -- UDS version DID, such as "F190" version_can_id VARCHAR(10), -- CAN version frame ID, such as "18DA27FA" -- Other protocol configurations... ); In this way, the protocol configuration information of each controller can be automatically determined according to the preset protocol configuration table, thus optimizing the management of the controller information acquisition method.
[0040] It should be noted that the specific implementation process provided in this embodiment can be combined with various specific implementation processes provided in the foregoing implementation methods to realize the vehicle controller information acquisition method of this embodiment. Detailed descriptions can be found in the relevant content of the foregoing implementation methods, and will not be repeated here.
[0041] Optionally, in one possible implementation of this embodiment, in step 104, firstly, it can be determined whether the controller's protocol configuration information includes a controller local area network identifier. Secondly, in response to the controller's protocol configuration information including the controller local area network identifier, it can be determined that the controller is the controller of the first acquisition method.
[0042] In this implementation, the controller LAN identifier can be used to indicate that the controller supports the first acquisition method.
[0043] In one specific implementation of this approach, firstly, in response to the controller's protocol configuration information not including the controller's LAN identifier, it is determined whether the controller's protocol configuration information includes a data identifier. Secondly, in response to the controller's protocol configuration information including the data identifier, it can be determined that the controller is the controller for the second acquisition method.
[0044] In this implementation, the data identifier can be an identifier from the UDS protocol. The data identifier can be used to characterize that the controller supports the second acquisition method.
[0045] In another specific implementation of this method, the number of controllers for the first acquisition method and the number of controllers for the second acquisition method can be determined respectively.
[0046] For example, controller configuration information parsing and routing can be performed as follows: / / Parse the controller configuration to determine the collection method async parseControllerConfiguration(vehicleConfig) { / / Retrieve baseline version configuration from the baseline table const baseline = await this.loadBaseline(vehicleConfig.baselineVersion); / / Retrieve controller configuration from the baseline_control table const controls = await this.loadBaselineControls(baseline.baseline_id); / / Parse the configuration of each controller for (const control of controls) { const controllerName = control.control_name; / / Load protocol configuration from the protocol table const protocolConfig = await this.protocolConfigService .getFullProtocolConfig(controllerName); / / Determine the collection method let collectionMethod = 'uds'; / / Default UDS method if (protocolConfig) { / / If CAN version frame ID is configured, use CAN mode if (protocolConfig.versionCanId) { collectionMethod = 'can'; } / / If UDS DID is configured, use the UDS method. else if (protocolConfig.versionDid) { collectionMethod = 'uds'; } } / / Save controller configuration this.controllers.set(controllerName, { name: controllerName, method: collectionMethod, protocolConfig: protocolConfig, commonDids: vehicleConfig.commonDids, expandDids: vehicleConfig.expandDids.get(controllerName) || [] }); / / Statistics if (collectionMethod === 'uds') { this.stats.udsCount++; } else { this.stats.canCount++; } } this.stats.total = this.controllers.size; } In this way, by determining whether the controller's protocol configuration information includes the controller LAN identifier or data identifier, the controller for the first acquisition method and the controller for the second acquisition method can be automatically determined, thus achieving automatic routing for the two acquisition methods.
[0047] It should be noted that the specific implementation process provided in this embodiment can be combined with various specific implementation processes provided in the foregoing implementation methods to realize the vehicle controller information acquisition method of this embodiment. Detailed descriptions can be found in the relevant content of the foregoing implementation methods, and will not be repeated here.
[0048] Optionally, in one possible implementation of this embodiment, in step 105, firstly, based on the vehicle's configuration information, the information storage address of the controller using the first acquisition method and the information storage address of the controller using the second acquisition method can be obtained. Secondly, based on the information storage addresses of the controller using the first acquisition method and the second acquisition method, the controller version information corresponding to the controller using the first acquisition method and the controller version information corresponding to the controller using the second acquisition method can be obtained in parallel using both methods.
[0049] In a specific implementation of this method, for a controller using the first acquisition method, the version information of the controller can be obtained based on the controller configuration information and the information storage address of the controller using the first acquisition method. At the same time, for a controller using the second acquisition method, the version information of the controller can be obtained based on the information storage address of the controller using the second acquisition method.
[0050] In this implementation, the first acquisition method can be a CAN-based acquisition method, i.e., the CAN method. The second acquisition method can be a UDS-based acquisition method, i.e., the UDS method.
[0051] In another specific implementation of this approach, the controller version information corresponding to the CAN controller and the controller version information corresponding to the UDS controller can be obtained in parallel using both the CAN and UDS methods, based on the information storage address of the controller in the CAN mode and the controller version information corresponding to the controller in the UDS mode.
[0052] One specific implementation method is to obtain the controller version information corresponding to the CAN controller by using the CAN method, based on a preset first waiting time threshold and the information storage address of the controller in the CAN mode.
[0053] Here, the preset first waiting time threshold can be 30 seconds.
[0054] Preferably, when the waiting time for obtaining the controller version information corresponding to the controller in the CAN mode is greater than a preset first waiting time threshold, the controller version information corresponding to the controller in the CAN mode is obtained using the CAN mode based on the information storage address of the controller in the CAN mode.
[0055] Understandably, each CAN controller can be configured with an independent listener. The timeout period can be 30 seconds to accommodate long frame periods. The listener can be canceled immediately upon receiving data, releasing resources.
[0056] Another specific implementation method is to obtain the controller version information corresponding to the controller of the UDS method by using the UDS method based on the preset second waiting time threshold, the preset retry number threshold, and the information storage address of the controller of the UDS method.
[0057] Here, the preset second waiting time threshold can be 1 second. The preset retry count threshold can be 2 times.
[0058] Preferably, when the waiting time for obtaining the controller version information corresponding to the controller in the UDS mode is greater than a preset second waiting time threshold, or the number of retries is greater than a preset number of retries threshold, the controller version information corresponding to the controller in the UDS mode is obtained using the UDS mode based on the information storage address of the controller in the UDS mode.
[0059] Understandably, different timeout periods can be set depending on the acquisition method. UDS method: 1-second timeout, maximum 2 retries. CAN method: 30-second timeout, considering long frame periods. The overall timeout can be the maximum of the two.
[0060] For example, the parallel initiation of retrieving controller version information from multiple controllers can be done as follows: / / Startup version collection async startCollection(vin, options = {}) { / / 1. Load vehicle configuration const vehicleConfig = await this.loadVehicleConfiguration(vin); / / 2. Parse controller configuration await this.parseControllerConfiguration(vehicleConfig); / / 3. Parallel startup of UDS and CAN collection / / 3.1 Register the CAN listener (CAN-based controller) await this.registerCanListeners(); / / 3.2 Initiating a UDS request (UDS-based controller) await this.startUdsRequests(); / / 4. Set timeout detection this.setupTimeout(); return { success: true, total: this.stats.total, udsCount: this.stats.udsCount, canCount: this.stats.canCount }; } The implementation of the UDS channel acquisition method can be as follows: / / Initiate UDS request async startUdsRequests() { const udsControllers = Array.from(this.controllers.values()) .filter(c =>c.method === 'uds'); / / Send UDS requests in parallel const udsPromises = udsControllers.map(async (controller) =>{ try { / / Establish a diagnostic session await this.udsDiagnosticService.sendDiagnosticRequest( controller.name, 0x10, [0x03] / / Extended Session ); / / Read version DID const versionDid = controller.protocolConfig.versionDid || 'F190'; const response = await this.udsDiagnosticService.readDataByIdentifier( controller.name, versionDid ); / / Parse version information const versionData = this.parseVersionData(response, controller); / / Save results this.results.set(controller.name, { controller: controller.name, method: 'uds', success: true, version: versionData, timestamp: Date.now() }); this.stats.completed++; } catch (error) { / / The error does not affect other controllers this.results.set(controller.name, { controller: controller.name, method: 'uds', success: false, error: error.message, timestamp: Date.now() }); this.stats.failed++; } }); / / Wait for all UDS requests to complete (with timeout) await Promise.allSettled(udsPromises); } Furthermore, timeout control can be implemented as follows: / / Set timeout detection setupTimeout() { const maxTimeout = Math.max( this.udsTimeout * 2, / / Maximum UDS wait time this.canTimeout + 5000 / / Maximum CAN wait time ); this.timeoutHandle = setTimeout(() =>{ / / Check for incomplete controllers for (const [controllerName, config] of this.controllers) { if (!this.results.has(controllerName)) { / / Mark as timeout failure this.results.set(controllerName, { controller: controllerName, method: config.method, success: false, Error: 'Collection timed out' timestamp: Date.now() }); this.stats.failed++; } } / / Trigger the completion event this.emit('collection-timeout', { collectionId: this.collectionId, stats: { ...this.stats} }); }, maxTimeout); } This approach allows for unified management of both UDS and CAN acquisition methods, automatically routing data to the corresponding channel based on controller configuration. It covers all types of controllers, and the automatic routing mechanism eliminates the need for manual configuration of collection methods, increasing controller compatibility from 60% to over 95%. Furthermore, parallel collection from multiple controllers significantly reduces the overall time. With both UDS and CAN channels operating simultaneously, system resources are fully utilized, reducing the collection time for 10 controllers from 30 seconds to 5-8 seconds, a 3-4 times efficiency improvement.
[0061] Furthermore, more precise timeout control increases the success rate of data collection from 70% to over 95%. The failure of a single controller does not affect other controllers, and intelligent retries and error recovery are supported, improving system stability and reducing the impact of errors by 90%.
[0062] It should be noted that the specific implementation process provided in this embodiment can be combined with various specific implementation processes provided in the foregoing implementation methods to realize the vehicle controller information acquisition method of this embodiment. Detailed descriptions can be found in the relevant content of the foregoing implementation methods, and will not be repeated here.
[0063] Figure 2 This invention provides a structural block diagram of a vehicle controller information acquisition device according to an embodiment of the present application. Figure 2 As shown. The vehicle controller information acquisition device 200 of this embodiment may include an acquisition unit 201, a obtaining unit 202, a parsing unit 203, a determining unit 204, and a parallel unit 205. The acquisition unit 201 is used to acquire vehicle configuration information of the vehicle to be tested; the obtaining unit 202 is used to acquire configuration information of multiple controllers of the vehicle based on the vehicle configuration information; the parsing unit 203 is used to parse the configuration information of each controller to obtain protocol configuration information of each controller; the determining unit 204 is used to determine the controller for a first acquisition method and the controller for a second acquisition method based on the protocol configuration information of each controller; the parallel unit 205 is used to acquire, in parallel, the controller version information corresponding to the controller for the first acquisition method and the controller version information corresponding to the controller for the second acquisition method, based on the vehicle configuration information and using the first and second acquisition methods.
[0064] Optionally, in one possible implementation of this embodiment, the obtaining unit 202 is used to obtain a controller baseline table based on the vehicle configuration information; and to obtain configuration information of multiple controllers of the vehicle based on the controller baseline table.
[0065] Optionally, in one possible implementation of this embodiment, the parsing unit 203 is used to parse the configuration information of each controller using a preset parsing algorithm; and to obtain the protocol configuration information of each controller based on the result of the parsing process.
[0066] Optionally, in one possible implementation of this embodiment, the determining unit 204 is used to determine whether the protocol configuration information of the controller includes the controller local area network identifier; in response to the controller's protocol configuration information including the controller local area network identifier, the controller is determined to be the controller of the first acquisition method.
[0067] Optionally, in one possible implementation of this embodiment, the determining unit 204 is configured to determine whether the controller's protocol configuration information includes a data identifier in response to the controller's protocol configuration information not including the controller's LAN identifier; and to determine that the controller is a controller of the second acquisition method in response to the controller's protocol configuration information including the data identifier.
[0068] Optionally, in one possible implementation of this embodiment, the parallel unit 205 is used to obtain the information storage address of the controller in the first acquisition method and the information storage address of the controller in the second acquisition method based on the configuration information of the vehicle; based on the information storage address of the controller in the first acquisition method and the information storage address of the controller in the second acquisition method, the controller version information corresponding to the controller in the first acquisition method and the controller version information corresponding to the controller in the second acquisition method are obtained in parallel using the first acquisition method and the second acquisition method.
[0069] In this embodiment, the vehicle configuration information of the vehicle under test can be obtained by the acquisition unit. Based on the vehicle configuration information, the acquisition unit obtains the configuration information of multiple controllers of the vehicle. The parsing unit parses the configuration information of each controller to obtain the protocol configuration information of each controller. Based on the protocol configuration information of each controller, the determination unit determines the controller for the first acquisition method and the controller for the second acquisition method. Based on the vehicle configuration information, the parallel unit uses the first acquisition method and the second acquisition method to obtain the controller version information corresponding to the controller for the first acquisition method and the controller version information corresponding to the controller for the second acquisition method in parallel. Since the optimal controller information acquisition method can be automatically selected from the two methods according to the controller configuration information, dual-channel unified management is realized, and dual-channel collection can realize the parallel acquisition of multiple controllers, thereby ensuring the stability and reliability of the vehicle controller information collection process.
[0070] The technical solution of this application involves the collection, storage, use, processing, transmission, provision, and disclosure of user personal information, such as user image and attribute data, which comply with relevant laws and regulations and do not violate public order and good morals.
[0071] According to embodiments of this application, this application also provides an electronic device, a readable storage medium, and a computer program product.
[0072] Figure 3 A schematic block diagram of an example electronic device 300 that can be used to implement embodiments of this application is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the application described and / or claimed herein.
[0073] like Figure 3 As shown, the electronic device 300 includes a computing unit 301, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 302 or a computer program loaded from a storage unit 308 into a random access memory (RAM) 303. The RAM 303 may also store various programs and data required for the operation of the electronic device 300. The computing unit 301, ROM 302, and RAM 303 are interconnected via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0074] Multiple components in electronic device 300 are connected to I / O interface 305, including: input unit 306, such as keyboard, mouse, etc.; output unit 307, such as various types of displays, speakers, etc.; storage unit 308, such as disk, optical disk, etc.; and communication unit 309, such as network card, modem, wireless transceiver, etc. Communication unit 309 allows electronic device 300 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0075] The computing unit 301 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 301 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 301 performs the various methods and processes described above, such as the method for acquiring vehicle controller information. For example, in some embodiments, the method for acquiring vehicle controller information may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 308. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 300 via ROM 302 and / or communication unit 309. When the computer program is loaded into RAM 303 and executed by the computing unit 301, one or more steps of the method for acquiring vehicle controller information described above may be performed. Alternatively, in other embodiments, the computing unit 301 may be configured to perform the method for acquiring vehicle controller information by any other suitable means (e.g., by means of firmware).
[0076] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0077] The program code used to implement the methods of this application may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that when executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0078] In the context of this application, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0079] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0080] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.
[0081] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.
[0082] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this application can be achieved, and this is not limited herein.
[0083] The specific embodiments described above do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A method for acquiring vehicle controller information, characterized in that, The method includes: Obtain the vehicle configuration information of the vehicle to be tested; Based on the vehicle configuration information, the configuration information of multiple controllers of the vehicle is obtained; The configuration information of each controller is parsed and processed to obtain the protocol configuration information of each controller; Based on the protocol configuration information of each controller, determine the controller for the first acquisition method and the controller for the second acquisition method; Based on the vehicle's configuration information, the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method are acquired in parallel using the first acquisition method and the second acquisition method.
2. The method according to claim 1, characterized in that, The step of obtaining configuration information for multiple controllers of the vehicle based on the vehicle configuration information includes: Based on the vehicle configuration information, a controller baseline table is obtained; Based on the controller baseline table, the configuration information of multiple controllers of the vehicle is obtained.
3. The method according to claim 1, characterized in that, The parsing and processing of the configuration information of each controller to obtain the protocol configuration information of each controller includes: The configuration information of each controller is parsed and processed using a preset parsing algorithm; Based on the results of the parsing process, the protocol configuration information of each controller is obtained.
4. The method according to claim 1, characterized in that, The process of determining the controller for the first acquisition method and the controller for the second acquisition method based on the protocol configuration information of each controller includes: Determine whether the controller's protocol configuration information includes the controller area network identifier; In response to the controller's protocol configuration information, including the controller's LAN identifier, the controller is determined to be the controller of the first acquisition method.
5. The method according to claim 4, characterized in that, The method further includes: In response to the controller's protocol configuration information not including the controller LAN identifier, determine whether the controller's protocol configuration information includes a data identifier; In response to the controller's protocol configuration information including the data identifier, the controller is determined to be the controller of the second acquisition method.
6. The method according to claim 1, characterized in that, Based on the vehicle's configuration information, the method of acquiring controller version information corresponding to the controller using the first acquisition method and the second acquisition method in parallel includes: Based on the vehicle's configuration information, the information storage address of the controller using the first acquisition method and the information storage address of the controller using the second acquisition method are obtained. Based on the controller information storage address obtained by the first acquisition method and the controller information storage address obtained by the second acquisition method, the controller version information corresponding to the controller obtained by the first acquisition method and the controller version information corresponding to the controller obtained by the second acquisition method are obtained in parallel using the first acquisition method and the second acquisition method.
7. A device for acquiring vehicle controller information, characterized in that, The device includes: The acquisition unit is used to acquire the vehicle configuration information of the vehicle to be tested; The obtaining unit is used to obtain configuration information of multiple controllers of the vehicle based on the vehicle configuration information; The parsing unit is used to parse the configuration information of each controller to obtain the protocol configuration information of each controller; The determining unit is used to determine the controller with the first acquisition method and the controller with the second acquisition method based on the protocol configuration information of each controller; The parallel unit is used to acquire, based on the vehicle's configuration information, the controller version information corresponding to the controller of the first acquisition method and the controller version information corresponding to the controller of the second acquisition method in parallel using the first acquisition method and the second acquisition method.
8. An electronic device, characterized in that, include: At least one processor; as well as A memory that is communicatively connected to the at least one processor; The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1-6.
9. A non-transitory computer-readable storage medium storing computer instructions, characterized in that, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-6.
10. A computer program product, characterized in that, Includes a computer program that, when executed by a processor, implements the method according to any one of claims 1-6.