Automated architecture for compliance with air traffic clearances

Through the air traffic command automation system, the processor is used to receive and respond to air traffic commands to verify their consistency and safety, solving the problem of high cognitive pressure on navigators in high traffic areas, and achieving fast, accurate and safe air Traffic control.

CN112349146BActive Publication Date: 2024-12-10HONEYWELL INTERNATIONAL INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202010659661.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-08-07
Filing Date
2020-07-08
Publication Date
2024-12-10
Estimated Expiration
2040-07-08

AI Technical Summary

Technical Problem

In high traffic areas, navigators need to quickly analyze a large number of air traffic command messages, resulting in high cognitive pressure, prone to errors or delays, and the prior art is difficult to process and execute air traffic control commands quickly, accurately and safely.

Method used

An air traffic command automation system is designed to use the processor to receive, interpret and respond to air traffic commands, generate action sequences, and verify their consistency, feasibility and safety, reduce the workload of the navigator and achieve automated response.

Benefits of technology

By automatically processing air traffic commands, the cognitive load of the pilot is reduced, the speed and accuracy of the response to air traffic commands is improved, the costs caused by errors and delays are reduced, and the safety of the aircraft is ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112349146B_ABST
    Figure CN112349146B_ABST
Patent Text Reader

Abstract

The present invention discloses an air traffic command automation system for automating the process of listening, interpreting, complying with and responding to air traffic command messages. The system includes one or more processors configured by programming instructions on a non-transitory computer-readable medium. The system is configured to: receive an air traffic command message from an entity other than a flight crew, the air traffic command message including one or more tasks to be performed by an aircraft; determine one or more tasks to be performed by the aircraft from the command message; generate a sequence of actions that the aircraft can perform to complete the task for each task; verify the consistency, feasibility and safety of the action; relay the interpretation of the command message to the command message initiator; preview the verified action sequence by the flight crew; and issue a command to perform the action at an appropriate point during the task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the subject matter described herein generally relate to air traffic communications. More specifically, embodiments of the subject matter relate to automating aircraft responses to air traffic command messages. Background Art

[0002] Particularly in high traffic areas (such as terminal areas) where the navigator must quickly and accurately parse numerous messages, listening to and responding to air traffic command messages, many of which may not apply to the aircraft, can place significant cognitive strain on the navigator. This cognitive load can cause the navigator to make errors in processing and interpreting important air traffic voice messages and result in expensive delays (e.g., missed approaches). The inherent risks and costs involved in air traffic route planning and control make it imperative to quickly, accurately, and safely process and execute air traffic control command information. New systems and methods for reducing navigator workload can help promote toward a single navigator and autonomous flight operations.

[0003] Therefore, it is desirable to provide a system and method for automating responses to air traffic command messages.Furthermore, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background. Summary of the invention

[0004] This Summary is provided to describe selected concepts in a simplified form that are further described in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

[0005] The present invention discloses an air traffic command automation system for automating the process of listening, interpreting, complying with and responding to air traffic commands on an aircraft. The system includes one or more processors configured by programming instructions on a non-transitory computer-readable medium. The system is configured to: receive an air traffic command message related to the aircraft from an entity other than a flight crew on the aircraft, the air traffic command message including one or more tasks to be performed by the aircraft; determine the one or more tasks to be performed by the aircraft from the air traffic command message; generate a sequence of actions that the aircraft can perform to complete the task for each task; verify the consistency, feasibility and safety of each action individually and together; relay the interpretation of the air traffic command message to the air traffic command initiator; preview the verified action sequence by the flight crew; and issue a command to perform the action at the appropriate point during the task.

[0006] A processor-implemented method for automating the process of listening to, interpreting, complying with, and responding to air traffic commands in a vehicle is disclosed herein. The method includes: receiving, by the processor, an air traffic command message related to the vehicle from an entity other than a flight crew, the air traffic command message including one or more tasks to be performed by the vehicle; determining, by the processor, from the air traffic command message, the one or more tasks to be performed by the vehicle; generating, by the processor, for each task, a sequence of actions that the vehicle can perform to complete the task; verifying, by the processor, individually and collectively, the consistency, feasibility, and safety of each action; relaying, by the processor, the interpretation of the air traffic command message to the command message initiator; previewing, by the processor, the verified sequence of actions by the flight crew; and issuing, by the processor, commands to perform actions at appropriate points during the task.

[0007] A non-transitory computer-readable medium encoded with programming instructions configurable to cause a processor to perform a method is disclosed. The method includes: receiving an air traffic command message from an entity other than a flight crew, the air traffic command message including one or more tasks to be performed by an aircraft vehicle; determining from the air traffic command message the one or more tasks to be performed by the aircraft vehicle; generating, for each task, a sequence of actions that the aircraft vehicle can perform to complete the task; validating the consistency, feasibility, and safety of each action individually and collectively; relaying an interpretation of the air traffic command message to the command message originator; previewing the validated sequence of actions by the flight crew; and issuing commands to perform actions at appropriate points during the mission.

