A communication method, apparatus and vehicle

CN118555160BActive Publication Date: 2026-09-08HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310208370.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-24
Publication Date
2026-09-08
Estimated Expiration
2043-02-24

AI Technical Summary

Technical Problem

目前,为了提升软件版本的通用性,针对同一款车的不同车型,当同一软件版本应用在不同的车型的ECU时,主要通过动态加载DBC文件来适配当前的车型,例如判断是否需要对接收的报文进行解析,但是,ECU每一次收发报文时都需要动态加载DBC文件,这样会耗费较多的时间,通信和报文解析效率较低

Benefits of technology

[0043] A sixth aspect provides a computer program product, including a computer program that, when run on a communication device, causes the communication device to perform the method described in the first aspect above.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118555160B_ABST
    Figure CN118555160B_ABST
Patent Text Reader

Abstract

The application provides a communication method, device and vehicle, which are used for improving communication and message analysis efficiency. The method comprises the following steps: receiving a first message, the first message is identified as a first identifier, and the first message is used for instructing a first vehicle to perform a first operation; determining first vehicle type information corresponding to the first identifier according to a first association relationship between a message identifier and vehicle type information; and analyzing the first message according to the matching between the first vehicle type information and a vehicle type of the first vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of intelligent vehicle technology, and in particular to a communication method, device and vehicle. Background Technology

[0002] With the development of automotive electronics technology, automobiles are integrating more and more functions and applications, and the functions of hardware and software are becoming increasingly complex. For example, a vehicle may include dozens of electronic control units (ECUs) and more than a dozen controller area network (CAN) buses. The software on each ECU not only needs to execute the corresponding control functions, but also needs to handle the corresponding communication services. Currently, to facilitate the design and maintenance of the entire vehicle, automakers typically use database commander (DBC) files to describe the communication between all ECUs in the in-vehicle network. The software on the ECU can use the DBC file to manage the messages received by the ECU. For example, the software on the ECU can use the DBC file to determine whether the message received by the ECU needs to be parsed. If it needs to be parsed, the message is parsed; if it does not need to be parsed, the message is discarded.

[0003] In practical applications, the same car model may have multiple variants, each corresponding to a different DBC file. Currently, to improve the universality of software versions, when the same software version is applied to the ECUs of different car models, the main approach is to dynamically load the DBC file to adapt to the current model. For example, this involves determining whether to parse received messages. However, the ECU needs to dynamically load the DBC file every time it sends or receives a message, which consumes a significant amount of time and results in low communication and message parsing efficiency. Summary of the Invention

[0004] This application provides a communication method, apparatus, and vehicle for improving communication and message parsing efficiency.

[0005] In a first aspect, a communication method is provided, the method comprising: receiving a first message, the first message being identified as a first identifier, the first message being used to instruct a first vehicle to perform a first operation; determining first vehicle model information corresponding to the first identifier based on a first association relationship between the message identifier and vehicle model information; and parsing the first message based on matching the first vehicle model information with the vehicle model of the first vehicle.

[0006] This method can be executed by a communication device, such as a control device installed in the vehicle, which may be a domain controller, electronic control unit (ECU), computing platform, etc., within the vehicle. Alternatively, the communication device may be the vehicle itself. Or, the communication device may be a chip installed in the vehicle, or a chip within a corresponding on-board device, such as a domain controller, ECU, computing platform, etc.

[0007] In this embodiment, the vehicle model information corresponding to the identifier of the received message is determined based on the mapping relationship between the message identifier and the vehicle model information, and it is determined whether the message needs to be parsed based on the vehicle model information. This eliminates the need to dynamically load the DBC file and improves communication and message parsing efficiency.

[0008] In one possible implementation, the method further includes: receiving a second message, the second message being identified by the first identifier, the second message being used to instruct a second vehicle to perform the first operation or the second operation, the second vehicle being a different model from the first vehicle; determining the first model information corresponding to the first identifier based on the first association relationship between the message identifier and the model information; and parsing the second message based on matching the first model information with the model of the second vehicle.

[0009] In the above technical solution, when the software for processing communication services is installed on the first vehicle, it can process the relevant communication services of the first vehicle; when installed on the second vehicle, it can process the relevant communication services of the second vehicle. Furthermore, since the first and second vehicles are different models, the same software can be applied to vehicles of different models, resulting in high software versatility. The second operation can be a different operation related to the first operation. For example, if the operation indicated by the first message is adjusting speed, and the first operation is an acceleration operation, then the second operation can be a deceleration operation. Alternatively, the second operation can be a different operation from the first operation. This application embodiment does not specifically limit whether the operations indicated by the same message identifier are the same operation.

[0010] In one possible implementation, the method further includes: receiving a third message, the third message being identified as a second identifier, the third message being used to instruct the first vehicle to perform a third operation; determining second vehicle model information corresponding to the second identifier based on a second association relationship between the message identifier and vehicle model information; and parsing the third message based on matching the second vehicle model information with the vehicle model of the first vehicle.

[0011] In the above technical solution, different message identifiers can obtain the same vehicle model information through different association relationships. That is, the same vehicle model information can correspond to multiple message identifiers, and the mapping relationship between the same vehicle model information and each message identifier is a different mapping relationship, which can improve the efficiency of determining vehicle model information based on message identifiers.

[0012] In one possible implementation, the first vehicle model information is determined based on at least one vehicle model information corresponding to at least one message identified by the first identifier.

[0013] In the above technical solution, the first vehicle model information is obtained from N files, which means that the first association is obtained by merging the vehicle model information in multiple associations. This can reduce the storage space occupied by the association corresponding to the first identifier.

[0014] In one possible implementation, the method further includes: determining M vehicle model information corresponding to M files, where M is a positive integer; obtaining a message identifier contained in each of the M files; and establishing an association between the message identifier and the vehicle model information based on the M vehicle model information and at least one message identifier of at least one message contained in each of the M files, wherein the association includes the first association.

[0015] In the above technical solution, the messages contained in multiple files are associated with the vehicle model information corresponding to the files. This allows for unified management of the messages contained in multiple files, enabling one software to adapt to multiple vehicle models and resulting in high software version universality.

[0016] In one possible implementation, the method further includes: determining that the third identifier is associated with the same vehicle model information based on the fact that at least two of the M files contain at least two messages identified by a third identifier, wherein the same vehicle model information matches the vehicle model corresponding to the at least two files.

[0017] In the above technical solution, associating messages identified by the same identifier with the same vehicle model information can reduce the number of associations between message identifiers and vehicle model information, and improve the efficiency of determining vehicle model information based on message identifiers.

