An Embedded Decision Support System for Runway Safety and Excursion Avoidance

Georgios Alogdianakis1, Ioannis Katsidimas1, Athanasios Kotzakolios1,
Anastasios Plioutsias2, Vassilis Kostopoulos1
1 Applied Mechanics Laboratory, Department of Mechanical Engineering & Aeronautics, University of Patras 2EEC School of Future Transport Engineering (FTE), Coventry University up1055737@ac.upatras.gr, ikatsidima@ceid.upatras.gr, kotzakol@upatras.gr,
tassos.plioutsias@coventry.ac.uk, kostopoulos@upatras.gr
Abstract

Runway Safety Assistant Foreseeing Excursions (RUN.S.A.F.E.) is a complete embedded system solution that predicts a potential runway overrun during the takeoff and landing of a civil aviation aircraft. The system executes both static and dynamic calculations, the former being completely dependent, while the latter completely independent to the user’s inputs. The solution is adapted to a Boeing 737-800 aircraft, with CFM56-7B engines. However, the calculations also apply for similar aicrafts, equipped with a tricycle landing gear and turbofan engines. The system is aligned with current regulations and certification specifications, where applicable.

Keywords:
Aviation safety, Avionics, Runway safety, Embedded system, Real time system, Human Computer Interaction

I Introduction

Take off and landing procedure are two of the most critical parts of a commercial aircraft’s flight. Runway overrun incidents, i.e. when an aircraft exceeds the runway’s length, despite the low mortality rate, can lead to passenger confusion, runway and aircraft damage, etc. This type of incident is the most common runway related accident in recent years [1].

Human factor leads the causality list of aviation accidents [2], thus a system that advises and warns the operators in cases of a potential runway overrun is a necessity, to decrease the risk and occurrence of such incidents. The critical speeds of the two procedures (V1, VR, V2 for takeoff and Vapp, Vref for landing) are calculated through manual or specialised software solutions (e.g. Flysmart+ [3]), and aim to prevent a possible overrun, while ensuring convenient acceleration/deceleration rates. Pilots mainly rely on experience and visual clues to estimate the remaining runway, as instruments can only provide speed indications with accuracy.

II Motivation and State of the Art

The development of a Take Off Performance Monitor System (TOPMS) is initially established by Aerospace Standard 8044 in 1987 [4]. While NASA developes prototypes [5], currently there are no complete systems installed in commercial aircrafts, only detectors of major errors between the calculated and actual acceleration during take off [6]. In EASA’s (European Union Aviation Safety Agency) research agenda for 2022-2024, Reference LOC-03, named ”Landing and take-off monitor” requests to ”assess means to assist the flight crew in preventing runway overrun and managing aircraft total energy, as well as monitoring the actual acceleration of the aircraft during the take-off run to detect mismatch between V1 and the actual remaining runway distance” [7].

EASA’s Certification Specifications for large aircrafts (CS-25) require a type of Runway Overrun Awareness and Alerting System (ROAAS), to be installed in all new aircrafts in order to comply with the rules. This system ”shall reduce the risk of a longitudinal runway excursion during landing by providing alert, in flight and on ground, to the flight crew” [8]. Two of the greatest commercial aircraft manufacturers, Airbus and Boeing, have developed their own solutions named Runway Overrun Prevention System (ROPS) and Runway Awareness and Advisory System (RAAS) respectively. Other prototypes have been developed for the Gulfstream G650 [9].

Most of aviation relevant research works regarding CPS and embedded systems go beyond overrun, offering services and solutions based on SHM and RUL applications which exclude human factor. As such, Athanasakis et.al. present an embedded intelligence solution for the RUL of a turbofun [10], while other studies explore promising impact detection [11], damage detection and severity estimation in SHM use cases [12] and predictive maintenance operations [13].

III Models and calculations

The system calculates the critical distances Accelerate Stop Distance Required, ASDR, for takeoff and Landing Distance Required, LDR, for landing, in correspondence with the critical speeds V1 and Vref, respectively. Two types of calculations are performed: a static which depends on the user’s inputs, and a real time, based on the aircraft’s acceleration and speeds.

III-A Take Off Procedure

Static Calculations