[0008] Furthermore, other desirable features and characteristics will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing background. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] Embodiments of the subject matter will be described below in conjunction with the following drawings, wherein like numerals represent like elements, and wherein:

[0010] Figure 1 is a diagram depicting an exemplary operating environment for an exemplary air traffic command automation system according to some embodiments;

[0011] Figure 2 is a block diagram depicting an exemplary air traffic command automation system for automating the process of listening to, interpreting, complying with, and responding to air traffic command messages, according to some embodiments; and

[0012] Figure 3is a process flow diagram that depicts an example process in an example automation execution program and an example process in an example task and security execution according to some embodiments. DETAILED DESCRIPTION

[0013] The following specific embodiments are merely exemplary in nature and are not intended to limit application and use. In addition, it is not intended to be bound by any express or implied theory presented in the aforementioned technical field, background technology, summary of the invention or the following specific embodiments. As used herein, the term "module" refers to any hardware, software, firmware, electronic control component, processing logic and / or processor device, either individually or in any combination, including but not limited to: application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), electronic circuits, processors (shared, dedicated or grouped) and memories that execute one or more software or firmware programs, combinational logic circuits and / or other suitable components that provide the functionality.

[0014] Embodiments of the present disclosure may be described herein in terms of functions and / or logic block components and various processing steps. It should be understood that such block components may be implemented by any number of hardware, software and / or firmware components configured to perform a specified function. For example, embodiments of the present disclosure may employ various integrated circuit components, such as memory elements, digital signal processing elements, logic elements, lookup tables, etc., which may perform multiple functions under the control of one or more microprocessors or other control devices. In addition, those skilled in the art will appreciate that embodiments of the present disclosure may be implemented in conjunction with any number of systems, and the systems described herein are merely exemplary embodiments of the present disclosure.

[0015] For the sake of brevity, conventional techniques related to signal processing, data transmission, signaling transmission, control and other functional aspects of the system (and the various operating components of the system) are not described in detail herein. In addition, the connecting lines shown in the various figures included herein are intended to represent exemplary functional relationships and / or physical couplings between various elements. It should be noted that many alternative or additional functional relationships or physical connections may exist in the embodiments of the present disclosure.

[0016] The subject matter described herein discloses devices, systems, techniques and articles for automating the air traffic command interface in an aircraft vehicle in a manner that allows the navigator or operator of the aircraft vehicle to easily and intuitively monitor and, if necessary, change the response of the aircraft. The devices, systems, techniques and articles provided herein can allow automated responses to air traffic voice messages to be performed in a clear and safe manner. The devices, systems, techniques and articles provided herein can allow automated responses to be presented to the flight crew in an intuitive manner (e.g., so that the navigator can quickly and accurately interact with it). The devices, systems, techniques and articles provided herein can be configured to interact with current aircraft control technology (e.g., to reduce installation costs).

[0017] The devices, systems, techniques and articles provided herein can receive air traffic control (ATC) command messages in the form of voice messages or controller pilot data link communication (CPDLC) messages, interpret them, and generate a sequence of "actions" equivalent to the actions that a navigator would take (e.g., set altitude, change speed, etc.) that an aircraft can perform to complete the task assigned via the ATC command message. By breaking down complex tasks into simple actions, the devices, systems, techniques and articles provided herein can interact with existing autopilot computers to provide automated control of aircraft.

