1 Introduction

For several years, the tram systems have been rapidly developed and upgraded all over the world. The undoubted leader in this field is France. Since the late 1980s, tram networks have been opened in 25 cities of France. French trams and technical track-designing solutions are used in all the continents. Along with the revival of trams, the rolling stock has been changed. The vehicles are being adapted to the needs of people with limited mobility. Consequently, the approach to the designing and maintenance of track structure is changing. In order to eliminate common operational problems, there are attempts being made to modify the classical tramways. An example of such solution is the rubber-tired tramway (Translohr), shown in Fig. 1.

Fig. 1
figure 1

Rubber-tired tramway on T6 line in Paris (photo Jacek Szmaglinski)

Precise defining of the track layout is one of the most important issues enabling to draw up track inventory. Accordingly, the detection of defects in a track shape provides proper design works. However, the process of setting out the tram route and determining the geometric layout of operating track is based on traditional surveying methods. The main disadvantage of the described methods is that the railway needs to be divided to the various sections which differ in the accuracy of positioning.

The simplest methods are based on the direct measurements of the horizontal rise of arc and determining the geometric layout, created from the curvature graph. However, this procedure is performed on the local reference system with transformation, which can lead to serious errors. The most common mistakes are connected with the inaccurate definition of the returning route angle. As a result, during the track lining some unintentional curvature smoothing might occur.

Within the measurements of track axis coordinates (optionally stretch of rails), the problem resulting from the transformation can be eliminated. Frequently, the track axis is measured with a tachymeter referring to the surveying grid-fixed points. This procedure is performed locally and involves the individual parts of a route. Thus, the coordinates of the prism (set by the crew in the track axis) are determined by a stationary tachymeter (placed on the fixed point). Alternatively, the prisms are stationary (on fixed points) while the tachymeter is moved along the track, at this time the coordinates of the total station are defined [2]. However, the locally measured coordinates require adjustments. As a result, additional errors may appear and the assessment of the geometrical layout of the track becomes problematic, especially for the long sections of the railway route.

2 Modern Measuring Methods

The classical methods of specifying the track geometrical layout are time-consuming and require accurate maintenance of surveying grids (located along the track). For this reason, the work on developing a comprehensive method is being continued for a long time. It should be faster and more accurate in determining the values of basic track geometrical parameters. One of the currently used solutions is to measure the acceleration occurring on the rail vehicle (i.e., accelerometry). The measurement is performed with the use of track-recording cars moving with relatively high velocity (sometimes exceeding 100 kph). This allows researchers to determine the irregularities of the track and its impact on the appearing acceleration (especially vertical) resulting in the decrease in comfort. However, this method of defining the track geometrical layout is facing a number of difficulties related with the exponential nature of errors rising together with the distance [20]. Simultaneously, due to the high velocity of ride, the identification of the characteristic elements of track (such as turnouts, semaphores, etc.) may be difficult.

Estimating the track geometrical layout with laser scanning method has been developed recently [1]. This technique involves mobile laser scanning of the track and its surroundings. Subsequently, the geometrical layout is determined due to so-called point cloud often containing huge collection of points (with their coordinates). It is possible to install the scanner on either moving rail vehicle or on plane (helicopter, airplane, etc.). Route scanning performed from above uses photogrammetry measuring methods [19]. The accuracy of the point measurement is approximately 2–3 cm and allows researchers to determine the position of turnouts and track equipment. However, using laser scanning method with the moving base is connected with a rapid increase in errors when defining the position.

The accuracy of the positioning might be increased by combining different measurement methods. For example, the UFM-120 track-recording car determines the track geometrical layout using the accelerometer and gyroscope. Simultaneously, the error correction is carried out by using global positioning system (GPS) method [20, 21]. The measurement of the position with GPS system plays supplementary role in the described case. For this reason, using inexpensive single-frequency GPS receivers without differential correction is well-grounded.

