Vehicle mileage data processing method, controller, medium, and vehicle

By using the main controller and auxiliary controller to process vehicle mileage data together, the calculation error caused by abnormal vehicle speed signals is solved, achieving higher accuracy and stability.

WO2025246091A1PCT designated stage Publication Date: 2025-12-04DONGFENG MOTOR GRP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/120305
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-29
Filing Date
2024-09-23
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

In the processing of vehicle mileage data, abnormal vehicle speed signals acquired by the controller lead to abnormal calculation results, affecting user experience and accuracy.

Method used

Multiple controllers (main controller and auxiliary controller) jointly receive the vehicle speed signal from the CAN bus, calculate the single driving mileage, select the optimal single driving mileage as the current single driving mileage, and update the total driving mileage data through the main controller.

Benefits of technology

This improves the accuracy and stability of vehicle mileage data processing, avoids data loss due to controller replacement or damage, and ensures accurate updates of total mileage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024120305_04122025_PF_FP_ABST
    Figure CN2024120305_04122025_PF_FP_ABST
Patent Text Reader

Abstract

A vehicle mileage data processing method, a controller, a medium, and a vehicle. The method comprises: in response to a vehicle switching from the current startup state to a shutdown state, acquiring total mileage of the vehicle up to the previous switching from the startup state to the shutdown state; a main controller (101) and auxiliary controllers (102) each calculating single mileage of the vehicle in the current startup state and a mileage upper limit value of the vehicle in the current startup state; selecting, as the current single mileage, the maximum single mileage smaller than or equal to the mileage upper limit value from the single mileage calculated by the main controller (101) and the auxiliary controllers (102); on the basis of the current single mileage, updating the total mileage of the vehicle up to the previous switching from the startup state to the shutdown state; and storing the updated total mileage.
Need to check novelty before this filing date? Find Prior Art

Description

Vehicle mileage data processing methods, controllers, media, and vehicles Cross-reference to related applications

[0001] This application is based on Chinese Patent Application No. CN202410677547.9, filed on May 29, 2024, and claims priority to that Chinese Patent Application, the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application belongs to the field of vehicle data processing technology, and in particular relates to a method for processing vehicle mileage data, a controller, a medium, and a vehicle. Background Technology

[0003] Currently, the vehicle mileage displayed on the vehicle's central control screen is generally calculated by a controller based on the acquired vehicle speed signal. When the vehicle is turned off, the controller stores the calculated mileage. When the vehicle is started, the controller reads the stored mileage and displays it on the central control screen. However, if the vehicle speed signal acquired by the controller is abnormal, the calculated mileage will be incorrect, resulting in an incorrect mileage displayed on the central control screen, affecting the user's perception and experience. Therefore, improving the accuracy of vehicle mileage data processing is an urgent technical problem to be solved. Summary of the Invention

[0004] The embodiments of this application provide a vehicle mileage data processing method, a main controller, an auxiliary controller, a computer program product, a computer storage medium, and a vehicle, thereby improving the accuracy of vehicle mileage data processing to at least a certain extent.

[0005] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part from practice of this application.

[0006] According to a first aspect of the present application, a vehicle mileage data processing method is provided. The vehicle includes a main controller and at least one auxiliary controller. The method is executed on the main controller and includes: in response to the vehicle switching from a current start state to a stop state, obtaining the total mileage of the vehicle up to the last time it switched from the start state to the stop state; obtaining the single mileage of the vehicle in the current start state calculated by the main controller and each of the auxiliary controllers respectively; obtaining an upper limit value of the mileage of the vehicle in the current start state, and selecting the largest single mileage less than or equal to the upper limit value from the single mileages calculated by the main controller and each of the auxiliary controllers respectively, as the current single mileage; updating the total mileage of the vehicle up to the last time it switched from the start state to the stop state based on the current single mileage, and storing the updated total mileage as the total mileage of the vehicle up to the current time it switched from the start state to the stop state.

[0007] According to a second aspect of the embodiments of this application, a main controller is provided, the main controller being used to execute the method described in the first aspect of the embodiments of this application.

[0008] According to a third aspect of the embodiments of this application, a vehicle mileage data processing method is provided. The vehicle includes a main controller as described in the second aspect of the embodiments of this application and at least one auxiliary controller. The method is executed on any one of the auxiliary controllers. The method includes: in response to the vehicle switching from a current start state to a stop state, obtaining the total mileage updated by the main controller and updating the total mileage of the vehicle up to the last time it switched from the start state to the stop state; determining whether the total mileage updated by the main controller is a valid value; if the total mileage updated by the main controller is a valid value, storing the total mileage updated by the main controller as the total mileage of the vehicle up to the current start state to the stop state; if the total mileage updated by the main controller is an invalid value, determining whether the total mileage updated by any one of the auxiliary controllers is a valid value; if the total mileage updated by any one of the auxiliary controllers is a valid value, storing the total mileage updated by any one of the auxiliary controllers as the total mileage of the vehicle up to the current start state to the stop state.

[0009] According to a fourth aspect of the embodiments of this application, an auxiliary controller is provided, the auxiliary controller being used to perform the method described in the third aspect of the embodiments of this application.