[0018] Breaking down complex tasks into simple actions can also allow the plan to be intuitively presented to the navigator for approval or monitoring. When generating a plan, the apparatus, systems, techniques and articles provided herein can check the received commands for consistency (e.g., a "descent" command from ATC should provide an altitude below the aircraft's current altitude), feasibility (e.g., a command to change the aircraft's speed should provide a value within the aircraft's operating speed), and safety (e.g., simultaneous speed and altitude changes must not cause the aircraft to stall).

[0019] The devices, systems, techniques, and articles provided herein can provide a configurable and extensible architecture. The devices, systems, techniques, and articles provided herein can be configured to present the generated action plan to the navigator for approval before formulating the action plan generated by the navigator, or the devices, systems, techniques, and articles provided herein can be configured to automatically relay and formulate all or part of the plan without the need for navigator approval (for example, changes to internal states such as ATIS codes or altimeter settings can be automatically set, while changes to the physical state of the aircraft such as speed or altitude may require navigator approval). Decomposing complex tasks into simple action sequences provided by the devices, systems, techniques, and articles described herein can allow new tasks to be added simply by creating new "recipes" for tasks that already use existing components (consistency, feasibility, and safety checks incorporated into simpler tasks are automatically included in the new complex task).

[0020] The devices, systems, techniques and articles provided herein can provide a relatively low-cost solution for automating a significant portion of an aircraft's interaction with air traffic command messages. Doing so can reduce the navigator's cognitive load, thereby providing a faster and more reliable response to ATC commands. This in turn can reduce the costs caused by errors and delays in aircraft route planning and control.

[0021] Figure 1 1 is a block diagram depicting an exemplary operating environment 100 of an exemplary air traffic command automation system 102. While a vehicle 104, such as a manned aircraft or an unmanned aerial system (UAS), is in motion, the vehicle 104 may receive air traffic command messages (e.g., ATC voice command messages / CPDLC messages) 106 from a controlling entity, such as air traffic control 108. Particularly in high traffic areas (such as terminal areas) where the navigator / operator must quickly and accurately parse numerous messages, listening for and responding to ATC command messages may place significant cognitive strain on the navigator or operator (e.g., in the case of a UAS), many of which may not apply to the aircraft. The cognitive load may cause the navigator / operator of the aircraft to make expensive delays or errors in the processing and interpretation of important ATC command messages. The inherent risks and costs involved in air traffic routing planning and control make it imperative that ATC command information be processed and executed quickly, accurately, and safely.

[0022] To reduce navigator / operator workload, an air traffic command automation system 102 is provided in the vehicle 104. The air traffic command automation system 102 is configured to automatically comply with and respond to air traffic commands in a fast, accurate, and safe manner.

[0023] Figure 22 is a diagram depicting an exemplary air traffic command automation system 200 for automating the process of listening to, interpreting, complying with, and responding to air traffic command messages. The exemplary air traffic command automation system 200 is integrated into a vehicle such as an aircraft to interact with voice or CPDLC services, autopilots, navigators' interfaces, and other software components such as detection and avoidance systems. The exemplary air traffic command automation system 200 includes an automation executive 202 for listening to, interpreting, and responding to air traffic command messages (e.g., receiving CPDLC messages and processing them to determine an appropriate action plan for the aircraft), and a mission and safety executive 204 for implementing additional safety protocols before implementing the tasks required by the air traffic command messages (e.g., to interact with the flight crew and software systems on the aircraft to relay and, if appropriate, develop a plan).

[0024] The automation executive 202 may use an automation planning technique known as hierarchical mission networks to decompose an incoming mission into a sequence of primitive actions. Each mission may correspond to a possible CPDLC uplink message, and each action may correspond to a state change that the aircraft may make. The plan is then a mapping from the incoming mission to one or more actions in sequence; the mapping may use other simpler tasks in the decomposition of complex missions. Once a plan is generated for an incoming mission, the actions in the plan are checked to ensure that their interactions meet specified safety conditions.

[0025] Mission and safety executive 204 is configured to take the plan output by automation executive 202 and determine which actions in the plan should be enacted or passed to the pilot for approval. The mission and safety executive also incorporates information from other software systems (e.g., detect and avoid) to ensure safe flight of the aircraft and passes appropriate input to the autopilot.

[0026] The exemplary air traffic command automation system 200 includes a controller configured to implement an automation executive 202 and a mission and safety executive 204. The controller includes at least one processor and a computer-readable storage device or medium encoded with programming instructions for configuring the controller. The processor can be any custom or commercially available processor, a central processing unit (CPU), a graphics processing unit (GPU), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), an auxiliary processor among several processors associated with the controller, a semiconductor-based microprocessor (in the form of a microchip or chipset), any combination thereof, or any device generally used to execute instructions.

[0027] For example, the computer readable storage device or medium may include volatile and non-volatile storage devices in read-only memory (ROM), random access memory (RAM), and wear correction factor memory (KAM). KAM is a persistent or non-volatile memory that can be used to store various operating variables when the processor is powered off. The computer readable storage device or medium can be implemented using any of many known memory devices, such as PROM (programmable read-only memory), EPROM (electrical PROM), EEPROM (electrically erasable PROM), flash memory, or any other electrical, magnetic, optical or combined memory device capable of storing data (some of which represent executable programming instructions that are used by the controller). In one example, each of the automation executive 202 and the task and safety executive 204 includes one or more processors configured by programming instructions on a non-transitory computer readable medium.

[0028] The exemplary automation executive 202 is configured to receive an air traffic command message 203 from an entity other than the flight crew (e.g., ATC), wherein the air traffic command message includes one or more tasks to be performed by the vehicle. In one example, the air traffic command message 203 is a controller pilot data link communication (CPDLC) message from ATC. In another example, the air traffic command message 203 is an ATC voice message.

[0029] The example automation executive 202 is configured to determine the intent of the air traffic command message 203. In one example, to determine the intent, the example automation executive 202 is configured to discern one or more tasks from the voice message. To discern one or more tasks from the voice message, the example automation executive 202 may, for example, convert the voice message into text using voice recognition software, parse the text into a plurality of text segments, match the text segments to task types known to be included in a CPDLC message, and adjust the task type based on the content of the text segments. In another example, to determine the intent, the example automation executive 202 is configured to discern one or more tasks from the CPDLC message.

