DEVELOPMENT AND EXPERIMENTAL TESTING OF AN AMPHIBIOUS

by

Joseph G. Marquardt

A Thesis Submitted to the Faculty of

The College of Engineering and Computer Science

in Partial Fulfillment of the Requirements for the Degree of

Master of Science

Florida Atlantic University

Boca Raton, Florida

May 2012

i DEVELOPMENT AND EXPERIMENTAL TESTING OF AN AMPHIBIOUS VEHICLE

by

Joseph G. Marquardt

This thesis was prepared under the direction of the candidate's thesis advisor, Dr. Karl von Ellenrieder, Department of Ocean and Mechanical Engineering, and has been approved by the members of his supervisory committee. It was submitted to the faculty of the College of Engineering and Computer Science and was accepted in partial fulfillment ofthe requirements for the degree ofMaster ofScience.

arl von Ellenrieder, Ph.D. Thesis AdVisor~_

Edgar An, Ph.D.

Palaniswamy Ananthakrisnan, Ph.D. ..M-<.vvJ.A..~4A)~ Manhar Dhanak, Ph.D. a d Hashemi, Ph.D. air, Department ofOcean and Mechanical En ineering

hammed Ily s Ph. . Interim Dean, Co lege ofEngineering and Computer Science ~rZ~~

ii ACKNOWLEDGEMENTS

I am so fortunate to have the most amazing family; Mom, Dad and Kasey, without you guys in my life I would not have accomplished what I have, or be here about to turn in a Master’s Thesis. Thank you for everything you have done for me, and your support through the past few years of school. I am also extremely grateful for my girlfriend Lori who has been there for me through everything, and always knows how to put a smile on my face. Her motivation and inspiration keeps me determined and focused.

Dr. von Ellenrieder, my thesis advisor, thank you for everything you have done and taught me along the way. You were always willing to help, even if I was the fourth or fifth student in line waiting to talk to you. I also want to thank my thesis committee for their help and support.

I would also like to thank Ed Henderson and Luis Padilla. I have learned so much from the two of you in the past few years, and your willingness to help and teach is unbelievable. Also, Dr. Ananthakrisnan, you are an amazing professor and I am so fortunate to have taken classes with you. All my fellow graduate students, especially Tom

Furfaro, Janine Mask, Jose Alvarez, Matt Young and James Lovenbury, your help was much appreciated.

Lastly, I would like to thank the Office of Naval Research for funding this research.

iii ABSTRACT

Author: Joseph Marquardt

Title: Development and Experimental Testing of an Autonomous Amphibious Vehicle

Institution: Florida Atlantic University

Thesis Advisor: Dr. Karl von Ellenrieder

Degree: Master of Science

Year: 2012

The development and experimental testing of the DUKW-Ling amphibious

vehicle was performed during the first phase of an autonomous amphibious vehicle system development project. The DUKW-Ling is a 1/7th scale model of a cargo transport

concept vehicle. The vehicle was tested in the three regions it is required to operate: land, sea and the surf zone region. Vehicle characteristics such as turning radii, yaw rate and

velocities were found for different motor inputs on land and water. Also, because a vehicle navigating the surf zone is a new area of research that lacks experimental data the vehicle was tested in the breaking waves of the surf zone and its motion characteristics were found, as well as the drivetrain forces required to perform this transition.

Maneuvering tests provided data that was used to estimate a model for future autonomous

control efforts for both land and water navigation.

iv DEVELOPMENT AND EXPERIMENTAL TESTING OF AN AMPHIBIOUS VEHICLE

LIST OF FIGURES ...... vii

LIST OF TABLES ...... xii

NOMENCLATURE ...... xiv

1 INTRODUCTION ...... 1 1.1 Problem Statement ...... 3 1.2 DUKW 21 Background...... 6 1.3 Current Model Description and History ...... 8 1.4 Related Research ...... 9 1.4.1 DUKW Autonomy ...... 9 1.4.2 Vehicle Behavior ...... 11 1.5 Contribution ...... 14

2 APPROACH ...... 21 2.1 Modification, Upgrades and System Design ...... 21 2.1.1 Mechanical Conversion ...... 21 2.1.2 Electrical, Sensor and Control System Design ...... 33 2.2 Experimental Approach ...... 43 2.2.1 Sensor and Test Equipment Calibration ...... 44 2.2.2 Vehicle Tests ...... 49

3 RESULTS ...... 65 3.1 Vehicle Tests ...... 65 3.1.1 Rolling Resistance Testing ...... 65 3.1.2 Locating Vehicle Center of Mass ...... 67 3.1.3 Dynamometer Testing ...... 70 3.1.4 Maximum Incline and Approach/Departure Anngles ...... 75 3.1.5 Land Maneuvering Characteristics ...... 83 3.1.6 Sea Maneuvering Characteristics ...... 107 3.2 Systems Identification ...... 121 3.3 Transition Region Tests ...... 130 3.3.1 Land-to-Sea ...... 134 3.3.2 Sea-to-Landn ...... 138 3.3.3 Vehicle in the Surf-Zone ...... 142 3.4 Froude-Krylov Excitation Forces ...... 149

v 4 CONCULUSIONS ...... 152 4.1 Recommendations for Future Work ...... 153

5 APPENDIX ...... 156

6 REFERENCES ...... 219

vi LIST OF FIGURES

Figure 1 – DUKW 21 Concept ...... 1

Figure 2 - DUKW SWATH ...... 7

Figure 3 – Original 1/7th Scale DUKW-ling ...... 9

Figure 4 - Original Vehicle with Wheel Drivetrain ...... 22

Figure 5 – Original Five Wheel Drivetrain ...... 24

Figure 6 - New Chain vs. Original ...... 25

Figure 7 - Tracked Vehicle Separation Ratios ...... 26

Figure 8 – Tracked Drivetrain ...... 26

Figure 9 - Conveyor Belt Track ...... 27

Figure 10 - FBD of Vehicle Rolling Resistance ...... 29

Figure 11 - Gearing System Numbering Convention ...... 30

Figure 12 - Gear System Torques ...... 32

Figure 13 - Water Sensor Schematic ...... 36

Figure 14 – RoboteQ’s RoboServer Software Operation ...... 38

Figure 15 - Motor Controller Hexadecimal Communication ...... 38

Figure 16 – Container Lifting Mechanism ...... 39

Figure 17 –Control System Block Diagram...... 40

Figure 18 - PCB Motherboard ...... 43

Figure 19 - Xsens Magnetic Field Mapper ...... 47

Figure 20 - Dynamometer Calibration ...... 49

Figure 21 - Rolling Resistance Tests ...... 51 vii Figure 22 - Vehicle During Land Testing ...... 53

Figure 23 - ABS Turning Circle Test [39] ...... 54

Figure 24 – Autonomous Control ...... 58

Figure 25 - ABS Figure Zig-zag Maneuvering Test [39] ...... 60

Figure 26 - Center of Mass Pendulum Test ...... 67

Figure 27 - Roll Response in Pendulum Test ...... 69

Figure 28 – Dynamometer Test Results: Current-Torque Relationship at Different RPMs ...... 71

Figure 29 - Dynamometer Test Results: RPM-Torque Relationship...... 73

Figure 30 - Dynamometer Test Results: Current Torque Relationship for Different Motor Commands ...... 74

Figure 31 - Vehicle Approach and Departure Angles ...... 76

Figure 32 - Motor Data 11 Degree Incline Test ...... 78

Figure 33 - Pitch Angle 11 Degree Incline Test ...... 78

Figure 34 - Motor Data 14 Degree Incline Test ...... 80

Figure 35 - Pitch Angle 14 Degree Incline Test ...... 80

Figure 36 – Motor Data 19 Degree Incline Test ...... 82

Figure 37 - Pitch Angle 19 Degree Incline ...... 82

Figure 38 - Minimum Turning Radius on Land...... 84

Figure 39 - Clipped Data to Calculate Minimum Turning Radius ...... 85

Figure 40 - Maximum Velocity on Land ...... 88

Figure 41 - Maximum Velocity Motor Current ...... 88

Figure 42 - Maximum Velocity Motor Commands ...... 89

Figure 43 - Rate of Turn During Maximum Speed (Test 1) ...... 90

viii Figure 44 - Rate of Turn During Maximum Speed (Test 2) ...... 91

Figure 45 - Rate of Turn During Maximum Speed (Test 3) ...... 91

Figure 46 - Rate of Turn During Maximum Speed (Test 4) ...... 92

Figure 47 - IMU Yaw Rate for Equal Motor Commands ...... 93

Figure 48 - Maximum Speed Compass Heading (Test 1) ...... 94

Figure 49 - Maximum Speed Compass Heading (Test 2) ...... 94

Figure 50 - Maximum Speed Compass Heading (Test 3) ...... 95

Figure 51 - Maximum Speed Compass Heading (Test 4) ...... 95

Figure 52 - Straight Line Track with Correction Factor ...... 97

Figure 53 - Yaw Rate During a Turn to Port ...... 100

Figure 54 - 105/75 Left Turn Current and Force on Tracks ...... 102

Figure 55 - 105/45 Left Turn Current and Force on Tracks ...... 102

Figure 56 - Vehicle Heading During a Land Right Turn ...... 104

Figure 57 - Continuous Compass Data During Land Right Turn ...... 105

Figure 58 - 70/40 Land Zig-zag Test ...... 106

Figure 59 - Final Vehicle in Water Test Area ...... 107

Figure 60 - Minimum Turing Radius in Water ...... 108

Figure 61 - Maximum Velocity Water ...... 109

Figure 62 - Motor Current During Maximum Velocity Test Water ...... 110

Figure 63 - Motor Commands During Maximum Velocity Test Water ...... 110

Figure 64 - Straight Line Track in Water ...... 112

Figure 65 - Compass Heading During Straight Track ...... 112

Figure 66 - IMU Yaw Rate Full Speed Water ...... 113

ix Figure 67 - GPS Yaw Rate Full Speed Water ...... 113

Figure 68 – Yaw Rate During a Turn to Port (100 Stbd, -80 Port) ...... 119

Figure 69 - 122/0 Water Zig-Zag Motor Commands ...... 120

Figure 70 - Vehicle Position in Water Zig-zag Test ...... 121

Figure 71- Motor Commands Land Zig-zag for Systems ID ...... 123

Figure 72 - Body Fixed u Velocity Model-Black Signal is the Measured Velocity ...... 123

Figure 73 - Body Fixed v Velocity Model-Black Signal is the Measured Velocity ...... 124

Figure 74 - Yaw Rate Model-Black Signal is the Measured Yaw Rate ...... 124

Figure 75 - Body u Velocity Model on Second Data-Black Signal is Measured Velocity ...... 125

Figure 76 - Body v Velocity Model on Second Data-Black Signal is Measured Velocity ...... 125

Figure 77 - Yaw Rate Model on Second Data-Black Signal is Measured Yaw Rate ..... 126

Figure 78 - Body Fixed v Velocity Land Model-Black Signal is Measured Velocity ... 128

Figure 79 - Body Fixed v Velocity Model Land-Black Signal is Measured Velocity ... 128

Figure 80 - Yaw Rate Model Land-Black Signal is Measured Yaw Rate ...... 129

Figure 81 - Dania Beach Ocean on Test Day ...... 131

Figure 82 - Wave Gauge Output ...... 132

Figure 83 - Wave Data in Surf Zone Tests ...... 133

Figure 84 - Land-to-Sea Transition Motor Data (Motor Command: 80) ...... 135

Figure 85 - Land-to-Sea Transition Motions (Motor Command: 80) ...... 135

Figure 86 - Beach-to-Sea Vehicle Track ...... 136

Figure 87 – Sea-to-Land Vehicle Track ...... 139

Figure 88 – Sea-to-Land Transition Motor Data (Motor Command: 80) ...... 140

x Figure 89 - Sea-to-Land Transition Motions (Motor Command: 80) ...... 140

Figure 90 - Motions in the Surf Zone Test 1 ...... 142

Figure 91 - Motions in the Surf Zone Test 2 ...... 143

Figure 92 - Motions in the Surf Zone Test 3 ...... 143

Figure 93 - Motions in the Surf Zone Test 4 ...... 144

Figure 94 - Motions in the Surf Zone Test 5 ...... 144

Figure 95 - Waves in a 20 Second Period ...... 147

Figure 96 - Wave Frequency in Surf-zone ...... 148

Figure 97 - Roll, Pitch and Heave Frequency Response to Surfzone ...... 148

Figure 98 - Surge (1), Sway (2), Heave (3) Force vs. Time ...... 149

Figure 99 - Roll (4), Pitch (5), Yaw (6) Moments vs. Time ...... 150

xi LIST OF TABLES

Table 1 - DUKW Characteristics ...... 8

Table 2 – Gearing Equations ...... 31

Table 3 - Gearing Spreadsheet ...... 32

Table 4 - Land Motor Inputs for Motor Command Circle Tests ...... 55

Table 5 - Water Motor Inputs for Motor Command Circle Tests ...... 57

Table 6 - Rolling Resistance Test Results ...... 66

Table 7 - Average Current and Track Force in 11 Degree Incline Test ...... 79

Table 8 - Average Current and Track Force in 14 Degree Incline Test ...... 81

Table 9 – Average Current and Track Force in 19 Degree Incline Test ...... 83

Table 10 – Coordinates for Minimum Right Turning Radius Calculations ...... 86

Table 11 - Coordinates for Minimum Left Turning Radius Calculations ...... 86

Table 12 - Maximum Velocity and Accelerations on Land ...... 87

Table 13 – Land Left Turn Radii ...... 98

Table 14 – Land Right Turn Radii ...... 99

Table 15 - Land Left Turn Yaw Rate ...... 101

Table 16 - Land Right Turn Yaw Rate ...... 101

Table 17 - Land Zig-zag Test Motor Commands ...... 106

Table 18 – Coordinates for Minimum In-Water Turning Radius Calculations ...... 108

Table 19 - Maximum Velocity and Acceleration in Water ...... 109

Table 20 - Wind Data During Straight Line/Max Speed Tests ...... 111

Table 21 – Wind Data During Left Turn Tests ...... 115 xii Table 22 - Wind Data During Right Turn Test ...... 115

Table 23 - Water Left Turning Radii ...... 116

Table 24 - Water Right Turing Radii ...... 116

Table 25- Water Left Turn Yaw Rate ...... 117

Table 26 - Water Right Turn Yaw Rate ...... 118

Table 27 - Land-to-Sea Drivetrain Force Results ...... 138

Table 28 – Sea to Land Drivetrain Force Results ...... 141

Table 29 - Average Motions Test 1 ...... 145

Table 30 - Average Motions Test 2 ...... 145

Table 31 - Average Motions Test 3 ...... 145

Table 32 - Average Motions Test 4 ...... 145

Table 33 - Average Motions Test 5 ...... 146

Table 34 - Average of all Surf Zone Motion Test Results ...... 146

xiii NOMENCLATURE

Autonomous: Capable of performing a task without human interaction

SWATH: Small Water plane Area Twin Hull

Stereo Vision: Dual camera system that allows depth perception by triangulation

Amphibious: Capable of traveling in both aquatic and terrestrial environments

IMU: Inertial Measurement Unit

DGPS: Differential Global Positioning System, uses ground based stations as well as

satellites and has two GPS receivers to compare location data

HSV: Hue, Saturation and Value. A cylindrical coordinate representation of color

RGB: Red, Green and Blue. An additive representation of color

AWP: Water plane area of a hull form

DUKW: GMC terminology: “D” vehicle designed in 1942, “U” utility, “K” all-wheel

drive, “W” two powered rear axles.

SBC: Single Board Computer. This projects used an ARM9 based TS-7800 by

Technologic Systems.

xiv 1 INTRODUCTION

The DUKW 21 is a SWATH vehicle that will be used to supply offshore ships in areas where conventional methods of supply may be difficult or impractical. Deep- water ports and designated infrastructure will no longer be requirements when supplying ships from shore. Reducing onshore footprint and logistics are the main benefits of amphibious cargo transport, because it reduces the cost and complexity of a supply mission by combining the task of two or more . Making the vehicle autonomous would also simplify the cargoo transport mission, allowing multiple unmanned DUKW 21’s to be supervised by a single person. This concept, pictured in figure one below, is a unique application of an autonomous vehicle because it will travel between land and sea, and provides an opportunity to study a new, unconventional application of autonomous systems.

Figure 1 – DUKW 21 Concept

1

An autonomous amphibious vehicle, however, does not entirely relate to typical autonomous projects, and provides engineers with a new design challenge. Autonomous vehicles have historically been designed for use in a specific operating environment.

The DUKW 21 will be one of the first autonomous vehicles that will travel on both land and sea. The transition between the two is in the highly dynamic and energetic surf zone, which is the most complex area of research for this autonomous system, due to a lack of experimental research. The vehicle’s dynamic response is a very important factor in the design of a control system, and its maneuvering characteristics must be well defined in each regime that the vehicle must operate. The lack of experimental data for a vehicle transitioning between land and sea makes it difficult to design an autonomous model for control. Experimental data is especially important in an area such as the surf zone, where modeling is difficult due to the non-linear nature of breaking waves. The dynamic motions of the vehicle must be defined in experimental testing, and the performance of the autonomous control system must also be determined in experimental tests.

Autonomous vehicles have historically been used in a single operating environment [32]. Whether a vehicle primarily operates in the air, on land, underwater or on the surface will dictate the type of sensors and control method used to control the vehicle autonomously. Autonomous vehicles use sensors and control algorithms unique to the area in which they must perform their mission. An amphibious vehicle must operate well in both terrestrial and aquatic environments; thus, posing a design challenge for engineers. A system designed for land navigation and control is much different than that of a sea-going surface vehicle, in both the sensors used and control 2

techniques. A unique system that can perform well across the vehicle’s different operating environments is a significant challenge for this concept.

The focus of this thesis work was to design, build and test a mechanical, sensor and electrical system that improved the capabilities of the DUKW-ling model. This work was completed to improve the ability for testing and autonomous amphibious system development. Extensive testing of the upgraded vehicle was performed and the data are discussed. The final product of this thessis is a baseline vehicle that is robust and easy to use, and an experimental analysis of the open loop performance characteristics of the vehicle in the different areas it operates.

This document introduces the backgrouunnd and devvelopment of the DUKW 21 concept, presents relevant research in the area of vehicle testing, specifically surf zone testing, then describes the modification and experimental approach that was used to fulfill the goals of this thesis. A detailed results section, a discussion of these results, recommendations for future work, and a project timeline outlining the progression of this thesis work, are also included.

1.1 Problem Statement

In order to perform its mission, there are two main tasks the full scale DUKW 21 will need to complete. First, it must be able to navigate to its intended location using a control algorithm that performs well across the different environments the vehicle is required to operate. Its sensor system will be a unique combination of sensors not found on current autonomous vehicles, which primarily do not opeerate across different

3

operating environments. Secondly, it must be able to avoid obstacles while performing its navigation task, and the performance of techniques used on surface vehicles and land vehicles is unknown in the dynamic surf zone region, where the vehicle will experience random, fast accelerations when encountering breaking waves.

Autonomous control on land and at sea utilizes common techniques and methods of control. The transition zone, defined as the area between terrestrial and aquatic operating environments, is the main area of uncertainty in the development of this autonomous system. This energetic and dynamic surf zone contains breaking waves, which are highly random and difficult to predict. The motions and accelerations the vehicle will experience are important for the development of the vehicle’s structure as well as its autonomous control system. Because breaking waves are highly non-linear, they are difficult to simulate, making experimental testing the ideal technique to understand how a vehicle responds in this area. The lack of experimental data is an obstacle in the development of this concept and must be expanded. This information can be obtained using a model vehicle and collecting data with the onboard sensors. The forces the vehicle experiences, as well as the drivetrain forces required to navigate the vehicle through the surf zone are explored with experimental testing.

Previous algorithm development for the DUKW at the Center for Innovation in

Ship Design (CISD) was limited because of the lack of experimental data available for a vehicle transitioning between land and sea through the surf zone. The drivetrain forces in the transition region, maximum drivable gradient, the vehicle’s turning radius and driving characteristics, as well as the vehicle’s dynamics in different sea states are

4

unknown because this is a new area of research, and there is a lack of applicable experimental data and research [8].

The forces required to complete a transition between land and sea are unknown, and are important for full scale design, particularly for the power plant design.

Modeling and algorithm development work in recent years also has identified this as a setback.

Models for autonomous control are based on the operating conditions of the vehicle. How it reacts to input functions, such as turning a wheel or rudder, must be understood in the development of the control system. A vehicle’s response to a change in heading is very different on land compared to sea, and this response will also differ in the surf zone. Therefore, it is assumed diverse methods of control must be used depending on the environment the vehicle is in. The vehicle’s response to motor commands is important in autonomous control development and must be found through experiments with the vehicle model.

For obstacle avoidance, the vehicle must have a sensor or combination of sensors that provide information to the control system about the vehicles surroundings. The best system to use for a vehicle operating in the surf zone is unknown at this time and different approaches must be tested experimentally to determine the most effective sensor choice. Stereo vision is a possible solution to this aspect of design, because it has performed well on autonomous surface vehicles in the past [30]. JPL developed an autonomous vehicle called the CARACaS, Control Architecture for Robotic Agent

Command and Sensing, which used stereo vision to navigate through bridge pilings.

5

The performance of vision-based navigation on a vehicle experiencing breaking waves in the surf zone is unknown at this time. A further understanding of the limitations associated with the accelerations and responses of the vehicle in this region is needed to determine the feasibility of vision-based navigation in the surf zone. A vision based obstacle recognition system must be developed for experimental testing on the vehicle model.

1.2 DUKW 21 Background

The current method of supplying a fleet is by the use of large transport ships like the Large Medium-Speed-RO-RO (LMSR) ships that require deep-water ports.

Locating, developing and securing such a port poses a challenge, yet supplying an offshore fleet is an essential element of any mission. Current solutions to the supply line involve the use of helicopter transport for small amounts of cargo, oor teams of land vehicles and . These methods are inefficient in both cost and complexity

[13].

The armed forces have continuously recognized amphibious vehicles as significant logistics tools because they do not require a dock or have draft limitations.

The ability to come ashore without a port or designated infrastructure makes an amphibious vehicle a beeneficial choice for a supply mission.

In order to address the need for a supply line from shore to the fleet, the DUKW

21 has been under development at The Center for Innovation in Ship Design (CISD) at the Naval Surface Warfare Center/Carderock Division (NSWC/CD) since 2007

[13][25]. The DUKW 21 concept provides ship replenishment from shore by means of 6

container delivery, even in areas were a port may not be readily available. The DUKW

21 is a Small-Water-Plane-Area, Twin Hull (SWATH) vehicle with a superstructure designed to lift and transport a 20-foot ISO container. The arching structure provides a simple yet strong design for operation in the energetic surf zone [13].

A SWATH hull was used in this design because of its stability characteristics. A

SWATH hull has a large amount of its displacement locaated below the waterline, as seen in figure 2 below. Because of this, the hull’s water plane area is significantly reduced, increasing its stability characteristics. The hull configuration is promising for transporting cargo through an area with potentially hazardous conditions. The DUKW- ling water-plane area is 1380 [in2].

Figure 2 - DUKW SWATH Hull The original requirements for the full scale DUKW 21 are as follows [13]:

 Operate in up to Sea State 2 (SS2)  Delivery of cargo from 5 nm offshore to 5 nm inland  Cruise at 15 knots in water and 30 km/hhour on land  Climb a standard beach gradient (1:50)  Load/unload ISO container automatically  Be controlled by either a single crew member or by automatic, unmanned control  Deliver 10 ISO containers without refueling  Enter the well deck of an LPD  Lift a loaded 20 foot ISO container weighing 24,000 kg (53,000 lbs)

7

1.3 Current Model Description and History

The DUKW-ling, a 1/7th scale model, was developed by Maritime Applied

Physics Corp. (MAPC) for the CISD to demonstrate and study the feasibility of the

DUKW 21 in an amphibious cargo transport mission [25].

As part of the 2010 Florida Atlanticc University Ocean Engineering Senior

Design project, the DUKW-ling model was given to a student team where a sensor network, control system and lifting mechanism were designed and implemented. This initial sensor network allowed for basic autonomous navigation and included a GPS, compass, RF transceiver, proximity sensors, depth sensor and a camera. The vehicle uses a forklift style cargo-handling mechanism, which allows it to raise and secure a scaled ISO container. The DUKW-ling model with its initial sensor configuration prior to this thesis work is shown in figure three, and its principle characterisstics in table 1.

Table 1 - DUKW Characteristics

LOA 106” LWL 100” Draft 19.3” BOA 45” BWL 35” AWP 1380 in2 Hull Separation 32” L/B 2.36 TPI 0.022 PPI 50 Displacement 648 lbs

8

Figure 3 – Original 1/7th Scale DUKW-ling

