OBU self-checking method and device based on machine learning
By using a machine learning-based OBU self-testing method and an MLP model for comprehensive fault analysis, the problem of inaccurate fault location caused by single-parameter judgment in existing technologies is solved, and rapid and accurate fault identification and risk prediction are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-29
- Publication Date
- 2026-04-14
AI Technical Summary
Existing OBU self-test methods rely on a single parameter threshold for judgment, which cannot comprehensively consider the correlation between multiple parameters, resulting in inaccurate fault location, especially difficulty in identifying non-obvious faults, and increasing operation and maintenance costs.
A machine learning-based OBU self-inspection method is adopted. By obtaining key information parameters and inputting them into a pre-trained MLP model, a comprehensive fault analysis is performed using a multilayer perceptron (MLP) neural network. A three-level label system is constructed for fault localization, including a first-level label (fault status), a second-level label (fault source), and a third-level label (specific fault module).
It achieves fast and accurate OBU fault location, can identify non-obvious faults, reduce operation and maintenance costs, improve self-test accuracy, and can predict and prevent batch fault risks.
Smart Images

Figure CN121859153A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of machine learning and OBU-related technologies, and in particular to an OBU self-testing method and apparatus based on machine learning. Background Technology
[0002] With the widespread adoption of ETC (Electronic Toll Collection) systems, the On-Board Unit (OBU), as the core terminal device of the system, directly impacts traffic efficiency and user experience through its operational stability. Currently, OBUs frequently encounter issues such as transaction failures and recognition anomalies during actual use, and fault localization often faces significant challenges—it is difficult to quickly and accurately determine whether the problem lies with the roadside antenna or the OBU itself. Even if it is an OBU fault, it is impossible to precisely pinpoint the specific functional module (such as wake-up sensitivity, transmit power, receive sensitivity, ESAM module, etc.).
[0003] Current OBU self-tests primarily rely on threshold judgments for single parameters, such as determining faults based solely on simple rules like whether the battery level is below a certain value or the number of wake-ups is zero. This approach has significant limitations. Firstly, it fails to comprehensively consider the interrelationships between multiple parameters, such as the mutual influence between wake-up sensitivity levels and the number of wake-ups, and antenna command intervals. Secondly, it struggles to effectively identify some inconspicuous faults (such as occasional transaction delays caused by a slight decrease in receiver sensitivity), resulting in low self-test accuracy. Many faults require manual follow-up investigation, increasing maintenance costs and user complaints. Therefore, there is an urgent need for an intelligent analysis method that can comprehensively analyze multi-dimensional self-test parameters and accurately pinpoint fault types. Summary of the Invention
[0004] The purpose of this invention is to at least address one of the shortcomings of the prior art by providing an OBU self-testing method and apparatus based on machine learning.
[0005] To achieve the above objectives, the present invention adopts the following technical solution: Specifically, a machine learning-based OBU self-checking method is proposed, including the following: Obtain a self-test request. When a self-test request exists, determine whether there is a roadside antenna in the current environment. If not, perform a non-antenna state self-test and return the first self-test result. If it exists, obtain the time T since the last successful communication with the road test antenna, and then determine whether T is greater than the preset time threshold. If it is not greater than the preset time threshold, directly feed back the self-test pass result. If the duration exceeds a preset threshold, key information parameters of the OBU are obtained and input into a pre-trained self-testing model. The output of the self-testing model is then used as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.
[0006] Furthermore, specifically, the first self-test results include the status of dual-channel activation, anti-tamper status, ESM chip status, battery status, Bluetooth chip status, ETC status, and 5.8G chip status.
[0007] Furthermore, specifically, the key information parameters include: Wake-up sensitivity, receive sensitivity, transmit power, number of wake-up attempts, number of dedicated link communications, dedicated link command interval, battery level, ESAM feedback status code, 5.8G device operating status, and Bluetooth chip operating status or number of Bluetooth signaling connections.
[0008] Furthermore, specifically, the self-test model is set with three levels of labels. The first-level label indicates whether there is a fault: 0 Normal, 1 Abnormal. The second-level label indicates the source of the fault: 0 Normal, 1 Roadside antenna fault, 2 Vehicle OBU fault. The third-level label indicates the cause of the OBU fault: 0 Normal, 1 Wake-up module fault, 2 Receiver module fault, 3 Transmitter module fault, 4 ESAM module fault, 5 Bluetooth module fault, 6 Battery fault.
[0009] Furthermore, specifically, the self-testing model is constructed based on an MLP model, and the self-testing model includes: A fully connected structure consisting of an input layer, hidden layers, and an output layer. The total dimension of the features is the number of neurons in the input layer, which includes: wake-up sensitivity (3 dimensions) + receive sensitivity (7 dimensions) + transmit power (15 dimensions) + wake-up count (1 dimension) + dedicated link communication count (1 dimension) + command interval (1 dimension) + battery level (1 dimension) + ESAM status code (20 dimensions) + 5.8G device (1 dimension) + Bluetooth related (2 dimensions) = 52 dimensions. There are two hidden layers, using the ReLU activation function. A Dropout layer is added after each hidden layer, and the hidden layers are designed to decrease in number from the input layer neurons. The output layer has three parallel output headers, each corresponding to one of the three levels of tags. The first-level output head has two neurons, each corresponding to a first-level label, and uses the Softmax activation function. The secondary output head has three neurons, each corresponding to a secondary label, and uses the Softmax activation function. The third-level output head has 7 neurons, each corresponding to a third-level label, and uses the Softmax activation function.
[0010] Furthermore, specifically, For the h-th neuron in the first hidden layer, Its original input signal All features from the input layer With corresponding weights The sum of the products, plus the bias. The formula is: ; Where D represents the total dimension of the input layer features. This represents the weight parameters from the d-th feature in the input layer to the h-th neuron in the first hidden layer. This represents the d-th component of the feature vector X, i.e., the preprocessed value of a single key information parameter. For bias; The formula for calculating the distance from the first hidden layer to the second hidden layer is: For the j-th neuron in the second hidden layer, Its output Output for all neurons in the first hidden layer The weighted sum of the corresponding weights, with a bias, is then activated using ReLU: ; in, Let be the weights from the i-th neuron in the first hidden layer to the j-th neuron in the second hidden layer. This is the bias of the j-th neuron in the second hidden layer; The formula for calculating the output layer from the second hidden layer is: The output of the second hidden layer is passed to the three output heads of the output layer. The calculation process includes the calculation of the original output and the calculation of the probability output. The calculation of the original output includes, The raw output of each output head The weights are obtained by multiplying the output of the last hidden layer by the corresponding weight matrix and adding a bias, as shown in the following formula: For one sample, the two raw outputs of the first-level output head normal, The anomaly is: ; in, Let be the weights from the j-th neuron in the second hidden layer to the c-th class in the first-level output head. The bias for the c-th category of the first-level output header; Probability output calculation includes, For a single sample, the probability of the c-th class in the second-level output head. c=1: Normal, c=2: Antenna fault, c=3: OBU fault: ; In the formula, the molecule The exponent of the original output must be non-negative, and the denominator is the sum of the exponents of the original outputs for all categories, ensuring that the sum of all probabilities equals 1. This is the confidence level for that category.
[0011] Furthermore, the method also includes training the pre-trained self-testing model using a multi-task loss function and optimizing it through backpropagation. The optimizer is the Adam optimizer, the initial learning rate is set to 0.001, and a learning rate decay strategy is used for training.
[0012] Furthermore, the method also includes, Every first time interval, the occurrence rate of any type of fault in the third-level tag of the current batch of OBUs is counted and compared with the first time interval of the previous period. If the occurrence rate of any type of fault suddenly rises above the amplitude threshold, an alarm is issued.
[0013] Furthermore, the method also includes pre-dividing a self-testing region; in any self-testing region, collecting the highest confidence value of all second self-testing results within the current time range every second time interval, and taking the average value as the representative confidence value for the current time range, thereby obtaining a representative confidence value sequence; dividing the representative confidence value sequence into multiple subsequences with Q representative confidence values as a period; determining whether there is a downward fluctuation in accuracy between adjacent subsequences; and issuing an alarm if so. Specifically, the method for judging the downward fluctuation of accuracy is as follows: In a two-dimensional coordinate system where the index value is the horizontal axis and the confidence value is the vertical axis, there are Q first data points in the first subsequence. Curve fitting is performed on these Q first data points to obtain the first curve. In the subsequent subsequence, there are Q second data points in a two-dimensional coordinate system. The shortest distance from each second data point to the first curve is calculated, and the number P of data points whose shortest distance is greater than the first threshold is counted. If P / Q is greater than the second threshold, it indicates that there is an accuracy fluctuation. At this time, the mean of the representative confidence value of the subsequent subsequence is calculated to obtain the first mean, and the mean of the representative confidence value of the preceding subsequence is calculated to obtain the second mean. If the first mean is not greater than the second mean, it indicates that there is a downward fluctuation in accuracy between adjacent subsequences.
[0014] This invention also proposes a machine learning-based OBU self-testing device, comprising the following: The self-test request acquisition module is used to acquire self-test requests. When a self-test request exists, it determines whether there is a roadside antenna in the current environment. If not, it performs a non-antenna state self-test and feeds back the first self-test result. The first judgment module is used to obtain the time T since the last successful communication with the roadside antenna when a roadside antenna is present, and then judge whether T is greater than a preset time threshold. If it is not greater than the preset time threshold, the self-test result is directly fed back. The second judgment module is used to obtain key information parameters of the OBU when the time exceeds a preset time threshold, and input the key information parameters into the pre-trained self-testing model, and use the output of the self-testing model as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.
[0015] The beneficial effects of this invention are as follows: This invention proposes an OBU self-testing method and apparatus based on machine learning. Upon receiving an OBU self-test request, the method distinguishes between the presence and absence of drive-test antennas in the current OBU environment and performs separate self-tests. If no drive-test antenna is present, a conventional self-test is performed, yielding a first self-test result. If a drive-test antenna is present, a pre-established self-testing model is used to perform a self-test based on the OBU's key information parameters, yielding a second self-test result. This invention constructs an OBU fault detection model based on a multilayer perceptron (MLP) neural network. This model can quickly locate the cause of OBU faults and, through overall fault cause analysis of batches of OBUs, can predict and prevent batch OBU fault risks. Attached Figure Description
[0016] The above and other features of this disclosure will become more apparent from the detailed description of the embodiments illustrated in conjunction with the accompanying drawings. In the accompanying drawings, the same reference numerals denote the same or similar elements. Obviously, the drawings described below are merely some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained from these drawings without any creative effort. In the drawings: Figure 1 The diagram shows the flowchart of the OBU self-testing method based on machine learning according to the present invention. Detailed Implementation
[0017] The following will provide a clear and complete description of the concept, specific structure, and technical effects of the present invention in conjunction with embodiments and accompanying drawings, so as to fully understand the purpose, solution, and effects of the present invention. It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. The same reference numerals used throughout the accompanying drawings indicate the same or similar parts.
[0018] Example 1, referring to Figure 1 This invention proposes a machine learning-based OBU self-checking method, including the following: Step 110: Obtain a self-test request. When a self-test request exists, determine whether there is a roadside antenna in the current environment. If not, perform a non-antenna state self-test and return the first self-test result. Step 120: If it exists, obtain the time T since the last successful communication with the road test antenna, and then determine whether T is greater than the preset time threshold. If it is not greater than the preset time threshold, directly feed back the self-test pass result. Step 130: If the duration exceeds the preset threshold, obtain the key information parameters of the OBU and input the key information parameters into the pre-trained self-testing model. Use the output of the self-testing model as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.
[0019] In this preferred embodiment, upon receiving an OBU self-test request, a self-test is performed separately depending on whether a drive-test antenna is present in the current environment of the OBU. If no drive-test antenna is present, a conventional self-test is performed, yielding a first self-test result. If a drive-test antenna is present, a second self-test result is obtained by performing a self-test based on the key information parameters of the OBU using a pre-established self-test model. This invention constructs an OBU fault detection model based on a multilayer perceptron (MLP) neural network. On the one hand, it can quickly locate the cause of OBU faults; on the other hand, by analyzing the overall fault causes of batches of OBUs, it can predict and prevent batch OBU fault risks.
[0020] In a preferred embodiment of the present invention, the first self-test result specifically includes the following: dual activation status, anti-tamper status, ESM chip status, battery status, Bluetooth chip status, ETC status, and 5.8G chip status.
[0021] In a preferred embodiment of the present invention, the key information parameters specifically include: Wake-up sensitivity, receive sensitivity, transmit power, number of wake-up attempts, number of dedicated link communications, dedicated link command interval, battery level, ESAM feedback status code, 5.8G device operating status, and Bluetooth chip operating status or number of Bluetooth signaling connections.
[0022] Ten core parameters from the OBU self-test process were collected as model input features. The specific features and processing methods are shown in Table 1 below. After preprocessing, all features were converted into "dimensionless numerical values" (binary 0 / 1, 0-1 interval values, and standardized Z values).
[0023] Table 1 In a preferred embodiment of the present invention, the self-test model is specifically set with three levels of labels. The first-level label indicates whether there is a fault: 0 Normal, 1 Abnormal. The second-level label indicates the source of the fault: 0 Normal, 1 Roadside antenna fault, 2 Vehicle OBU fault. The third-level label indicates the cause of the OBU fault: 0 Normal, 1 Wake-up module fault, 2 Receiver module fault, 3 Transmitter module fault, 4 ESAM module fault, 5 Bluetooth module fault, 6 Battery fault.
[0024] In a preferred embodiment of the present invention, the self-testing model is specifically constructed based on an MLP model, and the self-testing model includes: A fully connected structure consisting of an input layer, hidden layers, and an output layer. The total dimension of the features is the number of neurons in the input layer, which includes: wake-up sensitivity (3 dimensions) + receive sensitivity (7 dimensions) + transmit power (15 dimensions) + wake-up count (1 dimension) + dedicated link communication count (1 dimension) + command interval (1 dimension) + battery level (1 dimension) + ESAM status code (20 dimensions) + 5.8G device (1 dimension) + Bluetooth related (2 dimensions) = 52 dimensions. There are two hidden layers, using the ReLU activation function. A Dropout layer is added after each hidden layer, and the hidden layers are designed to decrease in number from the input layer neurons. The output layer has three parallel output headers, each corresponding to one of the three levels of tags. The first-level output head has two neurons, each corresponding to a first-level label, and uses the Softmax activation function. The secondary output head has three neurons, each corresponding to a secondary label, and uses the Softmax activation function. The third-level output head has 7 neurons, each corresponding to a third-level label, and uses the Softmax activation function.
[0025] As a preferred embodiment of the present invention, specifically... For the h-th neuron in the first hidden layer, Its original input signal All features from the input layer With corresponding weights The sum of the products, plus the bias. The formula is:
[0026] Where D represents the total dimension of the input layer features. This represents the weight parameters from the d-th feature in the input layer to the h-th neuron in the first hidden layer. This represents the d-th component of the feature vector X, i.e., the preprocessed value of a single key information parameter. For bias; The formula for calculating the distance from the first hidden layer to the second hidden layer is: For the j-th neuron in the second hidden layer, Its output Output for all neurons in the first hidden layer The weighted sum of the corresponding weights, with a bias, is then activated using ReLU: ; in, Let be the weights from the i-th neuron in the first hidden layer to the j-th neuron in the second hidden layer. This is the bias of the j-th neuron in the second hidden layer; The formula for calculating the output layer from the second hidden layer is: The output of the second hidden layer is passed to the three output heads of the output layer. The calculation process includes the calculation of the original output and the calculation of the probability output. The calculation of the original output includes, The raw output of each output head The weights are obtained by multiplying the output of the last hidden layer by the corresponding weight matrix and adding a bias, as shown in the following formula: For one sample, the two raw outputs of the first-level output head normal, The anomaly is: ; in, Let be the weights from the j-th neuron in the second hidden layer to the c-th class in the first-level output head. The bias for the c-th category of the first-level output header; Probability output calculation includes, For a single sample, the probability of the c-th class in the second-level output head. c=1: Normal, c=2: Antenna fault, c=3: OBU fault: ; In the formula, the molecule The exponent of the original output must be non-negative, and the denominator is the sum of the exponents of the original outputs for all categories, ensuring that the sum of all probabilities equals 1. This is the confidence level for that category.
[0027] Specifically, the process of constructing a self-testing model using MLP in this invention is as follows: Tag definition A three-level labeling system is adopted, corresponding to the three-level classification objectives of the model: Primary label (fault status): 0 (normal), 1 (abnormal) Secondary label (source of fault): 0 (normal), 1 (roadside antenna fault), 2 (vehicle OBU fault) Level 3 tags (OBU fault module): 0 (normal), 1 (wake-up module fault), 2 (receiver module fault), 3 (transmitter module fault), 4 (ESAM module fault), 5 (Bluetooth module fault), 6 (battery fault). Data partitioning and augmentation Data partitioning: The collected labeled samples are divided into a training set (for model training), a validation set (for model hyperparameter tuning and overfitting monitoring), and a test set (for final model performance evaluation) in a ratio of 7:2:1.
[0028] Data augmentation: To address the problem of imbalanced samples (such as the number of normal samples being far greater than the number of faulty samples), SMOTE (Synthetic Minority Oversampling) is used to oversample minority class samples, while the training set is randomly shuffled to avoid order dependencies during model training.
[0029] MLP Model Architecture Design The MLP model adopts a fully connected structure of "input layer - hidden layer - output layer". For the three-level classification target, a multi-task learning architecture is designed (that is, a single model can complete the first-level, second-level, and third-level classification tasks simultaneously). The specific structure is as follows: Input layer: Based on the feature engineering results, the number of neurons in the input layer is equal to the total feature dimensions (including: wake-up sensitivity 3D + receive sensitivity 7D + transmit power 15D + wake-up count 1D + dedicated link communication count 1D + command interval 1D + battery power 1D + ESAM status code 20D + 5.8G device 1D + Bluetooth related 2D = 52D).
[0030] Hidden layers: Two hidden layers are set up, using the ReLU activation function (to solve the gradient vanishing problem). The number of neurons in each layer adopts a "decreasing design" (e.g., input layer 52 dimensions → hidden layer 1: 32 dimensions → hidden layer 2: 16 dimensions). A dropout layer (dropout rate=0.2) is added after each hidden layer to prevent the model from overfitting.
[0031] Output layer: Design 3 parallel output heads, each corresponding to a three-level classification task: First-level output head: 2 neurons (corresponding to "normal / abnormal"), using the Softmax activation function, outputting the probability distribution of the two classes.
[0032] Secondary output head: 3 neurons (corresponding to "normal / antenna failure / OBU failure"), using the Softmax activation function.
[0033] The third-level output head consists of 7 neurons (corresponding to "normal / 7 types of OBU module failure"), using the Softmax activation function.
[0034] Input layer core definition and parameter description The input layer receives the preprocessed multi-dimensional self-examination feature vector and passes it to the first hidden layer for feature mapping. The relevant parameters of the input layer are defined in Table 2 below:
[0035] Table 2 Signal transfer formula from input layer to first hidden layer The input layer passes the feature vector to the first hidden layer, and the specific processing is as follows: Formula for raw input signal of a single neuron For the h-th neuron in the first hidden layer Its original input signal All features from the input layer With corresponding weights The sum of the products, plus the bias. The formula is: ; Summation term : Represents the "weighted contribution" of all features from the input layer to the hidden layer neuron, where the weights are... The larger the corresponding feature The stronger the influence on the neuron (e.g., the weight of "ESAM status code feature" may be higher than that of "Bluetooth connection count feature", and if the model learns that ESAM failure is more likely to cause OBU abnormality).
[0036] bias Used to adjust the activation threshold of neurons, avoiding the expression limitations caused by relying solely on feature-weighted sums (such as when all features are used). When =0, = (Whether neurons are easily activated can be controlled by bias).
[0037] Batch calculation formula in matrix form In practical model training, matrix operations are used to simplify formulas and improve computational efficiency. Definition: Batch feature matrix Each row corresponds to the feature vector of one sample, with a total of B rows and D columns, i.e. ; weight matrix Each column corresponds to the weight vector of one neuron in the first hidden layer, with a total of D rows. column, i.e. ; bias vector : Row vectors, each element corresponding to the bias of one neuron in the first hidden layer, i.e. ; Batch raw input matrix Each row corresponds to one sample of the original input signal in the first hidden layer, with a total of B rows. List.
[0038] The batch calculation formula is as follows: ; Matrix multiplication The result is A matrix, where the element in the i-th row and h-th column is the dot product of the feature vector of the i-th sample and the weight vector of the h-th neuron (i.e., ... ).
[0039] Bias broadcasting: due to the bias vector With matrix The number of columns is consistent, and during calculation, b will be automatically broadcast to row B (that is, the same bias vector is added to the original input signal of each sample).
[0040] Example verification of OBU self-test features Single-sample mode: If the preprocessed feature vector of a certain OBU is (like =1 (Wake-up sensitivity level 1 encoding) =0.6 (normalized wake-up count) =1 (normal encoding of Bluetooth chip)), then the original input of the first neuron in the first hidden layer is: ; Batch mode: If the batch size B=32, then use the matrix formula. It can calculate all the original input signals of 32 OBU samples in the first hidden layer at once, which is used for subsequent ReLU activation function calculations. Provide input.
[0041] The key parameters for computation from the hidden layer to the output layer are defined in Table 3 below:
[0042] Table 3 Calculation process from hidden layer to output layer The calculation from the hidden layer to the output layer is divided into two steps: "passing within the hidden layer" and "passing from the last hidden layer to the output layer".
[0043] Step 1: Forward Propagation Between Multiple Hidden Layers The model contains L=2 hidden layers. First, the output from hidden layer 1 to hidden layer 2 is calculated. Then, the output layer result is calculated based on the output of hidden layer 2. The formula is consistent with the logic from the input layer to the hidden layer, and the ReLU activation function is still used. The output formula from hidden layer 1 to hidden layer 2 is as follows: For the j-th neuron in hidden layer 2 Its output Output of all neurons in hidden layer 1 The weighted sum of the corresponding weights, with a bias, is then activated using ReLU: ; in, Let be the weights from the i-th neuron in hidden layer 1 to the j-th neuron in hidden layer 2. This is the bias of the j-th neuron in hidden layer 2.
[0044] Batch matrix form: Batch output matrix of hidden layer 2 It can be represented as: ; In the formula, The weight matrix from hidden layer 1 to hidden layer 2 (dimensions) ), Let be the bias vector of hidden layer 2. The ReLU activation function acts on each element of the matrix one by one.
[0045] Step 2: Passing the last hidden layer to the output layer The output layer contains 3 parallel output heads (corresponding to the three-level fault detection task), and the last hidden layer (hidden layer 2, ...) is... The output of (=16) is passed to three output heads, and the calculation process is divided into two steps: "original output calculation" and "probability output calculation". Original output calculation The raw output of each output head The weights are obtained by multiplying the output of the last hidden layer by the corresponding weight matrix and adding a bias, as shown in the following formula: Single-sample, single-output head formula: For one sample, the two raw outputs of the first-level output head (normal), (Abnormality) is: ; in, The weights from the j-th neuron in hidden layer 2 to the c-th class in the first-level output head are... This is the bias for the c-th category of the first-level output header.
[0046] Batch multi-output head formula: The batch raw output matrices of the three output heads can be represented as follows: First-stage output head ; Secondary output head ; Level 3 output head ; Probability output calculation Since the output layer needs to output the confidence scores (probabilities) for each category, and each output head is a "multi-class classification task" (e.g., a second-level output head is for 3-class classification), the original output needs to be processed. Applying the Softmax activation function, we transform it into a probability distribution between 0 and 1, as shown in the following formula: Single-sample, single-output head Softmax formula: For a single sample, the probability of the c-th class in the second-level output head. (c=1: Normal, c=2: Antenna fault, c=3: OBU fault) means: ; In the formula, the molecule The exponent of the original output is given (ensuring it is non-negative), and the denominator is the sum of the exponents of the original outputs for all categories (ensuring all probabilities sum to 1). That is, the confidence level of that category (e.g.) =0.92 indicates a 92% confidence level for "antenna failure".
[0047] Batch multi-output head probability matrix: The batch probability matrices of the three output heads can be expressed as follows: Primary output head: (Each row sums to 1, corresponding to the "normal / abnormal" probability); Secondary output head: (Each row sums to 1, corresponding to the probability of "normal / antenna failure / OBU failure"); Level 3 output head: (Each row sums to 1, corresponding to the probability of "normal / 6 types of module failure"); Example of OBU self-test calculation process Given conditions: Hidden layer 2 output (after ReLU activation): (A total of 16 elements).
[0048] Second-level output head weight matrix : In, with Associated weights Other weights are simplified to 0.1 or 0.
[0049] Secondary output head bias .
[0050] Calculate the original output of the secondary output head:
[0051] Calculate the probability of the second-level output head:
[0052] The final secondary judgment result was "antenna failure", with a confidence level of 70%.
[0053] Model Training and Optimization Module Loss function and backpropagation optimization A multi-task loss function is used to weight and sum the cross-entropy losses of the three-level classification task, as shown in the following formula: ; in: Cross-entropy loss for primary classification. ( Let i be the first-level true label for sample i. (For model prediction probabilities) The cross-entropy loss for secondary classification is calculated in the same way. .
[0054] The cross-entropy loss for three-level classification is calculated in the same way. .
[0055] , , For loss weights (initially set to) =0.3、 =0.3、 =0.4 (subsequently optimized through validation set), the weight setting tends to favor three-level classification (OBU module fault location).
[0056] Backpropagation optimization: Calculate the loss on the output layer weights using the chain rule. Hidden layer weights gradient (e.g.) Then, the Adam optimizer updates all parameters to make... Gradually decrease, eventually increasing the output probability. The degree of matching with the real label (i.e., more accurate fault diagnosis).
[0057] Optimizer and training parameters Optimizer: The Adam optimizer is used, with an initial learning rate of 0.001. A learning rate decay strategy is adopted (e.g., the learning rate is halved every 10 epochs) to balance the model training speed and convergence accuracy.
[0058] Training epochs: Initially set to 50 epochs, using an early stopping strategy, training is stopped when the total loss of the validation set no longer decreases for 5 consecutive epochs to prevent overfitting.
[0059] Batch Size: Set according to the number of samples and hardware performance, usually 32 or 64.
[0060] Model Instance Reasoning Instance Basic Settings Scenario Definition Select abnormal data from one OBU device and use the MLP model to complete the three-level judgment of "normal / abnormal → fault source → module fault".
[0061] The original feature values are assigned as shown in Table 4 below.
[0062] Table 4 Data preprocessing Preprocessing parameter preparation Standardized (Z-Score) parameters: according to the document formula ,in: Number of wake-ups: mean μ = 1.2 times, standard deviation σ = 0.8; Number of dedicated link communications: μ=7.5 times, σ=1.2; Dedicated link command interval: μ=150ms, σ=25; Bluetooth signaling connection count: μ=3.5 times, σ=1.0; Normalization (Min-Max) parameters: according to the document formula Battery level: =0% =100%; Encoding rules: Gear type follows the "one-hot encoding" rule (gear number corresponding position is 1), and binary status type follows the "label encoding" rule (normal = 1, abnormal = 0).
[0063] Feature-by-feature preprocessing computation Gear type features: One-hot encoding Wake-up sensitivity (Level 1): Original Level 1: One-hot encoding [1, 0, 0]; Receiver sensitivity (3 levels): Original 3 levels: One-hot encoding [0, 0, 1, 0, 0, 0, 0]; Transmit power (8 levels): Original 8 levels: Hot-coded [0,0,0,0,0,0,0,1,0,0,0,0,0,0,0].
[0064] Counting features: Z-Score standardization Number of wake-ups (2): ; Number of dedicated link communications (6 times): ; Bluetooth signaling connection count (3 times): .
[0065] Time-related features: Z-Score standardization Dedicated link command interval (180ms): .
[0066] State-related features: Normalization / Label encoding / One-hot encoding Battery capacity (82%): Min-Max Normalization: ; ESAM feedback status code (0x6F00): 20 status codes → one-hot encoding [0,0,1,0,...,0] (the 3rd bit is 1, indicating 0x6F00); 5.8G device operating status (normal): Tag code: 1; Bluetooth chip working status (normal): Tag code: 1.
[0067] Preprocessed feature vectors X = [1,0,0, 0,0,1,0,0,0,0, 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0, 1.0, -1.25,1.2, 0.82, 0,0,1,0,...,0, 1, 1, -0.5] Composition logic: Wake-up sensitivity 3D + Receive sensitivity 7D + Transmit power 15D + Wake-up count 1D + Communication count 1D + Command interval 1D + Battery power 1D + ESAM 20D + 5.8G 1D + Bluetooth operation 1D + Bluetooth connection count 1D = 52 dimensions.
[0068] MLP model forward propagation Model parameter settings Hidden layers: 2 layers (Hidden layer 1: 32 neurons, Hidden layer 2: 16 neurons), Dropout rate=0.2 (to prevent overfitting), ReLU activation function (to solve gradient vanishing); Output layer: 3 parallel output heads (Level 1: 2 neurons, Level 2: 3 neurons, Level 3: 7 neurons), Softmax activation (output probability distribution); Input layer to hidden layer 1: Signal transmission Key parameter definition Input layer feature vector X: 52-dimensional (preprocessed); Weight matrix W_1 (input layer → hidden layer 1): 52×32 dimensions, taking the weights of the first neuron in hidden layer 1. ; Note: Of the 52 components, the ESAM feature has a weight of 0.15 and the command interval has a weight of 0.22, which are the key influencing factors; bias (Bias of the first neuron in hidden layer 1).
[0069] Single neuron raw input calculation Taking the first neuron (h=1) in hidden layer 1 as an example: .
[0070] ReLU activation calculation ; Similarly, calculate the remaining 31 neurons in hidden layer 1. and The output matrix of hidden layer 1 is obtained. (1×32 dimension, partial values: [1.3214, 0.856, 0, 1.123, ..., 0.987]).
[0071] Hidden layer 1 to hidden layer 2: Signal transmission Key parameter definition Hidden layer 1 output : 1×32 dimensions; weight matrix (Hidden Layer 1 → Hidden Layer 2): 32×16 dimensions, taking the weight of the 5th neuron in Hidden Layer 2. ; bias = 0.03.
[0072] Single neuron computation Taking the 5th neuron (j=5) in hidden layer 2 as an example: .
[0073] Similarly, the output matrix is obtained by calculating the remaining 15 neurons in hidden layer 2. (1×16 dimensions, values: [0.872, 1.054, 0, 0.923, ..., 0.765]).
[0074] Hidden Layer 2 to Output Layer: Multi-output Head Calculation First-stage output head Parameters: Weight matrix (16×2D), bias ; Original output calculation: Normal class (c=1): ; Exception class (c=2): ; Softmax probability calculation: , The denominator is 1.974 + 6.36 = 8.334. (Normal confidence level 23.7%) (Anomaly confidence level 76.3%) Level 1 Judgment Result: Abnormal (Confidence 76.3% > 70%, no need for review).
[0075] Secondary output head Parameters: Weight matrix (16×3D), bias = [0.01, 0.03, 0.05]; Original output calculation: Normal class (c=1): ; Antenna failure (c=2): ; OBU fault (c=3): ; Softmax probability calculation: The denominator is 1.682 + 2.664 + 8.601 = 12.947. (Normal 13%) (Antenna failure rate: 20.6%) (OBU failure rate: 66.4%) Level 2 judgment result: OBU failure (confidence level 66.4% <70%, marked "pending manual review").
[0076] Level 3 output head Parameters: Weight matrix (16×7 dimensional), bias = [0.02, 0.03, 0.02, 0.04, 0.06, 0.03, 0.02]; Original output calculation: Normal class (c=1): =0.48; ESAM module failure (c=4): =2.32; Wake-up module failure (c=2): =1.05; Softmax probability calculation: , Denominator = 1.616 + 2.857 + ... + 10.19 = 18.76; (ESAM module failure rate: 54.3%) (Wake-up module failure rate: 15.2%) Level 3 determination result: ESAM module failure (combined with Level 2 OBU failure, although the confidence level is 54.3% <70%, it matches the ESAM status code 0x6F00 (response timeout), which can be confirmed after manual review).
[0077] Model inference results output The summary of the three-level judgment is shown in Table 5 below.
[0078] Table 5 Matching verification with actual faults When the OBU entered the after-sales stage, disassembly revealed that the communication pins of the ESAM module were oxidized. This, along with the 6F00 fault code reported by the OBU, caused the OBU to fail during the transaction, creating a causal loop.
[0079] Algorithm working logic Model training phase Data input: Input the preprocessed training set samples (feature vectors + three-level labels) into the MLP model in batches.
[0080] Forward propagation: The feature vector passes through the input layer and the hidden layer (ReLU activation + Dropout) in sequence, and finally outputs the probability distribution of each category through three output heads.
[0081] Loss Calculation: Based on the probability distribution output by the model and the true labels, calculate the total loss for multiple tasks. .
[0082] Backpropagation: Gradient descent (Adam optimizer) is used to calculate the gradient of each layer's weights and biases through backpropagation, update the parameters, and minimize the total loss.
[0083] Validation and tuning: After each training epoch, evaluate the model performance using the validation set (calculate accuracy and F1 score). If the validation set loss increases, adjust the learning rate or dropout rate. If there is no improvement after 5 consecutive epochs, trigger early stopping and save the current optimal model parameters.
[0084] Model inference stage After the OBU completes its self-test and uploads the self-test data, the model performs fault analysis according to the following steps: Data preprocessing: Perform feature encoding (one-hot encoding, standardization, etc.) on the real-time collected self-test data (such as wake-up sensitivity level, wake-up count, ESAM status code, etc.) in the same way as in the training phase, and convert it into a feature vector acceptable to the model.
[0085] Model prediction: Input the feature vector into the trained MLP model, and obtain the probability distribution of the three output heads through forward propagation.
[0086] Fault diagnosis and confidence level output: Level 1 Decision: Select the category with the highest probability in the Level 1 output header as the "normal / abnormal" result. The probability corresponding to this category is the Level 1 confidence level.
[0087] Secondary judgment: If the primary judgment is "abnormal", the category with the highest probability of the secondary output head is selected as the result of "antenna failure / OBU failure", and the corresponding probability is the secondary confidence level; if the primary judgment is "normal", the secondary judgment result is "normal", and the confidence level is consistent with the primary confidence level.
[0088] Level 3 Decision: If the Level 2 decision is "OBU fault", the category with the highest probability of the Level 3 output head is selected as the "specific module fault" result, and the corresponding probability is the Level 3 confidence level; if the Level 2 decision is "antenna fault" or "normal", the Level 3 decision result is "none".
[0089] Output results: Summarize the three-level judgment results and their corresponding confidence levels to form a fault analysis report (e.g., "Abnormal - OBU Fault - ESAM Module Fault, Confidence Level 92%)). If the confidence level of a certain level is lower than 70%, it is marked as "Pending Manual Review".
[0090] Product Application Logic Model deployment method Based on the OBU hardware performance and application scenarios, two deployment options are provided: Local deployment: The trained MLP model (lightweighted using TensorFlow Lite or PyTorch Mobile) is embedded into the OBU's embedded chip (such as the ARM Cortex-M series) via program configuration options. After the OBU completes its self-test, the model runs directly locally, outputting fault results and confidence levels in real time. This is suitable for newer OBUs with strong hardware performance.
[0091] Cloud deployment: The OBU uploads its self-test data (raw parameters, not feature vectors) to the ETC back-end management system via a 4G / 5G module. The back-end server runs the model to perform inference analysis, and the analysis results are fed back to the OBU display screen or user APP via the network. This is suitable for older OBUs with weaker hardware performance.
[0092] Self-inspection process integration Integrating model analysis into the OBU's routine self-testing process involves the following steps: Self-test trigger: The OBU automatically triggers a self-test after power-on, or the user can manually trigger the self-test through the APP.
[0093] Parameter acquisition: The OBU sequentially acquires 10 core parameters, including wake-up sensitivity, receive sensitivity, and transmit power, and records the number of communications and intervals for each command on the dedicated link.
[0094] Data preprocessing and inference: In the local deployment scheme, the OBU completes data preprocessing and model inference locally; in the cloud deployment scheme, the OBU uploads data to the backend, and the backend completes preprocessing and inference.
[0095] Results presentation and feedback: If the result is "normal": the OBU display shows "self-test normal", and the confidence level is displayed simultaneously (e.g., "confidence level 98%").
[0096] If the result is "Abnormal - Antenna Failure": it will display "It is recommended to check the antenna of the road section, with a failure confidence level of 90%" and push it to the backend to prompt maintenance personnel to check the antenna of the corresponding road section.
[0097] If the result is "Abnormal - OBU Fault - Module XX": it displays "OBU [Module XX] fault, confidence level 85%, it is recommended to go to the service point for repair", and uploads the fault information to the backend to generate a repair work order.
[0098] If the result is "Pending manual review": it displays "Self-inspection result is questionable, it is recommended to contact customer service for review", and the OBU is marked as "key focus object" in the background and arranged for manual follow-up.
[0099] In a preferred embodiment of the present invention, the method further includes training the pre-trained self-testing model using a multi-task loss function and performing backpropagation optimization, using the Adam optimizer, setting the initial learning rate to 0.001, and training using a learning rate decay strategy.
[0100] In a preferred embodiment of the present invention, the method further includes, Every first time interval, the occurrence rate of any type of fault in the third-level tag of the current batch of OBUs is counted and compared with the first time interval of the previous period. If the occurrence rate of any type of fault suddenly rises above the amplitude threshold, an alarm is issued.
[0101] In a preferred embodiment of the present invention, the method further includes: pre-dividing a self-testing region; in any self-testing region, collecting the highest confidence value of all second self-testing results within the current time range every second time interval, and taking the average value as the representative confidence value of the current time range, thereby obtaining a representative confidence value sequence; dividing the representative confidence value sequence into multiple subsequences with Q representative confidence values as a period; determining whether there is a downward fluctuation in accuracy between adjacent subsequences; and if so, issuing an alarm (i.e., collecting the highest confidence value of all second self-testing results in the self-testing region at a certain time interval, for example, if there are four self-testing results A / B / C / D, then taking the average of the highest confidence values of the four self-testing results A / B / C / D to obtain the representative confidence value for this time period). Specifically, the method for judging the downward fluctuation of accuracy is as follows: In a two-dimensional coordinate system where the index value is the horizontal axis and the confidence value is the vertical axis, there are Q first data points in the first subsequence. Curve fitting is performed on these Q first data points to obtain the first curve. In the subsequent subsequence, there are Q second data points in a two-dimensional coordinate system. The shortest distance from each second data point to the first curve is calculated, and the number P of data points whose shortest distance is greater than the first threshold is counted. If P / Q is greater than the second threshold, it indicates that there is an accuracy fluctuation. At this time, the mean of the representative confidence value of the subsequent subsequence is calculated to obtain the first mean, and the mean of the representative confidence value of the preceding subsequence is calculated to obtain the second mean. If the first mean is not greater than the second mean, it indicates that there is a downward fluctuation in accuracy between adjacent subsequences.
[0102] In this preferred embodiment, considering that the existing performance monitoring method monitors the model's running performance (such as accuracy and confidence distribution) in real time in the background, if the accuracy of OBU fault judgment in a certain area drops by more than 5%, an emergency iteration is triggered to analyze whether it is caused by regional antenna parameter adjustment or OBU batch problems. This method has low sensitivity to data. Therefore, judging the downward fluctuation of the accuracy of the model analysis results by the above method can better discover the problem of the decline in the accuracy of the self-test model. In addition, by analyzing the overall fault causes of batch OBUs, the risk of batch OBU faults can be predicted and prevented.
[0103] Example 2: The present invention also proposes a machine learning-based OBU self-testing device, comprising the following: The self-test request acquisition module is used to acquire self-test requests. When a self-test request exists, it determines whether there is a roadside antenna in the current environment. If not, it performs a non-antenna state self-test and feeds back the first self-test result. The first judgment module is used to obtain the time T since the last successful communication with the roadside antenna when a roadside antenna is present, and then judge whether T is greater than a preset time threshold. If it is not greater than the preset time threshold, the self-test result is directly fed back. The second judgment module is used to obtain key information parameters of the OBU when the time exceeds a preset time threshold, and input the key information parameters into the pre-trained self-testing model, and use the output of the self-testing model as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.
[0104] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The integrated modules described above can be implemented in hardware or as software functional modules.
[0105] If the integrated module is implemented as a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the above embodiments of the present invention can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or system capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.
[0106] Although the description of the invention has been quite detailed and particularly of several described embodiments, it is not intended to limit it to any of these details or embodiments or any particular embodiment, but should be considered as providing a broad possible interpretation of the claims by referring to the appended claims and taking into account the prior art, thereby effectively covering the intended scope of the invention. Furthermore, the invention has been described above with respect to embodiments foreseeable by the inventors in order to provide a useful description, and non-substantial modifications to the invention that have not yet been foreseen may still represent equivalent modifications.
[0107] The above description is merely a preferred embodiment of the present invention. The present invention is not limited to the above-described embodiments. Any embodiment that achieves the technical effects of the present invention using the same means should fall within the protection scope of the present invention. Within the protection scope of the present invention, various modifications and variations can be made to the technical solutions and / or implementation methods.
Claims
1. A machine learning-based OBU self-checking method, characterized in that, Including the following: Obtain a self-test request. When a self-test request exists, determine whether there is a roadside antenna in the current environment. If not, perform a non-antenna state self-test and return the first self-test result. If it exists, obtain the time T since the last successful communication with the road test antenna, and then determine whether T is greater than the preset time threshold. If it is not greater than the preset time threshold, directly feed back the self-test pass result. If the duration exceeds a preset threshold, key information parameters of the OBU are obtained and input into a pre-trained self-testing model. The output of the self-testing model is then used as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.
2. The OBU self-testing method based on machine learning according to claim 1, characterized in that, Specifically, the first self-test results include the status of dual activation, anti-tamper status, ESM chip status, battery status, Bluetooth chip status, ETC status, and 5.8G chip status.
3. The OBU self-testing method based on machine learning according to claim 1, characterized in that, Specifically, the key information parameters include: Wake-up sensitivity, receive sensitivity, transmit power, number of wake-up attempts, number of dedicated link communications, dedicated link command interval, battery level, ESAM feedback status code, 5.8G device operating status, and Bluetooth chip operating status or number of Bluetooth signaling connections.
4. The OBU self-testing method based on machine learning according to claim 3, characterized in that, Specifically, the self-test model is set with three levels of labels. The first-level label indicates whether there is a fault: 0 Normal, 1 Abnormal. The second-level label indicates the source of the fault: 0 Normal, 1 Roadside antenna fault, 2 Vehicle OBU fault. The third-level label indicates the cause of the OBU fault: 0 Normal, 1 Wake-up module fault, 2 Receiver module fault, 3 Transmitter module fault, 4 ESAM module fault, 5 Bluetooth module fault, 6 Battery fault.
5. The OBU self-testing method based on machine learning according to claim 4, characterized in that, Specifically, the self-testing model is built based on an MLP model, and the self-testing model includes: A fully connected structure consisting of an input layer, hidden layers, and an output layer. The total dimension of the features is the number of neurons in the input layer, which includes: wake-up sensitivity (3 dimensions) + receive sensitivity (7 dimensions) + transmit power (15 dimensions) + wake-up count (1 dimension) + dedicated link communication count (1 dimension) + command interval (1 dimension) + battery level (1 dimension) + ESAM status code (20 dimensions) + 5.8G device (1 dimension) + Bluetooth related (2 dimensions) = 52 dimensions; There are two hidden layers, using the ReLU activation function. A Dropout layer is added after each hidden layer, and the hidden layers are designed to decrease in number from the input layer neurons. The output layer has three parallel output headers, each corresponding to one of the three levels of tags. The first-level output head has two neurons, each corresponding to a first-level label, and uses the Softmax activation function. The secondary output head has three neurons, each corresponding to a secondary label, and uses the Softmax activation function. The third-level output head has 7 neurons, each corresponding to a third-level label, and uses the Softmax activation function.
6. The OBU self-testing method based on machine learning according to claim 5, characterized in that, Specifically, For the h-th neuron in the first hidden layer, Its original input signal All features from the input layer With corresponding weights The sum of the products, plus the bias. The formula is: ; Where D represents the total dimension of the input layer features. This represents the weight parameters from the d-th feature in the input layer to the h-th neuron in the first hidden layer. This represents the d-th component of the feature vector X, i.e., the preprocessed value of a single key information parameter. For bias; The formula for calculating the distance from the first hidden layer to the second hidden layer is: For the j-th neuron in the second hidden layer, Its output Output for all neurons in the first hidden layer The weighted sum of the corresponding weights, with a bias, is then activated using ReLU: ; in, Let be the weights from the i-th neuron in the first hidden layer to the j-th neuron in the second hidden layer. This is the bias of the j-th neuron in the second hidden layer; The formula for calculating the output layer from the second hidden layer is: The output of the second hidden layer is passed to the three output heads of the output layer. The calculation process includes the calculation of the original output and the calculation of the probability output. The calculation of the original output includes, The raw output of each output head The weights are obtained by multiplying the output of the last hidden layer by the corresponding weight matrix and adding a bias, as shown in the following formula: For one sample, the two raw outputs of the first-level output head normal, The anomaly is: ; in, Let be the weights from the j-th neuron in the second hidden layer to the c-th class in the first-level output head. The bias for the c-th category of the first-level output header; Probability output calculation includes, For a single sample, the probability of the c-th class in the second-level output head. c=1: Normal, c=2: Antenna fault, c=3: OBU fault. ; In the formula, the molecule The exponent of the original output must be non-negative, and the denominator is the sum of the exponents of the original outputs for all categories, ensuring that the sum of all probabilities equals 1. This is the confidence level for that category.
7. The OBU self-testing method based on machine learning according to claim 6, characterized in that, The method further includes training the pre-trained self-testing model using a multi-task loss function and optimizing it through backpropagation. The optimizer is the Adam optimizer, with an initial learning rate set to 0.001, and training is performed using a learning rate decay strategy.
8. The OBU self-testing method based on machine learning according to claim 1, characterized in that, The method also includes, Every first time interval, the occurrence rate of any type of fault in the third-level tag of the current batch of OBUs is counted and compared with the first time interval of the previous period. If the occurrence rate of any type of fault suddenly rises above the amplitude threshold, an alarm is issued.
9. The OBU self-testing method based on machine learning according to claim 1, characterized in that, The method further includes pre-dividing a self-testing region; in any self-testing region, collecting the highest confidence value of all second self-testing results within the current time range every second time interval, and taking the average value as the representative confidence value for the current time range, thereby obtaining a representative confidence value sequence; dividing the representative confidence value sequence into multiple subsequences with Q representative confidence values as a period; determining whether there is a downward fluctuation in accuracy between adjacent subsequences; and issuing an alarm if so. Specifically, the method for judging the downward fluctuation of accuracy is as follows: In a two-dimensional coordinate system where the index value is the horizontal axis and the confidence value is the vertical axis, there are Q first data points in the first subsequence. Curve fitting is performed on these Q first data points to obtain the first curve. In the subsequent subsequence, there are Q second data points in a two-dimensional coordinate system. The shortest distance from each second data point to the first curve is calculated, and the number P of data points whose shortest distance is greater than the first threshold is counted. If P / Q is greater than the second threshold, it indicates that there is an accuracy fluctuation. At this time, the mean of the representative confidence value of the subsequent subsequence is calculated to obtain the first mean, and the mean of the representative confidence value of the preceding subsequence is calculated to obtain the second mean. If the first mean is not greater than the second mean, it indicates that there is a downward fluctuation in accuracy between adjacent subsequences.
10. A device for OBU self-testing based on machine learning, characterized in that, Including the following: The self-test request acquisition module is used to acquire self-test requests. When a self-test request exists, it determines whether there is a roadside antenna in the current environment. If not, it performs a non-antenna state self-test and feeds back the first self-test result. The first judgment module is used to obtain the time T since the last successful communication with the roadside antenna when a roadside antenna is present, and then judge whether T is greater than a preset time threshold. If it is not greater than the preset time threshold, the self-test result is directly fed back. The second judgment module is used to obtain key information parameters of the OBU when the time exceeds a preset time threshold, and input the key information parameters into the pre-trained self-testing model, and use the output of the self-testing model as the second self-testing result for feedback. The self-testing model is built based on a machine learning model.