[0030] The exemplary automation execution program 202 is configured to generate a sequence of "actions" for each task that the aircraft can perform. To generate the sequence of actions for each task, the exemplary automation execution program 202 may decompose each of the one or more tasks into one or more primitive actions, where the tasks are decomposed into individual actions that are comparable to the actions that the navigator would take (e.g., set altitude, change speed, etc.), which allows the plan to be intuitively presented to the navigator for approval or monitoring. An example of a task and a corresponding primitive action may be that the aircraft performs the task: "fly directly to [location], and climb to [altitude] after passing [location]"; the task requires the aircraft to fly to the location specified by [location], and adjust its altitude to the specified value after reaching the location.

[0031] The exemplary automation execution program 202 is configured to check consistency (e.g., a “descent” command from ATC should provide an altitude below the aircraft's current altitude), feasibility (e.g., a command to change the aircraft's speed should provide a value within the aircraft's operating speed), and safety (e.g., simultaneous speed and altitude changes must not cause the aircraft to stall) of each action after generating the action sequence.

[0032] The exemplary automation execution program 202 is configured to generate separate execution flows for different types of actions. The execution flows separate independent actions from each other by processing their execution separately. This allows tasks that affect different states of the aircraft (e.g., a task to change altitude and a task to change speed) to be planned and executed independently unless necessary by the task itself.

[0033] The example automation executive 202 is configured to relay its interpretation of the air traffic command message (retrieved tasks 205) and / or the action plan to the air traffic command message originator (e.g., ATC), preview the plan by the flight crew, and request the flight crew to approve the plan if necessary. To relay the interpretation of the air traffic command message and / or the action plan, the example automation executive 202 may reply to ATC with a scripted readback of the retrieved tasks 205 and / or the series of actions. To preview the plan by the flight crew, and request the flight crew to approve the plan if necessary, the example automation executive 202 may present the action plan to the flight crew, for example, via a graphical user interface (GUI) on a display device 206.

[0034] The exemplary automation execution program 202 is configured to automatically issue commands to execute the action at one or more appropriate points during the mission after receiving flight crew approval of the action plan, if necessary, or when flight crew approval is not required. The exemplary automation execution program 202 may generate an execution event monitor for identifying an event related to action execution (e.g., reaching a waypoint), evaluate the event monitor based on the value of the vehicle state 207, and issue a command to execute the action when an event related to the action (e.g., determined based on the vehicle state 207) occurs.

[0035] The example mission and safety executive 204 is configured to evaluate whether the system status 207 indicates that action execution is appropriate when the automation executive 202 commands action execution, and to communicate to the flight crew, for example, via a GUI, that action execution has been commanded.

[0036] The exemplary mission and safety executive 204 is also configured to monitor external events, such as using an external event monitor 208, to determine whether any external event will indicate that the command action will not be performed. For example, the external event can be crossing a geofence, where the geofence constraint will cause the mission and safety executive 204 to override the command action to prevent flying into a protected airspace. As another example, the external event can be a detection and avoidance (DAA) alert from a DAA sensor, which can detect one or more approaching aircraft that can interfere with the safe execution of the command action. Examples of DAA sensors may include radar systems, automatic dependent surveillance broadcast (ADS-B) sensors, traffic alert and collision avoidance systems (TCAS), etc. ADS-B is a satellite-based navigation tool in which an aircraft determines its location and then broadcasts the information so that other nearby aircraft equipped with the same tool can know its location. TCAS keeps an electronic eye in the sky immediately surrounding the aircraft. If another aircraft with similar equipment flies too close, an alert will be issued. The mission and safety executive 204 may choose to deviate from the plan created by the automation executive 202 in order to react to external events.

[0037] The example mission and safety executive 204 is configured to cause the performance of an action when the system status 207 indicates that performance of the action is appropriate and when no external events are detected that indicate that the action should not be performed. To cause the performance of the action, the example mission and safety executive 204 may prepare and send appropriate inputs to vehicle equipment, such as an autopilot 210, to cause the performance of the action. The example mission executive 204 is not only configured to check for external events before commanding a new action, but is also configured to override a currently executing action if an external event occurs while complying with a given permission.

[0038] The navigator's use of the air traffic command automation system 200 should be intuitive and require minimal effort (part of the system's value). Once configured, the system 200 will allow the navigator to monitor the interpretation of incoming commands and (if so configured) approve the resulting plan. Notices and warnings may be provided to the navigator via a GUI on a display device 206 in the cockpit.

[0039] The architecture is both configurable and extensible. The system may be configured to present the generated action plan to the navigator for approval before enacting it, or the system may be configured to automatically relay and enact all or part of the plan without requiring navigator approval (e.g., changes to internal states such as ATIS codes or altimeter settings may be automatically enacted, while changes to the physical state of the aircraft such as speed or altitude may require navigator approval). Breaking down complex tasks into sequences of simple actions may allow new tasks to be added simply by creating new "recipes" for tasks that already use existing parts - consistency, feasibility, and safety checks incorporated into simpler tasks are automatically included in new complex tasks.

