1 Introduction

The generation of electrical energy has been dependent on fossil fuels for many years, such as coal, natural gas, and oil [1], which cause environmental issues, and fossil fuel reserves decrease. These problems have made electricity generation go toward renewable energy sources such as gravitational energy, geothermal energy, wind energy, tides, and solar energy [2, 3]. Renewable energy sources have been taking a significant position in the replacement or complement of conventional power generation. The photovoltaic (PV) system based on solar energy emerges as a promising substitute among various renewable energy sources. PV systems have numerous benefits, including having no noise due to the absence of mechanical parts, low maintenance cost, long working life, and a great amount of solar irradiation that covers most of the earth’s surface [4]. The small unit in the PV system is the PV cell which produces low power. For increasing the output power, the PV cells are connected to make-up modules or panels. PV arrays combine series and parallel connections of PV panels and provide high current and high voltage [5].

PV systems' output is influenced by solar radiation and the surrounding environment's temperature [6, 7]; hence, there is a nonlinear relation between voltage and current [8]. From the electrical characteristic of the PV module, there is only one operating point, whereas output power is maximum and the module functions effectively. Designing an effective maximum power point tracking (MPPT) algorithm is necessary [9], which increases PV system efficiency by moving the PV module voltage or current to enable the PV module's operation at MPP.

Partial shading (PS) is a different issue that has a significant impact on PV efficiency. PS decreases the amount of sunlight that is allocated to the PV array resulting in lower output power from the PV array. Under PS multiple, local maximum power points (LMPP) emerge on the PV curve [10]. But there is one MPP of LMPP called the global maximum power point (GMPP). Consequently, creating a powerful MPPT algorithm is required for figuring out the GMPP.

Therefore, to overcome the above issues, many MPPT algorithms are proposed to get maximum power from the PV array under variable environmental conditions. In [11], the MPPT algorithms are classified into Conventional Techniques (CTs), Soft Computing Techniques, and linear and nonlinear control techniques. All these algorithms are used in a simulation environment before real systems. PV model has many important roles in optimization design, fault diagnosis [12], and prediction performance in the future of any PV system. Therefore, it should develop an accurate PV model to design a powerful MPPT controller.

Generally, there are two types of system models: dynamic and static [13]. The dynamical model for the PV system is preferred due to the load variation and the frequency harmonics of using the PWM for switching converters or inverters. The static model for PV modules is introduced in many kinds of literature [14,15,16,17,18], considering a static PV model which is the most used. The static model can be derived from parameter identification, which tries to make an approximation and solve analytically the equation of the PV being a first-order polynomial [15]. This means the static model is simplified and has low accuracy.

Alternatively, a second-order dynamic model for the PV module is proposed in [19], the technique which is proposed increases the model accuracy, but it does not consider the power electronics system. In [20], another dynamic model is introduced for a PV system based on system identification considering buck converter, MPPT, and load. This technique used experimental input–output data and a nonlinear Hammerstein–Wiener model to extract the dynamic model of integer order but did not show the transfer function. In [21], a new MPPT is proposed based on system identification. An integer-order model (IOM) is driven, whereas the temperature is the model input and the reference voltage at MPP is the output of the IOM. The reference voltage is compared with the PV voltage, the error is minimized by a proportional-integral (PI) controller, and the output of the PI controller is a variable duty cycle that switches the boost converter to reach the MPP. The performance of the method is compared with other techniques in the simulation environment, the proposed technique shows a better performance under variable conditions.

A fractional-order model of a photovoltaic (PV) system is proposed in this paper and applies the approach of system identification depending on black box modeling. In this study, the goal of system identification is to derive a dynamic system model from data gathered experimentally. The least squares method is used to reduce the difference between the output of the model and the experimental data. The Levenberg–Marquardt algorithm is applied for optimizing the model parameters under the nonlinear least squares technique. Using data from simulations and experiments with a dc-dc Boost converter, the model stability and validity are investigated.