[0018] In one possible implementation, the M files are database manager (DBC) files.

[0019] In the above technical solution, the messages that the vehicle can receive and send are determined through the DBC file, which complies with the provisions of existing protocols.

[0020] In one possible implementation, the method further includes: determining the value of a signal parameter of a first signal contained in the first message based on the association between the message identifier and the location of the signal parameter value, wherein the first signal is a physical signal used to indicate the first operation, and the location of the signal parameter value includes the start position and length of the signal.

[0021] In the above technical solution, when it is determined that the received message needs to be parsed, the value of the signal parameter contained in the message can be obtained by the association between the message identifier and the location of the signal parameter value. The operation is performed based on the value, which does not require dynamic loading of the DBC file and can improve the efficiency of communication and message parsing.

[0022] In one possible implementation, the method further includes: determining a second signal corresponding to the first signal based on the association between physical signals and logical signals, the second signal being a logical signal used to indicate the first operation, the second signal being associated with one or more physical signals, the one or more physical signals including the first signal, and performing the first operation based on the second signal and the value of the signal parameter.

[0023] In the above technical solution, storing the instructions of physical signals in the address space of the corresponding logical signals can mask the differences between different messages. For example, in different DBC files, the message identifiers indicating the same operation are different, but the instructions are the same. Therefore, the association between physical signals and logical signals can be established, so that upper-layer applications (such as software) can directly obtain the corresponding instructions from the logical space and execute the corresponding operations, which can improve vehicle control efficiency.

[0024] In one possible implementation, the method further includes: parsing the messages contained in each of the M files, where M is a positive integer; obtaining the position of the value of the signal parameter contained in each message; and establishing an association between the message identifier and the position of the signal parameter value.

[0025] In the above technical solution, the association between the message identifier and the signal parameter value is established by linking the message identifier contained in multiple files with the location of the signal parameter value. This allows for unified management of messages contained in multiple files, enabling one software to adapt to multiple vehicle models and resulting in high software version universality.

[0026] In one possible implementation, the method further includes: determining the operation indicated by the physical signal contained in each message, and associating the physical signal indicating the same operation with the same logical signal; and establishing the association between the physical signal and the logical signal.

[0027] In the above technical solution, a correlation is established between physical signals and logical signals, so that upper-layer applications can directly obtain corresponding instructions from the logical space and execute corresponding operations, which can improve vehicle control efficiency.

[0028] Secondly, a communication device is provided for implementing the first aspect or any one of the methods described above. This device includes corresponding functional modules, each configured to implement the steps in the methods described above. The functions can be implemented in hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions described above.

[0029] In one possible implementation, the communication device may include a processing module. The communication module is configured to receive a first message, the first message being identified as a first identifier, and the first message being used to instruct a first vehicle to perform a first operation. The processing module is configured to determine the first vehicle model information corresponding to the first identifier based on a first association relationship between the message identifier and vehicle model information. The processing module is configured to parse the first message based on matching the first vehicle model information with the vehicle model of the first vehicle.

[0030] In one possible implementation, the communication module is further configured to receive a second message, the second message being identified by the first identifier, the second message being used to instruct a second vehicle to perform the first operation or the second operation, the second vehicle being a different model from the first vehicle; the processing module is further configured to determine the first model information corresponding to the first identifier based on the first association relationship between the message identifier and the model information; and to parse the second message based on matching the first model information with the model of the second vehicle.

[0031] In one possible implementation, the communication module is further configured to receive a third message, the third message being identified by a second identifier, the third message being used to instruct the first vehicle to perform a third operation; the processing module is further configured to determine the second vehicle model information corresponding to the second identifier based on a second association relationship between the message identifier and vehicle model information; and to parse the third message based on matching the second vehicle model information with the vehicle model of the first vehicle.

[0032] In one possible implementation, the first vehicle model information is determined based on at least one vehicle model information corresponding to at least one message identified by the first identifier.

[0033] In one possible implementation, the processing module is further configured to: determine M corresponding M vehicle model information, where M is a positive integer; obtain the message identifier contained in each of the M files; and establish an association relationship between the message identifier and the vehicle model information based on the M vehicle model information and at least one message identifier of at least one message included in the M files, wherein the association relationship includes the first association relationship.

[0034] In one possible implementation, the processing module is further configured to: determine that the third identifier is associated with the same vehicle model information based on the fact that at least two of the M files contain at least two messages identified by a third identifier, wherein the same vehicle model information matches the vehicle model corresponding to the at least two files.

[0035] In one possible implementation, the M files are database manager (DBC) files.

[0036] In one possible implementation, the processing module is further configured to: determine the value of a signal parameter of a first signal contained in the first message based on the association between the message identifier and the location of the signal parameter value, wherein the first signal is a physical signal used to indicate the first operation, and the location of the signal parameter value includes the start position and length of the signal.

[0037] In one possible implementation, the processing module is further configured to: determine a second signal corresponding to the first signal based on the association between physical signals and logical signals, wherein the second signal is a logical signal used to indicate the first operation, the second signal is associated with one or more physical signals, the one or more physical signals including the first signal, and perform the first operation based on the value of the second signal and the signal parameter.

[0038] In one possible implementation, the processing module is further configured to: parse the messages contained in each of the M files, where M is a positive integer; obtain the position of the value of the signal parameter contained in each message; and establish an association between the message identifier and the position of the signal parameter value.

[0039] In one possible implementation, the processing module is further configured to: determine the operation indicated by the physical signal contained in each message, and associate the physical signal indicating the same operation with the same logical signal; and establish the association between the physical signal and the logical signal.

[0040] Thirdly, this application provides a communication device, which may include a processor and an interface circuit. The processor may be configured to support the communication device in executing the methods described in the first aspect or any one of the methods described above, and the interface circuit is used to support communication between the communication device and other devices. The interface circuit may be a transceiver, which may be an independent receiver, an independent transmitter, a transceiver with integrated transceiver functions, or a communication interface. Optionally, the communication device may further include a memory, which may be coupled to the processor and stores necessary program instructions and data for the communication device.

[0041] Fourthly, this application provides a vehicle that includes the communication device described in the second aspect or any one of the communication devices described in the second aspect; or, it includes the communication device described in the third aspect or any one of the communication devices described in the third aspect. The communication device described above is, for example, an in-vehicle device.

[0042] Fifthly, a computer-readable storage medium is provided for storing a computer program that, when run on a communication device, causes the communication device to perform the method provided in the first aspect above.

[0043] A sixth aspect provides a computer program product, including a computer program that, when run on a communication device, causes the communication device to perform the method described in the first aspect above.

