Vous êtes sur la page 1sur 122

Instruction Manual

HAIN
Hydroacoustic Aided Inertial Navigation

APOS

APOS HAIN
computer
HAIN
computer

IMU

IMU

(Cd32002)
857-164951

HAIN
Instruction Manual
This is the instruction manual for the Hydroacoustic Aided
Inertial Navigation (HAIN) system. It contains a general
description of the system, information for installation,
set-up and general operation. The detailed operation is
described in the on-line help on the APOS operator station.
About this document

Rev Date Written by Checked by Approved by


C 06.12.05 GM HPJ JEF
Major upgrade. Implemented new sections; Troubleshooting, Procedures
and Appendixes. Implemented new IMU. Updated several sections. Minor
corrections in the text. Updated layout.

© 2005 Kongsberg Maritime AS. All rights reserved.


No part of this work covered by the copyright hereon may be reproduced or otherwise
copied without prior permission from Kongsberg Maritime AS.
The information contained in this document is subject to change without prior notice.
Kongsberg Maritime AS shall not be liable for errors contained herein, or for incidental
or consequential damages in connection with the furnishing, performance, or use of this
document.

Strandpromenaden 50
P.O.Box 111
N-3191 Horten,
Norway
Instruction Manual

Contents
1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 HAIN SYSTEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 The complementary solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.3 Inertial navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3.1 Principles of inertial navigation . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3.2 Initial values for the integration . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3.3 External measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.3.4 HAIN processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3.5 Acoustics used as position aid . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 HAIN Position reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4.1 System description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4.2 System units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4.3 Data Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 HAIN Subsea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5.1 System description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.5.2 System units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5.3 Data Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5.4 Post processing software - NavLab . . . . . . . . . . . . . . . . . . . . . . . 16
3 INSTALLATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.1 Ini files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 HAIN computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 IMU Position reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3.1 Plugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3.2 Com ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.4 IMU Subsea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4.1 Plugs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4.2 IMU 90 com ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.5 IMU crude alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5.1 IMUParam.ini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5.2 Scalefactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5.3 Mounting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6 IMU type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.7 Timeout position aid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.8 Location of the IMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.8.1 HAIN Position reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.8.2 HAIN Subsea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

857-164951 / C III
HAIN

3.9 Lever arms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30


3.9.1 APOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.9.2 HAIN computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.9.3 Use of arms.ini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.10 HAIN configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.10.1 Explanation of the sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.11 Navigation parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.11.1 Explanation of the sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4 SET-UP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.1 Clock synchronization HAIN Subsea . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.1.1 NTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.1.2 ntp.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.1.3 web-reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.1.4 NTP window on the HAIN computer . . . . . . . . . . . . . . . . . . . . . 43
4.1.5 GPS UTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.6 Crude clock synchronization of HAIN computer . . . . . . . . . . . . 44
4.2 Clock synchronization HAIN Position reference . . . . . . . . . . . . . . . . . 45
4.3 Sensor simulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.4 IMU alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.5 DVL alignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5 OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 Create the HAIN object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3 Start and stop HAIN positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.4 HAIN Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.5 HAIN Position QA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.6 HAIN Sensor biases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.7 Sensor compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.7.1 Values in use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.7.2 Calculated values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.7.3 New compensation values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.7.4 Check and change of compensation values . . . . . . . . . . . . . . . . . 52
5.8 Redefine the HAIN object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6 HAIN TELEGRAMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.2 HAIN real time positions to other computers . . . . . . . . . . . . . . . . . . . . 54
6.3 HAIN measurements on files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.3.1 SI Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3.2 Driver status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3.3 ASCII files with raw measurements . . . . . . . . . . . . . . . . . . . . . . 55
6.4 Sensor telegrams to HAIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.5 HAIN - APOS communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

IV 857-164951 / C
Instruction Manual

7 SIMULATOR PROGRAMS FOR HAIN SET-UP . . . . . . . . . . . 59


7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
7.2 Input / Output formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.2.1 NavIo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.2.2 IMUSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
7.3 NavIo operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7.3.1 IP address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.3.2 Realistic values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
7.3.3 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
7.3.4 Sensor select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
7.4 IMUSim operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
7.4.1 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.4.2 Com Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.5 Used with APOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.5.1 Combinations of simulations and real data . . . . . . . . . . . . . . . . . 66
8 MAINTENANCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.2 Circuit board and power unit descriptions . . . . . . . . . . . . . . . . . . . . . . 67
8.3 Preventive maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
8.4 Error codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
9 PROCEDURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
9.1 Check of the IMU compensation values . . . . . . . . . . . . . . . . . . . . . . . . 71
9.1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
9.1.2 Procedure for checking the IMU compensation values . . . . . . . . 71
9.1.3 Procedure for changing IMU compensation values . . . . . . . . . . 72
9.1.4 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
9.2 Fetch HAIN data for analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9.2.1 HAIN computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
9.2.2 APOS computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
10 TROUBLESHOOTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.1 Network connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.1.1 Physical connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.1.2 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
10.2 Clock synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
10.2.1 General information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
10.2.2 HAIN Position reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
10.2.3 HAIN Subsea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
10.2.4 ntp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
10.2.5 Window time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
10.3 OSK time synch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.4 IMU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
10.5 Other sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
10.6 Bad navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

857-164951 / C V
HAIN

10.7 Sensor simulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84


10.7.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
10.7.2 Advanced information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
11 TECHNICAL SPECIFICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.1 HAIN computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.1.1 Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.2 IMU - Position reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.2.2 Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.2.3 Dynamic range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
11.3 IMU - Subsea system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
11.3.1 IMU 90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
11.3.2 CDL/kearfott - MiniRLG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
11.4 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
11.4.1 HAIN - Position reference system . . . . . . . . . . . . . . . . . . . . . . . 88
11.4.2 HAIN - Subsea system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
11.5 HAIN connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
12 SPARE PARTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
12.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
12.2 Codes used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
12.3 List of spare parts for the APC 10 unit . . . . . . . . . . . . . . . . . . . . . . . . . 93
12.4 Keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
12.5 List of spare parts for the IMU - Subsea . . . . . . . . . . . . . . . . . . . . . . . . 94
12.5.1 IMU 90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
12.5.2 CDL/kearfott - MiniRLG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
13 DRAWING FILE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
13.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
13.2 Drawings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
14 APPENDIX A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
14.1 Extract program description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
14.1.1 Scope and purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
14.1.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
15 APPENDIX B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
15.1 Tidy program description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
15.1.1 Scope and purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
15.1.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
16 INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

VI 857-164951 / C
Instruction Manual

857-164951 / C VII
HAIN

High voltage safety warning


The voltages used to power this equipment are potentially lethal.
Even 110 volts can kill.
Whenever possible, the following precautionary measures
should be taken before any work is carried out inside the
equipment:
• Switch off all high-voltage power supplies.
• Check the operation of any door interlocks and any other
safety devices.
• Completely discharge all high-voltage capacitors.
It should be noted that interlocks and safety devices are
normally located only at regular access points, and high voltages
may be exposed during dismantling.

Caution Never work alone on high-voltage equipment!


Refer to general safety procedures.

VIII 857-164951 / C
Introduction

1 INTRODUCTION

1.1 Contents
This manual describes the Hydroacoustic Aided Inertial
Navigation (HAIN) product.

1.2 Abbreviations
Abbreviations used in this manual.
APC Acoustic Positioning Computer
APOS Acoustic Positioning Operator Station
COS Common Operator Station
DP Dynamic Positioning
dGPS differential Global Positioning System
DVL Doppler Velocity Log
GPS Global Positioning System
HAIN Hydroacoustic Aided Inertial Navigation
HiPAP High Precision Acoustic Positioning
HPR Hydroacoustic Position Reference
IMU Inertial Measurement Unit
INS Inertial Navigation System
LBL Long Base Line
MULBL Multi- User Long Base Line
ROV Remotely Operated Vehicle
SSBL Super Short Base Line
SSLBL Super Short and Long Base Line

857-164951 / C 1
HAIN

2 HAIN SYSTEMS

2.1 General
Exploration on deeper water puts high requirements on
underwater positioning for both Dynamic Positioning (DP)
operations and survey applications. Acoustic positioning
systems are continuously improved to meet new requirements.
The HAIN system is developed as an extension to the High
Precision Acoustic Positioning (HiPAP) and Hydroacoustic
Position Reference (HPR) systems. The acoustic measurements
are used as position aid for the Inertial Navigation System
(INS).
The following two systems are available:
• HAIN Position reference
- This HAIN system is for vessel positioning, and is used as
position-reference for the Dynamic Positioning (DP).
• HAIN Subsea
- This HAIN system for Remotely Operated Vehicle (ROV)
positioning, is for survey applications.

2.2 The complementary solution


Acoustic and inertial positioning principles in combination is
ideal, since they have complementary qualities. Acoustic
positioning is characterised by relatively high and evenly
distributed noise and no drift in the position, whilst inertial
positioning has very low short-term noise and relatively large
drift in the position over time.

2 857-164951 / C
System description

2.3 Inertial navigation

2.3.1 Principles of inertial navigation


An Inertial Navigation System (INS) integrates the output of
three accelerometers and three gyros to compute the position,
the velocity and the attitude.

Accelerometer

acc x Velocity
acc y Navigation
acc z calculation
Position
(long, lat, depth)

R LB
Gyro

gyro x
gyro y Attitude
Attitude
gyro z calculation (roll, pitch, yaw)

(Cd32007)

Figure 1 The sensors in the Inertial Measurement Unit

• The three accelerometers are mounted perpendicular to each


other. Each accelerometer measures the acceleration relative
to the inertial space. Integration of acceleration gives
velocity, and integration of velocity gives position.
• The three gyros are mounted perpendicular to each other.
Each gyro measures the angular rate relative to the inertial
space. Integration of angular rate gives attitude (roll, pitch
and heading).
The accelerometers and the gyros are contained in an Inertial
Measurement Unit (IMU).
Most inertial navigation systems to day are strap-down systems,
with the IMU rigorously connected to the body that is
positioned. For HAIN, the body is either a surface vessel or an
ROV.
• The integration of the accelerometers - gives the velocity
in the body co-ordinate frame.
• The integration of the gyros - gives the attitude, which is
used to convert the acceleration / velocity from the body
co-ordinate frame to an earth-fixed co-ordinate frame.

857-164951 / C 3
HAIN

Different co-ordinate frames, Earth gravity and rotation must be


handled. This is done in well-established strap-down navigation
equations.
Complexities also arise because all measurements have noise
added to them. The noise consists of a white part and a coloured
part. The white part is random Gaussian noise. The coloured
noise is often referred to as a bias on the measurement. The bias
changes slowly, with a time-constant of many minutes.

2.3.2 Initial values for the integration


An integration gives a change from an initial value. Integration
of acceleration gives change in velocity. Integration of angular
rate gives change in attitude.

Attitude
It is possible to calculate the attitude by using the IMU readings
and the knowledge about the Earth gravity and rotation. The
latitude must also be known within some degrees. The IMU
sensors must be of good quality to manage this task, because the
Earth rotation is slow compared to the movements of the body.

Position
It is not possible to calculate the initial position based on the
readings from the IMU sensors. An Inertial Navigation System
must therefore get a position aid from outside.

2.3.3 External measurements


In addition to the accelerometer and gyro readings from the IMU,
an Inertial Navigation System gets external measurements.
External measurements to the HAIN are:
• Aiding position in latitude / longitude and depth. It is used
both to get an initial value for the position and to limit the
drift that is inherent in inertial navigation systems.
• Heading
• Velocity
The external measurements are used by a Kalman filter to
compute corrections of the filter’s estimates. The corrections are
weighted according to the expected accuracies of the
measurements and to the filter’s estimate of its own accuracies.

4 857-164951 / C
System description

2.3.4 HAIN processing

Basic principles
The figure below shows how the readings from the IMU and the
external sensors are used.

Reset

Compass

ψ$ north ,naveq ψ~ north ,cmps


-
Findψ north
.
DVL

v~EB
B
, DVL
(Attitude)
ω~ BIB , gyro R$ LB ,naveq Decompose
Gyros in L
~B v$EB
L
v$EB (Velocity)
- ,DVL Error state
L
Accelero-
f IB ,acc Navigation ,naveq
Kalman
Equations
meters filter
R$ EL ,naveq (Position)
IMU
INS
- ~
REL , posm
DGPS +
HiPAP
z$naveq (Depth)

- ~
zdepthm Estimates
(of errors in
Pressure
navigation
sensor
equations
and colored
sensor
errors)
Figure 2 HAIN processing - block diagram

To the left, we see the IMU with its gyros and accelerometers.
The navigation equations read the three gyros and the three
accelerometers with 100 Hz. Based on these readings, the
navigation equations calculate the change in position, velocity
and attitude. Due to noise and errors in the readings, errors in
the calculation increase with time if not corrected for.
To the right, we see the Kalman filter. It estimates both the
attitude, velocity and position and sensor errors. It also
calculates the accuracy of each estimate.

857-164951 / C 5
HAIN

The input to the Kalman filter is the difference between the


values calculated by the navigation equations and the external
measurements.
Example:
Depth measurement - the pressure sensor on the ROV
measures the depth. The measured value is subtracted from the
depth calculated by the navigation equations. The difference is
read by the Kalman filter. The filter knows the expected
accuracy of the depth sensor, and it knows the accuracy of its
own estimates. The depth correction is weighted based on this
knowledge, and the estimates of the filter is updated. New
values for the position, velocity and attitude are sent to the
navigation equations.

Position aid
The position aid in figure on page 5 is named ”dGPS +
HiPAP”. The other alternatives for HAIN position aid is
”HiPAP” and ”LBL”, as explained later. In all cases, the latitude
/ longitude of the aiding position is subtracted from the latitude /
longitude calculated by the navigation equations. The difference
is processed by the Kalman filter, as explained in the example
(for the depth) above.
The filter executes each time an external measurement is read. It
updates its estimates based on the external measurement, and
transfers the new position, velocity and attitude to the
navigation equations. This transfer is often referred to as a
”reset”. Therefore the values calculated by the navigation
equations and those estimated by the Kalman filter are very
close to each other.
The graphs shown later in this document, use the same colours
as the figure on page 5. These are:
Blue is used for measurements
Magenta is used for the navigation equations
Green is used for the Kalman filter
The Kalman filter shown in the figure on page 5, is often
referred to as the forward filter. It is executed in real time, and
does not have any knowledge of the measurements ahead in
time. When the measurements are post-processed with the
NavLab, the forward filter is first executed. Then a backward
filter is executed. It uses the measurements both back and
forward in time. This gives a significant improvement in
accuracy and stability. The result from the backward filter is
displayed in red on the graphs.

6 857-164951 / C
System description

2.3.5 Acoustics used as position aid

Complementary solution
The noise on acoustic positions is dominated by the white noise.
There is almost no correlation between the noise on one
measurement and the noise on the next measurement.
The noise on Inertial Navigation systems without position aid, is
dominated by coloured noise, that is a position drift, as
illustrated in the figure below.

Figure 3 Acoustic used as position aid

The noise on inertial navigation without position aid and the


noise on acoustic positions are complementary. Acoustic
positions are therefore ideal as position aid for inertial
navigation.
• The white noise of the acoustic positions is reduced because
the inertial navigation has a small white noise.
• The coloured noise (the position drift), of the inertial
navigation is strongly reduced by the acoustics, which has
almost no coloured noise.

857-164951 / C 7
HAIN

Position aid for HAIN Position reference and


HAIN Subsea
• For HAIN Position reference, the depth is the depth of the
reference point of the vessel.
- The aiding position is the position of the vessel in latitude
longitude. It is generated either by an SSBL measurement
or by an LBL measurement. In both cases the position of
the seabed transponder(s) must be known in latitude
longitude. The SSBL transponder must have been
boxed-in, and the LBL array must have been calibrated
geographically. This must be done before the HAIN vessel
positioning is started. After this, the HAIN vessel
positioning is independent of the dGPS.
• For HAIN Subsea positioning, the depth is measured by a
pressure sensor on the ROV.
- The aiding position is the position of the ROV in latitude
longitude. When the ROV is positioned with SSBL from
the vessel, the latitude longitude position is a combination
of the acoustic position relative to the vessel and the dGPS
position of the vessel. When the ROV is positioned with
LBL, the LBL array must have been calibrated
geographically in beforehand.
The depth is in both cases processed as an external measurement.

8 857-164951 / C
System description