[0010] According to a fifth aspect of the embodiments of this application, a computer program product is provided, the computer program product including computer instructions stored in a computer-readable storage medium and adapted to be read and executed by a processor to cause a computer device having the processor to perform the methods described in the first and third aspects of the embodiments of this application.

[0011] According to a sixth aspect of the present application, a computer-readable storage medium is provided, wherein computer program instructions are stored therein, the computer program instructions being loaded and executed by a processor to perform the operations performed by the methods described in the first and third aspects of the present application.

[0012] According to a seventh aspect of the present application, a vehicle is provided, the vehicle including a main controller as described in a second aspect of the present application and at least one auxiliary controller as described in a fourth aspect of the present application.

[0013] Based on the technical solution proposed in this application, compared to existing solutions that update the total mileage data of a vehicle through only one controller, this application improves the accuracy of vehicle mileage data processing by using multiple controllers (i.e., one main controller and multiple auxiliary controllers) to jointly update the total mileage data. Specifically, since communication between various devices in the vehicle is mainly based on the CAN bus during each trip, data transmission loss or inaccuracies are prone to occur. For example, controllers obtain vehicle speed data from the vehicle's CAN bus. Due to the possibility of abnormalities in the vehicle speed signal received from the CAN bus, the accuracy of the single-trip mileage calculated by the controller based on the vehicle speed data obtained from the CAN bus cannot be guaranteed, which in turn leads to the inaccuracy of the total mileage updated based on the obtained single-trip mileage. This application addresses this by having multiple controllers simultaneously receive the vehicle speed signal from the CAN bus, and each controller calculates the single-trip mileage based on the obtained vehicle speed signal. Then, the main controller selects the optimal single-trip mileage from the calculations of all controllers as the current single-trip mileage, ensuring that the final determined single-trip mileage is calculated based on the most accurate vehicle speed signal. This improves the accuracy of the current single-trip mileage, thereby improving the accuracy of the total vehicle mileage updated based on the current single-trip mileage, and further improving the accuracy of vehicle mileage data processing.

[0014] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0015] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application. It is obvious that the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort. In the drawings:

[0016] Figure 1 shows a block diagram of the vehicle in an embodiment of this application;

[0017] Figure 2 shows a flowchart of a vehicle mileage data processing method according to an embodiment of this application;

[0018] Figure 3 shows an overall flowchart of the main controller processing vehicle mileage data according to an embodiment of this application;

[0019] Figure 4 shows a flowchart of another vehicle mileage data processing method in an embodiment of this application;

[0020] Figure 5 shows a flowchart of the auxiliary controller processing vehicle mileage data according to an embodiment of this application;

[0021] Figure 6 shows a flowchart of the auxiliary controller processing vehicle mileage data according to an embodiment of this application;

[0022] Figure 7 shows a flowchart of the main controller and auxiliary controller jointly processing vehicle mileage data according to an embodiment of this application;

[0023] Figure 8 shows a schematic diagram of the structure of the main controller or auxiliary controller in an embodiment of this application. Detailed Implementation

[0024] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0025] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced without one or more of the specific details, or other methods, components, apparatuses, steps, etc., can be employed. In other instances, well-known methods, apparatuses, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.

[0026] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.

[0027] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.

[0028] In the description of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, unless otherwise stated, "multiple" means two or more.

[0029] To enable those skilled in the art to better understand this application, the vehicle involved in this application will be briefly described first with reference to FIG1, using a specific embodiment.

[0030] Referring to Figure 1, a block diagram of a vehicle in an embodiment of this application is shown.

[0031] Specifically, the vehicle 100 shown in Figure 1 includes a main controller 101 and at least one auxiliary controller 102. The main controller 101 may be the vehicle's ECU controller, and the auxiliary controller 102 may be the vehicle's VIU controller. In this application, the main controller 101 and each auxiliary controller 102 can communicate with each other, and the main controller 101 and each auxiliary controller 102 can obtain vehicle speed signals from the vehicle's CAN bus.

[0032] The implementation details of the technical solutions in the embodiments of this application are described in detail below:

[0033] Referring to Figure 2, a flowchart of a vehicle mileage data processing method according to an embodiment of this application is shown. The vehicle may include a main controller and at least one auxiliary controller. The vehicle mileage data processing method can be executed by a device with computing capabilities, such as the main controller. Referring to Figure 1, the vehicle mileage data processing method includes at least steps 210 to 240, which are described in detail below:

[0034] In step 210, in response to the vehicle switching from the current start state to the stop state, the total mileage of the vehicle up to the last time it switched from the start state to the stop state is obtained.

[0035] In this application, it should be noted that when the vehicle is started, or when the vehicle's power button is turned on, or when the vehicle is engaged in forward / reverse gear, the vehicle can be considered to be in a starting state; when the vehicle is turned off, or when the vehicle's power button is turned off, or when the vehicle is engaged in P gear, the vehicle can be considered to be in a stopped state.

[0036] In this application, when the vehicle is detected to switch from its current start state to a stop state, the main controller can obtain the total mileage driven by the vehicle up to the last time it switched from the start state to the stop state. Specifically, obtaining the total mileage driven by the vehicle up to the last time it switched from the start state to the stop state can be performed according to the following steps 211 to 213:

[0037] Step 211: Obtain and determine whether the total mileage stored in the main controller is a valid value.