During takeoff and before the aircraft is lifted from the ground, there is a possibility of events (e.g. engine failure), that require the initiation of a Rejected Take Off procedure. This action is triggered only prior to the V1 speed, above which the remaining runway distance is not enough to bring the aircraft to a stop. To statically calculate the ASDR, we model Thrust, Drag, Friction and Gravitational Force (due to the runway’s slope), as seen in Figure 1.

Refer to caption
Figure 1: Forces acting on the aircraft while on the runway.

Minor differences exist in the accelerating and decelerating part of the calculations, which aim to maintain low complexity levels. By knowing the aircraft’s mass, we find the acceleration at each moment based on Newton’s second law F=ma𝐹𝑚𝑎\sum\vec{F}=m\vec{a}∑ over→ start_ARG italic_F end_ARG = italic_m over→ start_ARG italic_a end_ARG.

Using a double integral on the acceleration, the distance covered by the plane to reach the desired speed, is calculated. The code that implements these integrals is based on the Riemann sum, in which the definite integral is computed as a sum of area of parallelograms. The independent variable of the function and integrals is time, while the division also defines the precision of the integral. The flowchart in Figure 2 shows the structure of the algorithm.

The selected time step determines the accuracy rate of the final result and the number of the required operations. For this particular implementation, the golden medium between the two, is set at 0.05 seconds(after numerous experiments), and leads to almost instant calculations, without sacrificing the accuracy (<<<1m in the majority of the cases).

Refer to caption
Figure 2: While loop for calculating distances.

Dynamic Calculations

The procedure is initiated when the thrust lever is moved from the idle position. In Figure 3 the acceleration in time is presented during three different configurations, resulting in a linear negative correlation between the acceleration and time, that is also observed in practice [5].

Refer to caption
Figure 3: Acceleration during a take off of the Boeing 737-800 in the X-Plane simulator.

Data received between 8th and 10th second after the initiation of a takeoff, are used in a Linear Regression to determine the coefficients α,β𝛼𝛽\alpha,\betaitalic_α , italic_β that describe the acceleration as a linear equation, acceleration(t)=αt+β𝑎𝑐𝑐𝑒𝑙𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑡𝛼𝑡𝛽acceleration(t)=\alpha*t+\betaitalic_a italic_c italic_c italic_e italic_l italic_e italic_r italic_a italic_t italic_i italic_o italic_n ( italic_t ) = italic_α ∗ italic_t + italic_β. These coefficients are used as seeds for the next algorithm, namely Recursive Least Squares (RLS) algorithm. The latter estimates the coefficients of acceleration aiming to minimize a weighted least square cost function in relevance to the input signal. The forgetting factor is set to 1, hence the system behaves as a linear regression in which each past input contributes equally to the least squares cost function.

By integrating the acceleration function in time, the velocity is calculated, as velocity(t)=α2t2+βt+γ𝑣𝑒𝑙𝑜𝑐𝑖𝑡𝑦𝑡𝛼2superscript𝑡2𝛽𝑡𝛾velocity(t)=\frac{\alpha}{2}t^{2}+\beta t+\gammaitalic_v italic_e italic_l italic_o italic_c italic_i italic_t italic_y ( italic_t ) = divide start_ARG italic_α end_ARG start_ARG 2 end_ARG italic_t start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_β italic_t + italic_γ, in which α,β𝛼𝛽\alpha,\betaitalic_α , italic_β are the coefficients of velocity function and γ𝛾\gammaitalic_γ is the speed directly after the spoolup completion. The time at which the desired speed is attained, can be found from this second degree function. By integrating once more, to find the distance function in time and replacing with the previous result, the distance covered till the attainment of the velocity can be found. Similar logic applies to the dynamic calculations of the decelerating part. The only difference is that the RLS algorithm approximates the coefficients α,β,γ𝛼𝛽𝛾\alpha,\beta,\gammaitalic_α , italic_β , italic_γ of the velocity function in time.

Refer to caption
Figure 4: Phases of landing.

III-B Landing Procedure