1.4 Related Research

An autonomous, amphibious vehicle is a new concept that has very little background information in the form of experimental data or common practices.

However, there is relevant research that can be used to develop a way of studying the concept that can be tailored to apply to an amphibious vehicle. Understanding the vehicle’s behavior is important in the development of a system that will control the vehicle autonomously. The following sections will discuss current research as it pertains to this project.

1.4.1 DUKW Autonomy

Autonomous systems typically consisst of four components, which include: perception interface (sensors), a planner (path planning), an executive (sends commands to actuators) and an actuator interface [8]. It can be understood an autonomous vehicle

9

on land would have a very different autonomous system than one on water. While the required sensors would be an obvious difference between the two, the path planning component of the autonomous system is also a very significant difference. Land vehicles typically use batch path planning, which define a complete path from present location to final destination [26]. This method is used because ground terrain is mostly static, and does not change suddenly. So if a path needs to be altered, it usually does not need to be recalculated from scratch because most of the path would be unaffected [11].

Autonomous sea surface vehicles typically do not use batch planning algorithms because the dynamic nature of the ocean environment means extensive computations.

These vehicles use continuous path planning, defining a point short of the final destination and is modified as the vehicle travels closer to its destination. This method only plans for short term and does not take the entire environment into account [8]. A unique system for controlling an amphibious vehicle must be developed to perform an autonomous mission across different environments.

The CISD, and intern Benjamin Flom, have been developing control algorithms specific to the DUKW 21 project. In his research, control techniques for each region are proposed, and recently, his main focus has been the transition region [8][13]. The research has certain setbacks due to lack of experimental data in the area. In order to further the development of control algorithms, there are many unknowns that must be explored. The first is the effective weight of the vehicle as it comes into contact with shore. Common ground navigation algorithms assume a constant weight, which would not be applicable here. His research takes into account the effective weight of the

10

vehicle as a function of the buoyant force and the beach incline. In order to use this approach, it is necessary to 1) determine the slope the vehicle encounters and 2) determine a function governing the displaced volume of the vehicle as it comes in contact with land to obtain the effective weight of the vehicle [13]. In addition to these hydrostatic data, also important are the dynamic forces of the waves acting on the vehicle and the resulting vehicle motions they cause. The research also suggests, that in order to better develop the control algorithms, the vehicle’s constraints, such as turning radius and maximum drivable gradient should be determined, as well as the vehicle’s dynamics in different sea states [8].

1.4.2 Vehicle Behavioro

There are many common practices and tests that are performed to understand a vehicle’s dynamic characteristics [34][39]. These tests define the dynamic behavioor and motions of a vehicle while navigating. Many of these tests are performed in a test basin or in the open ocean and do not particularly apply to this project, since testing will be in the surf zone. This testing will be in a beach environment, where the use of a rotating arm or planar motion mechanism (PMM) is not possible. These methods define maneuvering coefficients by subjecting a model to specific maneuvers. Exploring a model’s response to breaking waves and defining coefficients in the surf zone is a new problem and will require a new approach on testing techniques.

In a test basin, LEDs can be placed on the vehicle and the use of fixed cameras at known positions can determine the models motion when encountering waves. In these types of tests, waves can be described as a function of time and position. Using this

11

information, the measured response of the model can be related to the wave it encounters by the time and position in the basin. This method is described in [16], where motions of the model were matched to time histories of the waves to determine the vehicle’s response to certain waves. This method requires a test basin and controlled wave making that cannot be directly applied in this project.

The Naval Surface Warfare Center/Carderock Division conducted model testing of a 514 foot heavy lift ship experiencing breaking waves in their wave during the summer of 2008 [28]. In this experiment, a beach was created to produce both spilling and plunging waves. The model was then positioned at different locations in the breaking waves where heave and pitch motions, and surge forces, were measured. A heave post was attached to the longitudinal center of gravity and used a block gauge and a dashpot to measure the force and pitch angle. An ultrasonic distance sensor was used to measure the heave motions. Wave probes were positioned at different locations in the wave tank to measure the waves as they progressed, to relate the motions measured to waves encountered, and determine RAO transfer functions [28][29]. Understanding these motions will be important in the development of this concept. Predicting how the full scale vehicle reacts to breaking waves will be a key design parameter with regards to both control and mechanical systems. This experiment is a good example of altering known techniques to apply to a new problem; a ship encountering breaking waves in the surf zone.

The information gathered by this experiment was passed to The University of

Hawaii, and analyzed by Miguel Quintero for his master’s thesis. From the data

12

gathered during model tests, the spectra were calculated and the dominant harmonics were used to develop transfer functions that related the model response to the location the wave broke on the hull. The project found for plunging waves, very strong second order responses were seen, while spilling waves had dominant first order responses

[29].

Another issue that amphibious vehicles will face is the structural load experienced while traveling through breaking waves. The most significant structural force comes from slamming motions when a model was tested in regular, non-breaking waves. The slamming motions a vehicle will experience in breaking, surf zone waves is assumed much greater than in non-breaking waves, but must be further explored to understand the slamming that can be expected in this area, and consequently, the structural forces that will be experienced in such a region [29]. These slamming motions will increase the force exerted on the drive system when the vehicle travels in shallow water, and comes in contact with the sea floor. The SWATH hull reduces these slamming forces, however wave slapping forces will be significant because it will be traveling through the breaking waves of the surf zone.

In the experiments of [15], a model was towed through different non-breaking wave patterns to understand the heave and pitch motions that the model would exhibit.

They found linear responses for long wavelengths, but as wavelengths became shorter, the response became non-linear and was dominated by second order harmonics [15]. As a wave approaches shore in the transition region, its wavelength becomes shorter, which means the response can be assumed highly non-linear and therefore difficult to predict.

13

At these short wavelengths, breaking waves will produce a response where second order harmonics will be a cause for concern. The forces acting on the vehicle in this region are unknown at this time due to lack of experimental research, but are assumed to be very significant [29].

Common techniques to understand the dynamic behavior of a vehicle can be seen in [34] and [28]. These open loop tests define maneuvering characteristics that are unique to any vehicle. The understanding of thhis dynamic behavior is essential in the development of an autonomous control system. The tests are simple procedures that can be carried out with basic sensors and determine valuable information about vehicles maneuvering characteristics and determine controller gains. Sea trial information can also be used with a Kalman filter and regression to estimate maneuvering coefficients, motion variables and hydrodynamic forces. This method, called the “estimation before modeling technique,” was tested using sea trial data of a tanker in [39].

Sliding mode control could prove to bee very useful in the autonomous control system on the DUKW 21. This method changes the dynamics of a nonlinear system so it is not a function of time. It was used in [8] for the control of a wheeled robot in the presence of skidding effects and experimental results validate its effectiveness. The dynamic nature presented in this concept of a tracked vehicle transitioning between land and sea make sliding mode control a possible method for control.

1.5 Contribution

The goals of this thesis are to experimentally characterize the open loop, dynamic

14

performance characteristics of the DUKW-Ling; to perform systems identification of the vehicle on land, water and the surf zone; and to refine the design of the vehicle to facilitate autonomous control system development. The transitional surf zone is the main area of interest during development of the vehicle, for this thesis work as well as in planned future research. The project is broken into two stages, the first being vehicle design, modification and upgraded system development; and the second stage is experimental testing and data analysis. The vehicle’s original drivetrain, sensors and electronics were not adequate for planned testing and autonomous control system development. The drivetrain was converted to a tank track system, because the vehicle difficult to operate in sand, where much of the planned research will take place. This conversion also produced a vehicle model more similar to the full scale design concept, so experimental testing is more applicable. A unique amphibious vehicle sensor suite, motherboard PCB and electrical system were designed and implemented on the

DUKW-ling model. The new system has sensors that are now adequate for extensive vehicle testing and future autonomous control development. This sensor suite was tested individually, as well as integrated on the vehicle as a complete system operating on land, at sea and in the surf zone test areas to verify its performance.

A vision-based obstacle detection system was also developed and tested. With further refinement, it may be possible to use this system for object detection and localization. Preliminary testing of the system shows it is capable of locating and tracking objects, and the system can be integrated into a future autonomous control system for obstacle avoidance and vision based navigation. The system uses OpenCV

15

open source software to perform computer vision tasks. A detailed description of the vision system work is given in Appendix 3.

The second focus of this thesis was experimental testing of the vehicle’s characteristics. These tests will be further explained in this report, and include: maneuvering tests, identification of vehicle forces in the transition zone, vehicle motions in the surf zone, measurement of the vehicle’s response to motor input commands, and determination of basic vehicle characteristics such as turning radius, velocity and acceleration on land and at sea.

One of the most significant difficulties facing modeling research and algorithm development for amphibious vehicles is the lack of experimental data [8]. More specifically, CISD reports mention a lack of drivetrain forces in the transition region, maximum drivable gradient, the vehicle’s turning radius and driving characteristics, as well as the vehicle’s dynamics in different sea states as impediments to algorithm development for amphibious vehicles [8]. These issues were addressed, and experimental data is now available to Flom and others to develop these algorithms. This data will also be useful for future projects that explore a multi-terrain vehicle which transitions between land and sea, like the DUKW 21.

Because FAU contributes to the development of many autonomous vehicles, a universal control system that is modular and can be used on more than one vehicle could be useful to ease autonomous system development. By creating a universal electrical and sensor system network, future projects would only need to make minor

16

modifications and add their unique requirements to a baseline system. They could also build on existing software development of previous projects, simplifying the development of the autonomous vehicle, since many of the projects over the past five years at FAU have been similar. In the design of the sensor and electronics system of this project, the ability for it to be used on similar vehicles was taken into consideration when appropriate, in hopes that this system could be built upon after this project is complete. The motherboard PCB was designed to facilitate the requirements of this project, while also adding additional features that could be of use to similar projects in the future by using the flexibility of the deigned system.

The detailed contributions of this project are shown below.

1. Systems Upgrade

 Vehicle was upgraded to allow for adequate testing and control as an

autonomous amphibious vehicle. This includes upgraded electrical and

sensor systems, as well as a new tank track drivetrain to replace the wheeled

drivetrain originally on the vehicle. This will be outlined in detail in section

2.1.

 Upgraded sensors such as a GPS enabled IMU and a differential GPS have

been integrated onto the vehicle to improve test data and allow for future

autonomous control development.

 A printed circuit board (PCB) motherboard was designed to integrate all

onboard sensors with the TS-7800 single board computer (SBC). The board

allows proper powering of the sensors and data communication. It also

17

contains the electrical structure to drive the vehicle’s lifting mechanism and

communicate with the motor controllers.

2. Sensor Integration and Testing

 The electronics system is capable of logging sensor data and was designed to

be further developed into an autonomous control system. This autonomous

system is currently in development at FAU by FAU graduate student Jose

Alvarez.

 Each sensor was calibrated and tested individually to ensure it could collect

and save data.

 The sensors were tested as a system to confirm all data was collected and

saved successfully for planned testing and future autonomous development.

3. Vehicle Behavior

 Experimentally defined vehicle’s behavioral characteristics and capabilities

in the regions it must perform: land, sea and the transition region. This

included maneuvering characteristics in open water and land, as well as

forces, motions and accelerations experienced in the surf zone. Course

keeping was also tested, and power differences between port and starboard

motors for land and sea were found to allow the vehicle to track a straight

course, and make symmetric turns.

 Determined the limitations of the model, such as: minimum turning radius,

maximum traversable gradient, maximum accelerations and velocities in the

different operating areas, limitations in a sandy environment, rate of turn for

18

a variety of virtual rudder deflections etc. This information has been

documented for reference for future research using this vehicle, so tests can

be designed to stay within the limitations of the vehicle model.

 Motor inputs and vehicle outputs were defined by experimental testing. A

wide range of motor commands were given to the motors both on land and in

water and the response of the vehicle was measured with the on board

sensors.

 The vehicle was tested in the surf zone to define the motions it experiences

during its transition between land and sea. These motions were related to

wave characteristics. The drivetrain forces experienced in this transition

were also found by tests in the surf zone compared to dynamometer motor

tests.

4. Vision System

 A vision system has been initially developed and tested using OpenCV

computer vision open source software. The system is capable of providing a

control system with information about the vehicle’s surroundings and the

locations of potential obstacles or navigation buoys. This will be used in

future development of the DUKW’s autonomous navigation system. This

system information is included in the appendix.

5. Universal Control System

 The sensor and control system, and especially the motherboard PCB, were

designed in such a way that they can be used with other similar projects.

19

This project studied similar efforts in the past as well as the future at FAU

and developed a system based on some of the requirements found most

frequently on autonomous vehicles. This is in hopes that future projects can

build on the progress made in this thesis work.

The following document provides a detailed description of the complete system design, the experimental approach taken for data collection, and a results section that presents the data with discussion of the results.

20

2 APPROACH

2.1 Modification, Upgrades and System Design

The vehicle was equipped with a basic sensor system in 2010 during the FAU senior design project. The sensors used were not adequate for the planned research or control system development. It was determined the sensor system must be upgraded to meet the accuracy requirements in the planned research. The modification and system design will be detailed below.

The mechanical system of the initial demonstrator model, specifically the drivetrain, was deemed unusable by a past project, and needed to be replaced to continue development of this concept. The model was originally built with a five wheel drivetrain and used inadequate gear ratios that showed poor results in land maneuvering, and the vehicle was unable to perform in sand. The mechanical changes done in this work added a tank track drivetrain that allowed the vehicle to perform well in land testing. Motor mounts, chain drives and gear systems were also redesigned in order to provide a working vehicle capable of performing planned testing.

2.1.1 Mechanical Conversion

The original tracked drivetrain design, developed at CISD, was the basis of this design. The maneuverability of a tracked vehicle is proportional to the ratio of track length in contact with the ground, to distance between track centerlines.

21

Maneuverability is measured by the ease of steering and ccourse keeping. The optimal ratio is between 1.3 and 1.8, with lower ratios causing unstable conditions, and higher ratios causing difficulty in steering [20][13]. The separation of the model’s hull centerlines is 32 inches, which means the track length should be between 40 and 57 inches. Befoore modification, as shown in the figure below, the ratio was too high and the vehicle was unable to turn.

Figi ure 4 - Origiinal Vehicle with Wheel Drivetrain

In order to simpm lify the original model design, the tracked system originally proposed for the DUKW 21 was replaced with wheels for the original construction of the model, as seen in figures 4 and 5. This reduced construction cost and complexity, but also limits testing and the model’s capabilities.

22

The existing land-based propulsion system on the vehicle was found to be inadequate by the 2010 FAU senior design project [32]. This project attempted to operate the vehicle between water and a sandy beach. They were unsuccessful in operating the vehicle on the beach due to issues with the original drivetrain. This project was therefore restricted in the tests it could perform.

There are two problems the previous project documented in terms of the land propulsion. First, the front and rear wheels would drag when the vehicle performed a turning maneuver, and therefore limited the testing that could be done with the vehicle, while also putting added strain on the motors and drivetrain. The high length-to- separation ratio explains this problem. In a turning maneuver, the vehicle was actually held back by its front and rear wheels. The second issue with the original drivetrain was the chain driven sprockets. Being an amphibious vehicle, the DUKW-ling frequently encounters a sandy environment during testing and operation. The original drivetrain consisted of a that was linked to each of the other four wheels with a chain and sprockets. However, the sprocket radius was 10 [cm], while the wheel radius was

13 [cm] This configuration can be seen in figure five below. In sand, the wheels sank as the vehicle maneuvered, causing the sprockets to be submerged in the sand, which bound the drive system as sand was spun into the chain and sprockets. Lubrication of the steel chain was also difficult because of its location inside the hulls, and it had significant rust and corrosion damage. This damage increased the torque required to move the vehicle, due to the fact that the chain was over 3 meters long and drove five separate sprockets. The gear ratios used to drive the wheel drivetrain were also incorrect

23

and required a high amount of torque on the motor sprockets.

Figure 5 – Original Five WWheel Drivetrain

It was determined the ideal modification of the vehicle was to convert the five wheel, continuous-chain driven drivetrain into a tank track system, which is more similar to the full scale design, and would perform better than tires in the sand. In the new configuration, there is no chain near the sandy ground. The front drive chain controls the main drive sprocket for the track system, and is over 25 [cm] from the sand at its lowest point. The chain was also increased in size, so sand would not affect its operation. The new chain is shown in the figuure below on the left, with the original chain on the right for comparison.

24

Figure 6 - New Chain vs. Original

The front and rear track sprockets were raised from the bottoom-most wheels, which eases the turning of the vehicle, since it will no longer have to drag its front and rear wheels, as it did with the previous drivetrain. This configuration is called a double ramped track, and allows the vehicle to both appproach and depart larger obstacles than a single or no-ramp configuration. This also reduces the track length in contact with the ground, providing a lower ratio, and better drive characteriistics because of its increased maneuverability. The new design uses the lowest ratio, a track length of 1.01 [m], which makes the vehicle most maneuverable as described above. This value can be adjusted in the future by adjusting the mounting positions of the front and rear wheels up to a track length of 1.12 [m]. This adjustment would give a ratio of 1.38, as shown in figure 7.

25

Figure 7 - Tracked Vehicle Separation Ratios

The new drivetrain attaches to the current frame of the vehicle, with minor modifications and added axle brackets. The angle the front and rear sprockets mmake with lower wheels are such that hull damage is avoided when approaching an incline.

The all-aluminum dropdown bracket is shown in figure eight. CAD drawings and pictures of all fabricated parts are included in the appendix.

Figure 8 – Tracked Drivetrain

26

The configuration of the track system improves performance in turning, speed, resistance and max gradient capabilities. The wheel positions are aligned to protect the front and rear of the vehicle hull from coming into contact with beach gradients and obstacles. The angle between the lower wheels and the drive sprockets is 68 [degrees].

This angle determines the range of obstacles the vehicle is capable of traversing.

Because this is a non-combat, cargo transport vehicle, the obstacles that will be present are assumed minimal, so the angle was not a large factor in the design. While there is no documentation of the track angle in the original design of the DUKW 21 vehicle, pictures of the vehicle in a report show an angle less than most combatant tank tracks.

Figure 9 - Conveyor Belt Track

The track used in the design is an Acetal plastic conveyor belt from Intralox, seen in figuru e 9 above. Plastic strips were added to replace the rubber friction top for increased traction in sand. A tracked drivetrain will allow for better estimates of the full-scale vehicle’s behavior since it will be more similar to the full-scale tracked design. The bottom six wheels carry the load of the vehicle, and the front and rear sprockets keep the track in place. The front sprocket is driveen by a chain and gears

27

using an electric motor mounted on the above superstructure.

The gearing and motor size were determined by attaching a load cell to the vehicle in many different situations that would be expected in testing in the beach test area; inclines, as well as soft sand, hard packed sand, and partially submerged vehicle were explored to find the force required to move the vehicle from rest. The maximum resistance measured in these tests was used in determining the ideal gearing of the motor and chain drive system, using a 20% margin of error added to the maximum measured resistance. The maximum rolling resistance was found when the vehicle was partially submerged in the surf zone. 890 [N] of force was the maximum measured force required to move the vehicle in this area. So a resistance of 1,068 [N] was used in gearing calculations, assuming this is the worst case scenario to be encountered. Results of the rolling resistance tests in different situations can be found in the results section.

A dynamometer was used to understand the motor characteristics, because no documentation was available from the manufacturer. The torque available from the motors was important in choosing gears to drive the new drivetrain. The dynamometer allows torque to be manually adjusted, and also has software that can subject the motor to user-defined tests. The motor controllers were used in the tests, so torque could be related to the current to the motors and motor commands, which are both measured by the motor controllers. The results of the dynamometer tests can be found in the results section. These results were used for drivetrain gearing and sprocket choices.

28

Figure 10 - FBD of Vehicle Rolling Resistance

Now that the provided motor torque was determined, the gears could be determined to overcome the resistance measureed, while also minimizing the torque on the motors and providing adequate speed of the vehicle. These three factors were taken into consideration for the design. The forces acting on the vehicle are shown in the free body diagram above.

The diagram below illustrates the sprocket numbering system used in the gearing table. The left figure is above the hull and the right figure is below the hull and shows the drive axle with the fourth sprocket and the drive sprocket which drives the tank tracks.

29

Figure 11 - Gearing System Numbering Convention

The worst case force of 1,068 [N] (seen as half of this value in the table because there are two motors) was used as the force on the track drive sprocket, and because the radius of this sprocket was fixed, 47.5 [Nm] of torque required from the driveshaft could be determined. This torque is equal to the torque required by sprocket fouur, the chain driven sprocket on the same axle, in order to move the vehicle through the worst case scenario. Sprockets three and four were adjustable in the design. The force on the chain and the angular velocities of each shaft would vary as the sprocket sizes were changes.

The table shows that torques, forces and tangential velocities were shown at each point in the drive system, and varying the two sprocket sizes shown outlined in red would give different combinations of speed, forces and torques until an adequate design was found.

30

Table 2 – Gearing Equations

Gearing Table Variables and Equations

Rotations Per Minute ∗ 60

Rotations Per Second

Circumference 2

Tangential Velocity

Force

Torque ∗

Radius

31

Figure 12 - Gear Sysstem Torques

Below is a table that was used to find all torques, forces, speeds, RPMs and gear sizes of the new track drivetrain, and was useed to adjust the design until an adequate combination was found.

Table 3 - Gearing Spreadsheet

Radius [cm] 1.27 Radius [cm] 5.64 Radius [cm] 2.92 Radius [cm] 8.03 Radius [cm] 8.89 RPM 1 2600.00 RPM 2 585.59 RPM 3 585.59 RPM 4 213.11 RPM 5 213.11 RPS 1 43.33 RPS 2 9.76 RPS 3 9.76 RPS 4 3.55 RPS 5 3.55 Circumference [cm] 7.98 Circumference [cm] 35.43 Circumference [cm] 18.35 Circumference [cm] 50.43 Circumference [cm] 55.86 Tangential Vel. 1 [m/sec] 3.46 Tangential Vel. [m/sec] 3.46 Tangential Vel. [m/sec] 1.79 Tangential Vel. [m/sec] 1.79 Tangential Vel. [m/sec] 1.98 Force 1 [N] 306.25 Force [N] 306.25 Force [N] 591.19 Force [N] 591.19 Force [N] 533.76 Torque [Nm} 3.89 Torque [Nm} 17.27 Torque [Nm} 17.27 Torque [Nm} 47.45 Torque [Nm} 47.45

A four sprocket drive system was chosen because of the high RPM of the motors and the high torque requirement for moving the vehicle. The configuration allows for a large gear reduction, about 7:1, without the usse of a complex worm gear. The motor sprocket has a one 2.54 [cm] diameter while the final tread drive sprocket has a diameter of 17.27 [cm]. The chain that drives tthe drive axle is #50 roller chain, which 32

has a pitch of 1.6 [cm], and working load of 685 [N]. In the table shown, it can be noted this working load satisfies the force calculated on the chain in the predicted worst case scenario. This chain is 2 [cm] in width so sand does not significantly affect its performance. All sprockets, chain and drivetrrain componnents are stainless steel for corrosion resistance.

2.1.2 Electrical, Sensor and Control System Design

Below is a block diagram of the vehicles electronics layout. The waterproof electronics box is located on top of the vehicle super structure, and the hull boxes are attached to the top deck of each hull. The starbooard box conntains a motor controller and batteries for the land motors, and the port box contains the motor controller and batteries.

33

2.1.2.1 Single Board Computer (SBC)

The original model’s electrical system was upgraded to allow for improved data acquisition and added systems integration. The control system was designed around an

ARM9 based Technologic Systems TS-7800 processor. The TS-7800 is mounted on a new motherboard PCB and housed in the waterproof control box on top of the vehicle, and is easily detached for bench tests and development, as well as transfer to another vehicle. In order to isolate the control electronics from the noise generated by the drivetrain and propeller motors, this control box has its own power supply. The TS-

7800 is used because of its processing capabilities, the number of serial ports and the familiarity current FAU graduate students have with the system. Some of the notable specifications of this particular board are its 500 MHz ARM9 processor, its twelve TTL and RS232 serial ports, SD and micro SD card slots and a PC104 interface. The TS-

7800 uses a Linux operating system and its capabilities make it a good candidate for use in a future autonomous control system.

2.1.2.2 Sensor System

Autonomous vehicles rely heavily on a GPS and compass for position and heading measurements. To allow testing of the model, as well as autonomous navigation, a sensor suite was added, which includes a GPS enabled Inertial

Measurement Unit (IMU), Differential GPS (DGPS), tilt compensated digital compass, depth sensor and water sensors. There are also two motor controllers that drive the track system and propeller motors.

34

The GPS enabled IMU is an XSens MTI-G, and uses accelerometers and gyroscopes to measure accelerations, orientations and gravitational forces. This sensor is important in measuring motions the vehicle experiences in the surf zone. The

