to carry out pollutant tracking, and environmental and hydrographic surveys in ... hicle (USV) for environmental monitoring. ..... jp/buzz/marine/boats/ken-chan.
MODELLING AND CONTROL OF AN UNMANNED SURFACE VEHICLE FOR ENVIRONMENTAL MONITORING Wasif Naeem 1 , Robert Sutton and John Chudley
Marine and Industrial Dynamic Analysis Research Group University of Plymouth, Drake Circus Plymouth PL4 8AA, UK
Abstract: This paper presents an initial study of the autopilot development of an unmanned surface vehicle (USV). The USV named Springer is being developed to carry out pollutant tracking, and environmental and hydrographic surveys in rivers, reservoirs, inland waterways and coastal waters, particularly where shallow waters prevail. The catamaran shaped autonomous vessel is modelled as a two input, single output system whereas the autopilot selected is a genetic algorithm based model predictive controller (MPC). The USV dynamic model is obtained using system identification techniques. Simulation results depicting the autopilot performance in response to changes in the desired course are demonstrated. Keywords: Unmanned surface vehicles, system identification, model predictive controller, multivariable.
1. INTRODUCTION One of the several issues endangering the inhabitants of this world is the degrading environment. The ever so rise in pollution and lack of clean environment around the globe has a profound impact on the way people live on this earth. Thus it is imperative that the sources of these pollutants be monitored and treated accordingly in order to produce a healthy living for everyone. Autonomous marine vehicles (underwater and surface alike) are one such class of vehicles which are mainly designed to deal with issues such as mines clearing, pollutant tracking, surveillance operations, sea bed mapping, pipelines/cables inspection and shallow water surveying to name a few. The importance of such vehicles lies in the fact that they are able to carry out tasks in a variety of environments without jeopardizing human life. 1
corresponding author
In light of the discussion above, this paper deals with the development of an unmanned surface vehicle (USV) for environmental monitoring. Functionally, they are much simpler than an autonomous underwater vehicle (AUV) yet quite versatile for the kind of missions they are able to perform. From a scientific viewpoint, several USV projects are in existence. A programme has been running at the Massachusetts Institute of Technology (MIT) since the early 1990s during which time several craft have been developed for sub-bottom profile surveying and vehicle networking (MIT, 2004). The onboard control systems varying from rudimentary proportionalderivative designs to that based on simple fuzzy logic (Vaneck, 1997). Similarly, the French Port of Bordeaux has been investing in USV technology in order to reduce the cost of hydrographic surveys (Loeb et al., 1995). Whilst in Germany, the Messin USV is also being used for survey work and water ecological studies (Majohr et al., 2000).
In the Far East, the Japan Science Foundation commissioned the Yamaha Motor Company to design and build an unmanned ocean atmosphere observation boat named Kan-chan for deployment mainly in the North Pacific area (Yamaha Motor, 2003). Furthermore from Portugal, the Delfim USV has been used in conjunction with an AUV to study hydrothermal vent activity in the Dom Joao de Castro bank in the Azores (Pascoal et al., 2000).
into it for output predictions. For this purpose, system identification (SI) techniques are employed to extract the dynamic model of the USV which also enables the designer to gain some insight into system’s behaviour. For this, several sea trials need to be performed where the vessel is driven for some calculated manoeuvres and data is recorded. Similar approach has been adopted by Naeem (2004) to extract the model of an underwater vehicle and was proved to be quite successful.
From the foregoing and other relevant literature, it is clear that there is a technology gulf between the UK and other countries in this technologically interesting and extremely important area of study. Thus to redress this imbalance and to close the gap, the Marine and Industrial Dynamic Analysis (MIDAS) Research Group at the University of Plymouth are currently in the process of designing and developing an USV named Springer. Springer is intended to be a cost effective and environmentally friendly USV which is being designed primarily for undertaking pollutant tracking, and environmental and hydrographic surveys in rivers, reservoirs, inland waterways and coastal waters, particularly where shallow waters prevail. An equally important secondary role is also envisaged for Springer as a test bed platform for other academic and scientific institutions involved in environmental data gathering, sensor and instrumentation technology, control systems engineering and power systems based on alternative energy sources.
The paper is organised in the following manner. Section 2 elaborates on the architecture of the Springer USV. Whilst Section 3 provide details regarding the SI procedure. Section 4 outlines the GA-based MPC autopilot design and simulation results are presented in Section 5. Concluding remarks are provided in Section 6.
In order for the vehicle to be capable of undertaking the kinds of mission that are contemplated, Springer requires a robust, reliable, accurate and adaptable navigation, guidance and control (NGC) system which allows seamless switching between automatic and manual control modes. Whilst AUVs are now in service in the offshore industry, such craft cannot be deployed in shallow or inland waters to perform the kind of tasks outlined above. As a result, operational costs are currently high as SCUBA divers or special vessels containing a number of personnel have to be employed. It is foreseen that Springer will be portable and capable of operating in water from 1m to 60m in depth. This paper presents an initial autopilot design study of the Springer USV. The autopilot selected is a genetic algorithm (GA) based model predictive controller (MPC) which has been successfully implemented in the Hammerhead AUV (Naeem et al., 2005). Whilst the Hammerhead was modelled as a single input single output dynamic system, the Springer USV is a multi-input vessel and therefore poses a significant challenge to the controller design process. The MPC algorithm requires a model of the physical system embedded
2. SPRINGER ARCHITECTURE The Springer USV depicted in Figure 1 was designed as a medium waterplane twin hull (MWATH) vessel which is versatile in terms of mission profile and payload. It is approximately 4m long and 2.3m wide with a displacement of 0.6tonnes. Each hull is divided into three watertight compartments. The NGC system is carried in watertight Peli cases and secured in a bay area between the crossbeams. This facilitates the quick substitution of systems on shore or at water. The 350kg of batteries which are used to provide the power for the propulsion system and onboard electronics are carried within the hulls, accessed by a watertight hatch. Leak sensors are used to detect breaches in the hulls. If a breach is detected, the onboard computer can immediately give warning to the user and/or take appropriate action in order to minimize damage to internal components.
Fig. 1. Perspective of Springer USV In addition, a mast is installed to carry the GPS and wireless antennas as illustrated in Figure 1. The wireless antenna is used as a means of communication between the vessel and its user and is intended to be utilised for remote monitoring purpose, intervention in the case of erratic behaviour and to alter the mission parameters.
In order to minimize the noise pollution and eradicate diesel fuel, Springer propulsion system consists of two propellers powered by a set of 24V 74lbs Minn Kota Riptide transom mount saltwater trolling motors. Steering of the vessel is based on differential propeller revolution rates. The navigation system comprises of a global positioning system, speed log, environmental monitoring unit and a variety of compasses to produce redundancy in the system for a fault tolerant based multi-sensor data fusion system design. More details relating to Springer architecture can be found in Naeem et al. (2006).
In this figure, u is the input, y is the output or response, d is the disturbance, yˆ is the response of the model to the same input u and ε is the error between the model output and plant output also called the residuals. The objective of identification is to minimise the sum-squared errors or residuals ε. More details on SI can be found in Ljung (1999).
u(t)
+
d(t) +
Plant y(t) + ε(t)
The next section elaborates on the SI procedure and its application to the USV.
Model ^
y(t) Estimation Algorithm
3. SYSTEM IDENTIFICATION SI of a dynamical system generally consists of the following four steps. (1) (2) (3) (4)
Data acquisition Characterisation Identification/estimation Verification
The first and most important step is to acquire the input/output data of the system to be identified. Acquiring data is not trivial and can be very laborious and expensive. This involves careful planning of the inputs to be applied so that sufficient information about the system dynamics is obtained. If the inputs are not well designed, then it could lead to insufficient or even useless data. The second step defines the structure of the system, for example, type and order of the differential equation relating the input to the output. This means the selection of a suitable model structure, e.g. auto-regressive with exogenous input (ARX), auto-regressive moving average with exogenous input (ARMAX), output error etc. The third step is identification/estimation, which involves determining the numerical values of the structural parameters, which minimise the error between the system to be identified, and its model. Common estimation methods are least squares, instrumental-variable, maximum-likelihood and the prediction-error method. The final step, verification, consists of relating the system to the identified model responses in time or frequency domain to instil confidence in the obtained model. Residual (correlation) analysis and cross-validation tests have been employed for model validation in this paper. The abovementioned features of SI are symbolically indicated in Fig. 2.
Fig. 2. The overall system identification procedure The next subsection applies SI to a generic catamaran shaped USV model which is structurally similar to Springer.
3.1 Application to a generic nonlinear USV model In this section, the SI procedure is applied to a generic multi-input USV model. For this purpose, use is made of the Delfim USV nonlinear Simulink model supplied by IST, Lisbon which has a differential steering mechanism similar to the Springer vehicle. Since the Springer is still in the development stages, much of the initial model development and autopilot design is being carried out using this nonlinear model. The Springer USV can be simply modelled as a two input, single output system in the form depicted in Figure 3. n1 (rps)
Springer USV Dynamics
heading (degrees)
n2 (rps)
Fig. 3. Block diagram representation of a twoinput USV n1 and n2 being the two propeller thrusts in revolutions per second. Clearly, straight line manoeuvres require both the thrusters running at the same speed whereas the differential thrust is zero in this case. In order to linearise the model at an operating point, it is assumed that the vehicle
is running at a constant speed of 2m/s. This corresponds to both thrusters running at 23.4 rps.
Autocorrelation of residuals for output y1 0.2
0.1
To clarify this further, let nc and nd represents the common mode and differential mode thruster velocities defined to be
0
−0.1
−0.2 −20
n1 + n2 2 n1 − n2 nd = 2
−15
−10
−5
0
5
10
15
20
10
15
20
Cross corr for input u1 and output y1 resids
nc =
(1)
0.2
0.1
(2)
0
−0.1
In order to maintain the velocity of the vessel, nc must remain constant at all times. The differential mode input, however, oscillates about zero depending on the direction of the manoeuvre. For data acquisition, a pseudo random binary sequence was applied to the thrusters and the heading response was recorded. SI was then applied to the acquired data set and a dynamic model of the vehicle is obtained in the following form.
Y (z) = G1 (z)U1 + G2 (z)U2
(3)
where G1 and G2 denotes the discrete transfer functions from inputs U1 and U2 respectively and Y being the output of the system. To validate the model, cross validation test and residual analysis are carried out. Figure 4 depicts the cross validation test which clearly shows the accuracy of the model as compared to the measured response.
1
−0.2 −20
−15
−10
5
An autopilot is designed next based on the extracted model in this section. 4. AUTOPILOT DESIGN The GA-MPC algorithm was first proposed by Duwaish and Naeem (2001) for chemical processes identified as Hammerstein and Wiener models. This was later modified and implemented in the Hammerhead AUV in real time (Naeem et al., 2005) which provided adequate results even in the presence of modelling uncertainty. The GAbased controller uses the process model to search for the control moves, which satisfy the process constraints and optimizes a cost function. The cost function to be minimised here is given by Equation 4.
0.9
Hp X
e(k + i)T Qe(k + i)
i=1
0.8
+
0.7
Heading angle (radians)
0 Samples
Fig. 5. Cross correlation and autocorrelation of the residuals
J=
Measured output Simulated output
−5
Hc X
∆u(k + i)T R∆u(k + i)
(4)
i=1
0.6
0.5
+
0.4
Hp X
u(k + i)T Su(k + i)
i=1
0.3
subject to,
0.2
ul ≤ u(k + i) ≤ uu
0.1
0 40
50
60
70
80
90
100
110
120
Time (seconds)
Fig. 4. Actual measurements and simulated output of the USV model
Correlation analysis also reveals that the model is able to capture the dynamics of interest of the USV as shown in Figure 5 since both autocorrelation and cross correlation coefficients are within the confidence intervals.
∆ul ≤ ∆u(k + i) ≤ ∆uu where the superscripts l and u represents the lower and upper bounds respectively. Q is the weight on the prediction error, e(k) = yˆ(k) − w(k)
(5)
where w(k) is the reference or the desired setpoint. R and S are weights on the change in the input ∆u and magnitude of the input u respectively. Adjusting the input weighting matrices could add
damping to the closed loop control system. The following steps describe the operation of the GAbased MPC algorithm. At time step k (1) Evaluate process outputs using the process model. (2) Use GA search to find the optimal control moves which optimize the cost function and satisfy process constraints. This can be accomplished as follows. (a) generate a set of random possible control moves. The control moves or population consists of real values which is reasonable in a real world environment. (b) find the corresponding process outputs for all possible control moves using the process model. (c) evaluate the fitness of each solution using the cost function and the process constraints. The fitness function used here is given by 1 f itness = (6) 1+J where J is the cost function given by Equation 4. (d) apply the genetic operators (selection, crossover and mutation) to produce new generation of possible solutions. Roulette wheel and single point crossover is used for parents selection and mating respectively. (e) repeat until predefined number of generations is reached and thus the optimal control moves are determined. (3) Apply the optimal control moves generated in step 2 to the process. (4) Repeat steps 1 to 3 for time step k + 1.
by generating random initial population in the desired range i.e., ul ≤ u ≤ uu 5. SIMULATION RESULTS As mentioned earlier, the nonlinear USV model model was linearised around an operating speed of 2m/s which corresponds to a common mode veocity (nc ) of 23.4 rps. It is assumed in this paper that the vessel attains its operating speed before any control signals can be applied. The desired goal set for the autopilot is to maintain the USV course at bearings of 50 and -50 degrees alternately. In practice, this could mean a specific search pattern to locate a chemical discharge gradient. The parameters of the GA are provided in Table 1 below whilst R and S in the objective function are assumed to be zero indicating that no soft constraints are implemented in the optimization process. The vehicle heading response is depicted in Figure 6 which shows excellent closed loop control throughout. Except the presence of a small overshoot in the output response, the vehicle was able to closely follow all the desired set points. Table 1. GA-MPC tuning paramters
60
Constraints represent limitations on different physical quantities involved in a process. For instance, the input or output of a certain process is restricted beyond a specified value due to economical or environmental reasons or the input cannot be changed abruptly due to the hardware dynamics. One of the most powerful and distinguishing features of MPC is its ability to handle constraints in a natural way during the controller design at every sample time. Generally, two types of constraints are considered in controller design. Soft constraints are employed in the cost function as a penalty factor and can be violated to fulfil some other criteria. On the other hand, hard constraints represent physical limitations on actuators and cannot be violated. Herein, only hard constraints are placed on the input variables in order to determine the suitability of the controller. In this case, since the population in a GA represents the input variable, therefore, constraints are implemented
40
Heading angle (degrees)
4.1 Constraints Formulation
Parameters
Value
Q R S Hp Hc Mutation prob. Crossover prob. No. of generations Population size
1.0 0.0 0.0 10 1 0.01 1.0 10 100
20
0
−20
−40
−60
0
100
200
300
400
500
600
700
800
Time (samples)
Fig. 6. Heading response of the vehicle The thrusts generated by the autopilot is shown in Figure 7 with a steady state value of 23.4 rps. Some excessive movements are observed in the generated inputs, however, this can easily be subsided by tuning the R and S matrices in the cost function which penalises the inputs and the rate of change of control moves.
Finally, the common mode and differential mode velocities are presented in Figure 8. As argued, nc remains constant throughout, however, nd varies to generate the desired manouevre. The overshoot in the first heading change in Figure 6 is due to a relatively small nd which affected the vehicle’s manoeuvrability and resulting in the overshoot. 40 35 30
n1 (rps)
25 20 15 10 5
0
100
200
300
0
100
200
300
400
500
600
700
800
400
500
600
700
800
40 35 30
n2 (rps)
25 20 15 10 5
Time (samples)
Fig. 7. Motor velocites in rps as generated by the controller 26 25
n
c
24 23 22 21 20
0
100
200
300
0
100
200
300
400
500
600
700
800
400
500
600
700
800
20
nd
10
0
−10
−20
Time (samples)
Fig. 8. Common mode and differential mode thruster velocities 6. CONCLUDING REMARKS The paper describes the initial development of the Springer USV which is mainly designed for environmental monitoring. Use is made of a nonlinear Simulink model of Delfim USV to acquire data for SI purposes. The extracted multivariable model is then utilised in a GA based predictive control strategy and simulation results are shown which are quite promising. Work is currently being carried out on the Springer USV and a similar procedure mentioned in this paper will be applied to it and tested in real time. ACKNOWLEDGEMENTS The authors wish to acknowledge the Engineering and Physical Sciences Research Council for funding this project. Thanks are also due to Professor
Antonio Pascoal at the Dynamical Systems and Ocean Robotics Laboratory at IST, Lisbon, for supplying the nonlinear Simulink model and other particulars of the Delfim vehicle. REFERENCES Duwaish, H. and W. Naeem (2001). Nonlinear model predictive control of hammerstein and wiener models using genetic algorithms. In: Proceedings of the 2001 IEEE International Conference on Control Applications (CCA01). IEEE. Mexico City, Mexico. pp. 465–469. Ljung, L. (1999). System Identification, Theory for the User. 2nd ed.. Prentice Hall PTR. Loeb, H., S. Ygorra and M. Monsion (1995). New hydrographic automated vehicle: design of a high precision track keeping controller. Proceedings of 3rd IFAC Workshop on Control Applications in Marine Systems. Majohr, J., T. Bush and C. Korte (2000). Navigation and Automatic Control of the Measuring Dolphin (MESSINT M ). pp. 405–410. MIT (2004). AUV Lab at MIT Sea Grant. World Wide Web. http://auvlab.mit.edu/ research/mvo.html. Naeem, W., R. Sutton, J. Chudley, F. R. Dalgleish and S. Tetlow (2005). An online genetic algorithm based model predictive control autopilot design with experimental verification. International Journal of Control 78(14), 1076– 1090. Naeem, W., T. Xu, R. Sutton and J. Chudley (2006). Design of an unmanned surface vehicle for environmental monitoring. In: To be presented in the World Maritime Technology Conference. IMarEST. London, UK. Naeem, Wasif (2004). Guidance and Control of an Autonomous Underwater Vehicle. PhD thesis. School of Engineering. University of Plymouth. Pascoal, A., P. Oliveira, C. Silvestre, L. Sebastiao, M. Rufino, V. Barroso, J. Gomes, G. Ayela, P. Coince, M. Cardew, A. Ryan, H. Braithwaite, N. Cardew, J. Trepte, N. Seube, J. Champeau, P. Dhaussy, V. Sauce, R. Moitie, R. Santos, F. Cardigos, M. Brussienx and P. Dando (2000). Robotic Ocean Vehicles for Marine Science Applications: the European ASIMOV Project. 1, 409–415. Vaneck, T. (1997). Fuzzy guidance controller for an autonomous boat. IEEE Control Systems. Yamaha Motor (2003). First Unmanned Atmospheric Survey Boat, Kan-Chan. World Wide Web. http://www.yamaha-motor.co. jp/buzz/marine/boats/ken-chan.