The landing procedure can be divided into 4 distinct phases: Approach𝐴𝑝𝑝𝑟𝑜𝑎𝑐Approachitalic_A italic_p italic_p italic_r italic_o italic_a italic_c italic_h, Flare𝐹𝑙𝑎𝑟𝑒Flareitalic_F italic_l italic_a italic_r italic_e, FreeRoll𝐹𝑟𝑒𝑒𝑅𝑜𝑙𝑙Free\ Rollitalic_F italic_r italic_e italic_e italic_R italic_o italic_l italic_l and Braking𝐵𝑟𝑎𝑘𝑖𝑛𝑔Brakingitalic_B italic_r italic_a italic_k italic_i italic_n italic_g, as seen in Figure 4. The Approach stage starts 50ft above the runway where the aircraft is considered to be exactly above the threshold of the runway, the Flare𝐹𝑙𝑎𝑟𝑒Flareitalic_F italic_l italic_a italic_r italic_e stage starts at about 20 feet, the Freeroll𝐹𝑟𝑒𝑒𝑟𝑜𝑙𝑙Free\ rollitalic_F italic_r italic_e italic_e italic_r italic_o italic_l italic_l when the aircraft touches the ground and the Braking𝐵𝑟𝑎𝑘𝑖𝑛𝑔Brakingitalic_B italic_r italic_a italic_k italic_i italic_n italic_g when the auto brake system is activated or the pilots press the pedals.

Static calculations

When approaching the runway the aircraft has a steady glide path of 3 degrees and a steady precalculated Vref speed. This is enough to calculate the distance traveled between 50 and 20 feet. The Flare stage is a peculiar and hard to model maneuver, aiming to reduce the vertical speed before coming in contact with the runway. The mean speed during this stage is 98% of the Vref speed. The Free roll stage lasts 3.5 seconds on average, at a speed reduced by 7.5% in comparison to Vref. Finally, Braking lasts till the aircraft’s velocity is 0, at a steady deceleration rate by the Autobrake, which directly gives the corresponding distance.

Dynamic calculations

The dynamic calculations also include a pre-approach state, starting at 300ft above the runway level, to provide timely notifications. The first three stages of dynamic calculations, Pre-Approach, Approach and Flare, use the moving average of the horizontal and vertical speed. Based on the vertical speed and the height difference till the lower limit of the stage, the time needed till completion is calculated. By multiplying with the horizontal speed, the horizontal distance till completion is also calculated. The three stages have different sensitivities to changes, with the last being the most sensitive. The Free Roll stage utilizes the moving average of the horizontal speed solely and it is multiplied with time left till the completion of the stage (considered to be 3.5 seconds), to find the distance left to be covered at this stage. Lastly, the braking stage uses the RLS algorithm, taking advantage of the steady deceleration rate.

IV System

IV-A Hardware

A Raspberry Pi 3B is used to implement the system (Figure 5). It is not built according to the DO-254/ED-80 standard [14] and therefore would not be suitable for installation on an aircraft. However, it is reliable enough to develop an application that will demonstrate the basic functions and performance of this runway overrun avoidance system. A 7-inch touch screen is attached to visualize the results, as well as to insert the necessary inputs for takeoff and landing. A set of speakers is also connected, for the verbal announcements.

Refer to caption
(a)
Refer to caption
(b)
Figure 5: Photographs of the embedded system.

IV-B Software

The system uses the Raspbian OS (Debian Linux distribution), while the application is developed in the Qt graphical development platform. All the code concerning the calculation of the distances, as well as the related operations, are developed in C++, due to adaptability and performance reasons. The front-end programming is done in Javascript, as provided by the application development tool. The back-end code of the real time application, is parallelized with the interface code for faster, seamless and instant transitions and updates.

The architecture of the system can be seen in Figure 6. Firstly, the pilot inputs all the necessary configuration data through the touchscreen in the configuration screen. These are temporarily saved at the front-end. When clicking on the start button, the new screen (Procedure progress screen) is loaded to the front-end, while all the data are sent to the back-end for the static calculations. As soon as the static calculations are completed, the results are sent to the front-end to display, while the dynamic calculations are triggered.

Refer to caption
Figure 6: System Architecture.

During landing or take off, the back-end algorithms continuously unpack the packets that the X-Plane 11 simulator sends to the UDP socket of the RaspberryPi. These are processed by the real time/online algorithms of the back-end and the updated results are sent to the front-end to be displayed. The actual comparison with the length of the remaining runway is done at the front-end.

Refer to caption
(a) Main menu.
Refer to caption
(b) Take off configuration screen.
Refer to caption
(c) Flap setting input.
Refer to caption
(d) Progress screen in warning status.
Figure 7: Screenshots of the application.
Refer to caption
Figure 8: System’s screens and states.