Hemisphere V111 differential GPS is a conventional GPS that also uses land based stations to correct any errors in location. It also has two GPS receivers so position data can be compared to improve accuracy. This technique lowers the normal ten meter GPS accuracy down to less than half a meter, based on manufacturer specifications. This accuracy is critical in vehicle testing because any discrepancies in the GPS position measurement would yield inaccurate results. An OceanServer OS5000 3-Axis tilt compensated compass gives vehicle heading, with a manufacturer stated accuracy of 0.5 degrees. The compass is tilt compensated, and pitch motions can be recorded with this sensor. These three sensors are all serial devices.

An RF transceiver is used for wireless communication between the vehicle and a shore based laptop monitoring station. The unit used is a 900 MHz XStream OEM RF transceiver module. This RF transceiver is mounted on the motherboard PCB and is used to send data between the shore station and the onboard TS-7800 computer. This provides a secondary source for data collection, in addition to saving sensor data onboard the vehicle. It also provides a means of monitoring and ensuring proper operation during testing and future autonomous navigation.

A depth sensor is used to monitor the water depth in which the vehicle is operating. This is important in testing as well as navigation. During testing, the depth was monitored to ensure sufficient depth was maintained, to avoid any discrepancies in

35

data due to bottom effects. In autonomous naviigation, it is assumed the vehicle will use depth sensor data to control which means of propulsion it requires to keep its course. In a similar regard, water sensors were installed on the front and rear of the vehicle to detect when it has entered or exited the water. The information from these analog water sensors will be used to control the type of propulsion the vehicle is using. The water sensors were designed and built in house and use a simmple circuiit located on the motherboard PCB. The schematics of the water sensor are shown below. The microcontroller sends an analog signal to the water sensor located at a part of the vehicle that would be submerged in the beach transition. The sensor consists of two leads, and when the circuit is shorted because it is in contact with water, the sensor notifies the control system using a digital I/O line.

Figure 13 - Water Sensor Schematiic

The RoboteQ AX2550 motor controllers are a standalone unit located in the battery boxes on each hull. They are dual channel motor controllers, so they can control two different motors simultaneously. Because the vehicle has both land and sea motors, 36

these controllers were ideal for the application. They use either serial or remote control communication, and are manually switched between the two depending on the application. The motor controllers can be controlled with RoboRun software, which allows bench testing, and the ability to operate the motors before installation on the vehicle. This software was also helpful in dynamometer testing. The software outputs voltage and current, and can also be used to record this information during testing.

RoboServer is another software function provided with the motor controllers.

RoboServer allows wireless communication between a host and server laptop. This allows a server laptop to be onboard the vehicle running the RoboServer software and connected to the motor controller via a serial port. The host computer runs the RoboRun software remotely and sends commands to the onboard server laptop. This means the

RoboRun data collection and motor command software can be controlled on-shore, while the vehicle navigates in the water, as seen in figure sixteen. This proved to be a very useful tool in testing, allowing data collection and adjusting motor commands wirelessly using the motor controller software. Below is a figure provided in the motor controller manual that explains how this function works.

37

Figure 14 – RoboteQ’s RoboServer Software Operation

When the motor controllers are being used without the manufacctures software during testing, data is transmitted viai the serial lline in a hexidecimal string. Below is the layout of the data string, and the Matlab section of the appendix shows how this data was read and plotted versus coordinated UTC time to syncronize motor data with sensor results.

Figure 15 - Motor Controller Hexadecimal Communication

38

A forklift style cargo handling mechaanism below was designed by the FAU senior design project team in 2010, and uses a winch, linear actuators and momentary switches to control the lifting and lowering of thhe arms. The vehicle’s cargo mechanism was designed to secure a 1/7th scale ISO conttainer for transport. The system requires minor electrical circuitry and this was added to the new electrical system so the cargo handling mechanism remained functional. The lifting system uses H-bridges, which allow for multi-directional power, for the ability to opeerate the electric motors in forward or reverse with the same circuit.

Figure 16 – Container Lifting Mechanism

2.1.2.3 Motherboard PCB

A printed circuit board (PCB) was designed as the motherboard which brings the electronic system together to interface with the TS-7800 computer. All vehicle sensors are either mounted on the board, or plug into the board from other locations on the vehicle. A PCB simplifies the wiring and circuitry needed to interfacce all sensors and vehicle systems. A high level block diagram of the sensors and their interface with the

TS7800 is shown below.

39

Figure 17 –Control System Block Diagram

The motherboard PCB was designed and fabricated in house. The PCB contains all circuitry needed to operate the vehicle in testing and during fuuture autonomous navigation. The vehicle’s IMU, compass, RF Transceiver and RC receiver are located inside the waterproof electronics box, and are mounted on the PCB. The DGPS, depth and water sensors, two motor controllers, and lifting mecchanism are found outside of the electronics box and are wired to the PCB thhrough waterproof bulkhead connecctors.

Each sensor or vehicle component has its unique circuitry required for power and data transfer printed on the board. This circuitry was designed, laid out on the PCB and sent for printing. Because each sensor has specific power requirements, and its data, both sent and received, must go to a specific port on the TS-7800, the PCB significantly reduces complex wiring requirements by printing it on a 33x20 [cm] board. All vehicle components plug directly to the board in a certain location and the circuits that integrate 40

each with the entire system is located on the PCB. Many different test points were added to the board layout to simplify debugging and testing.

Because there have been many autonomous vehicle research projects at FAU in recent years, an attempt to make a universal sensor and control system was made in this project. This would make the development of future projects a concentration of software, as opposed to sensor, electrical and hardware development, which was a large time consuming task in this, or any project. A PCB motherboard layout can take many weeks or months to design and draw schematics and board layouts, and many times these boards are very similar from vehicle to vehicle. The focus of the universal capabilities was in the electrical system and the integration with the SBC. Previous projects were taken into consideration when designing the control system on the

DUKW-ling. This mainly dealt with the addition of capabilities that are usually necessary on similar projects, such as extra analog inputs and spare serial lines easily accessible on the PCB motherboard.

The PCB was designed to provide the user with as many options as possible in sensors that could be used with this board. For serial communication, all RS232 serial ports were accessible through uniform plugs on the board. This allows any combination of sensors to be interfaced with the computer, and also helps in software testing and debugging. Even serial lines that were not used in this particular project were made available on the board. Three H-bridge circuits were included on the board for supplying power to various systems on future vehicles. In this case, the three H-bridges power the lifting mechanism’s winch and linear actuators. H-bridges allow voltage to be

41

provided to the circuit in either direction, which makes them ideal for controlling electric motors in forward or reverse.

A series of digital inputs and outputs were also made easily accessible through plugs on the PCB. Because these digital input/output lines are so general, and can be used to a variety of different applications, having access to them through the PCB will be useful for any project. In addition to the digital lines, twelve analog ports were made available through the PCB. Three of them are designated monitoring ports for battery voltage, current and H-bridge voltage. The board was designed to pass six of these analog lines through amplifiers, which provide either five or twelve volts. These amplified analog signals can be used for a load cell or other analog sensor frequently used in autonomous vehicle development.

An RC receiver was paired with a Pololu Maestro twelve channel servo controller in order to provide the option of controlling onboard servos remotely. This increases the usefulness of this board because of the amount of systems that can be controlled using a remote control, which is often performed in autonomous system development. The wiring diagrams and PCB layout diagrams can be seen in the appendix. Below is the developed PCB motherboard before it was installed on the vehicle. The red stack of two boards is the TS-7800 CBC board and the analog-to- digital converter board. The IMU and compass are mounted on the board but are not pictured below.

42

Figure 18 - PCB Motherboaard

2.2 Experimental Approach

Testing was performed to verify that the improved vehicle is capable of performing in the operational environments that its missioon will expose it to, land, sea and the transitional surf zone between the two, and to characterize the vehicle’s behavior for future research and development. In this highly dynamic surf zone, the forces and response characteristics of the vehicle need exploration through experimental testing. Determining the forces and behavior of the vehicle in this transition region is the first step in developing adequate models for control of an autonomous amphibious vehicle.

The testing conditions were mainly driven by the terrain available at FAU

Seatech and the Dania Beach coast. For land testing, the original requirement of a gradient of 1/50 was increased to 1/5, or about 10 [degreess], the average gradient of the test area, which was measured with a clinomeeter. The main fluctuating parameter in water-based testing was the weather, more specifically the waves present in the surf zone, which could not be dramatic because of the size of the vehicle model. During 43

initial vehicle testing, the maximum wave height and surf conditions for operation were defined, so testing could be limited to conditions within theese parameteers.

The waves were scaled geometrically based on the 1/7th scale of the vehicle model. The wave frequency, however, was scaled using the equation below, where T is wave period [29].

Sea state limitations were a restriction on test conditions. The model was tested only in conditions up to sea state one. Sea state 1 (SS1) includes waves less than 0.3

[m], with a period of 2 seconds. The wind speed is between 2.57 - 4.16 [m/s], and a wavelength of 3.04 - 4.88 [m].

2.2.1 Sensor and Test Equipment Calibration

IMU: The Xsens IMU was calibrated using software provided with the unit which compensates for disturbances in the magnetic field measureed by the IMU’s magnetometers. It is important not to expose the sensor to strong magnetic fields at any time because non-magnetic parts inside the unit may become magnetized as a result.

Because the magnetometers on the Xsens IMU use tthe earth’s magnetic field for operation, disturbances in this field will cause inaccurate results. Disturbances are typically characterized in two categories. Disturbances that are introduced by the sensor’s surrounding environment are random and cannot be predicted. An example of this type of disturbance is if the DUKW-Ling were to pass an oncoming containing

44

ferrous materials. These non-deterministic disturbances cannot be compensated for in advance. Therefore, a Kalman Filter running in the DSP reduces these types of errors.

The second type of error is called hard or soft iron effect. These disturbances can be compensated for prior to testing because they are a direct result from objects that move with the IMU sensor. Hard iron disturbances are caused by permanent magnets, while soft iron is metallic parts such as vehicle structure, drivetrain, etc. The error in the magnetic field is a function of the orientation of these objects to the sensor, and can be predicted. These deterministic effects are compensated for by calibrating the sensor prior to testing. As long as the orientation of the sensor and its surroundings is constant

(the vehicle’s components are not changed and batteries, motors, etc. are not moved), the calibration will yield accurate results.

In an ideal, non-disturbed magnetic field, the 3D measured magnetic field vector has a magnitude of one. Therefore, all measured point would lay on the circumference of a sphere with a radius of one and a center at zero. When disturbances are introduced, this sphere is shifted and warped. Assuming there are no non-deterministic errors causing this distortion, the sensor can be calibrated prior to testing to compensate for the warping. This calibration compensates for any deterministic, hard or soft iron effects, such as the vehicle’s motors, electronics, structure, etc. Because there is no way of differentiating between the two types of disturbances, it is important to calibrate the vehicle away from external disturbances that could distort the magnetic field, so that any disturbance during the calibration is caused by objects moving with the IMU on the vehicle. The Xsens user’s manual recommends the IMU be at least three meters from

45

any ferromagnetic objects in order to ensure a homogenous magnetic field for calibration.

To calibrate the sensor, it is placed in the location it will be during data acquisition, with all vehicle systems in place. The IMU data is recorded using the Xsens software. The vehicle is rotated 360 [degrees], at a speed that completes one rotation in three minutes, and the magnetometers collect data. Because the only interference is from on-vehicle noise, any warping or distortion in the data is a direct result from this hard or soft iron effect. Therefore, because the same interference can be assumed during testing, the calibration process will map the warped and distorted data into the sphere discussed above. This “magnetic field mapping” technique is carried out using the

Xsens software and calibration parameters are determined and can be saved on the sensor for future use, and calibration of test data. The magnetic field mapper is shown in figure 21 below. It can be seen that the blue distorted field is calibrated in such a way that the red, post-calibration map is symmetric and not distorted. The calibrated accuracy is now 0.7 degrees, and the deviation goes from 8.5% to under 0.5%. This process is also outlined in the Xsens IMU manual.

46

Figure 19 - Xsens Magnetic Field Mapper

Compass: Compass calibration is rather straightforward and is similar to that performed for any other magnetic compass. The compass, like the IMU, must be installed in its permanent location on the vehiicle with all other systems in place. The compass is set to a calibration mode using an RS232 command: 0x1b 0x43. It is then rotated in a full 360 [degrees] at a speed of abbout one rotation per minute. After this procedure, the calibration constants are saved to the sensor, although this procedure was carried out at the beginning of every day the vehicle was used for experiments.

After the initial calibration, a soft iroon calibration was performed. Soft iron compensation deals with disturbances from metallic materials on the vehicle. Another command is sent to the compass to enter soft iron calibration. Using a magnetic compass in an area free of other magnetic disturbancess, the vehicle is aligned to cardinal points: north, east, south, west. This calibration procedure will compensate for

47

the effects of metal material on the vehicle, and is described in detail in the OS5000

Compass manual.

Dynamometer: The Magtrol DSP6000 controller and dynamometer can be calibrated using two different methods. Both methods are “closed box” calibrations, meaning all adjustments can be made using the dynamometer controller’s display panel.

The first calibration technique adjusts the torque readout and auxiliary input. The calibration is carried out using an external reference voltage supply and a digital multi- meter (DMM). The DMM should have an accuracy of 0.05% or better. The calibration procedure was performed prior to any testing, and is recommended at least once a year, or after any modifications are made to the system.

The DSP6000 was turned on for thirty minutes before any calibration was performed. The DSP6000 was then switched to calibration mode by turning the instrument off, pressing and holding the up and down arrows on the display. Torque offset and gain is performed with the external voltage source. The ground is tied to pin thirteen and positive to pin fourteen of the DSP6000. A voltage of two VDC is applied.

The gain is adjusted until the display voltage equals the two VDC reference voltage.

Then a voltage of zero is provided and the procedure is repeated. Calibration results are saved on the instruments non-volatile memory for future measurements.

The second calibration procedure is dynamometer specific, rather than a calibration of the DSP6000 instrument. This procedure must be performed if the data acquisition DSP6000 unit is used on any other dynamometer. A calibration beam is provided with the dynamometer and used in this procedure. The beam is attached to the 48

dynamometer shaft, and the controller is switched to calibration mode. The dynamometer brake is turned on, and a known wweight is hung from the end of the beam at a pre-marked distance. Because the distance and weight provides a known moment on the dynamometer, the torque on the DSP6000 controller can be adjusted until it equals the known input moment caused by the hhanging one pound weight, shown in the figure below.

Figure 20 - Dynamometer Calibration

2.2.2 Vehicle Tests

Drivetrain conversion improved the capabilities of the vehicle; previous tests using the original vehicle drivetrain could not explore the vehicle’s transition to the beach because of the limitations associated with the five-wheeled drivetrain. The vehicle upgrades allowed testing in this area of interest. Testing began with qualitative tests to understand the abilities of the model with its new drivetrain. Understanding the

49

operational limitations of the vehicle and the performance of the new drivetrain were necessary for this project, as well as future projects that propose further testing of the model. The model was operated by remote control in the different environments it was required to operate. The main reason for these initial tests were to locate any problems with the new vehicle system before any performances tests were conducted. Limitations of the vehicle, such as the maximum incline it could climb, approach and departure angles, rough estimates of its turning radius both on land and sea were noted so that test plan development could take these parameters into consideration. An estimate of the maximum wave height the vehicle could encounter was also determined to limit any testing that could damage the vehicle.

As software was written, each sensor was tested for proper data collection and storage. Initially, both a turning circle test and random zigzags were performed while collecting data from each sensor independently. Because of the predictable motions of a constant circle or alternating headings, sensors such as the compass, DGPS, compass and IMU were tested with this method to verify they were collecting and saving data with the onboard computer. Quickly plotting the collected data could verify if the data was relevant to the specific test. The software was also designed to save its data onto a

USB drive, as a backup data collection tool and a way to transport it to a laptop. These tests were also used to test the motor controllers. They would save information during the test such as motor commands, current and voltage as well as internal temperature.

Once all sensors were collecting and properly saving data, more complex testing was planned. A description of each area of testing is shown below with a description of

50

the test, the equipment needed and a description of the area the test was performed, as well as any other relevant information for each ttest.

2.2.2.1 Rolling Resistance Testing

The rolling resistance tests were the first tests performed on the vehicle after the drivetrain was complete. These tests were critical for proper drivetrain gearing. The motors were removed from the vehicle, and the tracked vehicle was pulled by a load cell until it began to roll. The load cell was set up to record the maximum force measured. The sensor was initialized when the ttow line was held taught, and the pulling force was slowly increased until the vehicle beegan to roll. This test was performed in different areas of the beach, on wet sand (pictured below), dry sand, up inclines as well as partially submerged. The results of this test can be seen in the results section. The maximum force measured in these tests was used to determine the correct gearing required for the vehicle’s drivetrain; an additional twenty percent margin of error was added.

Figure 21 - Rolling Resistance Tests

51

2.2.2.2 Maximum Incline and Approach/Departure Angles

Approach and departure angles are the maximum angles of obstacles the vehicle can encounter without dragging its hulls. The tank track drivetrain was designed to maximize these angles, by lowering the track below the hulls to avoid contact with the ground in most expected situations. These angles were found on flat ground using an inclinometer.

The maximum incline the vehicle is able to traverse on sand was also found through experiment. The current to the motors was measured during this test to understand the strain put on the electric motors during these large incline situations.

This test helps define a safe operating limit for the vehicle when planning tests and vehicle operation. While the vehicle may be able to traverse a large incline, the duration of this slope should be limited based on the measured current to the motors. An increased power draw to the motors for an extended period of time can damage them. A variety of inclines were tested to show the current draw in the motors to help avoid damage in testing as well as during autonomous navigation.

2.2.2.3 Land Maneuvering Characteristics

Minimum turning radius: the minimum turning radius on flat sand was measured. Because the vehicle can also turn on axis by putting one track in forward and one in reverse, this test ensured both tracks were in motion to find the minimum turning radius while keeping forward momentum, and not pivoting on its axis. The GPS was used to measure the position of the vehicle. The radius was also measured by measuring

52

the diameter of the circle the vehicle traveled during the test. The test was performed in both directions. The vehicle is shown in the test area in figure below.

Figure 22 - Vehicle During Land Testing

Maximum Velocity and Acceleration: The vehicle was tested on flat sand, and the GPS and IMU were used to measure the vehicle’s maximum acceleration and velocity. The motor controllers were also used to record the motor commands, current and voltage to the motors as the test was performed.

Motor Command Testing: These tests are a traditional turning circle maneuver, but performed over a range of virtual rudder deflections. Because the vehicle uses differential thrust as opposed to a traditional rudder, a virtual rudder refers to different combinations of thrust between the port and starboard motors. An equation for defining a virtual rudder is shown below, where is the rotations per minute. Because this is not measured on the DUKW-Ling, the motor commmand was used, because for the electric motors the voltage setting is related linearly to RPM. 53

δ ||

A turning circle test reveals tactical diameter, advance and transfer. Speed loss, roll angle and peak/final yaw rates were also recorded during these tests.

Figure 23 - ABS Turning Circle Test [39]

The different combinations of motor commands were performed, and the vehicle’s response to these commands was measured. This information will be useful in the development of autonomous control, as this input-output data can be used to determine how the vehicle will react to different motor commands to perform different maneuvers autonomously. The yaw rate measured in these eexperiments can also be used for control system development.

54

The vehicle began with a straight forward motion until steady state is reached, then different combinations of motor commands were given to each motor and the IMU,

GPS and compass measured the result of each “virtual rudder” command. The time the vehicle was able to drive at steady state was significantly affected by the small size of the test area, which was a limiting factor in these tests. Because this is a tracked drivetrain and its reaction to different motor commands will be unique to the vehicle, this information is important in the design of autonomous control. The table four shows the different motor command combinations that were used in testing. The maximum motor command is 127 (a hexadecimal value), but for simplification of test results, a round value of 125 was used.

Table 4 - Land Motor Inputs for Motor Command Circle Tests

Motor Controller Commands: Land Left Turn Right Turn Port Starboard Port Starboard 35 55 55 35 45 55 55 45 35 75 75 35 45 75 75 45 45 105 105 45 55 105 105 55 75 105 105 75 45 125 125 45 55 125 125 55 75 125 125 75 105 125 125 105

The DGPS, IMU and compass were used to collect vehicle position, motions and heading, and the rate of turn for each set of motor inputs was found, as well as the turning radius for each case. This result of this test is a set of inputs and outputs specific

55

to the vehicle for different motor commands. A Matlab code was developed to parse the

GPS data, save the position coordinates and save them in Excel format, plot position coordinates in Google Earth and Google Maps, as well as plot heading, velocity and rate of turn (yaw rate), versus coordinated UTC time. The motor controllers were also used to collect motor data during the tests. In the results section 3.1.1.4 below, the motor controller data (system inputs) will be provided, along with the resulting system output, or sensor data. The sensors will record information such as: velocity, yaw rate, position, heading, roll, pitch and yaw. All sensors collected data with a UTC time stamp so all data could be synchronized.

These tests give similar information as a standard turning circle maneuver as described in [39]. However, a turning circle test only uses one deflection of the rudder of about fifteen degrees, which only gives data for this single case. Because the goal of this work is to provide a comprehensive set of data that is useful for autonomous control system development, many combinations of motor commands were tested to give the complete range of input/output relationships pertaining to the vehicle. This is in hopes that the autonomous system can use this information to better control the vehicle as the response to the full range of motor inputs is well defined.

2.2.2.4 Sea Maneuvering Characteristics

Minimum turning radius: The minimum turning radius was found in calm water.

As in land testing, the test found the minimum turning radius while keeping forward momentum. A second test was also performed, pivoting the vehicle on-axis by putting one motor in forward and one in reverse to determine the response of the vehicle. The

56

GPS was used to measure the position of the vehicle in both cases. The radius was found by measuring the diameter of the circle the vehicle traveled during the test. The test was performed in both directions.

Maximum Velocity and Acceleration: The vehicle was tested in calm water, the

GPS and IMU were used to measure the vehicle’s maximum acceleration and velocity.

The motor controllers were also used to record motor commands, current and voltage to the motors as the test was performed.

Motor Command Testing: As in land testing described above, different motor commands were given to the after the vehicle was in steady state. The vehicle’s responses to the motor commands were recorded by the IMU, GPS and compass. Table five shows the different combinations of motor commands provided to the propellers. The rate of turn and turning radius for each case was also found. The full description of this test can be seen above in the land testing section.

Table 5 - Water Motor Inputs for Motor Command Circle Tests

Motor Controller Commands: Water Left Turn Right Turn Port Starboard Port Starboard 080800 ‐40 80 80 ‐40 ‐80 80 80 ‐80 0 100 100 0 ‐40 100 100 ‐40 ‐80 100 100 ‐80 ‐100 100 100 ‐100 0 125 125 0 ‐45 125 125 ‐45 ‐85 125 125 ‐85 ‐125 125 125 ‐125

57

These values are different from land tessting because the land test combinations did not provide an adequate turning radius. The vehicle had to utilize differential thrust with one motor in reverse to provide a relevant turning mmaneuver. For example, the combination of 75 and 45 used in the land testts would, in water, produce a slight track to one side, but not a turning maneuver.

Maneuvering Tests

Figure 24 – Autonomous Control

Figure 23 shows a typical block diagram for the control of a vehicle [11]. It can be seen that understanding the vehicle’s dynamics is an important step in controlling it.

Because autonomous control of amphibious vehicles is a new area of research, the dynamics of these types of vehicles is poorly characterized, and control system development requires experimental testing, modeling and validation [36]. Most important for defining vehicle dynamics are systems identification, maneuvering tests, performed while collecting necessary data.

Systems identification is necessary for the development of autonomous control, and dynamic behavior is unique to different vehicles [11].. The data acquired by open-

58

loop tests can be used to derive coefficients for maneuvering equations. Most of the

ABS recommended maneuvering tests were performed to characterize the dynamic behavior of the vehicle. The maneuvering test performed with the DUKW-Ling are described below.

Turning Circle Test: The traditional turning circle test is one of the most popular tests performed in maneuvering trails. However, this test was combined with the motor command tests in this work to provide a more complete set of data with more relevant results. See motor command testing above for turning circle test results. The vehicle was given a variety of different motor commands, or virtual rudder deflections, and performed a turning circle test as well as a pull out test.

Pull-out Test: A pull out test is a classic maneuvering test that shows the dynamic stability and course keeping ability of a vessel [39]. Pullout tests were performed after completing each turning circle test, which reveals if the vehicle is dynamically stable and able to keep a course. After the turning circle test, the virtual rudder is returned to zero, or no deflection, with equal motor commands. The track the vehicle takes after this command reveals the vehicles straight course keeping ability. If it returns itself to a straight course after the rudder is returned to the neutral position, then it is dynamically stable. It is important to understand the vehicle’s response in the pull out test because a dynamically unstable vehicle must be controlled differently in autonomous navigation than a stable vehicle. This course keeping ability was also explored in the straight course tracking tests, and it was determined the “propeller walk”

