Keywords

1 Introduction and Review

The advancement of super capacitors as a power storage medium and the introduction of efficient low voltage direct current motors have motivated researchers to develop direct current drive suitable for electric vehicle or hybrid electric vehcle(HEV) application [1,2,3,4].

1.1 Four Quadrants Drive DC Chopper and Chopper Operation Controller

The common half-bridge direct current chopper for direct current series motor is not suitable for electric vehicle or hybrid electric vehicle application as it cannot perform reverse driving, field weakening and resistive braking [5,6,7,8]. Therefore, a new four quadrants direct current drive chopper (FQDC) that offers a complete set of modes in forward and reverse driving, field weakening, parallel driving, generator, regenerative braking and resistive braking is needed. The FQDC is shown in Fig. 1 [9].

Fig. 1
figure 1

Four quadrants dc chopper

1.2 Chopper Operation Controller

The FQDC uses three controllers to select the right mode of operation, fire IGBTs, and delay the interchange of contactors. The controller that selects the mode of operation is called the chopper operation controller (COC). It contains an expert system, fuzzy logic, self tuning fuzzy logic or neural network algorithm that processes the input signals and determines the best operating mode to execute [10,11,12].

1.3 Neural Network as Chopper Operation Controller

A multilayer perceptron shown in Fig. 2 is a feedforward neural network with one or more hidden layers. It consists of input layer of source neurons, at least one middle or hidden layer and an output layer. The input layer accepts input signals and redistribute them to all neurons in the hidden layers. The output layer accepts output signals from hidden layer and establishes the output pattern. The weight of the neurons represent the features hidden in the input pattern. This multilayer feedforward neural network can be trained with back propagation algorithm such as Lavenberg–Marquardt (LM) technique [13].

Fig. 2
figure 2

Multilayer perceptron

2 Methodology

An electric car usually comes with some preset parameters such as maximum torque, speed and expected distance traversed when fully charged. In general, the performance of a particular EC is measured based on these parameters [11, 12, 14]. However, there are other factors that influence its performance like load and the profile of the route such as climbing up a steep hill, negotiating traffic jam, going downhill, etc. If a fully loaded EC climbs up a steep hill its speed will drop and a lot of energy is expended.

2.1 Proposed Control Strategy

The FQDC requires three controllers to support its operations and they are the chopper operation controller (COC), subsequent and delay controller (SAD) and IGBT firing controller (IFC) [15,16,17]. In this study, an ANN algorithm is implemented as the COC of the FQDC to choose the most suitable mode of operation in response to signals from accelerator pedal, brake pedal, speed, error, etc. Failure to choose the right mode is unacceptable and will be downright dangerous. Figure 3 shows the flow of determining the most suitable chopper operation for the EV by the ANN controller. When accelerator or brake pedal signal is received, relevant data such as speed, torque, error, rate of error, load and current mode are passed to the ANN controller and processed based on the inputs. The ANN operator generates an output value for each mode of operation. The output value indicates the fitness of each mode and the one with the highest output will be selected as the most suitable mode to be executed.

Fig. 3
figure 3

Block diagram of chopper operation controller with NN

2.2 Neural Network Data Training Preparation Process

2.2.1 Neural Network Data Preparation

To train the ANN controller, sufficient data, which include the input and output signal must be available. In preparing the needed data, the first step is to choose the profile of the route also known as the earth profile. Figure 4 shows examples of different earth profiles that can be used to test the EC. Each profile should comprise different driving conditions such as flat driving, going downhill and uphill, so that different modes of the controller are invoked.

Fig. 4
figure 4

Samples of earth profiles for training

2.2.2 Accelerator and Brakes Signals

In the second step, the expected accelerator and brake pedal signals that accompany each earth profile are prepared. The accelerator pedal and brake pedal signals for earth profile 1 in Fig. 4, are shown in Figs. 5 and 6 respectively.

Fig. 5
figure 5

Accelerator pedal signal

Fig. 6
figure 6

Brake pedal signal