[0044] The beneficial effects of the second to sixth aspects mentioned above are the same as those of the first aspect, and will not be repeated here. Attached Figure Description

[0045] Figure 1 This application provides a schematic diagram of the architecture of an in-vehicle system.

[0046] Figure 2 This application provides a schematic diagram of the architecture of an ECU system.

[0047] Figure 3 This application provides a schematic diagram of the internal architecture of an ECU.

[0048] Figure 4 A flowchart illustrating a communication method provided in an embodiment of this application;

[0049] Figure 5 A flowchart illustrating another communication method provided in an embodiment of this application;

[0050] Figure 6 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;

[0051] Figure 7This is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation

[0052] The following explanations cover some of the terms used in the embodiments of this application. It should be understood that these explanations are for the convenience of those skilled in the art and do not constitute a limitation on the scope of protection claimed in the embodiments of this application.

[0053] A DBC file is a database file used to describe the messages that each ECU can send and receive. A DBC file contains multiple messages, each of which includes a message identification (MsgId), a message length (MsgLen), and signal information, such as the signal name and the value of the signal parameters.

[0054] The technical solutions in the embodiments of this application will be described below with reference to the accompanying drawings. The terms "system" and "network" in the embodiments of this application can be used interchangeably. "At least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes 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, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, "at least one of a, b, or c" can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.

[0055] Unless otherwise stated, the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects and are not used to limit the order, sequence, priority or importance of multiple objects.

[0056] Furthermore, the terms "comprising" and "having" in the embodiments, claims, and drawings of this application are not exclusive. For example, a process, method, system, product, or device that includes a series of steps or modules is not limited to the listed steps or modules, but may also include steps or modules not listed.

[0057] See Figure 1 This is a schematic diagram of a possible vehicle system architecture provided in an embodiment of this application. The vehicle system includes a sensor system and an ECU system. The sensor system can collect data and input the collected data into the ECU system, which processes the received data.

[0058] Sensor systems include a variety of sensors, such as, but not limited to, the following: ultrasonic radar (USS), camera, pressure sensor, etc.

[0059] Ultrasonic radar is a type of radar that uses ultrasonic waves for detection. The working principle of ultrasonic radar is to calculate distance by measuring the time difference between when an ultrasonic transmitter emits ultrasonic waves and when a receiver receives them. Ultrasonic waves are vibrations with a frequency greater than 20,000 Hz. Their frequency (number of vibrations per second) is extremely high, exceeding the general upper limit of human hearing (20,000 Hz), and these inaudible sound waves are called ultrasonic waves.

[0060] Ultrasonic radar includes, but is not limited to, the following two types: The first type is mounted on the front and rear bumpers of a vehicle, used for measuring obstacles in front of and behind the vehicle; this type is known in the industry as ultrasonic parking assistant (UPA). The second type is mounted on the sides of the vehicle, used for measuring the distance to lateral obstacles; this type is known in the industry as automatic parking assistant (APA). UPA is a short-range ultrasonic sensor, mainly installed at the front and rear of the vehicle body, with a detection range of 25cm to 2.5m. Due to its long detection distance, it has less Doppler effect and temperature backlash interference, resulting in more accurate detection. APA is a long-range ultrasonic sensor, mainly used on the sides of the vehicle body, with a detection range of 35cm to 5m, covering a parking space. It has strong directionality, better propagation performance than UPA, and is less susceptible to interference from UPA and other APAs.

[0061] A camera, also known as a camera sensor, can be used to acquire images of the vehicle's surroundings. In this application, the camera may include any camera used to acquire images of the vehicle's environment, such as, but not limited to, infrared cameras and visible light cameras.

[0062] The pressure sensor in this embodiment includes any sensor used to detect user information, such as, but not limited to, a touch sensor located under the central control screen, a gravity sensor located under the seat, etc.

[0063] The ECU system can process data collected by various sensors in the sensor system. For example, the ECU system can make decisions about driving controlled components based on the obstacle distance detected by the lidar. These controlled components include, but are not limited to, speakers and the central control screen. For instance, when the ECU system determines that the vehicle is about to contact an obstacle (i.e., the distance between the vehicle and the obstacle is less than a threshold) based on the obstacle distance detected by the lidar, it drives the speaker to emit a warning message and / or displays a warning message on the central control screen.

[0064] In the embodiments of this application, the ECU system consists of multiple ECUs, which can communicate with each other. For example, each ECU is connected to a CAN bus, and the ECUs can communicate with each other based on the CAN bus.

[0065] An ECU can be implemented as any device or module with processing capabilities. For example, an ECU can be a central processing unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among these, a general-purpose processor can be a microprocessor or any conventional processor.

[0066] See Figure 2 Based on the functional division of each ECU, the ECUs in this embodiment include a mobile data center (MDC), a body control management (BCM), a cockpit domain controller (CDC), and a telematics box (TBOX), etc.

[0067] The MDC (Motor Control Center) is the core ECU of a vehicle. The MDC has computational and control functions; it can process data collected by various sensors and convert the results into control commands. These commands then control the operation of the controlled components. For example, the MDC sends control commands to the ECU corresponding to the controlled component, and the ECU drives the controlled component to operate according to the command.

[0068] MDC can also control memory, input / output interfaces and / or other external circuits; among which, memory includes, for example, read-only memory (ROM), flash memory, random access memory (RAM), and memory can store programs.

[0069] The BCM, also known as the body computer, is the ECU that controls the vehicle's electrical systems. Components controlled by the BCM include, but are not limited to: power windows, power mirrors, air conditioning, lights (such as headlights and turn signals), anti-theft locking systems, central locking, and defrosting devices. The BCM can connect to other onboard ECUs via the CAN bus.

[0070] The CDC (Control Unit) is the ECU used to control various components in a smart cockpit. Components in a smart cockpit include, but are not limited to, the following: instrument panel, central control panel (referred to as the central control screen), head-up display, microphone, camera, speaker (i.e., horn) or Bluetooth module, etc.

[0071] The TBOX is primarily used to communicate with backend systems or user devices' applications (APPs) to enable APP-related vehicle information display and control. The TBOX can use 3G cellular communication, such as Code Division Multiple Access (CDMA), EVDO, Global System for Mobile Communications (GSM) / General Packet Radio Service (GPRS), or 4G cellular communication, such as Long Term Evolution (LTE), or 5G cellular communication. The TBOX can also communicate via WiFi and Wireless Local Area Network (WLAN). In some embodiments, the TBOX can communicate directly with devices using infrared links, Bluetooth, or ZigBee. The TBOX can also communicate based on other wireless protocols, such as the Vehicle Dedicated Short Range Communications (DSRC) protocol, for example, to communicate directly with other vehicles and / or roadside stations.