Ceaseless development of the satellite radio navigation measurement techniques creates an opportunity to search for a way to determine the track geometrical layout. Since the beginning of the twenty-first century, the dual-frequency receivers have been used for precise measurements in the USA (High Accuracy Differential GPS technology) [7, 14]. In order to determine the coordinates of the track, the GPS antenna (rover) was installed on the Nolans TS-1 hand trolley (Fig. 2). Differential corrections were transmitted via radio from the second receiver (reference) set on the point with known coordinates. The coordinates of the track were measured by real-time kinematics (RTK) method. During the research, the receivers were installed on rail–road vehicles. The repeatability of the measurements was tested with different velocities (from 2.23 to 6.70 m/s). The results were very promising. The obtained horizontal accuracy of position determination was 12 mm while the vertical was 22 mm. However, the measuring distance was relatively short (425 m long). Therefore, the decrease in the accuracy connected with the rising distance from the base station was not specified. Using the described method for longer sections (several kilometers), results in the decrease in accuracy of approximately 10 mm for each additional kilometer. An alternative solution is to shift the reference station position continuously with the change of the part of a measured length. Nevertheless, the additional errors related to the movement of the geodetic fixed points should be taken into consideration.

Fig. 2
figure 2

Lightweight Nolan’s Tool and Supply Cart TS-1, used as a basis for the GPS receiver [17]

3 Mobile Satellite Measurements

In 2009, a research team consisting of the Gdansk University of Technology, the Gdynia Maritime Academy employees and the Polish Naval Academy was created. The purpose of the team was to investigate the possibility of using GNSS measurements to determine the shape of the rail track. The first surveys were carried out in February 2009 in relation to about 50-km section of railway line from Koscierzyna to Kartuzy in northern Poland. In the following years, the research included both railway and tram lines. The first measurements were taken using four Leica 1200 receivers placed above the wheels of the two-axle platform wagon. The measuring set was pulled at a constant speed by a WM-15 diesel motor car. Observations were performed in the distance mode with 300-mm interval, and communication with ASG-SERVICE [9] was provided by a general packet radio service (GPRS) modem. The coordinates or the track were recorded and calculated in real-time mode. Studies have confirmed the inventory of long sections of railway lines with respect to GNSS measurements [4, 13].

In subsequent measurements, performed in the following year, the settings of receivers were modified. Due to the fact that the location of the power car driver’s cab was near to the two antennas, partial horizon obscuration and increase in geometrical factor dilution of precision (DOP) occurred. Dilution of precision factor is responsible for the obtained accuracy. The additional platform with three antennas mounted above the axles was attached to the measurement set [5] as shown in Fig. 3.

Fig. 3
figure 3

The measuring set used in the 2010 campaign

The experience and technology developed during the tram tracks research in 2012–2014 were used in the 2015 measurement campaign on railway tracks. It proved that tram boogies prepared by the scientific team could be easily used on the railroad tracks measurements.

4 Satellite Measurements of Tram Tracks

After a thorough analysis of the results obtained from the campaigns carried out in the years 2009–2010, significant changes in the methodology of research were introduced [11]:

  • Resignation from implementation of the real-time calculations due to a momentary interruptions in differential corrections packet transmitting, caused by a large number of users in specific times of the day,

  • Performing the post-processing calculations which allowed greater flexibility in the use of signals from different reference stations,

  • The single-system (GPS) Leica 1200 receiver was changed to dual-system [GPS/GLONASS (Globalnaja Nawigacionnaja Sputnikowaja Sistiema)] Leica Viva receiver because the measurement accuracy depends directly on the number of available satellites,

  • An alternative solution to ASG-EUPOS corrections (in 2012 it did not support GLONASS) was used.

Based on the presented assumptions, in February 2012 the first measurement campaign on the tram track in the city of Gdansk in northern Poland was carried out. The boogies from pre-war tramway Danziger Wagon Fabrik (DWF) 300 series were used as a measuring set. The GNSS receivers were mounted in the geometrical center of each boogie. Position of antennas was determined using the Leica TCRA 1103 precise tachymeter. The GS-15 antenna was mounted on the first boogie, and GS-12 on the last one. Antennas transmitted data to CS-15 controllers using the Bluetooth radio communication. Boogies were attached to N8C-MF01 #1151 tramway power car. The choice of such a specific car was caused by its universality (it was suited to operate on entire tram network in Gdansk) and the ability to drive at a constant speed of 4.17 m/s without a risk of damage to the vehicle. The measuring train is shown in Fig. 4.

Fig. 4
figure 4

The tram track measuring set