2.2.3 Predetermined Chopper Operation

The output data set is the sequence of the chopper operation modes. It must be made available for the ANN training together with the input data. So first, raw input data are estimated logically using simple physics rule based on the earth profile, accelerator and brake pedal signals. Then, using the raw input data, the earth profile and the accelerator and brake signals, the sequence of the operation modes is determined. Figure 7 shows an example of the predetermined chopper mode sequence for a test earth profile. At any instance, only one mode is activated. In the figure, signal 9 is the accelerator pedal, signal 8 is the earth profile, signal 7 is the brake pedal and signals 1–6 are the chopper operation modes. During start up, the driving mode is selected. As the EC reaches a sufficient speed level, the mode switches to the field weakening as more speed is needed due to the high accelerator signal. When the EC attains the desired speed and the accelerator signal turns low, the generator mode is selected to recover the kinetic energy. When a normal brake command is detected at a high speed, the regenerative mode is activated. As the vehicle speed drops to a certain value while the brake signal is still high, the resistive braking mode is triggered. However when brake command is replaced by a low acceleration command at low vehicle speed, the driving mode is activated again. When the vehicle moves downhill while the accelerator signal is low, the generator mode should be selected. However, if the accelerator signal is high, the field weakening mode should be engaged. As the vehicle climbs a steep hill, the speed is expected to drop. Hence, as more torque is required the parallel mode is selected. Finally, as the vehicle gains more speed with the accelerator signal still high, the field weakening mode is selected.

Fig. 7
figure 7

Preset FQDC operation results

2.2.4 Matlab/Simulink Simulation Model

Once the raw data and the mode sequence are available, a simulation model of the FQDC [12] and the dynamic model of the EC are established using MATLAB/Simulink. Details of the EC vehicle dynamic model are not in the scope of this paper. The simulation model is prepared to obtain more realistic input and output data signals and to correct the data used earlier. Figure 8 below shows the MATLAB/Simulink model for the data collection.

Fig. 8
figure 8

Simulation model for four quadrants drive test

In this step, the data used for the ANN training are adjusted in case they appear illogical or they disregard the influence of intra-variables. As a result, an operation mode can be deleted, delayed or replaced in the mode sequence. Figure 9 shows delay adjustments to a set of modes.

Fig. 9
figure 9

Adjust the predetermined chopper operation modes

2.2.5 Gathering Data for NN Training

After the data adjustment step, the MATLAB/Simulink model is run again. This time, the generated data such as speed, error, rate of error, voltage, acceleration signal, brake signal, etc. are recorded. The data will be used as inputs while the chopper modes are used as outputs when training the ANN. Figures 10 and 11 show examples of the signals (normalized) and three different chopper modes.

Fig. 10
figure 10

Error, load, soc, dt, ROS input signals to ANN

Fig. 11
figure 11

Armature voltage, armature current, speed, torque

2.2.6 Target Output Signals for ANN Training

If a single ANN is used, the number of its output nodes can be one or equal to the number of modes. If the number of output node is one, it generates a real value. In this case, each mode is represented by a value within an interval as shown in Table 2. Note that the values representing the modes are equally separated. However, if the output nodes are as many as the modes, each output node can take a binary or real value as shown in Table 1.

Table 1 Target of NN controller
Table 2 Target of NN controller in single value integer

Another approach is to use as many ANNs as the number of modes. Thus each ANN has a single output as shown in Fig. 12. In this study, only one ANN is used and it has 6 output nodes as shown in Fig. 13. Each output node has a binary output.

Fig. 12
figure 12

Six NN controllers with single output

Fig. 13
figure 13

One single NN controller with six output nodes

2.3 Neural Network Training

The input and output data sets previously collected, are used to train the ANN controller in a supervised learning. MATLAB/Simulink neural network tool is used for this purpose (Fig. 14).

Fig. 14
figure 14

Matlab/Simulink tool for NN training

The number of nodes in the hidden layer and the number of iteration are adjusted during training to get the lowest error rate. Figure 15 shows the flow of training the ANN.