2.4 HAIN Position reference


The HAIN system for vessel positioning is an aided Inertial
Navigation System. The position drift that is inherent in the
inertial navigation systems, is limited by the acoustic position
measurements relative to transponder(s) on the seabed.
The system can be used with both Super Short Base Line
(SSBL) and Long Base Line (LBL) position input.
The HAIN provides an improved position of the vessel that both
has increased accuracy and higher update rate than the original
position from the acoustic measurements. This extends
operational water depth and reduced battery consumption.
Position output during acoustic dropout will be maintained.

2.4.1 System description


The HAIN position reference system provides:
• Improved acoustic position accuracy
- The HAIN system will typically improve the accuracy
some 2-3 times.
Example: If the ”ping to ping” deviation is 6 meters, the
HAIN will reduce this to approximately 2 meters.
• Higher position update rate
- The HAIN calculates a new position every 1 second
regardless of water depth.
• Extends operational depth capabilities
- Since both the accuracy and the position update rate are
improved, the HAIN allows operation in deeper waters.
• Longer transponder-battery lifetime
- The HAIN position update rate allows slowing down the
acoustic update frequency. This will result in less ”ping”
per hour, and thereby longer battery duration.
• Position update during acoustic drop-out
- The HAIN gives continuity in position output even though
the acoustic position should fail to operate in periods of
limited time.

857-164951 / C 9
HAIN

APOS

HAIN
computer

IMU

(Cd32003)

Figure 4 HAIN Position reference system

10 857-164951 / C
System description

The figure below shows the HAIN Position reference system


used with a HiPAP system.
The HAIN Positioning reference system can be used on any
vessel equipped with acoustic positioning system.

HAIN Net DP
APOS
Computer System

Heading
HiPAP
Roll & Pitch
Transceiver
IMU

(Cd6832) Td

Acoustic
signals

Figure 5 HAIN Position reference - system diagram

2.4.2 System units

HAIN computer
The HAIN computer executes the navigation algorithm, which
consists of Strap-down navigation equations and a Kalman filter.
The unit is interfaced to an IMU (Inertial Measurement Unit)
and to the APOS (Acoustic Positioning Operator Station).
The HAIN computer receives the aiding positions (latitude /
longitude) from the APOS, and it limits the position-drift that is
inherent in inertial navigation systems. Vessel position, attitude,
speed and expected accuracy, are sent back to the APOS at 1 Hz
update.

Inertial Measurement Unit - IMU


The IMU consists of three accelerometers and three gyros,
measuring the vessel’s accelerations and rotation in three axis
very accurately.

857-164951 / C 11
HAIN

Operator station - APOS


The HAIN system is operated from the APOS and has the
following main functions:
• Controls the HAIN system.
• Displays position and sends position and status data.
The information received from the HAIN computer is displayed
and sent to external computer(s). APOS can request status
information in the HAIN computer to be displayed, which helps
the operator to check the system in real-time.

2.4.3 Data Logging


Data logging can be done on two levels:
1 The HAIN computer is logging all measurements on its
hard disk. These data can be post-processed.
2 The APOS can log measured and calculated vessel
positions, attitude and velocity on its hard disk.
All measurements and positions in the log files are
time-stamped. The APOS clock and the HAIN computer clock
are both synchronised with the GPS clock (1pps).

12 857-164951 / C
System description

2.5 HAIN Subsea


The HAIN subsea system can be used on Remotely Operated
Vehicle (ROV) and other underwater cable-connected units. This
system can also be interfaced to a Doppler velocity log and a
pressure sensor.
The system can be used with both Super Short Base Line
(SSBL) and Long Base Line (LBL) as position aid.

2.5.1 System description


The HAIN Subsea solution provides:
• Improved acoustic position accuracy.
• Higher position update rate.
The HAIN system onboard the vessel comprises:
• HAIN computer with interfaces to ROV sensors.
• Operator station.
• HAIN software.
• Vessel position input from dGPS.
• ROV position input from an acoustic system.

857-164951 / C 13
HAIN

APOS

HAIN
computer

IMU

(Cd32005)

Figure 6 HAIN subsea system

14 857-164951 / C
System description

The figure below shows the HAIN used with a HiPAP system
and an optional LBL system.

DP
Net System
HAIN
Computer DGPS APOS

IMU, LBL, DVL, Heading Survey


Pressure, attitude
HiPAP
Roll & Pitch
Transceiver
Converter

Fibre Td
ROV or
intervetion tool

LBL Acoustic
signals
Converter
(Cd6832a)

DVL IMU Depth

Figure 7 HAIN subsea - system diagram

2.5.2 System units


HAIN computer
The HAIN computer executes the navigation algorithms, which
consists of Strap-down navigation equations and a Kalman filter.
The unit is interfaced to the sensor signals coming from the
ROV-umbilical system. These signals come from:
• Inertial Motion Unit (IMU)
• Doppler Velocity Log (ROV speed)
• Pressure sensor
• Heading sensor (Compass).
The HAIN computer may interface different types of sensors
giving these aiding measurements.
The HAIN computer receives the aiding positions (latitude /
longitude) from the APOS over an Ethernet interconnection and
will limit the position drift that is inherent in inertial navigation
systems. ROV position, attitude, speed and expected accuracy of
the data are sent to the APOS at 1 Hz update. The source of the
aiding position can be SSBL or LBL.
Inertial Measurement Unit - IMU
The IMU comes in a pressure container and contains three
accelerometers and three gyros, measuring the vessel’s
accelerations and rotation in three axis very accurately.

857-164951 / C 15
HAIN

Operator station - APOS


The HAIN system is operated from the APOS and has three
main functions:
1 Controls the HAIN system.
2 Integrates dGPS and local acoustic ROV position.
3 Displays position and sends position and status data.
The information received from the HAIN computer is displayed
and sent to external computer(s). APOS can request status
information in the HAIN computer to be displayed, which helps
the operator to check the system in real-time.

2.5.3 Data Logging


Data logging can be done on two levels:
1 The HAIN computer is logging all measurements on its
hard disk. A new file is generated each 15th minute with
binary data. These data can be post-processed.
2 The APOS can log measured and calculated ROV
positions, attitude and velocity on its hard disk.
All measurements and positions in the log files are
time-stamped. The APOS clock and the HAIN computer clock
are both synchronised with the GPS clock.

2.5.4 Post processing software - NavLab


The HAIN computer logs all the sensor measurements to its
hard disk. Then it is possible to calculate post-processed
estimates of position, velocity and attitude. There are many
situations where these estimates are of great interest after the
mission is finished, for instance for map production and
geo-referencing of objects.
• NavLab is the HAIN post-processing tool.
- It can be used both for HAIN Position reference and for
HAIN Subsea. It is, however, most relevant for HAIN
Subsea.
• NavLab reads the measurements that are logged in real
time by the HAIN computer.
- When calculating the ROV position, it uses measurements
both in the past and in the future, giving a better quality
than can possibly be achieved in real time.

16 857-164951 / C
System description

• NavLab has functions to detect wild-points in the


measurements, both automatically and with operator
assistance.
- It is easier to identify the wild-points in the
post-processing than in real time, because also the future
measurements are available. The wild-points are excluded
from the calculation, giving a better accuracy and
robustness.
• The HAIN processing uses sensor parameters based on
the sensor specifications.
- The actual sensor performance may differ from its
specification, and in such cases the parameters should be
based on empirical data. NavLab is a suitable tool to
identify such cases, mainly due to its backward filter. It
can post-process with new parameters, and the new
parameters can be used in real time for the next missions.
- Sometimes systematic errors are present in a sensor,
typically due to imperfect calibration or misaligned
mounting. NavLab is a suitable tool to detect and quantify
such errors, mainly due to its backward filter. When the
errors are known, they can be compensated for in the
post-processing and in future missions.
• NavLab exports the results to files for use by the survey
SW.
- It exports one file with position and depth, and one file
with attitude and heading. The values are time-stamped
with the clock in the HAIN computer, which is
synchronized to the GPS clock. NavLab also generates
many plots to visualize the parameters and the results.
Many of the plots in this note are generated by NavLab.

857-164951 / C 17
HAIN

3 INSTALLATION

3.1 Introduction
This section describes how to install the HAIN system. It
includes installation description for:
• HAIN computer
• IMU Subsea
• IMU crude alignment (ImuParam.ini)
• IMU type (Config.ini)
• Lever arms (Arms.ini)
• HAIN configuration (HainConfig.ini)
• Navigation parameters (KfParam.ini)

3.1.1 Ini files


Some of the HAIN parameters are set in ini files. The ini files,
except the one for clock synchronization, are explained in this
section. The ini files are located on the C:\HAIN\bin folder in
the HAIN computer.
Some of the ini files contain more parameters than needed for
HAIN, because they are common for HAIN and the Hugin
AUV. The extra parameters must be at their default values, as
shown in this Instruction manual.

Note The extra parameters are not explained in this manual.

The ini files are divided into sections. A section starts with the
section name enclosed in bracket paranthesis. Then follows the
parameters. Each parameter has a name followed by an equal
sign and its value. The ini files may contain comments. A
comment start with the # character; then the rest of the line is
just a comment. The syntax is illustrated by the example below,
which is fetched from the ini file defining the lever arms. The x,
y and z values are for the IMU, because they follow the [IMU].
[IMU]
x = -0.47 # m Fwd
y = 0.23 # m Stb
z = 0.87 # m Dwn

18 857-164951 / C
Installation

3.2 HAIN computer


The HAIN computer is an APC 10. The same computer is used
for the HiPAP system.
→ For APC 10 installation, refer to the HiPAP Instruction
Manual.
The HAIN computer communicates with the APOS via a
network. The next figure is an example, showing a dual net
between two APOS operator stations. The HAIN computer is
connected to Net A. In addition there is a separate net (Net X)
from the HAIN compute to a NavLab computer.
GPS / 1PPS

HAIN APOS OS1 APOS OS2 DP OS1 DP OS2

Net A 157.237.xxx.yyy
Net X

Net A 157.237.xxx.yyy Switch

NavLab computer Net B 157.236.xxx.yyy Switch


(CD32017)

Figure 8 APOS / HAIN network configuration

Refer to the figure:

Note For HAIN, the display and keyboard are only used at
installation and set-up.

Note Net X can have any IP address except:


157.237.xxx.yyy or 157.236.xxx.yyy.
Select an address range that matches the vessel network.

→ Clock synchronization is explained in sections:


- Clock synchronization HAIN Subsea on page 41.
- Clock synchronization HAIN Position reference on page 45.

Note OskTimeSynch must be stopped on all APOS computers except


the OS which has 1 pps input.

857-164951 / C 19
HAIN

In HAIN Subsea operations the NavLab Post-processing


computer is connected to Net X. The log files grow with
approximately 1 MByte per minute. Because of the size, these
files should not be fetched from the HAIN computer when
HAIN positioning is active.
The GPS clock synchronization unit must be connected to the
APOS that is connected to the HAIN computer.
The OSKTimeSynch program may execute on this APOS,
because it may be the clock server for the DP computers.
The OSKTimeSynch program must not execute on the other
APOSes. The clock synchronization is explained in more details
in the HAIN set-up section.
→ Refer to page 41.

3.3 IMU Position reference


The IMU is mounted on a wall bracket. The assembly drawing
for the IMU 90 wall bracket is shown on page 97.

3.3.1 Plugs
→ Refer to the separate IMU 90 manual supplied with the unit.
This is not a Kongsberg Maritime document.

3.3.2 Com ports


We recommend to configure the IMU 90 serial ports as shown
in the table:

Com port Configured for


A Tx: IMU raw measurements, that is the telegram
at 100 Hz with delta angles and delta velocity.
B Tx: Simrad EM100 telegram with the Octans
heading and attitude.
C iXSea recommends not to use the port together
with IMU 90 raw measurements on port A.

The IMU 90 needs to know the latitude with an accuracy of one


degree to calculate the “Octans” heading accurate.
The latitude is set as explained in the IMU 90 manual supplied
with the unit.

20 857-164951 / C
Installation

3.4 IMU Subsea


The IMU Subsea is mounted within a subsea container. The
assembly drawing for the container specified to 4000 m depth,
is shown on page 96.

3.4.1 Plugs
There are two 7 pin Gisma connectors at the front. These are for
Data and Configuration.

Data plug
Pin number Use
1 +24 V
2 Serial line A, GND RS-232. Serial line A is
normally configured for IMU telegram.
3 Serial line A, Tx RS-232.
4 Serial line B, Rx RS-232. Serial line B is nor-
mally configured for heading and attitude out-
put.
5 Serial line B, Tx RS-232.
6 Serial line B, GND RS-232.
7 GND (for 24 V Power)

Configuration plug
Pin number Use
1 +24 V
2 nc
3 nc
4 Config, Rx RS-232
5 Config, Tx RS-232
6 Config, GND RS-232
7 GND (for 24 V Power)

The configuration plug must be used when the IMU is an


IMU 90. It is used to configure the Octans part of the IMU90.
The configuration is explained in the iXSea Octans Installation
Manual.

857-164951 / C 21
HAIN

3.4.2 IMU 90 com ports


We recommend to configure the IMU90 serial ports as shown in
the table:
Com port Configured for
A Tx: IMU raw measurements, that is the telegram
at 100 Hz with delta angles and delta velocity.
B Tx: Simrad EM100 telegram with the Octans
heading and attitude.
Rx: The gga sentence with latitude.
C iXSea recommends not to use the port together
with IMU90 raw measurements on port A.

The gga sentence with latitude is used by the Octans when it


gyrocompasses. There is no strict accuracy requirement; it
should be within some degrees from the correct latitude. When
the unit is used in an area, it can be configured to a latitude
value with the iXSea configuration program.

22 857-164951 / C
Installation

3.5 IMU crude alignment


The IMU measures the delta velocities and delta angles in the
IMU co-ordinate system X, Y and Z.
• When the IMU 90 is used, the axes are as shown in the
following figure.

X
(Cd32016)

Figure 9 IMU 90

The IMU centre is 0.153 m behind the reference mark on the


front plate. The reference mark is between the configuration
plug (upper) and the data plug (lower).
• When the CDL/kearfott MiniRLG is used, the axes are as
shown in the figure on page 98.
The crude alignment first swaps and then negates the readings to
match the co-ordinate system of the Body (Vessel or ROV). This
is done with the IMUParam.ini file. The file also scales the
readings to SI units.

3.5.1 IMUParam.ini
The contents of IMUParam is as shown below.
#
# IMUparam.ini, defines the IMU scale conversion to SI units and the crude axes orientation.
# ------------------------
#

[Scalefactors]
Gyro =1.0 # iXSea uses SI units, Honeywell IMUs needs factor 1.164153218269348E--10
Accel =1.0 # iXSea uses SI units, Honeywell IMUs needs factor 2.270936965942383E--9

857-164951 / C 23
HAIN

[Mounting]
# The Axis parameters are applied first, and then the Sign parameters.
AxisX =0 # IMU X is body X (Forwards)
AxisY =1 # IMU Y is body Y (Starboard)
AxisZ =2 # IMU Z is body Z (Down)
SignX =1 # Sign of body X unchanged
SignY =--1 # ------”------ Y must be changed
SignZ =--1 # ------”------ Z must be changed

3.5.2 Scalefactor
The scalefactor is the factor with which the IMU readings must be
multiplied to get SI unit. The SI units are m/s for delta velocity and
radians for delta angle.

3.5.3 Mounting
The Mounting parameters define how the IMU readings must be
swapped / negated to coincide with the HAIN Fwd, Stb and Dwn axes.
The figures on page 23 and page 98 show the axes when mounted in
the subsea container. The ini file contains 3 Axis variables and 3 sign
variables. The IMU readings are first swapped with the Axis variables.
Then the sign is modified with the 3 sign variables.
For HAIN Position reference the IMU is mounted on a wall bracket.
The IMU axes are defined in the IMU manual.

Example
The values shown above are valid for the subsea container when it is
mounted with the container front plate pointing forwards.
If we rotate the subsea container 90 degrees clockwise, - with the front
plate pointing to starboard, the contents should be:
[Mounting]
AxisX =1 # IMU X is body Y (Starboard)
AxisY =0 # IMU Y is body X (Forwards)
AxisZ =2 # IMU Z is body Z (Down)

SignX =1 # Sign of body X unchanged


SignY =1 # ------”------ Y unchanged
SignZ =--1 # ------”------ Z must be changed

24 857-164951 / C
Installation

3.6 IMU type


