Method and device for dynamic control of an automobile engine based on neural network and FPGA
By combining neural networks and FPGAs, an engine operating status prediction model is constructed, which solves the problem of insufficient flexibility of traditional engine control systems in complex driving environments. This enables intelligent, rapid response, and stable control of the engine, improving driving safety and comfort.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SOUTHWEST UNIV
- Filing Date
- 2024-07-31
- Publication Date
- 2026-04-21
AI Technical Summary
Traditional engine control systems struggle to adapt to complex and ever-changing driving environments and cannot handle emergencies promptly. Furthermore, their simple sensor data processing methods overlook potential correlations and deeper characteristics within the data, impacting driving safety and comfort.
A control method based on neural networks and FPGAs is adopted. By designing the FPGA wiring scheme, an engine operating state prediction model is constructed. The model is trained using historical vehicle data, and the wiring scheme is predicted and switched in real time to control the engine state. Combined with the high parallel processing capability and real-time response characteristics of FPGA, the engine can be quickly and dynamically switched.
It improves the intelligence and response speed of engine control, ensures seamless transitions between different engine states, enhances the efficiency and stability of the control system, reduces energy waste and emissions, and improves driving comfort and safety.
Smart Images

Figure CN119021795B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of automotive technology, and in particular to a dynamic control method for automotive engines based on neural networks and FPGAs. Background Technology
[0002] With the rapid development of the automotive industry, the driving environment faced by vehicles is becoming increasingly complex and changeable, posing unprecedented challenges to the intelligence, precision, and rapid response capabilities of engine control systems. While traditional engine control systems have achieved significant results in improving fuel efficiency and reducing emissions, their core still relies on preset control logic (not decision-making through neural network models) and fixed sensor data processing patterns. This model performs adequately when dealing with static or predictable environmental changes, but its flexibility and adaptability fall short when facing the rapidly changing traffic conditions, diverse driving habits, and extreme weather conditions in real-world driving. Traditional control systems suffer from the following drawbacks: they often design a fixed set of control logic based on engineers' experience and experimental data, making it difficult to flexibly respond to unexpected situations and unknown variables in actual driving; their sensor data processing methods are relatively simple, often extracting only limited information for control decisions and ignoring potential correlations and deeper features in the data; and when faced with scenarios requiring rapid decision-making, traditional systems may be unable to adjust in time due to computational complexity limitations, affecting driving safety and comfort.
[0003] Therefore, there is an urgent need to provide a dynamic engine control method that can overcome the limitations of traditional control systems. Summary of the Invention
[0004] In view of the shortcomings of the prior art, the technical problem to be solved by the present invention is to provide a method and device for dynamic control of automobile engine based on neural networks and FPGA that can cope with complex and ever-changing driving environments and control engine operation more intelligently and efficiently.
[0005] To solve the above-mentioned technical problems, one technical solution adopted by the present invention is to provide a dynamic control method for an automobile engine based on neural networks and FPGA, comprising the following steps:
[0006] Design FPGA routing schemes, with different routing schemes corresponding to different engine operating states;
[0007] Set up a wiring selector and build an engine operating status prediction model in the wiring selector;
[0008] Historical vehicle operation data is acquired, and the engine operating status prediction model is trained using the historical vehicle operation data.
[0009] The engine operating status is predicted in real time using a trained engine operating status prediction model.
[0010] Based on the engine operating state prediction model, the FPGA is controlled to switch to the corresponding wiring scheme to control the engine to reach the predicted engine operating state.
[0011] Furthermore, the engine operating state prediction model includes an input layer, three hidden layers, and an output layer;
[0012] The input layer is used to input feature vectors;
[0013] The first hidden layer is used to process the input feature vector, and outputs the first set of nonlinear features through weighted summation and bias term calculation;
[0014] The second hidden layer is used to perform a non-linear transformation on the output of the first hidden layer, and a Dropout layer is added to prevent overfitting, outputting a second set of non-linear features;
[0015] The third hidden layer is used to ensure the model's generalization ability and nonlinear processing ability, and outputs a third set of nonlinear features as the basis for the final prediction.
[0016] The output layer is used to obtain the probability distribution of each engine operating state based on the third set of nonlinear features and output the engine operating state with the highest probability.
[0017] Furthermore, the step of acquiring historical vehicle operation data and using this historical data to train the engine operating status prediction model specifically includes the following sub-steps:
[0018] Historical data of vehicle operation is acquired and formed into a database. The historical data includes sensor data, vehicle operating parameters, and corresponding engine operating status.
[0019] The data in the database is preprocessed to obtain sample data;
[0020] The sample data was used to train an engine operating status prediction model.
[0021] Furthermore, the step of acquiring historical data and forming a database specifically includes the following sub-steps:
[0022] Define labels for different engine operating states, including starting state, idling state, acceleration state, low load state, medium load state, and high load state;
[0023] Drive the vehicle under different road conditions and collect sensor data and vehicle operating parameters;
[0024] For each data sample collected, it is accurately associated with a predefined label based on the actual operating state of the engine at the time of collection, thus completing the labeling of each sample and forming a database.
[0025] Furthermore, the sensor data includes camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data; the vehicle operating parameters include vehicle speed, steering angle, and battery charge.
[0026] The step of preprocessing the data in the database to obtain sample data specifically includes the following sub-steps:
[0027] Clean the data in the database and remove abnormal data;
[0028] The camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data are processed and features are extracted respectively.
[0029] Features extracted from camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data are fused with vehicle speed, steering angle, and battery charge to obtain a feature vector;
[0030] Each feature vector is assigned a label corresponding to the engine operating state to obtain sample data.
[0031] Furthermore, the method for processing camera data and extracting features is as follows: first, the photos captured by the camera are preprocessed, and then image features are extracted from the preprocessed images. The image features include edges, textures, and shapes.
[0032] The method for processing and extracting features from lidar data is as follows: first, reduce the noise of the point cloud map constructed by lidar through median filtering or mean filtering, and then extract features from the denoised point cloud map, the features including density and curvature.
[0033] The method for processing ultrasonic sensor data and extracting features is as follows: the ultrasonic signal is smoothed using a sliding window, and the actual distance is determined based on the time difference between the transmitted wave and the echo.
[0034] The method for processing and extracting features from inertial measurement unit data is as follows: use a sliding window to smooth the acceleration data, and integrate the smoothed acceleration data to obtain velocity and displacement.
[0035] Furthermore, the step of image preprocessing of the photos captured by the camera specifically includes the following sub-steps:
[0036] Grayscale conversion transforms color images into grayscale images, reducing computational load and model complexity.
[0037] Resizing involves adjusting the image to a fixed size to ensure consistency of the input data.
[0038] Normalization processes normalize pixel values to between 0 and 1, improving the model's convergence speed and training performance.
[0039] The step of extracting image features from the preprocessed image specifically includes: using a convolutional neural network to extract features from the preprocessed image.
[0040] Furthermore, the step of training the engine operating state prediction model using the sample data specifically includes the following sub-steps:
[0041] The training data, which includes feature vectors and desired outputs, is input into the engine operating state prediction model. The training data is obtained by dividing the sample data.
[0042] Features related to engine operating status are extracted based on feature vectors, and the extracted features are converted into probabilities of various engine operating states;
[0043] The engine operating state with the highest probability is selected as the output of the output layer of the engine operating state prediction model.
[0044] Calculate the error between the output of the output layer and the expected output, and use the error for backpropagation to adjust the model parameters until the model converges.
[0045] Furthermore, the step of controlling the FPGA to switch to the corresponding wiring scheme to control the engine to reach the predicted engine operating state based on the engine operating state prediction model specifically includes the following sub-steps:
[0046] The predicted engine operating status data is sent to the state machine in the FPGA in real time.
[0047] The state machine within the FPGA selects a wiring scheme that matches the predicted engine operating state according to preset mapping rules.
[0048] After the state machine selects a wiring scheme, the FPGA's wiring resources are dynamically reconfigured through the logic control unit inside the FPGA to switch to the selected wiring scheme, thereby enabling the engine to reach the predicted operating state.
[0049] To solve the above-mentioned technical problems, another technical solution adopted by the present invention is: to provide a dynamic control device for an automobile engine based on neural networks and FPGA, comprising:
[0050] Design a wiring module for designing FPGA wiring schemes; different engine operating states correspond to different wiring schemes.
[0051] The model building module is used to set the wiring selector and build an engine operating state prediction model in the wiring selector;
[0052] The data acquisition and model training module is used to acquire historical data of vehicle operation and use the historical data of vehicle operation to train the engine operation status prediction model.
[0053] The prediction module is used to predict the engine operating status in real time using a trained engine operating status prediction model.
[0054] The control module is used to control the FPGA to switch to the corresponding wiring scheme according to the engine operating state predicted by the engine operating state prediction model so as to control the engine to reach the predicted engine operating state.
[0055] The present invention provides a method and apparatus for dynamic control of an automotive engine based on neural networks and FPGA, which has at least the following advantages: By introducing a neural network model, this method can fully utilize a large amount of historical vehicle operation data to automatically learn and identify the optimal engine operating state under different driving conditions. This intelligent decision-making mechanism not only improves the accuracy and response speed of the system but also enables the system to adapt to complex and ever-changing driving environments in real time and flexibly cope with various uncertainties, thereby significantly improving the intelligence level of engine control. Combined with the high parallel processing capability and real-time response characteristics of FPGA, this invention can quickly execute the prediction results of the neural network model and realize rapid dynamic switching of the engine control circuit. This hardware-level switching speed far exceeds that of traditional methods. The software control method ensures seamless transitions between different engine states, effectively improving the efficiency and stability of the control system. Simultaneously, precise control reduces energy waste and emissions, which is of great significance for environmental protection and energy conservation. The programmable nature of the FPGA gives the engine control system of this invention extremely high flexibility and scalability. As driving environments and demands change, the control logic can be quickly optimized and adjusted by reconfiguring the logic circuits within the FPGA to adapt to new operating conditions and requirements. By controlling the engine's operating state in real time and intelligently, driving comfort and safety can be significantly improved. Under different driving scenarios, the engine can quickly respond to the driver's intentions and the vehicle's actual needs, providing stable and efficient power output. Attached Figure Description
[0056] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments of this application and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0057] Figure 1 This is a flowchart of one embodiment of the automotive engine dynamic control method based on neural networks and FPGA of the present invention.
[0058] Figure 2 for Figure 1 The flowchart for step S3.
[0059] Figure 3 for Figure 2 The flowchart for step S31.
[0060] Figure 4 for Figure 2 The flowchart for step S32.
[0061] Figure 5 for Figure 2 The flowchart for step S33.
[0062] Figure 6 for Figure 1 The flowchart for step S5.
[0063] Figure 7 This is a flowchart of one embodiment of the automotive engine dynamic control device based on neural networks and FPGA of the present invention. Detailed Implementation
[0064] The invention will now be further described with reference to the accompanying drawings.
[0065] Please see Figure 1 This is a flowchart of one embodiment of the automotive engine dynamic control method based on neural networks and FPGA of the present invention. This embodiment specifically includes the following steps:
[0066] S1. Design the FPGA routing scheme. Different engine operating states correspond to different routing schemes.
[0067] In this embodiment, the engine operating states include starting state, idling state, acceleration state, low load state, medium load state, and high load state. It should be understood that the parameter ranges for each engine operating state differ for different vehicle models. In this embodiment, the starting state refers to an engine speed greater than or equal to 1200 rpm and less than or equal to 1500 rpm, a speed of 0, and a throttle opening greater than or equal to 5% and less than or equal to 8%; the idling state refers to an engine speed greater than or equal to 600 rpm and less than or equal to 1000 rpm, a speed of 0, and a throttle opening greater than or equal to 3% and less than or equal to 5%; the acceleration state refers to an engine speed greater than or equal to 3000 rpm and a throttle opening greater than or equal to 60% and less than or equal to 100%; and the low load state refers to an engine speed greater than... The term "medium load" refers to the state where the engine speed is equal to or greater than 1000 rpm and less than or equal to 2000 rpm, the speed is less than or equal to 50 km / h, and the throttle opening is greater than or equal to 10% and less than or equal to 20%. The term "medium load" refers to the state where the engine speed is greater than or equal to 2000 rpm and less than or equal to 3500 rpm, the speed is greater than or equal to 50 km / h and less than or equal to 80 km / h, and the throttle opening is greater than or equal to 20% and less than or equal to 40%. The term "high load" refers to the state where the engine speed is greater than or equal to 3500 rpm and less than or equal to 4500 rpm, the speed is greater than or equal to 80 km / h and less than or equal to 120 km / h, and the throttle opening is greater than or equal to 40% and less than or equal to 60%.
[0068] S2. Set up a wiring selector and build an engine operating status prediction model in the wiring selector.
[0069] Specifically, the engine operating state prediction model includes an input layer, three hidden layers, and an output layer. The input layer is used to input feature vectors. The first hidden layer processes the input feature vectors, calculating a weighted sum and a bias term to output a first set of nonlinear features. In this embodiment, the first hidden layer contains 64 neurons and uses the ReLU activation function to process the input feature vectors; the first set of nonlinear features includes 64 features. The second hidden layer performs a nonlinear transformation on the output of the first hidden layer, adding a Dropout layer to prevent overfitting, and outputs a second set of nonlinear features. In this embodiment, the second hidden layer contains 128 neurons, using the ReLU activation function to process the first set of nonlinear features output by the first hidden layer, and adding a Dropout layer with a Dropout value of 0.5; the second set of nonlinear features includes 128 features. The third hidden layer ensures the model's generalization and nonlinear processing capabilities, outputting a third set of nonlinear features as the basis for the final prediction. In this embodiment, the third hidden layer contains 64 neurons, uses the ReLU activation function to process the second set of nonlinear features output by the second hidden layer, and adds a 0.5 Dropout layer to prevent overfitting. The third set of nonlinear features includes 64 features. The output layer is used to obtain the probability distribution of each engine operating state based on the third set of nonlinear features and outputs the engine operating state with the highest probability. In this embodiment, the output layer contains 6 neurons, uses the Softmax activation function to convert the third set of nonlinear features into a probability distribution of the 6 engine operating states, and outputs the engine operating state with the highest probability.
[0070] S3. Obtain historical data of vehicle operation and use the historical data of vehicle operation to train the engine operation status prediction model.
[0071] Please see Figure 2 Step S3 includes the following sub-steps:
[0072] S31. Acquire historical data of vehicle operation and form a database. The historical data includes sensor data, vehicle operating parameters and corresponding engine operating status.
[0073] Specifically, the sensor data includes camera data, LiDAR data, ultrasonic sensor data, and inertial measurement unit (IMU) data. The camera data, detected by the camera sensor, includes information on traffic signs, lane lines, pedestrians, and other vehicles; the vehicle needs to adjust its speed and direction based on this information. The LiDAR data, detected by the LiDAR sensor, includes high-precision environmental map information and obstacle information; based on the density of obstacles in the surrounding environment, the vehicle can decide whether to slow down or avoid them. The ultrasonic sensor data, detected by the ultrasonic sensor, is used to detect distances, such as distance control during parking; depending on the parking scenario, the vehicle can decide whether to slow down or stop. The IMU data, detected by the IMU sensor, includes the vehicle's acceleration, angular velocity, and direction; based on the vehicle's dynamic changes, the vehicle can adjust its acceleration and deceleration.
[0074] The vehicle's operating parameters include its speed, steering angle, and battery charge. Based on the vehicle's current speed and target speed, the vehicle can decide whether to accelerate or decelerate; based on the vehicle's steering angle, the vehicle can adjust its speed and turning radius; based on the current battery charge, the vehicle can decide whether to accelerate or decelerate, for example, when the vehicle's battery charge is low, the vehicle needs to decelerate to extend its driving range.
[0075] Please see Figure 3 Step S31 includes the following sub-steps:
[0076] S311. Define labels for different engine operating states, including start-up state, idling state, acceleration state, low load state, medium load state, and high load state.
[0077] S312. Drive the vehicle under different road conditions and collect sensor data and vehicle operating parameters.
[0078] Specifically, the road conditions include, but are not limited to, urban roads, highways, mountainous areas, rainy days, and nighttime. Data is collected under diverse road scenarios to ensure that the dataset can comprehensively cover various driving environments and engine operating states.
[0079] S313. For each data sample collected, accurately associate it with a predefined label according to the actual operating state of the engine at the time of collection, complete the labeling of each sample, and form a database.
[0080] To address the issue of imbalanced datasets and improve the generalization ability and accuracy of subsequent model training, this implementation also employs oversampling (copying existing samples or generating new samples), undersampling (reducing the number of samples from the larger category), synthetic data generation, or other techniques to ensure that the number of samples corresponding to different labels is approximately equal. However, it should be noted that oversampling may lead to overfitting, while undersampling may result in the loss of important information. Therefore, different weights can be assigned to samples of different categories during model training to compensate for the impact of data imbalance.
[0081] S32. Preprocess the data in the database to obtain sample data.
[0082] Please see Figure 4 Step S32 includes the following sub-steps:
[0083] S321. Clean the data in the database and remove abnormal data.
[0084] Different data cleaning strategies are adopted for different data problems. Specifically, duplicate data is deleted by checking and deleting duplicate data in the database; missing values are handled by identifying missing values in the data and using statistical methods such as average, maximum, and minimum values to fill the data or delete records containing missing values; outlier detection and handling are carried out by using statistical methods or business rules to detect outliers and then correcting or deleting them.
[0085] S322. Process and extract features from camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data respectively.
[0086] Specifically, the method for processing camera data and extracting features is as follows: first, the photos captured by the camera are preprocessed, and then image features are extracted from the preprocessed images. These image features include edges, textures, and shapes. In this embodiment, a convolutional neural network is used to extract features from the preprocessed images. The image preprocessing method for the photos captured by the camera includes: grayscale conversion, converting color images to grayscale to reduce computation and model complexity; resizing, adjusting the image to a fixed size to ensure the consistency of the input data; and normalization, normalizing pixel values to between 0 and 1 to improve the model's convergence speed and training effect.
[0087] The method for processing and extracting features from lidar data is as follows: first, median filtering or mean filtering is used to reduce the noise in the point cloud map constructed by the lidar; then, features, including density and curvature, are extracted from the denoised point cloud map. The method for processing and extracting features from ultrasonic sensor data is as follows: a sliding window is used to smooth the ultrasonic signal; then, the actual distance is determined based on the time difference between the transmitted and echoed waves. The method for processing and extracting features from inertial measurement unit (IMU) data is as follows: a sliding window is used to smooth the acceleration data; the smoothed acceleration data is then integrated to obtain velocity and displacement.
[0088] S323. Perform feature fusion to obtain feature vectors.
[0089] Specifically, features extracted from camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data are fused with vehicle speed, steering angle, and battery charge to obtain a feature vector.
[0090] S324. Assign a label corresponding to the engine operating status to each feature vector to obtain sample data.
[0091] S33. Use the sample data to train an engine operating status prediction model.
[0092] Please see Figure 5 Step S33 includes the following sub-steps:
[0093] S331. Input the training data containing feature vectors and desired output into the engine operating state prediction model. The training data is obtained by dividing the sample data.
[0094] Specifically, the feature vector includes features extracted from camera data, LiDAR data, ultrasonic sensor data, and inertial measurement unit data, along with vehicle speed, steering angle, and battery charge. The desired output is the engine operating status, labeled as such. The sample data is divided into training data and test data according to a certain ratio. The training data is used to train the engine operating status prediction model, and the test data is used to evaluate the performance of the trained model on unknown data. By dividing the training and test data, it can be ensured that the model will not overfit the training data during training; that is, the model will not simply remember the features of the training data while ignoring the inherent patterns of the data.
[0095] S332. Extract features related to the engine operating state based on the feature vector, and convert the extracted features into probabilities of each engine operating state.
[0096] Specifically, based on the input vector, the outputs of the hidden layer and the output layer are calculated, which is the forward propagation process. The input vector is processed by the ReLU activation function to produce the output of the hidden layer. The output of the hidden layer is then passed to the output layer, processed by the Softmax activation function, to obtain the probability distribution of different engine operating states.
[0097] S333. Select the engine operating state with the highest probability as the output of the engine operating state prediction model output layer.
[0098] S334. Calculate the error between the output of the output layer and the expected output, and use the error for backpropagation to adjust the model parameters until the model converges.
[0099] S4. Use the trained engine operating status prediction model to predict the engine operating status in real time.
[0100] Specifically, sensor data and vehicle operating parameters are acquired in real time. The sensor data and vehicle operating parameters are preprocessed to obtain feature vectors. The feature vectors are input into the input layer of the engine operating state prediction model. After processing by three hidden layers, the third set of nonlinear features is passed to the output layer as the basis for the final prediction. The output layer converts the third set of nonlinear features into a probability distribution of six engine operating states and outputs the engine operating state with the highest probability as the prediction result.
[0101] S5. Based on the engine operating state predicted by the engine operating state prediction model, control the FPGA to switch to the corresponding wiring scheme to control the engine to reach the predicted engine operating state.
[0102] Please see Figure 6 Step S5 includes the following sub-steps:
[0103] S51. The predicted engine operating status data is sent to the state machine in the FPGA in real time.
[0104] Specifically, the wiring selector receives sensor data and vehicle operating parameters, uses a neural network model to predict the engine operating state, and outputs a data signal corresponding to the engine operating state, which is then transmitted to the state machine in the FPGA. This signal is a binary signal; for example, if the output is the sixth state, the signal sent to the state machine is 110.
[0105] The S52 FPGA state machine selects a wiring scheme that matches the predicted engine operating state according to preset mapping rules.
[0106] Specifically, after the state machine in the FPGA receives the binary signal output by the routing selector, it parses the binary signal, identifies the predicted engine operating state, and performs comparative analysis according to the preset mapping rules to find the corresponding routing scheme. The mapping rules predefine the correspondence between each engine operating state and a specific routing scheme to ensure a fast and accurate response to changes in engine state.
[0107] S53, Switch to a wiring scheme that matches the predicted engine operating conditions.
[0108] Specifically, after the state machine selects a wiring scheme, the FPGA's wiring resources are dynamically reconfigured through the logic control unit inside the FPGA to switch to the selected wiring scheme, thereby enabling the engine to reach the predicted operating state. Switching the wiring scheme can change the internal logic circuit of the FPGA to implement different control algorithms and logic functions, thus affecting the actions of various actuators in the engine control system and the engine's operating state. For example, by adjusting the parameters or logic flow of the control algorithm in the FPGA, precise control of key parameters such as fuel injection quantity and ignition advance angle can be achieved, thereby changing the engine's operating state. Switching the wiring scheme can also change the connection relationships of external devices to the FPGA, thereby affecting the synergistic effect of external devices and thus achieving control over the engine's operating state.
[0109] Please see Figure 7 This is a flowchart of one embodiment of the automotive engine dynamic control device based on neural networks and FPGA of the present invention. The automotive engine dynamic control device based on neural networks and FPGA in this embodiment is used to implement the automotive engine dynamic control method based on neural networks and FPGA as described in the above embodiment. Specifically, the automotive engine dynamic control device based on neural networks and FPGA in this embodiment includes a design wiring module 100, a model building module 200, a data acquisition and model training module 300, a prediction module 400, and a control module 500. Wherein:
[0110] The design and wiring module 100 is used to design the FPGA wiring scheme, and different wiring schemes correspond to different engine operating states. In this embodiment, the engine operating states include start-up state, idling state, acceleration state, low load state, medium load state, and high load state.
[0111] The model building module 200 is used to set a wiring selector and build an engine operating state prediction model in the wiring selector.
[0112] The data acquisition and model training module 300 is used to acquire historical vehicle operation data and use this historical data to train the engine operating status prediction model. Specifically, the data acquisition and model training module 300 includes a data acquisition module 310, a preprocessing module 320, and a model training module 330, wherein: the data acquisition module 310 is used to acquire historical vehicle operation data to form a database, the historical data including sensor data, vehicle operating parameters, and corresponding engine operating status; the preprocessing module 320 is used to preprocess the data in the database formed by the data acquisition module 310 to obtain sample data; and the model training module 330 is used to train the engine operating status prediction model using the sample data.
[0113] The prediction module 400 is used to predict the engine operating status in real time using a trained engine operating status prediction model.
[0114] The control module 500 is used to control the FPGA to switch to the corresponding wiring scheme according to the engine operating state predicted by the engine operating state prediction model so as to control the engine to reach the predicted engine operating state.
[0115] This invention, by introducing a neural network model, can fully utilize a large amount of historical vehicle operation data to automatically learn and identify the optimal engine operating state under different driving conditions. This intelligent decision-making mechanism not only improves the system's accuracy and response speed but also enables the system to adapt to complex and ever-changing driving environments in real time, flexibly responding to various uncertainties, thereby significantly enhancing the intelligence level of engine control. Combined with the high parallel processing capability and real-time response characteristics of FPGA, this invention can rapidly execute the prediction results of the neural network model, achieving rapid dynamic switching of the engine control circuit. This hardware-level switching speed far exceeds traditional software control methods, ensuring seamless engine transitions between different states. This method effectively improves the efficiency and stability of the control system. Simultaneously, precise control reduces energy waste and emissions, which is of great significance for environmental protection and energy conservation. The programmable nature of the FPGA gives the engine control method of this invention extremely high flexibility and scalability. As the driving environment and demands change, the control logic can be quickly optimized and adjusted by reconfiguring the logic circuits inside the FPGA to adapt to new operating conditions and demands. By controlling the engine's operating status in real time and intelligently, driving comfort and safety can be significantly improved. Under different driving scenarios, the engine can quickly respond to the driver's intentions and the vehicle's actual needs, providing stable and efficient power output.
Claims
1. A dynamic control method for an automobile engine based on neural networks and FPGA, characterized in that, Includes the following steps: Design an FPGA routing scheme, with different routing schemes corresponding to different engine operating states; wherein, the engine operating states include: start-up state, idle state, acceleration state, low load state, medium load state, and high load state. Set up a wiring selector and build an engine operating status prediction model in the wiring selector; Acquire historical vehicle operation data and use this data to train the engine operating status prediction model; this step includes the following sub-steps: Acquire historical vehicle operation data to form a database. This historical data includes sensor data, vehicle operating parameters, and corresponding engine operating status. This step includes: Define labels for different engine operating states, including starting state, idling state, acceleration state, low load state, medium load state, and high load state; The vehicle is driven under different road conditions, and sensor data and vehicle operating parameters are collected. The sensor data includes camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data. The inertial measurement unit data includes the vehicle's acceleration, angular velocity, and direction. The vehicle operating parameters include the vehicle's speed, steering angle, and battery charge. For each data sample collected, based on the actual operating state of the engine at the time of collection, it is accurately associated with a predefined label to complete the labeling of each sample and form a database; The data in the database is preprocessed to obtain sample data; The engine operating status prediction model was trained using the sample data; The engine operating status is predicted in real time using a trained engine operating status prediction model. Based on the engine operating state predicted by the engine operating state prediction model, the FPGA is controlled to switch to the corresponding wiring scheme to control the engine to reach the predicted engine operating state. This step includes the following steps: The predicted engine operating status data is sent to the state machine in the FPGA in real time. Specifically, the wiring selector outputs a binary signal corresponding to the engine operating status and sends it to the state machine in the FPGA. The state machine within the FPGA selects a wiring scheme that matches the predicted engine operating state according to a preset mapping rule. Specifically, the state machine within the FPGA parses the binary signal, identifies the predicted engine operating state, and compares and analyzes it according to the preset mapping rule to find the corresponding wiring scheme. After the state machine selects a wiring scheme, the FPGA's wiring resources are dynamically reconfigured through the logic control unit inside the FPGA to switch to the selected wiring scheme, thereby enabling the engine to reach the predicted operating state.
2. The automotive engine dynamic control method based on neural networks and FPGA as described in claim 1, characterized in that, The engine operating status prediction model includes an input layer, three hidden layers and an output layer. The three hidden layers are the first hidden layer, the second hidden layer and the third hidden layer. The input layer is used to input feature vectors; The first hidden layer is used to process the input feature vector, and outputs the first set of nonlinear features through weighted summation and bias term calculation; The second hidden layer is used to perform a non-linear transformation on the output of the first hidden layer, and a Dropout layer is added to prevent overfitting, outputting a second set of non-linear features; The third hidden layer is used to ensure the model's generalization ability and nonlinear processing ability, and outputs a third set of nonlinear features as the basis for the final prediction. The output layer is used to obtain the probability distribution of each engine operating state based on the third set of nonlinear features and output the engine operating state with the highest probability.
3. The automotive engine dynamic control method based on neural networks and FPGA as described in claim 1, characterized in that, The step of preprocessing the data in the database to obtain sample data specifically includes the following sub-steps: Clean the data in the database and remove abnormal data; The camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data are processed and features are extracted respectively. Features extracted from camera data, lidar data, ultrasonic sensor data, and inertial measurement unit data are fused with vehicle speed, steering angle, and battery charge to obtain a feature vector; Each feature vector is assigned a label corresponding to the engine operating state to obtain sample data.
4. The automotive engine dynamic control method based on neural networks and FPGA as described in claim 3, characterized in that, The method for processing camera data and extracting features is as follows: first, the photos captured by the camera are preprocessed, and then image features are extracted from the preprocessed images. The image features include edges, textures, and shapes. The method for processing and extracting features from lidar data is as follows: first, reduce the noise of the point cloud map constructed by lidar through median filtering or mean filtering, and then extract features from the denoised point cloud map, the features including density and curvature. The method for processing ultrasonic sensor data and extracting features is as follows: the ultrasonic signal is smoothed using a sliding window, and the actual distance is determined based on the time difference between the transmitted wave and the echo. The method for processing and extracting features from inertial measurement unit data is as follows: use a sliding window to smooth the acceleration data, and integrate the smoothed acceleration data to obtain velocity and displacement.
5. The automotive engine dynamic control method based on neural networks and FPGA as described in claim 4, characterized in that, The step of image preprocessing of photos captured by the camera specifically includes the following sub-steps: Grayscale conversion transforms color images into grayscale images, reducing computational load and model complexity. Resizing involves adjusting the image to a fixed size to ensure consistency of the input data. Normalization processes normalize pixel values to between 0 and 1, improving the model's convergence speed and training performance. The step of extracting image features from the preprocessed image specifically includes: using a convolutional neural network to extract features from the preprocessed image.
6. The automotive engine dynamic control method based on neural networks and FPGA as described in claim 3, characterized in that, The step of training the engine operating state prediction model using the sample data specifically includes the following sub-steps: The training data, which includes feature vectors and desired outputs, is input into the engine operating state prediction model. The training data is obtained by dividing the sample data. Features related to engine operating status are extracted based on feature vectors, and the extracted features are converted into probabilities of various engine operating states; The engine operating state with the highest probability is selected as the output of the output layer of the engine operating state prediction model. Calculate the error between the output of the output layer and the expected output, and use the error for backpropagation to adjust the model parameters until the model converges.
7. A dynamic control device for an automobile engine based on any one of the control methods of claims 1 to 6, characterized in that, include: Design a wiring module for designing FPGA wiring schemes; different engine operating states correspond to different wiring schemes. The model building module is used to set the wiring selector and build an engine operating state prediction model in the wiring selector; The data acquisition and model training module is used to acquire historical data of vehicle operation and use the historical data of vehicle operation to train the engine operation status prediction model. The prediction module is used to predict the engine operating status in real time using a trained engine operating status prediction model. The control module is used to control the FPGA to switch to the corresponding wiring scheme according to the engine operating state predicted by the engine operating state prediction model so as to control the engine to reach the predicted engine operating state.
Citation Information
Patent Citations
Control device and method of internal combustion engine, in-vehicle electronic control unit and manufacturing method of electronic control unit, machine learning system, and output parameter calculation device
CN111520241A
Energy demand control method and system, readable storage medium and vehicle
CN117841952A