Due to the required low speed of the ride, a need to organize the measurements at night was decided so as not to disturb the functioning of regular tram transport. It was planned that the inventory of 54 km of single track throughout the city would be executed between 23:15 and 04:39 (about 5.5 h) [11].

The second measurement campaign was performed in September 2013 during night. This time, it was planned to focus on the measurements repeatability analysis by making a triple ride in the section between the city center and tram loop Łostowice Świetokrzyska. During this test, the short (about 250 m) section of a straight track in one of the tracks has been chosen to be measured more precisely by several rides [12].

The control measurement on the described section above was performed in April 2014. Coordinates of the track axis were designated every 30 cm using tachymeter. Subsequently, several rides were carried out using hand-operated GRAW iTEC troley with mounted Leica Viva GS-15 receiver. The resulting image of tram lines, measured in 2012–2014, is shown in Fig. 5.

Fig. 5
figure 5

Measured coordinates of tram tracks in Gdansk (Gauss conformal projection)

5 The Accuracy Analysis

During the first measurement campaign (in 2012), 15,854 coordinates were determined by the Leica Viva GS15 receiver and 16,015 by Leica Viva GS12 receiver. It turned out that the distance between the points was not meeting assumptions of the method. As a matter of fact, the achieved density of the coordinates was 3.6 m, while assumed level was less than 0.3 m. The wrong way of setting the recording frequency of the receivers was the cause of failure. Still, the achieved results of the inventory were interesting.

The second measurement campaign was performed in 2013. The studies considered the need to meet the assumptions of the method. Simultaneously, the analysis was limited to multiple passage between the City Center and Lostowice tram loop due to the data obtained in the previous measurements of the tram line. In total, 240,620 designations were obtained with their average density of 0.13 m.

In 2014, 70-m-long track section was investigated. This time, two different references Active Geodetic Network (Leica SmartNet and ASG-EUPOS) were used. Number of position for each networks was 29,318 and 12,102 fixes. The average density of the measurements was 0.05 m. A total of 219 coordinates of reference points were determined with the precise tachymeter (density of 0.3 m).

The measurements have been conducted in three different modes:

  • Code—collects only GNSS code, no phase solution, meter accuracy,

  • xRTK—phases GNSS measurement, decimeter accuracy,

  • Phase—phases GNSS measurement, centimeter accuracy.

Only the phase measurement allows for track inventory to be with the necessary accuracy. It consists of measuring the differences in phase of waves with different frequencies (due to Doppler effect related to the very high speed of satellites). In addition to the unknown three-dimensional coordinates XYZ, there are additional unknowns in the equation system associated with unspecified phase cycles and GNSS receiver clock errors. For this reason, it is necessary to measure the pseudoranges to four satellites for three times, which results in a system of twelve equations with ten unknowns. This system can be written as L = G × X, where L is the matrix of measurements, G is the matrix of coefficients and X is the matrix of unknowns [8]. Equations 14 represent the matrix coefficients L, G i X.

