1 Introduction

The wheel–rail contact forces are usually nonlinear, motion-dependent, time-varying and destabilizing. The wear, irregularity and fatigue of the wheel and rail are primarily due to the wheel–rail contact forces. As the interest in high-speed train continues to increase, stability and safety of operations have received much attention from the research community. It has become apparent that in order to design effective controls to improve the performance of the train in motion, and to monitor the health of the wheel and rail, we need a good knowledge about the wheel–rail contact forces. However, these contact forces cannot be directly measured when the train travels at high speed. Effective estimation of the wheel–rail contact dynamics from the train motion signals becomes a highly appealing approach. This paper presents such a method to estimate the wheel–rail contact forces and the corresponding parameters of a wheel–rail contact force model by making use of the motion measurements of a bogie.

There have been many studies of estimation of the wheel–rail contact forces in the literature. Various methods for estimation have been considered, including the inverse modeling, filter-based system identification method and modern machine learning algorithm with neural networks. The inverse identification technique was first proposed and applied to the wheel–rail contact force estimation in [1]. Later, a low-cost and constrained inverse wagon model was developed to estimate the wheel–rail contact forces [2]. The gray box inverse wagon model estimation method [3] was further investigated to overcome the limitations of the white box approach in [2]. The indirect method is another form of inverse modeling. An indirect model-based estimation method was proposed to investigate the wheel–rail contact force based on the derailment criteria [4]. The lateral forces on two different sides of the wheel were estimated through the improved indirect method [5]. The inverse methods are highly dependent upon the system model and are not effective with estimation of the time-varying dynamics.

The filter-based estimation of the wheel–rail interface force was first proposed in [6] using the extended Kalman filter, which was further developed in [7] as a nonlinear estimator and applied in [8] to estimate the lateral track irregularities. The advantage of the extended Kalman filter lies in that the parameters of the vehicle system can be estimated separately, with the help of a linearized model of the system. Kalman filter is a model-based estimation algorithm which requires the full system state measured [9]. Kalman filter is still a popular choice for researchers to estimate the wheel–rail contact forces [10, 11]. Kalman filter, particle filter and linear extended state observer are three state-of-the-art real-time estimation algorithms [12]. Numerical simulations prove that these three algorithms all have excellent performance. The vast applications of Kalman filter mentioned above indicate that the model-based estimation algorithm is practical and has the potential to estimate wheel–rail dynamics in real time.

Neural network from the machine learning area is another technique that has been used to estimate the wheel–rail contact forces and track irregularity [13] and to predict the safety of railway vehicles [14]. Neural networks can approximate the nonlinear complex functional relationship between the vehicle response and the wheel–rail contact forces without the need of a detailed model of the system.

The wheel–rail contact forces are inherently nonlinear, and change with the operating environment including temperature, cross-winds, raining, etc. These make it a challenge to model and estimate the contact forces. Moreover, the wheel–rail contact forces determine the hunting stability of the bogie system and play an important role in the maintenance and fault detection of the high-speed train. Inverse modeling, filtered-based estimation method, and machine learning algorithm have been extensively applied to estimate the wheel–rail contact force; however, these algorithms have quite limitations on the dynamics model, matrices calculation and system signals. These deficiencies of the existing algorithms motivate us to develop an algorithm to estimate the slow time-varying wheel–rail contact forces by making use of limited system signals without relying on the unknown dynamics model. Furthermore, once the wheel–rail contact forces are estimated, how to make full use of the estimated contact force for maintenance and fault detection of the high-speed train will be another crucial question. In this paper, the wheel–rail contact forces combined with the time-varying gravitational stiffness effect are viewed as unknown dynamics. An extended state observer (ESO) is implemented to estimate the unknown dynamics due to the wheel–rail interaction. Moreover, we would like to build a relationship between the motion signals and wear prediction. This will be a future study topic and has not been covered in the literature.

The ESO was first proposed in [15] and is one of the core concepts in the active disturbance rejection control (ADRC). A linear ESO was proposed in [16] which was much simpler to design than the general nonlinear ESO. Without exploiting the mathematical model of uncertainties, the ESO has been proven to be an effective approach to estimate disturbances and uncertainties [17]. This is the key advantage of the ESO. The ESO-based controls have been widely studied including the control of DC motor [18], wind energy system [19] and hypersonic vehicles [20]. A good survey about the development of extended state observer can be found in reference [21]. The extensive applications and accurate performance of the ESO motivate us to explore it for estimation of wheel–rail interactions. Without dealing with either the complex matrix calculation in Kalman filter or the data requirements in machine learning, the ESO is simple to implement and yields the same accurate results as Kalman filter and neural networks would. To implement the ESO, the reconstructed extended observer system is required to be observable. The observability of the ESO has drawn much attention from researchers when dealing with large-scale systems. The sufficient condition for observability of the ESO for structural systems with rigid body and elastic modes has been found in [22]. To investigate the observability of the ESO for reconstructed extended observer system, the special structure of the ESO helps us find the minimum number of sensors to estimate the wheel–rail dynamics, which has not been studied in other publications to the best of author’s knowledge.

In this paper, we adopt the linear ESO to estimate the wheel–rail interactions from motion measurements for a high-speed train bogie. We also investigate the observability of the linear ESO when applied to the bogie system. The main contributions of the paper are summarized below.

  1. 1.

    The wheel–rail interactions are first treated as the unknown dynamics which are estimated with an ESO from motion signals. The proposed ESO is proven to be observable and is shown to be able to capture the time-varying wheel–rail interactions with the motion measurements using a limited number of sensors.

  2. 2.

    A regression method is proposed to identify two key parameters of a wheel–rail contact force model: the lateral creep coefficient \(f_\eta \) and gravitational stiffness \(k_{gy}\). The regression model is then used to compute the wheel–rail contact forces. This result lays a foundation for further study of wheel creep damage and fatigue in the future.

