• No se han encontrado resultados

Se enseña a los miembros de la Iglesia a reconocer el

A core component of the ACAP project is autonomous ground navigation. Automated ground navigation is difficult in aviation due to obstacles (wingtips), taxi instructions, and strict taxiway markings. The first step to achieving automated ground navigation is building a set of waypoints along a taxiway for the aircraft to follow. The next step is creating a module to follow the line. This section focuses on the creation of the waypoint set.

E 8.1 Core Problem

The problem of navigating an airport is that the aircraft needs knowledge of where an indicated taxiway is. Another problem is that not every taxiway is going to be given a label. The solution that we came up with is to represent the airport as an undirected-weighted graph. The airport data used in the flight management computer represents airport taxiways as nodes with an assigned coordinate. The airport data does not connect any of these nodes, but labels what

E23

Figure 10E – Example Taxiway point

Using the data from the airports, we can create a graph using these taxiway nodes as the nodes for the graph. Due to overlapping nodes from intersecting taxiways, the name of the node cannot be set to the corresponding taxiway. Instead, the name of the node is based on the latitude and longitude. This ensures that a single node is created for intersecting taxiways which would otherwise cause the graph to be disconnected. Each node is assigned a set of properties that is used in the creation of a ground route: taxiway name, type, and holdshort. A holdshort is a marker that tells the aircraft to stop and wait for clearance before proceeding. The taxiway name attribute is used to create a route from a set of taxiway instructions. The type attribute helps navigate along unnamed taxiways, and the holdshort attribute is a Boolean which indicates whether the node contains a holdshort mark.

For parking spaces, the airport data contains the points for parking spaces located in the airport. These are added to the graph as and are connected to the rest of the nodes. These parking nodes help the aircraft find parking spaces at an airport.

Once all the nodes are obtained from the airport data, the next step in creating the graph is linking the nodes. The airport data groups taxiway points with paths that indicate the start and end of a series of nodes.

E24

Figure 11E

The start and end numbers are based off the indices of taxiway points. The taxiway path above defines a path consisting of taxiway points with an index of 7 and 8. By traversing these taxiway path objects, the nodes are connected by grabbing the nodes of the corresponding index and adding an edge between them. In this example, an edge is added between taxi nodes 7 and 8.

After connecting all the nodes, a completed graph is created. Figure 12E shows the graph generated from the KBOS airport beside the airport diagram. This completed graph can be used to find a set of waypoints to navigate, given taxi instructions.

E25

Figure 12E -Boston Logan Airport Graph

E 8.1.1 Traversing the Graph

With an airport deconstructed into a graph, navigating around the airport becomes a graph traversal problem. For finding the shortest path to a specific point at the airport, the

shortest path can be computed using Dijkstra's algorithm. This works for un-towered airports, but for a towered airport, finding the shortest path to the target runway does not work. At a towered airport, a set of taxiway instructions need to be followed. For following taxiway instructions, a shortest path needs to be computed between each taxiway in the instruction set.

The core of the ground navigation is taking a taxi instruction set and translating it into a set of waypoints given an airport graph. The first step is splitting the instructions to get the individual taxiway identifiers found in the instruction set. Starting from a parking spot, the shortest path is found to the first taxiway in the instruction set. This shortest path is found by performing a breadth first search from the starting point for the node with the attribute matching

E26 the next taxiway identifier. Given this node, the Dijkstra shortest path is computed between the two nodes. To ensure the path follows the instructions correctly, the Dijkstra algorithm is modified to ignore edges not on the current taxiway. For leaving a parking space, this would prevent the shortest path from including a detour to an unintended taxiway. The weight used in computing the shortest path is the distance between the nodes. This pattern is repeated between each pair of taxiways in the instruction until the end is reached. The result is a subset of the airport graph with edges that only contain the path indicated by the input string.

Figure 13E shows the taxiway instruction "K K3 E K F 15R/33L G D D1 09/27" being parsed at KBOS. This instruction is entered through the mode control panel discussed in Appendix F. The start of the path is at parking space A. The red dots indicate the end of a shortest path search. In this example, a total of ten searches are performed to find the correct path.

E27