[0038] Step 212: If the total mileage stored in the main controller is a valid value, then the total mileage stored in the main controller is used as the total mileage of the vehicle up to the last time it switched from the start state to the stop state.

[0039] Step 213: If the total mileage stored in the main controller is invalid, then the total mileage stored in the auxiliary controller shall be used as the total mileage of the vehicle up to the last time it switched from the start state to the stop state.

[0040] In this application, it should be noted that each time the vehicle switches from a started state to a stopped state, its main controller and each auxiliary controller update and store the total mileage. However, if the main controller is replaced or damaged, the total mileage stored by the main controller when the vehicle last switched from a started state to a stopped state may be lost, meaning the total mileage stored in the main controller is abnormal, such as being 0. Therefore, this application, when the vehicle switches from the current started state to a stopped state, after obtaining the total mileage stored in the main controller, further determines whether the total mileage stored in the main controller is a valid value.

[0041] If the total mileage stored in the main controller is a valid value, it indicates that there is no abnormality in the total mileage stored in the main controller. In this case, the total mileage stored in the main controller is taken as the total mileage of the vehicle up to the last time it switched from the start state to the stop state. If the total mileage stored in the main controller is an invalid value, it indicates that there is an abnormality in the total mileage stored in the main controller. In this case, the total mileage stored in the auxiliary controller can be taken as the total mileage of the vehicle up to the last time it switched from the start state to the stop state.

[0042] In this application, it should be noted that if the total mileage stored in the auxiliary controller is an invalid value, then the total mileage of the vehicle up to the last time it switched from the start state to the stop state can be defined as an invalid value.

[0043] In step 220, the single-trip mileage of the vehicle in the current startup state is obtained by the main controller and each of the auxiliary controllers respectively.

[0044] In this application, when the vehicle is in the start-up state, the main controller and each auxiliary controller calculate the single-trip mileage of the vehicle in the current start-up state in real time. Specifically, obtaining the single-trip mileage of the vehicle in the current start-up state calculated by the main controller and each of the auxiliary controllers can be performed according to the following steps 221 to 222:

[0045] Step 221: When the vehicle is detected to be in the starting state, read the vehicle speed signal value at each moment in real time.

[0046] Step 222: Calculate and update the single-trip mileage of the vehicle in the current start state in real time based on the vehicle speed signal value at each moment, until the vehicle is detected to switch from the current start state to the stop state.

[0047] In this application, a sensor is configured in the vehicle to collect vehicle speed signal values. When the vehicle is detected to be in a running state, the sensor collects the vehicle speed signal value, for example, every 10ms. The collected vehicle speed signal value is transmitted to the CAN bus, and the main controller and each auxiliary controller read the vehicle speed signal value at each moment from the CAN bus in real time.

[0048] After reading the vehicle speed signal value, the main controller and each auxiliary controller can calculate and update the vehicle's single-trip mileage in the current startup state in real time based on the vehicle speed signal value at each moment, until the vehicle is detected to have switched from the startup state to the stationary state. Specifically, a vehicle speed-time curve can be constructed based on the read vehicle speed signal value and the corresponding read time. Then, the integral of the constructed vehicle speed-time curve is taken to obtain the single-trip mileage in the current startup state. It can be understood that the higher the frequency of reading the vehicle speed signal value, the more accurate the calculated single-trip mileage of the vehicle in the current startup state.

[0049] In this application, after reading the vehicle speed signal value at each moment in real time, the following steps 2211 to 2212 can also be performed:

[0050] Step 2211: Determine whether the vehicle speed signal value at each moment is a valid value.

[0051] Step 2212: If the vehicle speed signal value at any given time is invalid, then the vehicle speed signal value at any given time is assigned to 0.

[0052] It should be noted that during the real-time reading of vehicle speed signal values ​​from the CAN bus by the main controller and various auxiliary controllers, abnormal readings of vehicle speed signal values ​​may occur due to various reasons. For example, no vehicle speed signal value may be read, or the read vehicle speed signal value may be abnormally high. If an abnormal vehicle speed signal value is read at any time, it is determined to be an invalid value, and the vehicle speed signal value at that moment can be set to 0.

[0053] In step 230, the upper limit of the vehicle's mileage in the current start-up state is obtained, and the maximum single mileage less than or equal to the upper limit of the mileage is selected from the single mileage calculated by the main controller and each of the auxiliary controllers, and used as the current single mileage.

[0054] In this application, obtaining the maximum mileage of the vehicle in its current startup state can be performed according to the following step 231:

[0055] Step 231: Obtain a pre-set mileage value as the upper limit of the vehicle's mileage in the current startup state. In this step, the maximum mileage of the vehicle when it is fully charged or fully fueled can be used as the upper limit of the vehicle's mileage in the current startup state.

[0056] In this application, obtaining the upper limit of the vehicle's driving mileage in the current startup state can also be performed according to the following step 232:

[0057] Step 232: Obtain the fuel / electricity consumption of the vehicle in the current startup state, and determine the upper limit of the vehicle's driving range in the current startup state based on the fuel / electricity consumption. In this step, the fuel / electricity consumption of the vehicle under preset operating conditions (such as highway conditions) can be tested in advance, and the upper limit of the vehicle's driving range in the current startup state can be calculated based on the fuel / electricity consumption and the fuel / electricity consumption values.