The paper is organized as follows. Section 2 introduces the model of the bogie. A brief discussion on the model of the wheel–rail interaction and the influence of the contact conicity is presented. Section 3 presents the design of the ESO and discusses the observability of the ESO for the bogie. A condition for determining the number of motion sensors needed for observability is presented. Section 4 presents the regression method for identification of the parameters of the wheel–rail contact force model. Section 5 summarizes the computational steps of the proposed method. Section 6 presents simulation results to demonstrate the performance of the proposed method for estimating the wheel–rail contact forces from motion signals. Section 7 concludes the paper.

2 Dynamic model of the bogie

Consider the eight degree-of-freedom mathematical model of the bogie in [23, 24]

$$\begin{aligned} \textbf{M}{{\ddot{\textbf{z}}}}+{\textbf{C}}_{D}{\dot{\textbf{z}}}+{\textbf{K}}{\textbf{z}} =-{\textbf{K}}_{us}{\textbf{z}}+\textbf{Eu} \end{aligned}$$
(1)

where \({\textbf{z}}=[y_{w1},\varphi _{w1},y_{w2},\varphi _{w2},y_{f},\varphi _{f},y_{m1},y_{m2}]^{T}\in {\mathbb {R}}^{8\times 1}\) consists of eight linear and rotational displacements of the bogie. \({\textbf{u}}\in {\mathbb {R}}^{2\times 1}\) are two controls to be discussed later. \({\textbf{M}}\in R^{8\times 8}\) is the symmetric and positive definite mass matrix. \({\textbf{C}}_{D}\in {\mathbb {R}}^{8\times 8}\) is the symmetric semi-positive definite damping matrix. \({\textbf{K}}\in {\mathbb {R}}^{8\times 8}\) is the symmetric semi-positive stiffness matrix. \({\textbf{E}}\) \(\in {\mathbb {R}}^{8\times 2}\) is the matrix describing the influence of controls on the motion of the bogie.

The matrix \({\textbf{K}}_{us}\) is defined as:

$$\begin{aligned} {\textbf{K}}_{us} = \begin{bmatrix} {\textbf{K}}_{\lambda } &{} {\textbf{0}}_{4\times 4}\\ {\textbf{0}}_{4\times 4} &{} {\textbf{0}}_{4\times 4} \end{bmatrix}\in {\mathbb {R}}^{8\times 8} \end{aligned}$$
(2)

where

$$\begin{aligned} {\textbf{K}}_{\lambda } = \begin{bmatrix} k_{gy} &{} -2f_{\eta } &{} 0 &{} 0\\ \frac{2\lambda _e l_0 f_\xi }{r_0} &{} k_{g\psi } &{} 0 &{} 0\\ 0 &{} 0 &{} k_{gy} &{} -2f_{\eta }\\ 0 &{} 0 &{} \frac{2\lambda _e l_0 f_{\xi }}{r_0} &{} k_{g\psi } \end{bmatrix}\in {\mathbb {R}}^{4\times 4} \end{aligned}$$
(3)

\({\textbf{K}}_{us}{\textbf{z}}\) describes the wheel–rail interaction forces. The matrix \({\textbf{K}}_{us}\in {\mathbb {R}}^{8\times 8}\) is not symmetrical. An objective of this work is to develop an extended state observer to estimate the wheel–rail interaction forces from the signals of motion sensors. Definition of all the matrices and their numerical values can be found in Appendix A.

We first convert the equation of motion to the state space form as:

$$\begin{aligned} {\dot{\textbf{x}}}(t)&={\textbf{A}}_s{\textbf{x}}(t)+{\textbf{B}}_u{\textbf{u}}(t)+{\textbf{B}}_{f} {\textbf{f}}(t)\nonumber \\ {\textbf{y}}(t)&=\textbf{Cx}(t) \end{aligned}$$
(4)

where \({\textbf{x}}(t)=[{\textbf{z}},{\dot{\textbf{z}}}]^T\in {\mathbb {R}}^{16\times 1}\) is the state vector, and all other matrices are given by

$$\begin{aligned} {\textbf{A}}_s&= \begin{bmatrix} {\textbf{0}}_{8\times 8} &{} {\textbf{I}}_8\\ -{\textbf{M}}^{-1}{\textbf{K}}_{s} &{} -{\textbf{M}}^{-1}{\textbf{C}}_{D} \end{bmatrix} \in {\mathbb {R}}^{16\times 16}, \nonumber \\ {\textbf{B}}_u&= \begin{bmatrix} {\textbf{0}}_{8\times 2}\\ {\textbf{M}}^{-1}{\textbf{E}} \end{bmatrix} \in {\mathbb {R}}^{16\times 2}, \nonumber \\ {\textbf{B}}_{f}&= \begin{bmatrix} {\textbf{0}}_{8\times 4}\\ {\textbf{I}}_4 \\ {\textbf{0}}_{4\times 4} \end{bmatrix} \in {\mathbb {R}}^{16\times 4}, \nonumber \\ -{\textbf{M}}^{-1}{\textbf{K}}_{us}{\textbf{z}}(t)&= \begin{bmatrix} {\textbf{f}}(t) \\ {\textbf{0}}_{4\times 1} \end{bmatrix} \in {\mathbb {R}}^{8\times 1},\ \ {\textbf{f}}(t) \in {\mathbb {R}}^{4\times 1},\ \ {\textbf{C}} \in {\mathbb {R}}^{m\times 16}, \end{aligned}$$
(5)