The HAIN computer is programmed to receive the IMU
telegrams on either an asynchronous RS-232 or on synchronous
SDLC serial line. This is decided by the Type parameter in the
Config.ini file. The choices are explained in the comment for
the Type parameter. When SDLC the SDLCCHANNEL
parameter defines the SDLC channel in the HAIN computer,
and when RS-232 the ComPort parameter defines the com port
number. 115200 baud is always used when RS-232.
The other parameters in Config.ini must be as shown below.
#
# Config.ini, defines the IMU vendor and its interface to the .
# --------------------HAIN computer
#

[IMU]
SDLCCHANNEL =1
ComPort = 1
Type = 1 # 0 = Honywell SDLC (HG1700, HG9848, HG9900)
# 1 = Ixsea RS--232 (IMU 90, IMU 120)
# 2 = Honeywell RS--232 (HG1700)
# 3 = CDL/kearfott

[SDLC]
BASE=0x180
IRQ=9
CHARXDMA=--1
CHATXDMA=--1
CHBRXDMA=1
CHBTXDMA=3

[ParallelPort]
PortType=1
PortBase=0x378
PortIrq=7

[General]
RedirectOutput=1

[SerialAttitudeOutput]
ComPort = 0

[HPTimer]
Type = 1 # 0 = PPS timer, 1 = PC timer

[DataStorage]
Path = d:\LogData
DeleteUnnamedFiles = 0

857-164951 / C 25
HAIN

3.7 Timeout position aid


Error parameters are in the errpar.ini file. Pay attention only to
the DgpsHipapTimeout parameter. In HAIN position reference it
sets the maximum time without position before DP shall not
consider the HAIN position. The contents of errpar.ini is:
[ErrorDetection]
DiveTimeLimit = 300000 # ms Not used by HAIN
DiveDepthLimit = 5.0 #m Not used by HAIN
CriticalStdDevLatitude = 20.0 #m When the 1--sigma uncertainty in lat and/or long is greater than limit,
CriticalStdDevLongitude = 20.0 #m a message is given. No other action is taken.

[Timeouts]
DgpsHipapTimeout = 120 #s Time without position aid before position error status is set on
screen and in telegrams.

26 857-164951 / C
Installation

3.8 Location of the IMU


HAIN compensates for all lever arms. When the lever arms are
small, the error contributions from these compensations are
small too. There are many factors that must be considered when
deciding the location of the IMU. Practical considerations may
result in large level arms. In this chapter we give some
background information to be considered when deciding the
location of the IMU.
All sensors have errors, also an accurate IMU. The more the
IMU vibrates and moves, the more effect these errors will have.
Therefore the IMU should be mounted so that unnecessary
vibrations are avoided. The mounting itself must not add
vibrations to the vibrations in the vehicle itself.

3.8.1 HAIN Position reference

Lever arm accuracy


The lever arm from the vessel reference point and the IMU may
be in the order of magnitude 100m. HAIN does the lever arm
compensation of the acoustic position from the reference point
to the IMU using the heading and attitude sensor of the vessel.
The vessel sensors are normally very accurate. They may,
however, be inacurate. There may be errors with respect to both
timestamp and sensor readings, and with respect to calibration
relative to the vessel heading and attitude. And the lever arm
itself may be inacurately measured. Each of these errors is seen
by HAIN as noise on the acoustic aiding position. The
contribution of each error depends on the length of the lever
arm. In this chapter we discuss possible errors for a large ship.

Systematic and coloured errors


The same sensors are used when lever arm compensating both
ways. Systematic errors are therefore negligible.
Coloured errors in the sensors will contribute both on the
acoustic position aid and on the lever arm compensation. The
distances from the vessel transducer to the transponders on the
seabed are normally much greater then the lever arm to the
IMU. Error contributions from these long distances are included
in the estimated acoustic accuracy with a safety margin. The
extra error contribution due to the IMU lever arm is small, and
we may expect it to be included in the safety margin of the
ascoustic position. We therefore conclude that a long IMU lever
arm does not add siginifantly systematic and coloured errors.

857-164951 / C 27
HAIN

White noise due to wrong lever arm


Inacurate measurement of the lever arms cause errors that are
proportional to the length of the arms. These errors are not
dominant in an error budget, mainly because the same errors
are used in the compensation from the vessel reference point to
the IMU and then afterwards in the opposite direction.
A wrong lever arm will give a white noise contribution due to
changes in heading and attitude around their average values.
These contributions are also small in a total error budget..

White noise on depth due to timestamp error in


pitch
The error contribution due to inaccurate timestamp of heading
and attitude may be considerable. It affects both the aiding
position and depth sent to the HAIN and the estimates received
from the HAIN.
The positions sent to HAIN are most important. The heading
and attitude used here are the same as used when compensating
the acoustic position from the transducer-fixed coordinate frame
to the vessel north east frame. These heading and attitude values
are timestamped very accurately, and the dominant error will be
the error in the sensors themselves.
The timestamp of the heading and attitude used when
compensating the HAIN estimates back to the vessel reference
point are not so accurately timestamped. The error will mainly
be on the depth, which is not used by the DP.

Conclusions
Long lever arms on vessel may give a little less acurate aiding.
Therefore you should increase the 1-sigma specification in
kfparam.ini. For the depth both may be set equal to 1.5m. For
the HiPAP acoustic aid, the fixed white noise contribution in the
parameter fixedMeasurementNoise should be increased with
0.20 m.

28 857-164951 / C
Installation

3.8.2 HAIN Subsea

Lever arm accuracy


In HAIN subsea, the lever arm compensation of the
measurements is done using the heading calculated by HAIN.
All lever arms must therefore be set in the arms.ini.

Aiding position and depth


The lever arms are small, and the orientation calculated by the
HAIN is accurate with respect to both value and timestamp. The
noise introduced by an error in the lever arm on the position
itself and on the depth is therefore negligible.
DVL
The DVL is an accurate sensor. It measures speed relative to the
DVL itself. The measured speed is transformed back to the
speed of the IMU itself before being used in the INS
calculations. The DVL and the IMU should therefore be located
close to each other, and the difference in the lever arm between
these units must be correct.
The main error contribution from the DVL is often the
timestamp of the measurement. The measured speed is an
average of the speed when the DVL transmits its pulse and
when it receives the pulse. Most DVLs do not give an accurate
timestamp of the measurement. The error contribution from the
inaccurate timestamp is greater than the contribution caused by
the lever arm compensation. However, both a long distance
between the DVL and the IMU and an inacurate value for this
distance, will increase the effect of the inaccurate timestamp.

857-164951 / C 29
HAIN

3.9 Lever arms


The IMU lever arms are defined in both the APOS and in the
HAIN computer. The lever arms of the other sensors are defined
in the HAIN computer.
• For HAIN position reference, the IMU lever arm must be
entered in the APOS only. APOS handles the lever arm, and
the IMU lever arm in the HAIN computer must be set to
zero.
• For HAIN subsea, you must enter the IMU lever arm in both
the APOS and in the HAIN computer. The lever arms for the
other sensors must be entered in the HAIN computer only.
3.9.1 APOS
1 Click the Configure -> Hain command.
- The following dialogue box is displayed:

IMU offset - is the vector from the vehicle reference point to


the reference point within the IMU. The vehicle is the vessel for
HAIN position reference and the ROV for HAIN subsea. In the
figure above, the IMU is mounted 0.47m aft of the reference
point, 0.23m to starboard and 0.87 m below.
IMU inclination - is the rotation of the IMU co-ordinate system
relative to the vessel co-ordinate system. The inclinations must
be set to zero for HAIN subsea. The angles are Euler 3-2-1
angles. The IMU reference point is the centre within the IMU.
• For HAIN position reference, refer to the IMU manual.
• For HAIN subsea, the IMU is delivered in a subsea
container. It has a cross in the front plate. The IMU reference
point is 0.153 m behind that mark.

30 857-164951 / C
Installation

3.9.2 HAIN computer


The lever arms are defined in the Arms.ini file on the HAIN\bin
folder.
The contents of the file is as shown below.
#
# Arms.ini, defines the lever arms for the sensors.
# ---------------- The lever arm is the vector from the ROV / Vessel reference point to the sensor.
# x is Forward, y is starboard and z is down.
# x=--0.47 means that the sensor is aft of the reference point.
#
[IMU]
x=--0.47 #m
y=0.23 # m
z=0.87 # m
[DVL]
x=0.32 # m
y=0.45 # m
z=--0.14 #m
[Pressure]
x=0.88 # m
y=--0.97 #m
z=--0.29 #m
[HiPAP]
x=0.52 # m
y=--0.46 #m
z=--1.23 #m
The X value is from the reference point to the item in the
Forwards direction. The Y value is in the starboard direction
and and Z value is in the down direction. All values are in
metre.
The IMU section is for the IMU, the DVL section is for the
velocity log, and the Pressure section is for the depth sensor.
The HiPAP section is for the acoustic position.
• For HAIN position reference, the HiPAP values must be
zero, because the HiPAP transducer offset is taken care of by
the HiPAP system.
• For HAIN subsea it is either the SSBL transponder or the
LBL transducer.
Some old arms.ini files have a Depth section in addition to the
Pressure section. It is not in use.

3.9.3 Use of arms.ini


The HAIN program reads the contents of the arms.ini file each
time HAIN positioning is started. If you must change a lever
arm, you must first edit the arms.ini file, and then restart the
HAIN positioning.

857-164951 / C 31
HAIN

3.10 HAIN configuration


The contents of the HainConfig.ini is shown below.
#
# HainConfig.ini, Configuration file for the HAIN CP
# ----------------------------
#
[Ports]
TxPort = 47778 # Multicast Transmit port from HAIN (default is 47778)
RxPort = 47777 # Receive Port for HAIN (default is 47777)
# ClientAddress = 157.237.1.240 # If present uses unicast, otherwise multicast is used.
# We recommend multicast.
AdapterAddress = 157.237.11.192 # Specify which local network adapter (IP address) shall be used for multicast.
# (Is only neede when multicast is enabled.)
[General]
# Define sensor
PrimaryAltSensor =1 # 0 -- None, 1 -- DVL, 2 -- Tritech, 3 -- Mesotech, 4 = PP MBE Altitude.
# Not used by HAIN. Set equal to 1.
PrimaryHeadingSensor =2 # 0 -- None, 1 -- Leica, 2 -- Octans, 3 -- NavP, 4 = SimradEM
PrimaryMotionSensor =2 # 0 -- None, 1 -- MRU--5, 2 -- Octans, 3 -- NavP, 4 = SimradEM
PrimaryPressureSensor =1 # 0 -- None, 1 -- Digiquartz
# The secondary sensors must be set to zero for the HAIN
SecondaryAltSensor =0 # 0 -- None, 1 -- DVL, 2 -- Tritech, 3 -- Mesotech, 4 = PP MBE Altitude
SecondaryHeadingSensor =0 # 0 -- None, 1 -- Leica, 2 -- Octans, 3 -- NavP, 4 = SimradEM
SecondaryMotionSensor =0 # 0 -- None, 1 -- MRU--5, 2 -- Octans, 3 -- NavP, 4 = SimradEM
SecondaryPressureSensor =0 # 0 -- None, 1 -- Digiquartz
ForwardAltSensor =0 # 0 -- None, 1 -- DVL, 2 -- Tritech, 3 -- Mesotech.
#Not used by the HAIN. Set to 0.
AdlType =1 # 0 -- None, 1 -- Linkquest, 2 -- SimradADL. Not used by the HAIN.
DebugLevel =0 # Not used by HAIN
RedirectOutput =0 # ------ ” ------
# Parameters that are used to convert from pressure to dept
AtmPressure = 1.0 # bar
WtrDensity = 1026.0 # kg/m3
Latitude = 27 # deg
[Sensors]
# Set to 1 to activate sensor
Digiquartz =1 # Digiquartz Depth sensor
Octa =0 # Heading and attitude telegrams in NMEA 0183 format
SimradEM =1 # -------- ” -------- EM1000 format
DVL =1 # DVL
ParallelPort =0 # Not used in HAIN
[Digiqartz]
ComPort =3 # COM port number (1--18)
BaudRate = 9600 # baud
Parity =0 # 0 = None, 1 = odd, 2 = Even
PressureResolution = 238 # gives 1Hz data rate
UnitConversion = 0.0689475729 # Conversion from psi to Bars
SeaKingProtocol =0 # Set to 0 for std Digiquartz, Set to 1 for WINSON RAW
Debug =0 # Set to 1 to get debug information for the sensor on the HAIN screen.
[Octans]
ComPort =5 # COM port number (1--18)
BaudRate = 9600 # baud
Parity =0 # 0 = None, 1 = odd, 2 = Even
Debug =0 # Set to 1 to get debug information for the sensor on the HAIN screen.

32 857-164951 / C
Installation

[SimradEM]
ComPort =4 # COM port number (1--18)
BaudRate = 9600 # baud
Parity =0 # 0 = None, 1 = odd, 2 = Even
Debug =0 # Set to 1 to get debug information for the sensor on the HAIN screen.
[DVL]
Type = 2 # 1 = EDO, 2 = RDI
ComPort = 7 # COM port number (1--18)
BaudRate = 9600 # baud
Parity =0 # 0 = None, 1 = odd, 2 = Even
Debug =0 # must be 0. It may be set to 1 by
# Kongsberg Maritime engineers for debug purpose
HeadingAlignment = 0.0 # deg Not used by the HAIN
PitchAlignment = 0.0 # deg ---- ” ----
RollAlignment = 0.0 # deg ---- ” ----
FaVelocityPosLimit = 4.0 # Limits for acceptance of velocity values reported rom RDI WH.
# Ref. BJ (m/s)
FAVelocityNegLimit = --0.5 # m/s
PSVelocityPosLimit = 2.0 # m/s
PSVelocityNegLimit = --2.0 # m/s
VertVelocityPosLimit = 3.0 # m/s
VertVelocityNegLimit = --3.0 # m/s
SyncTimeou =0 # sec (0 = infinite). Not used by HAIN.

3.10.1 Explanation of the sections


Octans is used as a synonym for heading and attitude telegrams in
standard NMEA 0183 format, both as a parameter value and as a
section name.
[Ports]
The port numbers for the TCPIP communication with the APOS are
set. The Tx port number in the ini file must be the same as the Rx port
number set in APOS when you created the HAIN object. The Rx
number in the ini file and the Tx number in APOS must also be the
same.
Remove the # character before the ClientAddress parameter to use
unicast in the communication from the HAIN computer to the APOS.
We recommend to use multicast, and then the # must be as shown
before the parameter name. Unicast can only be used when a single
APOS Operator Station is present. When multiple OS’s are installed,
one must be multicast.
[General]
The PrimaryHeadingSensor and the PrimaryMotionSensor must be
either 0 meaning not in use, 2 meaning Octans (standard NMEA 0183
format) or 4 meaning Simrad EM1000 format. This section defines the
sensors to use.
The PrimaryPressureSensor must be either 0, or 1 meaning Digiquartz
protocol. The Seaking raw format is regarded as a Digiquartz protocol
in this context.

857-164951 / C 33
HAIN

The Secondary... sensors must be set to zero (0).


The AtmPressure, WtrDensity and Latitude parameters are all used to
convert from pressure to depth in meters.

Note It is important that these are correct for subsea operation.

[Sensors]
There is one parameter for each of the sensor types. Set the parameter
to 1 to activate the sensor.
Common for all sensors
The ComPort, BaudRate and Parity specify the Com port in the HAIN
computer to be used for the sensor, and how it must be configured.
The configuration must match the telegrams from the sensors.
The Debug parameter must be 0. Kongsberg Maritime engineers may
set it to 1 for debug purposes in the installation process, but it must not
be permanently set.
[Digiqartz]
The PressureResolution parameter must be set to its default value 238.
The UnitConversion must also be at its default value.
The SeaKingProtocol must be 0 when the standard telegram format is
used. It must be 1 when the SeaKing Winson raw format is
transmitted.
[DVL]
You may set upper and lower limits for the DVL readings in the
forward, Starboard and down direction. When the DVL reading
exceeds the limit, it is rejected.

34 857-164951 / C
Installation

3.11 Navigation parameters


The contents of the KfParam.ini is:
#
# KFparam.ini, parameters used by the HAIN Kalman filter
# ----------------------
#