[0072] Please see Figure 3 This is a schematic diagram of the internal architecture of an ECU provided in an embodiment of this application. It includes: a dynamic code generation unit, a communication unit, and a static logic processing unit.

[0073] The dynamic code generation unit is used to obtain M DBC files (such as...) Figure 3 The dynamic code generation unit (DBC-1, ..., DBC-M) retrieves the message information contained in each of the M DBC files and encodes them to obtain the DBC encoding information corresponding to each DBC file, where M is a positive integer. The message information can be, for example, a message identifier, and the encoding information can uniquely identify vehicle model information. Optionally, the dynamic code generation unit includes a script tool. The dynamic code unit can import the obtained M DBC files into the script tool, and the script tool encodes the M DBC files to obtain the DBC encoding information corresponding to each DBC file.

[0074] After receiving the message information and DBC encoding information, the dynamic code generation unit can establish an association between the message information and the DBC encoding information to obtain an association table. Optionally, when establishing the association between the message information and the DBC encoding information, the dynamic code generation unit can also determine whether there are identical message identifiers. If so, the DBC encoding information corresponding to the identical message identifiers is merged. Optionally, the dynamic code generation unit can store the obtained association table in the ECU's ROM.

[0075] The communication unit is used to receive messages from other ECUs on the CAN bus.

[0076] The static logic processing unit is used to obtain the association table generated by the dynamic code unit, and determine whether the message received from the CAN bus exists in the current vehicle model based on the association table generated by the dynamic code generation unit and the current vehicle model information, that is, whether the message is included in the DBC file corresponding to the current vehicle model.

[0077] In the above technical solution, the code generation unit establishes an association between message information and different DBC encoding information, enabling the static logic processing unit to adapt to different vehicle models based on this association. This allows only one software version to be developed for different models of the same vehicle, thus improving the software version's versatility. Furthermore, when the communication unit receives messages from other ECUs via CAN, the static logic processing unit can determine whether the message needs parsing based on the association generated by the dynamic code generation unit, without needing to load the DBC file. This shortens the time required to determine whether message parsing is necessary, improving communication and message parsing efficiency.

[0078] Based on the above, the method provided in the embodiments of this application will be described below with reference to the accompanying drawings.

[0079] Please refer to Figure 4This application provides a communication method that can be executed by a communication device. This communication device can implement the functions of the communication method provided in this application through hardware modules executing corresponding software. Firstly, the communication device is, for example, a... Figure 2 Any of the ECUs shown, Figure 3 The ECU shown is an ECU or a chip or other device located within the ECU. The following embodiments use the method of loading software 1 into the ECU to implement the functions of the communication method provided in this application as an example.

[0080] S401: The first ECU receives the first message.

[0081] The first message is identified by a first identifier, used to instruct the first vehicle to perform a first operation. The first ECU is an ECU installed on the first vehicle. The first operation may include, for example, closing a window, starting the ignition, adjusting the air conditioning temperature, or adjusting the speed. Optionally, the first message may be a message received by the first ECU (e.g., its driver layer) from another ECU on the CAN bus. For example, the first message may be a first message received by the first ECU from a second ECU on the CAN bus, or it may be a message received by the first ECU from the main controller on the CAN bus.

[0082] S402: The first ECU determines the first vehicle model information corresponding to the first identifier based on the first association relationship between the message identifier and the vehicle model information.

[0083] Optionally, before the first ECU determines the first vehicle model information corresponding to the first identifier, it can also establish an association between the message identifier and the vehicle model information.

[0084] The first ECU can obtain M files from the ROM, where the M files are, for example, DBC files. These M DBC files correspond to some or all models of the same vehicle, with M being a positive integer. The first ECU can encode each of the M DBC files using a first encoding method to obtain DBC encoding information corresponding to each DBC file. This DBC encoding information can uniquely indicate the vehicle type (CarType). Therefore, optionally, the first ECU can use the encoding information of each DBC file as the vehicle type information of the corresponding vehicle. It should be understood that there may be significant functional differences between some models of the same vehicle. Therefore, different software versions can be developed for models with significant functional differences. For example, two software versions can be developed for the same vehicle, so that one software version can be used only to adapt to a portion of the DBC files.

[0085] For example, when the first ECU encodes the DBC file, it can use one bit per byte to represent the vehicle model information. Taking a certain car model including model 1 and model 2 (i.e., M=2) as an example, the DBC file corresponding to model 1 is DBC1, and the DBC file corresponding to model 2 is DBC2. The first ECU encodes DBC1 and DBC2 respectively, obtaining the DBC encoding information of model 1 as 00000001 and the DBC encoding information of model 2 as 00000010. The first ECU can use 00000001 as the vehicle model information of model 1 and 00000010 as the vehicle model information of model 2. Optionally, when using bits per byte to represent vehicle model information, since one vehicle model may need to occupy one bit, if M>8, the vehicle model information can be represented using 2 bits; if M>16, the vehicle model information can be represented using 3 bits, and so on. It should be understood that the above encoding method is only an example and is not intended to limit the embodiments of this application. For example, the first ECU can also be encoded by other encoding methods, as long as the encoded information obtained by the encoding method can uniquely indicate the vehicle model.

[0086] Optionally, the first ECU can also obtain the message identifiers (MsgId) of all messages contained in each DBC file, and establish an association between the message identifiers and the vehicle model information corresponding to each DBC file. Optionally, this association can be represented by an association table or any other form that can represent the association. This application embodiment does not limit the form in which the association exists. In the following embodiments, the association between the message identifiers and the vehicle model information is represented by a first association table as an example.

[0087] For example, DBC1 includes three messages with message identifiers of 0x1FE, 0x46F, and 0x35F, respectively. The vehicle model information corresponding to DBC1 is 00000001. DBC2 includes two messages, 0x2C1 and 0x35F, respectively. The vehicle model information corresponding to DBC2 is 00000010. The resulting first association table is shown in Table 1.

[0088] Table 1

[0089] 0x1FE 00000001 0x46F 00000001 0x35F 00000001 0x2C1 00000010 0x35F 00000010

[0090] Among them, the model 2 corresponding to DBC2 is the model after the version update of model 1 corresponding to DBC1. For example, model 1 is the 2022 version and model 2 is the 2023 version. The 2023 version adds the function of reversing camera compared to the 2022 version, while other functions remain unchanged. Therefore, the DBC file corresponding to the 2022 model and the DBC file corresponding to the 2023 model may contain the same message, such as the message identified as 0x35F in Table 1. The operation indicated by this message is, for example, closing the window.