\({\textbf{I}}_n\) denotes the \(n\times n\) identity matrix. \({\textbf{C}}\) is the output matrix. The dimension m of \({\textbf{C}}\) is equal to the number of the outputs or motion sensors. The choice of the motion sensors determines the observability of the system and is discussed in Sect. 3.1. \({\textbf{f}}(t)\) is referred to as the wheel–rail contact dynamics and appears in the top four equations of motion in Eq. (1).

2.1 Model of wheel–rail contact forces

The parameters in the matrix \({\textbf{K}}_{\lambda }\) in Eq. (3) are defined in Table 1. These parameters describe the wheel–rail geometry and creep behavior. The wheel–rail contact equivalent conicity \(\lambda _e\) in particular is a result of the wheel–rail interaction dynamics. In the linear theory, the wheel–rail contact equivalent conicity \(\lambda _e\) is taken to be a constant. In the nonlinear theory, \(\lambda _e\) is usually taken as a time-varying nonlinear function of the lateral displacement of the wheel set \(y_w(t)\) [25]. \(k_{gy}\), commonly known as the gravitational stiffness, is a function of \(\lambda _e\) and the weight given by [26, 27],

$$\begin{aligned} k_{gy} = \frac{\lambda _eW}{l_0} \end{aligned}$$
(6)

where W is the weight of the bogie and \(2l_0\) is the distance of the contact spot.

It is apparent that the parameters in the matrix \({\textbf{K}}_{\lambda }\) are all dynamic and may change with time. Hence, the wheel–rail contact forces and moments contributing to \({\textbf{f}}(t)\) in Eq. (4) cannot be determined a priori, and it is necessary to estimate them in real time. In the following, we present necessary equations in order to develop an algorithm for estimating the wheel–rail contact forces and moments from motion signals.

Table 1 Definition of the parameters in the matrix \({\textbf{K}}_{\lambda }\)

The top four lines in Eq. (1) involving the wheel–rail contact forces and moments are listed below:

$$\begin{aligned} \begin{aligned} m_w\ddot{y}_{w1} -k_{py}\dot{y}_{w1} - bk_{py}\dot{\varphi }_{w1} + k_{py}y_{w1}&= - F_{la1}\\ I_w\ddot{\varphi }_{w1} - l_1^2k_{px}\dot{\varphi }_{w1} + l_1^2k_{px}\varphi _{w1}&= - M_{la1} \\ m_w\ddot{y}_{w2} -k_{py}\dot{y}_{w2} - bk_{py}\dot{\varphi }_{w2} + k_{py}y_{w2}&= - F_{la2} \\ I_w\ddot{\varphi }_{w2} - l_1^2k_{px}\dot{\varphi }_{w2} + l_1^2k_{px}\varphi _{w2}&= - M_{la2} \end{aligned} \end{aligned}$$
(7)

where \(F_{la1}\), \(M_{la1}\), \(F_{la2}\) and \(M_{la2}\) are the wheel–rail contact forces and moments, and by making use of the matrix \({\textbf{K}}_{\lambda }\), can be expressed as:

$$\begin{aligned} \begin{aligned} F_{la1}&= \frac{2f_\eta }{v}\dot{y}_{w1} - 2f_\eta \varphi _{w1} + k_{gy}y_{w1} \\ M_{la1}&= \frac{2l_0^2f_\zeta }{v}\dot{\varphi }_{w1} + \frac{2\lambda _e l_0f_\zeta }{r_0} y_{w1} + k_{g\psi }\varphi _{w1} \\ F_{la2}&= \frac{2f_\eta }{v}\dot{y}_{w2} - 2f_\eta \varphi _{w2} + k_{gy}y_{w2} \\ M_{la2}&= \frac{2l_0^2f_\zeta }{v}\dot{\varphi }_{w2} + \frac{2\lambda _e l_0f_\zeta }{r_0} y_{w2} + k_{g\psi }\varphi _{w2} \end{aligned} \end{aligned}$$
(8)

Define a vector \({\textbf{F}}_{un} = [F_{la1}, M_{la1}, F_{la2}, M_{la2}]^T\). By definition, we have

$$\begin{aligned} {\textbf{K}}_{us}{\textbf{z}}(t) = \begin{bmatrix} {\textbf{F}}_{un} \\ {\textbf{0}}_{4\times 1} \end{bmatrix} \end{aligned}$$
(9)

Hence, the vector \({\textbf{F}}_{un}\) is related to the unknown wheel–rail contact dynamics \({\textbf{f}}(t)\) as follows:

$$\begin{aligned} \begin{bmatrix} {\textbf{F}}_{un} \\ {\textbf{0}}_{4\times 1} \end{bmatrix} = - {\textbf{M}} \begin{bmatrix} {\textbf{f}}(t) \\ {\textbf{0}}_{4\times 1} \end{bmatrix} \end{aligned}$$
(10)

If the wheel–rail interaction dynamics \({\textbf{f}}(t)\) can be estimated from an observer of the system in Eq. (4), the components of the wheel–rail contact force vector \({\textbf{F}}_{un}\) can be computed from Eq. (10). Next, we discuss how to estimate \({\textbf{f}}(t)\) from motion signals.