[Covar]
e_LB_L_x = 3.0462e--4 # rad^2
e_LB_L_y = 3.0462e--4 # rad^2
e_LB_L_z = 0.0685 # rad^2
dv_EB_L_x = 2.5 # (m/s)^2
dv_EB_L_y = 2.5 # (m/s)^2
dv_EB_L_z = 1.0 # (m/s)^2
e_EL_L_x = 1.3e--11 # rad^2 (= 23 m 1 sigma)
e_EL_L_y = 1.3e--11 # rad^2 (= 23 m 1 sigma)
dz = 4 # m^2
#IMU90 parameters are used as an example in this file

[Gyro]
bias = 2.42e--7 # rad/s, = 0.05 deg/hour, as IMU90 spec
measurementnoise = 7.3e--7 #
processnoise = 7.3e--7 # rad/sqrt(s) = 0.0025 deg/sqrt(h), as IMU90 spec
timeconstant = 60 # s, = 1 minutes, no spec available

[Accel]
bias = 4.9e--3 # m/s^2, = 0.5mg, as IMU90 spec
measurementnoise = 1.47e--4 # m/s
processnoise = 1.47e--4 # m/s^1.5 = 15ug/sqrt(Hz), as IMU90 spec
timeconstant = 60 # s, = 1 minutes, no spec available

[DVLBtm]
bias = 4.0e--2 # m/s
measurementnoise = 4.0e--2 # m/s
processnoise = 0.0 # m/s^1.5
timeconstant = 100.0 #s

[DVLWtr]
bias = 2.0e--1 # m/s
measurementnoise = 6.0e--3 # m/s
processnoise = 0.0 # m/s^1.5
timeconstant = 100.0 #s

[DGPSHiPAP]
qlty2StdFctrHiPAP = 1.0 # Scaling. Use the values in the telegrams.
qlty2StdFctrDGPS = 1.0 # Scaling. ------ ” ------
fixedMeasurementNoise = 0.05 # m, just to be sure that it never become zero
fixedBias = 0.15 # m, Coloured noise at 200m waterdepth due to
# 0.03 deg in MRU roll and pitch.
whitePartHiPAPQlty = 1.0 # no units. In the NavP, the value in the telegram is used
# as white noise only, regardless of the factor.
whitePartDGPSQlty = 1.0 # no units. The scale facto is used as a factor
# on the variance for the withe noise.
whitePartDepth = 0.0 # no units
depthFactor = 0.0000 # rad. Meaningless for HAIN--vessel, which always has 0 depth.
biasPartDepth = 1.0 # no units
timeconstant = 60.0 #s

857-164951 / C 35
HAIN

[ShipPosition]
qlty2StdFctr = 1.0 # Scaling
fixedMeasurementNoise = 0.05 #m
fixedBias = 0.05 #m
whitePartQlty = 1.0 # no units
biasPartQlty = 0.0 # no units
timeconstant = 60.0 #s
[VehicleGPS]
qlty2StdFctr = 1.0 # Scaling
fixedMeasurementNoise = 0.0 #m
fixedBias = 0.0 #m
whitePartQlty = 0.2 # no units
biasPartQlty = 0.8 # no units
timeconstant = 60.0 #s
[Pressure]
bias = 0.15 #m
measurementnoise = 0.1 #m
processnoise = 0.0 # m/s^0.5
timeconstant = 100.0 #s
[Heading]
bias = 0.0140 # rad, = 0.8 deg
measurementnoise = 0.00017 # rad, = 0.01 deg
processnoise = 0.0 # rad/s^0.5
timeconstant = 600.0 # s, = 10 minutes
[DeckHeight]
bias = 0.5 #m
measurementnoise = 0.5 #m
processnoise = 0.0 # m/s^0.5
timeconstant = 3600.0 #s
[DVLMisalign]
x = 0.0 # rad The sign is from true to error, ie the angles describe
# the misalignment, not the correction
y = 0.0 # rad
z = 0.0 # rad
[Decimation]
Pressure =1 # counter limit. 1 <--> Every measurement is processed in the Kalman filter
Compass =1 # counter limit. 10 <--> Only every 10th measurement is processed in
# the Kalman filter
ShipPosition = 10 # counter limit. 10 <--> Only every 10th measurement is processed in
# the Kalman filter
[SensorCompensation]
# The values for gyro and accelerometer are just examples to demonstrate the conversion.
Domg_gyro_constant_x = 0.0 # rad/s, multiply with 206264 to get value in deg/s.
# (x=--1.45e--7 means --0.030 deg/s)
Domg_gyro_constant_y = 0.0 # rad/s
Domg_gyro_constant_z = 0.0 # rad/s
Df_acc_constant_x = 0.0 # m/s^2, multiply with 101833 to get ug (x=--7.75e--4 means --79 ug)
Df_acc_constant_y = 0.0 # m/s^2
Df_acc_constant_z =00 # m/s^2
Dv_velm_constant_x = 0.0 # m/s
Dv_velm_constant_y = 0.0 # m/s
Dv_velm_constant_z = 0.0 # m/s

36 857-164951 / C
Installation

3.11.1 Explanation of the sections

Common

Bias - sets the 1-sigma value of the coloured noise of the sensor.
The denomination depends on the sensor, and it is explained in
the comment. The bias is modelled as a 1.st order Markov
process with timeconstant as set in the timeconstant parameter.
The HAIN estimates the biases. In real time you can examine
the estimated values in the HAIN sensor bias and
compensation dialogue box on the APOS. The biases displayed
in this dialogue box must normally be a little less than the
1-sigma values set in the KFParam.ini. For shorter intervals the
biases in real time may be greater than the 1-sigma values. The
APOS dialogue box allows you to set limit for the estimated
biases. There you should set the limit an order of magnitude
grater than the 1-sigma value in the KFParam.ini. If the
estimated bias for one of the sensors becomes greater than its
limit, the HAIN positioning is restarted, and an alarm message
is displayed. This may seldom happen, but not during normal
operation.
processnoise - is used for the IMU gyros and accelerometers.
They define the random walk noise. The denomination depends
on the sensor, and it is explained in the comment.
measurementnoise - is used for the other sensors than the IMU.
The define the white gaussian noise on the measurements. The
denomination depends on the sensor, and it is explained in the
comment.
[Covar]
Use the default values shown above.
[Gyro] and [Accel]
The parameters defines the specification of the IMU used by the
HAIN. The values are set by the Kongsberg Maritime engineer
during installation. Normally you must not change the values.
The values above are for the iXSea IMU90.
[DVLBtm] and [DVLWtr]
The DVLBtm parameters are used for the doppler readings when
it has bottom track. The HAIN does not use the DVL
measurements when the DVL only has water track, and the
values in DVLWtr are therefore not in use.

857-164951 / C 37
HAIN

HAIN is often interfaced to the RDI Workhorse DVL. It has an


accuracy spec better than 0.01m/s. There are, however,
sometimes wildpoints among the measurements when the DVL
has poor bottom track. The DVL is used by both the HAIN
system and by other equipment, which do set up the DVL. There
are many parameters in the DVL that must be set correctly, and
we have sometimes experienced that they are not.
Many ROVs are rather unstable vehicles, changing attitude with
+- 10 degrees in some seconds. There is often a lever arm
between the IMU and the DVL. The DVL readings must be
compensated with this lever arm. The measured speed is an
average of the speed at Tx and at Rx. It is valid when the middle
of the pulse hits the seabed, but there is no timestamp in the RDI
telegram telling when this happened. The uncertainty of the
timestamp is multiplied with the lever arm between the IMU and
the DVL. It is therefore extremely important to have this lever
arm as short as possible. All this sums up to that we recommend
you to start the HAIN positioning with the DVL 1-sigma values
equal to some cm/s.
When you see in real time and / or in the NavLab Post-processing
that the DVL errors and estimated biases are better, you may
reduce the 1-sigma values in the ini file.

Example of RDI initialization


The following commands / settings were given to the RDI DVL
600 kHz Workhorse. The RDI Self Contained ADCP
Application terminal program was used.
1 CR1 Reset to factory settings
2 EA00000 No alignment values inserted.
3 EP00000
4 ER00000
5 BP1 1 ping per ensemble
6 BK0 water mass off
7 CF11110
8 EX10011
9 ST0
10 ECxxxx Sound velocity at seabed area. Set the value in m/s.
11 EZ0000000 The c bit (bit 6) is cleared, telling the DVL not
to calculate the speed of sound
12 PD0 Output telegram
13 CS Start continuous output
14 CK Save setup in non-volatile memory
The EA, ER and EP all have 00000 as parameter, because we do
all the rotations in the HAIN. The EX command allows 3-beam
solution.

38 857-164951 / C
Installation

The c bit in the EZ command is zero, telling the DVL to use the
manually set sound of speed. If either the DVL has a depth sensor
or the depth is sent continuously to it, the bits in EZ should be set
and the DVL will calculate the speed of sound.
→ Refer to the RDI manual for details.

Note Use the commands above just as an example.

[DGPSHiPAP]
These parameters tell how the aiding position from the acoustics
must be weighted in the HAIN calculations.
The first two parameters are factors. They must normally be equal
to 1. Then the accuracy as decided by the acoustic system, will be
used as expected accuracy in the calculations.
The next two parameters, starting with the word fixed, are
1-sigma values for the gaussian measurement noise and the bias.
These fixed values are added to the values decided by the
acoustics. The addition is geometrically, often also called
root-square-summing. We recommend to use the values 0.05m
and 0.15m.
The other values in this section must be at their default values as
shown above.
[Pressure]
The values are for the depth sensor. The default values shown
above must be used.
[Heading]
The values are for the heading input. HAIN needs the heading
when it starts positioning. Afterwards it calculates the heading
itself, and does not need it as input. We therefore recommend to
set the 1-sigma values not so good as the spec for the heading
sensor (gyro or compass). We do not want the heading input to
change the heading calculated by the HAIN. When the IMU90
is used, the heading often come from the Octans part of the
IMU90. It uses the same sensors as the IMU90, and we should
therefore use much bigger 1-sigma values for the Octans than its
spec. If not, we somehow use the sensor reading twice.
You may examine the difference between the heading sensor
and the HAIN by examining the heading bias in the HAIN
sensor bias dialogue box on the APOS.

857-164951 / C 39
HAIN

[DVLMisalign]
There is a procedure to decide the alignment of the DVL in the
Set-up chapter in this manual. The results from this alignment
must be inserted in this sections as radians.
x - is clockwise rotation of the DVL around the forward axis, y
is clockwise rotation around the axis pointing and z is clockwise
rotation around the down axis.
[SensorCompensation]
This section contain the fixed compensation values for the
sensors. They are set automatically from the HAIN sensor bias
dialogue box in the APOS.
→ Refer to the APOS on-line help for more details.

40 857-164951 / C
Set-up

4 SET-UP
This section describes how to configure and set-up the HAIN
system. The following are included:
• Clock synchronization
• Sensor simulators
• IMU alignment
• DVL alignment

4.1 Clock synchronization HAIN Subsea


All measurements are timestamped by the computer reading the
measurements.
• The acoustic positions are timestamped by the APOS /
HiPAP system.
• The GPS positions are timestamped by the GPS.
• The HAIN sensor readings are timestamped by the HAIN
computer.
The timestamp information is fully exploited in the calculations.
It is therefore mandatory that the clocks in the computers
involved are synchronized.

4.1.1 NTP
NTP is Network Time Protocol. APOS and the HAIN computer
use NTP to synchronize their clocks.
NTP in the APOS is the time server, and the NTP in the HAIN
computer is a time client. If two or more APOS computers are
connected in a Master / Slave configuration, the NTP in one of
them must be the time server, and the other(s) must be time
client(s).
The APOS operator stations are often clock synchronized with
other Kongsberg Maritime computers (as the DP computers) on
the vessel. This is done with the OSKTimeSynch program. This
program must be stopped on the APOS(es) that are NTP clients.
It shall execute on the APOS time server with the 1 PPS
connected, in order to synchronize the other Kongsberg
Maritime computers. If, however, one of the DP computers in
the network also is synchronized to the GPS clock, the OSK
time synch in the APOS with the ntp server should be stopped.
The NTP is configured by the ntp.conf file. Each computer
running NTP has a ntp.conf file. One computer is configured as
a NTP time server. All other NTP units are configured as time
clients. The IP address of the time server has to be entered in the
ntp.conf file of the time clients.

857-164951 / C 41
HAIN

When the system is switched on, we normally recommend to


start the NTP server first and let it run for some time. Then the
clients can be started. They will normally synchronize time to
the server within 10 - 15 minutes. The accuracy of the time
synchronization will improve over time. Our observation is that
after 24 hours, the time difference between computers is below
10 milliseconds. It is important that the time is relative similar
on the computers to be synchronized before NTP is started.

Note As default, NTP will not synchronize time, if time difference is


more than 1000 seconds.

You may also check that the computer time zone is set correct.
NTP synchronizes on the computer UTC time.

4.1.2 ntp.conf
The lines in the ntp.conf starting with # are just comments.
Before you start the system, you must check/edit the line
starting with server followed by an IP address. There are three
different IP-addresses to use.
IP address line Used when
server
127.127.1.0 The computer is the time server.
server The computer is the time server, and it is
127.127.28.2 synchronized with the GPS receiver.
prefer This line shall be set in addition to the time
server line in the previous row.
server The computer is a ntp client.
nnn.nnn.nnn.nnn nnn.nnn.nnn.nnn is the IP address of the
time server.

• In the APOS, the ntp.conf is located in the APOS\bin folder.


• In the HAIN computer, the ntp.conf is located in the
HAIN\bin folder.

4.1.3 web-reference
NTP is a often used standard for clock synchronization.
→ See http://www.ntp.org/ for more information.

42 857-164951 / C
Set-up

4.1.4 NTP window on the HAIN


computer
The NTP writes information to its DOS command window. The
command window on the NTP client shows the difference
between the client clock and the server clock, as decided by the
NTP. An example is shown in the figure below.

The NTP client has IP address 157.237.10.120. You can see that
there is a two-way communication with the time server running
at 157.237.1.96. Check that there is a similar two-way
communication on your HAIN computer.
The NTP client decides that there is a difference of 14.7 ms
between itself and the time server. The NTP client will
minimize this difference by adjusting its clock frequency.

4.1.5 GPS UTC


• HAIN Position reference is independent of the GPS.
• HAIN Subsea with the acoustic aiding positions derived
from LBL, is also independent of the GPS.
For these systems there is therefore no requirement that the
APOS and HAIN computers are synchronized to the GPS
receiver.

857-164951 / C 43
HAIN

HAIN subsea with the acoustic aiding positions derived from


SSBL, depends on the GPS readings, because it combines the
GPS positions and the SSBL positions to calculate the position
aid in latitude longitude. Then the clocks in the APOS and the
HAIN computers must be synchronized with the UTC in the
GPS receiver. This synchronization requires both a time
sentence (ZDA, UTC or similar) and a 1PPS from the GPS
receiver to the APOS. APOS handles this via an IoServer.
→ Details about this synchronization, refer to the APOS on-line
help.

The NTP time server must be on the APOS that is synchronized


with the GPS. APOS handles the GPS clock synchronization via
an IoServer, which is interfaced to the NTP server via shared
memory. The NTP must be started before the IoServer. This is
automatically taken care of by the APOS. When the APOS has
the HAIN option set, it starts the NTP program before it starts
the IoServer.

4.1.6 Crude clock synchronization of


HAIN computer
The NTP works best when it fine-adjusts the clock in the HAIN
computer. It does so by just tuning the clock frequency, which
causes no discontinuity in the timestamp of the IMU
measurements. NTP may wait long before it sets the client clock
to a new value.

The operator at the HAIN computer may set the clock in the
HAIN computer approximately equal to the APOS clock. This is
done by:
1 Right-click the HAIN icon.

2 Click the Synchronize Time command.


- The event view on the APOS shows how the HAIN
computer clock is adjusted., as shown in the figure
below.

The crude clock synchronization must not be done when the


HAIN positioning is active.

44 857-164951 / C
Set-up

4.2 Clock synchronization HAIN Position


reference
When HAIN is used as a reference system for the DP, it is in an
environment where clock synchronization with an accuracy in
the order of ms is not mandatory. Often the 1 PPS is not
available, and the APOS clock may sometimes be adjusted by
seconds. The HAIN computer must have a stable clock when it
is positioning, and in this environment it is therefore best to
allow it to drift relative the other computers in the network.
APOS monitors the clock difference between the computers,
and the HAIN positions are timestamped with the APOS clock
before they are sent to other computers.
In this scenario the start of the ntp program shall be removed
from C:\HAIN\Start_HAIN.bat. Just insert rem before the start
and the pause commands in the ntp section.
The only disadvantage with the clock drift is that the timestamps
in the HAIN binary log files will not be correct. This may be
minimized if the operator executes the Synchronize time
command in the HAIN context sensitive menu before
positioning is started.