$$\left| {\begin{array}{*{20}l} {\lambda \cdot \rho_{1} \left( {t_{0} } \right) - L_{o,1} \left( {t_{0} } \right) + c \cdot \delta_{s,1} \left( {t_{0} } \right)} \hfill \\ {\lambda \cdot \rho_{2} (t_{0} ) - L_{o,2} (t_{0} ) + c \cdot \delta_{s,2} (t_{0} )} \hfill \\ {\lambda \cdot \rho_{3} (t_{0} ) - L_{o,3} (t_{0} ) + c \cdot \delta_{s,3} (t_{0} )} \hfill \\ {\lambda \cdot \rho_{4} (t_{0} ) - L_{o,4} (t_{0} ) + c \cdot \delta_{s,4} (t_{0} )} \hfill \\ {\lambda \cdot \rho_{1} (t_{1} ) - L_{o,1} (t_{1} ) + c \cdot \delta_{s,1} (t_{1} )} \hfill \\ {\lambda \cdot \rho_{2} \left( {t_{1} } \right) - L_{o,2} \left( {t_{1} } \right) + c \cdot \delta_{s,2} \left( {t_{1} } \right)} \hfill \\ {\lambda \cdot \rho_{3} \left( {t_{1} } \right) - L_{o,3} \left( {t_{1} } \right) + c \cdot \delta_{s,3} \left( {t_{1} } \right)} \hfill \\ {\lambda \cdot \rho_{4} \left( {t_{1} } \right) - L_{o,4} \left( {t_{1} } \right) + c \cdot \delta_{s,4} \left( {t_{1} } \right)} \hfill \\ {\lambda \cdot \rho_{1} \left( {t_{2} } \right) - L_{o,1} \left( {t_{2} } \right) + c \cdot \delta_{s,1} \left( {t_{2} } \right)} \hfill \\ {\lambda \cdot \rho_{2} \left( {t_{2} } \right) - L_{o,2} \left( {t_{2} } \right) + c \cdot \delta_{s,2} \left( {t_{2} } \right)} \hfill \\ {\lambda \cdot \rho_{3} \left( {t_{2} } \right) - L_{o,3} \left( {t_{2} } \right) + c \cdot \delta_{s,3} \left( {t_{2} } \right)} \hfill \\ {\lambda \cdot \rho_{4} \left( {t_{2} } \right) - L_{o,4} \left( {t_{2} } \right) + c \cdot \delta_{s,4} \left( {t_{2} } \right)} \hfill \\ \end{array} } \right| = \left| {\begin{array}{*{20}l} {u_{x,1} (t_{0} )} \hfill & {u_{y,1} (t_{0} )} \hfill & {u_{z,1} (t_{0} )} \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill & 0 \hfill & 0 \hfill \\ {u_{x,2} \left( {t_{0} } \right)} \hfill & {u_{y,2} \left( {t_{0} } \right)} \hfill & {u_{z,2} \left( {t_{0} } \right)} \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & c \hfill & 0 \hfill & 0 \hfill \\ {u_{x,3} \left( {t_{0} } \right)} \hfill & {u_{y,3} \left( {t_{0} } \right)} \hfill & {u_{z,3} \left( {t_{0} } \right)} \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & c \hfill & 0 \hfill & 0 \hfill \\ {u_{x,4} \left( {t_{0} } \right)} \hfill & {u_{y,4} \left( {t_{0} } \right)} \hfill & {u_{z,4} \left( {t_{0} } \right)} \hfill & 0 \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & c \hfill & 0 \hfill & 0 \hfill \\ {u_{x,1} \left( {t_{1} } \right)} \hfill & {u_{y,1} \left( {t_{1} } \right)} \hfill & {u_{z,1} \left( {t_{1} } \right)} \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill & 0 \hfill \\ {u_{x,2} \left( {t_{1} } \right)} \hfill & {u_{y,2} \left( {t_{1} } \right)} \hfill & {u_{z,2} \left( {t_{1} } \right)} \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill & 0 \hfill \\ {u_{x,3} \left( {t_{1} } \right)} \hfill & {u_{y,3} \left( {t_{1} } \right)} \hfill & {u_{z,3} \left( {t_{1} } \right)} \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & c \hfill & 0 \hfill \\ {u_{x,4} \left( {t_{1} } \right)} \hfill & {u_{y,4} \left( {t_{1} } \right)} \hfill & {u_{z,4} \left( {t_{1} } \right)} \hfill & 0 \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & c \hfill & 0 \hfill \\ {u_{x,1} \left( {t_{2} } \right)} \hfill & {u_{y,1} \left( {t_{2} } \right)} \hfill & {u_{z,1} \left( {t_{2} } \right)} \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill \\ {u_{x,2} \left( {t_{2} } \right)} \hfill & {u_{y,2} \left( {t_{2} } \right)} \hfill & {u_{z,2} \left( {t_{2} } \right)} \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill \\ {u_{x,3} \left( {t_{2} } \right)} \hfill & {u_{y,3} \left( {t_{2} } \right)} \hfill & {u_{z,3} \left( {t_{2} } \right)} \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & 0 \hfill & c \hfill \\ {u_{x,4} \left( {t_{2} } \right)} \hfill & {u_{y,4} \left( {t_{2} } \right)} \hfill & {u_{z,4} \left( {t_{2} } \right)} \hfill & 0 \hfill & 0 \hfill & 0 \hfill & \lambda \hfill & 0 \hfill & 0 \hfill & c \hfill \\ \end{array} } \right| \times \left| {\begin{array}{*{20}l} X \hfill \\ Y \hfill \\ Z \hfill \\ {N_{1} } \hfill \\ {N_{2} } \hfill \\ {N_{3} } \hfill \\ {N_{4} } \hfill \\ {\delta_{0} (t_{0} )} \hfill \\ {\delta_{0} (t_{1} )} \hfill \\ {\delta_{0} (t_{2} )} \hfill \\ \end{array} } \right|$$
(1)
$$u_{x,i} \left( {t_{j} } \right) = - \frac{{x_{{{\text{s}},i}} \left( {t_{j} } \right) - x_{0} }}{{L_{0,i} \left( {t_{j} } \right)}}$$
(2)
$$u_{y,i} \left( {t_{j} } \right) = - \frac{{y_{{{\text{s}},i}} \left( {t_{j} } \right) - y_{0} }}{{L_{0,i} \left( {t_{j} } \right)}}$$
(3)
$$u_{z,i} \left( {t_{j} } \right) = - \frac{{z_{{{\text{s}},i}} \left( {t_{j} } \right) - z_{0} }}{{L_{0,i} \left( {t_{j} } \right)}}$$
(4)