3 Extended state observer

Let us now design an extended state observer to estimate the time-varying wheel–rail contact dynamics \({\textbf{f}}(t)\) in Eq. (4). In order to estimate the wheel–rail contact dynamics \({\textbf{f}}(t)\), we introduce a new state vector as:

$$\begin{aligned} {\textbf{x}}_{n}(t)= {\textbf{f}}(t)\in {\mathbb {R}}^{4\times 1} \end{aligned}$$
(11)

Define an extended state vector as: \({\textbf{x}}_e(t)=[{\textbf{x}}(t); {\textbf{x}}_{n}(t)]\in {\mathbb {R}}^{20\times 1}\). The extended state equation reads

$$\begin{aligned} {\dot{\textbf{x}}}_e(t)&={\textbf{A}}_e{\textbf{x}}_e(t)+{\textbf{B}}_e{\textbf{u}}(t)+{\textbf{B}}_h{\textbf{h}} \nonumber \\ {\textbf{y}}_e(t)&={\textbf{C}}_e{\textbf{x}}_e(t) \end{aligned}$$
(12)

where the output of the extended state system is kept to be the same as the original output \({\textbf{y}}_e(t)={\textbf{y}}(t)\in {\mathbb {R}}^{m\times 1}\). The extended state system matrices and vectors \({\textbf{A}}_e\), \({\textbf{B}}_e\), \({\textbf{C}}_e\), \({\textbf{B}}_h\), and \({\textbf{h}}\) are given by

$$\begin{aligned} {\textbf{A}}_e&= \begin{bmatrix} {\textbf{A}}_s &{} {\textbf{B}}_f\\ {\textbf{0}}_{4\times 16} &{} {\textbf{0}}_{4\times 4} \end{bmatrix} \in {\mathbb {R}}^{20\times 20},\ \ {\textbf{B}}_e = \begin{bmatrix} {\textbf{B}}_u\\ {\textbf{0}}_{4\times 2} \end{bmatrix} \in {\mathbb {R}}^{20\times 2}\nonumber \\ {\textbf{C}}_e&= \begin{bmatrix} {\textbf{C}},{\textbf{0}}_{m\times 4} \end{bmatrix} \in {\mathbb {R}}^{m\times 20},\ \ {\textbf{B}}_h= \begin{bmatrix} {\textbf{0}}_{16\times 4}\\ {\textbf{I}}_4 \end{bmatrix} \in {\mathbb {R}}^{20\times 4}\nonumber \\ {\textbf{h}}&\approx {\dot{\textbf{f}}}(t) \in {\mathbb {R}}^{4\times 1} \end{aligned}$$
(13)

It should be noted that \( {\textbf{h}}\) is an estimate of the derivative of the unknown dynamic force \({\dot{\textbf{f}}}(t)\). Here we choose \({\textbf{y}}_e = [y_{w1}, \varphi _{W1}, y_{w2}, \varphi _{w2}]^T\) as the outputs of the system. As mentioned in [10], the wheelset positions and velocities can be derived from accelerometers, while the yaw angles can be estimated from gyros [28]. This topic is beyond the scope of this paper. However, it is validated that if the observability conditions in Sect. 3.1 are satisfied, the ESO is able to estimate the unknown dynamics in the system with different combination of sensors. This could lead to the topic of optimal sensors placement. Here, we focus on the available locations for the sensors to illustrate the performance of the ESO.

A linear extended state observer (LESO) for the extended state system in Eq. (12) can be designed as [16]:

$$\begin{aligned} \dot{\hat{{\textbf{x}}}}_e(t)&= {\textbf{A}}_e\hat{{\textbf{x}}}_e(t) + {\textbf{B}}_e{\textbf{u}}(t) +{\textbf{L}}({\textbf{y}}(t)-{\hat{\textbf{y}}}(t)) \end{aligned}$$
(14)
$$\begin{aligned} {\hat{\textbf{y}}}(t)&= {\textbf{C}}_e\hat{{\textbf{x}}}_e(t) \end{aligned}$$
(15)

where \({\textbf{L}}\) is the observer gain matrix, \(\hat{{\textbf{x}}}_e(t)\) is an estimate of the extended state \({\textbf{x}}_e(t)\). Define the estimation error as \(\tilde{{\textbf{x}}}_e(t)={\textbf{x}}_e(t)-\hat{{\textbf{x}}}_e(t)\). Making use of Eqs. (12) and (14), we obtain

$$\begin{aligned} \dot{\tilde{{\textbf{x}}}}_e(t) = ({\textbf{A}}_e-\textbf{LC}_e)\tilde{{\textbf{x}}}_e(t) + {\textbf{B}}_h{\textbf{h}}(t) \end{aligned}$$
(16)

Since the term \({\textbf{B}}_h{\textbf{h}}(t)\) can be viewed as an external disturbance to the observer, when the pair \(({\textbf{A}}_e,{\textbf{C}}_e)\) is observable, we can find a gain matrix \({\textbf{L}}\) to make the matrix \({\textbf{A}}_e-\textbf{LC}_e\) Hurwitz stable such that \({\textbf{A}}_e-\textbf{LC}_e\) converges 10 times faster than the original system \({\textbf{A}}_e\).

Hence, when the ESO system is observable and \({\textbf{h}}\) is bounded, the estimation error \(\tilde{{\textbf{x}}}_e(t)\) will be bounded. The upper bound of the estimation error can be readily obtained when the observer poles are selected [22].