[0058] In this application, step 232 may also be performed:

[0059] Step 233: If the single-trip mileage calculated by the main controller and each of the auxiliary controllers is greater than the upper limit of the mileage, then the current single-trip mileage is determined to be 0.

[0060] It is understandable that if the mileage of a single trip is greater than the upper limit of the mileage, it indicates that there is an anomaly in the calculated mileage of a single trip, and in this case, the current mileage of a single trip can be defined as 0.

[0061] In this application, the main controller and each of the auxiliary controllers calculate the single-trip mileage of the vehicle in the current start-up state based on the vehicle speed signal values ​​read at each time. Since each controller may experience abnormal reading of the vehicle speed signal value, in this application, the accuracy of the current single-trip mileage can be guaranteed by selecting the maximum single-trip mileage less than or equal to the upper limit value of the mileage from the single-trip mileage calculated by the main controller and each of the auxiliary controllers.

[0062] In step 240, based on the current single-trip mileage, the total mileage of the vehicle up to the last time it switched from the start state to the stop state is updated, and the updated total mileage is stored as the total mileage of the vehicle up to the current time it switched from the start state to the stop state.

[0063] In this application, specifically, for example, if the total mileage of the vehicle up to the last time it switched from the start state to the stop state was 28,000 kilometers, and the current single mileage is 80 kilometers, then the updated total mileage is 28,000 + 80 = 28,080 kilometers. 28,080 kilometers can be stored as the total mileage of the vehicle up to the current time it switched from the start state to the stop state.

[0064] It should be noted that the main controller can store the updated total mileage in E-side (the data will not be lost after being stored in E-side and will not be lost after hibernation).

[0065] In this application, after storing the updated total mileage as the total mileage of the vehicle up to the point where it switched from the current start state to the stop state, the following steps 251 to 252 can also be performed:

[0066] Step 251: Determine whether the at least one auxiliary controller stores the updated total mileage.

[0067] Step 252: If the at least one auxiliary controller stores the updated total mileage, then the single mileage of the vehicle in the current startup state calculated by the main controller is cleared.

[0068] In this application, to enable those skilled in the art to better understand this application, the vehicle mileage data processing method proposed in this application will be described in general with reference to a specific embodiment in Figure 3.

[0069] Referring to Figure 3, an overall flowchart of the main controller processing vehicle mileage data according to an embodiment of this application is shown.

[0070] In this application, based on the proposed technical solution, compared to existing solutions that update the total vehicle mileage data through only one controller, this application uses multiple controllers (i.e., one main controller and multiple auxiliary controllers) to jointly update the total vehicle mileage data, which can improve the accuracy of vehicle mileage data processing. Specifically, since communication between various devices in the vehicle is mainly based on the CAN bus during each trip, data transmission loss or inaccuracies are prone to occur. For example, controllers obtain vehicle speed data from the vehicle's CAN bus. Due to the possibility of abnormalities in the vehicle speed signal received from the CAN bus, the accuracy of the single-trip mileage calculated by the controller based on the vehicle speed data obtained from the vehicle's CAN bus cannot be guaranteed, which in turn leads to the inaccuracy of the total vehicle mileage updated based on the obtained single-trip mileage. This application uses multiple controllers to simultaneously receive the vehicle speed signal from the CAN bus, and each controller calculates the single-trip mileage based on the obtained vehicle speed signal. Then, the main controller selects the optimal single-trip mileage from the single-trip mileage calculated by each controller as the current single-trip mileage, which can ensure that the final determined single-trip mileage is calculated based on the most accurate vehicle speed signal. This improves the accuracy of the current single-trip mileage, thereby improving the accuracy of the total vehicle mileage updated based on the current single-trip mileage, and further improving the accuracy of vehicle mileage data processing.

[0071] In this application, a main controller is proposed, which is used to execute the vehicle mileage data processing method described above.

[0072] Referring to Figure 4, a flowchart of another vehicle mileage data processing method according to an embodiment of this application is shown. The vehicle includes a main controller and at least one auxiliary controller. This vehicle mileage data processing method can be executed by a device with computing capabilities, such as any one of the auxiliary controllers. As shown in Figure 4, this vehicle mileage data processing method includes at least steps 410 to 450, which are described in detail below:

[0073] In step 410, in response to the vehicle switching from the current start state to the stop state, the total mileage updated by the main controller is obtained, and the total mileage of the vehicle up to the last time it switched from the start state to the stop state is updated.

[0074] In this application, when the vehicle is detected to switch from its current start state to a stop state, the auxiliary controller can obtain the total mileage updated by the main controller. Specifically, when the vehicle switches from its current start state to a stop state, the main controller updates the total mileage of the vehicle up to the last time it switched from the start state to the stop state. Therefore, the auxiliary controller can obtain the updated total mileage from the main controller by communicating with it.

[0075] In this application, in addition to obtaining the total mileage updated by the main controller, the auxiliary controller also updates the total mileage of the vehicle up to the last time it switched from the start state to the stop state, thereby obtaining the total mileage updated by the auxiliary controller.

[0076] In step 420, it is determined whether the total mileage updated by the main controller is a valid value.