[0040] Figure 3 300 in an example automation execution and an example process 320 in an example task and security execution program. The order of operations within process 300 and process 320 is not limited to the following order. Figure 3 The sequences shown are not intended to be performed, but may be performed in one or more alternate sequences where applicable and in accordance with the present disclosure.

[0041] Exemplary process 300 includes determining the intent of uplink message 301 (operation 302). Message 301 is an uplink message from an entity other than the flight crew (e.g., ATC), wherein the message includes one or more tasks to be performed by the vehicle. In one example, message 301 is a controller pilot data link communication (CPDLC) voice message from ATC. In another example, message 301 is an ATC voice message. The intent is one or more tasks to be performed by the aircraft. In one example, determining the intent includes discerning one or more tasks from an uplink message (e.g., CPDLC or voice message). Distinguishing one or more tasks from an uplink message may, for example, include converting a voice message into text using voice recognition software, parsing the text into multiple text segments, matching the text segments with task types known to be contained in a CPDLC message, and adjusting the task type based on the content of the text segments.

[0042] The exemplary process 300 includes breaking down the mission into primitive actions (operation 304). The mission is broken down into individual actions comparable to actions that the pilot would take (e.g., setting altitude, changing speed, etc.), which allows the plan to be intuitively presented to the pilot for approval or monitoring.

[0043] Exemplary process 300 includes checking the consistency and feasibility of the action (operation 306). Checking consistency may include determining whether the action is logical and consistent (e.g., a "descend" command from ATC should provide an altitude below the current altitude of the aircraft). Checking feasibility may include determining whether the action can be easily or conveniently performed (e.g., a command to change the speed of the aircraft should provide a value within the operating speed of the aircraft).

[0044] The exemplary process 300 includes generating separate execution flows for the decomposed tasks (operation 308). The execution flows separate independent actions from each other by processing their execution separately. This allows tasks that affect different states of the aircraft (e.g., a task to change altitude and a task to change speed) to be planned and executed independently unless necessary by the task itself.

[0045] Exemplary process 300 includes checking the safety of the interaction (operation 310). As an example, simultaneous speed and altitude changes must not cause the aircraft to stall.

[0046] The exemplary process 300 includes relaying the plan and obtaining navigator approval, if necessary (operation 312). Relaying may involve relaying its interpretation 303 of the command message and / or the action plan to the command message originator (e.g., ATC). Obtaining navigator approval may involve, for example, previewing the plan by the flight crew via the GUI 305, and requesting the flight crew's approval of the plan, if necessary, via the GUI 305.

[0047] The example process 300 includes generating an execution event monitor (operation 314). Generating an execution event monitor may include generating an execution event monitor for identifying an event related to the execution of an action (eg, reaching a waypoint).

[0048] The exemplary process 300 includes evaluating the event monitoring, and executing the action when the event monitoring indicates that the action initiation is appropriate (operation 316). Evaluating the event monitoring may include determining the vehicle state 307, and executing the action may include issuing a command to execute the action when an action-related event (e.g., determined based on the vehicle state 307) occurs.

[0049] Exemplary process 320 includes evaluating action execution (operation 322 ). Evaluating execution may involve evaluating whether system status 307 indicates that action execution is appropriate after the action execution has been commanded, and communicating to the flight crew, for example, via GUI 305 , that the action execution has been commanded.

[0050] Exemplary process 320 includes detecting external events (operation 324). Detecting external events may include monitoring external events, for example, to determine whether any external events would indicate that the command action is not to be performed. For example, the external event may be a geo-fence alert from geo-fence sensor 309, where geo-fence constraints would result in an override of the command action to prevent flight into protected airspace. As another example, the external event may be a detect and avoid (DAA) alert from DAA sensor 311, which may detect one or more approaching aircraft that could interfere with the safe performance of the command action. Examples of DAA sensor 311 may include radar systems, automatic dependent surveillance-broadcast (ADS-B) sensors, traffic alert and collision avoidance systems (TCAS), and the like.

[0051] The exemplary process 320 includes processing the UAS command (operation 326). Processing the UAS command may involve causing the performance of the action when the system status 307 indicates that performance of the action is appropriate and when no external events are detected indicating that the action is not to be performed. Causing the performance of the action may also involve preparing and sending appropriate input to vehicle equipment, such as an autopilot 313, to cause the performance of the action.