Figure 7 shows four indicative screenshots of the application. Figure 7a displays the main menu, that provides the selection between the two procedures, take off and landing and leads to the configuration screen. In Figure 7b, the Takeoff Configuration screen is displayed. By selecting one of the fields, a popup window appears and provides either a numpad/keyboard or all the eligible values for this specific input. On the left side, there is a distinct info-graphic display for each input. These, include representations of the aircraft’s indications, as for example in the case of the Flap Setting input (Figure 7c), or other means, such as gauges, compasses and others, that provide an actual feedback of the input given.

Figure 7d, shows the progress screen of a Take off procedure with a warning prompt. This screen has an identical structure for both procedures. On the left side there is the representation of a runway on which the position of the aircraft is presented in real time, along with the static results (in black color) and the dynamic results (in green color). The take off procedure also provides the distance needed for a Rejected Take Off if it is initiated at this exact speed, indicated as an orange hatched parallelogram named BDR (Braking Distance Required).

On the right side of the screen there are useful information about the process’s development. The largest of three indicates the overall status of the procedure and changes its background color depending on the current status. Stop from RWY end shows how many meters from the runway end the aircraft is expected to come to a complete stop (based on the dynamic calculations, with positive being within the limits), while Delta from static indicates the difference between the static and dynamic calculations. The colors of the fields comply with the recommendations of the CS-25 definitions in the cockpit’s instruments depending on the severity and the action is needed by the pilots [8]. Figure 8 presents the sequence of states and screens of the system.

After the initiation of the Takeoff procedure, the system is in standby mode, waiting for the lifting of the throttle levers. Throughout the spoolup duration, the system is in calculating mode and then it is transitioned to one of the three possible states of dynamic result, named As expected, Warning, Reject Take Off, accompanied with the proper color notation. A warning is raised if the deviation between the static and the dynamic calculations is off by at least 2%, but the aircraft is not in danger of overrunning the runway. If the latter is true, the system is transitioned to the Reject Take Off state. If the initiation of a rejected takeoff is detected, the system passes to the RTO initiated state, before being driven to the dynamic results of the deceleration, As expected, Brake more and Max brake. The criteria of these states, are identical to the previous ones. In the case that the aircraft attains the desired V1 speed, the system is being driven to the Take off status, that indicates that a Rejection should not be initiated, yet it is still capable of detecting one.

In the case of the Landing procedure, the system is initially at a System Ready state, till the aircraft reaches 300ft above the runway level. With dynamic results being available, the system transitions to one of the three available states, Within limits, Warning or Go around, having similar criteria to the Take off procedure. If the aircraft eventually touches the ground and starts braking, a Go Around is no longer an option for safety reasons, thus the three new available states are Within limits, Warning or Brake More. Indicative videos of the system are available online [15].

V Evaluation

The performance of the system is evaluated through numerous experiments in a wide range of the input parameters. A total of 200 runs was executed for each of the two procedures, designed through a quasi-random, SOBOL sequence Design of Experiments (DOE) that offers uniformly distributed points throughout the configuration space. Results were extracted for both static and dynamic results.

Refer to caption
(a) Accelerate Stop Distance Required
Refer to caption
(b) Landing Distance Required
Figure 9: Deviation between the static calculations and experimental results.
Refer to caption
(a) Acceleration - Take off
Refer to caption
(b) Deceleration - Take off
Refer to caption
(c) Deceleration - Landing
Figure 10: Converge of RLS algorithms in time, based on experimental data.

Results of the dynamic calculations

Figure 9a represents the percentile deviations of the statically calculated Accelerate Stop Distance Required when compared with the corresponding experimental result. This concerns results of rejected take offs at exactly V1 speed, without the two second reaction time at speed V1, that the CS-25 defines as a safety overestimation parameter [8]. A histogram of the results and a normal distribution is fitted, with a mean deviation of -0.02% and a standard deviation of 0.73%.

On the other hand, the Landing Distance Required, is slightly overestimated in each of the individual four stages, as the CS-25 does not specify a certain safety overestimation measure. The histogram and the fitted normal distribution for the Landing Distance Required are presented in Figure 9b. The total distance is overestimated by 8.98% on average, while the standard deviation is 5.05%.

Results of the dynamic calculations