59

of the vehicle caused a dynamically unstable situation, which will be discussed in the results section.

Zig-Zag Test: The zig-zag test is a standard test performed in maneuvering experiments. It provides the vehicle with alternating rudder commands and the vehicle’s response, specifically its velocities and yaw rate, are measured. The test reveals heading and turning controllability. Typical zig-zag testts use a ruddder deflection of ten degrees until a heading change of ten degrees is seen. In this testing, because the vehicle uses differential thrust, five different virtual rudder deflections were used to provide a variety of results. This zig-zag test was performed on land as well as in the water.

Figure 26 shows a typical zig-zag test used in standard maneuvering tests.

Figuure 25 - ABS Figure Zig-zag Maneuvering Test [39]

The data collected from these zig-zag tests is useful in systems identification.

Matlab’s Systems Identification toolbox was used to estimate a model of the DUKW-

60

Ling vehicle based on the zig-zag test results. This model will be a good starting point for the next step of the planned work on this vehicle, which is autonomous control system development.

2.2.2.5 Dynamometer Testing

To determine the drivetrain forces experienced by the vehicle as it traverses the surf zone region, the motors were characterized using a dynamometer. A Magtrol dynamometer was available at FAU Seatech and could be used with minor modifications. The results from dynamometer testing were also used to determine proper gear ratios in the vehicle drivetrain design (discussed in section 2.1.1), in addition to measuring required drivetrain forces in the transition zone. The dynamometer tests were used to define an equation that related the current to the motors to the torque output. This value was then used to relate the current to the motors to the force on the tracks, by using the drivetrain gearing ratios described in section 2.1.1. This allowed the force on the tracks to be measured by recording the current to the motors with the RoboteQ motor controllers.

2.2.2.6 Transition Region Tests

The transition zone is the biggest uncertainty in this concept, and data on how the vehicle performs in this zone is necessary for continuing this concept’s development. The forces and motions the vehicle experiences in this region were expected to be very different from those experienced on land or at sea, however no experimental data is available for this type of terrain. In addition, understanding the

61

drivetrain control forces required to maneuver in the surf zone is important for full-scale design [36].

A vehicle navigating through breaking waves in the surf zone is a demanding task, and understanding the motions the vehicle will encounter in this area is important for full scale vehicle development. The development of the autonomous control system will also need to take these motions into account, making sure it can correct the course fast enough in this highly dynamic region. While relating the motions to exact wave height, period and direction is nearly impossible in an environment other than a wave tank, the vehicle motions can be related to the measured wave characteristics, and the results are mainly meant to be used to develop future tests that can utilize a controlled test facility such as a wave tank. The fact that the waves in this region are breaking waves further complicates the ability to accurately model the waves.

Defining the vehicle motions in certain wave heights and periods can be beneficial in future test development as it provides a range of measurements that can be expected in controlled tests, and testing procedures can be based on the results found in this work. In addition to providing data on vehicle motions expected in the surf zone for continued development of this concept’s autonomous system, the results provided in this work will give future test developers data to base their experimental set up on for surf zone experimentation, whether it is specifically this concept or a similar surf zone traversing concept. Because this is a new area of research, there is no other way of estimating these vehicle motions compared to different wave conditions, so experimental data will be useful for future development in this surf zone area.

62

These motions also are also crucial in autonomous control system development because they give engineers developing such a system a quantitative measure of the variations in vehicle heading that the control system must adjust for. Variables such as system gains can be estimated with the results of these tests, and give a data set which can help predict proper control system design.

Another benefit to these tests is that they confirm successful operation of the designed system in this area. The vehicle’s electronic system, sensor package, drivetrain and initial code development could all be tested for proper operation as the vehicle traversed this hazardous area, to ensure proper system design for later autonomous tests.

These tests were performed in the same fashion that would be expected in autonomous navigation. The vehicle was driven through the surf zone with its tracks engaged, then through the transition region and onto the beach. Its heading, motions, position and motor data were all recorded as it made this transition. Measuring the current to the motors gave data that could be used to define the drivetrain forces required to navigate through the transitional surf zone area; a requirement of the concept development. This was documented by CISD as a necessary data needed for continued development. The dynamometer tests described above were performed to relate the measured motor current to a torque output of the motors, which will be described in the results. Knowing the torque applied at the motors can be related to a force output on the tracks by the gearing table shown in section 2.1. A Matlab code was written that takes the measured motor current from a test, then determines, from the dynamometer results, the torque output of the motor. This torque output is then related

63

to the applied force on the tracks. This code can be found in Appendix 2, and will be described in detail in Chapter 3.

A range of different motor commands were used in testing. Also recorded were weather information and wave characteristics as the vehicle navigated through the transition area. The vehicle was tested from very low speeds to full vehicle speed, not only to define its characteristics in each situation, but also to define the best speed for making the transition when the vehicle is autonomous. It will be important to define a speed which lets the vehicle perform the transition between land and sea successfully, while demanding the least amount of drivetrain strain. This speed can be used for autonomous navigation as a design speed to navigate the transition zone. The motors were run at 80, 90, 100, 110 and 125 for these transition tests.

64

3 RESULLTS

3.1 Vehicle Tests

After mechanical and electrical system design andd fabrication, the vehicle was tested in a variety of different tests described above. Some of these tests provided results only, while others provide results that arre interpreted and discussed below.

3.1.1 Rolling Resistance Testing

Rolling resistance testing was used to determine the proper gear ratio for the land propulsion system. By testing the vehicle in the test zoone it would be operating in, and finding the maximum resistance experienced, the gearing system could be designed to allow the vehicle to operate in this area. Designing the vehicle’s drivetrain gearing system based on the maximum resistance force found in the test area would ensure the vehicle would be able to execute any maneuver during system development and testing.

65

Table 6 - Rolling Resistance Test Results

Flat Solid Ground [N] Hardpacked Sand [N] Dry sand [N] 10 Degree Incline [N] 18 Degree Incline [N] Partially Submerged [N] 155.69 480.41 524.89 578.27 765.09 524.89 146.79 498.20 551.58 551.58 800.68 542.68 155.69 435.92 667.23 524.89 685.02 711.71 151.24 515.99 667.23 515.99 685.02 889.64 151.24 444.82 685.02 529.34 733.95 889.64 146.79 507.09 640.54 542.68 756.19 596.06 164.58 489.30 711.71 520.44 765.09 747.30 146.79 480.41 760.64 529.34 711.71 667.23 155.69 418.13 729.50 520.44 707.26 720.61 151.24 489.30 685.02 489.30 716.16 707.26 146.79 515.99 765.09 515.99 702.82 760.64 173.48 524.89 747.30 511.54 760.64 725.06 155.69 524.89 711.71 560.47 711.71 662.78

The maximum resistance force found in experiments was about 890 [N], as highlighted in table 6 above. This is almost double the average resistance found when the vehicle was tested on hard-packed sand. The partially submerged tests took place in a water depth of between 15 to 30 [cm]. This proved to be the highest resistance the vehicle would experience, due to the fact it was not only driving through soft, wet sand, but also had the added mass of the water to overcome in this region as it is accelerated from rest. It will be seen in the transition test results shown below that this added mass is also apparent in these tests. In the transition tests, the current to the motors, and effectively the torque required to move the vehicle, drops off as the vehicle comes ashore.

The maximum force of 890 [N] found in testing was used in drivetrain design, with a 20% margin of error added to it or 1068 [N]. A proper gear ratio that provided the torque required to navigate this area, while also keeping the current to the motor at a safe operating level was found based on these results. This final gearing design was provided in above in Section 2.1.1.

66

3.1.2 Locating Vehicle Center of Mass

It was important to locate the vehicle’s center of mass because this is the point in which the vehicle’s motions pivot around. This is important in both testing as well as systems identification. To find the vertical position of the center of mass, or the distance from the bottom of the vehicle to the position of the center of mass, the pendulum method was used. While collecting data witth the onboard IMU, the vehicle was suspended using the davit at the Seatech campus. It was then displaced a small angle and swung like a pendulum.

Figure 26 - Center of Maass Pendulum Test

The distance from the top of the vehicle to the pivot point of the pendulum was known, as shown in the figure above, and the IMU collected roll, pitch and yaw data versus time. Because a pendulum has a straightforward equation relating its frequency

67

and length, it is easy to find the center of mass, or end of the pendulum, by measuring the period of the roll, pitch and yaw motions. By rearranging the below equation, an equation for the length of the pendulum can be found as a function of period [31].

2

2

∗ 2

This period, however, is a damped period. To find the correct position of the center of mass, the un-damped natural frequency must be used. To find this natural frequency, the formula below is used, where ζ is the damping ratio.

The fact that the damped response observed in this experiment is a logarithmic decrement helps define the damping coefficient. For a logarithmic decrement, the value of below can be found using the results measured by the IMU.

1 ζ 2 1

1 ∗ln

68

Where is found by comparing the amplitudes of two peaks measured in the data. is the larger of the two amplitudes and is the smaller amplitude. The value is the number of periods separating the two amplitudes. In the below plot of roll versus time in the pendulum experiment. , and are showwn. This calculation can be found in its entirety in Appendix 2.

Figure 27 - Roll Responsee in Pendulum Test

Once the damping ratio is known, the orriginal equation can be used to relate the measured, damped frequency, to the un-damped natural frequency. This un-damped natural frequency is then used to find the length of the pendulum. Subtracting the length of the pendulum from the known distance from the top of the vehicle to the pivot of the pendulum gives the distance from the top of the vehicle to the center of mass. The length of the pendulum was found to be 4.23 [m]. Subtracting the 3.31 [m] of pendulum length measured from the top of the vehicle to the pivot, this gives that the center of 69

mass is 0.92 [m] from the top of the vehicle. Measured from the keel, or bottom of the tracks, as it is traditionally expressede , this gives a KG of 0.5024 [m]. It is suggested that this test be carried out again if future work requires the position of the center of gravity as any change in the general arrangements of the vehicle’s systems will have an impact on the exact location.

3.1.3 Dynamometer Testing

The electric motors originally installed on the vehicle were tested on the dynamometer. The dynamometer allows for a broad range of tests to be performed.

Measuring RPM, current, voltage and torque are all possible on the device and its software. After initial dynamometer testing of the motors, it was found that both yielded the same results, so later tests were only perfoformed with one motor for simplicity of reporting.

The first test related torque and current at constant motor RPMM. Because they are electric motors, the torque increases linearly with current, and the RPM increases linearly with voltage. This linear relationship between torque and current at different motor RPMs can be seen in the figure below.

70

50

45 260 RPM 520 RPM 40 780 RPM 1300 RPM 35 1560 RPM 1950 RPM 2200 RPM 30

25

Current [amps] 20

15

10

5

0 0 0.5 1 1.5 2 2.5 3 3.5 4 Torque [N-m]

Figure 28 – Dynamometer Test Results: Current-Torque Relationship at Different RPMs

From these results, because of the linear relationship found between current and torque (characteristic of electric motors), an linear equation was found which relates any current to the corresponding torque output of the motor. This equation was used in determining the motor torque output based on current data collected during testing by the motor controllers. Using this equation, and measuring the current to the motors, the torque produced by the motors is defined. Once this torque is known, the gearing table provided in section 2.1 can be used to relate the motor torque output to the force on the tracks. Once this relationship is determined, it is now possible to use the motor current data and calculate the force on the tracks when the vehicle is operated. This procedure can be found in the Matlab code section of the appendix. The relationship between

71

current and torque is given in the end of this section, and is used in code with relates current to motor torque, and track force.

The next dynamometer tests used a predefined test in the dynamometer software. This test ramped up the torque to a user specified maximum, and measured the motor RPM. This test was performed five times and yielded nearly identical results each time. The electric motors are rated at 900 Watts, and have a maximum RPM of

2,600. With these known values provided by the manufacturer, it is possible to predict the torque output of the motors with the below equation.

5252 ∗

Using the given values, a torque of 3.28 [Nm] is calculated. This value can also be seen in the above figure to be accurate, as the current peaks to the maximum rating of 35 [Amps] at this calculated torque. This value is a safe operating torque provided by the motor at full RPM, and not exceeding the rated current of the motors. It can be assumed the motors can provide a higher torque both at lower RPMs as well as with an increased current. Supplying a current above the rated value of 35 [Amps] will not cause damage if these instances of high torque requirements do no last more than a few seconds at a time. It was assumed for short dynamometer tests, which last less than fifteen seconds, the rated current could be exceeded without damaging the motors. The maximum applied torque was set to 8.13 [Nm] in the below test and this value was never reached.

72

3000

Test 1 Test 2 2500 Test 3 Test 4 Test 5 2000

1500 RPM

1000

500

0 -1 0 1 2 3 4 5 6 7 8 9 Torque [N-m]

Figure 29 - Dynamometer Test Results: RPM-Torque Relationship

The above graph shows an increase in torque at lower RPMs, this can be explained by the V=IR relationship. The cusp in the graph above shows the power limit of the motor controller. At this point, the power limit is reached, and the motor controller will adjust its current limit slowly to provide an adequate torque output seen above. This is a characteristic found on many electric motor controllers.

The last dynamometer test was performed to define the torque output of the motors, and the results are shown in the figure below. The torque output was related to the current into the motors at different motor commands. This data was used to define the torque required to move the vehicle by measuring the applied current during testing.

73

3

Motor Command: 50 Motor Command: 70 2.5 Motor Command: 80 Motor Command: 90 Motor Command: 100 2 Motor Command: 120 Motor Command: 125

1.5 Torque [N-m] Torque

1

0.5

0 0 5 10 15 20 25 30 35 40 45 50 Current [amps]

Figure 30 - Dynamometer Test Results: Current Torque Relationship for Different Motor Commands

Again, because of the characteristics of electric motors, it was predicted that this would result in a linear relationship between current and torque. Because of this linearity, different motor commands can be estimated without explicit testing of each, as well as higher measured current readings. As described above, the linear relationship makes it possible to define a relationship that can be used to relate current and the torque output of the motors.

The formula used to relate the motor current measured to the force on the track is shown below, and the Matlab code which converts test data to track force can be found in the appendix.

2.4868 ∗

This formula was found by the linear relationship of motor current and output torque. A curve was fit to the data from the dynamometer test results, and the slope of

74

this equation was used to relate any current to a torque output of the electric motor.

Then, the gearing table was used to relate tthe torque output of the motor to the corresponding force on the track. Because this relationship is also linear, due to the gearing setup of the drivetrain, these two relationships can be used to define a formula relating the torque on the track to the torque outtput of the motor. Dividing the torque on the tracks by the radius of the drive sprocket give the force on the track, which is related to the current input of the motors through the dynamometer results.

3.1.4 Maximum Incline and Approach/Departure Angles

Defining the maximum incline the vehiicle can travverse, as well as the approach and departure angles it is capable of traversing, are both important in limiting damage to the vehicle’s hulls or drivetrain in testing. The approach angle is the angle on the forward part of the vehicle, and limits the obstacles the vehicle is capable of traversing.

The departure angle is the angle made by the rear of the drivetrain and the skeg of the propeller. This departure angle is also the maximum inline the vehiccle is capable of traversing before the propeller is dragged. The approach angle was measured to be twenty degrees and the departure angle and maximum traversable incline is eleven degrees. These angles are illustrated in figure 29.

75

2

Figure 31 - Vehicle Approach and Departure Angles

During autonomous system developmeent, these angles can be used to limit hazardous situations, as the system can monitor the pitcch angle of the vehicle as it navigates, and avoid the maximum angles found above. This technique can only be used when driving on a level surface.

The maximum traversable incline was noted as an unknown that needed to be defined by the CISD for the autonomous modeling develoopment. While this angle was defined through testing, the tests also aimed at giving future test developers information on the power draw of the motors during these demanding maneuvers. While the vehicle may be able to traverse a steep incline, the strain on the motors for an extended period could cause damage. To understand this, the vehicle was operated on different inclines to define the current draw by the motors. The electric motors are rated for 35 [Amps], and while this value can be exceeded for a short period of time, a high current for an extended period will damage the motors. The angle the vehicle is traversing is easily

76

monitored by the onboard sensors, so both testing and autonomous navigation can monitor this incline, and from the test results described below, damage can be avoided by avoiding prolonged incline traversing.

The vehicle was tested on the beach on inclines of 11, 14 and 19 [deg]. During the vehicle’s operation on these inclines, the current to the motors was measured and recorded, along with IMU data, most importantly the pitch angle.

The vehicle was operated at an equal motor command of 100 to both port and starboard motors for each test, the port and starboard motor current, force on the tracks and IMU pitch angle are shown in the figures below.

It is important to note that a data collection error occurred so the motor data is not synchronized with the IMU data (for these incline tests only). Therefore the motor current and forces are plotted vs. time step rather than coordinated time as in other data presentation.

Figures 31 and 32 show the pitch angle, which is the angle the vehicle is

traversing. The vehicle was started at the base of the incline and stopped immediately

77

after the incline, so the motor data is when the vehicle is operating on this incline.

100 50 0

Port [Amps] Port 0 20 40 60 80 100 120

100 50 0

Stbd [Amps] Stbd 0 20 40 60 80 100 120

1000 500 0 0 20 40 60 80 100 120 Port Force [N]

1000 500 0 0 20 40 60 80 100 120 Stbd Force[N] Time Step

Figure 32 - Motor Data 11 Degree Incline Test

16

14

12

10

8 Pitch Angle [deg] 6

4

2 40 50 60 70 80 90 100 110 Time [sec]

Figure 33 - Pitch Angle 11 Degree Incline Test

78

Table 7 gives the average values found in this test while operating the vehicle up an 11 degree incline. It was found that the average current was just above the rated motor current. This means the vehicle is able to traverse an 11 degree inline safely for a period of time without causing severe strain on the electric motors. The force on the tracks during this incline test was found to be significantly larger than the force on the tracks during the beach transition results, shown later in this section. The average value of the beach transition tests was 183.68 [N], where it was found here to be 317.73 [N], about 58% larger.

Table 7 - Average Current and Track Force in 11 Degree Incline Test

Average Current Port [Amps] 35.36 Average Current Stbd [Amps] 42.53 Average Force Port [N] 288.47 Average Force Stbd [N] 347.00

The next incline test was performed on a 14 degree incline. Again, the motor controller data was recorded without a UTC timestamp, so it will not be plotted versus time in the below graphs.

79

100 50 0

Port [Amps] Port 0 20 40 60 80 100 120 140

100 50 0

Stbd [Amps] 0 20 40 60 80 100 120 140

1000 500 0 0 20 40 60 80 100 120 140 Port Force [N]

1000 500 0 0 20 40 60 80 100 120 140 Stbd Force[N] Time Step

Figure 34 - Motor Data 14 Degree Incline Test

18

16

14

12

10

8

6 Pitch Angle [deg] 4

2

0

-2 30 40 50 60 70 80 90 Time [sec]

Figure 35 - Pitch Angle 14 Degree Incline Test

80

The average value of the beach transition tests was 183.68 [N], where it was found here to be 339.34 [N], about 85% larger. This test showed an average force roughly 6% larger than the 11 degree incline.

Table 8 - Average Current and Track Force in 14 Degree Incline Test

Average Current Port [Amps] 39.49 Average Current Stbd [Amps] 43.69 Average Force Port [N] 322.17 Average Force Stbd [N] 356.50

The final incline test was performed on a 19 degree incline. This test showed the operating limits of the vehicle. The vehicle was unable to traverse this incline, both because of power and physical limitations. The vehicle was unable to keep forward momentum during the test up the incline with motor commands of 100. Although it may have been possible to execute the test with full power to both motors, physical limitations on this steep incline were found to hold back the vehicle. The rear of the vehicle, specifically the bottom of the propellers, came into contact with the flat sand when the vehicle was inclined in this test. Therefore this was found to be the limit on the traversable slope of the vehicle. Below is the motor data and pitch angle of the vehicle. In this test, the motor data was collected synchronized with the IMU data, so the X axis timescales are the same, and the data is shown below.

81

200 100 0 Port [amps] Port 20 25 30 35 40 45 50 55

200 100 0

Stbd [amps] 20 25 30 35 40 45 50 55

1000 500 0 20 25 30 35 40 45 50 55 Port Force [N]

1000 500 0 20 25 30 35 40 45 50 55 Stbd Force[N] Time [sec]

Figure 36 – Motor Data 19 Degree Incline Test

25

20

15

Pitch Angle [deg] 10

5

20 25 30 35 40 45 50 55 Time [sec]

Figure 37 - Pitch Angle 19 Degree Incline

82

The current draw measured in this test were 66% larger than the rated 35

[Amps] of the motors. If the vehicle was subjected to an incline this steep for an extended period of time, motor damage would occur.

Table 9 – Average Current and Track Force in 19 Degree Incline Test

Average Current Port [Amps] 54.83 Average Current Stbd [Amps] 61.46 Average Force Port [N] 447.39 Average Force Stbd [N] 501.45

The results of these tests show that the vehicle should not be operated over inclines of 10 degrees for extended periods, ass the high current could cause damage to the electric motors. Testing conditions should be limited to this value whenever possible so vehicle damage will not occur. Additionally, inclines over 15 degrees should be avoided at all times, as physical damage can occur to the vehicle’s propellers or other parts of the vehicle hull.

This information should be taken into account when choosing a test area for the vehicle, and the autonomous system should be designed to monitor this slope using the

IMU to avoid prolonged operation on inclines over 10 degreees.

3.1.5 Land Maneuvering Characteristics

Minimum turning radius: The minimum turning radius was one of the variables reported as an unknown that needed to be ddetermined for further development of autonomous algorithms by the CISD. To deterrmmine this value, the results of the motor command tests (described below) were used. The tightest turn the vehicle is able to make while keeping both tracks in motion is 100% power on one track and roughly

83

30% on the other. Any command lower than these caused undesirable results as the vehicle would drag one track and cause a sideways sand-plowing effect with its inside track. This safe operating turn is a motor command combination of 125 on one motor and 45 on the other, and provides a very tight turn in both directions. Figure 37 shows this turn in both the right and left directions. It should be mentioned that the vehicle is capable of sharper turns than this, and can even pivot by putting one track in forward and one in reverse. However, these maneuvers should be used for occasions such as when the vehicle is in close proximity to an obstacle, and not used for normal navigation. The strain these maneuvers put on the vehicle’s drivetrain make them best used only when required. The turning radius with motor commands of 125 and 45 result in a fairly tight turn while keeping forward mommentum. This should be the tightest turn the vehicle needs to execute most of the time, reserving the extreme turns for situations that absolutely require them. As shown below, the 125 and 45 motor commands gives a turning radius that is roughly one vehicle length.

Figure 38 - Minimum Turning Radius on Land

84

To find the diameter of the circle completed by the vehicle, the data was condensed to only the middle circle, as shown below. This procedure can be seen in attached Matlab code (Appendix 2), and shown in figure 38.

Figure 39 - Clipped Data to Calculate Minimum Turning Radius

To find the diameter of this circle, the maximum and minimum latitude were found, as well as the maximum and minimum longitude. These four points correspond to the northern-most, southern-most, eastern-most and western-most points of the circle.

Then the Haversine formula was used to find the distance between these points. The

Haversine fof rmula is used to find the distance between points on a sphere. By using the radius of the earth, one can use this formula to find the distance between GPS coordinates.

By finding the distance between the maximum and minimum latitudes, the vertical, or north-to-south diameter is found. Simmilarly, finding the distance between the

85

maximum and minimum longitudes gives the horizontal, or east-to-west diameter.

These values, as well as the coordinate points used in the calculations, are shown in

Tables 10 and 11 below.

For a right turn at motor commands of 125 port, 45 starboard, a turning radius of

2.4 [m] was found.

Table 10 – Coordinates for Minimum Right Turning Radius Calculations

Maximum/Minimum Latitude Points Latitude Longitude Maximum/Minimum Longitude Points Latitude Longitude Northern‐most [decimal coordinates] 26.05514067 ‐80.11260933 Eastern‐most [decimal coordinates] 26.05503883 ‐80.11233983 Southern‐most [decimal coordinates] 26.05502201 ‐80.11258117 Western‐most [decimal coordinates] 26.05514051 ‐80.11261033 Distance Between Points [m]4.9 Distance Between Points [m] 4.7

Similarly, for a left turn at motor commands of 45 port, 125 starboard, a turning radius of 3.73 [m] was found. Which gives an average turning radius 3.06 [m].

Table 11 - Coordinates for Minimum Left Turning Radius Calculations