[0077] It should be noted that the auxiliary controller may encounter abnormalities in obtaining the updated total mileage from the main controller. For example, the updated total mileage may not exist in the main controller, or a message may be lost when obtaining the updated total mileage from the main controller. Therefore, in step 420, it is necessary to determine whether the updated total mileage from the main controller is a valid value to ensure that the updated total mileage obtained from the main controller is accurate.

[0078] In step 430, if the total mileage updated by the main controller is a valid value, then the total mileage updated by the main controller is stored as the total mileage of the vehicle up to the point when it switches from the current start state to the stop state.

[0079] In this application, if the total mileage updated by the main controller is a valid value, it means that the auxiliary controller has not encountered any abnormalities in obtaining the updated total mileage from the main controller. In this case, the total mileage updated by the main controller is directly stored as the total mileage of the vehicle up to the point where the current start state is switched to the stop state.

[0080] It should be noted that the auxiliary controller can store the updated total mileage in the E-side (the data will not be lost after being stored in the E-side and the system will be in a dormant state).

[0081] In step 440, if the total mileage updated by the main controller is invalid, then it is determined whether the total mileage updated by any of the auxiliary controllers is valid.

[0082] In this application, if the total mileage updated by the main controller is invalid, it indicates that the auxiliary controller has encountered an error in obtaining the updated total mileage from the main controller. In this case, it is determined whether the total mileage updated by any auxiliary controller is valid.

[0083] In step 450, if the total mileage updated by any of the auxiliary controllers is a valid value, then the total mileage updated by any of the auxiliary controllers is stored as the total mileage of the vehicle up to the point when the current start state is switched to the stop state.

[0084] Furthermore, in this application, the following step 460 may also be performed:

[0085] Step 460: If the total mileage updated by the at least one auxiliary controller is invalid, then the invalid value is defined as the total mileage of the vehicle up to the point when the current start state is switched to the stop state and stored.

[0086] In this application, if the total mileage updated by any one of the auxiliary controllers is invalid, it can be determined whether the total mileage updated by other auxiliary controllers besides the one mentioned above is invalid. If the total mileage updated by other auxiliary controllers is valid, the total mileage updated by other auxiliary controllers is stored as the total mileage of the vehicle up to the point where the current start state is switched to the stop state. If the total mileage updated by at least one auxiliary controller (i.e., all auxiliary controllers) is invalid, the reason may be that other basic data obtained by all auxiliary controllers for calculating the total mileage is abnormal.

[0087] To help those skilled in the art better understand step 410 above, i.e., how to update the total mileage of the vehicle up to the last time it switched from the start state to the stop state, it can be performed according to the following steps 411 to 415:

[0088] Step 411: Obtain and determine whether the total mileage of the vehicle stored in any of the auxiliary controllers up to the last time it switched from the start state to the stop state is a valid value.

[0089] In the step of updating the total mileage of the vehicle up to the last time it switched from the start state to the stop state, the total mileage of the vehicle up to the last time it switched from the start state to the stop state stored in any of the auxiliary controllers is first obtained, and it is determined whether it is a valid value. It should be noted that since the auxiliary controller may be replaced, if the auxiliary controller has been replaced, the historical total mileage stored in it will be cleared. Therefore, to ensure the accuracy of the total mileage updated by the auxiliary controller, this application can determine whether the total mileage of the vehicle up to the last time it switched from the start state to the stop state stored in any of the auxiliary controllers is a valid value.

[0090] Step 412: If the total mileage of the vehicle stored in any of the auxiliary controllers up to the last time it switched from the start state to the stop state is a valid value, then obtain the current single mileage of the vehicle in the current start state as determined by the main controller, and update the total mileage of the vehicle up to the last time it switched from the start state to the stop state based on the current single mileage.

[0091] In this application, a sensor is configured in the vehicle to collect vehicle speed signal values. When the vehicle is detected to be in a running state, the sensor collects the vehicle speed signal value, for example, every 10ms. The collected vehicle speed signal value is transmitted to the CAN bus, and the main controller and each auxiliary controller read the vehicle speed signal value at each moment from the CAN bus in real time.

[0092] After reading the vehicle speed signal value, the main controller and each auxiliary controller can calculate and update the vehicle's single-trip mileage in the current startup state in real time based on the vehicle speed signal value at each moment, until the vehicle is detected to have switched from the startup state to the stationary state. Specifically, a vehicle speed-time curve can be constructed based on the read vehicle speed signal value and the corresponding read time. Then, the integral of the constructed vehicle speed-time curve is taken to obtain the single-trip mileage in the current startup state. It can be understood that the higher the frequency of reading the vehicle speed signal value, the more accurate the calculated single-trip mileage of the vehicle in the current startup state.

[0093] It should be noted that the main controller determines the current single-trip mileage of the vehicle in the current startup state. Specifically, the main controller and each of the auxiliary controllers calculate the single-trip mileage of the vehicle in the current startup state based on the vehicle speed signal values ​​read at various times. Since abnormal readings of vehicle speed signal values ​​may occur by any controller, in this application, the accuracy of the current single-trip mileage can be ensured by selecting the maximum single-trip mileage less than or equal to the upper limit value from the single-trip mileage calculated by the main controller and each of the auxiliary controllers. Furthermore, after the main controller determines the current single-trip mileage of the vehicle in the current startup state, any auxiliary controller can directly obtain it from the main controller.