Even though the term \({\textbf{B}}_h{\textbf{h}}(t)\) does not affect the observability of the ESO, a proper estimate of \({\textbf{h}}(t)\approx \dot{{\textbf{f}}}(t)\) will affect the accuracy of the estimation of the unknown dynamic forces. How to obtain the proper estimate of \(\dot{{\textbf{f}}}(t)\) is an issue for another study. In the literature, it is common to assume that \({\textbf{h}}(t)=0\) [17, 29].

3.1 Observability of ESO

In the following, we address the questions how many motion sensors should be used so that the system in Eq. (14) is observable. We first study the observability of the ESO and then consider the sensor choices for the bogie.

For the generality of discussion, we assume that \({\textbf{x}}(t)\in {\mathbb {R}}^{n\times 1}\), \({\textbf{A}}_s\in {\mathbb {R}}^{(n+p)\times (n+p)}\) and \({\textbf{h}}(t)\in {\mathbb {R}}^{p\times 1}\). The observability matrix of the ESO is defined as:

$$\begin{aligned} {\mathcal {O}}= \begin{bmatrix} {\textbf{C}}_e\\ {\textbf{C}}_e{\textbf{A}}_e\\ {\textbf{C}}_e{\textbf{A}}_e^2\\ \vdots \\ {\textbf{C}}_e{\textbf{A}}_e^{n-1} \end{bmatrix} \end{aligned}$$
(17)

When \({\mathcal {O}}\) has a full rank n, the system is observable. However, when the order of the system is high (\(n\gg 1\)) and when the state matrix \({\textbf{A}}_e\) is ill-conditioned, the numerical evaluation of the rank of \({\mathcal {O}}\) becomes highly unreliable. We have observed this difficulty with the state matrix of the bogie. An alternative way to check observability is to use the PBH test as stated in the following theorem.

Theorem 1

Consider the extended state matrix \({\textbf{A}}_e\in {\mathbb {R}}^{(n+p)\times (n+p)}\) and the output matrix \({\textbf{C}}_e\in {\mathbb {R}}^{m\times (n+p)}\). The pair (\({\textbf{A}}_e\),\({\textbf{C}}_e\)) is observable if and only if the matrix \({\mathcal {O}}_{\lambda }\in {\mathbb {R}}^{(n+p+m)\times (n+p)}\) defined as:

$$\begin{aligned} {\mathcal {O}}_{\lambda } \equiv \begin{bmatrix} {\textbf{A}}_e-\lambda _e{\textbf{I}}_{(n+p)}\\ {\textbf{C}}_e \end{bmatrix} \end{aligned}$$
(18)

has rank \(n+p\) for every eigenvalue \(\lambda _e\) of \({\textbf{A}}_e\), and for the corresponding right eigenvector \({\textbf{a}}\) of \({\textbf{A}}_e\) such that \({\textbf{C}}_e{\textbf{a}}\ne {\textbf{0}}\).

The proof of the theorem can be found in [30]. We shall apply Theorem 1 to determine the observability of the pair (\({\textbf{A}}_e\), \({\textbf{C}}_e\)) for the ESO. The observability condition of the ESO for large-scale systems has been studied before. In [22] and [31], the observability condition of the ESO is found to be \(m\ge q\). We have derived the observability condition using the block matrix properties and proposed a different way to check the rank of the matrix \({\mathcal {O}}_{\lambda }\). The results are summarized with a lemma in Appendix B.

Remark 1

We should point out the implication of the observability condition \(m\ge p\). The number p of independent unknown dynamics terms is clearly a lower bound for the number of motion sensors needed to make the ESO observable. This is the answer to the question of how many sensors are needed.

Remark 2

Another condition of Theorem 1, \({\textbf{C}}_e{\textbf{a}}\ne {\textbf{0}}\), has to be checked separately to confirm the observability of the ESO. A discussion of the physical implication of this condition is in order.

When \({\textbf{C}}_e{\textbf{a}} = {\textbf{0}}\) for an eigenvector \({\textbf{a}}\) of the matrix \({\textbf{A}}_e\), it indicates that for all the time \(t>0\), the entire array of motion sensors that provide the output signals return zero measurements of the system response consisting of a special combination of the states specified by the eigenvector \({\textbf{a}}\) of the matrix \({\textbf{A}}_e\). This is a rather special case. At the hardware design stage, we should avoid the sensor configuration such that \({\textbf{C}}_e{\textbf{a}} = {\textbf{0}}\) may be true for an eigenvector of the matrix \({\textbf{A}}_e\).

In the simulation studies, we shall check this condition for observability.

4 Parameter identification

Let us consider the lateral force \(F_{la1}\) as an example. We use the motion signals to identify the parameters in Eq. (8) including the lateral creep coefficient \(f_\eta \) and gravitational stiffness \(k_{gy}\). The recursive least squares (RLS) algorithm is adopted. The lateral creep coefficient \(f_\eta \) describes the contact condition between the wheel and rail, and the gravitational stiffness \(k_{gy}\) is related to the normal force at the wheel–rail contact point. These two parameters are important for wheel health monitoring and fatigue analysis.

Recall the first line of Eq. (7). The lateral force \(F_{la1}\) on a wheel consists of two parts: the lateral creep force and gravitational stiffness effect.

$$\begin{aligned} F_{la1} = F_{creep} + F_{gravity} \end{aligned}$$
(19)

where