In Figure 10, the mean convergence of the three RLS algorithm variants are displayed. During acceleration, a safe and converged result is provided 15 seconds after the initiation of the take off. Similarly, when braking under a Rejected Take Off, the result steadily converges 8.5 seconds after the initiation of the rejection for a reliable result, while during landing after 4 seconds into braking.

Embedded system’s performance

After a number of executions, it is revealed than the system needs a mean of 0.139 ms in order to calculate the dynamic acceleration result after receiving a new set of data, with a standard deviation of 0.024ms. The respective times for the dynamic calculations of braking are 0.163 ms and 0.03ms due to the more complex calculations. The whole program uses a mean of 6.9% of the system’s memory and a maximum of 47.5% of the Quad core CPU.

VI Conclusion

Based on EASA’s Research Agenda and accident statistics, it is evident that there is space for improvement in terms of runway safety in aviation. RUNSAFE shows promising results about the feasibility of similar systems and their ability to predict and inform the crew members into taking the right decision, at the right time. Future developments include further compliance with the CS-25 specifications and the hardware and software standards, set by the aviation industry. Additionally, the reproduction of real life excursion events in the simulator, will also provide insightful results regarding the system’s performance.

References

  • [1] IATA, “Runway safety accident analysis report,” IATA, Tech. Rep., 2015.
  • [2] H. Kharoufah, J. Murray, G. Baxter, and G. Wild, “A review of human factors causations in commercial air transport accidents and incidents: From to 2000–2016,” Progress in Aerospace Sciences, vol. 99, pp. 1–13, May 2018.
  • [3] Flysmart+ - Aicraft performance optimization software. [Online]. Available: https://www.navblue.aero/product/flysmart-plus
  • [4] “AS8044A: Takeoff Performance Monitor (TOPM) System, Airplane, Minimum Performance Standard - SAE International.”
  • [5] D. B. Middleton, R. Srivatsan, and L. H. Person Jr, “Flight test of takeoff performance monitoring system,” Tech. Rep., 1994.
  • [6] R. ESTRAGNAT, “Safety first,” The Airbus Safety Magazine, #29, 2020.
  • [7] “EASA publishes Research Agenda 2022-2024,” Nov. 2022.
  • [8] “Cs-25 Amendment 27 - Review of aeroplane performance requirements for air operations and regular update of cs-25,” Jan. 2023.
  • [9] G. Konrad, T. Landers, A. Martin, S. Taylor, T. Feyereisen, S. Johnson, G. He, and R. Khatwa, “Development of a Predictive Runway Overrun Awareness and Alerting System,” 06 2018.
  • [10] G. Athanasakis, G. Filios, I. Katsidimas, S. Nikoletseas, and S. H. Panagiotou, “Tinyml-based approach for remaining useful life prediction of turbofan engines,” in 2022 IEEE 27th International Conference on Emerging Technologies and Factory Automation (ETFA), 2022, pp. 1–8.
  • [11] I. Katsidimas, T. Kotzakolios, S. Nikoletseas, S. H. Panagiotou, and C. Tsakonas, “Smart objects: Impact localization powered by tinyml,” in Proceedings of the 20th ACM Conference on Embedded Networked Sensor Systems, ser. SenSys ’22, 2023, p. 947–953.
  • [12] A. Datta, M. Augustin, K. M. Gaddikeri, S. Viswamurthy, N. Gupta, and R. Sundaram, “Damage detection in composite aircraft wing-like test-box using distributed fiber optic sensors,” Optical Fiber Technology, vol. 66, p. 102651, 2021. [Online]. Available: https://www.sciencedirect.com/science/article/pii/S1068520021002005
  • [13] S. Vishnu Karthik, V. Akshaya, and P. Sriramalakshmi, “Iot based predictive maintenance of electrical machines in aircraft,” in 2021 7th International Conference on Electrical Energy Systems (ICEES), 2021, pp. 569–575.
  • [14] V. Hilderman and T. Baghi, Avionics certification: a complete guide to DO-178 (software), DO-254 (hardware).   Avionics Communications, 2007.
  • [15] G. Alogdianakis, “RUNSAFE - Indicative videos.” [Online]. Available: https://www.youtube.com/playlist?list=PLPQRnuYxv-ptSyoJAUYvjbcUlwkryJ75j