Maximum/Minimum Latitude Points Latitude Longitude Maximum/Minimum Longitude Points Latitude Longitude Northern‐most [decimal coordinates] 26.05508451 ‐80.11257783 Eastern‐most [decimal coordinates] 26.05505033 ‐80.11254533 Southern‐most [decimal coordinates] 26.05501817 ‐80.11258217 Western‐most [decimal coordinates] 26.05504817 ‐80.11262033 Distance Between Points [m]7.4 Distance Between Points [m] 7.5

Maximum Velocity and Acceleration: The maximum velocity and accelerations were found by starting the motors at the maximum value at time zero. The vehicle was operated until it reached maximum velocity and then the motors were set to zero. This test gave GPS data that could be used to find maximum acceleration, maximum velocity and the vehicles deceleration. The vehicle has an average maximum velocity of about 2

[m/s], and its acceleration is about 1 [m/s2], which means it takes two seconds to obtain top speed velocity. When stopping, the vehicle came to a skidding stop in the sand.

Without this observed slipping, this deceleration is expected to be lower.

86

Table 12 - Maximum Velocity and Accelerations on Land

[m/s^2] [m/s^2] [m/s Acceleration 1 1.00 Deceleration 11.33Max Velocity 12.03 Acceleration 2 0.93 Deceleration 20.79Max Velocity 21.89 Acceleration 3 0.96 Deceleration 31.73Max Velocity 31.96 Acceleration 4 0.83 Deceleration 40.83Max Velocity 41.76 Average Accel 0.93 Average Decel 1.17 Average Max Vel 1.91

Figures 39-41 show the GPS velocity, as well as motor information for the maximum velocity tests. It can be seen at the start time the current to the motors is at a maximum and the velocity begins to increase, until it levels off at its maximum around

2 [m/s]. The increased current during initial acceleration shows the high motor torque required to move the vehicle from rest. All measurements were coordinated through

UTC time in seconds. Because the results of all the maximum speed tests provided similar results, as seen in the above table, only one case is illustrated in the figures below.

87

2.5

2

1.5

Velocity [m/s] 1

0.5

0 13 13.5 14 14.5 15 15.5 16 16.5 17 17.5 18 Time [sec]

Figure 40 - Maximum Velocity on Land

120

Port Current 100 Starboard Current

80

60 Current [amps] 40

20

0 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 UTC Time [sec]

Figure 41 - Maximum Velocity Motor Current

88

128

127.8 Starboard Motor Command Port Motor Command 127.6

127.4

127.2

127

126.8 Motor CommandMotor

126.6

126.4

126.2

126 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 UTC Time [sec]

Figure 42 - Maximum Velocity Motor Commands

Course Keeping-ability and Motor Control Compensation: During maximum velocity tests, it was found the vehicle did not track a straight line when both motors were given full power command. The vehicle tracks slightly to the left when both motors are given the same command. The rate of this left tracking was just about five degrees per second, which is significant over any extended straight line track. It would only take about 30 seconds to become 180 degrees off track.

It was concluded this leftward track is a result of the drivetrain not being symmetric in the amount of torque to move the track. Because it takes slightly more torque to drive the right track, the current is higher on this motor, as seen in the motor current plot above. During dynamometer testing, it was found that the motor controllers compensate for this by increasing the voltage to the motor slightly. This can be seen in the dynamometer test results where the torque is plotted versus RPM. The elbow in the

89

graph is the power limit of the motor controller, and it will increase voltage slightly as the current increases. This will be explained in more detail in the dynamometer results section, but is the cause for the non-linear increase in yaw rate seen in this test.

Below are the results of equal full speed motor commands to both land motors.

The same left track was also observed in lower motor commands. The GPS rate of turn plots below show the leftward track of just under 5 [deg/sec] average for the four tests.

0

-0.5

-1

-1.5

-2

-2.5

-3 Yaw Rate Yaw[deg/sec] Rate -3.5

-4

-4.5

-5 0 2 4 6 8 10 12 14 16 18 20 Time [sec]

Figure 43 - Rate of Turn During Maximum Speed (Test 1)

90

0.5

0

-0.5

-1

-1.5

-2

-2.5 Rate [deg/sec]

-3

-3.5

-4

-4.5 0 5 10 15 20 25 Time [sec]

Figure 44 - Rate of Turn During Maximum Speed (Test 2)

1

0

-1

-2

-3 Rate [deg/sec] Rate

-4

-5

-6 0 5 10 15 20 25 Time [sec]

Figure 45 - Rate of Turn During Maximum Speed (Test 3)

91

0

-0.5

-1

-1.5

-2

-2.5

-3 Rate [deg/sec]

-3.5

-4

-4.5

-5 0 5 10 15 20 25 Time [sec]

Figure 46 - Rate of Turn During Maximum Speed (Test 4)

The IMU was also used in these tests to understand the yaw rate expereienced during equal motor commands. The figure below shows the measured yaw rate for one of the max speed tests. Again, as with the GPS data, this data shows a 5 [deg/sec] tracking error when the vehicle is given equal motor commands.

92

6

4

2

0

-2

-4 IMU Yaw Rate Yaw[deg/sec] Rate IMU

-6

-8

-10 0 5 10 15 20 25 30 Time [sec]

Figure 47 - IMU Yaw Rate for Equal Motor Commands

This leftward track can also be seen in the compass data during the maximum speed tests. As seen below, the vehicle’s heading changes significantly over the course of the test.

93

145

140

135

130

125 Heading [deg] Heading

120

115

110 0 2 4 6 8 10 12 Time [sec]

Figure 48 - Maximum Speed Compass Heading (Test 1)

145

140

135

130 Heading [deg]

125

120

115 22 23 24 25 26 27 28 29 30 31 32 Time [sec]

Figure 49 - Maximum Speed Compass Heading (Test 2)

94

145

140

135

130 Heading [deg] Heading

125

120

115 11 12 13 14 15 16 17 18 19 20 21 Time [sec]

Figure 50 - Maximum Speed Compass Heading (Test 3)

140

135

130

125 Heading [deg]

120

115

110 12 14 16 18 20 22 24 Time [sec]

Figure 51 - Maximum Speed Compass Heading (Test 4)

95

By looking at the third figure above of the vehicle compass data for example, it can be seen that the heading changes from 144 degrees at time zero, to about 120 degrees after five seconds. This is a rate of turn of just under 5 [deg/sec].

To compensate for this straight line tracking error, a correction factor was found to add to the left motor. This would allow the vehicle to track a straight line even if motors were set at equal commands. This information will be crucial in autonomous navigation development because it will correct the vehicle from traveling off course when the system would like to track a straight line.

After experiments, this correction factor was found to be a difference in motor commands of 10. For example, giving a motor command of 60 to port and 50 to starboard resulted in a straight tracking vehicle. This correction must be used in autonomous navigation to allow the vehicle to track a straight line. This factor was also added into zig-zag maneuvering tests to give equal turns to both port and starboard.

This will be described in the maneuvering section. The picture below shows the tracks in the sand after the vehicle has driven a straight line, and the tracks are traced with two red lines.

96

Figure 52 - Straighht Line Track with Correction Factor

This correction factor is important for autonomous ccontrol development because it is necessary for the vehicle to track a straight line when given equal motor commands.

If this correction is not factored into control, the autonomous control system will have to constantly correct for a leftward tracking vehicle.

Motor Command Testing:

The results provided here from the motor command testing will be useful for autonomous development because it defines the input-output relationship between motor commands and the resulting response of the vehicle. These tests provide more

97

information than a traditional turning circle test, which reveals characteristics of a vehicle, but does not give the wide range of values that these tests have provided.

A range of motor commands were used to define the vehicle’s motion response.

Values from a slight turn, to the tightest turn the vehicle is capable of were used, and the vehicles IMU, compass, GPS and motor controllers were used to measure the result of these commands.

To simplify the presentation of the data found. Many of the results found in this section will be displayed in a table, and plots of the data can be found in the appendix.

Each test resulted in over 10 graphs from all the sensors, therefore only a specific selection will be presented in the main text.

Turning radius: The first value that was defined in these tests is the resulting turning radius for a particular motor input. The radius was found using the Haversine formula method, which was described in detail in the minimum turning radius section above. Below is a table of the resulting turning radii for each motor command combination. The values are listed in largest to smallest. The value was found by taking the average of the vertical and horizontal radii.

Table 13 – Land Left Turn Radii

Motor Command Port Motor Command Starboard Turning Radius [m] 75 105 5.34 35 55 5.24 45 125 3.72 45 75 3.69 55 105 2.44 35 75 2.21 45 105 1.97 55 125 1.93 98

Table 14 – Land Right Turn Radii

Motor Command Port Motor Command Starboard Turning Radius [m] 55 35 9.92 75 45 5.57 75 35 4.15 105 55 4.06 105 45 2.93 125 45 2.24

Yaw rate: The next set of important data that was found from the motor command tests was the resulting yaw rate of each virtual rudder motor input. The yaw rate was found by averaging the yaw rate measured over the course of the vehicle turn, while the virtual rudder was deflected. This yaw rate is one of the outputs of vehicle rudder and velocity inputs, and is useful when developing the vehicle’s autonomous control system, to understand the output of motor command inputs.

A turning circle test causes the vehicle to turn at a constant rate until the rudder is returned to zero, or no deflection. Below is an example of the yaw rate measured during a turning circle test on land. A negative yaw rate means a left turn, or a counter clockwise rotation.

99

2

0

-2

-4

-6

-8

-10 GPS Rate of Turn [deg/sec] -12

-14

-16 0 20 40 60 80 100 120 140 Time [sec]

Figure 53 - Yaw Rate During a Turn to Port

The slight instability of yaw rate during the circle test shown above is mainly caused by the inconsistency of the sandy ground in the test area. Because the ground is not perfectly flat or smooth, the rate varies slightly during the turn. It can be seen when the vehicle is at rest both before and after the turn that this fluctuation is not due to sensor noise, as the rate is constant when the vehicle is not moving. Performing the test on a paved surface such as a parking lot would most likely yield a more constant yaw rate; however this vehicle will primarily operate on a beach, so these tests were performed on flat sand.

Below is a table showing the average yaw rates found for each test. The average and variance were found during the time the vehicle’s virtual rudder was deflected.

100

Table 15 - Land Left Turn Yaw Rate

Motor Command Port Motor Command Starboard Yaw Rate [deg/sec] Variance [deg^2/sec^2] 55 125 ‐35.99 4.8532 45 105 ‐24.58 1.9633 55 105 ‐22.08 1.0792 35 75 ‐14.11 1.7432 75 105 ‐12.72 0.5256 45 125 ‐9.66 1.9633 45 75 ‐9.66 1.1044 105 125 ‐7.35 0.3914 35 55 ‐4.84 0.4955

Table 16 - Land Right Turn Yaw Rate

Motor Command Port Motor Command Starboard Yaw Rate [deg/sec] Variance [deg^2/sec^2] 125 45 27.55 3.2299 105 45 17.67 2.9037 105 55 14.61 0.8924 75 35 8.66 1.3763 125 105 7.41 0.3875 75 45 7.35 0.6661 105 75 6.42 0.1981 55 35 2.77 0.1948

Motor Current: The motor current was measured during the tests, which can be correlated to the force on the tracks during the turning circle maneuver. While a complete set of data is available in Appendix 1 for each of these tests, it is worth comparing this motor controller data for two separate tests to show the amount of force on the tracks and current demand from the motors in these maneuvers. It is expected, as seen in Figures 53 and 54, that the tighter turn demands more from the outside motor, in the case of a left turn, the starboard motor. The axis scales were held constant for both plots so it is easy to compare the two tests. The 105/45 tighter turn shown second, requires a track force of over 400 [N] for almost the entire test. On the other hand, the

105/75, less sharp turn stays below 400 [N] for almost the entire test. The average force on the starboard track is 254.58 [N] for the wide turn of 105/75 and 475.72 [N] for the

101

tighter turn, which is almost double the required track force. Because of the linearity of the drivetrain forces, seen in the dynamometer results Section 3.1.1.2, this results in almost double the required torque output from the motor.

800 Starboard Port 600

400

200 Force on Track [N] 0 0 5 10 15 20 25 30 35 40 45 50

150 Starboard Port 100

50 Current [Amps] 0

0 5 10 15 20 25 30 35 40 45 50 Time [seconds]

Figure 54 - 105/75 Left Turn Current and Force on Tracks

800 Starboard Motor Port Motor 600

400

200 Force on Track [N] 0 0 5 10 15 20 25 30 35 40 45

150 Starboard Motor Port Motor 100

50 Current [amps] 0

0 5 10 15 20 25 30 35 40 45 Time [seconds]

Figure 55 - 105/45 Left Turn Current and Force on Tracks 102

It is important to note here the current draw during the two tests. The first test shown above, which is the wider of the two turns, shows the current during the turn stays below 50 [Amps] the entire test. However, the tighter turn, of 105/45, stays above

50 [Amps] for a majority of the test. The averages are 31.20 [Amps] and 58.31 [Amps] for the wide and tight turns, respectively.

Drivetrain requirements become larger as the vehicle makes sharper turns. The motor torque is linearly related to the current, and as the turns become sharper, the current to the motors increases. This must be taken into account as the motors can be damaged if the rated power is exceeded for an extended period of time.

Vehicle Heading: The vehicle’s heading was also measured during these tests by the OS5000 compass. Below is an example of the vehicle’s heading during a right turn on land, with motor commands of 75 port and 35 starboard. As shown above, the yaw rate, or vehicle’s rate of turn, stays fairly constant throughout the test. The figure below also shows this to be true in the compass data as well.

103

400

350

300

250

200

Heading [deg] Heading 150

100

50

0 0 50 100 150 Time [sec]

Figure 56 - Vehicle Heading During a Land Right Turn

This data can be modified by adding 360 degrees to the data when it crosses due north, or zero degrees. This helps show the constant yaw rate of the vehicle during the turn as seen in the yaw rate section above. Again, as in the yaw rate data recorded from the GPS, the compass heading data shows some inconsistency during the turn. This is due to the test area ground, and because the compass was properly calibrated, not because of sensor noise. This can be seen when the vehicle is at rest and the heading is perfectly constant.

104

800

700

600

500

400

300 Adjusted Heading [deg] Heading Adjusted

200

100

0 0 20 40 60 80 100 120 140 Time [sec]

Figure 57 - Continuous Compass Data During Land Right Turn

Zig-Zag Test: The zig-zag test is a traditional test used in maneuvering experiments. It is especially useful for system identification, and fitting an equation to the data set. The zig-zag test was performed in the same sand area as the turning circle tests. The tests were performed open loop, with five combinations of motor commands, and used the entire test area.

The motor commands used in the zig-zag tests are shown in the table below.

Each test was performed two times in case of errors with data collection. A complete set of results can be seen in the appendix.

105

Table 17 - Land Zig-zag Test Motor Commands

Motor 1 Motor 2 70 40 110 70 110 80 122 80 122 100

20 10 0 -10 -20 Yaw Rate [deg/sec] 60 65 70 75 80 85 90 95 100 105 Time [sec]

80 60 40 20 Port Command 0 60 65 70 75 80 85 90 95 100 105 Time [sec]

80 60 40 20 Stbd Command Stbd 0 60 65 70 75 80 85 90 95 100 105 Time [sec]

Figure 58 - 70/40 Land Zig-zag Test

The zig-zag test results are useful for the systems identification method described in the experimental approach section. Having the motor inputs, and measuring the IMU yaw rate can be used to estimate a simple integral controller, and by using the X and Y velocities measured, the data can be used to estimate a more complex model for autonomous control. Systems identification results will be described in

3.1.1.7.

106

3.1.6 Sea Maneuvering Characteristics

The vehicle was tested in a part of the Intracoastal Waterway in Dania Beach,

FL. This area is sheltered from wind and has minimal boat traffic to affect testing. The vehicle only experienced minor wind produced waves, and can be seen in figure 59 below.

Figure 59 - Final Vehicle in Water Test Area

Minimum turning radius: The minimum turning radius in water navigation was found using the Haversine formula procedure described in the land turning radius test in Section 3.1.1.5. For water navigation, the minimum turning radius was found with

100% forward on the starboard motor and 100% reverse on the port motor, or motor commands of 125 and -125, respectively, which results in a turn as shown in figure 58 below.

1007

Figure 60 - Minimum Turing Radius in Water

This maneuver resulted in a turning radius of 1.93 [m]. The GPS locations of the maximum and minimum points used in the Haversine calculation, as well as the distance between these points is shown in table 18 below.

Table 18 – Coordinates for Minimum In-Water Turning Radius Calculations

Maximum/Minimum Latitude Points Latitude Longitude Maximum/Minimum Longitude Points Latitude Longitude Northern‐most [decimal coordinates] 26.016387 ‐80.12286417 Eastern‐most [decimal coordinates] 26.01635967 ‐80.1228535 Southern‐most [decimal coordinates] 26.016339 ‐80.12287683 Western‐most [decimal coordinates] 26.01636017 ‐80.12289967 Distance Between Points [m] 5.5 Distance Between Points [m] 4.6

Maximum Velocity and Acceleration: The maximum velocity and accelerations were found by starting the propeller motors at the maximum value at time zero. The vehicle was operated until it reached maximum velocity annd then the motors were set to zero. This gave GPS data that could be used to find maximum acceleration, maximum velocity and the vehicles deceleration. The vehicle has an average maximum velocity of

1.19 [m/s], and its acceleration is 1.98 [m/s2]. The plots of velocity and motor information can be seen below. The current to the motors is seen to be relatively

1008

constant throughout the test, except for the drop in the starboard current about half way through the test. This seems to be an error in sensor data transmission because the velocity stays constant during this one second drop in current. This was considered a motor controller data logging error and did not affect the test. The time-scales for all plots below are constant, and it can be seen at the start time of the test, the motors are set to the maximum value and the velocity begins to increase until it reaches a maximum just under 1.2 [m/s]. The table below summarizes the maximum values found in this test.

Table 19 - Maximum Velocity and Acceleration in Water

Maximum Velocity 1.19 [m/s] Maaximum Acceleration 1.98 [m/s^2]

1.4

1.2

1

0.8

0.6 Velocity [m/s] Velocity

0.4

0.2

0 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 61 - Maximum Velocity Water

109

40 Starboard 35 Port

30

25

20

15 Current [Amps]

10

5

0 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 62 - Motor Current During Maximum Velocity Test Water

126 Starboard 125.8 Port

125.6

125.4

125.2

125

124.8 Motor Command Motor 124.6

124.4

124.2

124 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 63 - Motor Commands During Maximum Velocity Test Water

Course Keeping-ability and Motor Control Compensation: As in land testing, water tests also showed the vehicle was unable to track a perfectly straight course. In 110

this situation, the cause is not the torque required to move the drivetrain as it was in land testing. This instability is caused by a phenomenon called “propeller walk.”

Because the propellers both spin in the same direction (counter-clockwise), they cause a force on the rear of the vehicle to the port side. This causes a slight starboard turn, which keeps the vehicle from keeping its course. Below in Figure 64 a plot in Google

Earth of the vehicle’s position, and the compass heading during its course, which was adjusted by adding 360 degrees to show a continuous plot. As seen in Table 20, the wind was actually opposing the rightward track, as it was coming out of the southwest, and that is the direction in which the vehicle is tracking. So it is clear that this track in not related to wind.

Table 20 - Wind Data During Straight Line/Max Speed Tests

Direction Wind Speed [m/s] Test SW 3.00 MC=40 SW 2.82 MC=80 SW 3.08 MC=100 SW 2.59 MC=125

111

Figure 64 - Straight Line Track in Water

360

340

320

300

280

260 Heading [deg] Heading

240

220

200

180 0 2 4 6 8 10 12 14 16 18 20 Time [sec]

Figure 65 - Compass Heading During Straight Track

112

By looking at the GPS and IMU’s yaw rate data as was done during the land tests, it can be seen that the IMU gives an average yaw rate of about 8 [deg/sec] and the

GPS gives a similar result.

10

5

0

IMU Yaw Rate [deg/sec] Rate Yaw IMU -5

-10

80 85 90 95 100 105 110 115 120 125 130 Time [sec]

Figure 66 - IMU Yaw Rate Full Speed Water

12

10

8

6

4

2

0 GPS Rate[deg/sec]of Turn

-2

-4

80 85 90 95 100 105 110 115 120 125 130 Time [sec]

Figure 67 - GPS Yaw Rate Full Speed Water 113

It was found a correction factor of 5 was able to compensate for this propeller walk and the vehicle tracks a straight course with this correction factor added to the code. This correction factor is important to consider in the autonomous control system of the vehicle, as it will be easier to control a vehicle that is able to keep a straight course when given equal motor commands, which correlates to a virtual rudder deflection of zero.

Motor Command Testing:

The water motor command tests were carried out in the same way as described in the land motor controller tests. The input-output relationship between motor commands and vehicle response was defined through these tests, and they covered more input rudder commands than a standard turning circle test, as described by ABS in [39].

The motor commands used were chosen to produce turns that would be expected in autonomous navigation, and large radius turns were not performed because they were deemed unnecessary, the largest radius tested was 12 [m]. As in land tests, the GPS,

IMU, compass and motor controllers were used to collect data during the tests. Unlike the land tests, however, the wind speed and direction were recorded during these tests because this could affect the turning path of the vehicle.

The data from these tests will also be presented here in tables for space consideration. A full documentation of data is included in Appendix 1. Only a selection of data will be displayed in the main text for discussion purposes.

114

Wind Speed and Direction

Below are tables of the wind speed measured during the water turning circle tests. The wind speed is the average wind speed at the beginning of each test.

Table 21 – Wind Data During Left Turn Tests

Direction Wind Speed [m/s] Test SW 3.40 80,‐40 SW 3.62 80,‐80 SW 3.49 80,0 SW 3.49 100,0 SW 2.91 100,‐40 SW 3.98 100,‐80 SW 3.31 100,‐100 SW 2.91 125,0 SW 3.62 125,45 SW 3.31 125,‐45 SW 3.00 125,‐85 WSW,SW 3.00 125,‐125

Table 22 - Wind Data During Right Turn Test

Direction Wind Speed [m/s] Test WSW 3.31 80,‐40 SW 3.40 80,‐80 SW 3.31 100,0 SW 2.91 100,‐40 SW 2.01 100,‐40 SW 3.22 100,‐80 SW 2.91 100,‐100 SW 2.50 125,0 SW 2.50 125,‐45 SW 2.59 125,‐85 SW 3.40 125,‐125

115

Turning radius: The first value that was defined in these tests is the resulting turning radius for a particular motor input. The radius was found using the Haversine formula method, which was described in detail in the minimum turning radius section above. Below is a table of the resulting turning radii for each motor command combination. The values are listed in largest to smallest radius. The value was found by finding the average of the vertical and horizontal radius.

Table 23 - Water Left Turning Radii

Motor Command Port Motor Command Starboard Turning Radius [m] 0 100 11.75 0 125 11.05 0 80 10.85 ‐40 100 8.62 ‐45 125 7.81 ‐80 100 5.28 ‐100 100 3.13 ‐125 125 2.52

Table 24 - Water Right Turing Radii

Motor Command Port Motor Command Starboard Turning Radius [m] 125 0 9.15 100 0 8.96 125 ‐45 7.84 100 ‐40 7.54 125 ‐85 7.12 80 ‐40 6.88 100 ‐80 6.62 80 ‐80 5.04 100 ‐100 4.70 125 ‐125 4.52

What was found in these turning radius tests is that the tightest turns are executed when one motor is forward and one is in reverse. Because the vehicle’s

116

drivetrain is not retractable, it sticks out under the hulls and acts like a keel, which helps with straight line tracking, but negatively affects the vehicle’s turning radius. Looking at the lower turning radii shown in the tables above, the larger the reverse motor, the smaller the turning radius.

While it was not tested, because the thrust in the forward direction is much larger than when in reverse, an even smaller turning radius is assumed to be achieved by giving full reverse command to one motor and half forward command to the other motor. This would result in an even tighter radius, and could even cause the vehicle to spin on its axis.

Yaw rate: The next data found from these tests is the resulting turning radius from each motor command. As stated above, this data will be presented in a table, and plots of the data is provided in the appendix.

Table 25- Water Left Turn Yaw Rate

Motor Command Port Motor Command Starboard Average Yaw Rate in Turn [deg/sec] Varience [deg^2/sec^2] ‐125 125 ‐9.29 0.8395 ‐100 100 ‐7.69 0.7987 ‐80 100 ‐5.66 0.3174 ‐45 125 ‐4.90 0.3687 0125 ‐3.80 0.3892 ‐40 100 ‐3.62 0.8510 0100 ‐3.20 0.4418 080 ‐2.66 0.8151

117

Table 26 - Water Right Turn Yaw Rate

Motor Command Port Motor Command Starboard Yaw Rate [deg/sec] Varience [deg^2/sec^2] 125 ‐125 8.05 0.1179 100 ‐100 7.01 0.1003 125 ‐85 6.34 0.1411 125 ‐45 6.08 0.1080 80 ‐80 5.82 0.3648 125 0 5.74 0.0790 100 ‐80 5.73 0.2673 100 ‐40 5.62 0.0509 100 0 4.91 0.1334 80 ‐40 4.75 0.1344

The yaw rate was found by averaging the yaw rate measured over the course of the vehicle turn, while the virtual rudder was deflected. This yaw rate is the output of the vehicle rudder input and velocity, and is useful when developing the vehicle’s autonomous control system, to understand the output of motor command inputs.

A turning circle test causes the vehicle to turn at a constant rate until the rudder is returned to zero, or no deflection. Below is an example of the yaw rate measured during a turning circle test in the water. A negative yaw rate means a left turn, or a counter clockwise rotation.

118

2

1

0

-1

-2

-3

-4 GPS Yaw Rate [deg/sec] GPS Yaw[deg/sec] Rate

-5

-6

-7 0 20 40 60 80 100 120 140 160 180 200 Time [sec]

Figure 68 – Yaw Rate During a Turn to Port (100 Stbd, -80 Port)

Maneuvering Tests

Water Zig-zag Test: As described in the land zig-zag tests, the water zig-zag tests were performed using a combination of differential thrust commands. The GPS,

IMU, compass and motor controllers were used to collect data during the test.

The vehicle started at full speed before the open loop zig-zag maneuver was initiated. Differential motor commands of 70/40, 110/70, 110/80 and 122/100 were used. Typically a zig-zag test uses rudder deflections of 10-20 [deg], however these tests used a variety of deflections.

119

Below is an example of the motor command data and a plot of the vehicle’s position in Google Earth during the water zig-zag test for motor commands of 122 and

0. This data was used for systems identification, which is described in Section 3.2.

150 Port Starboard

100 Motor CommandMotor 50

0 80 100 120 140 160 180 200 Time [sec]

Figure 69 - 122/0 Water Zig-Zag Motor Commands

120

Figi ure 70 - Vehicle Position in Water Zig-zag Test

3.2 Systems Identification

Perfof rming the zig-zag test gave data thaat is useful for systems identification. By measuring the motor command inputs, as welll as the IMU outputs for velocities and yaw rate, a model can be estimated based on thhe relationship between the two measured sets of data. Systems identification was performed for both land and water.

Matlab’s Systems ID toolbox was used for systems identification with the collected data, which is a built in toolbox that contains a graphical user interface (GUI).

The data was clipped to contain only the time the vehicle was perforrming the zig-zag pattern, and not when it was accelerating to steady state, or after the zig-zag pattern was executed.

121

The data collected from the IMU during the zig-zag tests was in earth fixed coordinates. To convert the velocities into the body fixed frame, the earrth fixed velocity matrix was multiplied by the transformation matrix below, where is the yaw angle.

This complete transformation is seen in the Matlab code in Appendix B. 8In addition to converting the measurements into the body fixed coordinate frame, the X and Y velocities also needed to be transformed from the location of measurement to the location of the center of floatation, the position in which thhe vehicle pivots around. This transformation was performed with the following equation, where the new velocity matrix, , is found by subtracting the cross product of tthe roll, pitch and yaw rate matrix, , and the location matrix of the sensor from the ceenter of floattation, .

After the velocities were transformed into the body fixed coordinate system, they were used as outputs in the systems identification toolbox.

The inputs for the model were the port and starboard motor commands. As stated earlier, only the data collected after the vehicle had reached a steady state straight-line course and then initiated the maneuver was used for systems identification.

To estimate a model, a third order linear parametric state space model was used.

122

Below are the motor command inputs, and the u,v, and yaw rate outputs of the

1250 water zig-zag test, with an overlay of the final model that was obtained on the outputs.

150 Port Starboard

100

Motor CommandMotor 50

0

0 10 20 30 40 50 60

Figure 71- Motor Commands Land Zig-zag for Systems ID

1

0.95

0.9

0.85

0.8

0.75

0.7 Bodyu Velocity [m/s]

0.65

Model 0.6 Measured IMU Data

0.55 0 10 20 30 40 50 60 Time [sec]

Figure 72 - Body Fixed u Velocity Model-Black Signal is the Measured Velocity

123

0.1

0.05

0

-0.05

-0.1

-0.15

-0.2

Body v Velocity [m/s] Velocity v Body -0.25

-0.3 Model Measured IMU Data -0.35

-0.4 0 10 20 30 40 50 60 Time [sec]

Figure 73 - Body Fixed v Velocity Model-Black Signal is the Measured Velocity

0.1

0.05

0

-0.05 Yaw Rate Yaw

-0.1 Model Measurd IMU Data -0.15 0 10 20 30 40 50 60 Time [sec]

Figure 74 - Yaw Rate Model-Black Signal is the Measured Yaw Rate

A second data was used to compare the model to this second set of inputs and outputs. Below is the motor command inputs for the 100/0 zig-zag water test, and the corresponding outputs with the model estimate overlaid on the output data.

124

0.75

0.7

0.65

0.6

Body u Velocity 0.55

Model 0.5 Measured IMU Data

0.45 0 5 10 15 20 15 30 35 Time [sec]

Figure 75 - Body u Velocity Model on Second Data-Black Signal is Measured Velocity

0.7

0.65 Model Measured IMU Data

0.6

0.55

0.5

Body v Velocity [m/s] Velocity v Body 0.45

0.4

0.35 0 5 10 15 20 25 30 35 Time [sec]

Figure 76 - Body v Velocity Model on Second Data-Black Signal is Measured Velocity

125

0.15

0.1

0.05

0

-0.05 Yaw Rate [deg/sec] -0.1 Model Measured IMU Data -0.15

-0.2 0 5 10 15 20 25 30 35 Time [sec]

Figure 77 - Yaw Rate Model on Second Data-Black Signal is Measured Yaw Rate

It was found the model is a close fit for the u and v velocity predictions, however the yaw rate prediction is a significantly better result when the data is compared to the model in both cases. This finding is important for future autonomous control, because the yaw rate output is most useful in autonomous control, especially for a slow moving vehicle such as the DUKW. The third order state space model is shown below. In the equation, x(t) is the state vector and u(t) is the control vector.

126

1.0001 . 00012 4.5910 7.4710 3.7110 8.6710 1.0003 7.08510 +1.364110 1.255910u(t)+ .00043 .00048 . 99651 9.216210 5.667710

.00192 . 00847 .00315 .011992 .00579 . 00541 . 00281 . 00247 . 04215

6.700 27.676 1.227 00 26.993 8.461 1.342 00 1.524 1.084 3.990 00

x(0) =

x1 = 0.01213 x2 = -0.02238 x3 = -0.00671

For the land test, the same procedure was used. However, the predicted body- fixed velocities and yaw rate do not match the measured values well. It is believed that the bumpy, sandy ground was the reason for this noisy looking signal. Another factor that affected this test was the limited space available for testing. The sandy area on

Seatech property was used because it is mostly level, unlike the beach which has a constant slope. The downside to this test region is the fact that the vehicle could not make large turns as it could in the water tests. It also could not be driven very long in the forward direction to achieve a steady state motion because of the limited space. The beach would give more space for this test, but no area of the beach could be found that was flat enough to perform this test without dealing with the inconsistencies with the beach slope.

127

Because of the limitations in test conditions, if a better model is required for autonomous control, these tests should be redone at a location that has a large sandy area, but does not contain a slope as found on most beaches in the area.

1.6

1.4

1.2

1

0.8 u Velocity [m/s]

0.6

0.4

0.2 0 5 10 15 Time [sec]

Figure 78 - Body Fixed v Velocity Land Model-Black Signal is Measured Velocity

1.5

1

0.5

0 v Velocity [m/s]

-0.5

-1 0 5 10 15 Time [sec]

Figure 79 - Body Fixed v Velocity Model Land-Black Signal is Measured Velocity

128

0.4

0.3

0.2

0.1

0

-0.1

Yaw Rate Yaw[rad/sec] Rate -0.2

-0.3

-0.4

-0.5 0 5 10 15 Time [sec]

Figure 80 - Yaw Rate Model Land-Black Signal is Measured Yaw Rate

The land model is shown below. It is suggested that to estimate a better model for this data, these tests be performed in a larger test area so the turns can be executed for longer than 3 seconds each. The water tests used 10 second turns, which proved to give a data that was easier to fit a model to. The accuracy of this model was affected by the test conditions. Again, a third order state space model was used, and it is shown below.

129

. 9979 . 0029 . 0082 . 0010 . 0005 .0027 .0067 . 0783 .0048 . 9944 .0014+4.11710 . 0007 u(t)+.0106 . 0204 .0128 .0113 . 0049 . 9962 .0008 .0010 .0145 .0445 . 0654

3.5427 5.9176 5.8133 0 0 4.3959 3.8696 3.1278 0 0 6.8854 .0205 . 1213 0 0

x(0) =

x1 = -0.0201 x2 = 0.0308 x3 = -0.1125

3.3 Transition Region Tests

The transition tests are one of the mosst important parts of this thesis, as these tests provide data to understand the unknown areas of the vehicle concept development.

The vehicle was driven open loop through the transition region, both towards and away from shore. Its motions while in the breaking wave area of the surf zone were also recorded, to help better understand what the vehicle will experience while navigating through this dynamic region.

The vehicle started on the beach, and was given an open loop motor command for 30 seconds, approaching the surf zone perpendicularly. Once the vehicle was fully buoyant, and at a depth where it was no longer making conntact with the ground, it was left to be subjected to the breaking waves in the surf zone, while its motions were being recorded. Finally, the vehicle faced the beach, and was given the same motor commands as on its way out, and it ran this 30 second oppen loop path onto the beach. During the tests, the motor current was recorded so the drivetrain forces could be quantified during

1330

its beach transition. Motor commands of 80, 90, 100, 110 and 125 to both motors were used for testing.

These three situations, land-to-sea, seaa-to-land, and the vehicle subjected to breaking waves in the surf zone were each tested, and the results will be split into these three categories.

Wave Characteristics

It is important to define the wave charaacteristics during these transition tests, so the motions found in testing can be related to the waves the vehicle experienced. Figure

79 shows two pictures of the ocean on the day tthe tests were performed.

Figure 81 - Dania Beach Ocean on Test Day

To quantitatively define the wave characteristics during testing, two Ocean

Sensor Systems wave staffs were installed in the surf zone to measure the incoming waves. These capacitance wave gauges measure the water location along their length.

Typical calibration of these sensors when used in a wave tank is to locate the still

1331

waterline location, and use this as a zero location. However, because these tests were performed in a non-controlled environment, this calibration was not possible. Instead, the average value over the entire test was used as a zero location, and wave amplitudes were measured from this point. While this is not as precise as the previous method of calibration, it was the only way the median level could be located.

The wave staffs were placed in the location that the vehicle was tested in the surf zone motion tests. The sensors use an RS232 communication and the data was collected with a laptop. An example of this data is shown in the figure below. The staff is 500 [mm] long, and the data is output as number of counts from the bottom of the staff. The Matlab code converts the count output into a distance in [mm] from the bottom using the width of each wire wrap. The break in data is due to the combination of two sets of data, and a time difference between the end time and start time.

500 Gauge 1 450 Gauge 2

400

350

300

250

200

Waterline Location [mm] Location Waterline 150

100

50

0 0 50 100 150 200 250 300 350 Time

Figure 82 - Wave Gauge Output

132

These water level locations were converted to wave amplitude by first finding the average value of the data, which was set to the mean waterline, or zero, of the data.

Then the amplitudes were calculated from this level. The figure below is the data after the mean waterline was subtracted from the entire set of data. The Y-axis shows the water position from the mean water level over the course of the test. The gauges were mounted in a line perpendicular to the beach, where the first gauge was at the point the waves were beginning to break and the second in the region the waves had already broke. This was about 20 and 30 feet from the tideline, in depths of about 2.5 and 3 feet, for the first and second gauge, respectively. The waves were measured for a duration of

15 minutes. Because of the sample time, the tide level remained constant for the tests.

The wave gauges measured at 20 [Hz].

350

300

250

200

150

100

50

Waterline Location [mm] Location Waterline 0

-50

-100

-150 0 1000 2000 3000 4000 5000 6000 7000

Figure 83 - Wave Data in Surf Zone Tests

133

To characterize the waves present in the test area during the experiments, the significant wave height was used. This is the average value of the largest 1/3rd of the measured amplitudes. This was calculated for both wave gauges, and the process can be seen in the Matlab section of the appendix. The significant wave height was found to be

27.92 [cm]. This value makes it possible to now relate the measured motions described below to wave characteristics seen in the surf zone.

3.3.1 Land-to-Sea

As described above, the vehicle started facing the ocean and was given a motor command to the tracks for 30 seconds, which was equal to both port and starboard.

The first motor command combination was 80, which is about 65% of full power. The results of this test are shown in the figures below. The X-axis timescales are synchronized so the IMU motions and motor data can be compared easily. The entire collection of these results can be found in the appendix. It should be noted that all tests looked very similar to the one shown below, so it was unnecessary to display each set of data in the main text. A table with average valuues is providded describing the full range of tests.

1334

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 84 - Land-to-Sea Transition Motor Data (Motor Command: 80)

5

0 Roll [deg] Roll -5 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 0.5

0

-0.5

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 85 - Land-to-Sea Transition Motions (Motor Command: 80)

Looking at the data above, it can be seen that when the motors are given the command of 80, the track force is at its highest, an average of 494 [N] between port and

135

starboard, which means it takes about 1000 [N] to start the vehicle from rest in this situation. This is very close to the 1068 [N] estimate used in gearing calculations, shown in the drivetrain gearing design section. The vehicle was started at a position on the beach that aimed to make the transition from land to sea about halfway through the

30 second test, which was about 50 feet from the waterline. Figure 84 is the vehicle’s position plotted in Google Earth. Note the tide was not the same as shown in the figure, so the waterline is not the same as it was on the day of the test.

Figure 86 - Beach-to-Sea Vehicle Track

After the initial momentum is obtained, the track force stays fairly constant to about 20 seconds into the test, where it begins to fall. At this point, by looking at the

IMU motion data, it can be seen that the vehicle is in contact with waves because of the sinusoidal motions it begins to experience exactly at the time the track force begins to decrease. This drop in force on the tracks can be contributed to the fact that the vehicle is obtaining a buoyancy force as it enters the water and begins to experience the

1336

motions of the waves. The effective weight of the vehicle is less because of this buoyancy force, and therefore we see a drop in the track force measured. The intermittent jumps in track force during the few seconds the vehicle is between fully land and fully buoyant can be attributed to the tracks coming into contact with the bottom as waves cause it to heave.

About 5 seconds after its initial motions from encountering the water, or at 25 seconds into the test, the heave and roll motions become noticeably larger, and the track force falls off to almost zero. The reason the force does not fall all the way to zero is due to the manner in which the force is being calculated. The current to the motors is used to determine a resulting force, and since the drivetrain still provides some resistance even when the vehicle is floating, the current does not fall enough for the calculated force to be zero, because the motor is still drawing some current.

The exact instant that the vehicle transitions from land to sea and becomes completely supported by a buoyant force is nearly impossible to determine, both because of the nature of the test conditions as well as the fact that the vehicle is subjected to waves which means it is coming into contact with the ground even after it has been supported by a buoyant force. Because of this, it is difficult to determine an exact force when the vehicle is on land, or in the surf zone. However, splitting this test in half, and taking the average of the force measured for each half gives a reasonable estimate of the average force on land, and an average force while transitioning. These values were documented by CISD as a necessary unknown that needed to be defined.

137

Below is a table of the forces measured during the transition from beach to the ocean, through the surf zone. As would be expected, the first leg of these tests gave forces that were, on average, about 3.5 times the forces measured when the vehicle was in contact with the water. The buoyant force that resulted from the vehicle driving into the water significantly reduced the force requirred to drive through this region. It should be noted that the maximum force measured during the entire test is less than 15% greater than the estimated design resistance force used to ddesign the drivetrain gearing system.

Table 27 - Land-to-Sea Drivetrain Force Results

Motor Command Average Full Test [N] Average First Half [N] Average Second Half [N]Maximum Force [N] 80 112.58 171.17 50.70 220.229 90 144.86 228.70 54.99 530.335 100 119.06 200.16 36.35 685.337 110 153.89 248.96 60.25 840.440 125 199.58 257.30 127.03 832.23 All Tests 145.99 221.26 65.86 621.73

3.3.2 Sea-to-Land

The next set of data collected was the vehicle approaching the shoreline. The same set of motor commands used above were again used in this direction. The vehicle started in the ocean and approached the surf zone and made its way onto the beach, again open loop for 30 seconds at equal motor commands to both port and starboard tracks. The test was started perpendicular to the shore, in a water depth of about 3 feet, which was an extra foot of water under the vehicle draft, to ensure there was no contact with the ground at the beginning of the test. The 3 foot water depth where the test was started was about 40 feet from the tide line. The test was initiated when the motor

1338

commands were sent to the tracks, and as soon as the vehicle came into contact with the sand it began to drive onto the beach. Figure 84 shows the vehicle’s position during the sea-to-land test. Again, as above, the tide line is not the same in the Google Earth image as it was on test day, so the waterline location is not exact.

Figure 87 – Sea-to-Land Vehicle Track

Below is a set of data during the sea-to-lland transition. For consistency, this data in figure 86 is the same 80 motor command as the plots shown above in the land-to-sea transition.

1339

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 400

300

200

100

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 88 – Sea-to-Land Transition Motor Data (Motor Command: 80)

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 1

0

-1

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Figure 89 - Sea-to-Land Transition Motions (Motor Command: 80)

As would be expected, the opposite results were found compared to the land-to- sea transition. The vehicle experiences large motions initially, and as it comes into

140

shallower water, and contacts the bottom, the motions decay to zero as it is no longer buoyant and experiencing motions from the surf zone waves. The vehicle experiences no wave motions after about 15 seconds. Looking at the motor data just before this occurs, it can be seen that the force fluctuates due to the heaving motion and the intermittent track contact with the bottom before it is fully out of the water and in full contact with the ground.

Again, as described above, it is impossible to choose a point at which the vehicle transitions between sea and land, because of the motions that cause it to come in contact with the bottom as it approaches the beach, and because of the unpredictability of the test area. Therefore, the test can be split in half and averages can be taken of the drivetrain forces required in the transition.

Below is a table showing the average forces found through the whole range of tests. Again, as would be expected, the first half of the test, when the vehicle is partially buoyant, the forces are much less than when the vehicle is fully on land.

Table 28 – Sea to Land Drivetrain Force Results

Motor Command Average Full Test [N] Average First Half [N] Average Second Half [N] Maximum Force [N] 80 167.37 115.71 208.06 407.96 90 251.10 205.25 268.25 481.39 100 233.15 103.66 343.66 246.66 110 247.88 192.04 278.34 522.19 125 286.18 249.57 273.48 856.72 All Tests 237.14 173.25 274.36 502.98

141

3.3.3 Vehicle in the Surf-Zone

Between the landn -to-sea and sea-to-land tests, the vehicle was left in the surf zone and experienced the breaking waves found in this area. Because autonomous vehicles have traditionally not traversed this region, the motions the vehicle experiences in the region are important in system development. It is difficult to accurately model the waves the vehicle is experiencing during this test, but the average wave conditions can be related to the motions the vehicle experiences during the test. This provides a rough estimate of the motions the vehicle can be expected to experience in the surf zone region when it is autonomous.

Figures 88-92 below show the vehicle’s motions in the surf zone for the five separate tests.

0.5

0

-0.5 0 10 20 30 40 50 60 Heave Velocity [m/s] Time [sec] 20

0

-20

Pitch Angle [deg] 0 10 20 30 40 50 60 Time [sec] 20

0

-20 Roll Angle [deg] 0 10 20 30 40 50 60 Time [sec] 20

0

-20 0 10 20 30 40 50 60 Yaw Rate [deg/sec] Time [sec]

Figure 90 - Motions in the Surf Zone Test 1

142

1

0.5

0 0 5 10 15 20 25 30 35 40 45 Heave Velocity [m/s] Time [sec] 20

0

-20

Pitch Angle [deg] Pitch 0 5 10 15 20 25 30 35 40 45 Time [sec] 10

0

-10 Roll[deg] Angle 0 5 10 15 20 25 30 35 40 45 Time [sec] 50

0

-50 0 5 10 15 20 25 30 35 40 45 Yaw Rate [deg/sec] Rate Yaw Time [sec]

Figure 91 - Motions in the Surf Zone Test 2

1

0.5

0 0 5 10 15 20 25 30 35 40 45 Heave Velocity[m/s] Time [sec] 20

0

-20

Pitch Angle [deg] 0 5 10 15 20 25 30 35 40 45 Time [sec] 5

0

-5 Roll Angle [deg] 0 5 10 15 20 25 30 35 40 45 Time [sec] 50

0

-50 0 5 10 15 20 25 30 35 40 45 Yaw Rate[deg/sec] Time [sec]

Figure 92 - Motions in the Surf Zone Test 3

143

1

0

-1 0 10 20 30 40 50 60 70 80 90 Heave Velocity [m/s] Time [sec] 20

0

-20

Pitch Angle [deg] Pitch 0 10 20 30 40 50 60 70 80 90 Time [sec] 10

0

-10 Roll[deg] Angle 0 10 20 30 40 50 60 70 80 90 Time [sec] 50

0

-50 0 10 20 30 40 50 60 70 80 90 Yaw Rate [deg/sec] Rate Yaw Time [sec]

Figure 93 - Motions in the Surf Zone Test 4

1

0

-1 0 10 20 30 40 50 60 70 Heave Velocity[m/s] Time [sec] 10

0

-10

Pitch Angle [deg] 0 10 20 30 40 50 60 70 Time [sec] 10

0

-10 Roll Angle [deg] 0 10 20 30 40 50 60 70 Time [sec] 50

0

-50 0 10 20 30 40 50 60 70 Yaw Rate[deg/sec] Time [sec]

Figure 94 - Motions in the Surf Zone Test 5

While it may be difficult to compare these motions to one another, taking the average of the absolute value measured for each motion gives a better number to 144

compare among the different tests. Below are tables of the average values found in each test. It was found the averages were very similar from test to test, as seen in Table 34 below, the variance between all the tests is low for all motions. The average motions for all tests are shown in Tables 29-33.

Table 29 - Average Motions Test 1

Measurement Average of All Tests Variance Heave Velocity [m/s] 0.35 0.0367 Pitch Angle [deg] 3.74 5.2549 Roll Angle [deg] 2.41 3.9941 Yaw Rate [deg/sec] 5.08 18.0216

Table 30 - Average Motions Test 2

Measurement Average Value During Test Variance Heave Velocity [m/s] 0.51 0.0283 Pitch Angle [deg] 3.82 5.6740 Roll Angle [deg] 1.87 1.6720 Yaw Rate [deg/sec] 5.87 18.4664

Table 31 - Average Motions Test 3

Measurement Average Value During Test Variance Heave Velocity [m/s] 0.53 0.0379 Pitch Angle [deg] 3.79 5.4235 Roll Angle [deg] 1.75 1.3810 Yaw Rate [deg/sec] 4.77 21.1209

Table 32 - Average Motions Test 4

Measurement Average Value During Test Variance Heave Velocity [m/s] 0.44 0.0283 Pitch Angle [deg] 4.18 7.8703 Roll Angle [deg] 2.10 2.3414 Yaw Rate [deg/sec] 4.48 20.8922

145

Table 33 - Average Motions Test 5

Measurement Average Value During Test Variance Heave Velocity [m/s] 0.40 0.0267 Pitch Angle [deg] 3.54 4.5842 Roll Angle [deg] 1.97 1.9007 Yaw Rate [deg/sec] 4.54 21.1076

From the averages found in the tables above, it can be seen that the motions stay very consistent throughout the five tests. Table 34 below is the averages of all the test results, it can be seen that the variance of measured motions is extremely low for each value. These motions below show the average expected motions for a vehicle in this type of surf zone waves. Although conditions constantly change, having this data relating wave characteristics to vehicle motions can help predict motions in different wave conditions, and also gives future test developers an idea of the response characteristics of this vehicle.

Table 34 - Average of all Surf Zone Motion Test Results

Measurement Average of All Tests Varience Heave Velocity [m/s] 0.45 0.0059 Pitch Angle [deg] 3.81 0.0538 Roll Angle [deg] 2.02 0.0641 Yaw Rate [deg/sec] 4.95 0.3212

In order to further characterize the surf zone and the vehicle motions in the surf zone, the data were transformed into the frequency domain to locate dominant frequencies found in the incoming waves as well as the response of the vehicle.

First looking at the waves, and zooming in on a 20 second window, as shown in figure 95 below, the multiple frequencies can be seen. 146

250

200

150

100

50

0

-50

Wave Height [mm] Height Wave -100

-150

-200

-250 0 2 4 6 8 10 12 14 16 18 20 Time [sec]

Figure 95 - Waves in a 20 Second Period

Looking at the dominant frequencies in figure 96, we find peaks at frequencies of 0.1172 [Hz], 0.2344 [Hz], 0.4688 [Hz] and 0.5469 [Hz]. In the time domain, these correspond to periods of 8.532 [sec], 4.266 [sec], 2.133 [sec] and 1.828 [sec]. The first three periods are half of the previous value, showing that they are harmonics. These periods can be seen in figure 95, as we see peaks occurring at these intervals.

147

5 x 10 3

2.5

2

1.5

1

0.5

0 0 0.5 1 1.5 Frequency (Hz)

Figure 96 - Wave Frequency in Surf-zone

Now, looking at the vehicle’s frequency response to these incoming waves, can be seen in figure 97 below.

50 Heave 0 0 1 2 3 4 5 6

500 Pitch

0 0 1 2 3 4 5 6

500 Roll

0 0 1 2 3 4 5 6 Omega

Figure 97 - Roll, Pitch and Heave Frequency Response to Surfzone

148

3.4 Froude-Krylov Excitation Forces

To estimate the wave excitation forces acting on the vehicle in shallow water, the Froude-Krylov approach can be used. These pressure forces are found by integrating the pressure over the mean wetted surface of the hull. This was done using the model

DUKW-ling’s dimensions in head seas (where the angle the vehiclle encounters the waves, β=0) and the results are shown below [36]. This giives an estimate of the forces and moments that could be experienced in the surf zone. Below is Froude-Krylov method used to estimate excitation forces and moments in a water depth of 0.61 [m].

500

[N] 0 1 F

-500 0 1 2 3 4 5 6 7 8

-13 x 10 2

[N] 0 2 F

-2 0 1 2 3 4 5 6 7 8

1000

[N] 0 3 F

-1000 0 1 2 3 4 5 6 7 8 Time [sec]

Figure 98 - Surge (1), Sway (2), Heave (3) Force vs. Time

149

1

0 [N-m] 4 F -1 0 1 2 3 4 5 6 7 8

1000

0 [N-m] 5 F -1000 0 1 2 3 4 5 6 7 8

-13 x 10 2

0 [N-m] 6 F -2 0 1 2 3 4 5 6 7 8 Time [sec]

Figure 99 - Roll (4), Pitch (5), Yaw (6) Moments vs. Time

150

4 CONCULUSIONS

This project aimed at defining unknowns about the DUKW-ling autonommous amphibious vehicle concept. Traveling through the surf zone is a new area for an autonomous vehicle, and an area that is very dynamic and difficult to model. Therefore, experimental testing with the vehicle model was the ideal approach to define the unknowns that were affecting the continued development of this project.

The vehicle’s motions in the surf zone, tthe drivetrain forces required to navigate the surf zone, its driving characteristics such as turning radius, velocitiess and accelerations were documented by CISD as unknowns that were needed for algorithm development being conducted there. The minimum turning radius on land was 2.4 [m]

(about one vehicle length), the maximum velocity was 1.91 [m/s] and the acceleration was 0.93 [m/s2]. In water, the minimum turniing radius was found to be less than on land, 1.93 [m], and water maximum velocity was 1.19 [m/s], with a maximum acceleration of 1.98 [m/s2]. The yaw rates for different motor commands to both land and water motors were found so autonomouus control deevelopment has quantitative values for the different motor inputs that can be used in navigation.

It was found that in a significant wave height of 28 [cm], the average heave velocity was 0.45 [m/s], which is almost half of the vehicle’s maximum forward speed.

It experiences average pitch and roll angles of 3.81 and 2.02 degrees, respectively.

These angles are more than double those found when the vehicle performs a zig-zag

1552

maneuver or turning circle test. An average yaw rate of 4.95 degrees/second however was the same as was found when the vehicle was performing a very wide turn with a radius of 8.56 meters, where the vehicle’s minimum turning radius is 4.92 meters. So although the vehicle experiences large pitch and roll motions, it is able to maintain its heading when encountering the breaking wavess.

When navigating the surf zone region, the force on the tracks was found to be

250 [N] to each track on average when on land, and more than half of that when it is partially submerged. The maximum force was 621 [N] and was found when the vehicle was going from land-to-sea, and going from sea-to-land, the maximum value was 80% less.

In addition to finding the unknowns that were documented as setbacks for algorithm development, a model for both land and sea navigation was found based on maneuvering test data. This model can be a starting point for future autonomous control efforts.

4.1 Recommendations for Future Work

This project is continuing at FAU with present graduate student Jose Alvarez.

This thesis work aimed at providing him with a complete set of data and an understanding of vehicle performance through experimental testing. The drivetrain, electronics and sensor systems were all used to perform months of testing, and minor changes were made until the vehicle’s performance was developed into a robust, easy to use platform. Because of this work, the veehicle is being turned over to future

1553

researchers in a state that they will need to focus no time on the vehicle systems, and rather focus their efforts on autonomous development.

Future work outside of the autonomous control system work going on presently at FAU can be broken into three categories: vehicle model, surf zone testing and full scale mechanical design.

In terms of the vehicle model, the only set back this work has found is a lack of motor power. Both the land and water motors should be upgraded as the vehicle is underpowered in both regards. During tests, the land motors were found to exceed their current limit significantly in certain situations. This can cause damage in the long term, and these can be replaced with minimum complexity because of their easy access location on the vehicle. The propeller motors are also underpowered. The vehicle is difficult to control in the water, mainly because of the low thrust output available from the propellers. In the surf zone, the vehicle will need significant thrust to overcome wave forces, and these motors will not provide that thrust. The vehicle’s turning radius will also improve with more thrust available.

In terms of surf zone testing, it is recommended to continue the surf zone transition tests in a variety of surf conditions, while again measuring the waves present in the surf zone. Having a broad set of data will be useful for this concept, as well as future research that might deal with a vehicle traveling through the surf zone or breaking waves.

The full scale vehicle design will require more testing in the surf zone to further define the forces acting on the vehicle, both from slamming motions as well as contact with the bottom. Structural tests should be completed to understand the amount of

154

forces the full scale vehicle might experience when in navigates this surf zone region continuously during a cargo transport mission.

155

5 APPENDIX

A. All test results

Transition Tests:

 Motor Command: 80 Land‐to‐Sea

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

1556

5

0 Roll [deg] Roll -5 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Sea‐to‐Land

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 400

300

200

100

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

157

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 0.5

0

-0.5

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

 Motor Command: 90 Land‐to‐Sea

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 Time [sec] 800

600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 Time [sec]

158

5

0 Roll [deg] Roll -5 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Sea‐to‐Land

100

50

Motor Command 0 0 5 10 15 20 25 30 35 Time [sec] 400

300

200

100

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 Time [sec]

159

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 Time [sec] 20

0

Pitch [deg] -20 0 5 10 15 20 25 30 35 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 Time [sec]

 Motor Command: 100 Land‐to‐Sea

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 800

600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 800

600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

160

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Time [sec] 2

1

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Sea‐to‐Land

150

100

50

Motor Command 0 0 5 10 15 20 25 30 35 Time [sec] 600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 Time [sec]

161

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 Time [sec] 20

0

Pitch [deg] -20 0 5 10 15 20 25 30 35 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 Time [sec]

 Motor Command: 110

Land‐to‐Sea

162

100

50

Motor Command 0 0 5 10 15 20 25 30 35 40 Time [sec] 1000

500

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 40 Time [sec] 1000

500

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 40 Time [sec]

10

0 Roll [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 35 40 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 40 Yaw Rate[deg/sec] Yaw Time [sec] 1

0

-1

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 40 Time [sec]

Sea‐to‐Land

163

150

100

50

Motor Command 0 0 5 10 15 20 25 30 35 Time [sec] 600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 35 Time [sec] 600

400

200

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 35 Time [sec]

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 35 Time [sec] 20

0

Pitch [deg] -20 0 5 10 15 20 25 30 35 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 35 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 35 Time [sec]

 Motor Command: 125 Land‐to‐Sea

164

100

50

Motor Command 0 0 5 10 15 20 25 30 Time [sec] 1000

500

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 Time [sec] 1000

500

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 Time [sec]

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 Time [sec] 10

0

Pitch [deg] -10 0 5 10 15 20 25 30 Time [sec] 0.5

0

-0.5 0 5 10 15 20 25 30 Yaw Rate[deg/sec] Time [sec] 1

0

-1

Heave Vel. [m/s] 0 5 10 15 20 25 30 Time [sec]

Sea‐to‐Land

165

150

100

50

Motor Command 0 0 5 10 15 20 25 30 Time [sec] 800

600

400

200

Port Track Force [N] Force Track Port 0 0 5 10 15 20 25 30 Time [sec] 1000

500

Stbd Track Force [N] Force Track Stbd 0 0 5 10 15 20 25 30 Time [sec]

10

0 Roll [deg] Roll -10 0 5 10 15 20 25 30 Time [sec]

10 0 -10 Pitch [deg] 0 5 10 15 20 25 30 Time [sec] 1

0

-1 0 5 10 15 20 25 30 Yaw Rate[deg/sec] Time [sec] 1

0.5

0

Heave Vel. [m/s] 0 5 10 15 20 25 30 Time [sec]

166

Land Circle Tests: Left Turn

 55 Starboard, 35 Port

60

40

Motor Cmd Motor 20 0 10 20 30 40 50 60 70

60 20 50 15 40 10 30 5 Port Cmd Port 20 0 Current [amps] 0 10 20 30 40 50 60 70

56 40 55.5 30 55 20 54.5 10

Stbd Cmd Stbd 54 0 Current [amps] 0 10 20 30 40 50 60 70

400

200

0 0 10 20 30 40 50 60 70 Track Force [N] Force Track Time [sec] Port Starboard

0

-5

-10 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 200

0

-200 0 10 20 30 40 50 60 70 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

167

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] -200 0 20 40 60 80 100 120 Time [sec] 0.5

0

-0.5 0 20 40 60 80 100 120

Yaw Rate [rad/sec] Time [sec]

15

10

Position [m] Position 5

0 0 5 10 15 Position [m]

 75 Starboard, 35 Port

1668

100

50

Motor Cmd Motor 0 0 10 20 30 40 50 60 70 80

100 40

50 20 Port Cmd Port 0 0 Current [amps] 0 10 20 30 40 50 60 70 80

76 100

75 50

Stbd Cmd Stbd 74 0 Current [amps] 0 10 20 30 40 50 60 70 80

500

0 0 10 20 30 40 50 60 70 80 Track Force [N] Force Track Time [sec] Port Starboard

10

0

-10

-20 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 500

0

-500

-1000 0 20 40 60 80 100 120 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

169

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] -200 0 20 40 60 80 100 120 Time [sec] 0.5