Fig. 15
figure 15

NN training process flow diagram

2.3.1 NN Training Results

The performance of the ANN controller is tabulated in confusion matrices of Figs. 16, 17, 18 and 19. The training, validation, testing and overall confusion matrices are given in Fig. 16. As seen, the number of incorrect responses for each mode is low, and thus the overall accuracy is high. In Fig. 17, the error histogram indicates that the distribution of errors for training, validation and test phases is almost at −0.033 and this is considered acceptable. Figure 18 shows the relationship between the outputs of the network and the targets. The training, validating and testing curves look similar indicating a good condition. In Fig. 19, the regression result is as expected result due to binary output target and this is acceptable. In Fig. 20, the receiver operating characteristics (ROC) is shown. The colored lines in each axis represent the ROC curves. The ROC curve is a plot of the true positive rate (1—sensitivity) versus the false negative rate (1—specificity) as the threshold is varied. A perfect test is shown in the figure in the left upper corner, with 100% sensitivity and 100% specificity [18].

Fig. 16
figure 16

Training confusion

Fig. 17
figure 17

Error histogram

Fig. 18
figure 18

NN performance

Fig. 19
figure 19

Regression

Fig. 20
figure 20

NN ROC

2.4 Testing the ANN

The ANN controller is tested with a new set of input signals to test its response. Figure 21 shows the simulation model and Fig. 22 shows the chopper operation controller (COC) responses.

Fig. 21
figure 21

NN COC testing simulation model

Fig. 22
figure 22

NN COC responses

3 Neural Network Controller Final Testing and Results

3.1 Development of Complete Simulation Model

Computer simulation using MATLAB/Simulink as shown in Fig. 23 is used to test the Neural Network chopper operation controller (COC) and to study its effectiveness in a complete system that represents an EC. Some parameters value that are required by the simulation software such as car weight, voltage supply, max power, etc. must be provided by the user.

Fig. 23
figure 23

MATLAB/Simulink model

3.2 Performance Index (PI)

As the ANN controller for this study has six outputs, a performance index(PI) is needed to compare each output of the ANN. The rule to follow is that the output node with the highest value represents the mode to be executed. A PI with “if then rules” is used in this study and in Fig. 24, the associated ANN controller is shown.

Fig. 24
figure 24

PI with NN controller

Such “if then rules” example is If O1 > O2 && O1 > O3 && O1 > O4 && O1 & O5 && O1 > O6, then selected mode is O1.

3.3 Results

The results of implementing the MATLAB/Simulink model are shown in Figs. 25, 26, 27, 28 and 29. Figure 25 shows a sequence of FQDC modes chosen by the ANN controller. Overall, the ANN picks the right mode of operation most of the time except where glitches occur at the end of the test. Figure 26 shows an enlarged view of the part where the glitches are. This is due to a slight confusion when the ANN controller is not sure whether to choose the field weakening or parallel mode. But eventually it picks the parallel mode, which is the correct decision. In Fig. 27 the motor speed is shown. The maximum acceleration and speed are restricted by the state of charge (SOC) of the battery and the remaining distance traverse shown in Fig. 28. The SOC is shown in Fig. 29.

Fig. 25
figure 25

Results of ANN as FQDC controller

Fig. 26
figure 26

NN controller output

Fig. 27
figure 27

Vehicle speed

Fig. 28
figure 28

Distance traverse

Fig. 29
figure 29

Battery SOC

4 Conclusion

ANN has a high potential to be utilized as the chopper operation controller (COC) for electric vehcile. In summary, the performance of the ANN, which operates as a COC with six outputs, is satisfactory. The results vindicate that the technique, which starts with preparing the input-output data for training the ANN controller and establishing the MATLAB/Simulink model, is successfully implemented. Retraining the network, increasing the number of hidden neurons, training vectors, input-output data, or trying different training algorithms may improve the performance of the system. The SOC, DT and speed may also influence its performance. The effects of adjusting these parameters will be discussed in another paper.