[0091] Alternatively, the model 2 corresponding to DBC2 and the model 1 corresponding to DBC1 may be two different configurations of the same car. For example, model 2 may be a high-end version and model 1 may be a low-end version. However, both the high-end and low-end models have the function of closing the windows. That is, both DBC1 and DBC2 contain messages that indicate the operation of closing the windows. In order to reduce the differences between different DBC files, the messages that indicate the same operation can be contained in different DBC files. In other words, the DBC files corresponding to different models can contain the same messages.

[0092] Optionally, when establishing the first association table, the first ECU can also determine whether at least two of the M DBC files contain the same message. For example, the first ECU can determine whether at least two of the M DBC files contain a message identified by the same message identifier. If at least two DBC files contain a message identified by a third identifier, the first ECU can also associate the third identifier with the same vehicle model information, so that the same vehicle model information can be matched with the vehicle models corresponding to the at least two DBC files.

[0093] Optionally, the first ECU can associate the third identifier with the same vehicle model information. For example, the first ECU can merge the vehicle model information corresponding to at least two DBC files and associate the third identifier with the merged vehicle model information. The process of the first ECU merging the vehicle model information corresponding to at least two DBC files can be, for example, a bitwise OR operation or a concatenation operation. By merging the vehicle model information corresponding to the same message identifier, the storage space occupied by the first association table can be reduced.

[0094] Taking Table 1 as an example, both DBC1 and DBC2 include a message with the message identifier 0x35F. The first ECU can perform an OR operation on the vehicle model information of DBC1 and DBC2 to obtain the merged vehicle model information. The OR operation process is as follows: CarType1|CarType2=00000001|00000010=00000011. The first ECU associates the message identifier 0x35F with 00000011. The first association table obtained by associating the same message identifier with the same vehicle model information is shown in Table 2.

[0095] Table 2

[0096] 0x1FE 00000001 0x46F 00000001 0x2C1 00000010 0x35F 00000011

[0097] In Table 2, 00000001 is associated with 0x1FE and 0x46F, 00000010 is associated with 0x2C1, and 00000011 is associated with 0x35F. Therefore, it can be concluded that a vehicle model information can be associated with at least one message identifier, and a vehicle model information can be matched with at least one vehicle model. For example, 00000011 is obtained by merging the vehicle model information of 00000001 and 00000010. Therefore, 00000011 can be matched with the vehicle model corresponding to 00000001 and the vehicle model corresponding to 00000010.

[0098] Optionally, after obtaining the first association table, the first ECU can store the first association table in ROM.

[0099] Optionally, the first association table may also include message length (MsgLen), which can be used for preliminary filtering of received messages. For example, when the first ECU receives message 1, it can determine the message length of message 1. If the message length of message 1 is different from the message length corresponding to message identifier 1 of message 1 in the first association table, the first ECU can directly discard message 1. Taking Table 2 as an example, the first association table including message length is shown in Table 3:

[0100] Table 3

[0101] 0x1FE 8 00000001 0x46F 8 00000001 0x2C1 8 00000010 0x35F 8 00000011

[0102] The first ECU can process corresponding communication services based on the first association table. For example, the first ECU can determine the first vehicle model information corresponding to the first identifier based on the first association in the first association table.

[0103] Taking Table 2 as an example, if the first identifier is 0x35F, then the first association containing the first identifier is the association shown in the fifth row of Table 2. The first ECU determines the first vehicle information corresponding to the first identifier as 00000011 based on the first association.

[0104] Optionally, after determining the first vehicle model information, the first ECU can also determine whether the first vehicle model information matches the vehicle model of the first vehicle. For example, the first ECU can obtain the vehicle model information of the first vehicle from the vehicle configuration items in the ROM, determine whether the first vehicle model information contains the vehicle model information of the first vehicle, and determine the next execution step based on the determination result. For example, the first ECU can perform a bitwise AND operation between the obtained vehicle model information and the first vehicle model information. If the result is not 0, it means that the first vehicle model information includes the vehicle model information of the first vehicle, and S403 can be executed. If the result is 0, it means that the first vehicle model information does not include the vehicle model information of the first vehicle, and S404 can be executed. It should be understood that the current vehicle model information can also be obtained by encoding the DBC file corresponding to the vehicle using the first encoding method.

[0105] For example, the vehicle model information of the first vehicle obtained by the first ECU is 00000010. The first ECU performs a bitwise AND operation between the vehicle model information and the vehicle model information 00000011: 00000010&00000011=00000010. The result of the operation is 00000010, which means the result is not 0. Therefore, the first ECU can execute S403.

[0106] For example, if the vehicle model information of the first vehicle obtained by the first ECU is 00000100, the first ECU performs a bitwise AND operation between the vehicle model information and the vehicle model information 00000011: 00000100&00000011=00000000, and the result is 0, the first ECU can execute S404.

[0107] S403: The first ECU parses the first message.

[0108] For example, the first ECU can determine the value of the signal parameter of the first signal contained in the first message based on the association between the message identifier and the location of the signal parameter value. The first signal is, for example, a physical signal used to indicate the execution of a first operation. Therefore, optionally, before determining the value of the signal parameter of the first signal contained in the first message based on the association between the message identifier and the location of the signal parameter value, the first ECU can also establish the association between the message identifier and the location of the signal parameter value.

[0109] Optionally, after acquiring M DBC files, the first ECU can also acquire the messages contained in each of the M DBC files, and parse all messages contained in each DBC file to determine the location of the signal parameter values ​​of the signals contained in each message. The location of the signal parameter values ​​can be indicated, for example, by the signal's start position (StartBit) and length (BitLen). The first ECU can establish an association between the message identifier and the location of the signal parameter values ​​based on the message identifier of each message and the start position and length corresponding to the value of each contained signal parameter. Optionally, this association can be represented by an association table or any other form that can represent an association. This application embodiment does not limit the form in which the association exists. In the following embodiments, the association between the message identifier and the location of the signal parameter values ​​represented by a second association table is used as an example for explanation.

[0110] Taking the messages included in Table 2 as an example, the second association table obtained by the first ECU to characterize the location of the message identifier and the value of the signal parameter is shown in Table 4:

[0111] Table 4

[0112] 0x1FE 8 8 0x46F 8 16 0x2C1 16 8 0x35F 8 16