[0052] This article describes devices, systems, techniques, and articles for automating a significant portion of the interaction of an aircraft with air traffic command messages. The devices, systems, techniques, and articles provided herein can provide consistency checks and feasibility checks during the planning process. The devices, systems, techniques, and articles provided herein can provide tasks to be decomposed into smaller, executable pieces. The devices, systems, techniques, and articles provided herein can provide safety, consistency, and feasibility checks included in any level of decomposition of tasks, and can include component-level checks. The devices, systems, techniques, and articles provided herein can assume that when tasks are defined using already defined tasks or actions as components, safety checks are continued. The devices, systems, techniques, and articles provided herein can provide for generating independent plans (e.g., sequences of original actions) for each "flow" of execution, for example, a task that affects the vertical state of an aircraft may not affect the horizontal state of the aircraft. The devices, systems, techniques, and articles provided herein can provide for the execution of actions to be triggered by events (e.g., reaching a waypoint or a desired altitude). The devices, systems, techniques, and articles provided herein can, for example, be provided as automatic or require navigator-approved plan execution based on the settings of the autonomy level and the flight phase. The devices, systems, techniques, and articles provided herein can provide a system with very few computing requirements. The apparatus, systems, techniques, and articles of manufacture provided herein can provide a system in which the framework is easily extensible to additional tasks.

[0053] In one embodiment, an air traffic command automation system is provided on an aircraft for automating the process of listening to, interpreting, complying with, and responding to air traffic commands. The system includes one or more processors configured by programming instructions on a non-transitory computer-readable medium. The system is configured to: receive an air traffic command message related to the aircraft from an entity other than a flight crew on the aircraft, the air traffic command message including one or more tasks to be performed by the aircraft; determine the one or more tasks to be performed by the aircraft from the command message; generate a sequence of actions that the aircraft can perform to complete the task for each task; verify the consistency, feasibility, and safety of the actions; relay the interpretation of the command message to the command message initiator; preview the verified action sequence by the flight crew; and issue commands to perform actions at appropriate points during the task.

[0054] These aspects and other embodiments may include one or more of the following features. The command message may include a controller pilot data link communication (CPDLC) message or a voice message from air traffic control (ATC). In order to determine the one or more tasks to be performed by the aircraft, the system is configured to discern the one or more tasks from the CPDLC or voice message. In order to discern the one or more tasks from the voice message, the system may be configured to convert the voice message into text using voice recognition software, parse the text into multiple text segments, match the text segments with task types that may be known to be contained in the CPDLC message, and adjust the task type based on the content of the text segments. In order to generate an action sequence for each task, the system may be configured to decompose each of the one or more tasks into one or more primitive actions that are equivalent to the actions that the navigator will take. In order to relay the interpretation of the command message to the command message initiator, the system may be configured to reply to ATC using a scripted readback of the command message. In order to preview the plan by the flight crew, the system may be configured to present the action plan to the flight crew via a graphical user interface (GUI). In order to issue a command to perform an action at an appropriate point during a mission, the system may be configured to generate an execution event monitor for identifying events related to the execution of the action, evaluate the event monitor, and issue a command to perform the action when the event related to the action is detected. The system may also be configured to evaluate whether the system status indicates that the execution of the action is appropriate, and communicate the commanded action execution to the flight crew via a graphical user interface (GUI). The system may also be configured to monitor external events to determine whether any external event will indicate that the commanded action is not to be performed. External events may include geo-fence alerts or detection and avoidance (DAA) alerts, which indicate that one or more approaching aircraft that can hinder the safe execution of the commanded action have been detected. The system may also be configured to cause the execution of the action when the system status indicates that the execution of the action is appropriate and when no external event indicating that the action is not to be performed is detected. In order to cause the execution of the action, the system may be configured to prepare appropriate inputs and send the appropriate inputs to the autopilot system on the vehicle to cause the execution of the action.

[0055] In another embodiment, a processor-implemented method for automating the process of listening to, interpreting, complying with, and responding to air traffic commands in a vehicle is provided. The method includes: receiving, by the processor, an air traffic command message related to the vehicle from an entity other than a flight crew, the air traffic command message including one or more tasks to be performed by the vehicle; determining, by the processor, from the air traffic command message, the one or more tasks to be performed by the vehicle; generating, by the processor, for each task, a sequence of actions that the vehicle can perform to complete the task; verifying, by the processor, the consistency, feasibility, and safety of the actions; relaying, by the processor, the interpretation of the air traffic command message to the command message initiator; previewing, by the processor, the verified sequence of actions by the flight crew; and issuing, by the processor, commands to perform actions at appropriate points during the task.

[0056] These aspects and other embodiments may include one or more of the following features. The command message may include a controller pilot data link communication (CPDLC) message or a voice message from air traffic control (ATC). Determining the one or more tasks to be performed by the aircraft may include identifying the one or more tasks from the CPDLC or voice message. Identifying the one or more tasks from the voice message may include, for example, converting the voice message into text using voice recognition software, parsing the text into multiple text segments, matching the text segments with task types known to be contained in the CPDLC message, and adjusting the task type based on the content of the text segments. Generating an action sequence for each task may include decomposing each of the one or more tasks into one or more primitive actions equivalent to the actions to be taken by the navigator. Relaying the interpretation of the command message to the command message originator may include replying to ATC using a scripted readback of the command message. Previewing the plan by the flight crew includes presenting the action plan to the flight crew via a graphical user interface (GUI). Issuing a command to perform an action at an appropriate point during a mission may include generating an execution event monitor for identifying events related to the execution of the action, evaluating the event monitor, and issuing a command to perform the action when the event related to the action is detected. The method may also include evaluating whether the system status indicates that the execution of the action is appropriate, and communicating the commanded action execution to the flight crew via a graphical user interface (GUI). The method may also include monitoring external events to determine whether any external event will indicate that the commanded action is not to be performed. External events may include geo-fence alerts or detect and avoid (DAA) alerts, which indicate that one or more approaching aircraft that can hinder the safe execution of the commanded action have been detected. The method may also include causing the execution of the action when the system status indicates that the execution of the action is appropriate and when no external event indicating that the action is not to be performed is detected. Causing the execution of the action may include preparing appropriate inputs and sending the appropriate inputs to the autopilot system on the vehicle to cause the execution of the action.