0

-0.5 0 20 40 60 80 100 120

Yaw Rate [rad/sec] Time [sec]

10

8

6

4 Position [m] Position

2

0 0 2 4 6 810 Position [m]

 75 Starboard, 45 Port

1770

10

0

-10

-20 0 20 40 60 80 100 120 140

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 140 Time [sec] 500

0

-500

-1000 0 20 40 60 80 100 120 140 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

4

2

0 Roll [deg] Roll -2 0 20 40 60 80 100 120 140 Time [sec] 2

0

-2 Pitch [deg] Pitch -4 0 20 40 60 80 100 120 140 Time [sec] 200

0 Yaw [deg] Yaw -200 0 20 40 60 80 100 120 140 Time [sec]

171

0.5

0

-0.5 Yaw Rate [rad/sec] 0 20 40 60 80 100 120 140 Time [sec] 1

0

X Velocity [m/s] X Velocity -1 0 20 40 60 80 100 120 140 Time [sec] 1

0

Y Velocity [m/s] Y Velocity -1 0 20 40 60 80 100 120 140 Time [sec]

15

10

Position [m] Position 5

0 0 5 10 15 Position [m]

 105 Starboard, 45 Port

1772

20

0

-20

-40 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Yaw Rate GPS Time [sec] 2

1

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 500