where c is the value of speed of light (m/s), i GPS satellite number, j moment of time number, L o,i (t j ) approximate length between the satellite and receiver (m), N i number of unspecified phase cycles, x 0 approximate x position of receiver (m), x s,i (t j ) x position of i number satellite in j moment, X precise x position of receiver (fix) (m), y 0 approximate y position of receiver (m), y s,i (t j ) y position of i number satellite in j moment, Y precise y position of receiver (fix) (m), z 0 approximate x position of receiver (m), z s,i (t j ) z position of i number satellite in j moment, Z precise z position of receiver (fix) (m), δ 0(t j ) receiver clock error in j moment (s), δ s,i (t j ) i satellite clock error in j moment (s), λ GPS wavelength (m) and ρ i (t j ) pseudorange between i satellite and receiver in j moment (m).

Depending on the numerous conditions, the receiver is able to select one of the available methods of coordinate calculations. As a percentage factor, the availability, i.e., the share of determined positions of a particular method in the total number of measurements has been defined. Table 1 shows the availability of particular measurement techniques in the subsequent years. Interesting results were obtained in 2012. Receiver GS-15, due to its location (near the tram), should indicate lower availability of phase solution. However, as indicated in Table 1, the availability of phase method is 11.5% more with respect to the further receiver (GS-12). This fact undoubtedly proves the increasing accuracy offered by successive generations of GNSS receivers (in 2012 the GS-15 receiver was the most modern GNSS receiver offered by Leica).

Table 1 Availability of GNSS measurements methods during measurement campaigns [10]

The accuracy of each position is determined by geometric dilution of precision (GDOP) factor which is defined as:

$${\text{GDOP}} = \sqrt {\sigma_{x}^{2} + \sigma_{y}^{2} + \sigma_{z}^{2} + \sigma_{t}^{2} }$$
(5)

where σ x x position determination error (m), σ y y position determination error (m), σ z z position determination error (m) and σ t time determination error.

In order to assess the accuracy of the measurement in constant conditions, in 2014 the track section without any field obstacles was chosen. This resulted in almost perfect coverage of phase GNSS solution.

Therefore, the average accuracy of points 3D determination (calculated automatically by the receiver) is given only for phase measurements (Table 1). Figure 6 shows the probability density function of position error.

Fig. 6
figure 6

The probability density function of 3D position determination error

6 Assessment of Tram Track Geometric Layout

The geometric layout of railway in horizontal plane consists of straight sections and arches with a constant or variable curvature. Straight sections are defined in the geometrical point of view. That is why, the assessment of the layout determined from the satellite measurements can be the basis of obtained accuracy. Any deviation from the planned course would be treated as a measurement error if the track is assumed to be a perfectly straight section of the track. However, during the building process and operation some distortions may appear in the track. The stiffness of the surface structure limits the course of distortions. Thus, it can be assumed that the coordinates will contain both the components with the distortions of the track and errors resulting from the adopted measurement technique.

To determine the accuracy obtained in the field conditions, the algorithm described in work [3] was used. All rides made on the test sections has been extracted and transformed. The transformation was based on the coordinate rotation and translation.