[0113] The first ECU can determine the starting position and length corresponding to the value of the signal parameter contained in the first message based on the second association table, and obtain the value of the signal parameter of the first signal from the first message based on the starting position and length of the signal parameter.

[0114] Optionally, after the first ECU parses the first message to obtain the value of the signal parameter of the first signal contained in the first message, it can perform a first operation based on the value of the signal parameter. For example, the first operation is a temperature adjustment operation. The first message is 0x1FE. The first ECU can obtain the data of bits 8 to 15 from the first message. Based on the data, the value of the signal parameter (i.e., temperature) of the first signal is obtained as 25°C. The first ECU can determine the current temperature. If the current temperature is lower than 25°C, it controls the air conditioner to heat until the current temperature is determined to be 25°C and then stops heating. If the current temperature is higher than 25°C, it controls the air conditioner to cool until the current temperature is determined to be 25°C and then stops cooling.

[0115] Optionally, the first ECU can also establish an association between physical signals and logical signals. For example, after parsing all messages contained in the M DBC files, the first ECU can obtain the signal name (name) contained in each message and determine the operation indicated by the signal name. For example, a signal named "power" or "power mode" is a signal used to indicate ignition operation, and a signal named "speed" is a signal used to indicate speed adjustment. The first ECU can establish an association between the physical signal and the logical signal based on the operation indicated by the signal name. Optionally, this association can be represented by an association table or any other form that can represent the association. This application embodiment does not limit the form in which the association exists. In the following embodiments, the association between physical signals and logical signals is represented by a third association table as an example.

[0116] The third correlation table obtained by the first ECU to characterize the relationship between physical signals and logic signals is shown in Table 5:

[0117] Table 5

[0118] power ignition power mode ignition speed Speed

[0119] Among them, power and power mode are both signals used to indicate ignition, so the ignition signal is associated with these two physical signals.

[0120] Optionally, when the first ECU parses the first message, it can also obtain the signal name of the first signal contained in the first message, and determine the logical signal corresponding to the first signal (e.g., the second signal) based on the association shown in Table 4. Optionally, each logical signal has a corresponding RAM space for storing the instructions of the operation it indicates. Taking the ignition signal as an example, the RAM space corresponding to the ignition signal stores the instructions for the ignition operation.

[0121] Optionally, after obtaining the signal parameter value of the first signal based on the second association table, the first ECU can also write the obtained value into the RAM space corresponding to the second signal. The first ECU (e.g., the application layer of the first ECU) can access the RAM space corresponding to the second signal to obtain the stored instructions and signal parameter values, and perform corresponding operations based on the instructions and signal parameter values. Taking the second signal as a temperature signal as an example, after the first ECU obtains the signal parameter value of 25°C based on the second association table, it can write the temperature into the RAM space corresponding to the temperature signal. The first ECU can access the RAM space to obtain the temperature value and temperature adjustment instructions, and adjust the temperature based on the temperature adjustment instructions and temperature value.

[0122] Optionally, the third association table may also include a message identifier, which is used by the first ECU to determine the logical signal corresponding to the physical signal included in the message, and the RAM space corresponding to the logical signal, based on the message identifier when determining that a message needs to be parsed and received. For example, Table 6 shows the third association table containing message identifiers, as shown in Table 5.

[0123] Table 6

[0124] power 0x1FE ignition power mode 0x2C1 ignition speed 0x35F Speed

[0125] For example, if the first identifier corresponding to the first message is 0x1FE, when the first ECU determines that the first message needs to be parsed, it determines that the logic signal corresponding to the first identifier is the ignition signal according to the third association table, without needing to obtain the signal name (power) contained in the first message. This shortens the time for determining the logic signal and helps improve vehicle control efficiency.

[0126] S404: The first ECU discards the first message.

[0127] Optionally, if software 1 is installed in the ECU of the second vehicle (e.g., the third ECU), when the third ECU receives the first message, the third ECU can determine the first vehicle model information corresponding to the first identifier based on the first association in the first association table, and determine whether the first vehicle model information can match the vehicle model of the second vehicle. If the first vehicle model information can match the vehicle model of the second vehicle, for example, if the result of the AND operation between the second vehicle model information and the first vehicle model information is not 0, then the third ECU can parse the first message. If the first vehicle model information does not match the vehicle model of the second vehicle, for example, if the result of the AND operation between the second vehicle model information and the first vehicle model information is 0, then the third ECU can discard the message. It should be understood that if the third ECU needs to parse the first message, the process of parsing the first message by the third ECU can refer to the process of parsing the first message by the first ECU, and will not be elaborated here.

[0128] Optionally, if the first ECU receives a third message, the message identifier of which is the second identifier, and this third message is used to instruct the first vehicle to perform a third operation, the first ECU can determine the second vehicle model information corresponding to the second identifier based on the second association in the first association table. If the second vehicle model information matches the vehicle model of the first vehicle, the first ECU can parse the third message; if the second vehicle model information does not match the vehicle model of the first vehicle, the first ECU can discard the third message. It should be understood that the first message and the third message used to instruct the first vehicle to perform the operation come from the same DBC file, and the first vehicle model information and the second vehicle model information can be the same or different. For example, if at least two DBC files contain the first message, and only one DBC file (e.g., DBC1) contains the third message, then the first vehicle model information corresponding to the first identifier in the first association table is the vehicle model information obtained by merging the vehicle model information obtained by encoding the at least two DBC files, while the second vehicle model information corresponding to the second identifier is the vehicle model information obtained by encoding DBC1. That is, the first vehicle model information corresponding to the first identifier and the second vehicle model information corresponding to the second identifier in the first association table are different. If the DBC files containing the first and third messages are the same, for example, only DBC1 contains the first and third messages, or both DBC1 and DBC2 contain the first and third messages, and other DBC files do not contain the first and third messages, then the first vehicle model information corresponding to the first identifier and the second vehicle model information corresponding to the second identifier in the first association table are the same.

[0129] In the above technical solution, when the ECU communicates with other ECUs, it can determine whether the received message needs to be parsed by using the first association table stored in the ROM. If it is determined that the received message needs to be parsed according to the first association table, the message can be parsed based on the second association table, such as the value of the signal parameter contained in the message. The logic signal corresponding to the physical signal contained in the first message is determined according to the third association table, the RAM space corresponding to the logic signal is obtained, and the value of the signal parameter is written into the space of the logic signal. The ECU can access the RAM space to obtain the instruction and signal parameter value of the operation indicated by the message, and perform the corresponding operation based on the instruction and signal parameter value, thereby realizing communication with other ECUs. It does not require dynamic loading of DBC files, reduces the time for determining whether the received message needs to be parsed, and improves the efficiency of communication and message parsing.