[0057] In another embodiment, a non-transitory computer-readable medium is provided that is encoded with programming instructions that are configurable to cause a processor to perform a method. The method includes: receiving an air traffic command message from an entity other than a flight crew, the air traffic command message including one or more tasks to be performed by an aircraft vehicle; determining from the command message the one or more tasks to be performed by the aircraft vehicle; generating, for each task, a sequence of actions that the aircraft vehicle can perform to complete the task; verifying the consistency, feasibility, and safety of the actions; relaying an interpretation of the command message to the command message originator; previewing the verified sequence of actions by the flight crew; and issuing commands to perform actions at appropriate points during the mission.

[0058] These aspects and other embodiments may include one or more of the following features. The command message may include a controller pilot data link communication (CPDLC) message or a voice message from air traffic control (ATC). Determining the one or more tasks to be performed by the aircraft may include identifying the one or more tasks from the CPDLC or voice message. Identifying the one or more tasks from the voice message may include, for example, converting the voice message into text using voice recognition software, parsing the text into multiple text segments, matching the text segments with task types known to be contained in the CPDLC message, and adjusting the task type based on the content of the text segments. Generating an action sequence for each task may include decomposing each of the one or more tasks into one or more primitive actions equivalent to the actions to be taken by the navigator. Relaying the interpretation of the command message to the command message originator may include replying to ATC using a scripted readback of the command message. Previewing the plan by the flight crew includes presenting the action plan to the flight crew via a graphical user interface (GUI). Issuing a command to perform an action at an appropriate point during a mission may include generating an execution event monitor for identifying events related to the execution of the action, evaluating the event monitor, and issuing a command to perform the action when the event related to the action is detected. The method may also include evaluating whether the system status indicates that the execution of the action is appropriate, and communicating the commanded action execution to the flight crew via a graphical user interface (GUI). The method may also include monitoring external events to determine whether any external event will indicate that the commanded action is not to be performed. External events may include geo-fence alerts or detect and avoid (DAA) alerts, which indicate that one or more approaching aircraft that can hinder the safe execution of the commanded action have been detected. The method may also include causing the execution of the action when the system status indicates that the execution of the action is appropriate and when no external event indicating that the action is not to be performed is detected. Causing the execution of the action may include preparing appropriate inputs and sending the appropriate inputs to the autopilot system on the vehicle to cause the execution of the action.

[0059] It will be understood by those skilled in the art that the various exemplary logic blocks, modules, circuits and algorithm steps described in conjunction with the embodiments disclosed herein can be implemented as electronic hardware, computer software or a combination of the two. Some embodiments and specific implementations are described above according to functions and / or logic block components (or modules) and various processing steps. However, it should be understood that such block components (or modules) can be implemented by any number of hardware, software and / or firmware components configured to perform a specified function. In order to clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits and steps have been described above in general according to their functions. Whether such functions are implemented as hardware or software depends on the specific application and the design constraints imposed on the entire system. The technician can implement the described functions in different ways for each specific application, but such specific implementation decisions should not be interpreted as causing deviations from the scope of the present invention. For example, the embodiments of the system or components can use various integrated circuit components, such as memory elements, digital signal processing elements, logic elements, lookup tables, etc., which can perform multiple functions under the control of one or more microprocessors or other control devices. In addition, it will be understood by those skilled in the art that the embodiments described herein are only exemplary specific implementations.

[0060] The various exemplary logic blocks, modules, and circuits described in conjunction with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in an alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.

[0061] The steps of the methods and algorithms described in conjunction with the embodiments disclosed herein may be directly embodied in hardware, in a software module executed by a processor, or in a combination of the two. The software module may reside in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. In an alternative, the storage medium may be integrated into the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In an alternative, the processor and the storage medium may reside in a user terminal as discrete components.

[0062] In this document, relational terms such as first and second, etc., may be used only to distinguish one entity or action from another entity or action, without necessarily requiring or implying any actual such relationship or order between such entities or actions. Unless explicitly defined by the claim language, numerical ordinals such as "first", "second", "third", etc., only represent different individuals in a plurality, and do not imply any order or sequence. Unless explicitly defined by the claim language, the sequence of text in any claim does not imply that the processing steps must be performed in a temporal or logical order according to such sequence. Without departing from the scope of the present invention, the method steps may be interchanged in any order, as long as such interchange does not contradict the claim language and is not logically absurd.