4.3 Sensor simulators


Simulator programs are written as a help to set-up the HAIN
system before all sensors are available. The DVL and the depth
sensors are two sensors that are difficult to get real input from
when the HAIN system is set-up on the deck. The simulators are
not necessary after set-up.
→ The simulators programs are described on page 59.

4.4 IMU alignment


The crude IMU alignment is explained in the installation
section.
→ Refer to page 23.
When the crude alignment is specified, the IMU axes coincide
approximately with the axes of the vessel / ROV. But there may
still be a fine misalignment between the co-ordinate system of
the IMU and that of the vessel / ROV. The fine misalignment
must be set in the APOS Configure->HAIN... dialogue box,
together with the lever arms. The dialogue box is explained in
the installation section.
→ Refer to page 30.

857-164951 / C 45
HAIN

For HAIN Position reference, the IMU is normally mounted in a


room where it is impossible to measure the IMU alignment
relative to the vessel co-ordinate system. Therefore, the APOS
has the functionality to calculate the alignment. Proceed as
follows:
1 Click the Utility->IMU alignment... command.
- An IMU alignment dialogue box is displayed.
2 You first select a Log button to log the heading / attitude
as calculated by the HAIN together with the heading /
attitude of the vessel / ROV.
3 You then select the Calculate button.
- The APOS calculates the IMU alignment that causes a
best fit. The calculated IMU alignment will then be
used by the system.
→ IMU alignment dialogue box, refer to the APOS on-line help.
When iXSea IMU90 is used, and the heading and attitude from
the Octans part of the IMU 90 is used as input to the HAIN,
there is no misalignment. For HAIN Position reference, the
misalignment should be calculated anyway, to assure that the
HAIN heading / attitude refers the vessel coordinate system.

4.5 DVL alignment


→ Refer to the last version of the DVL alignment note, doc. no
219360.

46 857-164951 / C
Operation

5 OPERATION

5.1 General
This section gives an overview of the HAIN operation. It refers
to the APOS on-line help, which should be available when
reading this section. It includes operational description for:
• Create the HAIN object
• Start and stop HAIN positioning
• HAIN Properties
• HAIN Position QA
• HAIN Sensor biases
• Redefine the HAIN object

Note The dialogue boxes and their details change when new SW
releases are delivered. The APOS on-line help is always
up-to-date.

APOS is the operator station for the HAIN. The philosophy for
the operation is the same as for the other navigation functions in
the APOS.
APOS operation is described in general terms in the APOS
Instruction manual.
APOS detailed operation, also for the HAIN, is described in the
APOS on-line help, integrated into the APOS.
The APOS on-line help is integrated with APOS SW, but it may
also be executed stand-alone on a PC. It is delivered as a chm
file (WinHPR.chm). To run it stand-alone, just copy it to your
PC and double click on it. The Windows Explorer will start and
you have the on-line help available.

5.2 Create the HAIN object


You must create the HAIN positioning object on the APOS, just
as you create other APOS positioning objects.
1 Select Positioning -> HAIN Positioning in the main
menu.
- The dialogue box is explained in the APOS on-line help
Positioning -> Hain Positioning -> Hain Positioning.
2 Select HAIN Vessel or HAIN subsea.
3 Select the acoustic position, either LBL or SSBL, that is to
be used as aiding position for the HAIN.

857-164951 / C 47
HAIN

4 Specify the IP address of the HAIN computer


5 Select the port numbers for the communication.
6 When you have created the HAIN object, a HAIN icon is
displayed together with the icons for the other positioning
objects.
7 Right-click on the icon, to get the context sensitive menu
as shown below.

48 857-164951 / C
Operation

5.3 Start and stop HAIN positioning


1 Click the HAIN icon to start and stop HAIN positioning.
- The picture below shows a typical HAIN positioning
scenario.

The B56 transponder is on the ROV, and it is the position aid for
the HAIN. The operator has set history track on both the B56
SSBL position (grey line) and the HAIN position (blue line).
We see that the HAIN position is more stable than its position
aid.

5.4 HAIN Properties


Properties... is a command in the context sensitive menu of the
HAIN icon.
1 Right-click on the icon.
2 Click the Properties command to display the Properties
dialogue box.
- The dialogue box is explained in the APOS on-line help
Positioning -> Hain Positioning -> Hain Properties.

857-164951 / C 49
HAIN

You can specify the sensor measurements that are going to be


sent from the APOS to the HAIN computer. The aiding position
must always be sent.
• For HAIN Subsea, the sensors are directly connected to the
HAIN computer, and shall not be sent from the APOS.
You can specify which measurements to be logged on the HAIN
computer disk , and the name of the folder into which the log
files shall be saved. The folder name is referred to as the
mission name. If you intend to post-process the measurements,
all measurements should be saved in the log files.
The HAIN position is sent to other computers in the usual
telegrams. Then the HAIN must be mapped either to an SSBL
or LBL transponder code. The mapping is done in the
Properties dialogue box. The selection of telegram type, either
binary, BCD or NMEA, is done in the APOS Configure
command, just as for the acoustic positions. You can also
specify the prf of the HAIN telegram output. We recommend to
use 1 Hz.

5.5 HAIN Position QA


Position QA Check... is a command in the context sensitive
menu of the HAIN icon.
1 Right-click on the icon.
2 Click the Position QA Check command to display the
QA dialogue box.
- The dialogue box is explained in the APOS on-line help
Positioning -> Hain Positioning -> Hain Position QA.
3 Specify the settings for the quality check of the acoustic
positions.
- A position that does not pass the QA check, is not used
as a position aid for the HAIN. It is, however, logged
by the HAIN computer and may be examined and used
in the post-processing.

5.6 HAIN Sensor biases


Sendor biases... is a command in the context sensitive menu of
the HAIN icon.
1 Right-click on the icon.
2 Click the Sendor biases command to display the bias
dialogue box.

50 857-164951 / C
Operation

- The dialogue box is explained in the APOS on-line help


Positioning -> Hain Positioning -> Hain Sensor Biases.
- In this dialogue box you can see the biases that the
Kalman Filter estimates for the sensors.
- You can also see the compensation values that are
subtracted from the sensor readings before they are
used in the calculations.
- The dialogue box allows you to change the
compensation values, as explained in the next section;
Sensor compensation.
The main purpose of the dialogue box is to observe the bias
estimates. The values shall most of the time be in the same order
of magnitude as the accuracy parameters set up for the sensors
in your system, or less. If many of the biases are more than two
or three times the expected accuracy for many minutes,
something is wrong. If the Bias automatic supervise function is
active, the HAIN will restart the positioning if this situation
occurs.

5.7 Sensor compensation

5.7.1 Values in use


For the IMU gyros and accelerometers, and for the DVL, HAIN
may compensate for fixed errors in the sensor.
1 Tick the Sensor Biases... command in the context
sensitive menu of the HAIN object, to display the HAIN
sensor Biases and Compensation dialogue.
- The dialogue is shown and explained in the APOS
on-line help Positioning -> HAIN Positioning-> HAIN
Sensor Biases.
The text below is an extended explanation to the on-line help.

5.7.2 Calculated values


In the lower list view you see the compensation values that are
in use by the system. Based on these values and the estimated
biases, HAIN calculates new compensation values. These may
be significantly different from the ones in use, or they may be
equal.
Based on the criteria described in the next section; New
compensation values, a calculated value may be used as a new
compensation value.

857-164951 / C 51
HAIN

5.7.3 New compensation values


In order to recommend an update of the compensation value for
a sensor, HAIN requires that the following criteria must be
fulfilled. The first requirement is common for all sensors, the
next ones are individual for each sensor.
• The aiding positions have been stable during the monitoring
interval. The deviation of the position aid shall be less than
0.8.
• The calculated change in compensation value is greater than
twice the Variation of the calculated value.
• The calculated change in compensation value is greater than
half of the Uncertainty.
The compensation values compensate for errors in the sensors.
These errors are estimated better when the HAIN moves and/or
changes heading than when the HAIN is stationary.
We recommend to check the compensation values once a month.
Usually the system will not suggest new values.
For a DP vessel, the check may be done during transit from one
location to another. Then the GPS positions must be used as aid
for the HAIN. If is is not possible or practical to do it during
transit, it can be done when the vessel is stationary with the
acoustic positions used as aid.
For HAIN subsea on a ROV, the check should be done when the
ROV is moving.

5.7.4 Check and change of


compensation values
Procedures:
• Checking the IMU compensation values
→ Refer to the Checking the IMU compensation values procedure
on page 71.
• Changing the IMU compensation values
→ Refer to the Change compensation value procedure on page 72.

52 857-164951 / C
Operation

5.8 Redefine the HAIN object


Input source... is a command in the context sensitive menu of
the HAIN icon.
1 Right-click on the icon.
2 Click the Position source command to display the same
dialogue box as when you create the HAIN object.
- The dialogue box is explained in the APOS on-line help
Positioning -> Hain Positioning -> Hain Positioning.
- When you enter the dialogue box, the HAIN
positioning is automatically restarted.
3 You are allowed to redefine the parameters you set when
you created the HAIN object, except the IP address and
the port numbers of the HAIN computer.

857-164951 / C 53
HAIN

6 HAIN TELEGRAMS

6.1 Introduction
This section describes the telegrams and data storage associated
with the HAIN. This comprises:
• HAIN real time positions to other computers
• HAIN measurements on files
• Sensor telegrams to HAIN
• HAIN - APOS communication

6.2 HAIN real time positions to other computers


The HAIN position is sent to other computers in the usual
APOS telegrams. The HAIN position is mapped either to an
SSBL transponder position or to an LBL position. The HAIN
position update rate is normally 1 Hz.
The telegrams are sent on either TCP/IP or
RS-232/RS-422/current loop.
→ The APOS telegrams are described in the APOS on-line help.

6.3 HAIN measurements on files


The HAIN operator sets the mission name in an APOS dialogue
box, when he starts to log the HAIN measurements.
A folder with the mission name is generated in the LogData
folder on the HAIN computer.
The HAIN log files are written to the NavData sub-folder in the
MissionName folder. There is up to 15 minutes of data on each
log file.
They are named File-xxxx-start-yyyymmdd-hhmmss.log.
xxxx - is a sequence number.
yyyymmdd-hhmmss - is the UTC date and time when the log
file is initiated.
The log files are usually transferred to another computer for
analysis and post-processing. This requires a 100 Mbit/s TCP/IP
net. The sub-folder structure is the same on this computer, with
the .log files in the NavData folder.

54 857-164951 / C
HAIN telegrams

The program Extract.exe reads the binary log files, and creates
many ascii .txt files from each .log files. The .txt files are placed
in a data folder at the same level as the NavData folder. Some of
the .txt files contain HAIN details for Kongsberg Maritime
debug purposes. Other files contain all the HAIN raw
measurements, as they are read from the sensors. These files are
documented here.

6.3.1 SI Units
All data is in SI-units. The ASCII files have one sample per row
and one variable per column.

6.3.2 Driver status


Sensor status data has been standardized by defining the
DriverStatusType. It enables the system to treat all sensors in an
uniform way. In addition a sensor typically has a SensorStatus
which is sensor specific and contains more details.
NotPresent =0
SensorOK =1
ReducedQuality =2
Calibrating =3
NoData =4
HwError =5
InvalidData =6
ComError =7
ComFailure =8
ConfigError =9

6.3.3 ASCII files with raw


measurements
Below there is one subsection for each file type. The file name
is the same as the subsection name followed by a four digit
sequence number and .txt. Each file contains up to 15 minutes
of data. The four digit sequence number is the same as on the
binary log file from which the data is extracted.
Example:
The IMUInertialData0021.txt file contains IMU measurements
extracted from the log file
File-0021-start-20030709-083436.LOG.
0021 - is the sequence number
20030709-083436 - is the UTC date and time when the file was
initiated.

857-164951 / C 55
HAIN

IMUInertialData

This file contains the gyro and the accelerometer readings from
the IMU.
1 TimeStamp, microsecs since the 1.st of January 1970
2 Status Word 1
3 Status Word 2
4 X_DeltaRotationBody rad.
5 Y_DeltaRotationBody “
6 Z_DeltaRotationBody “
7 X_DeltaVelocityBody m/s
8 Y_DeltaVelocityBody “
9 Z_DeltaVelocityBody “

DVLData

This file contains the readings from the DVL. Normally only the
bottom track is used.
1 Timestamp, microsecs since the 1.st of January 1970
2 Forward Btm Velocity, m/s
3 Starboard Btm Velocity, m/s
4 Down Btm Velocity, m/s (positive down) (body axis)
5 Forward Wtr Velocity, m/s
6 Starboard Wtr Velocity, m/s
7 Down Wtr Velocity, m/s
8 Beam1BtmTrkQlty
9 Beam2BtmTrkQlty
10 Beam3BtmTrkQlty
11 Beam4BtmTrkQlty
12 Beam1WtrTrkQlty
13 Beam2WtrTrkQlty
14 Beam3WtrTrkQlty
15 Beam4WtrTrkQlty
16 DVLStatus
17 Btm Velocity DriverStatus
18 Wtr Velocity DriverStatus

PressureData

This file contains the readings from the depth sensor


1 Timestamp, microsecs since the 1.st of January 1970
2 Pressure, absolute pressure (included atmosphere) in bar
3 SensorStatus
4 DriverStatus

56 857-164951 / C
HAIN telegrams

HeadingData
This file contains the heading and attitude readings.
1 Timestamp, microsecs since the 1.st of January 1970
2 Heading, rad
3 Roll, rad
4 Pitch, rad
5 Heave, m/s
6 SensorStatus
7 DriverStatus

DGPSHiPAPData
This file contains the position aid used by the HAIN.
1 Timestamp, microsecs since the 1.st of January 1970
2 Body Latitude, rad
3 Body Longitude, rad
4 Accuracy, 1-sigma white noise, m
5 Accuracy, 1-sigma coloured noise, m
6 DriverStatus
7 North variance
8 East variance
9 North east covariance
The logging of the variance in point 7 to 9 was introduced in
HAIN v 1.3.4 in april 2005.

857-164951 / C 57
HAIN

6.4 Sensor telegrams to HAIN


The HAIN computer currently supports the following sensors /
interfaces:
Sensor Interface
IMU 90 Inertial sensor RS-232 115200 baud serial Simrad iXSea
IMU 120 Inertial sensor proprietary
i t protocol.
t l
HG1700 Inertial sensor RS-232 115200 baud asynchronous serial line. Honeywell
protocol.
HG1700 Inertial sensor
HG9848 Inertial sensor SDLC synchronous
h serial
i l line.
li N New SDLC driver
di i HAIN
in
computer is needed.
needed Honeywell protocol.
protocol
HG9900 Inertial sensor
Aiding position Kongsberg Maritime proprietary format on a TCP\IP net-
work.
RDI Workhorse DVL RS-232 / RS-422 up to to 57600 baud asynchronous serial
line. PD0 binary telegram. The same telegram is used for
300 kHz, 600 kHz and 1200 kHz DVLs.
Motion sensor RS-232 / RS-422 up to to 57600 baud asynchronous serial
line. Octans std. format or Simrad EM1000 protocol.
Depth sensor RS-232 / RS-422 up to to 57600 baud asynchronous serial
line. Digiquartz standard format.

New sensor formats will be implemented as required.

6.5 HAIN - APOS communication


This interface uses proprietary telegrams on a 10/100 Mbit/s
Ethernet.

58 857-164951 / C
Simulators programs

7 SIMULATOR PROGRAMS FOR HAIN


SET-UP

7.1 Introduction
The NavIo and the IMUSim are Windows programs designed
for set-up of the HAIN system before all sensors are available.
All input values to the HAIN system can be simulated and the
NavIo program will display the output from the HAIN system.
The NavIo program communicates on an network connection
with the HAIN computer. It simulates all inputs to the HAIN
except the IMU. In real operation these sensors values are
normally received by the HAIN control program as telegrams on
serial lines, and sent further to the HAIN Navigation program on
the internal network. The NavIo program communicates directly
with the HAIN navigation program.
The IMUSim program communicates with the HAIN computer
on a serial line on 115200 Baud. It simulates iXSea IMU90 /
IMU120. Note:
The serial interface is the same as the one being used in a real
operation.
The NavIo and the IMUSim programs may be executed on the
same computer. They may be used together with the APOS, and
they may execute on the same computer as the APOS. The
following are available:
• Input / Output formats
• NavIo operation
• IMUSim operation
• The simulators used with APOS