The equation of the theoretical straight line is determined by the weighted regression:

$$\chi^{2} \left( {a_{\text{h}} ,b_{\text{h}} } \right) = \sum\limits_{l = 1}^{n} {w_{l} \cdot \left( {X_{l} - a_{\text{h}} \cdot Y_{l} - b_{\text{h}} } \right)^{2} }$$
(6)

The values of coefficients of equation were determined under the condition of necessity of the existence of functions minima:

$$\frac{{{\text{d}}\chi^{2} }}{{{\text{d}}a_{\text{h}} }} = - 2\mathop \sum \limits_{l = 1}^{n} w_{l} \cdot Y_{l} \cdot \left( {X_{l} - a_{\text{h}} \cdot Y_{l} - b_{\text{h}} } \right) = 0$$
(7)
$$\frac{{{\text{d}}\chi^{2} }}{{{\text{d}}b_{\text{h}} }} = - 2\mathop \sum \limits_{l = 1}^{n} w_{l} \cdot \left( {X_{l} - a_{\text{h}} \cdot Y_{l} - b_{\text{h}} } \right) = 0$$
(8)

The weight of each element is equal to the inverse of the square of the measurement uncertainty:

$$w_{l} = \frac{1}{{\sigma_{l}^{2} }}$$
(9)

Then, the measured coordinates are subjected to matrix operations to describe them as a function in a local coordinate system:

$${\text{FIX}}_{\text{rot}} = {\text{FIX}}_{\text{glob}} \cdot {\text{TRAN}}_{1} \cdot {\text{ROT}}$$
(10)
$${\text{FIX}}_{\text{loc}} = {\text{FIX}}_{\text{rot}} \cdot {\text{TRAN}}_{2}$$
(11)

Matrix of fixes in a global coordinate system:

$${\text{FIX}}_{\text{glob}} = \left| {\begin{array}{*{20}c} {Y_{1} } & {X_{1} } & {Z_{1} } & 1 \\ {Y_{2} } & {X_{2} } & {Z_{2} } & 1 \\ . & . & . & . \\ . & . & . & . \\ . & . & . & . \\ {Y_{n} } & {X_{n} } & {Z_{n} } & 1 \\ \end{array} } \right|$$
(12)

Translation and rotation matrices:

$${\text{TRAN}}_{1} = \left| {\begin{array}{*{20}c} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & { - \,b_{\text{h}} } \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{array} } \right|$$
(13)
$${\text{ROT}} = \left| {\begin{array}{*{20}c} {{ \cos }\left( {atg\left( {a_{\text{h}} } \right)} \right)} & { - \,{ \sin }\left( {atg\left( {a_{\text{h}} } \right)} \right)} & 0 & 0 \\ {{ \sin }\left( {atg\left( {a_{\text{h}} } \right)} \right)} & {{ \cos }\left( {atg\left( {a_{\text{h}} } \right)} \right)} & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{array} } \right|$$
(14)
$${\text{TRAN}}_{2} = \left| {\begin{array}{*{20}c} 1 & 0 & 0 & { - \;{\text{FIX}}_{\text{rot}} \left( {1,1} \right)} \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end{array} } \right|$$
(15)

a h the slope of a horizontal line, b h the vertical intercept of a horizontal line (m), l fixes number, N number of samples, w regression weight and χ 2 Chi-squared distribution (m2).

In such way in local coordinate system, the direction of the straight coincided the abscissa and the ordinates were defining the deviation from that direction. In the terminology used in navigation, it is described as the cross-track error (XTE). This means the distance from the designated course and the measure of the error of the moving object position (Fig. 7).

Fig. 7
figure 7

Graphical interpretation of XTE idea [6]

In the case of analyzing a straight section transformed into a local coordinate system, the XTE value is determined by the relationship:

$${\text{XTE}}_{l} = {\text{FIX}}_{\text{loc}} \left( {l,2} \right)$$
(16)

The course of XTE function (signals) analysis confirmed that the registered shape of track (characterized by relatively smooth curvatures due to track stiffness) is possible to be assessed after removing the uncertainty connected with measurement technique. The fast Fourier transformation (FFT) algorithm in Scilab [16] environment was used to perform Fourier transformation in order to analyze the XTE signal (frequency) by the relationship:

$$X_{k} = \mathop \sum \limits_{l = 0}^{N - 1} {\text{XTE}}_{l} \cdot {\text{e}}^{{\left( {\frac{ - 2 \cdot \pi \cdot i}{N} \cdot k \cdot l} \right)}}$$
(17)

where i imaginary unit, k overtone number and X k Fourier transform.

After implementation (extension the matrix to the size of 2k), the transformation followed with the display of resulting transformations. Then, the low-pass filter parameter was determined and the transformation was filtered. After that, the inverse transformation was performed. Under the assumption that filtration makes the measured shape of the track to be approximately the same as the real one, it might be considered that the differences between the filtered and unfiltered signal are measurement errors. The cut-off filter for the measured section was set to 0.15 1/m, and the achieved course of the XTE function is shown in Fig. 8.

Fig. 8
figure 8

Comparison of XTE signals before and after filtration (filter cutoff 0.15 1/m)

For a single series of measurements, the mean standard error of horizontal plane position determination was σ = 2.3 mm. After the filtering, the expected position of the track axis XTEmean was determined for all measurement rides. Based on the reference measurements, it can be concluded that the incorrections of straight track shape were determined sufficiently accurate. In further analysis, XTEmean was a reference position of the track axis. The ΔXTE differences between filtered signal of individual rides and the expected value were interpreted as the accuracy of each measurement series. Absolute values of ΔXTE can be considered as uncertainty radius of positions determination in the global coordinate system. The Weibull distribution was adopted for further statistical analysis (Fig. 9). The expected value of |ΔXTE| was 2.6 mm, and the measurement error with a 95% probability does not exceed 6.5 mm (Table 2).

Fig. 9
figure 9

The probability density function of Weibull distribution W(δ = 1.3, λ = 2.8) against empirical distribution |ΔXTE| calculated for the five measurement series

Table 2 The statistics of distribution of satellite measurements uncertainties

The straight sections with uniform inclination were selected to assess the accuracy in vertical plane. The accuracy analysis was performed similarly to the horizontal plane. Its results are shown in Table 2.

7 Evaluation of Other Geometrical Elements Based on Mobile Satellite Measurements

As the satellite measurement allows researchers to determine in a very precise way the track axis coordinates, there is a possibility to use the collected data not only for the inventory of tram lines, but also in geometrical layout designing. The computer program SATTRACK [3] which operates in Scilab [16] environment was developed for the designing purposes. The sample geometrical layout of tram line in Gdansk was analyzed using the described tool.

The inventory of the tram loop Chelm Witosa in Gdansk was made in order to illustrate the possibilities offered by the presented method. Tracks were measured twice, in 2012 and 2013. Track system of the loop had been put into operation in 2007, and then, it was extended in 2012. It consists of two tracks of the Lostowice–Downtown direction, two tracks of reception siding and one track of departure siding (Fig. 10). Eight turnouts were installed on the loop. Coordinates of 26,868 points were determined during the measurements. Each of the tracks was measured at least three times.

Fig. 10
figure 10

Orthofotomap of the analyzed geometrical layout (with an indications of driving directions). Own study based on [18]

At the beginning, the straight sections were separated from the arches. Cut down straight sections were subsequently processed. The equation of the straight section that fits best to the data obtained from the measurements was determined using the least squares method. The vertices of the polygon system (Fig. 11) were calculated from the coefficients of straights. In the next step, the radii of the arcs and the length of transition curves were determined. The curved sections were located between the straight sections of the track. The straights 1 and 2 (marked on Fig. 11) were measured seven times, straight 3a was measured four times, and 3b three times. The azimuths (angle between the direction of the north and the direction of the straight) and the coordinates of the vertices were the basic parameters describing these straights. Table 3 shows the accuracy of the designation of the different straight azimuths. The expected value was calculated as the average value for subsequent test rides, and the delta is a measure of the difference between the azimuth of the measurement signal and the expected value.

Fig. 11
figure 11

Main tangents determined on the basis of satellite measurements (Gauss conformal projection)

Table 3 Calculated values of directional azimuth of straights on the tram loop