[0094] In this application, specifically, for example, if the vehicle's effective total mileage up to the last time it switched from the start state to the stop state was 28,000 kilometers, and the current single mileage is 80 kilometers, then the updated total mileage is 28,000 + 80 = 28,080 kilometers. 28,080 kilometers can be stored as the total mileage of the vehicle up to the current time it switched from the start state to the stop state.

[0095] Step 413: If the total mileage of the vehicle stored in the at least one auxiliary controller up to the last time it switched from the start state to the stop state is an invalid value, then obtain and determine whether the total mileage updated by the main controller is a valid value.

[0096] In this application, if the total mileage of the vehicle stored in any of the auxiliary controllers up to the last time it switched from a start state to a stop state is invalid, it can be determined whether the total mileage of the vehicle stored in other auxiliary controllers (excluding the aforementioned auxiliary controllers) up to the last time it switched from a start state to a stop state is invalid. If the total mileage of the vehicle stored in other auxiliary controllers up to the last time it switched from a start state to a stop state is valid, then the total mileage of the vehicle up to the last time it switched from a start state is updated based on the current single trip of the vehicle in the current start state determined by the main controller. If the total mileage of the vehicle stored in other auxiliary controllers up to the last time it switched from a start state to a stop state is invalid, that is, the total mileage of the vehicle stored in at least one auxiliary controller (i.e., all auxiliary controllers) up to the last time it switched from a start state to a stop state is invalid, it indicates that all auxiliary controllers may have been replaced, and the historical total mileage stored therein may have been cleared. At this point, it can be determined again whether the total mileage updated by the main controller is a valid value.

[0097] Step 414: If the total mileage updated by the main controller is a valid value, then the total mileage updated by the main controller is determined as the total mileage updated by any one of the auxiliary controllers.

[0098] In this application, if the total mileage updated by the main controller is a valid value, it means that the auxiliary controller has not encountered any abnormality in obtaining the updated total mileage from the main controller. In this case, the total mileage updated by the main controller is directly used as the total mileage updated by any one of the auxiliary controllers.

[0099] Step 415: If the total mileage updated by the main controller is an invalid value, then the invalid value is defined as the total mileage updated by any of the auxiliary controllers.

[0100] In this application, to enable those skilled in the art to better understand this application, the vehicle mileage data processing method proposed in this application will be described in general with reference to another specific embodiment through FIG5 and FIG6.

[0101] Referring to Figure 5, a flowchart is shown of the auxiliary controller processing vehicle mileage data according to an embodiment of this application.

[0102] Referring to Figure 6, a flowchart is shown of the auxiliary controller processing vehicle mileage data according to an embodiment of this application.

[0103] In this application, based on the proposed technical solution, compared to existing solutions that update vehicle total mileage data through only a single controller, this application uses multiple controllers (i.e., one main controller and multiple auxiliary controllers) to jointly update the vehicle total mileage data, which can improve the accuracy of vehicle mileage data processing. Specifically, the auxiliary controllers first update their own total mileage to be stored based on the total mileage updated by the main controller. When the total mileage updated by the main controller is invalid, the auxiliary controllers update the vehicle's total mileage themselves and store it. In this way, the loss of total mileage caused by reasons such as controller hardware replacement can be avoided. By synchronously updating the total mileage, the total mileage stored in the auxiliary controllers can be synchronized to the main controller when the total mileage in the main controller is abnormal, ensuring that the updated total mileage is not lost, has a small error, and thus improves the accuracy of vehicle mileage data processing.

[0104] In this application, an auxiliary controller is proposed for performing the vehicle mileage data processing method described above.

[0105] Based on the same inventive concept, this application also provides a vehicle, which includes a main controller as described above and at least one auxiliary controller as described above.

[0106] To enable those skilled in the art to better understand this application, the logic of a vehicle in processing vehicle mileage data is illustrated below with reference to Figure 7, using another specific embodiment.

[0107] Referring to Figure 7, a flowchart is shown showing the main controller and auxiliary controller jointly processing vehicle mileage data according to an embodiment of this application.

[0108] Based on the technical solution proposed in this application, compared to existing solutions that update the total vehicle mileage data using only one controller, this application updates the total vehicle mileage data jointly using multiple controllers (i.e., one main controller and multiple auxiliary controllers), which can improve the accuracy, stability, and robustness of vehicle mileage data processing. Specifically:

[0109] On the one hand, since communication between various devices in a vehicle is primarily based on the CAN bus during each trip, data loss or inaccuracy can easily occur. For example, controllers obtain vehicle speed data from the CAN bus. Due to the possibility of abnormal speed signal reception from the CAN bus, the accuracy of the single-trip mileage calculated by the controller based on the speed data cannot be guaranteed, consequently affecting the accuracy of the total vehicle mileage updated based on the obtained single-trip mileage. This application addresses this by having multiple controllers simultaneously receive vehicle speed signals from the CAN bus, each controller calculating the single-trip mileage based on its own speed signal, and then the main controller selecting the optimal single-trip mileage from the calculations as the current single-trip mileage. This ensures that the final determined single-trip mileage is calculated based on the most accurate speed signal. This improves the accuracy of the current single-trip mileage, thereby improving the accuracy of the updated total vehicle mileage and ultimately enhancing the accuracy of vehicle mileage data processing.