857-164951 / C 59
HAIN

7.2 Input / Output formats


The operator input and output formats are described as follows:

7.2.1 NavIo
• Latitude and Longitude are in radians.
• HorizontalPositionError is in meters.
• Heading, Roll and Pitch are in ° (degrees).
• Depth is in meters.
• DVL data are in meters/second.
• Rate is time between each update.
• Values - NavIo accepts values between 0 and 10 seconds.
Normally 1 second is selected. 0 has a special interpretation;
it means, do not send measurements for the sensor at all.
• Use checkbox - When the use checkbox is selected, the sensor
is enabled, and data will be sent unless the Rate is 0.

7.2.2 IMUSim
The values must be entered in SI units.
• Delta rotations are in radians/second.
• Delta velocities are in meters/second.

60 857-164951 / C
Simulators programs

7.3 NavIo operation


The dialogue box of the NavIo program is:

857-164951 / C 61
HAIN

7.3.1 IP address
Initially check that IP address and the ports for the HAIN
system is correct by selecting the Configuration menu and
choosing IP Address ....
The default settings here matches the default setting on the
HAIN computer. If the HAIN computer uses different values,
these values must be changed accordingly.
Example:
The HAIN computer has IP address 157.237.3.221. It transmits
on port 47768 and it listens on port 47767. These port numbers
are set in the HainConfig.ini file in the HAIN computer. Then
the IP Address dialogue box in the NavIo must be set as shown
below:

7.3.2 Realistic values


You must enter realistic values for the Global position in
latitude longitude and HorizontalPositionError.
• If you use a real IMU as input to the HAIN computer, the
latitude must be the same as the latitude at your location.
• If you use the IMUSim, the latitude must match the IMU
values being simulated.
Motion data must be entered with values close to the actual values
of the IMU measurements. The same applies for Heading.
The values in the dialogue box on page 61, match the values shown
in the page for the IMUSim program.
The Doppler Velocity Log data can be left unused.

62 857-164951 / C
Simulators programs

7.3.3 Operation
1 Press the Update button after editing each section.
2 To start the navigator, click the Use check boxes for:
Global Position, Motion, Heading and Depth.
3 Select the Navigation On radio button to start the
navigator.
- You should now see the Output Data values start to
update when the navigator is operating. The Status
should read 1 when all is OK.
- Information/Warnings and Error messaged are
displayed in the Info/Errors list view at the bottom of
the view.
You may save a specific set of input data to a file by using
File-> Save (overwrite) or File->Save AS (save to a new file).
If you save to new files, then it is easy to restore different
settings from different files.

7.3.4 Sensor select


The global positions are always sent on network to the HAIN
computer.
The sensors values are normally sent on serial lines to the HAIN
computer. The HainConfig.ini file in the HAIN computer
defines the sensors that are expected on the serial lines. When
the sensors are sent from the NavIo, the values in the ini file is
of no importance.

857-164951 / C 63
HAIN

7.4 IMUSim operation


The IMUSim program dialogue box:

The initial values are as logged with an iXSea IMU90 in Horten,


Norway with the IMU heading 245 degrees.
(The iXSea co-ordinate convention is X1 forward indicated by
an arrow on top of the unit, X2 to port and X3 upwards. The
values are converted to the HAIN co-ordinate convention with
X forward, Y to starboard and Z downwards when being
received in the HAIN computer. This conversion is controlled
by the IMUparam.ini file in the HAIN computer.)
The IMUSim simulates new values with 100 Hz, i.e. an IMU
telegram is sent each 10.th ms.

64 857-164951 / C
Simulators programs

7.4.1 Operation
1 Type a new value and click the Update button.
2 To start the simulator, click the Run button.
- The name of the button changes to Stop.
- When you click the Stop button, the simulations stops,
and the name of the button changes back to Run.

7.4.2 Com Port


1 Click the Com Port button, and the following dialogue
box is displayed.

- The Port number must match the com port you use at
your computer for communication with the HAIN
computer.
- The other parameters should be as shown in the
dialogue box shown above.

857-164951 / C 65
HAIN

7.5 Used with APOS


The NavIo and the IMUSim programs are normally executed
without using the APOS.
For training and test purposes the programs may be used
together with the APOS. Then the APOS supplies the acoustic
aiding positions, and the NavIo and / or the IMUSim supply the
sensor values. In NavIo the Use checkbox for Global position
must be selected, and the Rate must be set to 0. Then the global
position is enabled as aiding position for the HAIN, and the
position is sent from the APOS and not from the NavIo.
You must select the Update button in NavIo after you have
activate HAIN on the APOS. The APOS may de-activate and
activate HAIN positioning automatically if some HAIN
estimates are obviously wrong. This will not happen during
normal operation. But it may happen when you test with
inconsistent data. If this occur, select the Update button in the
NavIo once more.
• For HAIN positioning reference - NavIo is not necessary
when using the APOS. The sensor values are for the vessel
itself, and they are sent from the APOS.

7.5.1 Combinations of simulations and


real data

Caution If you have a real IMU connected to the HAIN


computer, you must not run the IMUSim program.

If you have one or more of the sensors connected to the HAIN


computer, the corresponding check-boxes in then NavIo must not
be clicked. If you use the APOS together with the NavIo, the
Sensor status bits of the sensors that are connected, must be zero
(0) in the debug int 65.

66 857-164951 / C
Maintenance

8 MAINTENANCE

8.1 General
The HAIN computer is an APC 10. The same computer is used
for the HiPAP system.
→ For APC 10 maintenance, refer to the HiPAP Instruction
Manual.

8.2 Circuit board and power unit descriptions


→ For APC 10 circuit boards and power unit description, refer to
the HiPAP Instruction Manual.

8.3 Preventive maintenance


After retrieving the unit from salt water, it should be thoroughly
rinsed with fresh water as usual with this kind of equipment.
When you rinse this kind of equipment, note these general
considerations:
Rinse or soak thoroughly with fresh water, the longer the better.
Lukewarm water is preferable if available. Pay particular
attention to nooks and crannies (around bolt heads,connectors,
etc).
If a connector has been disconnected for open face rinsing, leave
it to dry properly before reconnecting.
• Replace sacrificial anodes as necessary.
• Make sure pins and threads on connectors are kept clean and
greased with suitable lubricants.

857-164951 / C 67
HAIN

8.4 Error codes


Some of the HAIN error messages are displayed just as an error
number.
In future versions of the programs we will replace the numbers
with plain text.
Until then we have to use the text below to interpret the error
codes.
The error code is in the left column. A shortform explanation
follows to the right of the number.
// Common error codes

// Data storing
0 eDiskError, // Other unknown disk error
1 eLogBufferOverflow, // The buffer in CDataStorer reached its upper limit
// Clock Sync
2 eClockSyncError, // Clock sync error (missing 1pps during sync)
3 e1ppsError, // 1pps Signal missing or noisy
// Sensor input
4 eDgpsHipapSubscribeError,
5 eDgpsHipapSubscribeDataTimeout,
6 GpsSubscribeError,
7 eGpsSubscribeDataTimeout,
8 eSurveyVesselNavDataSubscribeError,
9 eSurveyVesselNavDataSubscribeTimeout,
10 eDvlSubscribeError,
11 eDvlDataSubscribeTimeout,
12 ePressureSubscribeError,
13 ePressureSubscribeDataTimeout,
14 eHeadingSubscribeError,
15 eHeadingSubscribeDataTimeout,
// SW execution related
16 eUnhandledException,

17 eProcessorRestart,
18 eHighCpuLoad,
// Vehicle network
19 eNoNetworkCommunication,
20 eCorbaExceptions,

eLastCommonError = 127
// Navigation Program error codes
// CNavPCmdHandler

128 eAclMessageInvalid = 128,// Message length inconsistent with message ID


129 eAclMessageUnknown, // Unknown message ID

68 857-164951 / C
Maintenance

// IMU driver, either Honeywell SDLC driver or iXSEA serial driver


130 eImuParityError,
131 eImuOverRunError,
132 eImuFramingError,
133 eImuCrcError,
134 eImuBfrOrZilogStopped,
135 eImuBufferOverrunError,
136 eImuBufferLaggingWarning,
137 eImuDeviceNotFoundAtAdress,
138 eImuErrorAllocatingBuffer,
139 eImuMessageLost, // Message counter in IMU90 telegram is not 1 higher
than in the previous telegram.
// CIMU
140 eImuWrongInertialMsgSize,
141 eImuWrongFlightCtrlMsgSize, // IMU90 telegram length is not correct
142 eImuWrongMsgID,
143 eImuMsgSizeZero,
144 eImuFailedToInitializeSdlcDriver,
//From IMU status words:
145 eImuFailure, // IMU failure, details below
146 eImuProcessorFailure, // Processor tests failure
147 eImuMemoryFailure, // Memory tests failure
148 eImuOtherFailure, // Other tests failure
149 eImuAccelFailure, // Accelerometer tests failure
150 eImuGyroFailure, // Gyro tests failure
//The following should only be used for debug purposes. Reset is a normal part of
IMU operation
//The fact that they will be triggered makes them nice for debugging.
151 eImuAGyroPlcReset, // a--axis RLG in PLC reset
152 eImuBGyroPlcReset, // b--axis RLG in PLC reset
153 eImuCGyroPlcReset, // c--axis RLG in PLC reset
// CStrapdownNavigator
154 ePitchSingularity,
155 eLatitudeSingularity,

857-164951 / C 69
HAIN

// CKFController
156 eNoNavDataToKFInput, // No IMU data

157 eNoDvlDataToKFInput // Aiding sensor comm check


158 eNoPressureDataToKFInput,
159 eNoHeadingDataToKFInput,
160 eNoMotionSensorDataToKFInput,

161 eShipNavpTimeDifference, // Sync check ship GPS <--> NavP

162 eDvlTimeDifference, // Time tag comparisons to NavP time


163 eDgpsHipapTimeDifference,
164 ePressureTimeDifference,
165 eCompassTimeDifference,
166 eVehicleGpsTimeDifference,
167 eUtpTimeDifference,
168 eDvlWildPoint // DVL integrity test
169 eDvlSigmaTest,

70 857-164951 / C
Procedures

9 PROCEDURES

9.1 Check of the IMU compensation values

9.1.1 Introduction
HAIN subtracts compensation values from the IMU readings
before they are used in the navigation. During the navigation
HAIN estimates errors in the IMU readings. The estimated
errors may be used to decide new compensation values for the
IMU.
The procedures in this section explains how to do this.

Note The procedure applies for HAIN Position reference only.

It is easier for HAIN to detect the errors in the IMU when the
vehicle is moving. For a DP position reference the movements
may be roll and pitch. An ROV normally rolls and pitches many
degrees when sailing a line.
The procedures are best carried out when the vehicle has typical
movements.
The purpose of the sensor compensation test procedures is
to:
• Check if the IMU sensor compensation values decided before
delivery are still OK.
• Change the sensor compensation values if necessary.

9.1.2 Procedure for checking the IMU


compensation values
The IMU must have been powered on for at least four hours
with stable temperature around it.
1 Activate HAIN positioning.
- Both the position aid and the HAIN positions must have
been stable for at least one hour.
2 Tick the Sensor Biases... command in the context
sensitive menu of the HAIN object.
- The HAIN sensor Biases and Compensation dialogue is
displayed.
Skjermbilde?

857-164951 / C 71
HAIN

3 Check that the biases and compensation values for the


Gyros and the Accelerometers are displayed.
If not, tick the Select sensor for display... button and the
select the Gyros and the Accelerometers.
4 Check that the Average interval is set to 60 minutes.
(Write 60 in the edit box, and then tick somewhere else in
the dialogue.)
- The position aid is ”defined” to be stable when its
deviation is less than 0.8.
- If the acoustic position is too unstable due to noise, try
to use the dGPS as position aid.
5 Check the lower line in the list view starting with the text
Recommend.
- If a minus sign is displayed for all 6 sensors, no change
in compensation value is recommended.
You are finished. This is the normal situation.
- If there is a Yes for one or more of the sensors in the
Recommend line.
6 Observe the Calculated compensation value(s) with Yes in
the lower line for one hour. Write down the Calculated
value(s) each 10.th minute
- The check is finished.
7 Tick the Close button.
8 Contact Kongsberg Maritime for assistance. do.
- If Kongsberg Maritime recommends to change the
compensation value, do as follows:

9.1.3 Procedure for changing IMU


compensation values
1 Repeat 1 to 5 in the check procedure.
2 If the dialogue still displays Yes for the same sensor(s),
and the calculated value(s) are approximately as during
the check, continue with the next points.
3 Write down the Used and the Calculated compensation
value for the sensor with Yes in the lower line.
4 Observe the Calculated compensation value(s) with Yes in
the lower line for one hour.
5 Write down the Calculated value(s) each 10.th minute.

72 857-164951 / C
Procedures

6 If the dialogue still displays Yes for the same sensor(s),


and the calculated value(s) are approximately as during
the check, continue with the next points.
7 Logg in as user Service on the APOS. This is password
protected.
- If you do not know the password, contact Kongsberg
Maritime.
8 Tick the Apply Calculated... button. In the dialogue with
the new compensation value(s), tick the OK button.
9 Restart HAIN positioning.

9.1.4 Documentation
When you check and/or change the IMU compensation values,
Write down the results in a log book. Below is an example of a
table that may be used.
• In the Calculated column - write down one value if you did
not change the compensation value.
• If you changed the value - write down the min and max value
among those you noted each 10.th minutes.

Sensor Used, i.e. original Calculated New


Gyro X [ug]
Gyro Y [ug]
Gyro Z [ug]
Accelerometer X [°/h]
Accelerometer Y
Accelerometer Z

The intention is to fetch data logged during a specified time


interval. The data shall be sent to and analyzed by Kongsberg
Maritime.
HAIN data logging must have been turned on during the
specified time interval.
→ The HAIN Properties dialogue is displayed, see page 74.

857-164951 / C 73
HAIN

9.2 Fetch HAIN data for analysis


The procedures assumes that:
• You are familiar with the
Extract program. Extract.exe
is located on the HAIN\bin
folder as part of the HAIN
installation. Extract is
described in appendix A.
• You are familiar with basic
PC operations like using the
Explorer and compressing text
files into a zip file.
• The HAIN and APOS
programs are installed in drive
C:\ in their computers.
- If installed on another drive,
e.g. D:\, just replace C:
with the D: in the
description.
• The data shall be burned on a
CD. The contents are fetched
both from the APOS and the
HAIN computer.

9.2.1 HAIN computer


Mission name
The mission name field in the HAIN Properties dialogue is
normally empty.
1 The data is logged on the C:\logdata\unnamed folder in the
HAIN computer.
- If you specify a mission name, the subfolder gets the
mission name instead of unnamed.
2 Replace unnamed with that name in this description.
- Unnamed\NavData contains a copy of the HAIN ini
files and binary log files.
- The log files have extension .log. A new log file is
generated each 15.th minute.
- The UTC clock when the file was started, is part of the
file name. Each log file is approximately 13 Mbytes
when navigation has been on.
Tidy
The Tidy program executes in the background. It deletes all log
files older than 48 hours in the unnamed folder.

74 857-164951 / C
Procedures

Folder structure before and after Extract

The figure to the left shows the folder structure around LogData
before the Extract program has executed.
The unnamed folder has a NavData subfolder containing the log
files.There may be a unnamed\NavP folder. It is a leftover from
a previous extract of data. Either delete it or rename it before
executing Extract

The Extract program shall be executed


with settings similar to the ones shown
to the left. This matches the folder
structure just shown. In the figure to the
left we have requested to fetch 25
minutes with measurements starting at
the 4.th of November 2005 04:20 UTC.
Initially the timespan between start and
stop is 48 hours. After having ticked the
Start extracting button, the txt files are
generated.
The final step in the procedure is to
generate a compressed file on a CD.
The compressed file contains approximately 3 minutes of log
data on each Mbyte. Keep this in mind when specifying the
length of the time interval.

The .txt files are in the NavData folder. The NavP\NavData


subfolder is generated by Extract. There are some .ini files in the
unnamed\NavData folder. Store a copy of them in the
unnamed\NavP\NavData folder.
In the root of C: there is one navptestyymmddT0000.txt file for
each day. The file for the 4.th of November 2005 is named
navptest051104T0000.txt. Store a copy of the txt file for the day
in the highlighted NavData folder.
Compress the contents of the highlighted NavData folder, and
burn the .zip file on a CD.