[0130] To better understand the technical solution of this application, the communication method provided in this application will be explained and described below with reference to specific embodiments.

[0131] Please refer to Figure 5This is a flowchart illustrating an example of a communication method provided in an embodiment of this application.

[0132] S501: The drive layer of the first ECU receives the first message.

[0133] The message identifier of the first message is the first identifier, and the first message is used to instruct the first vehicle to perform an acceleration operation.

[0134] S502: The first ECU obtains the vehicle model information of the first vehicle.

[0135] The vehicle model information of the first vehicle can be pre-configured. For example, the first ECU can obtain the vehicle model information of the first vehicle from the vehicle configuration items in the ROM. Optionally, the vehicle model information can be information used to indicate the vehicle model of the first vehicle after encoding the DBC file corresponding to the vehicle model of the first vehicle using the first encoding method.

[0136] S503: The first ECU determines the first vehicle model information corresponding to the first identifier based on the first association relationship between the message identifier and the vehicle model information.

[0137] S504: The first ECU determines whether the first message needs to be parsed based on the vehicle model information and the first vehicle type information.

[0138] If the first vehicle model information determined according to the first association table includes the vehicle model information of the first vehicle obtained in S502, then the first ECU executes S505. If the first vehicle model information determined according to the first association table does not include the vehicle model information of the first vehicle obtained in S502, then S507 is executed.

[0139] S505: The first ECU obtains the value of the signal parameter of the acceleration signal contained in the first message based on the second association table, and determines the RAM of the logic signal corresponding to the acceleration signal based on the third association table, and writes the value of the signal parameter into the RAM.

[0140] The second association table represents the relationship between the message identifier and the location of the signal parameter value. For example, the acceleration signal value is the acceleration value, which can be determined by the force applied by the user pressing the accelerator pedal. The first ECU can determine from which position in the first message to retrieve the acceleration signal parameter value, and the bit length occupied by the signal parameter value, based on the second association table. Then, it retrieves the signal parameter value from the first message according to the starting position and bit length. Finally, it retrieves the RAM address of the logic signal corresponding to the acceleration signal based on the third association table representing physical and logical signals, and fills the RAM address with the signal parameter value.

[0141] S506: The application layer of the first ECU accesses the RAM, obtains the value of the signal parameter and the instruction for acceleration operation, and accelerates based on the value of the signal parameter and the instruction.

[0142] S507: The first ECU discards the first message.

[0143] In the above technical solution, when the first ECU receives a message in its drive layer, it determines whether the message needs to be parsed based on the association relationships included in the first association relationship table. When it is determined that the first message needs to be parsed, it parses the first message based on the second association relationship table to obtain the value of the signal parameter. Then, based on the third association relationship table, it writes the value of the signal parameter into the RAM of the corresponding logic signal, so that the application layer of the first ECU can directly access the RAM to perform the corresponding operation without dynamically loading the DBC file. It can also shield the differences between different physical signals and improve communication and message parsing efficiency.

[0144] It is understood that, in order to achieve the functions in the above embodiments, the communication device includes hardware structures and / or software modules corresponding to each function. Those skilled in the art should readily recognize that, based on the modules and method steps described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.

[0145] Based on the same technical concept, embodiments of this application also provide a communication device 600, which has the capability to implement... Figure 4 or Figure 5 The function of the method steps shown, for example, the communication device 600 includes functions for performing the above. Figure 4 or Figure 5 The function, module, unit, or means of the method steps shown can be implemented by software, hardware, or by hardware executing the corresponding software.

[0146] like Figure 6 As shown, the communication device 600 includes a communication module 601 and a processing module 602. Wherein,

[0147] The communication module 601 is used to receive a first message, the first message being identified as a first identifier, and the first message being used to instruct the first vehicle to perform a first operation;

[0148] The processing module 602 is used to determine the first vehicle model information corresponding to the first identifier based on the first association relationship between the message identifier and the vehicle model information; and to parse the first message based on the matching of the first vehicle model information with the vehicle model of the first vehicle.

[0149] In one possible implementation, the communication module 601 is further configured to receive a second message, the second message being identified by the first identifier, the second message being used to instruct a second vehicle to perform the first operation or the second operation, the second vehicle being a different model from the first vehicle; the processing module 602 is further configured to determine the first model information corresponding to the first identifier based on the first association relationship between the message identifier and the model information; and to parse the second message based on matching the first model information with the model of the second vehicle.

[0150] In one possible implementation, the communication module 601 is further configured to receive a third message, the third message being identified by a second identifier, the third message being used to instruct the first vehicle to perform a third operation; the processing module 602 is further configured to determine the second vehicle model information corresponding to the second identifier based on a second association relationship between the message identifier and vehicle model information; and to parse the third message based on matching the second vehicle model information with the vehicle model of the first vehicle.

[0151] In one possible implementation, the first vehicle model information is determined based on at least one vehicle model information corresponding to at least one message identified by the first identifier.

[0152] In one possible implementation, the processing module 602 is further configured to: determine M vehicle model information corresponding to M files, where M is a positive integer; obtain the message identifier contained in each of the M files; and establish an association relationship between the message identifier and the vehicle model information based on the M vehicle model information and at least one message identifier of at least one message contained in each of the M files, wherein the association relationship includes the first association relationship.

[0153] In one possible implementation, the processing module 602 is further configured to: determine, based on at least two messages identified by a third identifier in at least two of the M files, that the third identifier is associated with the same vehicle model information, wherein the same vehicle model information matches the vehicle model corresponding to the at least two files.

[0154] In one possible implementation, the M files are database manager (DBC) files.

[0155] In one possible implementation, the processing module 602 is further configured to: determine the value of the signal parameter of the first signal contained in the first message based on the association between the message identifier and the location of the signal parameter value, wherein the first signal is a physical signal used to indicate the first operation, and the location of the signal parameter value includes the start position and length of the signal.

[0156] In one possible implementation, the processing module 602 is further configured to: determine a second signal corresponding to the first signal based on the association between physical signals and logical signals, wherein the second signal is a logical signal used to indicate the first operation, the second signal is associated with one or more physical signals, the one or more physical signals including the first signal, and perform the first operation based on the value of the second signal and the signal parameter.

[0157] In one possible implementation, the processing module 602 is further configured to: parse the messages contained in each of the M files, where M is a positive integer; obtain the position of the value of the signal parameter contained in each message; and establish an association between the message identifier and the position of the value of the signal parameter.