Next, an attempt to fit arcs consisting of a circular part and the transition curves was made for the measured track. The average difference between the design and location of existing (measured) track axis was a critical parameter in determining the quality of the fit, which was defined as \({\bar{\Delta }}_{poss}\)—mean delta (Table 4). The \(\Delta _{poss}\) values along the straight section is equal to the XTE while along the arc is calculated as follows:

$$\Delta_{\text{poss}} = \sqrt {\left( {X_{0} - X_{l} } \right)^{2} + \left( {Y_{0} - Y_{l} } \right)^{2} } - R$$
(18)

where R arc radius (m), X 0 x position of circle center (m) and Y 0 y position of circle center (m).

Table 4 The list of geometrical parameters of the tram loop arcs

Due to the fact that all the circular arcs, at least in its initial or final area, were a part of the turnout’s diverging tracks, two kinds of transition curves might have been used. The compound curve consisting of transition arc with 50 m radius and length of 5.236 m was used in diverging track of turnout. When the arc was combined with the straight section, two kinds of transitions can be applied: cubic parabola or compound arc consisting of two transition arcs (5.236 m length) with the 100 and 50 m radius each with 5.236 m length [15].

The increased mean delta of fitting of the arc #2a might be the result from the construction process of the tram loop, which was carried out in several stages. During the expansion of the tram loop, the arc #2a has been rebuilt. Two turnouts and track crossing were added on its length, which caused deformation of the shape and resulted in the decrease of passenger comfort. The reconstructed geometric layout of the loop, against the measured layout, is shown in Fig. 12.

Fig. 12
figure 12

The recreated arc section filed in the measured geometrical layout (Gauss conformal projection)

Most of the measurements were conducted on the arc #1 and—as it turned out—its shape was the closest to the project. For this reason, it was expected that the results of further analysis of this arc would be the most reliable. The main tangent polygon system, best suited to the actual shape of the tram tracks, was created on the basis of the seven measurement rides. It was calculated based on the expected azimuth and coordinates of the vertices. Then, the difference between the measuring signal and designed geometrical layout was calculated for each ride (Fig. 13). The next step was to determine—by filtering the signal—the expected value of track shape (Fig. 14). This made it possible to determine the actual error of position determination for each of the rides (Table 5).

Fig. 13
figure 13

The horizontal differences chart for the single measurement on arc #1 (with the adjacent straights)

Fig. 14
figure 14

The horizontal differences chart for all measurements on arc #1 against the expected value of track centerline deformation

Table 5 Statistic estimators of delta parameters

The graphs in Figs. 13 and 14 clearly show that the error of the positions determination on the straight section #1 is considerably smaller than that in the straight section #2. From the 26 868 coordinates recorded on the tram loop, the coordinate positions error of 1637 (6.1%) was in the range of less than 13 mm. With the distribution of designations accuracy, shown in Fig. 15, the biggest number of these points is located on the straights sections of #1 and #3b. On the other hand, 712 (2.6%) coordinates are determined with an error of more than 25 mm, and most of them are located on the straight #2. The distribution of errors might be the result of multi-storey buildings, located on the north side of the tram loop, as it is a significant obscuration of horizon.

Fig. 15
figure 15

Determination error distribution. Chelm Witosa tram loop

8 Conclusions

The development of urban rail transport is the cause of exploration (by designers and managers of infrastructure) of innovative methods to facilitate the process of upgrading and expanding the tram network. Particularly, an important course of action is to find the most efficient way to define the shape of the track and determine its deformation.

The technique of Mobile Satellite Surveying provides fast and precise determination of the track axis coordinates. The experiences of the research team allows the researchers to formulate the thesis that with the development of measurement techniques the accuracy of methods of satellite positioning will be continuously growing.

Based on the specified coordinates, it can be very easy to create a precise reproduction of the track layout: main tangents, angles of return, curve radii and the length of transition curves. The computer program SATTRACK is developed for adapting it to the specific design of tram routes (small curve radii, large values of cant, short transition curves, large variability of velocity on the length of the route).

Precise planning of the measurement campaigns becomes particularly important when measurements were performed within the highly urbanized area due to the lack of available satellites. It is important so that the number of available satellites should be maximized. This allows for a reduction in the impact of horizon obscuration on the accuracy of position determination. The combination of satellite measurements and modern design methods will significantly improve the quality of track designing, both for tram and rail.