857-164951 / C 75
HAIN

9.2.2 APOS computer

APOS logs calculated positions in a system log. The log files are
overwritten after 28 days.
A new log file is generated each hour. They are named Alhh.txt.
hh is the hour when the log started. It is a number between 00
and 23.
There is one folder with the log files for each day, as shown in
the figure to the right. They are subfolders to C:\APOS\System.
The folder names and the hour hh in the name of the log files
are local time. The timestamps of the positions in the files are in
UTC.
There are four subfolders for each day. You have to check the
timestamp of the files in the folder to decide which one that
stores the log for the specified time interval.
When the files containing measurements for the specified time
interval are located, burn them to the CD. Each log file is
approximately 1 Mbyte in size, so you can burn the whole folder
for the day if you want to be sure.

76 857-164951 / C
Troubleshooting

10 TROUBLESHOOTING
There are many parameters and connections that must be set
correctly for the HAIN to operate. This section is intended to be
a troubleshooting guide when you ar working to get the system
up and running.

10.1 Network connection

10.1.1 Physical connection


The APOS and the HAIN computer communicates on a
network. You must assure that the communication is ok by
”pinging” on the HAIN computer from the APOS and vice
versa. The OK communication window is shown below:

10.1.2 Setup
You must ensure that the network addresses and the
corresponding sub-net mask is correct on all APOS and HAIN
computers.
The HAIN computer may transmit its Ethernet messages to the
APOS as either unicast or multicast. When the HAIN positions
shall be received on multiple APOSes, multicast must be used.
The ClientAddress parameter in HainConfig.ini specifies the
address to use. If it is commented away with a #, HAIN uses the
default multicast address 230.237.11.176. We recommend to use
the default multicast address.

857-164951 / C 77
HAIN

The HAIN computer may have more than one network pcb
installed, because it also may need communication towards a
NavLab computer. The AdapterAddress parameter in the
HainConfig.ini must be set equal to the IP address of the pcb
connected to the APOS(es). Then the HAIN computer knows
which of the network pcbs that are in use for the multicast
communication with the APOS(es).
When defining a HAIN object on the APOS, you must set up
the IP address of the HAIN computer. You must also set up the
Port numbers to use. The Tx and RX port numbers must be the
same as specified in the HainConfig.ini file on the HAIN
computer, with Rx and Tx swapped. On the APOS computer,
you also set the Receive address. It only matters when the HAIN
computer transmits on multicast. The default Receive address is
230.237.11.176. It shall be used when communicating on Net A.
If the computers communicate on net B, the receive address
shall be set equal to 230.237.11.176.

Check communication between APOS and HAIN


Look at the HainsCP window in the HAIN computer. Activate
HAIN from the APOS. Then the line New control data Mode
received: 2 shall be displayed in the HainsCP window. If not,
the communication from the APOS to the HAIN does not work.
Log in at APOS as user Service. Tick the Show monitor window
in the HAIN properties dialogue you. In the monitor window the
telegrams sent from APOS start with Tx:, and the telegrams
received by APOS start with Rx:. An example is:
11:02:11.825 Tx: DGPS/HiPAPData Lat = 1.037179, Long = 0.182683, HiPAP Acc = 1.593,
DGPS Acc = 0.000,D......

11:02:13.270 Rx: CNavPAlive: Load = 0.0, Disk = 11752028, Status = Navigation, Storing

If the Rx: lines does not show up, the communication from the
HAIN computer to the APOS does not work. The CNavPAlive
message shall be received regularly also when HAIN is not
navigating.
If the Tx: DGPS/HiPAP Data ... does not show up, no aiding
position is sent to HAIN. If this is the case, check that the aiding
position is activated and that it’s position is available in
geographical co-ordinates. If the geographical co-ordinates are
missing, the problem is different for HAIN subsea and HAIN
vessel. For HAIN subsea with SSBL aid, check that the dGPS
input is OK. For HAIN vessel with SSBL aid, check that the
geographical position in the transponder properties dialogue is
OK. When the aiding position is LBL, check that the LBL array
has defined a geographical position for its origin.

78 857-164951 / C
Troubleshooting

10.2 Clock synchronization

10.2.1 General information


The HAIN Position Status View dialogue tells the difference
between the HAIN clock and the APOS clock with resolutions
ms. The clock difference may jump back and forth
approximately 10 ms due to the clock resolution in the APOS
computer. This is ok.
HAIN operates well both when the HAIN computer and the
APOS computer are synchronized in time, and when they are
drifting in time. So both a small value and a great value are ok,
as long as they are stable within approximately 10 ms.
HAIN positions transmitted to other computers from the APOS
are timestamped with the APOS clock. All measurements
logged in the HAIN computer are timestamped with the HAIN
clock.

Note The HAIN clock shall not be adjusted during Navigation.

The ntp program may adjust the ”speed” of the clock, but not
the clock itself. As long as the clock difference between the ntp
server and the ntp client is less than approximately 50 ms, the
ntp client just adjusts the clock ”speed”. But if the difference is
greater, it may also set the clock itself, which degrades the
HAIN performance.

10.2.2 HAIN Position reference


When HAIN is used as a reference system for the DP, it is in an
environment where clock synchronization with an accuracy in
the order of ms is not mandatory. Often the 1 PPS is not
available, and the APOS clock may sometimes be adjusted by
seconds. The HAIN computer must have a stable clock when it
is positioning, and in this environment it is therefore best to
allow it to drift relative the other computers in the network.
APOS monitors the clock difference between the computers,
and the HAIN positions are timestamped with the APOS clock
before they are sent to other computers.
The only disadvantage with the clock drift is that the timestamps
in the HAIN binary log files will not be correct. This may be
minimized if the operator executes the Synchronize time
command in the HAIN context sensitive menu before
positioning is started.

857-164951 / C 79
HAIN

10.2.3 HAIN Subsea


HAIN subsea is usually operated by surveyors, and all
computers onboard are synchronized to correct UTC.
The APOS clock is synchronized to the 1 PPS from the GPS
receive, and the HAIN computer is synchronized to the APOS
with the ntp program.
Then the clock difference will be between +- 15 ms, and the
timestamp of all measurements in the HAIN computer will then
be correct in UTC.

10.2.4 ntp
ntp (network time protocol) is a program that synchronizes
computer clocks. It executes in each computer to be
synchronized. One of the ntps is the clock server, and the
other(s) are clock client(s).
ntp usually executes on the HAIN and APOS computers in a
HAIN subsea applications.

Note The ntp program is normally not in use in the HAIN vessel
applications.

The ntp server normally runs on the APOS with the 1 PPS
connected. The HAIN computer is a ntp client.
The ntp command window on the HAIN computer should be
similar to the following command window:

80 857-164951 / C
Troubleshooting

The two lines starting with transmit: at and receive: at show


that the two-way communication is ok. Check the f you do not
see these two lines. Check the ntp.conf files if this does not
work properly.
The ntp program fine-adjusts the clocks. If the APOS clock and
the HAIN clock are wrong with several minutes, you should
manually adjust them with the Windows date and time function.
The ntp works with the UTC time, and local timezones does not
matter. But it is simpler for you if you set both the HAIN
computer and the APOS to work either with the same timezone
or in UTC. When the HAIN object is defined, you may
synchronize the clocks crudely with the APOS Synchronize
time command in the HAIN context sensitive menu. This should
only be done initially.
The lines with the text off -0.014714 in the figure above show
that the ntp has estimated how wrong the HAIN clock is, and
that it works on adjusting it. The off number in the figure is 14.7
ms. Normally it shall be in the order of magnitude 1 ms. If the
ntp does not stabilize with off values less than 5 ms, it may be
due to the clock at the ntp server computer is not stable.

10.2.5 Window time


Windows time is a program that is stopped when the computers
are set up before delivery. If the synchronization does not
stabilize, you should check that it really is stopped. Enter the
Control panel, Select Administrative tools and then Services,
and stop the Windows time if it is running.

857-164951 / C 81
HAIN

10.3 OSK time synch


OSK time synch is a Kongsberg Maritime program that
synchronizes the clocks in DP and APOS computers. There is
one OSK time synch server in the net, normally executing on
the computer that is synchronized to the GPS clock. The others
OSK time synches are clients, and adjust their clocks to the
server. The APOS that executes the OSK time synch server may
also execute the ntp server. The OSK time synch clients adjust
their clocks too crude for the ntp program. Therefore the ntp
client and the OSK time synch client shall not execute on the
same APOS.
The HAIN computer never executes the OSK time Synch.

10.4 IMU
The HAIN will not try to start navigation if the IMU raw
telegrams are not received OK. You may check that the IMU
telegrams are received ok in two ways.
Look at the APOS event view. Disconnect the IMU. Then you
shall see the message Error 156 detected. No IMU data input
TRUE. Connect the IMU again, and check that the message
Error 156 cleared. No IMU data input FALSE is displayed. If
these messages do not appear, the IMU raw telegrams are not
read ok.
Another way to check for IMU telegrams is to look at the Hain
monitor window on the APOS. The line starting with timestamp
Rx: NAV Data Lat=... is only displayed when the HAIN
receives the IMU telegrams and tries, successfully or not, to
start navigating.
Example:
11:30:47.692 Rx: NAV Data Lat=1.037179,Long=0.182683,Depth=0.025,Roll=0.1911°....

If the IMU telegrams are not received OK, check the selected
comport and IMU type in the config.ini file.
In IMUparam.ini you must check the scalefactors and the
mounting. Be aware that the Honeywell, iXSea and Kearfott
IMUs require different scale factors. See more details in the
comments in IMUparam.ini. The IMU telegrams may be
accepted even when these values are wrong, but the navigation
itself will be wrong.

82 857-164951 / C
Troubleshooting

10.5 Other sensors


Look at the Rx: NAV Data Lat sentence in the HAIN monitor
window. It ends with information about the sensors received ok.
Example:
timestamp Rx: NAV Data Lat= ... ,Status=1, Sensors=, IMU, Pressure, Heading, Motion,
DGPS/HiPAP

Status= 1, when HAIN navigates. It is usually 4 when it does


not.
Sensors= the sensor measurements that is available, regardless
of navigation or not.
HAIN needs the IMU all the time. It needs the position aid
(DGPS/HiPAP), heading (Heading) and attitude (Motion) to
start navigation. When the navigation has started, it no longer
needs the heading and the attitude. The depth (Pressure) is not
needed to start navigation, but it is mandatory for the navigation
to work.
The parameter DgpsHipapTimeout in errpar.ini in the HAIN
computer defines the timeout for the position aid. If HAIN has
been without position aid longer than set by this parameter, the
(DGPS/HiPAP) is no longer set in the Sensor= list.
If some of the sensors are missing from the list (Sensors=,),
check the physical connection and the comport parameters in
HainConfig.ini.

10.6 Bad navigation


The system may navigate poorly even if it receives and accepts
the sensor telegrams.
In IMUparam.ini - you must check the scalefactors and the
mounting. Be aware that the Honeywell, iXSea and Kearfott
IMUs require different scale factors. See more details in the
comments in IMUparam.ini. The IMU telegrams may be
accepted even when these values are wrong, but the navigation
itself will be wrong.
The KFParam.ini - must match the quality of the IMU that you
are using. The default file is for the IMU90. The file
KearfottT16B-KFParam.ini is for the Kearfott T16B in the CDL
MiniPos. If you use that IMU, just rename the file to
KFParam.ini.

857-164951 / C 83
HAIN

If you use the Kearfott T16B IMU, the HAIN will transmit an
EM telegram with the heading and attitude out on the same
serial port as the IMU data is read. This port uses 115200 baud
and odd parity. You should connect the output from this IMU
com port to the input of another com port. In HainConfig.ini
you specify that the EM telegrams are received on this port with
the parameters just mentioned.

10.7 Sensor simulators

10.7.1 General
If you have all sensors available, you should connect them and
work with the real measurements. If you do not have all sensors
available, you must use the two simulators IMUsim and NavIO
for the missing sensors. This is explained in more detail in other
sections, see the table of contents.
You always have two computers:
• one for the HAIN
• one for the APOS.
The simplest configuration is to execute the NavIO on the
HAIN computer and the IMUSim on the APOS. The IMU
telegrams must be transmitted on a crossed serial cable (laplink
cable) between the computers. The NavIO communicates with
the HAIN programs through the internal network address
127.0.0.1.
The sensors that are physically connected, shall not be
simulated. For these sensors, you should untick their check box
in NavIO.

84 857-164951 / C
Troubleshooting

10.7.2 Advanced information

How to simulate missing measurements


You may want to simulate missing measurements. Do this by
setting their rate in NavIo equal to zero.
The NavIo may execute together with the APOS. Then you
must set an integer into the APOS debug int 65. The integer is
bit-coded, as follows:
Bit number (Numerical value) Measurement
0 (1) Heading (Compass)
1 (2) DVL
2 (4) Motion sensor
4 (16) Depth sensor
6 (64) Aiding position from the APOS
All sensors set gives the integer value 87. When a sensor is
physically connected to the HAIN, its bit in the integer value
shall be zero.
The values shown in the IMUSim dialogue are for an IMU with
heading 245° at latitude 59° 25.5583’ (1.03718 radians, which is
to be inserted in the NavIo latitude). The longitude does not
matter.

857-164951 / C 85
HAIN

11 TECHNICAL SPECIFICATION

11.1 HAIN computer


The HAIN computer is an APC 10. The same computer is used
for the HiPAP system.
Material anodized aluminium
Length x width x height (425 x 445 x 185) mm
Weight in air 17 Kg
Waterproof IP 66

11.1.1 Power
Power Requirements (50-60 Hz) (180-264 / 90-132) Vac
Nominal 80 W

→ For more APC 10 specifications, refer to the HiPAP Instruction


Manual.

11.2 IMU - Position reference

11.2.1 General
Material anodized aluminium
Length x width x height (280 x 136 x 162) mm
Weight in air 4.8 Kg
Waterproof IP 66

11.2.2 Power
Requirements 24 Vdc
Consumptions 12 W

11.2.3 Dynamic range


Gyro ± 500 °/s
Accelerometers ± 30 g

86 857-164951 / C
Technical specification

11.3 IMU - Subsea system

11.3.1 IMU 90
Maximum depth rating 4000 m
Material anodized aluminium
Length x width x height (280 x 136 x 162) mm
Weight in air / water 31.5 Kg / 13 kg
Tube / flange diameter 206 mm / 248 mm
Overall length 460 mm

Power
Requirements 24 Vdc
Consumptions 12 W

Dynamic range
Gyro ± 500 °/s
Accelerometers ± 30 g

11.3.2 CDL/kearfott - MiniRLG


Maximum depth rating 3000 m
Material anodized aluminium
Weight in air 9.8 kg
Diameter 182 mm
Overall length 300 mm

Power
Requirements 18-30 Vdc
Consumptions (max) 35 W

→ For more information, refer to the separate Technical Manual


supplied with the unit. This is not a Kongsberg Maritime
document.

857-164951 / C 87
HAIN

11.4 Accuracy
11.4.1 HAIN - Position reference system
HAIN combines the acoustic measurements and the readings
from the IMU in an optimum way. The navigation equations
update the vessel position, velocity, heading and attitude almost
continuously based on the readings from the IMU. The Kalman
filter corrects these values when new acoustic positions are
available. This results in improved position accuracy compared
to the acoustic measurements, as illustrated in figure 10.
HAIN VesselPos. IMU90. Systematic errors are not included.
8
HiPAP
HAIN Real time
7 HAIN Post processed
1-sigma horizontal accuracy [m]

1
(CD32004)

0
500 1000 1500 2000 2500 3000
Depth [m]

Figure 10 HAIN Position reference accuracy figures

The simulations for the expected accuracy are based on the


following accuracy figures:
• HiPAP angle accuracy 0.1° in x and y
• HiPAP’s Motion Sensor
white noise 0.02° in roll and pitch
• HiPAP’s Motion Sensor
coloured noise 0.1° in roll and pitch
• Accelerometers random walk 15mg/ Hz
• Accelerometers coloured noise 0.5 mg
• Gyro random walk 0.0025°/ h
• Gyro coloured noise 0.05°/h

88 857-164951 / C
Technical specification

11.4.2 HAIN - Subsea system


HAIN combines the acoustic measurements and the readings from
the sensors onboard the ROV in an optimum way. The navigation
equations update the ROV position, velocity, heading and attitude
almost continuously based on the readings from the IMU. The
Kalman filter corrects these values when new acoustic positions
and when readings from the other ROV sensors are available. This
result in improved position accuracy compared to the acoustic
measurements, as illustrated in the figure on page 89.

