# Arc Modeling and Kurtosis Detection of Fault with Arc in Power Distribution Networks
## 4 Fault Detection and Power System Simulations
### Fault Detection Logic Using Kurtosis Detection  
Spectral kurtosis is a useful tool, which is capable of detecting non ideal components in a signal. Given these advantages, various kurtosis detection methods, such as tooth crack detection of wind turbines [21], stable operation of power systems [22] and electric motor bearing fault detection [23] have been applied in industrial applications.  
As described in Section IV, when the fault with arc exists, the phase current contains shoulder phenomenon in the faulted line. This shoulder phenomenon results in a nearly zero current region and a relatively sharper peak of the distribution of the phase current signal's amplitude compared with the Gaussian distribution, leading to an increase in the kurtosis index. On the other hand, when the fault does not exist, its distribution is closed to the Gaussian distribution, which ideally has a kurtosis index of 3. Suppose that the fault with arc has occurred in phase A, let us define the discrete time signal of the phase current as follows:  
\[I_{a}[k]=I_{m}\sin(\omega T_{s}k) \tag{5}\]  
where \(T_{s}\) and \(k\) are the sampling interval and sampling index, respectively. For a signal \(I_{a}[k]\), the excess kurtosis index is defined as follows:  
\[EK[I_{a}]=\frac{\frac{1}{N}\left[\sum\limits_{i=k}^{k+N-1}\left(I_{a}[k]-\bar{I }_{a}\right)^{4}\right]}{\left(\frac{1}{N}\left[\sum\limits_{i=k}^{k+N-1}\left( I_{a}[k]-\bar{I}_{a}\right)^{2}\right]\right)^{2}}-K_{Gaussian} \tag{6}\]  
where \(N\) and \(\bar{I}_{a}\) denote the number of \(I_{a}[k]\) and the mean of \(I_{a}[k]\) during the \(N\) period, respectively. Additionally, \(K_{Gaussian}\) denotes the kurtosis index of the Gaussian distribu  
Figure 8: Phase voltage and phase current in simulations. (**a**) Phase voltage. (**b**) Phase current. (**c**) Phase current (zoomed in x- and y-axis).  
tion. The proposed fault detection logic can be presented in Algorithm 1. Description of the variables used in Algorithm 1 are as follows:  
* \(k\): sampling index of digital processor;
* \(N_{1,k}\): numerator coefficient at the k-th sampling index;
* \(D_{1,k}\): denominator coefficient at the k-th sampling index;
* \(N_{2,k}\): numerator coefficient for the N-th period;
* \(D_{2,k}\): denominator coefficient for the N-th period;
* \(N_{3,k}\): numerator average coefficient for the N-th period;
* \(D_{3,k}\): denominator average coefficient for the N-th period;
* \(EK_{k}\): excess kurtosis value at the k-th sampling index;
* \(EK_{th}\): excess kurtosis threshold value;
* \(CEK_{k}\): arbitrary excess kurtosis value at the k-th sampling index;
* \(TEK_{k}\): total excess kurtosis value at the k-th sampling index;
* \(FD_{k}\): fault detector value at the k-th sampling index.  
A flowchart of Algorithm 1 is shown in Figure 9.  
Figure 9: Flowchart of the proposed fault detection algorithm.  
```
1:Let \(N\gets floor(\omega/(2\pi T_{s}))\)\(\triangleright\)\(N\): Sampled data number of moving window
2:\(\bar{I}_{a}\gets 0,k\gets 1,TEK\gets 0,CEK\gets 0\), \(K_{Gaussian}\gets 1.5\)\(\triangleright\) Initialization
4:functionFaultDetector(\(I_{a}\), \(N\))
5:while\(k+N-1\leq L\)do\(\triangleright\)\(L\): max\(k\)
6:for\(i=k\) to \(k+N-1\)do
7:\(N_{1,k}\leftarrow(I_{a}[k]-I_{a})^{4}\)
8:\(D_{1,k}\leftarrow(I_{a}[k]-I_{a})^{2}\)
9:\(N_{2,k}\leftarrow\sum\limits_{i=k}^{k+N-1}N_{1,k}\)
10:\(D_{2,k}\leftarrow\sum\limits_{i=k}^{k+N-1}D_{1,k}\)
11:\(N_{3,k}\leftarrow\frac{N_{2,k}}{N}\)
12:\(D_{3,k}\leftarrow(\frac{D_{2,k}}{N})^{2}\)
13:\(EK_{k}\leftarrow\frac{N_{3,k}}{D_{3,k}}\)
14:if\(EK_{k}\geq EK_{th}\)then
15:\(CEK_{k}\gets 1\)
16:\(TEK_{k}=\sum\limits_{i=k-(1/(10T_{s})-1)}^{k}CEK_{k}\)
17:if\(\sum\
olimits_{TEK_{k}-(1/(10T_{s})-1)}^{TEK_{k}}\geq 1/(10T_{s})\)then
18:\(FD_{k}\gets 1\)
19:else
20:\(FD_{k}\gets 0\)
21:endif
22:else
23:\(CEK_{k}\gets 0\)
24:\(TEK_{k}\gets 0\)
25:\(FD_{k}\gets 0\)
26:endif
27:\(k=k+1\)\(\triangleright\)\(i\): index update
28:endfor
29:endwhile
30:endfunction
```  
**Algorithm 1** The pseudo-code describing the proposed fault detection method is presented