[0158] In one possible implementation, the processing module 602 is further configured to: determine the operation indicated by the physical signal contained in each message, and associate the physical signal indicating the same operation with the same logical signal; and establish the association relationship between the physical signal and the logical signal.

[0159] It should be understood that the communication module 601 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components, and the processing module 602 can be implemented by a processor or processor-related circuit components.

[0160] Based on the above content and the same concept, such as Figure 7 As shown, this application also provides a communication device 700. The communication device 700 may include a processor 701 and a communication interface 702. It is understood that the communication interface 702 may be an interface circuit or an input / output interface. Optionally, the communication device 700 may further include a memory 703 for storing instructions executed by the processor 701, or storing input data required by the processor 701 to execute instructions, or storing data generated after the processor 701 executes instructions.

[0161] When the communication device 700 is used to implement Figure 4 or Figure 5 In the method shown, the processor 701 is used to execute the functions of the processing module 602 and to execute the functions of the communication module 601 through the communication interface 702.

[0162] Based on the same concept and content described above, this application also provides a vehicle that may include the communication device in any of the above embodiments. Further, optionally, the vehicle may also include other components, such as actuators, a vehicle body, etc.

[0163] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.

[0164] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Alternatively, the ASIC can be located in a vehicle. Of course, the processor and storage medium can also exist as discrete components in a communication device.

[0165] This application also provides a computer program product, including a computer program that, when run on a computer, causes the computer to perform the methods described in the above embodiments.

[0166] This application also provides a computer storage medium storing a computer program, which, when executed by a computer, causes the computer to perform the methods provided in the above embodiments.

[0167] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. A computer program product includes one or more computer programs or instructions. When a computer program or instruction is loaded and executed on a computer, the processes or functions of the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, a computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video disc (DVD); or it can be a semiconductor medium, such as a solid-state drive (SSD).

[0168] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.

[0169] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A communication method, characterized in that, The method includes: Receive a first message, the first message being identified as a first identifier, the first message being used to instruct the first vehicle to perform a first operation; Based on the first association between the message identifier and the vehicle model information, the first vehicle model information corresponding to the first identifier is determined; wherein, the vehicle model information is obtained by encoding the database manager DBC file; Based on the matching of the first vehicle model information with the model of the first vehicle, the first message is parsed; Receive a second message, the second message being identified by the first identifier, the second message being used to instruct the second vehicle to perform the first operation or the second operation, the second vehicle being a different model from the first vehicle; Based on the first association relationship between the message identifier and the vehicle model information, the first vehicle model information corresponding to the first identifier is determined; Based on the matching of the first vehicle model information with the model of the second vehicle, the second message is parsed.

2. The method as described in claim 1, characterized in that, The method further includes: A third message is received, the third message being identified by the second identifier, and the third message being used to instruct the first vehicle to perform a third operation; The second vehicle information corresponding to the second identifier is determined based on the second association relationship between the message identifier and the vehicle information; The third message is parsed based on the matching of the second vehicle model information with the model of the first vehicle.

3. The method as described in claim 1, characterized in that, The first vehicle model information is determined based on at least one vehicle model information corresponding to at least one message identified by the first identifier.

4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Determine the M vehicle model information corresponding to M files, where M is a positive integer; Obtain the message identifier contained in each of the M files; Based on the M vehicle model information and at least one message identifier of at least one message included in the M files, an association relationship is established between the message identifier and the vehicle model information, wherein the association relationship includes the first association relationship.

5. The method as described in claim 4, characterized in that, The method further includes: Based on the fact that at least two of the M files contain at least two messages identified by a third identifier, it is determined that the third identifier is associated with the same vehicle model information, and the same vehicle model information matches the vehicle model corresponding to the at least two files.

6. The method as described in claim 4, characterized in that, The M files are Database Manager (DBC) files.

7. A communication device, characterized in that, The device includes: A communication module is used to receive a first message, the first message being identified as a first identifier, and the first message being used to instruct the first vehicle to perform a first operation; The processing module is used to determine the first vehicle model information corresponding to the first identifier based on the first association relationship between the message identifier and the vehicle model information; wherein, the vehicle model information is obtained by encoding the database manager DBC file; and to parse the first message by matching the first vehicle model information with the vehicle model of the first vehicle. The communication module is further configured to receive a second message, the second message being identified by the first identifier, the second message being used to instruct a second vehicle to perform the first operation or the second operation, the second vehicle being a different model from the first vehicle; The processing module is further configured to determine the first vehicle model information corresponding to the first identifier based on the first association relationship between the message identifier and the vehicle model information; and to parse the second message based on the matching of the first vehicle model information with the vehicle model of the second vehicle.

8. The apparatus as claimed in claim 7, characterized in that, The communication module is also used to receive a third message, the third message being identified by a second identifier, and the third message being used to instruct the first vehicle to perform a third operation; The processing module is further configured to determine the second vehicle model information corresponding to the second identifier based on the second association relationship between the message identifier and the vehicle model information; and to parse the third message based on the matching of the second vehicle model information with the vehicle model of the first vehicle.

9. The apparatus as claimed in claim 7, characterized in that, The first vehicle model information is obtained from N files containing the first message, where N is a positive integer.

10. The apparatus according to any one of claims 7 to 9, characterized in that, The processing module is also used for: Determine the M vehicle model information corresponding to M files, where M is a positive integer; Obtain the message identifier contained in each of the M files; Based on the M vehicle model information and at least one message identifier of at least one message included in the M files, an association relationship is established between the message identifier and the vehicle model information, wherein the association relationship includes the first association relationship.

11. The apparatus as claimed in claim 10, characterized in that, The processing module is also used for: Based on at least two messages identified by a third identifier in at least two of the M files, it is determined that the third identifier is associated with the same vehicle model information, and the same vehicle model information matches the vehicle model corresponding to the at least two files.

12. The apparatus as claimed in claim 10, characterized in that, The M files are Database Manager (DBC) files.

13. A communication device, characterized in that, include: Processor, memory, and one or more programs; The one or more programs are stored in the memory, and the one or more programs include instructions that, when executed by the processor, cause the electronic device to perform the method steps as described in any one of claims 1 to 6.

14. A vehicle, characterized in that, Includes the apparatus as described in any one of claims 7 to 12.

15. A computer-readable storage medium, characterized in that, The readable storage medium is used to store instructions that, when executed, cause the method as described in any one of claims 1 to 6 to be implemented.

Citation Information

Patent Citations

  • Vehicle identification method and device

    CN105374083A

  • Internet of Vehicles signal adaptation method and related device

    CN111464413A