HAIN SubseaPos. IMU90. Systematic errors are not included.


8
HiPAP
HAIN Real time
7 HAIN Post processed
1-sigma horizontal accuracy [m]

(Cd32006)
0
500 1000 1500 2000 2500 3000
Depth [m]

Figure 11 HAIN Subsea accuracy figures

The simulations for the expected accuracy are based on the


following accuracy figures:
• HiPAP angle accuracy 0.1° in x and y
• dGPS position white noise 0.15 m in North and East
• dGPS position coloured noise 0.10 m
• HiPAP’s Motion Sensor
white noise 0.02° in roll and pitch
• HiPAP’s Motion Sensor
coloured noise 0.1° in roll and pitch
• Accelerometers random walk 15mg/ Hz
• Accelerometers coloured noise 0.5 mg

857-164951 / C 89
HAIN

• Gyro random walk 0.0025°/ h


• Gyro coloured noise 0.05°/h
• Depth sensor 0.1 m
• DVL white noise 0.02 m/s
• DVL coloured noise 0.015 m/s

90 857-164951 / C
Technical specification

11.5 HAIN connections


All connections to and from the APC 10 are made on the rear of
the unit. The rear panel is made up of three sections of
connectors:
• Mains power input:
- Power input
• Motherboard connectors:
- Trackball (mouse)
- Keyboard PS/2 style connector
- USB connectors (not used)
- 9-pin D-connector, serial port 1 (RS-232) COM 1
- 25-pin D-connector, parallel port for printer
- 15-pin D-connector (not used)
• PCB connectors:
- 15-pin D-connector, VGA video connector
- 37-pin D-connector, COM 2, COM 3, COM 4 and COM 5
- Ethernet connector

Com 2, Com 3,
Com 4, Com 5
Ethernet
connector
(Cd31003)

Mains power USB Com1 VGA video output

Keyboard Printer
On/Off switch Trackball

Figure 12 APC 10 rear panel

857-164951 / C 91
HAIN

12 SPARE PARTS

12.1 Introduction
This section lists the parts and modules defined by Kongsberg
Maritime as Line Replaceable Units (LRUs). The required
mounting components (such as nuts, bolts, washers etc.) are
identified on the diagrams, but have not been allocated order
numbers as we regard these items as standard commercial parts
available from retail outlets around the world.

12.2 Codes used


The following codes are used in the parts lists:
Part no. - Kongsberg Maritime’s part number.
Item name -The name of the item.
Technical data - Technical specifications and any other relevant
information.

92 857-164951 / C
Spare parts

12.3 List of spare parts for the APC 10 unit


Part no. Item name No. in sys.
-- Technical data Rec.spares
125--103300 Acoustic Positioning Computer 1
-- Complete --
719--087589 Power supply unit 1
-- SPI--235 HI --
719--098298 Hard disk 1
-- -- --
719--087382 Floppy drive 1
-- Mitsumi 3.5” --
719--098758 DVD--read / write 1
-- NEC DVD ND--1300 --
719--078424 Ethernet PCB 1
-- 3COM 3C905C--TX--M --
719--097270 Serial adapter board 1
-- Blue Heat/PCI --
719--087591 Video adapter board 1
-- 100--411012--00 --

12.4 Keyboard
Part number 719-098786

857-164951 / C 93
HAIN

12.5 List of spare parts for the IMU - Subsea

12.5.1 IMU 90
Part no. Item name No. in sys.
-- Technical data Rec.spares
370--087144 UW--Receptacle 2
-- 10.00.2.07.2.10 7p 1
540--098703 O--RING 1
-- 204,20 X 5,70 N 2
540--084762 O--RING 1
-- 229,3 X 5,7 N 2
560--095848 M6x40 Unbrako 6
-- DIN 912/A4 10
572--019360 M6 Washer 11
-- DIN 125A/A4 10
577--019389 M6 Spring washer 11
-- DIN127B/A4 10
198--085263 Zinc anode 207--5000 Iss1 6
-- -- 10
242--099100 Diode/2 (Common Cathode) 1
-- 63100 1
249--076683 Insulating washer 1
-- for TO3P/TO218 1

12.5.2 CDL/kearfott - MiniRLG


→ Refer to the separate Technical Manual supplied with the unit.
This is not a Kongsberg Maritime document.

94 857-164951 / C
Drawing file

13 DRAWING FILE

13.1 Overview
This section contains illustrations referred to in various sections
in this manual. The illustrations are based on the original system
drawings and wiring diagrams.
• The illustrations are not in scale.
• The original drawings are available in electronic format (pdf)
on request.

13.2 Drawings
→ For APC 10 drawings, refer to the HiPAP Instruction Manual.
• Outline dimensions
- IMU 90 Subsea, page 96.
- Wall bracket IMU 90, page 97.
- IMU CDL/kearfott - Mini RLG Subsea, page 98.
- Wall bracket IMU CDL/kearfott - Mini RLG, page 99.

857-164951 / C 95
HAIN

Page 1 of 1 830-220139
(CD32011) IMU 90 assembly and outline dimensions Rev. Preliminary

96 857-164951 / C
Drawing file

Page 1 of 1 599-220528
(Cd32018) Wall bracket IMU 90 Rev. A

857-164951 / C 97
HAIN

Page 1 of 1 CDL/kearfott - MiniRLG mounting details N/A


(Cd32025) and outline dimensions

98 857-164951 / C
Drawing file

Page 1 of 1 599-220996
(Cd32026) Wall bracket for CDL/kearfott - MiniRLG Rev. A

857-164951 / C 99
HAIN

14 APPENDIX A

14.1 Extract program description

14.1.1 Scope and purpose


This section describes the purpose and functionality of the
Extract.exe program to be used as a part of the HAIN product.
Extract.exe is a separate running program located in the
\HAIN\bin folder.
The purpose of the program is to convert binary data located in
Log file into ASCII files for further processing.

14.1.2 Operation

Starting the program


The Extract.exe program is started by double clicking on the file
name in Windows Explorer.
When the program is started, the following window appears:

100 857-164951 / C
Appendixes

Operation
The configuration of program is divided into four main parts:
→ Paths, page 102.
→ Mode, page 103.
→ Utility, page 103.
→ Time settings, page 104.
Command buttons for executing a command are explained on
page 105.

857-164951 / C 101
HAIN

Path
The Source directory is the directory where the log files to be
extracted are located. You are allowed to enter text directly into
the text box or browse for wanted directory if the Browse button
is pressed.
The Destination directory is the directory where the extracted
ASCII files are copied after an extraction. You are allowed to
enter text directly into the text box or browse for wanted
directory if the Browse button is pressed.
1 Select the Browse button
- The following dialogue box appears when the Browse
button is selected:

2 When you have has navigated to the wanted directory,


press OK.
- The selection will then be copied to the text box.
- The selection for Source browsing is also copied to the
Destination text box, since the most common use is that
Source and Destination will be the same directory.
The Default selection is: C:\LogData\Unnamed\NavData

102 857-164951 / C
Appendixes

Mode
The Mode is describes as the following functionality:

Convert all files - When the radio button is checked, all


information located in the log files at the source directory will
be extracted. The Time settings will be disabled, since the
information is unnecessary.
Time extracted - When the radio button is checked, only the
logdata inside the Extract Start and Extract Stop time interval
will be extracted from log files. The Time settings are therefore
enabled for this selection.
The default selection is: Convert all files

Utility
The following Utility functionality is available:

Note Do not tick these two check boxes.

Display Log File - The button is enabled after an extracting


sequence. Selecting the button will open Notepad for
examination the Log.txt file- This file contain status information
for the last extracting sequence.

857-164951 / C 103
HAIN

Time settings
The Time settings have the following selections:
Note that the Time extracted mode has to be selected.

Note The initialised values for the Extract Start date/time are
calculated from the oldest data located at the Source directory.
The Extract Stop date/time are calculated from the last stored
data.

Extract start - The Date and Time for the oldest data to be
extracted from log files.
Extract stop - The Date and Time for newest data to be
extracted from log files.

104 857-164951 / C
Appendixes

Command buttons
The following command buttons are available:

Start Extracting - The command will start the extraction of


data from the Source directory.
When the button is pressed, the following dialogue appears:

The dialogue is used for presentation of the progress of the


extraction. The following information is shown:
• Name of the currently extracted file.
• Total number of file to be extracted.
• Number of extracted files
• Progress of current extraction
Stop Extraction - The command will stop the extracting
sequence when the currently extraction is finished.
Exit - The program will be terminated.

857-164951 / C 105
HAIN

15 APPENDIX B
15.1 Tidy program description
15.1.1 Scope and purpose
This section describes the purpose and functionality of the
Tidy.exe program. It is a part of the HAIN product.
The functionality of the program can be separated in three main
activities:
1 Automatically delete Log files older than 48 hour from the
\Logdata\Unnamed NavData directory.
2 Automatically delete Event files older than 48 hour from
the \Logdata\Unnamed\Eventlog directory.
3 Perform backup of the Ini files located at the NavData
directory if one of the Ini file is changed. The changed file
is copied to the Backup directory, and renamed to a
filename containing time and date information.
The Backup directory is automatically created.
If more than one file has to be deleted, a file will be deleted
each second.

15.1.2 Operation
How to start the program
Tidy is automatically started when HAIN is started.

How to stopp the program


Normally you shall not stop Tidy. if required, The program can
be stopped using keyboard commands in one of the following
ways:
• Press Q or q.
• Press the Ctrl-C

106 857-164951 / C
Index

16 INDEX
The next pages presents the index of this manual.

A Clock synchronization, 41, 79


HAIN Position reference, 79
HAIN Subsea, 80
Abbreviations, 1
Clock synchronization HAIN Position
Accel, 37 reference, 45
Accuracy, 88 Clock synchronization HAIN Subsea, 41
Acoustics, 7 Com Port, 65
Aiding position, 58 Combinations of simulations and real data,
APC, 1 66

APC 10, 19, 67, 86 Compass, 15


Connections, 91 COS, 1
Mains power input, 91
Covar, 37
Motherboard connectors, 91
PCB connectors, 91 Create the HAIN object, 47
APC 10 drawings, 95 Crude clock synchronization, 44
APC 10 installation, 19
APC 10 specifications, 86 D
APC 10 unit, 93 Data Logging, 12, 16
APOS, 1, 12, 15, 16, 30 Depth measurement, 6
APOS computer, 76 Depth sensor, 58
APOS telegrams, 54 dGPS, 1, 13
Appendix a, 100 DGPSHiPAP, 39
Appendix B, 106 DGPSHiPAPData, 57
arms.ini, 31 Doppler Velocity Log, 15
ASCII files with raw measurements, 55 DP, 1, 2
Attitude, 4 DRAWING FILE, 95
Drawings, 95
Driver status, 55
B DVL, 1
Bad navigation, 83 DVL alignment, 41, 46
DVLBtm, 37

C DVLData, 56
DVLMisalign, 40
CDL/kearfott, 87, 94 DVLWtr, 37
Check and change of compensation values,
52
Check of the IMU compensation values, 71 E
Circuit board, 67 Error codes, 68

857-164951 / C 107
HAIN

Example of RDI initialization, 38 Heading, 36


HiPAP, 32
Explanation of the sections, 33
Digiqartz, 34 IMU, 25
Octans, 32
DVL, 34
Pressure, 36
General, 33
SensorCompensation, 36
Ports, 33
Sensors, 32
Sensors, 34
ShipPosition, 36
Extends operational depth capabilities, 9 SimradEM, 33
External measurements, 4 VehicleGPS, 36

Extract program description, 100 HAIN Installation, 18


HAIN measurements on files, 54
HAIN Position QA, 50
F HAIN Position reference, 2, 8, 9, 16, 43
Fetch HAIN data for analysis, 74 HAIN processing, 5
HAIN Properties, 49

G HAIN real time positions to other


computers, 54
GPS, 1, 43 HAIN Sensor biases, 50
GPS UTC, 43 HAIN Subsea, 2, 8, 13, 16, 43
Gyro, 37 HAIN systems, 2
HAIN Telegrams, 54

H Heading, 39
Heading sensor, 15
HAIN, 1, 3
HeadingData, 57
HAIN --- APOS communication, 58
HG1700, 58
HAIN --- Position reference system, 88
HG9848, 58
HAIN --- Subsea system, 89
HG9900, 58
HAIN computer, 11, 15, 16, 18, 19, 31, 43, 44, High voltage safety warning, VIII
58, 67, 74, 86
Accel, 35 Higher position update rate, 9
DVL, 31 HiPAP, 1, 2
HiPAP, 31
IMU, 31 HiPAP Instruction Manual, 19, 67, 86, 95
Pressure, 31 HiPAP Instruction Manual., 67
HAIN configuration, 18, 32 HPR, 1, 2
Covar, 35
Decimation, 36
DeckHeight, 36
DGPSHiPAP, 35
I
Digiqartz, 32 Illustrations:
DVL, 33 APC 10 rear panel, 91
DVLBtm, 35 APOS / HAIN network configuration, 19
DVLMisalign, 36 HAIN Position reference accuracy figures,
DVLWtr, 35 88
Explanation of the sections, 37 HAIN Position reference system, 10
General, 32 HAIN subsea --- system diagram, 15
Gyro, 35 HAIN Subsea accuracy figures, 89

108 857-164951 / C
Index

HAIN subsea system, 14 Keyboard, 93


IMU 90, 23
Sensors in the Inertial Measurement Unit,
3 L
Improved acoustic position accuracy, 9 LBL, 1, 13, 50, 54
IMU, 3, 5, 11, 15, 18, 82 Lever arms, 18, 30
IMU --- Position reference, 86 List of spare parts for the APC 10 unit, 93
IMU --- Subsea, 94 List of spare parts for the IMU --- Subsea, 94
IMU --- Subsea system, 87 Location of the IMU, 27
IMU 120, 58 Longer transponder---battery lifetime, 9

IMU 90, 58, 87


IMU 90 com ports, 22 M
IMU alignment, 41, 45 Maintenance, 67
IMU crude alignment, 18, 23 MiniRLG, 87
Mounting, 24 Motion sensor, 58
Scalefactor, 24
MULBL, 1
Scalefactors, 23
IMU Position reference, 20
IMU Subsea, 18, 21 N
IMU type, 18, 25 Navigation parameters, 18, 35
DataStorage, 25 NavIo, 60
General, 25
NavIo operation, 61
HPTimer, 25
ParallelPort, 25 NavLab, 16
SDLC, 25 Network connection, 77
IMUInertialData, 56 NMEA, 50
IMUSim, 60 NTP, 41, 43
IMUSim operation, 64 ntp, 80
Inertial Measurement Unit, 11, 15 NTP window on the HAIN computer, 43

Inertial Motion Unit, 15 ntp.conf, 42

Inertial navigation, 3
Ini files, 18 O
Initial values for the integration, 4 Operation, 65
Input formats, 60 operation, 47

Integration of the accelerometers , 3 Operator station, 12, 16


OSK time synch, 82
Integration of the gyros, 3
Other sensors, 83
Interface, 58
Output formats, 60

K P
Kalman filter, 6 Plugs, 21

857-164951 / C 109
HAIN

Position, 4 Tidy program description, 106


Position aid, 6, 8 Troubleshooting, 77
Position update during acoustic drop---out, 9
Post processing software, 16
power unit, 67 U
Pressure, 39
Used with APOS, 66
Pressure sensor, 15
PressureData, 56
Preventive maintenance, 67 W
Principles of inertial navigation, 3
Procedures, 71 web---reference, 42

R
RDI Workhorse DVL, 58
Realistic values, 62
Redefine the HAIN object, 53
ROV, 1, 2, 6
ROV speed, 15

S
Sensor, 58
Sensor compensation, 51
Sensor select, 63
Sensor simulators, 41, 45, 84
Sensor telegrams to HAIN, 58
SensorCompensation, 40
set---up, 41
SI Units, 55
Simulator programs, 45
Simulator programs for HAIN set---up, 59
Spare parts, 92
SSBL, 1, 13, 44, 50, 54
SSLBL, 1
Start HAIN positioning, 49
Stop HAIN positioning, 49

T
Technical specification, 86

110 857-164951 / C
HAIN Instruction Manual

HAIN Instruction Manual

HAIN Instruction Manual

HAIN Instruction Manual

HAIN Instruction Manual

HAIN Instruction Manual

Vous aimerez peut-être aussi