[0110] On the other hand, since vehicle controllers may need to be replaced due to damage or aging, the historical total mileage data stored in the controllers may be lost. In existing solutions, if the total mileage data stored by a vehicle controller is lost, the updated total mileage data will also be inaccurate, resulting in low stability of vehicle mileage data processing and affecting user experience. This application updates the total mileage data of the vehicle jointly by multiple controllers. If the total mileage data stored by any one controller is lost, that controller can synchronously update the latest total mileage data from the other controllers, thereby ensuring that the total mileage data is not lost, thus improving the stability and robustness of vehicle mileage data processing and enhancing user experience.

[0111] In practical applications, this application proposes a strategy where the main controller and auxiliary controllers simultaneously calculate and store the total mileage. This strategy involves multiple controllers calculating the total mileage simultaneously, with the main controller arbitrarily selecting the optimal calculation result and updating the total mileage accordingly. When updating the total mileage, the auxiliary controller prioritizes using the optimal calculation result selected by the main controller, ensuring synchronized changes in the total mileage information between the main and auxiliary controllers and avoiding cumulative errors in the calculation results among multiple controllers. Furthermore, the simultaneous storage of the total mileage by multiple controllers allows for updates to the main controller's total mileage based on the stored total mileage when the main controller hardware fails and is replaced; similarly, updates can be made based on the stored total mileage when the auxiliary controller is replaced.

[0112] Using the technical strategy proposed in this application, errors in instrument display caused by problems such as abnormal CAN signal reception by a single controller can be avoided, thus preventing negative user perception. It also effectively improves the accuracy of total mileage calculation (for example, if the main controller receives abnormal CAN speed signals 10 times and the auxiliary controller receives abnormal CAN speed signals 5 times during a single trip, the mileage calculated by the auxiliary controller will be more accurate than that calculated by the main controller. Therefore, the main controller can update the total mileage displayed on the instrument panel based on the mileage determined by the auxiliary controller). Furthermore, after replacing the main controller, the total mileage of the main controller can be updated based on the total mileage stored in the auxiliary controller, and the correct total mileage will be displayed on the instrument panel, effectively improving the accuracy of total mileage display, enhancing the accuracy of control logic and calculation results, and avoiding obvious faults / inaccuracies in functions directly accessible to the user.

[0113] Based on the same inventive concept, embodiments of this application also provide a computer program product, the computer program product including computer instructions stored in a computer-readable storage medium and adapted to be read and executed by a processor, so as to cause a computer device having the processor to perform the vehicle mileage data processing method as described above.

[0114] Based on the same inventive concept, embodiments of this application also provide a computer-readable storage medium storing at least one computer program instruction, which is loaded and executed by a processor to perform the operations performed by the vehicle mileage data processing method described above.

[0115] Referring to Figure 8, a schematic diagram of the structure of the main controller or auxiliary controller in an embodiment of this application is shown. The main controller or auxiliary controller includes one or more memories 804, one or more processors 802, and at least one computer program (computer program instruction) stored in the memory 804 and executable on the processor 802. When the processor 802 executes the computer program, it implements the vehicle mileage data processing method as described above.

[0116] In Figure 8, a bus architecture (represented by bus 800) is shown. Bus 800 may include any number of interconnected buses and bridges, linking various circuits including one or more processors represented by processor 802 and memory represented by memory 804. Bus 800 may also link various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. Bus interface 805 provides an interface between bus 800 and receiver 801 and transmitter 803. Receiver 801 and transmitter 803 may be the same element, i.e., a transceiver, providing a unit for communicating with various other devices over a transmission medium. Processor 802 is responsible for managing bus 800 and general processing, while memory 804 can be used to store data used by processor 802 during operation.

[0117] The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored as one or more instructions or codes on or transmitted via a computer-readable medium. Other examples and embodiments are within the scope and spirit of this application and the appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hardwired, or any combination thereof. Furthermore, the functional units may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit.

[0118] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.

[0119] The units described as separate components may or may not be physically separate. Similarly, the components of the control device may or may not be physical units; they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.

[0120] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing computer program instructions, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.