0

-500

-1000 0 20 40 60 80 100 120 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] Yaw -200 0 20 40 60 80 100 120 Time [sec] 1

0

-1 0 20 40 60 80 100 120

Yaw Rate Yaw[rad/sec] Rate Time [sec]

173

10

8 [m]

6

4 Position [m]

2

0 0 2 4 6 8 10 Position [m]

 105 Starboard, 55 Port

20

0

-20

-40 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Yaw Rate GPS Time [sec] 2

1

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 1000

0

-1000

-2000 0 20 40 60 80 100 120 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

1774

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] -200 0 20 40 60 80 100 120 Time [sec] 1

0

-1 0 20 40 60 80 100 120

Yaw Rate [rad/sec] Time [sec]

10

8

6

4 Position [m] Position

2

0 0 2 4 6 8 10 Position [m]

 105 Starboard, 75 Port

1775

10

0

-10

-20 0 20 40 60 80 100 120 140

GPS Yaw Rate [deg/sec] Yaw Rate GPS Time [sec] 2

1

Velocity [m/s] 0 0 20 40 60 80 100 120 140 Time [sec] 500

0

-500

-1000 0 20 40 60 80 100 120 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

5

0

Roll [deg] Roll -5 0 20 40 60 80 100 120 140 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 140 Time [sec] 200

0

Yaw [deg] Yaw -200 0 20 40 60 80 100 120 140 Time [sec] 1

0

-1 0 20 40 60 80 100 120 140

Yaw Rate Yaw[rad/sec] Rate Time [sec]

176

15

10

Position [m] Position 5

0 0 5 10 15 20 Position [m]

 125 Starboard, 45 Port

10

0

-10

-20 0 20 40 60 80 100 120 140

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 140 Time [sec] 500

0

-500

-1000 0 20 40 60 80 100 120 140 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

1777

4

2

0 Roll [deg] Roll -2 0 20 40 60 80 100 120 140 Time [sec] 2

0

-2 Pitch [deg] Pitch -4 0 20 40 60 80 100 120 140 Time [sec] 200

0 Yaw [deg] Yaw -200 0 20 40 60 80 100 120 140 Time [sec]

0.5

0

-0.5 Yaw Rate [rad/sec] 0 20 40 60 80 100 120 140 Time [sec] 1

0

X Velocity [m/s] X Velocity -1 0 20 40 60 80 100 120 140 Time [sec] 1

0

Y Velocity [m/s] Y Velocity -1 0 20 40 60 80 100 120 140 Time [sec]

 125 Starboard, 55 Port

178

50

0

-50 0 10 20 30 40 50 60 70 80

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 3

2

1

Velocity [m/s] 0 0 10 20 30 40 50 60 70 80 Time [sec] 500

0

-500

-1000 0 10 20 30 40 50 60 70 80 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2

0

Roll [deg] Roll -2 0 10 20 30 40 50 60 Time [sec] 5

0

Pitch [deg] Pitch -5 0 10 20 30 40 50 60 Time [sec] 200

0

Yaw [deg] -200 0 10 20 30 40 50 60 Time [sec] 1

0

-1 0 10 20 30 40 50 60

Yaw Rate [rad/sec] Rate Yaw Time [sec]

179

10

8

6

4 Position [m] Position

2

0 0 2 4 6 8 10 Position [m]

 125 Starboard, 105 Port

5

0

-5

-10 0 10 20 30 40 50 60 70

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 10 20 30 40 50 60 70 Time [sec] 200

100

0

-100 0 10 20 30 40 50 60 70 80 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

180

2

1

Roll [deg] Roll 0 0 10 20 30 40 50 60 70 80 Time [sec] 5

0

Pitch [deg] Pitch -5 0 10 20 30 40 50 60 70 80 Time [sec] 100

0

Yaw [deg] -100 0 10 20 30 40 50 60 70 80 Time [sec] 0.5

0

-0.5 0 10 20 30 40 50 60 70 80

Yaw Rate [rad/sec] Time [sec]

15

10 [m]

Position [m] 5

0 0 5 10 15 Position [m]

Land Circle Tests: Right Turn

 35 Starboard, 55 Port

181

5

0

-5 0 20 40 60 80 100 120 140

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 140 Time [sec] 200

100

0 0 20 40 60 80 100 120 140 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

5

0

Roll [deg] Roll -5 0 20 40 60 80 100 120 140 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 140 Time [sec] 0

-100

Yaw [deg] -200 0 20 40 60 80 100 120 140 Time [sec] 0.5

0

-0.5 0 20 40 60 80 100 120 140

Yaw Rate [rad/sec] Rate Yaw Time [sec]

182

20

15

10 Position [m] Position 5

0 0 5 10 15 20 Position [m]

 35 Starboard, 75 Port

20

10

0

-10 0 50 100 150

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1

0.5

Velocity [m/s] 0 0 50 100 150 Time [sec] 1000

500

0 0 50 100 150 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

183

2

0

Roll [deg] Roll -2 0 50 100 150 Time [sec] 5

0

Pitch [deg] Pitch -5 0 50 100 150 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 Time [sec] 0.5

0

-0.5 0 50 100 150

Yaw Rate [rad/sec] Time [sec]

12

10

8

6

Position [m] Position 4

2

0 0 2 4 6 8 10 12 Position [m]

 45 Starboard, 75 Port

184

80

60

Motor Cmd Motor 40 0 10 20 30 40 50 60 70 80 90

76 40 75.5 30 75 20 74.5 10 Port Cmd Port 74 0 Current [amps] 0 10 20 30 40 50 60 70 80 90

80 40 70 30 60 20 50 10

Stbd Cmd Stbd 40 0 Current [amps] 0 10 20 30 40 50 60 70 80 90

400

200

0 0 10 20 30 40 50 60 70 80 90 Track Force [N] Force Track Time [sec] Port Starboard

10

5

0

-5 0 20 40 60 80 100 120 140 160

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 20 40 60 80 100 120 140 160 Time [sec] 1000

500

0 0 50 100 150 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

185

5

0

Roll [deg] Roll -5 0 20 40 60 80 100 120 140 160 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 140 160 Time [sec] 200

0

Yaw [deg] -200 0 20 40 60 80 100 120 140 160 Time [sec] 0.5

0

-0.5 0 20 40 60 80 100 120 140 160

Yaw Rate [rad/sec] Time [sec]

15

10

Position [m] Position 5

0 0 5 10 15 Position [m]

 45 Starboard, 105 Port

186

40

20

0

-20 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 2

1

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 9

8

7

6 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] -200 0 20 40 60 80 100 120 Time [sec] 1

0

-1 0 20 40 60 80 100 120

Yaw Rate [rad/sec] Rate Yaw Time [sec]

12

10

8

6

Position [m] Position 4

2

0 0 2 4 6 8 10 12 Position [m] 187

 55 Starboard, 105 Port

20

10

0

-10 0 20 40 60 80 100 120

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 2

1

Velocity [m/s] 0 0 20 40 60 80 100 120 Time [sec] 1000

500

0 0 20 40 60 80 100 120 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2

0

Roll [deg] Roll -2 0 20 40 60 80 100 120 Time [sec] 5

0

Pitch [deg] Pitch -5 0 20 40 60 80 100 120 Time [sec] 200

0

Yaw [deg] Yaw -200 0 20 40 60 80 100 120 Time [sec] 1

0

-1 0 20 40 60 80 100 120

Yaw Rate Yaw[rad/sec] Rate Time [sec]

188

15

10

Position [m] 5

0 0 5 10 15 Position [m]

 75 Starboard, 105 Port

10

5

0

-5 0 10 20 30 40 50 60 70 80

GPS Yaw Rate [deg/sec] Yaw Rate GPS Time [sec] 2

1

Velocity [m/s] 0 0 10 20 30 40 50 60 70 80 Time [sec] 200

150

100

50 0 10 20 30 40 50 60 70 80 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

189

2

0

Roll [deg] Roll -2 0 10 20 30 40 50 60 70 80 Time [sec] 5

0

Pitch [deg] Pitch -5 0 10 20 30 40 50 60 70 80 Time [sec] 200

0

Yaw [deg] -200 0 10 20 30 40 50 60 70 80 Time [sec] 0.5

0

-0.5 0 10 20 30 40 50 60 70 80

Yaw Rate [rad/sec] Time [sec]

20

15

10 Position [m] Position 5

0 0 5 10 15 20 Position [m]

 45 Starboard, 125 Port

1990

40

20

0

-20 0 10 20 30 40 50 60 70 80 90

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 2

1

Velocity [m/s] 0 0 10 20 30 40 50 60 70 80 90 Time [sec] 1500

1000

500

0 0 10 20 30 40 50 60 70 80 90 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

5

0

Roll [deg] Roll -5 0 10 20 30 40 50 60 70 80 90 100 Time [sec] 5

0

Pitch [deg] Pitch -5 0 10 20 30 40 50 60 70 80 90 100 Time [sec] 200

0

Yaw [deg] -200 0 10 20 30 40 50 60 70 80 90 100 Time [sec] 1

0

-1 0 10 20 30 40 50 60 70 80 90 100

Yaw Rate [rad/sec] Rate Yaw Time [sec]

8

6 [m]

4 Position [m] 2

0 0 2 4 6 8 Position [m] 1991

 55 Starboard, 125 Port

20

0

-20

-40 0 10 20 30 40 50 60

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 2

1

Velocity [m/s] 0 0 10 20 30 40 50 60 Time [sec] 500

0

-500

-1000 0 10 20 30 40 50 60 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2

0

Roll [deg] Roll -2 0 10 20 30 40 50 60 Time [sec] 5

0

Pitch [deg] Pitch -5 0 10 20 30 40 50 60 Time [sec] 200

0

Yaw [deg] -200 0 10 20 30 40 50 60 Time [sec] 1

0

-1 0 10 20 30 40 50 60

Yaw Rate [rad/sec] Rate Yaw Time [sec]

192

8

6

4 Position [m] Position 2

0 0 2 4 6 8 Position [m]

 105 Starboard, 125 Port

5

0

-5

-10 0 10 20 30 40 50 60 70

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 10 20 30 40 50 60 70 Time [sec] 200

100

0

-100 0 10 20 30 40 50 60 70 80 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

1993

26.055

26.055

Roll [deg] Roll 26.055 0 5 10 15 20 25 Time [sec] -80.1126 -80.1126 -80.1126 -80.1126 Pitch [deg] Pitch 0 5 10 15 20 25 Time [sec] -18

-20

Yaw [deg] -22 0 5 10 15 20 25 Time [sec] 10

0

-10 0 5 10 15 20 25

Yaw Rate [rad/sec] Time [sec]

15

10

Position [m] Position 5

0 0 5 10 15 Position [m]

Water Tests: Left Turn

 80 Starboard, 0 Port

1994

10

0

-10 0 50 100 150 200 250 300 350 400 450

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 400 450 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 300 350 400 450 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

60