$$\begin{aligned} F_{creep}&= \frac{2f_\eta }{v}\dot{y}_{w1} - 2f_\eta \varphi _{w1} \end{aligned}$$
(20)
$$\begin{aligned} F_{gravity}&= k_{gy}y_{w1} \end{aligned}$$
(21)

The lateral creep coefficient \(f_\eta \) and the gravitational stiffness \(k_{gy}\) are slowly time-varying during the train operation. Thus, it is important to identify these two parameters.

Let \(F_{la1}(i)\) denote the estimate of the lateral force \(F_{la1}\) at the \(i^{th}\) sample time step. \(\dot{y}_{w1}(i)\), \(y_{w1}(i)\) and \(\varphi _{w1}(i)\) are the motion measurements at the same time. By definition, we have

$$\begin{aligned} F_{la1}(i)&= \left( \frac{2\dot{y}_{w1}(i)}{v} - 2\varphi _{w1}(i)\right) f_\eta + k_{gy}y_{w1}(i)\nonumber \\&\quad \equiv \varvec{\varphi }^T(i)\varvec{\eta } \end{aligned}$$
(22)

where \(\varvec{\varphi }(i)\in {\mathbb {R}}^{2\times 1}\) is a vector of the motion signals and \(\varvec{\eta }\in {\mathbb {R}}^{2\times 1}\) is a vector of the unknown parameters.

$$\begin{aligned} \varvec{\varphi }(i)&= \left[ \frac{2\dot{y}_{w1}(i)}{v} - 2\varphi _{w1}(i), y_{w1}(i)\right] ^T \end{aligned}$$
(23)
$$\begin{aligned} \varvec{\eta }&= [f_\eta , k_{gy}]^T \end{aligned}$$
(24)

Define an objective function as:

$$\begin{aligned} J = \frac{1}{2}\sum _{i=1}^{n_s}(F_{la1}(i) - \varvec{\varphi }^T(i)\hat{\varvec{\eta }})^2 \end{aligned}$$
(25)

where \(n_s\) is the number of sampled data points of the motion signals and \(\hat{\varvec{\eta }}\) is an estimate of the parameter vector \(\varvec{\eta }\). \(\hat{\varvec{\eta }}\) is determined to minimize the objective function J. Introduce a data vector and a data matrix as:

$$\begin{aligned} {\textbf{F}}_{la1}&= [F_{la1}(1), F_{la1}(2), \cdots , F_{la1}(n_s)]^T \in {\mathbb {R}}^{n_s\times 1} \end{aligned}$$
(26)
$$\begin{aligned} \varvec{\phi }(n_s)&= [\varvec{\varphi }(1), \varvec{\varphi }(2), \cdots \varvec{\varphi }(n_s) ]^T \in {\mathbb {R}}^{n_s\times 2} \end{aligned}$$
(27)

Assume that for a given number \(n_s\) of data points, the data matrix \(\varvec{\phi }^T\varvec{\phi }(n_s)\in {\mathbb {R}}^{2\times 2}\) is non-singular. The optimal estimate of the parameter can be obtained as:

$$\begin{aligned} \hat{\varvec{\eta }}(n_s) ={\textbf{P}}(n_s)\varvec{\phi }^T{\textbf{F}}_{la1} \end{aligned}$$
(28)

where

$$\begin{aligned} {\textbf{P}}(n_s) = (\varvec{\phi }^T(n_s)\varvec{\phi }(n_s))^{-1} \end{aligned}$$
(29)

The optimal estimate can be computed with the recursive least squares algorithm when there is a sufficient number of data points, i.e., when \(n_s\gg 1\) [32]. Making use of Eqs. (28) and (29), we re-write the estimated parameter as:

$$\begin{aligned} \hat{\varvec{\eta }}(n_s)&= {\textbf{P}}(n_s)\sum _{i=1}^{n_s}\varvec{\varphi }(i) F_{la1}(i) \end{aligned}$$
(30)
$$\begin{aligned}&= {\textbf{P}}(n_s)\left[ \sum _{i=1}^{n_s-1}\varvec{\varphi }(i) F_{la1}(i) + \varvec{\varphi }(n_s) F_{la1}(n_s)\right] \end{aligned}$$
(31)
$$\begin{aligned}&={\textbf{P}}(n_s)[{\textbf{P}}^{-1}(n_s-1)\hat{\varvec{\eta }}(n_s-1) + \varvec{\varphi }(n_s) F_{la1}(n_s)] \end{aligned}$$
(32)

From Eq. (29), we have

$$\begin{aligned} {\textbf{P}}^{-1}(n_s)&= \varvec{\phi }^T(n_s)\varvec{\phi }(n_s) = \sum _{i=1}^{n_s}\varvec{\varphi }(i)\varvec{\varphi }^T(i)\nonumber \\&\quad =\sum _{i=1}^{n_s-1}\varvec{\varphi }(i)\varvec{\varphi }^T(i) + \varvec{\varphi }(n_s)\varvec{\varphi }^T(n_s)\nonumber \\&\quad ={\textbf{P}}^{-1}(n_s-1) + \varvec{\varphi }(n_s)\varvec{\varphi }^T(n_s) \end{aligned}$$
(33)

where \({\textbf{P}}^{-1}(n_s-1)\) can be computed as:

$$\begin{aligned} {\textbf{P}}^{-1}(n_s-1) = {\textbf{P}}^{-1}(n_s) - \varvec{\varphi }(n_s)\varvec{\varphi }^T(n_s) \end{aligned}$$
(34)

The final recursive equations are summarized as follows:

$$\begin{aligned} \hat{\varvec{\eta }}(n_s) = \hat{\varvec{\eta }}(n_s-1) + {\textbf{K}}(n_s)[F_{la1}(n_s) - \varvec{\varphi }^T(n_s)\hat{\varvec{\eta }}(n_s-1)] \end{aligned}$$
(35)

where

$$\begin{aligned} {\textbf{K}}(n_s)&= {\textbf{P}}(n_s)\varvec{\varphi }(n_s) \nonumber \\&\quad ={\textbf{P}}(n_s-1)\varvec{\varphi }(n_s)[{\textbf{I}} + \varvec{\varphi }^T(n_s) {\textbf{P}}(n_s-1) \varvec{\varphi }(n_s)]^{-1} \end{aligned}$$
(36)
$$\begin{aligned} {\textbf{P}}(n_s)&= [{\textbf{I}}-{\textbf{K}}(n_s)\varvec{\varphi }^T(n_s)]{\textbf{P}}(n_s-1) \end{aligned}$$
(37)

The convergence of parameter estimation and prediction error are discussed in Sect. 6.

Remark 3

In this section, we have only considered the lateral force \(F_{la1}\) and the identification of the two associated parameters. The same estimation algorithm can be applied to other forces and moments \(M_{la1}\), \(F_{la2}\) and \(M_{la2}\). Other parameters listed in Table 1 can also be estimated from the motion signals.

5 The algorithm

We are now ready to summarize the steps to estimate the wheel–rail interaction dynamics \({\textbf{f}}(t)\) and identify the parameters of a wheel–rail contact force model represented by the matrix \({\textbf{K}}_{\lambda }\).

  1. 1.

    Design an extended state observer (ESO) to estimate \({\textbf{f}}(t)\) from the state Eq. (4).

  2. 2.

    From Eq. (10), we compute the components of the vector \({\textbf{F}}_{un}\) without the need for the accurate parameters in the matrix \({\textbf{K}}_{\lambda }\).

  3. 3.

    With the extensive motion measurements together with the estimated wheel–rail contact forces \({\textbf{F}}_{un}\), we apply a regression method to identify the parameters of the wheel–rail contact force model in Eq. (8). Once the parameters of the model are identified, the components of the wheel–rail contact force vector \({\textbf{F}}_{un}\) that are responsible for creep and fatigue damages can then be predicted from the regression model such as the one in Eq. (22).

It should be noted that the regression method can be applied to the entire wheel–rail contact force vector \({\textbf{F}}_{un}\). This is, however, the topic of a separate study.

6 Simulations

In this section, we present simulations to demonstrate the ability of the ESO to estimate the unknown wheel–rail contact forces of the bogie and the effectiveness of the parameter identification algorithm. We assume that the bogie traveling at speed v is under a pre-designed full state feedback control to maintain its stability [24].

$$\begin{aligned} {\textbf{u}}(t) = -{\textbf{K}}_c{\textbf{x}}(t) \end{aligned}$$
(38)

where \({\textbf{K}}_c\) is the feedback gain matrix and \({\textbf{x}}(t)\) is the original system state.

The simulations are based on the model in Eq. (1) with all the parameters provided in Table 4. The sample time of the simulation is \(\Delta t=0.0001\) seconds.

6.1 Sensor selection and observability of ESO

Recall that the number of unknown wheel–rail contact forces is \(p = 4\). According to Lemma 1, we must have \(m\ge p\) so that the ESO is observable. That is to say, we must pick four or more outputs. Assume that we use m motion sensors to measure the displacements in the vector \({\textbf{z}}=[y_{w1},\varphi _{w1},y_{w2},\varphi _{w2},y_{f},\varphi _{f},y_{m1},y_{m2}]^{T}\in {\mathbb {R}}^{8\times 1}\). Numerical results of the PBH test for observability are summarized in Table 2 where different numbers of displacements are considered. The results show that the observability matrix \({\mathcal {O}}_{\lambda }\) has a full rank when \(m\ge p=4\). In the meantime, we can also verify that the condition \({\textbf{C}}_e{\textbf{a}}\ne 0\) of Theorem 1 holds. Hence, the ESO for the bogie is observable when \(m\ge 4\) and can indeed estimate the unknown wheel–rail contact dynamics accurately. This will be demonstrated later.

It is seen from the table that the computed rank of the observability matrix \({\mathcal {O}}\) with ill-conditioned system matrices is not reliable. Theoretically, when the number m of outputs is equal to the degrees of freedom 8 of the bogie, the system must be observable. However, the rank of the observability matrix \({\mathcal {O}}\) indicates that the system is not observable. The PBH test avoids the numerical difficulties in dealing with ill-conditioned matrices.

In the above numerical study, we use the displacement signals. If we use the velocities of the corresponding displacements instead, we shall arrive at the same conclusion on observability of the ESO.

Table 2 Numerical results of the rank of the two observability matrices for the extended state of the bogie as a function of the number m of motion sensors

6.2 Estimation of wheel–rail contact forces

Next, we report the results of estimation of the unknown wheel–rail contact dynamics. We select \(m=6\) as an example. The train speed is \(v=360km/h\). The observer gain \({\textbf{L}}\) is chosen such that the observer poles are 8 to 10 times faster than the poles of the closed-loop control system. The accuracy of the ESO estimation is examined in terms of the norm of the output error defined as:

$$\begin{aligned} ||{\textbf{e}}_y(t)|| = ||{\hat{\textbf{y}}}(t)- {\textbf{y}}(t)|| \end{aligned}$$
(39)