[0121] The above description is merely an embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for processing vehicle mileage data, the vehicle comprising a main controller and at least one auxiliary controller, the method being executed on the main controller, the method comprising: obtaining a total mileage of the vehicle up to a last time when the vehicle switches from a start state to a stop state in response to the vehicle switching from a current start state to a stop state; obtaining a single mileage of the vehicle in the current start state calculated by the main controller and each of the auxiliary controllers; obtaining an upper limit value of the mileage of the vehicle in the current start state, and selecting a maximum single mileage that is less than or equal to the upper limit value of the mileage from the single mileages calculated by the main controller and each of the auxiliary controllers as a current single mileage; and updating the total mileage of the vehicle up to the last time when the vehicle switches from the start state to the stop state based on the current single mileage, and storing the updated total mileage as a total mileage of the vehicle up to a time when the vehicle switches from the current start state to a stop state. The method further comprises: if the single mileages calculated by the main controller and each of the auxiliary controllers are all greater than the upper limit value of the mileage, determining the current single mileage as 0. After storing the updated total mileage as the total mileage of the vehicle up to the time when the vehicle switches from the current start state to a stop state, the method further comprises: determining whether the at least one auxiliary controller stores the updated total mileage; and if the at least one auxiliary controller stores the updated total mileage, clearing the single mileage of the vehicle in the current start state calculated by the main controller. The obtaining of the total mileage of the vehicle up to the last time when the vehicle switches from the start state to the stop state comprises: obtaining and determining whether a total mileage stored in the main controller is a valid value; if the total mileage stored in the main controller is a valid value, storing the total mileage stored in the main controller as the total mileage of the vehicle up to the last time when the vehicle switches from the start state to the stop state; and if the total mileage stored in the main controller is an invalid value, storing a total mileage stored in the auxiliary controller as the total mileage of the vehicle up to the last time when the vehicle switches from the start state to the stop state. The main controller and each of the auxiliary controllers calculate the single mileage of the vehicle in the current start state by: reading a vehicle speed signal value of the vehicle at each time instant in real time when detecting that the vehicle is in the start state; and calculating and updating the single mileage of the vehicle in the current start state in real time according to the vehicle speed signal value of the vehicle at each time instant until detecting that the vehicle switches from the current start state to the stop state.

2. The method of claim 1, wherein, After reading the vehicle speed signal value of the vehicle at each time instant in real time, the method further comprises: determining whether the vehicle speed signal value of the vehicle at each time instant is a valid value. ​ 3. The method of claim 1, wherein, ​ ​ ​ 4. The method of claim 1, wherein, ​ ​ ​ ​ 5. The method of claim 1, wherein, ​ ​ ​ 6. The method of claim 5, wherein, ​ ​ If the vehicle speed signal value of the vehicle at each time instant is an invalid value, the vehicle speed signal value of the vehicle at each time instant is assigned as 0.

7. The method of claim 1, wherein, The obtaining of the upper limit of the driving range of the vehicle in the current starting state comprises: obtaining a pre-set driving range value as the upper limit of the driving range of the vehicle in the current starting state; or obtaining the fuel / electricity consumption of the vehicle in the current starting state, and determining the upper limit of the driving range of the vehicle in the current starting state according to the fuel / electricity consumption.

8. A main controller for performing the method of any one of claims 1 to 7.

9. A vehicle driving range data processing method, the vehicle comprising the main controller of claim 8 and at least one auxiliary controller, the method being performed on any one of the auxiliary controllers, the method comprising: in response to the vehicle being switched from the current starting state to the stopped state, obtaining the total driving range updated by the main controller, and updating the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state; determining whether the total driving range updated by the main controller is a valid value; if the total driving range updated by the main controller is a valid value, storing the total driving range updated by the main controller as the total driving range of the vehicle up to the current starting state being switched to the stopped state; if the total driving range updated by the main controller is an invalid value, determining whether the total driving range updated by the any one of the auxiliary controllers is a valid value; if the total driving range updated by the any one of the auxiliary controllers is a valid value, storing the total driving range updated by the any one of the auxiliary controllers as the total driving range of the vehicle up to the current starting state being switched to the stopped state.

10. The method of claim 9, wherein, The method further comprises: if the total driving range updated by the at least one auxiliary controller is all invalid values, defining an invalid value as the total driving range of the vehicle up to the current starting state being switched to the stopped state to be stored.

11. The method of claim 9, wherein, The updating of the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state comprises: obtaining and determining whether the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state stored in the any one of the auxiliary controllers is a valid value; if the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state stored in the any one of the auxiliary controllers is a valid value, obtaining the current single driving range of the vehicle in the current starting state determined by the main controller, and updating the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state based on the current single driving range; if the total driving range of the vehicle up to the last time when the vehicle is switched from the starting state to the stopped state stored in the at least one auxiliary controller is all invalid values, obtaining and determining whether the total driving range updated by the main controller is a valid value; if the total mileage updated by the main controller is a valid value, then the total mileage updated by the main controller is determined as the total mileage updated by the arbitrary one of the auxiliary controllers; if the total mileage updated by the main controller is an invalid value, then an invalid value is defined as the total mileage updated by the arbitrary one of the auxiliary controllers.

12. An auxiliary controller configured to perform the method according to any one of claims 9 to 11.

13. A computer program product comprising computer instructions stored in a computer readable storage medium and adapted to be read and executed by a processor to cause a computer device having the processor to perform the method according to any one of claims 1 to 7, claims 9 to 11.

14. A computer readable storage medium having stored therein computer program instructions which, when loaded and executed by a processor, cause the processor to perform operations performed by the method according to any one of claims 1 to 7, claims 9 to 11.

15. A vehicle comprising a main controller according to claim 8 and at least one auxiliary controller according to claim 12.

Citation Information

Patent Citations

  • Vehicle mileage verification method, vehicle mileage verification system and vehicle

    CN107490390A

  • Rented vehicle control method and system

    CN112977144A

  • Data protection method and system of electric bicycle

    CN116502284A

  • Mileage backup method, device and equipment and computer readable storage medium

    CN117290161A

  • Vehicle driving mileage data processing method, controller, medium and vehicle

    CN118457231A