50

] 40 m [ n

o 30 iti os o [ ]

P 20

10

0 0 20 40 60 Position [m]

 100 Starboard, 0 Port

1995

20

10

0

-10 0 50 100 150 200 250 300 350 400 450 500

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 400 450 500 Time [sec] 200

0

-200

-400 0 50 100 150 200 250 300 350 400 450 500 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 400 450 500 Time [sec] 5

0

Pitch [deg] Pitch -5 0 50 100 150 200 250 300 350 400 450 500 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 400 450 500 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250 300 350 400 450 500

Yaw Rate [rad/sec] Rate Yaw Time [sec]

196

60

50

40

30

Position [m] Position 20

10

0 0 20 40 60 Position [m]

 100 Starboard, ‐40 Port

1997

10

0

-10

-20 0 50 100 150 200 250 300 350 400

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 400 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 300 350 400 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 400 Time [sec] 5

0

Pitch [deg] Pitch -5 0 50 100 150 200 250 300 350 400 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 400 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250 300 350 400

Yaw Rate [rad/sec] Rate Yaw Time [sec]

70 60 50 40 30

Position [m] Position 20 10 0 0 20 40 60 Position [m]

1998

 100 Starboard, ‐80 Port

10

0

-10

-20 0 50 100 150 200 250 300 350

GPS Yaw Rate [deg/sec] Yaw Rate GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 300 350 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 Time [sec] 5

0

Pitch [deg] Pitch -5 0 50 100 150 200 250 300 350 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250 300 350

Yaw Rate [rad/sec] Rate Yaw Time [sec]

199

40

] 30 m [ on

iti 20 os Piti[] P 10

0 0 10 20 30 40 Position [m]

 100 Starboard, ‐100 Port

10

0

-10

-20 0 50 100 150 200 250 300 350

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 Time [sec] 1000

0

-1000

-2000 0 50 100 150 200 250 300 350 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

2000

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 Time [sec] 5

0

Pitch [deg] Pitch -5 0 50 100 150 200 250 300 350 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250 300 350

Yaw Rate [rad/sec] Time [sec]

40

30

20 Position [m] Position 10

0 0 10 20 30 40 Position [m]

 125 Starboard, 0 Port

2001

10

0

-10 0 50 100 150 200 250 300 350 400

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 400 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 300 350 400 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 400 Time [sec] 2

0

Pitch [deg] Pitch -2 0 50 100 150 200 250 300 350 400 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 400 Time [sec] 0.2

0

-0.2 0 50 100 150 200 250 300 350 400

Yaw Rate [rad/sec] Rate Yaw Time [sec]

60

50

40

30

Position [m] Position 20

10

0 0 20 40 60 Position [m]

2002

 125 Starboard, ‐45 Port

10

0

-10 0 50 100 150 200 250 300 350 400 450

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 300 350 400 450 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 300 350 400 450 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 300 350 400 450 Time [sec] 2

0

Pitch [deg] Pitch -2 0 50 100 150 200 250 300 350 400 450 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 300 350 400 450 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250 300 350 400 450

Yaw Rate [rad/sec] Rate Yaw Time [sec]

203

50

40

30

20 Position [m] Position

10

0 0 10 20 30 40 50 Position [m]

 125 Starboard, ‐125 Port

2004

10

0

-10

-20 0 50 100 150 200 250

GPS Yaw Rate [deg/sec] Rate Yaw GPS Time [sec] 1.5

1

0.5

Velocity [m/s] 0 0 50 100 150 200 250 Time [sec] 500

0

-500

-1000 0 50 100 150 200 250 Time [sec] Unwrapped Heading [deg] Heading Unwrapped

10

0

Roll [deg] Roll -10 0 50 100 150 200 250 Time [sec] 2

0

Pitch [deg] Pitch -2 0 50 100 150 200 250 Time [sec] 200

0

Yaw [deg] -200 0 50 100 150 200 250 Time [sec] 0.5

0

-0.5 0 50 100 150 200 250

Yaw Rate [rad/sec] Rate Yaw Time [sec]

35 30 25 20

15

Position [m] Position 10 5

0 0 10 20 30 Position [m]

2005

B. Matlab Code OS5000 Compass clear all close all clc

% Joe Marquardt DUKW-ling. PARSE OS5000 compass data % DATA MUST BE IN THE FOLLOWING FORMAT: % NOW THAT IT IS IN 24 HOUR CLOCK % "3/16/2012 15:36:42",$C223.0P-1.2R-0.5T31.6*24 % This code reads in compass data (saved in the directory as a .dat % file) from the OS5000 digital compass. It plots heading, % roll angle and pitch angle vs. time. % Time is Coordinated Universal Time (UTC), synchronized on data % collection computer so timestamp matches other data

%% Open Compass Data File (Make sure first line is Data) % Use textscan to parse data (time,heading, roll and pitch) compass = fopen('compass.dat'); compass_data = textscan(compass, '%s%f%c%f%c%f%c%c%c%c%f%c%f%c%f%c%f%c%f%s'); fclose(compass);

%% Define the columns of data needed for plotting hour_cell = compass_data(:,2); hour = cell2mat(hour_cell); minute_cell = compass_data(:,4); minute = cell2mat(minute_cell); second_cell = compass_data(:,6); second = cell2mat(second_cell); hours_in_sec = hour.*3600; minutes_in_sec = minute.*60; UTC_time_in_sec = hours_in_sec + minutes_in_sec + second; heading_degrees = compass_data{11}; pitch_angle = compass_data{13}; roll_angle = compass_data{15};

% Plot Data % Subtract MIN so plot starts at zero UTC_time_in_sec = UTC_time_in_sec - min(UTC_time_in_sec);

% Plot Heading in Degrees vs. UTC Time plot(UTC_time_in_sec,heading_degrees) xlabel('Time [sec]') ylabel('Heading [deg]') set(get(gca,'Xlabel'),'FontSize',14) set(get(gca,'Ylabel'),'FontSize',14) set(gca,'FontSize',14); 206

figure % Plot Pitch Angle in Degrees vs. Time plot(UTC_time_in_sec,pitch_angle) xlabel('Time [sec]') ylabel('Pitch [deg]') set(get(gca,'Xlabel'),'FontSize',14) set(get(gca,'Ylabel'),'FontSize',14) set(gca,'FontSize',14); figure % Plot Roll Angle in Degrees vs. Time plot(UTC_time_in_sec,roll_angle) xlabel('Time [sec]') ylabel('Roll [deg]') set(get(gca,'Xlabel'),'FontSize',14) set(get(gca,'Ylabel'),'FontSize',14) set(gca,'FontSize',14);

C. Vision System Development

Vision Based Navigation Background

Vision based navigation is popular among autonomous vehicles that operate on land and sea. It provides a relatively inexpensive means of obstacle avoidance when compared to LIDAR systems. Stereo vision, which provides the vehicle with a 3D depth perception of its surroundings, can also replace the need for complex LIDAR systems in some cases. Another option is to combine the use of LIDAR and stereovision for more accurate results.

Stereo vision allows a control system to understand its surroundings better than monocular vision because it provides depth perception. There are many autonomous systems that use stereo vision as a means of obstacle avoidance. In [42], an autonomous uses stereo vision cameras to navigate while avoiding obstacles such as pedestrians and other vehicles. This is the only form of obstacle detection used on the vehicle and proves to be an efficient means of navigation.

Light detection and ranging (LIDAR) systems are another technique for obstacle detection and navigation. These systems are complex and expensive, and in the open water environment the vehicle will primarily be located in, it may not be needed. LIDAR also has a disadvantage in that, although it has good range and resolution, it only is capable of scanning a single plane. For example, if one object in the field of view is blocked by another, it is not detected by the LIDAR system.

207

In [33], testing showed that a 33 cm baseline stereo vision camera system performed well in short range, but when compared to a LIDAR system in long range experiments, its accuracy was not comparable. This project, a seven mile, autonomous high speed dessert race, required accurate long range obstacle sensing, because of the speeds the vehicle was traveling. Because of this, they discontinued the development of the stereo system based on its long range limitations. [33] also suggests a wider baseline between the cameras could have increased the range capabilities of the stereo vision system but was not tested because of the positive results of the LIDAR system.

Coupling a LIDAR device with stereo vision would combine the 3D sensing of stereo vision with the accuracy of LIDAR, giving a precise 3D representation of the vehicle’s surroundings [22]. Stereo vision has limitations with longer range targets, as well as computational errors. It does, however, provide a vehicle with enough information for semi-complex navigation procedures [41]. Coupling the two systems, as outlined in the slam documentation allows for a process called Simultaneous Localization and Mapping, or SLAM. SLAM is a process where an autonomous vehicle can create a 3D point cloud, or 3D map of its surroundings, while simultaneously updating its current location within the map. This procedure could be beneficial for the DUKW-21 concept in its amphibious mission.

OpenCV is an open source library of image processing software. There are currently over 500 functions available through this software. The development of this software was started by Intel in 1999 [2]. Using OpenCV for autonomous vehicle navigation is a popular application of this open source software.

OpenCV libraries include toolboxes that allow blob tracking, edge and pattern recognition and color recognition. These functions are important for navigation and control of an autonomous vehicle. Using these library functions in OpenCV will allow for rapid development of an obstacle avoidance system in this project. For example, [19] uses optical flow and corner recognition algorithms in OpenCV for the control of an autonomous vehicle. This method uses apparent motion of an object based on the relative motion of the vehicle and its surroundings. This method would be applicable to our vehicle as it quickly navigates through the surf zone, since the motion of the vehicle and potential obstacles will be changing very quickly in the region. The work outlined in [3] uses optical flow techniques to track obstacles in real time for use in autonomous control of a small car. These experiments were successful in tracking fast moving Stereo Vision Camera System 208

There are several methods of autonomous obstacle avoidance and navigation. Systems such as LIDAR, ultrasonic range sensors, infrared proximity sensors, monocular cameras and stereo vision cameras are systems that are used for autonomous navigation. This project will explore the use of a stereo vision system to perform the task of locating obstacles. Stereo vision imitates the technique a human uses to detect the range of an object in front of him. By matching the images from the left and right eyes, which are at a known distance apart from each other, the human brain can determine the location and distance of what it sees. Similarly, a stereo vision camera system determines the distance a potential obstacle is away from the vehicle, and relays this information to the control system for avoidance.

Cameras

Knowing the exact distance between the two cameras is necessary for range calculations. A closer baseline will provide better accuracy of detecting obstacles at close range because of the reduced blind spot that will occur. However, a wide baseline system will allow better resolution of long range obstacles [25].

While there are “off-the-shelf” stereo cameras on the market for autonomous vehicles, the project will explore the use of a simple webcam based system. The vehicle is required to locate navigation buoys and obstacles no less than one foot in diameter within two vehicle lengths. Given these requirements; a webcam’s range, resolution and processing rate allow it to perform this task sufficiently. Webcams are an inexpensive way to explore the capabilities of stereo vision as a means of obstacle avoidance for an amphibious vehicle. The inexpensive cameras also allow the opportunity to explore the use of a multi-stereo camera system, with wide baseline cameras coupled with small baseline, short range cameras.

For initial testing, a Minoru 3D webcam, shown in the figure below was used. This web cam is designed to perform three dimensional representations of the images it captures. The system is simply two webcams that share a USB port. These cameras will serve as a simple way to explore the application of stereo vision on the DUKW-ling. The Minoru web cam will be enclosed in a waterproof housing and mounted to the top of the vehicle. Initial testing will determine the capabilities of the camera’s use for autonomous stereo vision, as well as the need for a second wider-baseline system. These cameras are powered through the USB cable, and therefore require minimal electrical complexity. 209

The stereo vision camera system will provide the control system will information about the vehicle’s surroundings. It will utilize its own image processing computer, passing necessary information to the control system using serial communication. This separate computer was chosen to allow image processing, one of the most computationally demanding sensor processing tasks, to be separate from the main control computer. This will allow faster updates of understanding the vehicle’s surroundings while not slowing down the other tasks required for autonomous control. The vision computer will be a Windows based imbedded processor, because using OpenCV is more simplified on this type of processor. The main control computer will request information from the vision computer to initiate this function in the camera software. For example, when the vehicle is navigating offshore, the control computer can request the location of navigation aids (buoys, channel markers), as well as potential obstacles along the course. When the vehicle is on land, a predetermined path on the beach can be followed by line tracking, where the camera computer will relay the path to the control computer for navigation.

OpenCV

The stereo vision system will be developed using thhe Open Source Computer Vision (OpenCV) library. OpenCV is a free library of computer vision infrastructure that aids in the development of vision applications. Alternatives to OpenCV are the Gandalf vision library, EmbedCV and Blepo. With over 500 functions, OpenCV software allows faster development of vision based systems, such as stereo vision obstacle avoidance [2]. The documentation and references on OpenCV, as well as many past projects that have utilized OpenCV make it an ideal choice for applying to this project when compared to other less popular librraries.

Stereo vision is a computer emulation of the depth perception given to us by our eyes. A computer accomplishes this task by matching similarities between two images from cameras at a known distance apart (camera base-line). Using geometry, the distance of the object detected

210

can be determined. OpenCV contains many functions unique to stereo vision, and can be used to perform the process of stereo vision:

Un-distortion – Radial and tangential lens distortion is removed mathematically.

Rectification – Adjust for the angles and base-line, which gives an output of images that are row-aligned and rectified. Row aligned means the images are coplanar, and are exactly aligned with one another.

Correspondence – Find similar features between the left and right camera images. The output of this process is a “disparity map.” A disparity map is a matrix that defines the difference in x- coordinates of the similar feature viewed in each camera Xdisparity = Xleft-Xright

Triangulation and Reprojection – Using the known baseline separation of the cameras, the disparity map can be converted to distances and now a “depth map” of what the cameras see can be defined [2].

The figure above explains the procedure of computer based stereo vision [2]. OpenCV contains library functions that perform these calculations, as well as more advanced calculations that will help locate potential obstacles and define the vehicle’s surroundinngs. The ability of locating things such as the shore line, incoming waves and inclines will also be explored. This will be done by recording video on the vehicle during remoote control operation. This video will then be used to test different functions and algorithms to determine the best way of locating these objects on a laptop, where bench-style testing can expedite this process. OpenCV also has functions that determine the location of an object of known dimeensions or pattern, which can be applied to container payload localization.

211

The four main functions that will be performed by the stereo vision system will be: blob tracking, line tracking and shape and pattern recognition. Blob tracking will be a means of obstacle avoidance for the vehicle. It will notify the control system of objects in front of the vehicle to be avoided. Line tracking could identify the shoreline, and be used to guide the vehicle along a path once on land. Shape and pattern recognition can be used for offshore navigation to recognize channel markers and navigation buoys.

Vision System Development

The vision system software was developed using the tools in the OpenCV library. The focus of software development was blob tracking, the most beneficial tool for navigating through the surf zone onto the beach.

The first vision code developed identifies circular objects of a defined range of colors. This range of colors is defined using HSV (hue, saturation and value) color space. This color space is less susceptible to sunlight. The user can define a color or a range of colors and define this as the “range of interest” within the developed software. When the software is used, it places a circle around the area that contains the most pixels of the defined range of interest. The software’s output is the radius of the circle and its position in the camera frame. This code can be used to identify navigational buoys and their distance away from the vehicle can be determined by the radius of the bounding circle. The results of testing will be detailed in section 3.2.

The second vision code developed identifies multiple blobs and outputs their location. This code defines regions of the defined color range by enclosing the areas in a rectangle. The area of each rectangle found and the rectangles’ centroids are given. This code can be used in avoiding obstacles as well as navigating through buoys. Testing results are detailed in section 3.2.

Other functions that have been initially developed are SIFT and SURF template matching, stereo vision, line/edge tracking and motion tracking.

212

Vision System

The vision system software that was developed for this vehicle has only been tested in bench- top style tests. Because the vehicle is not yet autonoomous, it was not used for navigation or obstacle avoidance in the test zone as of this report writing. Planned research in the following year of this project will utilize the developed vision system software as a means of obstacle avoidance and navigation. The aim of this software development was to accurately identify objects in the path of the vehicle for navigation and obstacle avoidance. The vision system can also be used for locating the payload container to perform its autonomous cargo transfer mission. The container was placed at different distances from the cameras, and its size and location in the camera frame was recorded and compared to actual position.

Besides locating potential obstacles, the most obvious requiremennt of the vision system was to locate a channel for the vehicle to navigate through. To test this functionality, conventional red and green buoys were used for channel markers, and the software was tested outdoors to give 213

the position and size of these buoys. The measured size of the buoys can be used to determine their distance from the vehicle if the channel markers in future testing are a uniform size. This will be detailed in the results section.

Testing was performed in different lighting conditions, to determine any limitations of the cameras.

Some Current Results

The four main functions the camera system will be responsible for are blob tracking, line tracking and shape and pattern recognition. Blob and line tracking apply to obstacle avoidance, since the camera will be able to locate objects in the frames and define the location of these objects. If the X and Y axes point to the left and up, respectively, the Z axis will point straight out in front of the vehicle. The X and Y location will define the angle at which the object is detected, and the Z location will be its distance from the vehicle. Distance estimates are performed by stereo vision, comparing disparities between the two cameras.

Currently, OpenCV has been used to locate a circle of a user defined color, and output the X and Y location of the centroid of the circle within the image frame. The program uses a video stream from one camera, converts the image from RGB to the HSV color space, which represents hue, saturation and brightness of the color. It was found from previous computer vision projects that filtering colors is easier in the HSV color space [42]. The colors outside of the defined range are then filtered out. A Hough transform defines the circle seen in the image. A Hough transform estimates a circular region surrounding the isolated pixels (in this case all red pixels). A circle is overlaid around the circle detected in the frame by the Hough transform. The output is the X and Y coordinate of the circle’s center, and an estimate of its radius. This process can be seen below.

214

This demonstrates one of the possible functions the OpenCV soffttware can perform. Tracking more than one object is more useful when navigatinng, and the figure below shows how the camera can detect multiple blobs and number each object it detects. This function would be ideal for navigating through buoys or detecting known objects in the vehicle’s path. The size of the objects detected and their location in the frame and in relation to each other is the next step in this particular blob tracker development.

215

The next step is stereo vision, using both cameras for depth calculations. As outlined above, determining the Z location of objects detected by stereo vision is a four step process. There are specific stereo vision functions in OpenCV that allow filtering, rectification, disparity maps and depth calculations.

D. SolidWorks CAD Drawings

Wheel Axle Drop Bracket

Sprocket Axle Drop Bracket

216

Main Drivetrain Housing

Axle Bearing

217

Drivetrain Assembled

Sprocket Axle

218

6 REFERENCES

[1] Beaujean, P. Bon, A. An, E. “Motion-Compensated Acoustic Positioning in

Very Shallow Waters Using Spread-Spectrum Signaling and a Tetrahedrial Ultrashort

Baseline Array,” Marine Technology Journal, Vol. 44 #5, 2010.

[2] Bradski, G. and Kaehler, A., Leaarning OpenCV. Sabastopol, CA, USA:

O’Reilly Media, 2008.

[3] Braillon, C. Pradalier, C. Crowley, J. Laugier, C. “Real-time Moving

Obstacle Detection Using Optical Flow Models,” Intellegent Vehicles Symposium,

IEEE, 2006.

[4] Corradini, M. Leo, T. Orlando, G. “Experimental Testing of Discrete-time

Sliding Mode Controller for Trajectory Tracking of a Wheeled Mobile Robot in the

Presence of Skidding Effects,” Journal of Robotic Systems,, Vol. 19, Issue 4, 2002.

[5] Couser, P. “Seakeeping Analysis of Preliminary Design,” Formation Design

Systems, Fremantle,WA, Australia, 2010.

[6] Deo, A. “A Fast Localization Method Based on Distance Measurement in a

Modeled Environment,” Case Western Reserve University, Cleveland, OH, USA, 2009.

[7] Ferguson, D. Stenz, A. “Using Interpolation to Improve Path Planning: The

Field D* Algorithm,” Journal of Field Roboticss, Volume 23, 2006. 219

[8] Flom, B. “DUKW 21 Autonomous Navigation – Autonomous Path Planning for an Amphibious Vehicle: Report #1,” NSWCCD, Bethesda, MD, USA, 2009.

[9] Flom, B. “DUKW 21 Autonomous Navigation – Transitioning Between Sea and Land: Report #2,” NSWCCD, Bethesda, MD, USA, 2010.

[10] Finch J. “AAAV Design. Advanced Amphibious Assault Vehicle Final

Report Vol. 1,” General Dynamics Amphibious Systems, Annual Report, Woodbridge,

VA, USA, 2003

[11] Furfaro, T., “Path-Following Control of the Wave Adaptive Modular

Vessel,” Florida Atlantic University, Dania Beach, FL, USA, MS Thesis (in progress),

2010.

[12] Gilmore, T. and Johnson, B. Introduction to Naval Architecture, Annapolis,

MD, USA: US Naval Institute Press.

[13] Gonzales, F. Orme, R. Ruppert, A. and Schaffer, J. “DUKW 21 –

Amphibious Cargo Transfer from Ship to Shore,” NSWCCD, Bethesda, MD, USA,

2007.

[14] Greytak, M. “Integrated Motion Planning and Model Learning for Mobile

Robots with Application to Marine Vehicles,” PhD Thesis, Department of Mechanical

Engineering, Massachusetts Institute of Technology, Cambridge, MA, USA, 2006.

220

[15] Gui, L. Longdo, B. Metcalf, B. Shao, J. and Stern, F. “Forces, Moments, and Wave Pattern for Surface Combatant in Regular Headwaves,” Experiments in

Fluids, Vol. 31 #6, 2001.

[16] Henning, J. Brink, K.E. Kuehnlein, “Innovative Deterministic Seakeeping

Test Procedures,” Proceedings of STAB 2003, Madrid, Spain, 2003.

[17] Kumar, S. “Binocular Stereo Vision Based Obstacle Avoidance Algorithm for Autonomous Mobile Robots,” IEEE International Advance Computing Conference,

Patiala, India, 2009.

[18] Larson, J. Bruch, M. and Ebken, J. “Autonomous Navigation and Obstacle

Avoidance for Unmanned Surface Vehicles,” Space and Naval Warfare Systems Center,

San Diego, CA, USA, 2006.

[19] Lowe, T. Wyeth, G. “Obstacle Detection using Optical Flow,” University of Queensland,

St Lucia, Australia, 2005.

[20] Mahacek, P. “Dynamic Analysis of a SWATH Vessel,” MBARI, Santa

Clara University, Moss Landing, CA, USA, 2005

[21] Manduchi, R. “Obstacle Detection and Terrain Classification for

Autonomous Off- Navigation,” University of California at Santa Cruz, Santa Cruz,

CA, USA, 2005.

221

[22] Nickels, K. “Fusion of Lidar and Stereo Range for Mobile Robots,”

Proceedings of the 11th International Conference on Advanced Robotics, Coimbra,

Portugal, 2003.

[23] Novick, D. “Image Processing Primer Document for Autonomous Vehicle

Competitions,” Association for Unmanned Systems International (AUVSI), US Navy

Office of Naval Research, 2010.

[25] Olson, C. F. Abi-Rached, H. Ye, M. and Hendrich, J. P. “Wide-Baseline

Stereo Vision for Mars Rovers.” Proceedings of the 2003 IEEE/RSJ International

Conference on Intelligent Robots and Systems, Las Vegas, NV, USA, 2003.

[26] Pell, B. “An Autonomous Spacecraft Agent Prototype,” Agents Conference

Proceedings, 1997.

[27] Peng, Y. and Han, J. “Tracking Control of Unmanned Trimaran Surface

Vehicle: Using Adaptive Uncented Kalman Filter to Estimate the Uncertain

Parameters.” 2008 IEEE Conference on Robotics, Automation and Mechatronics,

Chengdu, China, 2008.

[28] Quintero, M. and Schaffer, F., “Ship Dynamics in the Surf Zone Model

Testing,” NSWCCD, Bethesda, MD, USA, 2008.

[29] Quintero, M. “Model Testing of Ship Dynamics in the Surf Zone,”

University of Hawaii, Manoa, HI, USA. Thesis, 2009.

222

[30] Scaramuzza, M. and Vink, R. “The Development of an Autonomous

Balancing Robot Using Only Stereo Vision,” Department of Computer Science, St. Olaf

College, Northfield, MN, USA, 2010.

[31] Rao, Singiresu. “Mechanical Vibrations Fourth Edition,” Prentice Hall,

USA, 2004.

[32] Senior Design Team. “Control of Unmanned Amphibious Cargo Carrying

System Final Design Report,” Florida Atlantic University, Dania Beach, FL, USA,

2010.

[33] Stee, S. “Experimenal Methods in Marine Hydrodynamics,” www.ivt.ntnu.no, 2010.

[34] Thrun, S. et. Al. “Stanley: The Robot That Won The 2005 DARPA Grand

Challenge,” Stanford Artificial Intelligence Laboratory, Stanford University, Stanford,

CA, USA, 2006.

[35] Triantafyllou, M. and Hover, F. “Maneuvering and Control of Marine

Vehicles,” Massachusetts Institute of Technology, Cambridge, MA, USA, 2003.

[36] von Ellenrieder, K. “Technical Proposal: Systems Identification of an

Autonomous Amphibious Vehicle,” Florida Atlantic University, Dania Beach, FL,

USA, 2010.

223

[37] von Ellenrieder, K. “Elements of High Speed Marine Vehicle Design-

Homework Solutions,” Florida Atlantic University, Dania Beach, FL, USA, Spring,

2011.

[38] Wellicome, J. Temarel, P. Molland, A. Cic, J. and Taunton, D.

“Experimental Measurements of the Seakeeping Characteristics of Fast Displacement

Catemerans in Oblique Waves,” University of Southhampton, South Hampton,

Hampshire, UK,1999.

[39] Zhu, H. Hu, H. Gui, W. “Adaptive Uncented Kalman Filter for Deep-sea

Tracked Vehicle Localization,” Proceeding of the 2009 IEEE Intl. Conference of

Information and Automation, Zhuhai/Macau, China, 2009.

[40] “Guide for Vessel Maneuverability,” American Bureau of Shipping,

Houston, TX, USA, 2006.

[41] Yoon, H.K. Rhee, K.P. “Identification of Hydrodynamic Coeficients in

Ship Maneuvering Equations of Motion by Estimation-Before-Modeling Technique,”

Department of Naval Architecture and Ocean Engineering, Seoul National University,

Seoul, South Korea, 2003.

[42] Zhao, G. Yuta, S. “Obstacle Detection by Vision System for an

Autonomous Vehicle,”

Institute of Information Sciences and Electronics, University of Tsukub, 2010.

[43] www.lirtex.com/robotics/fast-object-tracking-robot-computer-vision, “Fast object tracking using the OpenCV library,” Lior Chen, 2010.

224