where \(||\cdot ||\) denotes the \(L_2\) norm.

The top sub-figure of Fig. 1 compares the estimated and true value of the first component of the output vector \(\hat{y}_1(t)\) and \(y_1(t)\). Note that \(y_1(t)=y_{w1}(t)\). The estimated output \(\hat{y}_1(t)\) tracks the true value closely. The error \({\textbf{e}}_y(t)\) of the entire output vector is shown in the bottom sub-figure of Fig. 1. The error is of order \(10^{-5}\).

Fig. 1
figure 1

Top: Comparison of the estimated output \(\hat{y}_1(t)\) from the ESO with the reference system output \(y_1(t)\) at the train speed \(v = 360 km/h\). Bottom: The norm of the output error vector \({\textbf{e}}_y(t)\)

The estimated wheel–rail contact dynamics are shown in Fig. 2. For each component of wheel–rail contact dynamics \({\textbf{f}}(t)\), the estimated contact dynamics \(\hat{{\textbf{f}}}(t)\) closely follow the reference \({\textbf{f}}(t)\). These and other simulation results indicate that the ESO can indeed estimate the outputs and states with a high accuracy, and the extended state \({\textbf{f}}(t)\), i.e., the wheel–rail contact dynamics with small bounded errors.

We also investigate the robustness of the ESO to disturbances. At \(t=11s\), a square-impulse disturbance d(t) is introduced as:

$$\begin{aligned} d(t) = 5\times 10^{-3}(H(t-11)-H(t-11.6)) \end{aligned}$$
(40)

where H(t) is the Heaviside step function. The results in Fig. 2 show that the observer tracks the output and wheel–rail contact dynamics quickly and is hence robust to disturbance. To further test the performance, the ESO is applied to the bogie at different train speeds: \(v = 100 km/h\) and \(v = 200 km/h\). The results are shown in Figs. 3 and 4.

Fig. 2
figure 2

Comparison of the estimated wheel–rail contact dynamics \(\hat{{\textbf{f}}}(t)\) from the ESO with the reference \({\textbf{f}}(t)\) at train speed \(v = 360 km/h\)

Fig. 3
figure 3

Comparison of the estimated wheel–rail contact dynamics \(\hat{{\textbf{f}}}(t)\) from the ESO with the reference \({\textbf{f}}(t)\) at train speed \(v = 100 km/h\)

Fig. 4
figure 4

Comparison of the estimated wheel–rail contact dynamics \(\hat{{\textbf{f}}}(t)\) from the ESO with the reference \({\textbf{f}}(t)\) at train speed \(v =200 km/h\)

6.3 Estimation of parameters

This section presents the results of parameter identification. The estimated parameters with the RLS algorithm are shown in Fig. 5. The nominal and estimated values of the parameters are listed in Table 3 for comparison. The percentage error is introduced to describe the accuracy of the estimation

$$\begin{aligned} Err (\%) =\frac{ \mid \hat{f}_\eta - f_\eta \mid }{f_\eta } \times 100 \end{aligned}$$
(41)

From Table 3, we can see that the percentage error of the estimation is quite small. All simulation results show that it is possible to estimate the parameters from motion measurements of the bogie with a reliable accuracy. The lateral creep coefficient \(f_\eta \) is estimated with 1.6412% error, and the gravitational stiffness \(k_{gy}\) is estimated with 0.5249% error.

Fig. 5
figure 5

Top: Convergence of the parameter estimation. Bottom: Percentage error of the estimated parameters

Table 3 Comparison between the nominal and estimated parameters

The predicted force \(\hat{F}_{la1}\) is calculated by using Eq. (22) with the estimated parameters as shown in Fig. 6. It can be seen from the figure that the predicted force has small errors, which indicates that the estimated parameters are close to their nominal values used in the simulation. The root mean square (RMS) error is introduced to quantify the accuracy of the predicted force \(\hat{F}_{la1}\).

$$\begin{aligned} e_{\textrm{RMS}} = \sqrt{\frac{1}{n_s}\sum _{i=1}^{n_s}(\hat{F}_{la1}(i)-F_{la1}(i))^2} \end{aligned}$$
(42)

\(e_{\textrm{RMS}}\) is calculated to be \(2.32\times 10^{-5}\) for the predicted force \(\hat{F}_{la1}\) in Fig. 6.

Fig. 6
figure 6

Comparison of the predicted lateral force \(\hat{F}_{la1}\) with the observed lateral force \(F_{la1}\) at train speed \(v=360 km/h\)

7 Conclusion

In this paper, we have developed a method to estimate the wheel–rail contact forces of the high-speed train bogie from its motion measurements. The extended state observer is used to estimate the wheel–rail contact dynamics, from which the components of the contact forces can be computed. We have studied the condition for observability of the extended state observer as a function of number of motion sensors. The observed wheel–rail contact forces together with the corresponding motion measurements are then used to estimate parameters of the wheel–rail contact force model. These results can help engineers to monitor the health of wheel and rail from motion signals. We should note that the knowledge of wheel–rail contact forces provides a foundation for wheel damage prediction. This will be the topic of a separate study. Extensive numerical simulations have been done. The results indicate that the extended state observer delivers excellent estimation performance for the bogie with a limited number of motion measurements. Finally, we should point out that the study reported in this paper is built on the knowledge of the simplified mathematical model of the bogie. The algorithm is proved to be efficient. The methodology developed in this work is applicable to a train compartment when a complex nominal model of the system is available. This could be an interesting topic for future studies.