The rest of this work is divided into the following sections: In Sect. 2, the structure of the PV system is presented. Discussion for the characteristics of the static PV module is introduced in Sect. 3. The procedure of modeling, fitting, and stability is investigated in Sect. 4. The experimental results and model validation are investigated in Sect. 5. Finally, Sect. 6 provides a brief conclusion for this study.

2 Related work

The PV system in this paper is off-grid and consists of a 60-W PV module, boost converter, MPPT controller, and dc load. The circuit diagram of the PV system is shown in Fig. 1.

Fig. 1
figure 1

Proposed PV system

The PV current measurement is used as input data for the system identification and the output power of the boost converter as output data. The identification method is based on nonlinear least squares estimation to minimize the error of the model output and the measured data. The Levenberg–Marquardt algorithm is used to solve nonlinear least squares problems [22] and to determine the parameters of the model.

A fractional-order model of a photovoltaic (PV) system is proposed in this paper. Fractional calculus is a generalization of ordinary differentiation and integration to arbitrary (non-integer) order. It is supposed that fractional-order models will generally provide a more accurate description of the system dynamics than that based on conventional differential equations because it gives more degrees of freedom for determining the parameters of the model. According to [23], the general definition of an integral differential operator is as follows:

$${}_{c}^{ } D_{t}^{\alpha } = \left\{ {\begin{array}{*{20}l} {\frac{{{\text{d}}^{\alpha } }}{{{\text{d}}t^{\alpha } }}, } \hfill & {\alpha > 0} \hfill \\ {1,} \hfill & {\alpha = 0} \hfill \\ {\mathop \smallint \limits_{0}^{t} \left( {{\text{d}}\tau } \right)^{ - \alpha } , } \hfill & {\alpha < 0} \hfill \\ \end{array} } \right.$$
(1)

where \(\alpha \in {\mathbb{R}}\) and \(\alpha\) can equal a complex number.

There are many multiple definitions of the fractional operator, we consider the definition of Grünwald–Letnikov, which is used throughout this paper to drive numerical solutions for fractional-order differential equations. Fractional-order systems modeling and controllers are implemented through the FOMCON toolbox for MATLAB/Simulink, and the toolbox Fractional-Order Modeling and Control “FOMCON” is developed in [24]. This toolbox will be used for system identification to extract the fractional-order model of the PV system.

3 Static PV model characteristics

A single diode model can describe the static behavior of a PV module and is proposed in many kinds of literature such as in [25, 26], and the electric circuit for the single diode model is shown in Fig. 2.

Fig. 2
figure 2

PV module equvilant circuit

From Fig. 2, the mathematical equation describing the static PV model can be driven as follows:

$${I}_{\mathrm{ph}}={I}_{\mathrm{D}}+{I}_{\mathrm{sh}}+{I}_{\mathrm{PV}}$$
(2)
$${I}_{\mathrm{PV}}={I}_{\mathrm{ph}}-\left({I}_{\mathrm{D}}+{I}_{\mathrm{sh}}\right)$$
(3)
$$I_{{{\text{PV}}}} = I_{{{\text{ph}}}} - I_{{{\text{sat}}}} \left[ {\exp \left( {\frac{{q\left( {V + R_{{\text{s}}} I_{{{\text{PV}}}} } \right)}}{{N_{{\text{s}}} AKT}}} \right)} \right]{-} \frac{{\left( {V + R_{{\text{s}}} I_{{{\text{PV}}}} } \right)}}{{R_{{{\text{sh}}}} }},$$
(4)

where \(I_{{{\text{ph}}}}\) is the photocurrent, \(I_{{{\text{sat}}}}\) is the reverse saturation current of the diode, q is the electron charge, A is the diode ideality factor, K is the Boltzmann constant, T is the PV module temperature, \(R_{{\text{s}}}\) is the series resistor, \(R_{{{\text{sh}}}}\) is the shunt resistor, and \(N_{{\text{s}}}\) is the number of connected PV cells in a series. \(I_{{{\text{ph}}}}\) which is produced by the PV module is influenced by the solar irradiance falling on the PV module plane and the ambient temperature of the PV module [27, 28] as follows:

$$I_{{{\text{ph}}}} = \frac{{I_{{{\text{rr}}}} }}{{I_{{{\text{rrs}}}} }}[ I_{{{\text{phs}}}} + k_{{\text{i}}} \Delta T ],$$
(5)

where \(I_{{{\text{phs}}}}\) is the photocurrent at Standard Test Condition (STC), \(K_{{\text{i}}}\) is the temperature coefficient, \(I_{{{\text{rrs}}}}\) is the irradiation at STC and \(\Delta T = T - T_{{\text{s}}}\) is the difference between the PV temperature (\(T\)) and STC temperature (\(T_{{\text{s}}} = 25\,^{ \circ } {\text{C}}\)). From Eqs. (4) and (5) the output current (\(I_{{{\text{PV}}}}\)) depends on the amount of sunlight and the PV temperature. The characteristics curves (I–V) and (P–V) for different irradiance and temperature are shown in Fig. 3.

Fig. 3
figure 3

I–V and P–V characteristics of the PV module

4 PV system modeling

The modeling process for dynamical systems is used to drive mathematical representation for the system and depends on two techniques: the first principle approach and the data-driven approach. In general, the modeling process can be organized into three techniques: white box modeling, gray box modeling, and black box modeling [29]. In white box modeling, the physics of the system is completely known, and the mathematical model can be created entirely from previous knowledge and physical understanding [30]. In gray box modeling, some of the physical parameters are known, and the other parameters are determined from measured input–output data. But the black box modeling is used when the physical properties of the model are unknown, and the model is constructed from measured input–output data. The chosen model structure belongs to the candidate models that are known to have good flexibility and have been successful in the past [31]. In this paper, the system identification methodology will use black box modeling. In the black box modeling method, many models are compared with the real data, so an optimization criterion can decide which is the best. Five basic stages characterize the system identification technique: (I) the measured input–output data, (II) The proposed model, (III) a criterion of fit and parameter estimation, (IV) the quality of the resulting model, and (V) the stability of the resulting model.

4.1 The measured input–output data

The data used in system identification are obtained from the PV system as shown in Fig. 1, whereas the input data are the PV current and the output data are the PV system output power.

4.2 The proposed model structures

The fractional-order model is considered in this paper. A generalized fractional-order dynamic system can be represented by the next equation [32]:

$$a_{n} {\mathcal{D}}^{{\alpha_{n} }} {\mathcal{Y}}\left( t \right) + a_{n - 1} {\mathcal{D}}^{{\alpha_{n - 1} }} {\mathcal{Y}}\left( t \right) + \ldots + a_{0} {\mathcal{D}}^{{\alpha_{0} }} {\mathcal{Y}}\left( t \right) = b_{m} {\mathcal{D}}^{{\beta_{m} }} {\mathfrak{u}}\left( t \right) + b_{m - 1} {\mathcal{D}}^{{\beta_{m - 1} }} {\mathfrak{u}}\left( t \right) + \ldots + a_{0} {\mathcal{D}}^{{\beta_{0} }} {\mathfrak{u}}\left( t \right),$$
(6)

the dynamic system in (6) can be written in the next form:

$$\sum_{k=0}^{n}{a}_{k}{\mathcal{D}}^{{\alpha }_{k}}\mathcal{Y}\left(t\right)= \sum_{k=0}^{m}{b}_{k}{\mathcal{D}}^{{\beta }_{k}}\mathfrak{u}\left(t\right) ,$$
(7)

where( \({a}_{k}\),\({b}_{k})\in \mathcal{R}\), and (\({\alpha }_{k},{\beta }_{k}\)) \(\in {\mathcal{R}}_{+}^{2}\). In (7), the system is said to be of commensurate order if the derivation orders are integer multiples of the base order q such that \({\alpha }_{k}\), \({\beta }_{k}=qk\), \(q\in {\mathcal{R}}^{+}\),. If \(q=\frac{1}{\mathcal{g}}\), \(\mathcal{g}\in {\mathbb{Z}}_{+}\), the system is said to be of rational order.

The Laplace transform of (7) can be written in the form:

$$\sum_{k=0}^{n}{a}_{k}{s}^{{\alpha }_{k}}Y\left(s\right)= \sum_{k=0}^{m}{b}_{k}{s}^{{\beta }_{k}}U\left(s\right),$$
(8)

then the fractional-order transfer function can be written in the form:

$$G\left(s\right)=\frac{Y\left(s\right)}{U\left(s\right)}=\frac{\sum_{k=0}^{m}{b}_{k}{s}^{{\beta }_{k}}}{\sum_{k=0}^{n}{a}_{k}{s}^{{\alpha }_{k}}} .$$
(9)

By considering the system is commensurate order q, we can write \(\mathcalligra{h} = s^{q}\); then, the continuous time rational transfer function is as follows:

$$H\left( \lambda \right) = \frac{{\mathop \sum \nolimits_{k = 0}^{m} b_{k} \mathcalligra{h}^{k} }}{{\mathop \sum \nolimits_{k = 0}^{n} a_{k} \mathcalligra{h}^{k} }} .$$
(10)

In fractional calculus, the differential operator has many definitions. The three most frequently used definitions for the general fractional integral differential are the Grünwald–Letnikov (GL) definition, the Riemann–Liouville (RL), and the Caputo definitions [33]. Grünwald–Letnikov definition is considered in this work to drive numerical solutions for fractional-order differential equations, which is given by the next equation:

$${}_{a}^{ } D_{t}^{ \alpha } = \mathop {\lim }\limits_{h \to 0} \frac{1}{{h^{\alpha } }} \mathop \sum \limits_{j}^{{\left[ {\frac{t - a}{h}} \right]}} \left( { - 1} \right)^{k} \left( {\begin{array}{*{20}c} \alpha \\ k \\ \end{array} } \right)f\left( {t - kh} \right),$$
(11)

where \(h\) is the step size, and the binomial coefficient can be expressed with Gamma function \(\Gamma \left(.\right)\) in the following expression:

$$\left(\begin{array}{c}\alpha \\ k\end{array}\right)=\frac{\alpha !}{k!\left(\propto -k\right)!}=\frac{\Gamma \left(\alpha +1\right)}{\Gamma \left(k+1\right)\Gamma \left(\alpha -k+1\right)} .$$
(12)

The Laplace transform of the Grünwald–Letnikov fractional operator is as follows:

$$\mathcal{L}\left[{\mathcal{D}}^{\alpha }f\left(t\right)\right]={S}^{\alpha }F\left(S\right).$$
(13)

Oustaloup’s recursive filter is an approximation for the fractional-order operator in a specified frequency range (\({\omega }_{b},{\omega }_{h}\)) and is capable of producing a very good fitting to the fractional-order elements [34, 35]. The approximation generates equivalent integer-order transfer functions describing the original system within a limited frequency band. The algorithm for Oustaloup’s recursive filter is shown in the following form:

$${S}^{\alpha } \approx \prod_{K=1}^{N}\frac{S+{\omega }_{k}^{^{\prime}}}{S+{\omega }_{k}} ,$$
(14)

where \({\omega }_{k}^{\mathrm{^{\prime}}}= {\omega }_{b}* {\omega }_{u}^{\frac{2k-1-\alpha }{N}}\),\({ \omega }_{k}= {\omega }_{b}* {\omega }_{u}^{\frac{2k-1+\alpha }{N}}\), \(K={\omega }_{h}^{\alpha }\), \({\omega }_{u}= \sqrt{\frac{{\omega }_{h}}{{\omega }_{b}}}\), and N is the approximation order in the frequency range (\({\omega }_{b},{\omega }_{h}\)).

4.3 Criterion of fitting and parameters estimation

The system identification method depends on the error minimization between the model output and the system output. In this work, the least-square method is applied for error minimizing, and the problem is expressed as follows:

$$\mathcal{F}\left(x\right)=\sum_{p=1}^{n}{\mathcalligra{e}}_{p},$$
(15)

where \({\mathcalligra{e}}_{p}={y}_{p}-{\widehat{y}}_{p}\) and \({\widehat{y}}_{p}=\widehat{\mathcal{H}}\left({\mu }_{p},\theta \right)\) is the output of the estimated model \(\widehat{\mathcal{H}}\) for the input signal (\({\mu }_{p}\)), \(p\) is the iteration, and \(\theta\) is the estimated parameters of the model\(\widehat{\mathcal{H}}\). From Eq. (7), the model parameter \(\theta\) is formed by:

$${a}_{r}=\left[{a}_{0} {a}_{1}\dots { a}_{m}\right], {\alpha }_{r}=\left[{\alpha }_{0} {\alpha }_{1}\dots { \alpha }_{m}\right], {b}_{\mathcal{F}}=\left[{b}_{0} {b}_{1} \dots {b}_{n}\right], {\beta }_{\mathcal{F}}=\left[{\beta }_{0} {\beta }_{1} \dots { \beta }_{n}\right].$$

In this work, the FOMCON toolbox of MATLAB is applied. The toolbox is based on fractional calculus for system modeling and control design. FOMCON toolbox uses the Levenberg–Marquardt algorithm for optimization of the model parameters θ under the nonlinear least squares technique. The Levenberg–Marquardt algorithm is described by Eq. (16), according to [22, 35, 36]:

$${-J}_{p}^{T}{\mathcalligra{e}}_{p}=\Delta {\theta }_{p} \left({J}_{p}^{T}{J}_{p}+\lambda I\right),$$
(16)

where \(\lambda\) is a positive scaler, called a damping factor, \(I\) is the identity matrix, and \(J\) is the Jacobian matrix of function \(\mathcal{F}\) and is defined as:

$$J=\left[\begin{array}{ccc}\frac{\partial {\mathcalligra{e}}_{\mathrm{1,1}}}{\partial {\theta }_{1}}& \frac{\partial {\mathcalligra{e}}_{\mathrm{1,1}}}{\partial {\theta }_{2}} \dots & \frac{\partial {\mathcalligra{e}}_{\mathrm{1,1}}}{\partial {\theta }_{N}}\\ \begin{array}{c}\frac{\partial {\mathcalligra{e}}_{\mathrm{1,2}}}{\partial {\theta }_{1}}\\ \dots \end{array}& \begin{array}{c}\frac{\partial {\mathcalligra{e}}_{\mathrm{1,2}}}{\partial {\theta }_{1}}\\ \dots \end{array} \dots & \begin{array}{c}\frac{\partial {\mathcalligra{e}}_{\mathrm{1,2}}}{\partial {\theta }_{N}}\\ \dots \end{array}\\ \frac{\partial {\mathcalligra{e}}_{1,m}}{\partial {\theta }_{1}}& \frac{\partial {\mathcalligra{e}}_{1,m}}{\partial {\theta }_{1}} \dots & \frac{\partial {\mathcalligra{e}}_{1,m}}{\partial {\theta }_{N}}\end{array}\right],$$
(17)

the update parameters are defined in Eq. (18):

$${\theta }_{p+1}={\theta }_{p}+\Delta {\theta }_{p}.$$
(18)

From Eqs. (16) and (18), the updated parameters of the identified model can be determined by Eq. (19):

$${\theta }_{p+1}={\theta }_{p} - \frac{{-J}_{p}^{T}{\mathcalligra{e}}_{p}}{\left({J}_{p}^{T}{J}_{p}+\lambda I\right)} .$$
(19)

4.4 The model quality

The quality of the identified model will be discussed in this section. Let \({y}_{s}\) denote the output data of the system, and \({y}_{d}\) denote the output data of the identified model. For the single input single output (SISO) system, both \({y}_{s}\) and \({y}_{d}\) are vectors of dimension N × 1, and the difference between \({y}_{s}\) and \({y}_{d}\) is the model output error; since \({y}_{s}\) and \({y}_{d}\) are vectors, then the error(\(e\)) is a vector of size N × 1 which is called residuals.

$$e= {y}_{s}-{y}_{d}.$$
(20)

The percentage fit for the identified model and the output of the system can be described as:

$$\mathrm{fit}=\left(1-\frac{\parallel e\parallel }{{y}_{s}-\overline{{y }_{s}}}\right)*100\% ,$$
(21)

where \(\parallel e\parallel\) is the Euclidean norm, and \(\overline{{y }_{s}}\) is the mean value of the system output data.

4.5 Stability analysis

To study and determine the stability of the fractional system, in this work, we consider Matignon’s stability theorem [36]:

Theorem 1

(Matignon’s stability theorem) The fractional transfer function G(s) = Z(s)/P(s) is stable if and only if the following condition is satisfied in the σ-plane:

$$\left|\mathit{arg}\left(\sigma \right)\right|>q\frac{\pi }{2} , \forall \sigma \in \complement , P\left(\sigma \right)=0,$$
(22)

where \(0 < q < 2\) and \(\sigma ={s}^{q}\). When \(\sigma =0\) is a single root of \(P \left(s\right),\) the system cannot be stable. For q = 1, this is the classical theorem of pole location in the complex plane: no pole is in the closed right plane of the first Riemann sheet.

The algorithm for determining system stability in (10) is shown in Fig. 4. According to Matignon’s stability theorem, fractional-order system stability in the complex plane is shown in Fig. 5.

Fig. 4
figure 4

The algorithm for determining the system stability

Fig. 5
figure 5

Stability of the fractional-order system

5 Experiments and results

From Fig. 1, the PV current \({I}_{\mathrm{PV}}\left(n\right)\) and the output power \({P}_{\mathrm{PV}}\left(n\right)\) are used as system identification input–output data, respectively. The measured data are collected under constant irradiation, constant temperature, and constant dc load for 1 min. For the implementation of the proposed technique, an ARDUINO ATMEGA2560 has been used as a microcontroller, a voltage divider for reading the analog date of the PV voltage, and a hall effect current sensor ACS7-12 is used for reading current. To store the signals, a HANTEK 2D42 oscilloscope has been used. To measure the PV current or the output current, a shunt resistor of 0.5 ohms is used. The data have been collected with a sample period of \({T}_{s}=100 \mathrm{mS}\). The collected data are provided for the FOMCON toolbox in MATLAB to develop the fractional-order model. The prototype of the PV system and boost converter has been designed as shown in Fig. 6 and the parameters of the PV module at STCs and the boost converter are presented in Tables 1 and 2.

Fig. 6
figure 6

Experimental setup for the developed PV System

Table 1 PV module specifications
Table 2 Boost converter specifications

Figure 7 displays the measurements of the PV current and boost converter's output power obtained from the prior experiment. The PV current and boost converter's output power were used as the input and output data, respectively, for the FOMCON toolbox in MATLAB. The Levenberg–Marquardt optimization algorithm is used for the optimization problem, and Oustaloup recursive filter approximation is used for model simulation in the time domain. The fractional-order model which is estimated by the FOMCON toolbox is shown in the following equation:

Fig. 7
figure 7

Measured input–output data

$$G\left(S\right)=\frac{{75.57 S}^{1.34}+18.85}{{6.87S}^{1.86}+{4.06 S}^{1.03}+1} ,$$
(23)

From Eq. (23), q is equal to 0.08. From Eq. (21), the fitting between the system output data and output of the model (23) is equal to 96.72%, and the error norm is equal to 52.8182. Following theorem 1, Fig. 8 shows the stability analysis for the estimated model in (23) satisfying condition (22). An area greater than \(q\frac{\pi }{2}\) is considered to be a stable region and an area less than \(q\frac{\pi }{2}\) is considered to be an unstable region. The zoomed plot shows that the shaded area does not contain any poles; therefore, the model in (23) is stable.

Fig. 8
figure 8

Stability of the identified model

5.1 Simulation results

The FOM transfer function has been coded in a MATLAB environment to study the time response and frequency response. Figure 9 shows the output of the FOM, the measured data, and the error norm between the FOM output and the measured output data. We can detect that there are noticeable differences between the two outputs. The realized error norm is equal to 52.8182, and the accuracy of the fitting is equal to 96.72%.

Fig. 9
figure 9

The fitting of the measured data and the FOM

The FOM transient response is shown in Fig. 10. We can observe that the output of FOM somewhat matches the output data. Figure 11 illustrates a little mismatch between the FOM output and the output data in the steady-state response. Hence, the FOM can capture the dynamics of the PV system.

Fig. 10
figure 10

The transient response for FOM

Fig. 11
figure 11

The steady-state response for the FOM

The frequency response for the FOM is shown in Fig. 12; we can detect that the FOM has a minor phase lag equal to \({45}^{^\circ }\), an infinity gain margin, and a phase margin \({135}^{^\circ }\) at a frequency equal to 100 Hz. Hence, the FOM is stable and can be used to design the closed-loop system.

Fig. 12
figure 12

The frequency response for the FOM

5.2 Comparison study

By contrasting the proposed model with another integer model built using the same experimental data and the MATLAB system identification toolbox, the model's validity can be checked. The selection of the integer model was dependent on many iterative processes. The best-fitted IOM shows an accuracy of 93.74%. Figure 13 illustrates the fitting between the measured output data and the IOM output. When the FOM is compared to the IOM, it is revealed that the accuracy of the FOM is higher. It is clear from Figs. 13 and 14 that the performance of the FOM is better than the IOM; then, the results show the validity of the proposed technique for constructing a FOM for the PV system. Table 3 displays a comparison of the FOM frequency response with the IOM frequency response. In [21], an IOM for the PV system is built using the system identification approach and shows an accuracy of 93.98%, so the constructed FOM in this paper shows better accuracy.

Fig. 13
figure 13

The fitting of the Measured output data and IOM output

Fig. 14
figure 14

The frequency response for FOM and IOM

Table 3 Frequency response comparison between FOM and IOM

5.3 Model validation

The accuracy of the selected model structure is tested by evaluating its behavior with a validation data set that has not been used before. The validation data set is collected from the PV system with artificial partial shading. A plastic sheet is used to cover the module at t \(=\) 120 s. The newly collected measured data are compared with the output of the identified model in Eq. (23).

Figure 15 shows the fitting of the validation data and the FOM output. It can be seen that the validation data match the FOM output well with 93.43% accuracy, the error norm is 97.2661, and the maximum squared error is 0.71. This demonstrates that the model estimating procedure is successful and that it is robust enough to handle a variety of inputs.

Fig. 15
figure 15

The fitting of the validation data and the FOM

6 Conclusion

In this paper, the PV system's dynamical fractional-order model is driven by the system identification approach. The identification process is based on the least squares technique for minimizing the error between the model output and the measured data. The Levenberg–Marquardt algorithm is used to estimate the parameters of the model using the measured input–output data. The FOMCON toolbox in MATLAB is applied here to construct the desired model, and the FOM shows an accuracy of 96.72%. Matignon's stability theorem verifies the stability of the fractional model, demonstrating that the created model is stable. An integer-order model is built and its performance is estimated to demonstrate the fractional-order model validation. Simulation results show that the FOM is more stable than the IOM, whereas the phase margin of the FOM is greater than the phase margin of the IOM and so the phase shift is. Such that the design of the controller for a closed-loop system is simpler for FOM than IOM.

In future works, a new MPPT technique can be developed using system identification of PV systems based on FOMs, whereas the reference voltage can be obtained as the output of the FOM and the irradiance or temperature as the input. The PV voltage is measured and compared with the reference voltage; then, the error can be minimized by the PID controller, fuzzy logic controller, or any optimization technique.