UFDC Home  myUFDC Home  Help 
DARK ITEM  



Full Text  
PAGE 1 1 FLIGHT P ATH DEVELOPMENT FOR REMOTE SENSING VEHICLES IN A MOVING REFERENCE FRAME By THOMAS JEFFREY RAMBO A THESIS PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE UNIVERSITY OF FLORIDA 2012 PAGE 2 2 2012 Thomas Jeffrey Rambo PAGE 3 3 To Lorraine and Jeannine PAGE 4 4 ACKNOWLEDGMENTS I would like to thank everyone who supported me throughout my educational career. To my Parents, who have always believed in me and kept nudging me in the right direction. To my grandparents who kept me well fed and well loved throughout college. And to my brother Matt hew To the professors and staff of the UF USARG, who without you this program would not exist. Matt, you r ability to juggle our limited resources is unparalleled. I wish you luck on your contin uing educational career. To Dr. Percival, thank you for your constant encouragement and support. You kept the program moving forward as we transition ed aircraft, and had faith that we would deliver. To Dr. Ifju, whom I owe a huge debt of gratitude From t he first week of school, through our trip to France, and finally through these last semesters, thank you for your patience. You saw potential in me and practically got me in to grad school. I will be forever grateful for the opportunities the MAVlab and th e UF USARG have provided me with. Finally, I would like to thank my fellow researchers for putting up with me as I day with you sinc e sophomore year. Thanks for not decking me, and slowly moving the ship forward. John, thanks for the guidance you have provided, and setting the course. Brandon, thank you for taking on the task of building airplanes, so that I could focus on my research. I hope we can all share in the exciting future we have embarked upon. PAGE 5 5 TABLE OF CONTENTS page ACKNOWLEDGMENTS ................................ ................................ ................................ .. 4 LIST OF TABLES ................................ ................................ ................................ ............. 7 LIST OF FIGURES ................................ ................................ ................................ .......... 8 LIST OF ABBREVIATION S ................................ ................................ ........................... 11 ABSTRACT ................................ ................................ ................................ .................... 14 CHAPTER 1 INTR ODUCTION ................................ ................................ ................................ ..... 16 Review of Technology ................................ ................................ ............................. 16 History of UF UAV Program ................................ ................................ .................... 18 Mo tivation Behind Study ................................ ................................ .......................... 21 2 OPTIMIZING DATA COLL ECTION ................................ ................................ ......... 28 FAA Regulations ................................ ................................ ................................ ...... 28 Photogrammetric Parameters ................................ ................................ .................. 29 3 SETTING FLIGHTLINES ................................ ................................ ......................... 34 The Target Area ................................ ................................ ................................ ...... 34 Real World Considerations ................................ ................................ ...................... 39 Cr eating Flightlines ................................ ................................ ................................ .. 41 Ordering Flightlines ................................ ................................ ................................ 44 4 SETTING TURNS ................................ ................................ ................................ .... 57 Computer Science Notes and Background ................................ .............................. 57 Motivation ................................ ................................ ................................ ................ 61 Common Methodology ................................ ................................ ............................ 62 Turning Radius is Less Than Flightline Width ................................ ......................... 66 Turning Radius is Equal to Width ................................ ................................ ............ 68 Turning Radius is Greater Than Width ................................ ................................ .... 68 5 COMPLETE SIMULATION RESULTS ................................ ................................ .... 93 Overview of Designing a Flight Path ................................ ................................ ........ 93 FLAT Turns ................................ ................................ ................................ ............. 94 HOOK Turns ................................ ................................ ................................ ............ 94 PAGE 6 6 BULB Turns ................................ ................................ ................................ ............. 95 General Results ................................ ................................ ................................ ....... 96 6 SUMMARY AND CONCLUSI ONS ................................ ................................ ........ 105 Co nclusions ................................ ................................ ................................ ........... 105 Further Work ................................ ................................ ................................ ......... 106 LIST OF REFERENCES ................................ ................................ .............................. 109 BIOGRAPHICAL SKETCH ................................ ................................ .......................... 111 PAGE 7 7 LIST OF TABLES Table pag e 2 1 Photogrammetric parameters ................................ ................................ ............. 32 3 1 Principal direction selection ................................ ................................ ................ 50 3 2 Criteria for cross track direction ................................ ................................ .......... 50 3 3 Inclusion logic ................................ ................................ ................................ ..... 53 4 1 Parameter 1 logic ................................ ................................ ............................... 77 4 2 Parameter 4 logic ................................ ................................ ............................... 81 4 3 Tu rn cues ................................ ................................ ................................ ........... 83 4 4 BULB vs. HOOK ................................ ................................ ................................ 86 4 5 Upwind course cues ................................ ................................ ........................... 86 4 6 Downwind course cues ................................ ................................ ....................... 87 4 7 Upwind/downwind comparison ................................ ................................ ........... 87 4 8 Non intuitive turns ................................ ................................ ............................... 88 5 1 FLAT turn comparison ................................ ................................ ........................ 98 5 2 HOOK turn comparison ................................ ................................ .................... 100 5 3 BULB comparison ................................ ................................ ............................. 102 5 4 Comparison of random polygon with 100 m flightline width .............................. 103 5 5 Comparison of random polygon with 40 m flightline width ................................ 10 4 6 1 Summary of results ................................ ................................ ........................... 107 PAGE 8 8 LIST OF FIGURES Figure page 1 1 Dipole flight path from NOVA 2 missions ................................ ............................ 24 1 2 Two flightlines without a turning waypoint. Here the vehicle has poor tracking. ................................ ................................ ................................ .............. 25 1 3 .... 25 1 4 Varying waypoint radii (a) 0m (b) 50m (c) 100m ................................ ................. 26 1 5 Waypoint tracking with (a) Right angle, (b) Obtuse angle, (c) Acute angle ......... 27 2 1 Photogrammetric flight planning for CONOPS ................................ .................... 33 3 1 (a) Concave Polygon vs. (b ) Convex Polygon ................................ .................... 46 3 2 Lines of Support (a) Vertex Vertex (b) Face Vertex (c) Face Face ................. 46 3 3 ................................ .... 47 3 4 Forces of flight ................................ ................................ ................................ .... 47 3 5 The method for reducing the complexity of the search area for the span of a polygon. For a given Vertex (V i ), and its Antipodal Vertex (V V ), the V V of V( i+1 ) through V( V 1 ) will only exist in V( V+1 ) through V( i 1 ). ................................ ... 48 3 6 Safety constricted headland with a road ................................ ............................. 49 3 7 Flight with terrain ................................ ................................ ................................ 49 3 8 Creation of untrimmed flightlines with slope > 0 ................................ ................. 51 3 9 Geometry for inclusion algorithm. Here the line formed from P 0 to P 1 is being tested on the Face from V i to V i+1 ................................ ................................ ....... 52 3 10 Completely labeled polygon for inclusion testing ................................ ................ 54 3 11 Trimmed flightlines after the applied inclusion algorithm ................................ .... 55 3 12 Parallel paths. Dipole on the left; Boustrophedon on the right ............................ 56 3 13 Flight path possible orders (a) near to far, (b) far to near, (c) far to near inverted, and (d) near to far inverted. The house is the home position, or the location of the GCS. ................................ ................................ ........................... 56 PAGE 9 9 4 1 of waypoints 1, 2, 4, 5, and a turning point of waypoint 3 ................................ ................................ .............................. 72 4 2 Vectors of Flight ................................ ................................ ................................ .. 73 4 3 Correction heading ................................ ................................ ............................. 74 4 4 Determination of right vs. left. Vector 1 is defined with Angle (b), and Vector 2 is tested with Angle (a). Since (b) minus (a) is greater than zero, as d efined by the algorithm, Vector 2 is to the right of Vector 1. ................................ .......... 75 4 5 Turn types from left to right: Flat, U, HOOK, and BULB ................................ ..... 75 4 6 Headland and non orthogonal flightlines ................................ ............................ 76 4 7 Dubins turn types (a) RLR, (b) LRL, and (c) RSR ................................ ............... 77 4 8 Turn vectors ................................ ................................ ................................ ........ 78 4 9 speed to the North. ................................ ................................ ............................. 79 4 10 Example turn with height ................................ ................................ .................... 80 4 11 Two separate crosswind turns, both with Origin (0,0). A 17 m/s airspeed in a 4 m/s wind to the East causes the width of the turn on the left to be less t han the turn on the right. ................................ ................................ ........................... 81 4 12 Complete turn logic ................................ ................................ ............................. 82 4 13 Two separate turns for pre computation, 17 m/s airspeed with 4 m/s wind to COURSE set to ). ................................ ........... 83 4 14 Complete FLAT Turn, 17 m/s airspeed with a 4 m/s wind to the North. IP at [0,0], EP at [ 96,0], Target is [ 100,0] whic h is within GPS error of 5 m. ............. 84 4 15 Complete Procerus flat turn, 17 m/s airspeed with a 4 m/s wind to the North. IP at [0,0], EP at [ 104, 17]. Target is [ 100,0]. ................................ ................... 84 4 16 Procerus general oversized turn, 17 m/s airspeed with 4 m/s wind to North. IP at [0,0], EP at [20, 38]. Target is [40,0]. ................................ ......................... 85 4 17 Crosswind example, with BULB on the left and HOOK on the right. Both have 17 m/s airspeed, 4 m/s wind to East. ................................ ......................... 85 4 18 HOOK turn comparison. The turn with the larger height turns away, while the turn with the smaller height turns towards the target. Airspeed of 17 m/s with a 4 m/s wind to the North. IP for both is [0,0], Target is [40,0]. ........................... 87 PAGE 10 10 4 19 The turn with the larger height turns towards the target, while the turn with the smaller height turns away from the target. Airspeed of 17 m/s with a 4 m/s wind to the South. IP for both is [0,0], Target is [40,0]. ................................ 88 4 20 HOOK computations. Three turns, each at 17 m/s airspeed with a 4 m/s wind to the North. The largest turn subtending two turns below are what makes this a HOOK turn. All turns hav e origin [0,0]. .. 89 4 21 Completed HOOK turn ................................ ................................ ....................... 90 4 22 BULB precomputation, 17 m/s airspeed, 4 m/s wind to the East ........................ 91 4 23 Complete BULB turn ................................ ................................ ........................... 92 5 1 Flightline overview ................................ ................................ .............................. 97 5 2 Complete FLAT turns generated by the Procerus ............................. 97 5 3 Complete FLAT turns generated by this algorithm ................................ ............. 98 5 4 Complete HOOK turns generated by this algorithm ................................ ............ 99 5 5 Complete HOOK turns generated by the Procerus ......................... 100 5 6 Complete BULB turns generated by this algorithm ................................ ........... 101 5 7 Complete BULB turns generated by the Procerus .......................... 101 5 8 Completely automated flight path generation from this algorithm ..................... 102 5 9 Assisted flight path generation from Procerus ................................ 103 5 10 Completely automated flight path generated by this algorithm ......................... 104 6 1 Non b oustrophedonic parallel paths ................................ ................................ 108 PAGE 11 11 LIST OF ABBREVIATIONS LIST OF ABBREVIATIONS A Airspeed B Airbase CCW Counterclockwise CV Cross Vector CW Clockwise Ratio of Airspeed to Groundspeed DSLR Digital Single Lens Reflex EP End Point EV End Vector F Upward Force F Faces of the Polygon f Fo cal L ength fps frames per second G Groundbase GCS Ground Control Station GDE Ground Distance Error GigE Gigabit Ethernet GPS Global Positioning System HV Heading Vector IP Initial Point IV Initial Vector ISR Intelligence Surveillance and Reconnaissance PAGE 12 12 l Line of Support LOS Line Of Sight m Meters MAE Mechanical and Aerospace Engineering N Outward Pointing Normal Vector NTS C National Television System Committee Wind Vector Direction of V ehicle P Polygon P Point PD Principal Direction PE Percent Endlap PS Percent Sidelap S Span of a Polygon sUAS small Unmanned Aerial System SUAV Small Unmanned Aerial Vehicle t Parametric Parameter t p Time B etween Photo S ites temp Temporary Vector Roll Angle UAS Unmanned Aerial System UAV Unmanned Aerial Vehicle USB2 Uni versal Serial Bus 2 nd Generation PAGE 13 13 USGS United States Geological Serivce V Vertices Vv Antipodal Vertex VV Velocity Vector W Flightline Width W Width of a Polygon x Sensor Length in the x D irection Orthogonal Direction in Coordinate S ystem of Target Area x p Number of Pixels in the x D irection Principal Direction In Coordinate System Of Target Area y Sensor Length in the y D irection y p Number of Pixels in the y D irection PAGE 14 14 Abstract of Thesis Presented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Master of Science FLIGHT PATH DEVELOPMENT FOR REMOTE SENSING VEHICLES IN A MOVING REFERENCE FRAME By Thomas Jeffrey Rambo December 2012 Chair: Peter Ifju Major: Aerospace Engineering Remote sensing by aerial vehicles is a practice that has been around for several decades. Recent advancements in small Unmanned Aerial Systems (sUAS), paralleled with miniaturization of high quality cameras systems has led to the development of a new platform for aerial photography and data collection The unique flight profile of sUAS and their novelty leaves much work to be done in the area of controls research known as coverage planning C urrently the flight plan ning is manual and entirely dependent on an operator Often the optimal path is counter intuitive, either by selecting a direction for flight that is not obvious or by turning to the adjacent flightline by first turning away from it. This thesis sets out t o develop an algorithm t hat produces the optimal flight plan for sUAS regardless of environmental or geographical parameters. This algorithm takes in vehicle parameters and the properties of the sensor systems used for imaging, and computes a complete fligh tplan including altitude, airspeeds, flight paths encompassing the target area, and the optimal way to turn in between flightlines. The results presented improve the flight planning procedure dramatically from a manual process completely PAGE 15 15 dependent on the o perator to a totally automated process that ensures the optimal data collection path every time CHAPTER 1 HEADING 1 PAGE 16 16 CHAPTER 1 INTRODUCTION Review of Technology Precision maps acquired using aerial photography are a truly cross industry product that is ubiquitous with the Internet age. The geospatial industry has been around in its mode rn form for nearly two decades, and now p roducts like Google Maps TM and Bing TM Maps bring geospatial data to the masses in a manner never before seen. Advances in optics and sensors have increased the quality of the data product, however the methods of acquisition have remained largely the same. Satellites now pro vide frequent large scale imaging, but their timing and position are largely pre determined. Furthermore the ca pital cost of developing, launching, and maintaining a satellite precludes rapid evolution of satellite based imag ery. Aerial platforms therefore have been the method of choice f or on demand data. Small to mid sized aircraft are outfitted with large cameras and sensing equipment, and are available for scheduled flights nearly world wide [25] Recently, a new technology has matured to the point of wide scale adoption for this same purpose. Small Unmanned Aerial Systems (sUAS) have become reliable and robust enough to now be considered for routine use in aerial photography missions [17] These sUAS in fact are and ideal candidate platform for small scale (sub 1000 acre) surveys because of their low operational cost, ease of deployment, and flight profil e. Emerging civilian data collection projects are utilizing military sUAS for a role they were never designed to fill. Military sUAS are designed to fill an operational gap in real time intelligence, surveillance and reconnaissance (ISR) at the squad lev el. These vehicles trade robustness and ease of operations for performance, endurance and PAGE 17 17 stability. Fixed or gimbaled cameras stream live video back to a single operator, who flies the vehicle much like a video game through the forward looking camera. Th e first forays into using sUAS for remote sensing fo cused on these types of surplus military systems being one of the first to look beyond this limitation [24] When adapted to civilian mapping missions, those battlefield tradeoffs sever ely limit the potential for the technology. One prominent case is the acquisition of dozens of Raven systems by the (United States Geological Service) USGS i n support of their s UAS program [16]. Raven s were designed by AeroVironment in 2002 for the U S ISR missions These systems employ both full color and near infrared cameras, operati n g at 480 x 600 lines of ( National Television System Committee) N T S C resolution While this may be adequate for locating a man sized objec t on the move from 300 m, this is not very effective at geospatial data collection. While it is possible to collect geospatial data from real time video, it is sub optimal [18] Video photography and still photography are essentially a trade off of resolu tion vs. frame rate Moreover, progressive scan cameras add further image loss as compared to stills. A still camera operates at very high resolution and low frame r ate while a video camera is the opposite, operating at a low resolution and high frame r at e. While it is true that use in real time video will result in the user pay ing for this extra coverage in processing and larger logistical footprint. Video generates far t o o much data to store onboard the aircra ft, and therefore must be sent back to the ground via a line of sight radio modem. Any break in the link between the aircraft and the r ecording station on the ground results in lost coverage. PAGE 18 18 Furthermore, the processing of excessive image overlap is exponentially more time consuming then processing just the necessary data acquired from stills. History of UF UAV Program The NOVA project was borne out of collaboration between researchers at th e University of Florida in the D epartments of Mech anical and Aerospace Engineering (MAE) the Geomatics Program of the School of Forest Resources and Conservation and the Department of Wildlife Ecology and Conservation In 1999 the UF team began experimenting with UAS technology for remote sensing applic ations. UAS technology as a whole was in its infancy, and being driven largely by the afore mentioned ISR systems [10] The program began with the acquisition of the FoldBat, TM an early UAS designed and manufactured by MLB Company. This was strictly a vide o system, and no effort was put into flight planning. The low success rate of this platform lead and the geographic separation between the manufacturer and user led the team to search out in house solutions, and they quickly partnered with the MAE departme nt The first domestic venture to develop a vehicle that suited the requirements of the UF program resulted in a new vehicle called the Tadpole [1]. The T adpole evolved into the NOVA series of aircraft. By the mid 2000 s, UAS technology was pervasive enough that avionics and sensors had reached the commercial market. Miniaturization of all components had finally come to a point where a full navigation and guidance solution was available in the Procerus autopilot. Following market drivers of the time, the was designed for ISR missions, and although not intended for this application was successfully adapted for the NOVA platform Data collection sensors had shrunken enough to allow for a still PAGE 19 19 c amera of sufficient resolution to be placed on the aircraft to use direct geo referencing techniques. Furthermore, electric propulsion technology had increased in energy density as to produce batteries that could power an aircraft for at least half an hour, or enough to collect a statistically relevant sample of imagery. All of these were incorporated into the first of the series of NOVA aircraft, called the NOVA 1 [23]. The NOVA 2 incorporated the latest navigation and control technol ogy in the form of a Ke v2 system, and the accompanying ground station software Virtual v 4.0 and Ground Control Station (GCS) hardware work on the system architecture highlighted the need for proper flight planning, and t his was the first system wher e flight planning was injected into the workflow as a critical process [24] the linear path from one waypoint to the next. Two or more flightlines form a flight path, or th ground of interest for photography, and the flight path is generally centered above the target area. The NOVA 22 m/s for safe slow flight Additionally the early payloads were only capable of taking an image ever y 2.5 seconds. A typical wind of ~4 m/s downwind at this image rate resulted in the Airbase (B) or the distance between the centroid of pictures, at 65 m Fo r m any missions the required B based on the desired resolution was on the order of ~5 0m, thus limiting flights to flying against the wind (upwind), slowing the B to 45 m. Wind effects therefore forced the only, resulting in t he pattern shown in Figure 1 1. This because of its resemblance to the physics phenomena. PAGE 20 20 These first flightplan s were effective but highly inefficient. No inflight adjustments were made, and therefore the plans were created to account for the worst wind conditions. The vehicle traveled downwind outside of the target area, and there were no constraints on maneuver ing to the next flightline. The NOVA 2.1 is the current iteration of the NOVA series of aircraft, and like its pre decessors incorporates the latest in guidance and navigation. The NOVA 2.1 features a v2.23 and v 6 .0 For the first time in the NOVA series, this system had custom software written for automated pre flight procedures and very rudi mentary flight planning. Based on the dipole patterns developed for the NOVA 2, a flightplan could be generated with simple inputs of flightline width, number of lines, length of lines, and direction. This is in no way optimal, but decreased the Concept of Operations (CONOPS) of flight pl anning from 45 minutes down to 10 The performance envelope of the NOVA 2.1 also improved over the NOVA 2 platform. Work done by the UF team dec reased the minimum safe working speed from 22m/s down to 15 m/s, and the flight time from ~50 minutes to ~90 minutes at an optimum 17 m/s Therefore, for all simulations in this thesis the optimal flight speed of 17 m/s is used. Furthermore, improvements in the payload brought acquisition time from 2.5 seconds down to 2.3 s econds. At an optimal flight speed, even with a 4m/s tailwind the B is under the typical requirement of 50m. One unique aspect of the NOVA series of aircraft meaning an electric motor is used for propulsion. This has direct coverage planning implications because the mass of the vehicle does not decrease as the flight continues as in traditional combustion propulsion. Traditional range and efficiency calcul ations are PAGE 21 21 therefore invalid and speed to fly theory as used by Evers becomes applicable [5] In his study, Evers concludes that modifying the airspeed of an aircraft in the presence of wind, either by increasing ground coverage and speeding up into the wind, or slowing to n increased range of the aircraft. Motivation Behind S tudy The NOVA 2.1 was the first successfully deployed version of the NOVA aircraft series and was routinely deployed to South Florida in the summer of 2010. Even with the increased efficiency of creat ing flightplan s, it became quickly apparent that there was much to improve on the CONOPS The improved dynamics of the vehicle, along with payload improvements, removed the constraints behind the inefficient dipole pattern. More traditional flightplan s could now be pursued. The 2.23, when fully tuned, is capable of following a linear path with error on the same magnitude of that of lateral GPS (around 5 meters) [20] autopilots are capable of completely autonomous navigation and contr ol, but flight planning is completely dependent on pilot on the loop involvement. In other words, the aircraft is capable of flying itself with operator oversight. An extensive preflight procedure has been developed for the NOVA series of aircraft as part of the CONOPS and part of that procedure is carefully determining where the aircraft will g o in flight to ensure coverage Part of the initial motivation behind this thesis is the fact that the series is not designed for coverage planning, but in stead is designed for ISR missions, and therefore loose waypoint following. The flight planning portion of the series utilizes only the ground station software, The hardware has no capabilities whatso ever to determine the aircra path. Seemingly autonomous functions, such as return to home failsafe s, PAGE 22 22 are simply a pre loaded set of commands that are executed with no onboard intelligence. is further limited by the fact that vehicle dynamics are not considered, a nd only linear flight paths are allowed. This means that the operator can command a flight path that the dynamics of the vehicle will not execute on. Such a case is examined in Figure 1 2 where a turn with too tight of a radius is commanded T he vehicle overshoots waypoint 3 and has trouble intercepting the flightline back to waypoint 4 This scenario is described for farming equipment by Jin in which case the local curvature between farm lines is too great for the field equipment to follow As a result some area in the field lines will not be covered (Jin & Tang, 2010) Analogous to this case, when the commanded local curvature is beyond what the vehicle can maneuver, some area in the target area will be missed. This behavi or is quickly recognized by even novice pilots, and i n real world deployments, this limitation is accounted for. The operator will attempt to compensate approach, armed with a general knowledge of vehicle dynamics or by just observing the actual flight path of the vehicle. Figure 1 3 shows the same desired flight path, but with operator compensation in the labeled here as 3. With this waypoint, the vehicle re intercepts the flightline from waypoint 4 to 5 su ccessfully. This approach is a brute force mentality non opti mal, and completely at the discretion of the operator. An additional problem is in the way the series executes the navigation algorithm. Waypoints h th at when entered, triggers the next command in the navigation script. The autopilot continuously calculates the absolute difference between its current latitude and longitude, and the latitude and PAGE 23 23 longitude of the desired waypoint [20] When that dist ance, or error, becomes less tha n the radius, it is considered to be at that waypoint. Osborne and R ysdyk highlights the problem with this type of navigation [15] Figure 1 4 (a) shows a tracking pattern with zero radius, Figure 1 4 (b) shows an optimized radius, and Figure 1 4 (c) shows too much of a radius. The autopilot systems allow the operator to tune this value. H owever t his value is the same for all waypoints, all inbound orientations and all wind magnitudes. O sborne sug gest ed a correction for this by using a lookup table and varia ble waypoint radii based on the wind speed, magnit ude, and incoming flight angle [15] Their conclusions did improve ground tracking, however the fundamental problem still exists for path s that exceed vehicle dynamics, as is the case with the NOVA 2.1 aircraft. The radius is optimally tuned for orthogonal turns, how ever the incoming angle to the i +1 flightline makes a significant difference in the tracking performance of the aircraft as shown in Figure 1 5 Among obtuse, right, and acute incoming angles, t he obtuse angle has the best performance, the right angle has some slight overshoot, and the acute angle has severe re intercept problems. It should be noted that photogrammetric flightplans most commonly use acute and right angles, and rarely use obtuse angles, adding to the motivation of this thesis PAGE 24 24 Figure 1 1 Dipole flight path from NOVA 2 missions PAGE 25 25 Figure 1 2 Two f lightlines without a turning waypoint. Here the vehicle has poor tracking. Figure 1 3 PAGE 26 26 Figure 1 4 Varying wayp oint r adii (a) 0m (b) 50m (c) 100m PAGE 27 27 Figure 1 5 Waypoint t racking with (a) Right angle, (b) Obtuse angle, (c) Acute angle PAGE 28 28 CHAPTER 2 OPTIMIZING DATA COLLECTION FAA Regulations Given the operational nature of the UF research program real world considerations must be taken into account regarding the development of the aircraft and subsequently this algorithm that is the focus of this thesis Moreover, The UF program, as a result of funding requirements, has been focus ed on missions designed to produce mosaiced images where this flight planning is necessary. Therefore, the development of this algorithm begins with the regulations, and what is legally allowed for UAS flight. The largest limiting factor in the design of the NOVA series of aircr aft is what is known to the aviation community a s the operators other aircraft [22] used by the FAA to ensure that aircraft do not run into each other The nature of UAS makes it difficult to meet this requirement or in the case of the NOVA which lacks any sort of real time optical sensor, impossible. According ly to fly in the National Airspace System (NAS), UF has had to apply for special permits to fly. Recognizing the diff architecture, every aircraft is required to have a transponder broadcasting its position. Transponder technolog y has been miniaturized enough to be useful on sUAS, and in fact the NOVA 2.1 carries such a device when required I n the interim, i n a broad stroke move to allow UAS to fly the FAA ha s chosen to and has required operators to have at least a private pilots license to fly the UAS to fulfill the PAGE 29 29 [6] This stipulation, while now allowing aircraft into the airspace, limits the range of UAS to 1 mile L ine of Sight ( LOS ) from the observer. Additionally observers must remain stationary, limiting a single flight to a maximum coverage area of 3.14 miles squared or about 2 000 acres. These limitation has direct implications on the design of the aircraft. Ph otogrammetric concerns aside, the flight speed and dynamics of the aircraft must be limited such that is it small and agile enough capable of maneuvering within the limits of the LOS requirement. A small and agile vehicle is therefore required. Furthermore strictly for coverage planning, an aircraft capable of more than 2 000 ac res of coverage is inefficient. The FAA has additional operational stipulations for UAS. Flight is res tricted to as defined by areas shown on an FAA Sectional m ap This restriction is safety based, and is designed to minimize collateral damage if a UAV impacts the ground with sufficient kinetic energy. Furthering this restriction, UAS are prohibited from fl ight over roads and highways. Photogrammetric Parameters The algorithm developed in this thesis is not limited to UAS applications. The vehicle described in the algorithm is only defi ned as a set of parameters, such that a terrestrial robot or watercraft could also employ the development here. A sensor, as defined in this algorithm, can be anything that is responsible for data collection or area coverage. For a UAS the sensor could be a photogrammetric camera or a LIDAR system. Likewise for a farm tractor the sensor could be the boom collecting crops. In gen eral the sensor is descr or width and height as projected onto the ground. For farm equipment, from which many PAGE 30 30 analogies are draw n this footprint would have a height of 0, and a width of whatever implement is being used. For a more traditional coverage problem (lawnmower s, for example), the height and width would be a direct projection of the cutting area. For aircraft, this projection is given by Equation (2 1) where f is focal length of the camera y is t he sensor length of the imager in the camera G is ground coverage. ( 2 1 ) This footprint however is a secondary consideration, and is actually a driven dimension. The flight planning process begins with the selection of desired resolution or centimeter s per pixel. Given the fixed optics of the imaging system, this specification gives the maximum distance away from the ta rget to achieve this resolution For aerial applications this distance is altitude, and the target is the ground. Equation (2 2) gives the resolutio n, with G defined as above and y p is given as the number of pixels of the sensor in the y direction. ( 2 2 ) The next parameter is of each image, and is driv en based on a requirement of 2 D or 3 D image products. Typically 3 D overlap is specified, which results in 66 % overlap laterally from image to image. This percentage is what specifies the width of the flightlines. Per cent Side Lap (PS) is given by Equation (2 3) with G defined as above and W as the width between flightlines ( 2 3 ) of each image is also a factor when the frequency at which images are taken is limited. Forward Overlap, or Percent End Lap (PE) as it is called, is a PAGE 31 31 similar parameter to PS and typically is also 66 % PE is calculated in Equation ( 2 5 ) using G, and the distance between picture exposures defined as the Airbase (B) For the NOVA 2.1 aircraft, the image rate is limited to one image every 2.3 seconds setting B in Equation ( 2 4 ) with A being airspeed and t p being time between pictures ( 2 4 ) ( 2 5 ) Table 2 1. s hows the pa rameters used for the NOVA 2.1 a ircraft. The results from Equations ( 2 1 ) through ( 2 5 ) using Table 2 1. are combined and displayed in the CONOPS table shown in Figure 2 1 Figure 2 1 is rea d as follows : Given the mission, choose a resolution desired on the left and read off the required width for flightlines. Next read off the altitude required for that resolution. Finally, based on wind, choose a groundspeed to give the desired coverage. Bo xes shaded in RED groundspeeds are only valid for individual photos. Boxes shaded in YELLOW are good for 2 D m osaics. Finally, b oxes sha ded in GREEN are valid for 3 D m osaics. It is clear that wind is a limiting factor, and given the performance of the air craft th ere are many scenarios where 3 D coverage is not possible for a given wind condition. Future improvements to eliminate this problem come in two fo rms: better aerodynamics and a more advanced payload. Work done by Evers shows that a better flight e nvelope can be achieved with the addition of flaps, and the minimum f light speed can be decreased even further from 15 m/s down to 13 m/s [5] The imaging problem is really a bandwidth limited problem of sending 10 Megapixel ( 29.9 MegaByte) images PAGE 32 32 uncompressed over a USB2 protocol (480 MegaBit/Second) An improved payload that incorporates a newer DSLR camera with different protocols, or an industrial camera that supports full GigE transmission standard will reduce or eliminate this transfer problem and could increase the imaging rate as high as video standards (24 30 fps). Table 2 1. Photogrammetric parameters Variable Name Variable Symbol Value Units Exposure Interval t p 2.3 sec Focal Length f 25 mm Sensor X x 12.85 mm Sensor Y y 17.15 mm Sensor X Pixels x p 2736 pixels Sensor Y Pixels y p 3648 pixels PAGE 33 33 Figure 2 1 Photogrammetric flight p lanning for CONOPS PAGE 34 34 CHAPTER 3 SETTING FLIGHTLINES This algorithm is bro ken up into two major sections: determining the most optimal flightlines and then subsequently determining the best way to travel between said flightlines. In general optimizing the flightlines will have the largest impact on the overall efficiency of the flight, as most of the time spent during th e flight is traversing flightlines. Furthermore, the turns between flightlines are completely agnostic to flightline parameters, and by nature the algorithm will always produce the most optimal result The Target Area To begin, we will define the search ar ea that is used for this algorithm, also defined as the target area. In general, the search area is defined as a closed, continuous set of lines defined by n vertices (V) in the Cartesian coordinate system. These closed lines form polygons (P) with n faces Generally, non intersecting polygons are divided into two categories. A polygon is classified as convex if, given any two points on any face, the line drawn between those two points lies (inclusively) in the polygon, bounded by the fac es. A concave polyg on is simply non convex [12] Figure 3 1 shows the difference between two arbitrary polygons. For the purposes of this algorithm, the search area will be constricted to convex polygons. Concave polygons can always be decomposed into constituent convex poly gons. Choset summarizes several methods to use exact cellular decomposition to decompose these concave polygons into subsets of convex polygons [3] Li also proposes a method more defined to this particular case, and solves several of the problems associated with decomposition [11] Those problems, such as global optimization, coverage charting, and transition from one cell to another, are left out of PAGE 35 35 th is discussion. Since the convex polygon is the base geometric unit for arbitrary search areas, that is the focus of this algorithm. Further work could use this algorithm as a to these methods for the optimization of each cell. To begin several d efinitions involving polygons are given. ( l ) is any line that intersects the polygon P and is such that the inter ior of P lies to one side of l [19]. Lines of support can occur collinear to any faces of a convex polygon, collinear to a ny non intersecting face of a concave polygon, or at a vertex, such that the line does not intersect the polygon. These cases are shown for a convex polygon in Figure 3 2 The span ( S ) of a polygon is the distance between a pair of parallel lines of suppor t. The width ( W ) of a convex polygon is the minimum span. As stated by Prizade h, W is the smallest size There are only three possibilities for combinations of parallel lines of support. The first case is the most general, and that is when both lines are anchored by a vertex as shown by Figure 3 2(a) The second case is less general, and occurs when one of the lines is collinear to a face of the polygon, and the other line of support is anchored on a vertex, as shown by Figure 3 2 (b) The third case is a special case of the previous, and that is when both lines are collinear to separate faces of the polygon, as shown in Figure 3 2 (c). Obviously this can only occur if the polygon has a set of parallel faces. As proven by Prizadeh, and implemented by Li, the width of a polygon only occurs in the vertex edge case of span (or by extension edge edge). Intuitively, it makes sense that the minimum width would be along one of the edges of the polygon. The challenge o f the optimization problem presented here is to optimize based on conflicting factors of geometry, a moving reference frame (wind), and real world PAGE 36 36 parameters (arbitrarily constricting the search space). The largest factor, and consequently the one evaluate d first, is the most efficient path based on geometry. It is assumed that the photogrammetric parameters remain constant for the entire search area. Therefore the width of the sensor footprint remains constant, and the number of flightlines required to com pletely cover the target area is given by Equation ( 3 1 ) where is the ceiling function S is the aforementioned span, and G is the g roundbase as defined in Chapter 2 ( 3 1 ) The span used in Equation ( 3 1 ) is dependent on the specific lines of support used. Now let s define the direction of the parallel lines of support as the Principal Direction (PD ). As this is a coverag e algorithm the area covered will remain the same for any number of flightlines and consequently any PD. However, the number of turns required for that coverage is linearly dependent on the span. Therefore, the optimization problem is simplified into finding the width of the polygon, thereby min imizing the number of turns. Oksanen similarly states this assumption in a similar problem for agricultural robots [14] Figure 3 3 shows two cases where the PD is set at /2. For Figure 3 4 the exact same target area is used with sides of length 20m, but rotated around its centroid. A sensor width is arbitrarily defined at 1m for simplicity. In Figure 3 4 (a), the span is 28.284m while the span of subplot (b) is 20m. Given Equation ( 3 1 ) Figure 3 4 (a) must traverse 29 flightlines while Figure 3 4 (b) only has to traverse 20. PAGE 37 37 Kinematic optimization also favors minimizing the number of turns. Turning the aircraft is the largest optimization penalty to time and energy. From a flight perspective, Figure 3 4 shows that, while the aircraft is banking, the lift vector needs to be increased to maintain altitude and airspeed. Equation ( 1 6 ) simply shows that the Lift required in a turn is a function of the cosine of the angle of the turn. ( 1 6 ) Since the lift vector is now a function of the roll angle more energy is required to maintain the aircraft at altitude and airspeed. Finally f rom a photogrammetric perspective, if the aircraft is poised more tha n 10 degrees from nadir, the data collect ed accumulates too much error to be useful, and the data collection footprint shrinks to zero. This last fact is what causes turns to be the largest driving factor in optimiz ing a flight path. E ven in cases where the flight direction is in the most ineffic ient orientation with respect to wind, the vehicle is still within its target area and is still collecting data. With that in mind, the most optimal flight path is the one that minimizes turns, and hereby minimizes the time off target. The next step in the development of this algorithm is to enter in data about the polygon. That new polygon is defined by the common method where vertices are given in Cartesian coordinates, in a counter clockwise manner starting with the lowermost, leftmost vertex. The faces ( F ) of the polygon are then defined from the vertices, with F i being comprised of vertices ( i ) and ( i+1 ) except for face ( n ) where the vertices are ( n, i 0 ). No two consecutive edges are collinear, meaning that each edge has a finite difference in angle. PAGE 38 38 The algorithm now focuses on determining the span for each face. To begin, w ork done by Li proposes an algorithm that optimizes flight path strictly on the geometri c parameters of the flight area. This algorithm has some severely restricting assumptions, the main one being that the turn radius of the vehicle is exactly that of the flightline width [11] There is also the major discrepancy that this algorithm assumes stereoscopic vision using video cameras looking ahead of the aircraft where this developme nt is using nadir still photography Nevertheless Li does introduce a method which reduces the time complexity of finding the s pan of a convex polygon from (o) n 2 to (o ) n, which is similarly exploited in the development of this algorithm The sp an of a pa rticular side is given by Equation ( 3 3 ) where i and j are indices for vertices, and V X and V Y are the X and Y components of the vertices. ( 3 3 ) Li points out that the numerators in Equat ion ( 3 3 ) have the same sign. Furthermore, because of the nature of convex polygons, the span found between F (i) and F (i+1) are monotonically increasing to a global ma ximum, and then are monotonically decreasing Therefore the search area for minimum span can be decreased by looking for the change in sign in magnitude of a line drawn from a vertex V i+1 and all other vertices not on F i ( V i+1 through V i 1 ) Li is able to further reduce the search space as shown in Figure 3 5 Let s define the antipodal vertex (V V ) as the vertex that is diametrically opposed to F (Vi,Vi+1) that PAGE 39 39 admits lines of support [21] Li invokes the following summarized theory: Given a convex polygon defined as above, the antipodal vertex of F (Vi,Vi+1) is V V and the antipodal vertex of F i+1 is V V or subsequent vertices. Figure 3 5 clearly shows how the search area decreases based on the antipodal vertex condition presented here. Any span involving vertex V i through V v 1 will not be the width, thus decreasing the search space from (o)n 2 to (o)n. The w idth found from the minimum span search space is then used in Table 3 1 Real World Considerations There are several real world factors that further lim it the search space of the target area. Excluding vehicle kinematics, t he first consideration that impacts the algorithm is the geometry of the target area itself, followed by the 3 d nature of terrain, and finally any wind that might be present. Analogous to agricultural applications the area where the vehicle makes its turn between flightlines must be accounted for to ensure safe flight In farming this is called and is present in nearly every field [14] Headland can be separated into three categories: unlimited width, limited width, and zero width. Headland width is defined in Figure 3 6 Headland with unlimited width is the case where there is no constraint on the turn radius of the vehicle, and it can st r ay out of the target area without penalty. This is the case for the majority of flights to date of the operation UF program The second category is where there is a known and finite width to the headland. This case occurs when there is some obstruction a finite distance from the t arget area (such as a tower, park, or habited area) and is shown in Figure 3 6 case, height (H) defined as the distance parallel to the flightline and encroaching on the headland, must be calcula ted and put into the PAGE 40 40 overarching iterations. The third category is for zero width headlands as in the scenario where a feature directly abuts the search area (such as a road, fence, or power line). Flight safety and legal considerations will always overri de optimization, and in this scenario the search space for flightline orientation is restricted. No orientation can be selected such that the turns will encroach into the headland. Terrai scenario that would cause the flight plan t o diverge from the optimal geometric consideration. Take for example the scenario of a survey of a mountainside as shown in Figure 3 7 If the terrain were sufficiently steep such that variations in elevation have secondary impacts on resolution through di rect impact on relative altitude, the flightlines would need to be oriented such that they follow the contour lines of the feature being mapped. As shown in later chapters wind magnitude and direction have a large impact on the turns of the vehicle, and are primarily used in optimizing said turns. However, for search areas with aspect ratios near 1 with infinite headland and without terrain considerations, wind direction and magnitude have the largest impact on PD For many natural resource applicat ions, just that scenario is common for data collection. Usually target areas are away from populated areas, in flat land, and are used for sampling so an arbitrary box is selected for the target site [2] In thi s case, the most optimal flight plan is one th at uses the aggregated least amount of energy for the flightline s themselves. For geometric considerations, given an arbitrary target area, the most efficient case is where the PD is collinear to the wind vector If this is not the case, hea ding will differ from its course to track a flightline minimizing overlap and requiring a PAGE 41 41 small er flightline width and by Equation (3 1) increase the number of required flightlines The same argument applies to minimizing flight energy, as in a crab mor e energy is expended per unit of flightline traversed. Furthermore, work done by Evers shows that air vehicles designed to take advantage of speed to fly theory can op timize energy consumption when in line with the wind. By changing the camber of the wing, the drag can be minimized for any given airspeed. In short, Evers concludes that de cambering the flight surface and traveling fas ter upwind is more efficient tha n a constant flight speed. Table 3 1 shows the methodology for PD selection based on the abov e discussion. If the target area is for sampling, and therefore is a box, then the algorithm attempts to select the PD that is collinear to the wind. If the target area is a polygon, then the PD attempts to be collinear to the lines of support. If headland con straints are present, then the a lgorithm adjusts accordingly. Creating Flightlines Setting the principal direction for flight is critical, however the flightlines themselves still need to be generated. The manner in which flightlines are generated dep ends on the slope of the principal direction. There are four general cases for the s lope of the principal direction as described in Table 3 2 The Cross Track Direction is defined as the direction orthogonal to the PD. The general search pattern is as foll ows. The algorithm calculates the perpendicular line to the principal direction, and will propagate flightlines in that direction, essentially creating a new coordinate frame. In this frame, the principle hand p Next the The PAGE 42 42 o and is converted back to X min and Y min while max max are similarly converted. The fligh tlines will then propagate out according to Table 3 2 and similarly shown in Figure 3 8 If the principal direction is Inf or along the X axis only. If the Y and the search is a long the Y axis only. Regardless of the direction, the generated f lightlines need to be larger tha n the target area and pass through the polygon on both sides. This is important for the following step where the flightlines are trimme d down to be exclusively within the target area. The algorithm that accomplishes this requires that a line pass completely through the polygon, however this is only for computation and is never physically implemented. Inclusion of Lines in a Polygon The n ext step is to determine if a particular flightline exists in the target polygon, and solving this inquiry i s a sub algorithm of itself. For this sub algorithm, a base method implemented by Foley parametric line clipping" will be used [7] For this sub algorithm the conventions already defined still apply n amely that a polygon is defined in a CCW manner by vertex Start by defining the flightline by its endpoints, P 0 and P 1 the parametric parameter (t), and the vector defined from these points as the same face vector ( F ) The line segment created from F c an be parametrically defined by Equation ( 3 4 ) ( 3 4 ) w here the value of t is the percentage of the line defined from ( 3 5 ) PAGE 43 43 where t 0 entered into Equation ( 3 4 ) results in P 0 and t 1 entered into Equation (3 4) results in P 1 Now let s define t e as the value of P (t) where the flightline enters the polygon, and t l as the value of P (t) where the fligh tline leaves the polygon. Each flightline will have its own vector however only one flightline is computed at a time. Next, we define an outward pointing normal vector N from face F i such that ( 3 6 ) Since the polygon is defined as CCW, the outward pointing normal vector will always be Using the dot product and the defined polygon, we now can determine if a point is ou tside or inside of the polygon, and where the transition occurs. Given the orthogonal properti es of dot products (the dot product of two orthogonal vectors is equal to zero), the intersection occurs at ( 3 7 ) w here when the left hand side of Equation ( 3 7 ) is positive t he point is outside the polygon; and when the left hand side of Equation ( 3 7 ) is negative the point i s inside the polygon. Figure 3 9 s hows this in greater detail. Solving Equation ( 3 7 ) for t we get ( 3 8 ) This result is the basis of the logic tree to set a t i for each F such that the maximum t is the parametric value where the flightline enters the polygon, and the minimum t is the parametric value where the flightline leaves the polygon. The exact steps are as follows. For each flightline, an initial t e and t l are set at 0 and 1 respectively. For each face, Equation ( 3 8 ) is evaluated resulting in a value of t. The denominator and PAGE 44 44 numerator are each evaluated simpli fying the process. The denominator and numerator are split into logical cases [ =0, <0 >0]. The goal is to find the maximum t l and minimum t e in the search space of each F of P. For each edge i the algorithm evaluates the statements in Table 3 3 Figure 3 10 shows an example of a complete polygon testing for a single line of inclusion and Figure 3 11 shows an example of the completed process. Ordering Flightlines principal direction selected, and the flightlines are generated. The next step is to order the flightlines to create a flightplan. In the continuing analogy to farming, for terre strial cases the slope of the land often dictates the order of lines and parallel paths are selected to minimize wasted space. These parallel paths are referred t o as The principle here is that adjace nt flightlines are traversed in the opposite direction from the previous. This algorithm is limited to producing boustrophedonic flightlines inste ad of other parallel type paths, such as the dipoles used on the earlier NOVA systems. Both types of turns ar e shown in Figure 3 12 If the flightlines are limited as described, then only four choices for order exist. Unless the launch and recovery point is in the direct center of the target area, the order the ground station as depicted in Figure 3 13 This algorithm places emphasis on tracking towards the GCS, shown in Figure 3 13 as subplot (b) or (c). The reasoning behind this decision is that if an error were to occur in st able flight, it would occur towards the end of the flight when vibration, heat, PAGE 45 45 and other time dependent physical properties have sufficient length to accumulate problems. The vehicle should be as close to home as possible when this occurs, and not progres Optimal coverage paths would locate the ground crew at exactly the middle of a 1 mile target area, however operational data suggests that the crew is much more often set up closer to a side or corner of the target area. However, if the crew is in the middle so the vehicle has a better chance of returning home. PAGE 46 46 Figure 3 1. (a) Concave Polygon vs. (b) Convex Polygon Figure 3 2 Lines of Support (a) Vertex Vertex (b) Face Vertex (c) Face Face PAGE 47 47 Figure 3 3 Figure 3 4 Forces of f light PAGE 48 48 Figure 3 5 The method for reducing the complexity of the search area for the span of a polygon. For a given Vertex (V i ), and its Antipodal Vertex (V V ), the V V of V( i+1 ) through V( V 1 ) will only exist in V( V +1 ) through V( i 1 ). PAGE 49 49 Figure 3 6 Safety constricted headland with a road Figure 3 7 Flight with t errain PAGE 50 50 Table 3 1 Principal direction selection Infinite Headland Limited Headland No Headland Arbitra ry Box (sampling) PD = Wind if (height of turn < height of headland) PD = Wind PD = collinear to limiting headland face else PD = limiting headland face Constricted Convex Polygon PD = orthogonal to width if (height of turn < height of headland) PD = orthogonal to width PD = collinear to limiting headland face else PD = limiting Headland Face Table 3 2 Criteria for cross track direction Slope of Principal Direction Cross Search Track Inf, Inf Along X axis 0 Along Y axis >0 Along X axis across Y min from X max to X min then up Y axis along X min to Y max <0 Along X axis across Y min from X min to X max then up Y axis along X max to Y max PAGE 51 51 Figure 3 8. Creation of untrimmed flightlines with s lope > 0 PAGE 52 52 Figure 3 9 Geometry for inclusion algorithm. Here the line formed from P 0 to P 1 is being tested on the Face from V i to V i+1 PAGE 53 53 Table 3 3. Inclusion l ogic First Test Second Test Third Result i f ( D = 0 ) i f (N<0) Outside e lse Since parallel, cannot enter or leave on edge i Iterate elseif ( D < 0 ) t e = max if ( t e >t l ) Enters edge after leaving P, c annot intersect else t e = t i Entering edge elseif ( D > 0 ) t l = min if ( t l PAGE 54 54 Figure 3 10 Completely labeled polygon for inclusion testing PAGE 55 55 Figure 3 11 Trimmed flightlines after the applied inclusion algorithm PAGE 56 56 Figure 3 12 Parallel p aths. Dipole on the left; Boustrophedon on the right Figure 3 13 Flight path possible orders (a) near to far, (b) far to near, (c) far to near inverted, and (d) near to far inverted. The h ouse is the home position, or the location of the GCS. PAGE 57 57 CHAPTER 4 SETTING TURNS Determining how the vehicle will travel from one flightline to the next is the most time intensive part of flight plan ning, and coincidentally the most computationally intensive in this algorithm. Simulations have shown that flight efficiencies can be improved up to 19 percent alone by optimizing the turns between flightlines. In the field, turns between boustrophedonic lines are accomplished wit h a single This waypoint serves to position the vehicle so that, at the exit of its maneuver, it will intercept the ne xt flight line at the desired starting point, at an attitude and poise required for data collection. In Figure 4 1 Way point 3 is a turning waypoint. T he following operational procedure is used to set turns: 1) Launch aircraft, let orbit one rotation and retrieve wind data ; 2) Based on wind m turn ing way 3) tur n ing way based on first turn This method is crud to accomplish. In practice the tu rns end up being much longer tha n necessary as the operator tends to err on the side of caution so that data is collected when the vehicle re enters the target area. Computer Science Notes and Background For the simulations provided below, a discrete time method was used to simplify the development, implementation, and visualization of this algorithm The two basic elements involved herein are the Heading Vector ( HV ) and the Velocity Vector ( VV ). The HV is always pointed in the X direction of the vehicle (direction of travel) with a collinear heading The direction of the HV is defined as the HEADING, and the PAGE 58 58 magnitude of the HV is defi n ed as the AIRSPEED. If there is no wind, then the HV has the same heading and magnitude as the VV If there is any wind, then the VV will differ from the HV as described in Equation (4 5) The direction of the V V is def ined as the COURSE, and the magnitude of the VV is defied as the GROUNDSPEED. For all s, the HV is in blue, and the VV is in Red. Figure 4 2 shows the HV and VV in detail. Solving for VV with a known HV is a simple vector addition problem. Begin with the HV components in the X and Y directions and sum the X and Y components of the Wind Vector to get VV A more c omplicated problem is setting the HV for a desired VV in the presence of wind. Because wind changes the magnitude of the VV it is not as simple as vector addition. Consider the k inematic model described below, which constricts vehicle motion to linear motion on a plane. Similar to McGee l et s define x and y as vehicle motion in the longitudinal and lateral directions with respect to the orientation [13] Next we define A as the magnitude of the velocity of the vehicle ( 4 1 ) Next he ratio of the magnitudes of and A ( 4 2 ) To simplify further equations, is defined by setting the origin to the direction of the wind vector. ( 4 3 ) PAGE 59 59 The velocity vector direction or COURSE is defined by: ( 4 4 ) Back solving Equation ( 4 4 ) with a given desired for the required yields ( 4 5 ) Figure 4 3 shows Equation ( 4 5 ) given over all headings [0, 2 ] and for Figure 4 3 shows the approaches 1. For this scenario the vehicle is not able to maneuver as desired and is limited to headings parallel to the wind. Furthermore, the additive or deleterious effects of wind will change the magnitude of the velocity vector. This heading specific value makes pure geometrical calculation of an optimal turn very diffi cult. For this reason, it was determined that the tur ns required discrete simulation. As an interesting aside, d etermining if a turn is to the left or to the right is not as trivial as it would seem are arbit rary, and can only be decisively concluded to be complementary directions. This is relevant to this algorithm when defining if the i +1 of the preceding turn, and becomes a critical parameter. Instead of left and right, an attempt was made to define clockwise and counterclockwise. Similarly a review of the literature def clock with self referential calls such a in the direction of the hands of a pe nning a mathematical definition proves to be challenging. While it is assume d that the reader will have knowledge of these concepts, a computer does not. PAGE 60 60 To shortcut having to robustly define these concepts the standard defined Cartesian system was im ple being collinear to the positive X axis. This coordinate system is pre defined within Matlab and many common languages in math libraries. A common function was written to determine if t he direction in relation to another vector, an d is extrapolated. Left (counterclockwise) is defined when the difference in angle between a vector being tested, and a reference vector, is positiv e. Right (counterclockwise) is defied when that relationship is negative. Figure 4 4 shows an example of this. Here V 1 is defined with angle (b), and V 2 is tested with V TEMP defined from the origin of V 1 to the end of V 2 forming angle (a). Since (b ) minus (a ) is positive V 2 is to the right of V 1 A class was written specifically for turns in Matlab dealing with HV VV and all of the associated functions required for the computation. The primary methodology o f the class is an event that iterates HV and VV to drive a given error to zero. That error changes based on the goal, but common options are a desired COURSE, desired HEADI NG, and a ground distance error (GDE) It was found that the algorithm ne eds at most four desired COURSE s, and they are referenced here as : COURSE INITIAL COURSE MID1 COURSE MID2 and COURSE FINAL A tradeoff between accuracy and speed was made by decreasing the step size in the updates. As step size decreases, the finite course control between each iteration is greater, and the algorithm has greater fidelity. When small enough (found to be <8 Hz ), the algorithm will converge on ground distance error to sub centimeter accuracy. However, the simulation time was far too large when performing turns, let alone ent ire PAGE 61 61 flightplan s. Furthermore, the GDE of the actual vehicle is limited to GPS accuracy of ~5 meters. Therefore a step size of 3 Hz was selected as this always gave a GDE of <5 meters and allows the algorithm to perform sufficiently fast. Motivation The fir st step in determining the turns is to limit the search space. Keeping with boustrophedonic turns, work done by Jin divides turns into four gen eral types [9]. The four major turn types are shown in Figure 4 5 and defined as FLAT U, HOOK and BULB. A fifth type is mentioned for limited headland, however that is just a special case of one of the four This algorithm is split into those major turn types, and is developed using a similar approach to decomposing turns, and several elements remain constant to all turn types. E phase that extends the turn collinear to the flightline to insure complete coverage when the edge of the field and the flightlines are not orthogonal This scenario is depicted in Figure 4 6 Jin d evelops a method for selecting the turns based on several simple criteria, the main logic braches being reached through a comparison of turning radius to flightline width The specific turn type was then decided based on other criteria, such as the angle of the edge in relation to the flightline, width of the sensor, e t c Jin however is planning with terrestrial applications, and the reference frame remains fixed. In a related algorithm, McGee comes to some of the same conclusions in a moving reference frame [13] In that development, turns are restricted to Dubins path types, comprised of three parts. The first and last part are always a turn to the right or left, and the middle can be a third turn or a straigh t section. These path ty pes are PAGE 62 62 defined by their parts. F or e xample, a turn beginning to the right, then changing to the l eft, and finally back to the right is defined as (RLR). These turn types can be expanded to include the types described by Jin. In Figure 4 7 (a) a RLR could be considered a HOOK, Figure 4 7 (b) a LRL could be considered a BULB, and Figure 4 7 (c) a RSR could be a FLAT turn. is limited to a fixed reference frame, but is more tailored to an optimal resu lt with a time optimal way In intersecting. Therefore, a new algorithm is needed to solve this unique problem, and a combination of the basic s of both, plus original ideas results in the algorithm below. Common M ethodology At this point in the development of the algorithm the flightline s PD has been selected and the width of the lines are fixed from photogrammetric limitations. Furthermore the h eight of each turn is set from the line clipping algorithm. It is now the task of the algorithm to determine how to transition from flightline i to i+1 To compute complete turns, several auxiliary computations are made first t o determine which type of turn is required. These steps are common to all turn types, and described here. The first step of the turning algorithm is to determine if the (i +1) th flightline is to i th flightline. If the (i +1) th f lightline does not exist (as in the case of the n th flightline) the algorithm breaks and does not compute a turn. T his first step adds a unit scalar in front of turn calculations to force a clockwise or counterclockwis e result This is defined as Paramete r 1. Parameter 1 is found by comparing the PAGE 63 63 difference in direction between two vectors as shown in Figure 4 4 and defined in Table 4 1 The nex t set of steps is to determine width and height of the turns. Width and h eight are computed for each turn segmen t in the following manner. Define the starting point of the turn as the Initial Point (IP) and the Ending Point as the (EP). A unit vector is created parallel to the flightline, collinear to the i th flightline called the Initial Vector ( IV ). A second unit vector is created perpendicular to the flightline, in the direction of the i +1 flightline called the Cross Vector ( CV ). A third temporary vector ( temp ) is created from the IP to the EP. The turning radius for turns in variable wind conditi on shall be defined interchangeable as the turning w idth (W), defined by Equation ( 4 6 ) Similarly the height of the turns is given by Equation (4 7). Equation ( 4 6 ) and Equation ( 4 7 ) are then evaluated to result in Parameters 2 and 3, whe re is the vector dot product. ( 4 6 ) ( 4 7 ) The resulting conventions are that a posit ive height is in the direction of the IV and a positive width is the same direction as the CV just as in Figure 4 8 At its base, this algorithm uses heuristic methods to drive the combined height and the combined width to zero The next step, a half turn (subtending radians) is ex ecuted in the correct direction as defined by Parameter 1 An example turn i n wind is shown in Figure 4 9 Here, and for all s simulating turns, the VV are smoothly connected as the flight path of PAGE 64 64 the vehicle, while the HV are discontinuous showing the direction the vehicle is pointing. Since ground motion is decoupled from air m otion due to wind turns will never be truly circular Because a turn subtending 2 in wind forms an ellipse, the radius would have a different i nterpretation tha n the radius of a circle Just as in algorithm the relative width of the flightlines to the width of the tur n will define the turn profile. This is the most deterministic variable in the logic tree, and i s referred to as Parameter 2 given in Equation ( 4 8 ) In other words, when the radius of the turn is larger tha n the spacing between flightlines, Parameter 2 is negative. ( 4 8 ) Similarly P arameter 3 is defined as the height differential between the flightline and the turn. This is explicitly defined in Equation ( 4 9) In other words, when the half th flightline, Parameter 3 will be positive When the half turn ends at a th flightline, Parameter 3 will be negative and will be added ( 4 9) The second derivative of height differential (the difference in the difference of height in turns from one turn to the next) tends to remain small or constant with convex polygons. There is a case for significant difference when adjacent flightlines are on two different search area faces, as shown in Figure 4 10 Figure 4 11 sh ows two turns, both with o rigins at (0,0), subtending radians with a 4 m /s wind to the East. The turn on the left is subtendin g more degrees into the wind PAGE 65 65 tha n the turn on the right. Thus the width of the turn on the right is greater tha n the turn on the left. Even though the turn on the right trav erses more in the Y direction height and w idth are defined a t the ending points of the turn. T herefore the heights of both turns remain the same. As shown below, for certain wind conditions, efficiency gains can be accomplished by turning in the opposite direction of the next turn. These gains are largely determined by considering the relative angle of wind to the flightline. Work done by Osborne highligh ts the problems of turning in a moving reference frame when planning a flight [15] As pointed out in his research, vehicles of the NOVA size class (under 20 lbs.) are heavily influenced b y the wind magnitude and speed. algorithm however is not for coverage pl w hich for photogrammetric missions is both infeasible and non optimal. Wind relative to the direction of the IV is defined as Parameter 4. Parameter 4 is used to determine the initial turn direction when Parameter 2 is negative. Table 4 2 shows the logic for choosing Parameter 4. Armed with this information the algorithm breaks into several logical cases depending on parameters one through four. The full decision tree is shown in Figure 4 12 As with standard flowcharts, ovals are start and end points, diamonds are decisions (for this algorithm Parameters 1 4), and squares are processes. At the end, the branches merge back into a single stream common to all turns. For simulation, a cue of headings to track, and iterations to spend tracki ng that heading once established is generated and executed. Table 4 3 shows the c ues for headings for each of the turn types This methodology was adopted so that, regardless of the PAGE 66 66 idiosyncrasie s of a particular turn, the algorithm will generate a path i n a consistent, common manner. For the iterations, the changes in course are at the ma ximum turning radius until the w idth error of the vehicle is within 10 m. At that point, the iterations in course slow to of the maximum turn rate to drive the error t o within GPS error bounds. The computations for each of these steps i begins from the same origin. An example of a simple set of turns is given in Figure 4 13 This happens to be the computations for a FLAT turn, with COURSE INITIAL set to /2, COURSE MID set to and COURSE FINAL set to ( /2). Both turns have an origin of (0,0), which makes their individual heights and w idths easier to sum. Furthermore the CV for this FLAT turn is in the direction (not shown), which aligns the Y axis with the Y axis, and the X the inverse of the X axis. Therefore, movement in the negative X direction is seen as positive w idth. The first turn is the upper portion, and has a width of 54 m and a h eight of 60 m The second turn is the bottom po r tion and h as a wi dth of 32 m and a h eight of 30 m Turning Radius is Less Tha n Flightline Width If Parameter 2 is negative, then the turning width is smaller tha n the width of the When this is the case COURSE MID1 is defined from Equation ( 4 10 ) ( 4 10 ) Using the information up to this point, two tur ns are pre compute d : o ne from the COURS E INITIAL to COURSE MID1 and one from COURSE MID1 to COURSE FINAL The PAGE 67 67 heights and width s of each of these turns are measured and summed totaling W COMBINED and H COMBINED Parameter 2 s turn width will be smaller than the flightl width, however flattening out the turn will affect that difference slightly, caused by the pause at COURSE MID1 The amount of time spent at midcourse is then calculated as shown in Equation (4 11) ( 4 11 ) Since the sign on Parameter 2 is negative, there is no determination to be made on the initial turn direction. T he only other consideration is on the sign of Parameter 3 If the sign of Parameter 3 is positive, then the height difference o f the flightlines is greater tha n that of the turn, and then height must be added to the upwind portion of the turn. The opposite is true if the sign of Parameter 3 is negativ e. The amount of time spent at either COURSE INITIAL or COURSE FINAL is shown in Equation (4 12) ( 4 12 ) The final turn is shown in Figure 4 14 For this simul ation case, the turn took 10.66 seconds and traversed 167 meters. This exact desired turn is entered into the standard flight planner, and the results are shown in Figure 4 15 Here it is clearly shown that the autopilot will naturally attempt to intercept the w aypoint, exactly in the manner described by Osborne. For this path taken, the turn was executed in 11 seconds, while traveling 169.2 m, showing that the algorithm has slight efficiency gains in both time and distance for this particular case. Furthermore, the natural path taken by the autopilot would cause the data set to lose an PAGE 68 68 image, as the aircraft does not level out until [ 104, 17], in what would be the second picture once the vehicle re enters the target area at [ 100,0]. Turning Radius is E qual to W idth When the radius of the turn matches the width of the flightlines exactly, this is considered as a special case of the FLAT scenario. The turn is executed at maximum bank angle, and either a pre or post turn length is added based on Parameter 3 Turni ng Radius is G reater T han Width If Parameter 2 is positive, then the turning width is larger tha n the width of the not capable of intercepting the next flightline but it will not do so in the required height and some of t he target area will be missed. Using the standard navigation algorithm provided with the autopilot, the autopilot will attempt to intercept each waypoint directly as seen in Figure 4 16 The next branch in the algorithm is to evaluate Parameter 4 which splits up into three cases, UPWIND DOWNWIND, and CROSSWIND For each specific case, the direction of the wind is exploited as much as possible for the aircraft to either travel up wind or d ownwind to lengthen or shorten P arameters 2 and 3, and also to subtend as much a into the wind to reduce ground travel. It was found through extensive trial and error that for UPWIND and DOWNWIND cases, the HOOK style of tur n is more efficient, unless  Parameter 3  is larger then the d iameter of the turn. The short e xplanation for this is that as P arameter 2 increases, the vehicle unnecessarily travels further and further away from the EP while in the HOOK scheme. In BULB, th e vehicle stays closer to EP, and when properly executed finishes the turn without any Pre Turn or Post Turn length needed. For CROSSWIND BULB is PAGE 69 69 more efficient. Figure 4 17 shows a HOOK and BULB turn for the same IP and EP, and Table 4 4 summarizes the r esults. Common elements to both the HOOK and BULB turn are computed next. Both HOOK and BULB turns can be thought of splines that have bounded end conditions. Both ends are required to be tangent to the flightline they are connected t o, and thus their direction and position are fixed. One turn subtending radians is required, and the other turns are thought of as the connecting pieces to drive the error in H and W to zero These turns have courses defined through their target courses COURSE MID1 and COURSE MID2 HOOK has the former, while BULB has both. These combinations of headings, an d if required as determined by P arameters 1 and 2 the a ccompanied cues which are execut are d escribed in Table 4 3 the opposite direction of the ( i +1) flightline. The vehicle subtends more radians in this upwind configuration, and therefore does so without mo ving too far in the parallel direction. This results in minimizing the overall height difference, and thus shorter time off target. Table 4 5 shows generalized upwind cues. If the turn begins and the vehicle then the opposite of th e upwind case is true. The first turn will be in the same direction as the ( i +1) flightline. Similarly this results in more of the subtended radians Table 4 6 shows generalized downwind cues. PAGE 70 70 Figure 4 18 shows the difference in these cases. It is clearly seen that most of with the wi a Table 4 7 summarizes the results. For this particular case, the result of turning towards the i +1 flightline seem s intuitive, however that is only because the wind is in the same direction of the i th flightline. Figure 4 19 shows the opposing case, where the wind is in the opposite direction of the i th flightline. Here the turn is more efficie nt by turning away from the i +1 flightline. This non intuitive result is summarized in Table 4 8 The nature of a BULB turn does not allow variation in initial turn direction. The first turn is always in the opposite direction of the i +1 flightline. Since the BULB t urn subtends all angles, full advantage of the airspeed/groundspeed differential can be exploited, lengthening or shortening any segment as required. The next step is also common to both HOOK and BULB turns, but implemented slightly differently. For HOOK, the turn i s separated into three segments as shown in Figure 4 20. J ust like in Figure 4 13 Figure 4 20 is composed of separate turn s, each with their IP at [0,0]. The previously computed turn (subtending radians) is used for known width and h eight. The two additional segments are iterated with increasing COURSE MID1 and at each iteration their heights and width s are summed. This is continued unti l the width error is smaller tha n GPS error. is then compared to the tu rn s height in a similar manner to FLAT turns, and the same method for reducing height error is implemented. PAGE 71 71 For Figure 4 20 COURSE INITIAL is set at /2, COURSE MID1 is set at 3 / 4, and COURSE FINAL is set at /2. Figure 4 21 shows the exact same turns as the previous but connected end to end. BULB turns are implemented in a similar manner, but with an additional 2 turn segments. COURSE MID2 is used to drive these additional segments. In the exact same manner, COURSE MID1 and COURSE MID2 are iterated from their initialized headings so that the sum of all 5 turn widths drive the width error to within GPS limits. Figure 4 22 shows an example of this. Again, all turns have an IP of [0,0]. Figure 4 23 Shows the exact same completed turns end to end. PAGE 72 72 Figure 4 1 screenshot, flightlines of waypoints 1, 2, 4, 5, and a turning point of w aypoint 3 PAGE 73 73 Figure 4 2 Vectors of Flight PAGE 74 74 Figure 4 3 Correction h eading PAGE 75 75 Figure 4 4 Determination of right vs. l eft. Vector 1 is defined with Angle (b), and Vector 2 is tested with Angle (a). Since (b) minus (a) is greater than zero, as defined by the algorithm, Vector 2 is to the right of Vector 1. Figure 4 5 Turn t ypes from left to right: Flat, U, HOOK, and BULB PAGE 76 76 Figure 4 6 Headland and non orthogonal f lightlines PAGE 77 77 Figure 4 7 Dubins turn t ypes (a) RLR, (b) LRL, and (c) RSR Table 4 1 Parameter 1 logic Test Result if (direction(V 1 ) direction(V TEMP )) > 0 Right (clockwise) Parameter 1 = 1 else Left (counterclockwise) Parameter 1 = 1 PAGE 78 78 Figure 4 8 Turn v ectors PAGE 79 79 Figure 4 9 Half t urn (a turn subtending radians) at 17 m/s airspeed with a 4 m/s wind speed to the North. PAGE 80 80 Figure 4 10 Example turn with h eight PAGE 81 81 Figure 4 11 Two separate crosswind turns, both with Origin (0,0). A 17 m/s airspeed in a 4 m/s wind to the East causes the width of the turn on the left to be less than the turn on the right. Table 4 2 Parameter 4 l ogic Test Result if abs(direction(Wind) direction(IV)) =< pi/4 elseif abs(direction(Wind) direction(IV)) => 3*pi/4 Parameter 4 = else Parameter 4 = PAGE 82 82 Figure 4 12 Complete turn l ogic PAGE 83 83 Table 4 3 Turn c ues Step1 Step 2 Step 3 Step 4 Step 5 Step 6 FLAT COURSE INITIAL COURSE MID1 COURSE FINAL HOOK COURSE INITIAL COURSE MID1 COURSE INITIAL COURSE FINAL BULB COURSE INITIAL COURSE MID1 COURSE INITIAL COURSE FINAL COURSE MID2 COURSE FINAL Figure 4 13 Two separate turns for pre computation, 17 m/s airspeed with 4 m/s wind to the North. The upper turn has a COURSE set to and the lower turn has a COURSE set to /2. Both have an origin of (0,0). PAGE 84 84 Figure 4 14 Complete FLAT Turn, 17 m/s airspeed with a 4 m/s wind to the North. IP at [0,0], EP at [ 96,0], Target is [ 100,0] which is within GPS error of 5 m. Figure 4 15 Complete Procerus flat t urn, 17 m/s airspeed with a 4 m/s wind to the North. IP at [0,0], EP at [ 104, 17]. Target is [ 100,0]. PAGE 85 85 Figure 4 16 Procerus general oversized turn, 17 m/s airspeed with 4 m/s wind to North. IP at [0,0], EP at [20, 38]. Target is [40,0]. Figure 4 17 Crosswind e xample, with BULB on the left and HOOK on the right. Both have 17 m/s airspeed, 4 m/s wind to East. PAGE 86 86 Table 4 4 BULB vs. HOOK Turn Type Time Distance HOOK 19 313 BULB 18 279 Table 4 5 Upwind course cues COURSE MID1 = offset from COURSE INITIAL COURSE MID2 = COURSE INITIAL PAGE 87 87 Table 4 6 Downwind course cues COURSE MID1 = offset from COURSE FINAL COURSE MID2 = COURSE FINAL Figure 4 18 HOOK turn comparison. The turn with the larger height turns away, while the turn with the smaller height turns towards the target. Airspeed of 17 m/s with a 4 m/s wind to the North. IP for both is [0,0], Target is [40,0]. Table 4 7 Upwind/downwind c omparison Time Distance Turn away from i+1 flightline 20.33 s 323.3 m Turn towards i+1 flightline 13.33 s 211 m PAGE 88 88 Figure 4 19 The turn with the larger height turns towards the target, while the turn with the smaller height turns away from the target. Airspeed of 17 m/s with a 4 m/s wind to the South. IP for both is [0,0], Target is [40,0]. Table 4 8 Non intuitive t urns Time Distance Turn away from i+1 flightline 12.66 s 200 m Turn towards i+1 flightline 21.33 s 338 m PAGE 89 89 Figure 4 20 HOOK c omputations. Three turns, each at 17 m/s airspeed with a 4 m/s wind to the North. The largest turn subtending radians is the turn above. The two turns below are what makes this a HOOK turn. All turns have origin [0,0]. PAGE 90 90 Figure 4 21 Completed HOOK t urn PAGE 91 91 Figure 4 22 BULB precomputation 17 m/s airspeed, 4 m/s wind to the East PAGE 92 92 Figure 4 23 Complete BULB t urn PAGE 93 93 CHAPTER 5 COMPLETE SIMULATION RESULTS Overview of D esigning a Flight P ath At this point, all of the individual steps of the algorithm have been developed, and the two major phases can be combined to produce complete flightplan s. Figure 5 1 shows the flow the flight planning process, beginning with the Imagery Parameters from the target requirements, then to Geometric Parameters from the specific requirements, then finally to Environmental Parameters from specific temporal considerations. T he steps for computation are as follows: 1) Enter desired target area via vertices ; 2) Determine any real world restrictions on the flight area, and cons trict the headland accordingly; 3) Set the PD based on Table Set t he airspeed based on STF theory; 4) Create, t rim, and order the flightlines ; and 5) Compute the turn for each flightline The control for these simulations is somewhat difficult to define. The flight planning software provided by Procerus is limited to a single camera setting for step one, r ectangular polygons for step two step three is omitted, step four is limited to N S or E W, step five is always in a left right pattern and step six is limited by vehicle dynamics. A comparison of this nature would be unrealistic, not only because the algorithm would always perform better, but any operator with even introductory training would modify the flightplan for better results. To more accurate ly simulate what happens in the field, steps 1 3, and 5 will remain constant between the comparisons The principal direction will be limited to cardinal directions (N, NE, E, SE and their reciprocals ), and the turns will behave in PAGE 94 94 accordance with the stan dard Procerus algorithm These control turns only differ from actual deployments in that the exact turn is dependent on the operator. FLAT Turn s The first turn to be examined is the more standard FLAT turn. This type of turn can be forced by setting the w idth of the flightlines to a value larger than the turning radius of the vehicle. For this particular case, the width was set to 200 m. The principal direction for FLAT turns do es not matter, and was set at /2 for convenience Figure 5 2 shows the control pattern, and Figure 5 3 shows the algorithm generated path. Table Table 5 1 shows the results of the two algorithms. The FLAT t urn is the only case where the Procerus navigation algorithm performs close to acceptably. For this particular case, the Procerus turns executed in less time and distance then this algorithm by 15 seconds and 189 meters. However, as will be the case for the remaining examples, the turns did not intercept the next flightline before re entering the target area. The worse of the two ca ses is downwind, where the width error is 20 m and horizontal error is 40 m. Because this particular target area is so large, the combined area missed is only about 2%, however for missions requiring complete coverage this would not be acceptable. HOOK Tur ns Next examine d is the HOOK turn pattern. This can be fo rced by setting the flightline width smaller tha n the turning radius and the principal direction in line with the wind so the flightlines are DOWNWIND and UPWIND. The target area is a square polygon of random size. Figure 5 4 shows the path generated by the algorithm while Figure 5 5 shows the control pattern. The control pattern clearly does not ensure coverage. PAGE 95 95 Table Table 5 2 summarizes the results for HOOK turns. In this case, the turns generated by the algorithm outperformed the standard turns in time, but are nearly 250 m longer. That being said, the s tandard turns had gross errors (24 meters downwind and 83 meters upwind), and deeply encroached onto the target area. T he standard turns rendered the data collected useless. BULB Turns Next, the BULB pattern is observed. The BULB turns are forced by setti ng the flightline width to less than the turn radius, and setting the principal direction orthogonal to the wind, thus forcing both turns to be CROSSWIND. Figure 5 6 shows the path generated by the algorithm while Figure 5 7 shows the control pattern. Agai n, the control pattern does not ensure coverage as expected. The Procerus generated turns performed much better in the CROSSWIND scenario than other scenarios For this particular case, the turns happened to subtend more radians into the wind than the pre vious case, thus shortening the turning radius. Furthermore because the turns were CROSSWIND, the vehicle was not blown upwind or downwind excessively in the turn. Even so, the Procerus turns had height and width errors of about 10 meters, causing some of the target area to miss coverage. The BULB turns produced by the algorithm took an additional 14 seconds more than the Procerus and an additional 226 meters of turn. This, by the statistics, seems to perform worse than the Procerus turns. However, the BULB turns re intercepted the target area with 2 meters of width error, and no height error, thus ensuring complete coverage of the target area. These height and width errors would PAGE 96 96 increase dramatically when the flightline width is reduced furt her. Given the goal of complete coverage, the algorithm BULB performed better than the Procerus turn, regardless of the amount of time required or distance covered. Table 5 3 summarizes these results. General Results For the final simulation, a random co nvex polygon is generated of relevant size for a NOVA aircraft. It is assumed for this case that there is infinite headland, and a 4 m/s wind is assigned from the N orth. The algorithm selected Face 3 and Vertex 8 for the minimum Span, and thus the lines of support are parallel to Face 3. Figure 5 8 shows the complete simulation. Figure 5 9 similarly shows w hat the Procerus would do with out the operator actively managing turns. Table 5 4 summarizes the results of this simulation. The flightplan produced by the algorithm outperforms the Procerus plan in both time and distance. One ma jor difference in this polygon as opposed to the FLAT turns in Figure 5 2 is that this polygon has varying height associated with each turn. The Procerus flightplan does not ac count for this at all, and doe s not intercept the next flight line until after encroaching on the target area. As before, the algorithm takes height into account and intercepts the next flightline at the beginning of the target area. A second random polygon was generated, this time with the flightline width set at 40 m forcing either HOOK or BULB turns. In this case, as Figure 5 10 shows, the algorithm chose HOOK turns. With a wind of 4 m/s to the WNW, this follows the logic tree and is th e most efficient type of turn. Table 5 5 shows the comparison between the algorithm, and the standard Procerus method. PAGE 97 97 Figure 5 1 Flightline o verview Figure 5 2 Complete FLAT turns generated by the Procerus Imagery Parameters Ground Sample Distance Altitude % Side Overlap Flight Line Width Geometric Parameters Target Geometry Bounding Box of Flight Restricted Airspace Determination of Headland Environmental Parameters Wind Direction Determination of PD if applicable Wind Direction and Magnitude Determination of Turns Speed To Fly Theory Commanded Airspeed PAGE 98 98 Figure 5 3 Complet e FLAT turns generated by this a lgorithm Table 5 1 F LAT turn c omparison Time Distance Procerus Turns 25 m 55 s 2.58 km Algorithm Turns 26 m 10 s 2.77 km PAGE 99 99 Figure 5 4 Complete HOOK turns generated by this algorithm PAGE 100 100 Figure 5 5 Complete HOOK turns generated by the Procerus Table 5 2 HO OK turn c omparison Time Distance Procerus Turns 720 s 0. 764 km Algorithm Turns 578 s 1.1 km PAGE 101 101 Figure 5 6 Complete BULB turns generated by this algorithm Figure 5 7 Complete BULB turns generated by the Procerus PAGE 102 102 Table 5 3 BULB c omparison Time Distance Procerus Turns 686 s 457 m Algorithm Turns 700 s 683 m Figure 5 8 Completely automated flight path generation from this algorithm PAGE 103 103 Figure 5 9 Assisted flight path generation from Procerus Table 5 4 C omparison of random polygon with 100 m flightline width Time Distance Procerus Turns 289.3 s 2608 m Algorithm Turns 276 s 2398 m PAGE 104 104 Figure 5 10 Completely automated flight path generated by this algorithm Table 5 5 Comparison of random polygon with 40 m flightline width Time Distance Procerus Turns 289 s 2 .60 k m Algorithm Turns 387 s 7.22 km PAGE 105 105 CHAPTER 6 SUMMARY AND CONCLUSIONS Conclusions The purpose of this thesis was to study methods for flight planning for photogrammetric missions for sUAS in wind, and optimize the process. It was quickly found that pla nning flights of any kind, with or without wind, is a very operator intensive process. does have a crude area coverage method, but is really more of a proc ess to quickly generate b oustrophedonic paths North South and East West. There is no input for photogrammetric parameters or even a way to change the width of flightline s The manual process of generating flightlines before a flight takes between 30 and 45 minutes per flightplan and even then requires extensive operator management once in flight. These paths are generally limited to the cardinal directions, and turns are managed through a single waypoint in an attempt to force behavior from the autopilot. Using this manual method, any change in the PD would require the operator to completely re do the complete flightplan The process described in this algorithm shortens th e operator input to the selection of the target vertices. From there, the algorithm determines the most efficient direction while taking into account all external parameters (headland, wind, et c ) Once the direction is determined, the algorithm generates t he appropriate flightlines from the vehicle parameters and photogrammetric parameters of the payload. Finally, once flightlines are generated, the algorithm is able to predict the most efficient turns from flightline to flightline, thus completing the enti re flightplan PAGE 106 106 This process not only cuts down on operator input, but ensure s the most optimal total flight path. Often the most optimal involves a PD that would seem inefficient, or turns that would seem counter intuitive and not normally entered by any operator. Table 6 1 shows the results from each type of turn, for randomly generated polygons. Further Work As mentioned in Chapter 2 this algorithm is constrained to convex polygons. Much work has been done by Choset and independently by Hu ang in the are a of polygon decomposition [4,8] Increasing the scope of this algorithm to trul y any arbitrary shape would require the addition of this module. Further steps would be to decide on the globally optimal path given many decomposed convex polygons. Work done by Li has shown significant progress in this area [11] However, the actual code of this algorithm was written in such a way that additional methods could be added with minimal integration. Aside from increasing the scope of this algorithm, further work should include computational optimization of the methods shown here. As written, the algorithm is too slow to run real time and onboard vehicle without a dedicated microprocessor Work to increase the computation speed to the point where the vehicle can ru n the code, and generate real time flightplan s as conditions change would be the next step. Furthermore, this algo rithm is written using Matlab Class structure, and any microprocessor based real time code would need to be transcribed into a compiled langu age. Further work and optimization would be required to explore the efficiency gains from non boustrophedonic flight I n the case where the turning radius of the vehicle is larger than the width of the flightlines global efficiency gains could be made by forcing a PAGE 107 107 flightline order that is equal to or larger than the turning radius of the vehicle. An example of such a flight path is shown in Figure 6 1 Implementing such a path is limited to optimizing the order of the flightlines, since the algorithm is cap able of handling the resulting turns already. Table 6 1 Summary of r esults PAGE 108 108 Figure 6 1 Non b oustrophedonic parallel p aths PAGE 109 109 LIST OF REFERENCES [1] Bowman, W. S. "Design and Validation of Autonomous Rapid Mapping System Using Small UAV." Master's Thesis. University of Florida, 2008. [2] Burgess, M. A., P. G. Ifju, H. F. Percival, J. H. Per ry, and S. E. Smith. "Development of a survey grade sUAS for natural resource assessment and monitoring." Florida Cooperative Fish and Wildife Research Unit Annual Coordinating Committee Meeting. Gainesville, FL: Slide presentation, May 23, 2009. [3] Annals of Mathematics and Artificial Intelligence, Vol. 31 2001, pp. 113 126. [4] Coverage Path Planning: The boustrophedon cellular decomposition. International Conference on Field and Service Robotics 1997. [5] Variable Camber Optimization for sUAS Based Remote Sensing University of Florida, 2011. [6] Federal Aviation Administration. Interim Operational Approval Guida nce 08 01. Federal Aviation Administration, Unmanned Aircraft Program Office. 2008. [7 ] Foley, J., Dam, A. v., Feiner, S., & Hughes, J. Computer Graphics Principles and Practice. Addison Westley Publishing Company, 1996. [8] sw eep based Decompositions for Coverage IEEE International Conference on Robotics and Automation. 2001. [9] J American Society of Agricultural and Biological Engineers Vol. 53 No. 1, 2001, pp. 283 295. [10] Jones, G. P. "The Feasibility of Using Small Unmanned Aerial Vehicles for Wildlife Research." Master's Thesis. University of Florida, 2003. [11] Li, Y., Chen, H., Er, M. J., & Mechatronics, Vol 21 2011 pp. 867 885. [12] McConnel, J. Computer Graphics Theory to Practice. Sudbury, MA: Jones and Barlett Publishers, Inc. 2006. [13] AIAA Guidance, Navigation, and Control Conference and Exhibit San Francisco, 2005, pp. 1 11. PAGE 110 110 [14] Agricultural Engineering International: the CIGR Ejournal, Vol. 4, No. 7, 2007. [15] Proceedings of the AIAA Infotech@Aerospace Conference. 2005. [16] Owen, P. "When the Ravens Met the Sandhill Cranes." Unmanned Systems June 2011. [17] Perry, J. H. "A Synthesized Directly Georeferenced Remote Sensing Technique for Small Unmanned Aerial Vehicles." Master's Thesis. University of Florida, 2009. [18] Perry, J. H., Evers, B. S., Rambo, T. J., Reed, T. M., Burgess, M. "Natural Resource Management with a Small Unmanned Aircraft." North America. 2011. [19] Piezdeh, H. Computational Geometry with the Rotating Calipers. McGill Uni versity, School of Computer Science. Ann Arbor: UMI. 1999. [20] 2.1 2009. [21] IEEE Athens. 198 3. [22] US Government. (2012). Title 14: Aeronautics and Space, PART 91 GENERAL OPERATING AND FLIGHT RULES. Retrieved July 14, 2012, from http://ecfr.gpoaccess.gov/cgi/t/text/text idx?c=ecfr&rgn=div5&view=text&node=14:2.0.1.3.10&idno=14 PAGE 111 111 BIOGRAPHICAL SKETCH Thomas Jeffery Rambo, 24, is a born and raised Gainesville native. His parents are both professors at T he University of Florida, and he has been around the university fo r as long as he can remember. Thomas has always b een interested in aviation, starting with the moment his g randfather showed hi At Thomas graduated from Buchholz High Sch ool in 2006 with high honors. I n his first week of college was on payroll. In 2007 he organ ized and le d the MAV competition team for the European Micro Air Vehicle Competition, held in France, where UF was the top pla cing team among American universities. He graduated in 2010 with a Bachelor of Science in Aeros p a ce Eng ineering, and entered graduate s chool in the Fall. He continued research into Unmanned Systems throught his graduate career, culminating with a Masters o f Science in Aerospace Engineering in 2012. revious professional positions include a 2010 internship with The Boeing C o., where he was a member of the 787 flight control team. Prior to this in 2009 he interned with Aerovironment, Inc. While still in Graduate School, Thomas is one of the founding members of the startup company, Altavian Inc. As Chief Operating Officer, Thomas Systems, and runs the day to day business operati ons. Altavian owes much of its success to the skills learned in this research lab, and the patience of its directors. 