[0063] In addition, depending on the context, words such as "connected" or "coupled to" used when describing the relationship between different elements do not imply that a direct physical connection must be made between these elements. For example, two elements may be connected to each other physically, electronically, logically or in any other way through one or more additional elements.

[0064] Although at least one exemplary embodiment has been presented in the aforementioned specific embodiments of the present invention, it should be understood that there are a large number of variations. It should also be understood that an exemplary embodiment or multiple exemplary embodiments are only examples and are not intended to limit the scope, applicability or configuration of the present invention in any way. On the contrary, the aforementioned specific embodiments will provide a convenient roadmap for implementing the exemplary embodiments of the present invention for those skilled in the art. It should be understood that, without departing from the scope of the present invention as set forth in the appended claims, various changes may be made to the functions and arrangements of the elements described in the exemplary embodiments.

Claims

1. An air traffic command automation system for automating the process of listening to, interpreting, complying with, and responding to air traffic commands on an aircraft, the system comprising one or more processors configured by programming instructions on a non-transitory computer readable medium, the system being configured to: receiving an air traffic command message related to the aircraft from an entity other than a flight crew on the aircraft, the air traffic command message including one or more tasks to be performed by the aircraft; determining from the command message the one or more tasks to be performed by the aerial vehicle; generating, for each of the one or more tasks, a sequence of actions that the aerial vehicle can perform to complete the task, wherein each action corresponds to a state change that the aerial vehicle can make, and wherein each action is mapped to one of the one or more tasks; Verify the consistency, feasibility and safety of each action in the action sequence; relaying an interpretation of the command message to a command message originator; A sequence of actions verified by previewing said flight crew; as well as A command is issued to perform an action at an appropriate point during a task, wherein the system is configured to generate an execution event monitor for identifying an event related to the execution of the action, evaluate the event monitor, and issue a command to perform the action when the action-related event is detected.

2. The system according to claim 1, in: The command message includes a controller pilot data link communication (CPDLC) message or a voice message from air traffic control (ATC); To determine the one or more tasks to be performed by the aerial vehicle, the system is configured to discern the one or more tasks from a CPDLC or a voice message; as well as In order to distinguish the one or more tasks from the voice message, the system is configured to convert the voice message into text using speech recognition software, parse the text into multiple text segments, match the text segments with task types known to be contained in the CPDLC message, and adjust the task type based on the content of the text segments.

3. The system of claim 1 , further configured to evaluate whether a system status indicates that an action execution is appropriate, and to communicate to the flight crew via a graphical user interface (GUI) that an action execution has been commanded. 4 . The system of claim 3 , further configured to monitor external events to determine if the external events would indicate that the command action is not to be performed.

5. The system of claim 4, wherein the external event comprises a geo-fence alert or a detect and avoid (DAA) alert indicating that one or more approaching aerial vehicles have been detected that could prevent safe execution of the commanded action.

6. The system of claim 3, further configured to cause performance of an action when the system state indicates that performance of the action is appropriate and when no external event is detected indicating that the action should not be performed.

7. The system of claim 6, wherein to cause the performance of the action, the system is configured to prepare appropriate inputs and send the appropriate inputs to an autopilot system on the vehicle to cause the performance of the action.

8. A processor-implemented method for automating the process of listening to, interpreting, complying with, and responding to air traffic commands in a vehicle, the method include: receiving, by the processor, an air traffic command message related to the vehicle from an entity other than the flight crew, the air traffic command message including one or more tasks to be performed by the vehicle; determining, by the processor, from the air traffic command message, the one or more tasks to be performed by the vehicle; generating, by the processor, for each of the one or more tasks, a sequence of actions that the vehicle can perform to complete the task, wherein each action of the sequence of actions corresponds to a state change that the aerial vehicle can perform, and wherein each action is mapped to one of the one or more tasks; Verifying, by the processor, the consistency, feasibility and safety of the action; relaying, by the processor, an interpretation of the air traffic command message to the command message originator; A sequence of actions verified by previewing by the flight crew via the processor; as well as Commands are issued by the processor to perform actions at appropriate points during the task, wherein the step of issuing commands includes generating an execution event monitor for identifying events related to action execution, evaluating the event monitor, and issuing commands to perform actions when the action-related events are detected.

9. The method according to claim 8, further comprising: include: evaluating whether the system status indicates that action execution is appropriate, and communicating to the flight crew via a graphical user interface (GUI) that action execution has been commanded; monitoring external events to determine if any external event would indicate that a command action is not to be performed; as well as When said system status indicates that performance of an action is appropriate and when no external events are detected that indicate that said action is not to be performed, said performance of an action is caused.

10. A computer program product comprising program instructions which, when executed by a processor, implement the steps of the method according to any one of claims 8 to 9.