Project Antenna

166
Institute of Electronic Systems Aalborg University Department of Control Engineering - Intelligent Autonomous Systems TITLE: STABILIZING A F77 ANTENNA SYSTEM FOR MARITIME USE An Internal Model Approach PROJECT PERIOD: Master Thesis September 1st. 2004 - June 2nd. 2005 PROJECT GROUP: Group 1032a - 2005 IAS PARTICIPANTS: Anders Thorkild Andersen Morten Hougaard Sørensen SUPERVISOR: Roozbeh Izadi-Zamanabadi Rafael Wisniewski COPIES : 7 NUMBER OF PAGES: 156 REPORT: 130 APPENDIX: 26 ABSTRACT: This project has been in cooperation with Space- Com A/S located in Hobro - Denmark. SpaceCom A/S manufactures satellite tracking antennas for maritime use, primarily for use with the Inmarsat satellites. To expand and maintain their market area, they have continuing development of new antennas. This has lead to a cooperation with Aal- borg university, regarding new design ideas, for the continuing development. This projects has analyzed their existing F77 an- tenna system, regarding sensors, actuators and control strategy. Based on this analyze, alterna- tive sensors are introduced and modelled, and a control strategy has been developed. This control strategy is primarily based on the internal model approach, which is able to ensure robustness and a tracking error that asymptotically goes towards zero. Simulations including sensor models, Kalman fil- tering and the controller, have been performed, and shows that the new control approach is able to improve the performance of the antenna sys- tem. It can be concluded from the simulations, that the developed controller, is able to have an performance within a limit of 1 degree in orien- tation error, whereas the present configuration of the F77 antenna system, can operate within an ori- entation error of 3.5 degree.

Transcript of Project Antenna

Page 1: Project Antenna

Institute of Electronic SystemsAalborg University

Department of Control Engineering - Intelligent Autonomous Systems

TITLE:STABILIZING A F77 ANTENNASYSTEM FOR MARITIME USEAn Internal Model Approach

PROJECT PERIOD:Master ThesisSeptember 1st. 2004 - June 2nd. 2005

PROJECT GROUP:Group 1032a - 2005 IAS

PARTICIPANTS:Anders Thorkild AndersenMorten Hougaard Sørensen

SUPERVISOR:Roozbeh Izadi-ZamanabadiRafael Wisniewski

COPIES : 7

NUMBER OF PAGES: 156

REPORT: 130

APPENDIX: 26

ABSTRACT:

This project has been in cooperation with Space-Com A/S located in Hobro - Denmark. SpaceComA/S manufactures satellite tracking antennas formaritime use, primarily for use with the Inmarsatsatellites. To expand and maintain their marketarea, they have continuing development of newantennas. This has lead to a cooperation with Aal-borg university, regarding new design ideas, forthe continuing development.This projects has analyzed their existing F77 an-tenna system, regarding sensors, actuators andcontrol strategy. Based on this analyze, alterna-tive sensors are introduced and modelled, and acontrol strategy has been developed. This controlstrategy is primarily based on the internal modelapproach, which is able to ensure robustness anda tracking error that asymptotically goes towardszero.Simulations including sensor models, Kalman fil-tering and the controller, have been performed,and shows that the new control approach is ableto improve the performance of the antenna sys-tem. It can be concluded from the simulations,that the developed controller, is able to have anperformance within a limit of 1 degree in orien-tation error, whereas the present configuration ofthe F77 antenna system, can operate within an ori-entation error of 3.5 degree.

Page 2: Project Antenna
Page 3: Project Antenna

Preface

This report has been made by project group 05gr1032a at Aalborg University, during the autumnof 2004 and the spring of 2005 in connection with the 9. and 10. semester master thesis at Intel-ligent Autonomous Systems (IAS), department of process control. This report primary addressessupervisors and master students at the Institute of Electronic Systems, by which the demandsregarding qualifications are given to the reader.

In this report the literature references are given in the form [name, year]. I.e. [Alberto Isodori,2003] is a reference to the Robust Autonomous Guidance - An Internal Model Approach.

The project group would like to thank SpaceCom A/S and in particular Dennis Vinther, for theirassistance whenever the project group had questions during the collaboration and for bringing aF77 antenna system at our disposal, during the project period.

The report consists of a main report, an appendix, and an attached CD-ROM. The main reportcovers the analysis of the F77 antenna system, modelling of the system, new sensor approaches,control development and simulations. The appendix contains additional material which would, ifplaced in the main report, disrupt the flow trough the report. The attached CD-ROM contains thefollowing material:

• The report in PDF and PS format.• The data sheets which have been utilized.• Simulink simulations and Matlab files.• Source code for the developed xPC S-function driver blocks.

Aalborg, Thursday 2. of June 2005

Anders Thorkild Andersen Morten Hougaard Sørensen

III

Page 4: Project Antenna
Page 5: Project Antenna

Contents

1 Introduction 1

2 Project Contents 32.1 Project Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 Project Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 System Analysis 53.1 System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53.2 Coordinate Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3.2.1 Inertial Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73.2.2 Body-fixed or Ship-fixed frame . . . . . . . . . . . . . . . . . . . . . . 83.2.3 Stability Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83.2.4 Satellite Positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

3.3 Inmarsat and Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.4 Ship Motions at Sea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.4.1 Wind Generated Waves . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.4.2 Ship Motions at Sea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.4.3 Conclusion of The Ship Motion . . . . . . . . . . . . . . . . . . . . . . 13

3.5 Electrical description of the Antenna . . . . . . . . . . . . . . . . . . . . . . . . 133.5.1 Sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.5.2 Tilt Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.5.3 RateGyro Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.5.4 Squint Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.5.5 Actuators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4 Project strategy 174.0.6 PC system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.0.7 Sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.0.8 Actuators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.0.9 Antenna System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.0.10 Control system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

5 PC system 235.1 Analog and digital I/O board . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235.2 Matlab xPC target toolbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5.2.1 General advantage of the xPC target toolbox . . . . . . . . . . . . . . . . 245.2.2 S-function drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6 Sensors 296.1 Tilt Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

V

Page 6: Project Antenna

Contents

6.1.1 The Currently Implemented Tilt Sensor . . . . . . . . . . . . . . . . . . 296.1.2 Modelling The SH50056 Tilt Sensor . . . . . . . . . . . . . . . . . . . . 316.1.3 Verification of the Tilt sensor model . . . . . . . . . . . . . . . . . . . . 336.1.4 Tilt Sensor Alternative . . . . . . . . . . . . . . . . . . . . . . . . . . . 336.1.5 Modelling the SCA100T Tilt Sensor . . . . . . . . . . . . . . . . . . . . 36

6.2 Rate Gyro Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376.2.1 Rate Gyro Dynamics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386.2.2 Filter, ADC, and Software . . . . . . . . . . . . . . . . . . . . . . . . . 396.2.3 Rate Gyro Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396.2.4 Model verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406.2.5 Alternative Rate Gyro Sensors . . . . . . . . . . . . . . . . . . . . . . . 426.2.6 Modelling the ADXRS150 Rate Gyro Sensor . . . . . . . . . . . . . . . 426.2.7 Rate Gyro Recommendations . . . . . . . . . . . . . . . . . . . . . . . 45

6.3 Squint Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456.3.1 Principle of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 466.3.2 Signal Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.4 Simulink Model of the Squint Sensor . . . . . . . . . . . . . . . . . . . . . . . . 496.5 Kalman Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

6.5.1 Kalman Filter Principle . . . . . . . . . . . . . . . . . . . . . . . . . . . 516.5.2 Kalman Filter Computational procedure . . . . . . . . . . . . . . . . . . 526.5.3 Kalman Filtering of Squint Sensor Output . . . . . . . . . . . . . . . . . 53

6.6 Elevation and Cross-elevation Error Angular Velocity . . . . . . . . . . . . . . . 556.6.1 Kalman Filtering of Tilt using Rate Gyro Signals . . . . . . . . . . . . . 57

7 Actuator 637.1 Stepper motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

7.1.1 Modelling a hybrid stepper motor . . . . . . . . . . . . . . . . . . . . . 64

8 F77 Antenna model 678.0.2 Manipulator Kinematic description . . . . . . . . . . . . . . . . . . . . 67

8.1 Dynamic description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708.1.1 Iterative Newton-Euler formulation . . . . . . . . . . . . . . . . . . . . 708.1.2 Friction contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718.1.3 Antenna Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

9 Kinematics 739.1 Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

9.1.1 Body Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749.1.2 Satellite Vector Kinematics . . . . . . . . . . . . . . . . . . . . . . . . . 75

10 Control Strategy 8110.1 Control Principle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

10.1.1 Disturbance Attenuation Controller . . . . . . . . . . . . . . . . . . . . 8310.1.2 Satellite Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

11 Internal Model Controller Design 8511.1 System Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8511.2 Controller Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

11.2.1 Solving the Disturbance Attenuation Problem . . . . . . . . . . . . . . . 8711.3 Change of Coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

VI

Page 7: Project Antenna

Contents

11.4 Design of the controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9211.4.1 Adaptation of controller parameters . . . . . . . . . . . . . . . . . . . . 94

11.5 Verification of controller principle . . . . . . . . . . . . . . . . . . . . . . . . . 9511.6 F77 Antenna Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . 10011.7 Pitch Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10111.8 Robustness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

11.8.1 Design of Potential Controller Structure . . . . . . . . . . . . . . . . . . 10211.9 Disturbance Attenuation Controller . . . . . . . . . . . . . . . . . . . . . . . . . 10611.10Simulation Model of Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

12 Test of Controller 11312.1 Disturbance Attenuation Controller with Ideal Measurements . . . . . . . . . . . 113

12.1.1 Pitch Axes Disturbance Controller . . . . . . . . . . . . . . . . . . . . . 11312.1.2 Roll Axes Disturbance Controller . . . . . . . . . . . . . . . . . . . . . 117

12.2 Disturbance Attenuation Controller with Sensor Input . . . . . . . . . . . . . . . 11912.2.1 Pitch Axes Disturbance Controller . . . . . . . . . . . . . . . . . . . . . 11912.2.2 Roll Axes Disturbance Controller . . . . . . . . . . . . . . . . . . . . . 12112.2.3 Orientation Error of the Antenna Plate . . . . . . . . . . . . . . . . . . . 12212.2.4 Test with the SH50056 Tilt Sensor . . . . . . . . . . . . . . . . . . . . . 123

12.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

13 Conclusion 12713.1 Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

A Inmarsat Specification A133A.1 Roll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A133A.2 Pitch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A134A.3 Yaw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A134A.4 Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A137

B Squint Sensor Measurement B139B.0.1 Signal Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B139

C Stepper motor experiments C143C.1 Principle of constant determination . . . . . . . . . . . . . . . . . . . . . . . . . C143

D Stability Calculations D145

E Advantages and Disadvantages Introduced by the SAT Frame E147

F Antenna Parameters F151

G Change of Coordinates G155G.1 Including Q1w in The Second State Equation . . . . . . . . . . . . . . . . . . . G155G.2 Including P1w in The Second State Equation . . . . . . . . . . . . . . . . . . . G156

VII

Page 8: Project Antenna
Page 9: Project Antenna

Chapter 1Introduction

Today the possibility to use a data communication channel, no matter where you are located inthe world is taken for granted, and it’s getting more and more common, that it’s a broadbandconnection. When being at sea this is not the case, and what on land is a truism, is on the seaan expensive and rare tool. Here there are no phone wires, cable connections etc, and the possi-bilities are reduced to satellite communication. The communication satellites covers most of theearth’s surface where ordinary shipping are performed, and this results in a market of deliveringequipment, capable of providing data communication to the maritime market, via satellite.SpaceCom A/S is developing, manufacturing, and selling antennas to the maritime and land mo-bile satellite communication market within the L-Band. The company is located in Hobro Den-mark. Their main area is to develop and build the antenna system, which must be able to track thesatellite signal within some margin, varying according to the antenna model and communicationrequirements. This antenna system is sold as an OEM-product to other companies delivering atotal communication solution. Their assortment spans from small two axis land based mobile an-tennas to large three axis antennas used at sea. The reliability of their products is highly important,since the satellite communication onboard the ships are also used to emergency communication.The products developed by SpaceCom A/S are mainly intended for use with the satellite com-munication provider - Inmarsat. This organization have multiple GEO-stationary satellites andcan provide satellite communication to nearly all parts of the earth surface, except close to thepoles. The biggest antenna for marine use provided by SpaceCom A/S is the F77 model. This hasa fault tolerance of ±3.5 degrees to be operational, with the current operating mode consistingof securing a communication channel similar to a standard digital phone (ISDN). To meet futurerequirements, SpaceCom A/S is currently developing a broadband connection, to the maritimemarket. One of the requirements is that their future antenna models, are able to operate within anarrower range of tracking error, to secure a stable broadband connection.Today it is rather expensive to use satellite communication, and the communication done is of-ten limited to ship data. A broadband connection could give new possibilities for the marinecrew, since some of the bandwidth could be used for other purposes, such as surfing the internet,e-mailing and other personal communication.

1

Page 10: Project Antenna
Page 11: Project Antenna

Chapter 2Project Contents

This project is in co-operation with SpaceCom A/S and this chapter will describe the main issues,that lead to a co-operation with Aalborg University and a student project proposal from Space-Com A/S. Furthermore there will be a delimitation of subjects, regarding the project statement.

2.1 Project Definition

SpaceCom A/S is developing, manufacturing, and selling antennas to the maritime and land mo-bile satellite communication market within the L-Band. The Inmarsat market is SpaceCom’smost important market, but the North American satellite market shows a very positive trend forthe moment, and SpaceCom A/S expects to play an active role in this market.SpaceCom A/S has decided to expand their market area to include the KU-Band within the mar-itime market and has consequently initiated an advanced development project in the KU-Bandaddressed to this market. This development for the new market, results in a need for a moreprecise tracking of the satellite, since the new antennas, will have less opening angle.

To meet requirements, regarding the capability to deliver a satellite communication system forthe new marine market, SpaceCom A/S has contacted Aalborg university. SpaceCom A/S hada student project proposal, regarding the new technical problems of ensuring a high precisionsatellite tracking.SpaceCom A/S has delivered one of their existing commercial products, the F77 antenna system,for disposal of the project group. The F77 antenna model will not be updated with the eventualimprovements found by the project group, since it is an existing product, which fulfills all thepresent requirements for this antenna model. However the principles found to improve the F77antenna model can be used on future antenna models, to ensure a high precision satellite tracking.The requirement of ensuring a stable high precision tracking, makes high demands on the sensorsmounted on the antenna system and also to the control system.The project proposal by SpaceCom A/S, can be stated as the following:

Review the total F77 antenna system for possible changes or improvements whichcan help to fulfill the requirements to the next generation of marine satellite trackingantenna systems from SpaceCom A/S. These improvements can be within the me-chanical system, the sensors, the actuators or the control system - to achieve a control

3

Page 12: Project Antenna

2.2. Project Restrictions

solution that meets the requirements for sustainable communication under variousexternal disturbances (winds, waves)

In this report the main focus, will be on improving the individual subjects in the antenna systemand not tuning the existing system. This is since the F77 antenna system is an existing product,that fulfils the requirements and the fact that SpaceCom A/S is looking for new design ideas, forfuture development.

2.2 Project Restrictions

• The mechanical construction of the antenna will not be taken into account when trying toimprove the performance of the antenna system.

• Scenarios regarding start up, initial tracking of the satellite, change of satellite (roaming)and the case where the ship passes the equator, will not be considered in this project. Thesescenarios are not seen as important factors, for the main tracking problem, consisting ofthe attenuation of disturbances, caused by ship movements.

• The designed controller will not be implemented on the F77 antenna delivered by Space-Com, yet it will be thoroughly simulated and verified.

4

Page 13: Project Antenna

Chapter 3System Analysis

This chapter will describe the F77 tracking antenna system provided by SpaceCom A/S. Firstthe physical antenna system will be described by introducing angle definitions and freedom ofmovements, secondly the electric interfaces in form of sensors and actuators are introduced. Therequirements stated by Inmarset, regarding the conditions a ship at sea can be exposed to are alsointroduced.

3.1 System Overview

The Fleet F77 antenna is a fully developed antenna system, with well defined interfaces, sincethe product is already in production.

Squint Sensor

Tilt Sensor

Rate Gyro SensorCross-elevation Motor

Azimuth Motor

Elevation Motor

3-axis Mechanic Antenna Sensors

Disturbances

Actuators

Fleet F77

System Input System Output

Figure 3.1: Overview of the F77 antenna provided by SpaceCom A/S.

The system contains a mechanical 3 axis antenna, with a stepper motor attached to each axis ofrotation. As can be seen in figure 3.2 the F77 antenna has three joints. One joint in the socketbaseof the antenna (Azimuth), that rotates the entire antenna. Another that allows the antenna to movein the vertical plane (Elevation), and a third that allows horizontal motions (Cross-elevation). Bythe use of the three axes, the F77 antenna is able to cover the entire hemisphere.

5

Page 14: Project Antenna

3.1. System Overview

For controlling the antenna, SpaceCom A/S has developed an embedded system, counting twomicrocontrollers based on the PIC 16F series from Microchip. Currently the microcontrollersare fully occupied, and to implement new software e.g. new controller,a new and more powerfulmicrocontrollers, might be needed.

The F77 antenna contains three sensors for stabilization. As can be seen in figure 3.1 the threesensors are: a tilt sensor and a rate gyro sensor, both measuring around the elevation axis, anda squint sensor, which outputs the error angle between the antenna element direction and thesatellite position with respect to the antenna element. This is illustrated in figure 3.9. Thesesensors are used to measure the orientation of the system.

Elevation

Cross elevation

Azimuth

−30 < θCE < 30 [deg]

−20 < θE < 120 [deg]

0 < θAZI < 360 [deg]

Figure 3.2: The applied axis to the Fleet F77 antenna.

Azimuth

The azimuth axis allows the antenna to operate in the horizontal plane. The azimuth axis has nophysical limitation in angle. Therefore there will be no communication breakdown as a result ofan anti wound-up operation, caused by twisted wires. The azimuth axis is used to compensate forchanges in the heading direction and not to eliminate disturbances from e.g. waves - this is doneby movements of the cross-elevation.

Elevation

The elevation axis allows the antenna to operate in the vertical plane. The axis is mounted closeto the broadside directional antenna itself. The origin of the elevation angle is defined to be whenthe antenna is vertically aligned, and the physical structure allows a movement of -20 to 120.

Cross-Elevation

The cross-elevation axis allows the antenna to move in the horizontal plan. The physical structureallows a freedom of movement of ±30 degrees. This is likewise the azimuth axis, however theuse is different. The azimuth axis compensates for slow disturbances and cover all 360 degrees inazimuth e.g. heading direction, whereas the cross-elevation axis compensate for fast disturbancese.g. Waves, which is less than 30 degrees.

6

Page 15: Project Antenna

Chapter 3. System Analysis

Ship Motions

When ships are at sea, their movements, with respect to a satellite, can be described by threetranslatory and three angular motions, giving a system with six degrees of freedom. However,

Roll,pPitch,q

Yaw,r

Figure 3.3: Pitch, roll and yaw axis applied to the ship.

the distance to the satellite is of no importance, as long as the quality of the communicationsignal satisfies the specification. For this reason motions along the x- and y-axis are insignificant.Since the distance to the satellite is large compared to motions in the z-axis, this motion becomesneedless meaning that the angular position of the satellite with respect to the ship, will not beaffected by translatoric motions along the z-axis.

The movements of the ship are defined by the roll, pitch, and yaw angles, this are fixed to theship, and is illustrated in figure 3.3.

3.2 Coordinate Systems

To describe the relationship between satellite position, antenna element direction and ship distur-bances, a common fixed inertial coordinate system is needed. The position of the satellite withrespect to the antenna element, will be defined by spherical coordinates. To describe the orienta-tion of the ship and antenna element direction, two frames are defined: the ship-fixed frame andthe stability frame.

3.2.1 Inertial Frame

Generally the inertial coordinate system has two purposes. The first is to have a common ref-erence frame for all used coordinate system and the second is to analyze the dynamic behaviorof the system. This requires use of Newton’s second law (F=ma), which is only valid in a coor-dinate system that is at rest in the universe (non-rotating), however an approximation could beused, and a reasonable good approximation of a non-rotating reference system for ships is theearth-centered coordinate system, which rotate with the earth. This will ignore the rotation of thesolar system, the orbital rotation of the earth around the sun, and the rotation of the earth aroundits own axes. The inertial coordinate system for this project will be the earth-centered coordinatesystem.

7

Page 16: Project Antenna

3.2. Coordinate Systems

3.2.2 Body-fixed or Ship-fixed frame

The ship-fixed coordinate system is a frame attached to the body of the ship. The origin is placedat the centre of mass, with xb along the longitudinal centerline pointing in the heading direction,yb lie to the starboard and zb pointing downward forming a cartesian right-handed coordinatesystem. This frame coincide with the pitch, roll and yaw axis of the ship at any time.

3.2.3 Stability Frame

The stability coordinate system is used to describe the ship disturbances, in an easy way. Thestability frame coincide with the ship-fixed coordinate system in calm sea. When the ship en-counters disturbances, the ship-fixed frame will change, however the stability frame will remainthe same.

3.2.4 Satellite Positioning

The rate gyro and tilt sensor both operate in the body frame, in contrast to the squint sensor whichoutputs the error angle to the satellite. This error angle is outputted in spherical coordinates,which is a three dimensional polar coordinate system, often used for satellite positioning.

Direction of

antenna element

ϕe

θe

θ

Tangent to the

surface of Earth

Ship heading

ϕ

Figure 3.4: Spherical coordinate system used for positioning the satellite with respect to the antenna ele-ment.

The spherical coordinate system, contains two angles and one radius, however the distance to thesatellite is of no importance to the antenna system and the radius is left out for this reason. Thedirection of the antenna element is defined as (θae, ϕae), with respect to the heading direction ofthe ship. This is illustrated in figure 3.4. The error angles between the antenna element directionand the satellite position is defined as (θe, ϕe), [Frank Wattenberg, ].

8

Page 17: Project Antenna

Chapter 3. System Analysis

X X

YY

Z

Z

Z

Y

Y

Z

XX

Base frame

Azi frame

E frame

CE frame

Figure 3.5: The F77 antenna system with frame assignment for Azitmuth (azi frame), elevation (E frame),and cross-elevation(CE frame).

The F77 antenna system is a 3 DoF system, and for this reason it has been chosen to assign aframe to each joint of the antenna. The three frames: azi (Azimuth joint), E (elevation joint), andCE (cross-elevation joint) frame, can be seen in figure 3.5.

3.3 Inmarsat and Requirements

Inmarsat is one of the world leading organizations in providing global mobile satellite communi-cation, and their services is widely used by many companies for e.g. maritime and aeronauticalcommunication. So far, the inmarsat flagship is the Fleet F77 service, which provide either amobile ISDN at 128 kbit/s or the always-on service, Mobile Packet Data Service (MPDS). Touse the Inmarsat services, the antenna setup must comply with some specifications lined up byInmarsat. These include the environment where the antenna must be able to operate within.

The specifications from Inmarsat, which the antenna system must be able to operate within, canbe summarized as, see appendix A:

Range Period Velocity AccelerationPitch (max) 10 deg (0.18 rad) 6 s 0.18 rad/s 0.19 rad/s2

Roll (max) 30 deg (0.52 rad) 8 s 0.41 rad/s 0.32 rad/s2

Yaw (max) 8 deg (0.14 rad) 50 s 0.02 rad/s 0.00 rad/s2

Roll,tangential (max) - - - 0.5gSurge (max) - - - 0.2gSway (max) - - - 0.2gHeave (max) - - - 0.5gTurning Rate (max) - - 0.10 rad/s 0.02 rad/s2

Headway (max) - - 30 knob -Temperature (max) -25 to +50 - - -

Table 3.1: Specifications from Inmarsat.

9

Page 18: Project Antenna

3.4. Ship Motions at Sea

The listed values in table 3.1 are the worst case scenarios, which a ship at sea can be subjected to,according to Inmarsat. The angels are defined as Euler angles and the velocities and accelerationsare defined in the body-fixed frame.

3.4 Ship Motions at Sea

When looking into the issue of ship motions at sea, at least three contributions to the movementshould be considered: The wind acting on the ship, the waves generated by the wind, and thecurrents at sea (often referred to as ocean currents.). Much work has been done on describingthese stochastic processes, and many conclusions have been made. However, the resulting motionof the ship itself, caused by the wind, waves, and current is far less documented for genericpurpose. This might has to do with the fact, that different ship structures, sizes and loads affectthe dynamic behavior of the ship significant.

The main contributor to the ship motions, is the wave acting on the body. For this reason thedisturbance on the ship, is assumed to be caused only by waves for simplification. However, thedisturbance specification provided by Inmarsat, will still be met.

3.4.1 Wind Generated Waves

The wind generated waves at sea start as small wavelets growing bigger and bigger, with thepower of the wind until they finally break. It has been observed that a developing sea and stormhave a high peak frequency in its spectrum. A storm that has lasted for some time, is said tobe fully developed. When the wind decreases the waves peak frequency decreases, and a lowfrequency decaying or swell is formed. In fact it is possible for a swell from a previous storm tointerfere with a new developing sea, creating two peak frequencies in the elevation spectrum.

Ocean waves are usually described as a stochastic process, since the elevation is random in bothtime and space. At the moment the state of the art regarding sea elevation modelling, is based onfree-running model test data, databases, and numerical simulation based on Computational FluidDynamics Methods (CFDM), [Perez and Blanke, ]. These models are very precise, but also verycomplex and not suitable for testing control strategies.

For simplification the elevation at time, t, and at position x,y, at sea is denoted ζ(x,y,t). Thiscan be described by a stochastic process with a very slow variation compared to variations of thesea surface it self [Perez and Blanke, ]. Thus, ζ is assumed to have the following characteristics[Haverre and Moan, 1985]:

• The observed sea surface, at a certain location and for short periods of time, is considereda realization of a stationary and homogeneous, zero mean Gaussian stochastic process.

• Some standard formula for the power spectral density (psd)S(ω) are adopted.

These two hypothesis’ assuming both stationarity and Gaussianity, have been confirmed by exten-sive analysis of time series from the North Atlantic Ocean Haverre and Moan [Perez and Blanke, ,p.2]. From that study it was reported that:

• For low and moderate sea states (significant wave height h13

< 4m), the sea can be con-sidered stationary for periods over 20 min. For more severe sea states, stationarity can bequestioned even for periods of 20 min.

10

Page 19: Project Antenna

Chapter 3. System Analysis

• For low to medium states (h13

< 8m), Gaussian models are still accurate, but deviationsfrom Gaussianity slightly increase with the increasing severity of the sea state.

To describe the spectrum of the elevation at the sea surface, much work has been carried out: Theearliest spectrum formulation was a power spectral density function, founded by Neuman (1952),and was based upon one-parameter, an empirical constant, the wind speed, and gravity. SinceBretscheider (1959) added another parameter to the spectrum and in 1963 Pierson and Moskowitzdeveloped the Pierson-Moskowitz spectrum (PM), based on observations from the North AtlanticOcean, [Fossen, 2002]. Today three other spectra are used: The Modified Pierson-Moskowitzspectrum, the JONSWAP spectrum or the Torsethaugen spectrum.

For fully developed sea the two parameter Modified Pierson-Moskowitz spectrum (MPM) shouldbe used. This spectrum is a one peak spectrum and has been highly recommended some yearsago.

In 1968 and 1969 an extensive measurement program was carried out in the North Sea. The pro-gram was named Joint North Sea Wave Project (JONSWAP). The spectral density function for-mulation is valid for not fully developed seas, which results in a more peaked spectrum comparedto the developed sea spectrum. The JONSWAP spectral formulation describes wind-generatedwaves under the assumption of finite water depth and limited fetch.

The Torsethaugen spectrum is based on empirical data and is proposed as a two peaked spectrumwhich includes the effect of swell and newly developed waves. The empirical spectrum is basedon experimental data from the North Sea.

The three spectra are illustrated in figure 3.6.

0 0.5 1 1.5 2 2.5 30

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Significant wave height Hs = 10 m and peak period T

o = 5.0 (s)

(rad/s)

S(ω

)/(H

s2T o

)

Modified Pierson-Moskowitz

JONSWAP for γ= 3.3Torsethaugen

Figure 3.6: The three spectral density functions for the Modified Pierson-Moskowitz, the JONSWAP, andthe Torsethaugen wave spectrum.

11

Page 20: Project Antenna

3.4. Ship Motions at Sea

3.4.2 Ship Motions at Sea

The disturbance acting on the F77 antenna system, is caused by the motion of the ship. As statedin the previous section, the motions of the ship, is caused be waves, wind, etc., and a common wayto describe this motion, is with multiple sinusoids, with random initial phase [Perez and Blanke, ,p.5]. The ship motion in e.g. pitch can be described as

θ(t) =N∑

k=1

θkcos(ωe,kt + θinit,k) (3.1)

where θ is the amplitude, ωe is the frequency from the encounter wave seen from the ship, andθinit is the initial phase. For the pitch axis, ωe can be defined as [Perez and Blanke, ]

ωe = ω − ω2U0cos(χ)g

(3.2)

and χ is the encounter angle defined in figure 3.7, and ω is the wave elevation frequency.

X0

(Headaway)

y0

180[deg]

Head Seas

Head Seas

Beam Seas

Beam Seas

270[deg]

90[deg]

0[deg]

Following Seas

Following Seas

Encounter wave, ωe

χ

Quartering Seas

Quartering Seas

Bow Sea

Bow Sea

Figure 3.7: Definition of the encounter angle χ.

Besides the encounter frequency, ωe, dynamics of the vessel e.g. mass, length, restoring force etc.,plays an important role in determining the ship motions. Ship motions in general, is however alarge and specific field of science, and will not be discussed in this report. However, the interestedreader is also advised to consult [Fossen, 2002] and [Perez and Blanke, ], just to mention a few.

12

Page 21: Project Antenna

Chapter 3. System Analysis

35

30

25

20

15

10

5

0

Magnitu

de [dB

]

10 -2 10 -110

0

180

135

90

45

0

Phase

[deg]

Bode Diagram

Frequency [rad/s])

Figure 3.8: [Fossen, 2002], Illustrative example of a second order frequency response approximation in rollof a medium container ship (lenght = 175 [m]).

In figure 3.8 the frequency response in roll of an approximated 2nd order model of a mediumcontainer ship is shown. The transfer function is of the form

H(s) =Ks

s2 + 2ξωns + ω2n

(3.3)

where ωn is the natural frequency of the vessel. The frequency response if therefore not trivialdescribed in general, and for this reason the figure 3.8 only shows the structure of a potentialapproximated transfer function for a generalized vessel.

3.4.3 Conclusion of The Ship Motion

From the wave spectrum it is known that a significant wave, exists along with other frequencieswithin a small band of frequencies. Furthermore, vessel motions can be seen as a low-pass filterof the wave disturbance e.g. with an approximated 2nd order filter with a resonance frequency.

It has been concluded, that for controller design a reasonable approximation of the vessel motion,is a multiple sinusoid function, see equation 3.1. For use in the following chapters, is has beenchosen to implement two sinusoids as an appropriate wave generator model .

3.5 Electrical description of the Antenna

This section will include a description of the electrical interfaces on the antenna.

3.5.1 Sensors

The Fleet F77 provided by SpaceCom A/S, is equipped with three different sensors.

• Tilt sensor

13

Page 22: Project Antenna

3.5. Electrical description of the Antenna

• Rate Gyro sensor

• Squint sensor

The sensors are used to measure the current state of the antenna and their location can be seen infigure 3.9.

ENC-03JA Rate Gyro Sensor

and SH50056 Tilt Sensor Location

Squint Sensor

(Antenne Element)

Figure 3.9: Current sensor location on the F77 antenna system.

3.5.2 Tilt Sensor

To measure the elevation angle, an one-axis sensor of type SH50056-A-004 provided by Spec-tron is used. The sensor is primarily used, when searching the hemisphere for communicationsatellites, and is only partly used, when a communication satellite is found. The performance ofthe sensor is depended on both its angle in the sensitive axes, and the angle in the non-sensitiveaxis. The performance is significantly better, when the sensitive axis is close to horizontal and thenon-sensitive axes is close to vertical, and for this reason the sensor is mounted in an angle of 45

from vertical in the sensitive axis. In the non-sensitive axes, the sensor is horizontally aligned.This is done to cover angles from 0-90 in the best way.

The Spectron SH50050 series are ceramic tilt sensors, filled with a conductive fluid. To avoiddegradation, the sensor must be supplied with a AC input signal, when measuring the tilt angle.The Fleet F77 uses a symmetric 1 kHz signal generated by a microcontroller for this purpose.

3.5.3 RateGyro Sensor

The rate gyro sensor is of type ENC-03JA provided by Murata. This sensor is a one-axis piezo-electric vibrating gyroscope, used to measure the angular velocity around the elevation axis. It isused for both hemispherical search of satellites, and for antenna stabilization. The sensor is di-rectly measurable, and outputs a DC-differential signal representing the current angular velocity.

14

Page 23: Project Antenna

Chapter 3. System Analysis

3.5.4 Squint Sensor

The squint sensor is developed by SpaceCom A/S, and is used to measure the angles betweenthe boresight vector,ε, of the antenna (Normally the normal vector to the antenna element) andthe actual angle to the satellite, σ, with respect to the antenna element. The output includes errorangles for both the elevation and the cross-elevation, as illustrated in figure 3.10, and is outputtedby the onboard PIC 16F8736 using a RS-232 interface, see figure 3.11.

Satellite Direction Vector

(SAT vector)

Elevation Axis

Cross-elevation Axis

Normal Vector to Antenna

Element

(Boresight Vector)

ϕe

θe

σ

ε

Figure 3.10: Definition of the satellite error angles, ϕ e and θe.

The PIC 16F873 micro controller transmits a header describing weather the error angle is aroundthe elevation axis or around the cross-elevation. The header is followed by two bytes, representingthe 16 bit error angle.

Header 1 Error angle Header 2 Error angle Header 2 Error angle Header 2 Error angle

Cross-elevationElevation

RS-232 datastream

Header 2 Error angle

Figure 3.11: The RS-232 data stream transmitted by the onboard PIC 16F873. Header 1 represents theelevation axis, and header 2 represents the cross-elevation axis.

The PIC 16F873 transmits one package, containing header 1 and the error angle for the elevation,followed by four packages containing header 2 and error angles in the cross-elevation. The anglesare transmitted with 100 Hz, hence 20 Hz for the elevation and 80 Hz for the cross-elevation.

15

Page 24: Project Antenna

3.5. Electrical description of the Antenna

Sensor type Model Manufacturer Output rangeTilt sensor SH50056-A-004 Spectron ±60 [deg]Gyro sensor ENC-03JA Murata ±300[deg/s]Squint sensor - SpaceCom ±5-8 [deg]

Table 3.2: Spacecom Fleet F77 Sensors.

3.5.5 Actuators

The Fleet F77 antenna has three axis of rotation, and for this reason three actuators for jointrotation. The three actuators are:

• Elevation stepper motor

• Cross-elevation stepper motor

• Azimuth stepper motor

The stepper motors for the antenna board (elevation and cross-elevation), are both of type ST4018M0706-A, unipolar, and single shaft stepper motor from Nanotec. However, it is used in bipolar mode,with the two phase IMT901 PWM stepper driver from Nanotec. The bipolar mode has an ad-vantage to unipolar, since the holding torque typically is higher. The disadvantage is the needto reverse the polarity of the drive signal, which often is done by a stepper driver. The azimuthstepper motor, is a hybrid unipolar stepper motor, also used in bipolar mode. It is of type HY2002220 from Servo Control Technology (SCT) , and is controlled by a IMT901 stepper driver fromNanotec.

Actuator Model Manufacturer Step mode Resolution Gear ratioElevation ST4018M0706-A Nanotec Eighth-Step 0.225/step 15:1Cross-elevation ST4018M0706-A Nanotec Eighth-Step 0.225/step 18:1Azimuth HY200 2220 SCT Eighth-Step 0.225/step 25:1

Table 3.3: SpaceCom Fleet F77 actuators.

The IMT901 controls the stepper motors in either Full-/Half-/Quarter-/Eighth-Step Mode, andgives the designer the opportunity to change mode during runtime. In the Fleet F77 antenna thestep mode is hardwired to Eighth-step mode, which results in an actual resolution of 0.225/step.

16

Page 25: Project Antenna

Chapter 4Project strategy

This chapter consists of a strategy for the project, and a description of how the main goal will beachieved through the project. In the previous chapter the antenna system provided by SpaceComA/S has been shortly described, regarding input, output, sensor, actuator etc. To be able to end upwith a satisfactory control system, these items need a closer review, to know their dynamics.

Controller Actuator

Meassurement

from sensors

u(s) y(s)System+-

r(s)

d(s)

++

Figure 4.1: Illustration of a control system.

Figure 4.1 shows a standard illustration of a control system. The control system for the antennain this project can also be reviewed as this, and in the following the strategy will be to dividethe project into the following units: system, sensors, actuator, control, as in figure 4.1. Eachunit will be dealt with in separate chapters, including a description of the interfaces necessary tocombine the units.

The principle shown in figure 4.1, can be elaborated to include the actual sensors, actuators andalso the interfaces necessary to combine the total control system. This can be seen in figure 4.2.

17

Page 26: Project Antenna

Squint sensor

Cross-

elevation

Azimut

ElevationPower

drive

Power

drive

Power

drive

I/OController

Rate gyro

Analog

Analog

RS232

I/O

Disturbances

Actuators

Sensors

PC-system Fleet F77

Tilt sensor

Noise

SW interface

System states

SW

inte

rface

System

Figure 4.2: The antenna system combined with a PC control system

4.0.6 PC system

To acquire data from the antenna system and process these data, a type of processing unit isrequired for this system. Secondly it is of course necessary, with a form of processing unit toimplement a controller for the antenna system. It is chosen to use a standard PC system for thispurpose, since it from a development point of view, gives great flexibility regarding the amount ofprocessing power, compared to e.g. a micro controller unit. Another reason for this choice is thatthe primary aim of this project is to develop and simulate new ideas, regarding sensors, actuatorsand controller structures, and not to make an optimal implementation in e.g. a embedded system.

The strategy regarding the PC development for this project is to chose an interface, capable ofacquiring data from the antenna system, and capable of outputting data to control the antenna.The control of the antenna must be in real-time, which means that an operating system, capableof securing a real time code execution, must be chosen.To the chosen PC interface and operating system, software interfaces must be developed to ac-quire data from the sensors, and to control the actuators. The respective software interfaces areplaced in the chapters concerning the PC description.

4.0.7 Sensors

Previously the sensors included in the antenna system have been described. Regarding the sen-sors, the strategy is to thoroughly analyze all three sensors(rate gyro sensor, tilt sensor, squintsensor) and to make a model describing those. If the performance of these sensors are foundinadequate, there will be a research of possible alternatives for replacement of these sensors.Previous project groups, which have worked with this antenna, have also analyzed and mademodels of the sensors. Their work will be the base of the analysis of the existing sensors in thisreport. Their work will be reviewed, analyzed and tested, and used if suitable. Otherwise newanalysis of the sensors will be preformed.To interface to the sensors, software interfaces must be developed, these interfaces consists ofrespectively analog interface to tilt and rate gyros and a RS232 interface to the squint sensor.

18

Page 27: Project Antenna

Chapter 4. Project strategy

Currently the sensors are all located on the antenna element in the CE frame, however a newlocation for the rate gyros and tilt sensors will be presented. This is illustrated in figure 4.3.

In figure 4.3 the new location of the sensors

New Tilt and Rate Gyro Location

Squint Sensor (Antenna element)

Figure 4.3: newsensorlocation

If the sensors are located on the base of the antenna system, the disturbance from the body-fixedmovements of the ship are directly measurable. This design idea will be further investigated inthe design sections.

4.0.8 Actuators

As with the sensors, also the actuators mounted on the antenna have been carefully studied byprevious groups. This work will be reviewed, analyzed and tested, and used if found suitable forthis project. Otherwise new analysis of the actuators will be preformed. As with the sensors,alternative actuators will be looked into if necessary, due to performance.To control the actuators(stepper motors), a software interface must be developed, capable ofdelivering pulses, according to the desired acceleration, to the stepper motor drives.

4.0.9 Antenna System

To be able to design a controller for the antenna provided, it is necessary to know the kinematicsand dynamics of the antenna system and setup a model describing those. When having a model

19

Page 28: Project Antenna

of the system, it is also possible to make simulations of the developed control system. The modeland the simulations will be implemented in Matlab.

4.0.10 Control system

The primary aim of the control problem in this project is to design and simulate a suitable con-trol structure. Secondly the priority will be to implement this controller. The control structureperformed by previous groups has primarily been to control each joint separately according toa reference and then try to reject the contribution from disturbances as much as possible. Thiscontrol has been based on classical PI control, which is a standard form of controlling joints i akinematic system.This way of controlling is well tested and gives an acceptable performance for a simple systemlike the F77 antenna system. Since this area has been thoroughly processed and the performanceof the antenna system need a considerable improvement , this is primarily the reason for thisproject group to choose to look into alternative control principles, instead of "tuning" the existingprinciple to give a better performance.

To make the right choice regarding control principle, it is important to analyze the control prob-lem, and the requirements to the control. In this project the ship movements are the only sourceto introduce errors in the orientation of the antenna plate. Due to this fact the control scenario inthis project, will primarily be to minimize the effect of ship movements, and secondly to followthe reference regarding the tracking of the satellite. If an optimal attenuation of the disturbanceregarding ship movements could be performed, then no tracking control would be necessary.When the only source to introducing errors in the system, is due to the disturbance influencingthe system, then a control strategy capable of minimizing the influence of disturbances and alsoto have a robust performance will be preferable.The disturbance has a great impact on the system, thus any knowledge regarding the dynamics ofthe disturbance is important. With knowledge of the disturbance it is possible to do some kind offeed forward or prediction to compensate for the disturbance.The consideration mentioned, leads to the control principle illustrated in figure 4.4.

u(s) y(s)Disturbance

Attenuation

Control

++

System

Meassurement

from sensors

d(s)

++

Tracking

Control

Figure 4.4: Basic idea of the control strategy

Figure 4.4 shows the basic idea of the control strategy, where the main part will be to attenuate

20

Page 29: Project Antenna

Chapter 4. Project strategy

the disturbance contribution to the system. Since it results in a tracking problem, where there isno error, if the disturbance attenuation is optimal.

21

Page 30: Project Antenna
Page 31: Project Antenna

Chapter 5PC system

This chapter will consist of a description of the PC system and the interfaces necessary to performdataflow in and out of the PC.

5.1 Analog and digital I/O board

The sensor outputs from the antenna, consists of analog and RS232 signals, and the actuator in-puts to the antenna is given in form of digital signals. To be able to perform data acquisition orto measure the state of the system and control the antenna from a PC, an interface regarding theanalog and digital signals is needed. In figure 5.1 an illustration of this problem can be seen.

Squint-sonsor

Tiltsensor

Rate gyro

D

A

T

A

A

C

Q

U

I

S

I

T

I

O

N

B

O

A

R

D

PC

Cross-elevation

Azimut

Elevation

F77 antennaPC system

Analog

Analog

Digital

Digital

Digital

Antenna

sensors

Antenna

actuators

RS232

Figure 5.1: System setup with interface board between the PC, and the Antenna.

A DT2811 Analog and digital I/O board is disposable from the University. The functionalities ofthis board, along with the demands to the boards, can be seen in table 5.1.

The maximum sample rate of the DT2811 I/O board is 20 kHz. It is chosen to use this board,since this project group finds the specifications of the DT2811 card suitable for both acquiringdata and controlling the antenna.

23

Page 32: Project Antenna

5.2. Matlab xPC target toolbox

DT2811 spec. Units Requirements

ADC channels 16 0ADC differential channels 8 2DAC channels 2 0Digital input 8 0Digital output 8 7Timer/counter 1 0

Table 5.1: Specifications of the DT2811 I/O board.

5.2 Matlab xPC target toolbox

When developing a new system, many of the developing hours is often done in a simulationenvironment such as Matlab, it is a known environment for many engineers and has a lot offunctionalities regarding development. To ease the total development it would be to prefer to stayin a Matlab environment from the first development to the final tests. Another time consumingprocess during the development face is the prototyping which in many cases is an iterative pro-cess, which means that the developer often has to leave the Matlab/Simulink environment, toe.g. discretize a controller and implement it on another PC running e.g. RT linux. If the proto-typing is an iterative process, this becomes a cumbersome job.To deal with these problems Matlab offers a xPC target toolbox for Simulink, this is a solutionfor prototyping, testing, and deploying real-time systems.

5.2.1 General advantage of the xPC target toolbox

This toolbox can reduce some of the previous mentioned problems, since the developer is notforced to leave the Matlab environment.XPC Target can be used to create real-time software systems, which is often necessary whendesigning a controller. The toolbox builds on the principle of having a host PC where the devel-opment is done, and a target PC where the generated code is executed. The host-target prototypingenvironment enables you to connect Simulink and State flow models to physical systems and ex-ecute them in real-time on PC-compatible hardware.XPC Target enables you to add I/O blocks to your models, automatically generate executablecode with Real-Time Workshop, using a c/c++ compiler, and download the code to the target PCrunning the xPC Target real-time kernel. After downloading the executable code, it is possible torun and test the target application in real time.These functionalities makes xPC Target ideal for rapid prototyping and simulations, which in-corporates hardware interfaces, such as a control system which samples data and update theactuators. The designer also has the possibility to make custom GUI applications on the targetPC in form of e.g. scope’s and graphs, which can give a quick overview of the system.The xPC Target software requires a host PC with Matlab and a c/c++ compiler. The target PChowever can either be a desktop PC, industrial PC, PC/104, PC/104+, or Compact PCI computer,and there are no software requirements to the target PC, since it only uses the xPC target real-timekernel, which is a part of the xPC target toolbox package.During a developing phase it is often necessary to get data acquisition from the physical system.It is possible to get this data acquisition in two ways, when using the xPC target toolbox, eitherby locally logging them on the target PC for later upload to the host PC, or having the target

24

Page 33: Project Antenna

Chapter 5. PC system

PC transmitting them in semi realtime back to the host computer, the reliability of the real timetransmission back to the host PC, depends on the load of the target PC and the amount of datawhich is required. This is not a problem, since the target PC is meant to be the development PC,and hopefully not need realtime data back from the physical system.

Setup of xPC target toolbox

With a default xPC Target solution the xPC Target real-time kernel and the current Simulinkmodel, are downloaded to a boot-disk, which the target computer boots from and starts executingthe generated code. However by use of the xPC Target Embedded Option, a permanent installa-tion can be downloaded to the a harddrive, flash memory etc. and a new Simulink model can betransferred and controlled over an Ethernet or RS-232 connection.

In this project it is chosen to use the xPC Target Embedded Option, and to communicate with thetarget PC using an ethernet connection. This principle can be seen in figure 5.2.

A boot-disk for the target PC is made once from Matlab - including information about the IP-address of the target PC. When the target PC boot’s up, the real-time kernel is loaded and thetarget PC waits for command from the host PC. The desired application can then be compiledon the host PC, and is automatically uploaded to the target PC. Now the target PC is ready toexecute the uploaded code upon command. This procedure can be performed multiple times justby performing a new compilation.

XPC

Host PCAntennaAnalog /digital

XPC

Target PC

TCP/IP

Ethernet

TCP/IP

Figure 5.2: Host / target setup principle.

With the xPC target toolbox, various driver blocks are provided, however in custom applicationssuch as interfacing to specific hardware, custom code must be developed. Such custom code caneasily be integrated into the xPC real-time environment, e.g. through a feature called S-function,which is a standard in the Simulink environment. An S-function is basically a framework ofcode, C, C++, or Ada, which can be represented by a graphical block in a Simulink model.All block parameters, such as the sampling rate, the initial conditions, the number of input andoutput ports, etc. are all setup by use of specific functions, which are specified in the Matlabreference literature. When executing a simulation, each S-function executes a function for eachsample step. It is here in the function that is executed for each sample step, that custom code isplaced, such as an interface to specific hardware, hereby making the S-function a driver. Customcode can also be executed to instantiate the S-function, and for termination, by use of specificfunctions. Each S-function which is running a specific task, can be given an independent samplerate. The maximum sample rate is set by the sampling time of the primary task. This allows forgreat flexibility in the driver block development. During a Simulink model execution, the xPCTarget includes parameters which provide useful information regarding the processing load of the

25

Page 34: Project Antenna

5.2. Matlab xPC target toolbox

processor. These are respectively referred to as the raw, average, minimum and maximum taskexecution time (TET, Average TET, Min TET, and Max TET). The task execution time (TET)is the amount of processing time in seconds, execution of all S-functions, scopes, etc. takes persample. This information is always logged, when a model is executed.

5.2.2 S-function drivers

To acquire the signals from the antenna, drivers for both RS-232 and analog signals is designed,and to control the actuators of the antenna, the I/O-board must output logical high/low signals,with a varying frequency, according to the desired velocity/acceleration. These 3 topics havebeen implemented in 3 S-functionsRS232, ADC, Digital I/O, each containing custom c code.

RS-232 and ADC S-function

The purpose with the RS-232 S-function is to get the data transmitted from the squint sensormounted on the antennas. The data is read from the serial communication buffer, and the outputis send to the Simulink environment. When the data is outputted, it is split into respectively hori-zontal and vertical data and has been converted from 2’s compliment.The analog sensors on the antenna (tilt, rate gyro) outputs to the I/O board ADC-channels(Analogueto Digital Conversion). The ADC S-function reads the converted values in the ADC buffers onthe I/O board and outputs them to the Simulink environment, after adapting the data.

Digital I/O S-function

Input to the stepper motors must be digital steps, and the purpose with the digital I/O S-function,as it is named, is to generate these steps. The digital I/O S-function, outputs the step frequencyrepresenting the velocity/acceleration placed on the input to the S-function, given from the con-troller part.When using S-functions in an XPC target environment the developer can define the loop fre-quency of the S-functions. This yields to the idea of controlling the step frequency as being afrequency generated from the S-function loop frequency divided by a integer. In figure 5.3 thetiming idea behind generating the step frequency can be seen.

S-function loop frequency

Cross elevation

Elevation

Step period update Step period update Step period update

S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10

Azimuth

S..

Figure 5.3: The timing idea of the step motor control.

26

Page 35: Project Antenna

Chapter 5. PC system

When knowing this S-function loop frequency, it is possible to create steps to the actuators, witha frequency as defined in equation 5.1.

stepfrequency = Sfunction loop frequencyN N = 2 . . . K

K = Sfunction loop frequencyminimum step frequency

(5.1)

The maximum step frequency is directly dependent of the S-function loop frequency, this fre-quency is chosen to 10 KHz, which gives a maximum step frequency of 5 KHz according toequation 5.1. This maximum step frequency is evaluated as being satisfactory.When looking into equation 5.1 it can be seen that the step frequency interval resolution, de-creases, as the step frequency increases. This means that the acceleration is "smooth" in the lowstep frequency area, but very discrete in the higher step frequency area. If this should be a prob-lem, a solution would be to increase the S-function loop frequency, to expand the lower part overa wider frequency area.The implementation of the S-function driver can be found on the attached CD-rom (digital I/OS-function)

The S-function loop period can be chosen arbitrary, of cause concerning the data load. The ideais then to sample the input velocity given to the S-function from the Simulink environment, cal-culate the responding step frequency, and how many loop periods, the output should be high andlow. These calculations are done for each of the 3 outputs, and the outputs are asynchronously,since the step frequency are arbitrary for the 3 outputs. When a step is generated the input to theS-function is again sampled for a velocity.To get a smooth transition between the possible step frequencies, the S-function loop period, mustbe relatively higher than the maximum step frequency.

In figure 5.4 the principle of using the S-function blocks in a Simulink model to the target PC isshown.

Target ScopeId: 1

Scope (xPC) 1

Target ScopeId: 2

Scope (xPC) 2

PulseGenerator

Channel 1

Act 1

Act 2

Act 3

Direction

Digital I/O DT2811

Channel 1

ADC DT2811

A:

B:

Host ScopeId: 3

Scope (xPC) 3

Figure 5.4: Simulink model of S-functions representing respectively digital I/O(A:) and ADC(B:) operations.

In figure 5.4A, a model of the digital I/O S-function with both input and output can be seen. ThisS-function has inputs to the 3 actuators, and a 4. input, which could be e.g. the direction of theactuators. The output of the S-function goes out to a target scope, which means that this outputwill be shown on the target PC. Figure 5.4B shoving the ADC S-function has only outputs, sinceno input can be given from the Simulink environment to the ADC on the I/O board. The output

27

Page 36: Project Antenna

5.2. Matlab xPC target toolbox

from the ADC S-function is both shown in a scope on the target PC and send via ethernet to ascope on the host PC.

28

Page 37: Project Antenna

Chapter 6Sensors

6.1 Tilt Sensor

When dealing with robotics, an important factor is to know the state of the system. Since the F77antenna only can perform angular movement, it is only important to know the angular positionand velocity of the system. The position can be achieved by using a tilt sensor or inclinometer.The inclinometer and tilt sensor terms are often used indiscriminately, and to understand thedifferens, a definition of the tilt sensor term is needed. A tilt sensor is a device that producesan electrical output which varies with angular movement. This excludes all visual/mechanicaldevices, such as "ball-in-tube" slope indicators, mercury switches, or electromechanical triggersthat deliver strictly ON/OFF outputs [Puccio, ].The tilt sensor is only the sensing element itself.When combined with any I/O conditioning the sensor becomes enhanced an is known as aninclinometer. This is a widely accepted nomenclature, and will be used in this report.

When choosing a sensor for a specific application, it is important to find a sensor with the requiredtilt angle range (linear output). Secondly the numbers of axes should be desired as well as asuitable accuracy and bandwidth.

Today a lot of tilt sensors and inclinometers are available on the market, e.g. based on accelerome-ter, capasitive, electrolytic, gas bubble in liquid, mercury, or pendulum technologies. The sensorscan roughly be divided into three categories: Solid-state (MEMS), fluid filled, and force balanced.The MEMS-based sensors are easy to install (PCB mountning) and have a high bandwidth, how-ever they are highly temperature depended. For this reason many newer MEMS devices have abuilt-in temperature sensor, to compensate for the large thermal coefficients. The fluid filled sen-sors constitute the largest industrial market [Puccio, ], most likely because of their relative lowcost-to-performance ratio. The fluid filled sensors have a high accuracy, however their bandwidth(response time) are poor. The force balanced sensors typically have very high accuracy and highbandwidth, but are expensive and out of the scope for the F77 application.

6.1.1 The Currently Implemented Tilt Sensor

To measure the pitch and the roll angles, the tilt sensor is mounted on the base frame of theantenna. This frame is static with respect to the body-fixed frame, see figure 4.3 on page 19. Thislocation of the sensor gives the Euler angles Θ as input, and outputs a voltage proportional to theEuler angles Θ.

29

Page 38: Project Antenna

6.1. Tilt Sensor

r

Noise

Low-pass FilterTilt Sensor Analog to Digital Converter

I / O

Θ vt vt,n

vn

vt,f st Θ~

Figure 6.1: Overview of the tilt sensor and peripherals.

To determine the actual Euler angles the sensor output is low-pass filtered, converted into a digitalsignal by an Analog to Digital Converter (ADC), and finally scaled in software to determine anestimate of the Euler angles Θ[rad]. This is shown in figure 6.1.

Tilt Sensor Element

The tilt sensor element currently used in the Fleet F77, provided by SpaceCom, is an one axiselectrolytic type named SH50056 from Spectron. This kind of sensor is, as earlier mentioned,a typical low-cost sensor, with fair accuracy, however it is temperature depended, sensitive toaccelerations, and have a large settling time. The principle of operation is simple, however notwithout complication regarding modelling.

Bubble of gas

R1 R2

w

w

R2R1

a

b

Figure 6.2: a:Theory of operation for electrolytic tilt sensors. b:Electrical emollients

The electrical behavior of the sensor, is an ordinary resistance potentiometer with a parallel cou-pled capacitor, as shown in figure 6.2, however it is essential to remember that a electrolyticdevice is an A.C. device. If the sensor is exposed to a D.C. current, it will cause an electroplatingaction between electrodes and a precipitation (deionization) of the conducting salts in the elec-trolyte, and the sensor will be destroyed. [Glass and Electronics, ]. In table 6.1 the excitation forthe tilt sensor i shown.

For more information about the principle of operation, see, [Vic Elliott, ].

30

Page 39: Project Antenna

Chapter 6. Sensors

Spectron, SH50056 Specification Current F77 inputExicitation Voltage 5[V] peak-peak 5[V] peak-peakExcitation Frequency 500[Hz]-5[kHz] 1[kHz]Excitation Shape sine or square wave square wave

Table 6.1: Specifications of the SH50056 tilt sensor currently used in the F77 antenna system.

6.1.2 Modelling The SH50056 Tilt Sensor

The dynamics of the tilt sensor, noise model etc. has been exhaustive analyzed and derived bygroup 03gr1030i [03gr1030i, 2003], and this report will built upon their work.

The dynamics of the sensor is examined through system identification. The system identifica-tion is based on the Prediction Error Method (PEM), which minimizes a performancefunction todetermine the system parameters. This is done for two different model structures: Auto Regres-sive with eXogeneous input (ARX) and Auto Regressive Moving Average with eXogneous input(ARMAX). Both structures are built upon a linear model with white gaussian noise as the causeof error for the ARX model and filtered white gaussian noise for the ARMAX model. Equation6.1 shows the generalized ARMAX structure where na, nb, and nc = 0.

A(q)y(t) = B(q)u(t − nk) + C(q)e(t) (6.1)

where

A(q) = 1 + a1q−1 + a2q

−2 . . . + anaq−na

B(q) = b1q−1 + b2q

−2 . . . + bnbq−nb+1

C(q) = 1 + c1q−1 + c2q

−2 . . . + cncq−nc

q is a delay operator and e(t) is the white gaussian noise. na, nb and nc are the polynomial orderof the A, B, and C polynomial respectably. nk is the delay from the input to the output. The ARXmodel has nc = 0 and na and nb = 0.

Equation 6.1 is often rewritten into two transfer functions: one that transfer the input to the outputand one that filters the white gaussian noise e(t). The two transfer functions are denoted G(q) andH(q) as stated in equation 6.2.

y(t) = G(q)u(t − nk) + H(q)e(t) (6.2)

where

G(q) =B(q)A(q)

and H(q) =C(q)A(q)

Experiments performed by group 03gr1030i [03gr1030i, 2003], showed that a ARMAX structurewas needed for correct parameter estimation, since the parameters estimated with ARX structurewas biased. Bias can be caused by either a wrong model structure, to low model order, or a badinput signal.

The model parameters for the ARMAX structure can be seen in table 6.2.

The transfer function for the SH50056 tilt sensor was found to be:

31

Page 40: Project Antenna

6.1. Tilt Sensor

Model Structure a b c τ k σ

ARMAX -0.9749 0.0252 -0.9254 0.3927 1.0025 7.7 ·10−4

Table 6.2: ARMAX model parameters for the currently used tilt sensor, SH50056.

HSH50056(s) =Θ(s)Θ(s)

=1

0.39s + 1[.] (6.3)

where Θ[rad] is the measured angle without noise and Θ[rad] is the real angle.

A noise model of the tilt sensor was derived and the C(q) polynomial for filtering the white gaus-sian noise input (etilt(t) ε ID(0,σ2)) was derived. The transfer function from the white gaussiannoise input, etilt, to the filtered noise output,efn , can be seen in equation 6.4

HSH50056,noise(s) =efn(z)etilt(z)

=s + 7.555s + 2.542

[.] (6.4)

The sensitivity of the SH50056 tilt sensor approx. 33.3mV/deg, when supplied with 5[V], and theinput range to the ADC is ±10[V]. To avoid anti aliasing a second order RC filter is implementedwith a cut-off frequency of 50 [Hz] - more than one decay above the cut-off frequency of the tiltsensor. Besides avoiding anti aliasing the filter is used to attenuate noise from e.g. the PSU of thecomputer, motors, power supplies etc.

The ADC samples the tilt sensor output, with a resolution of 12-bit within a range of ±5[V]. Thequantized voltage resolution then becomes:

ADC Quantization =ADC range

2n=

10[V ]212

= 2.44[mV/bit] 13.7e−3[deg/bit] (6.5)

A simulink model for the tilt sensor can be seen in figure 6.3. The input to the model is an actualangle, Θ, and a gaussian white noise, etilt[rad], and the output is an estimated angle Θ.

Zero-OrderHold

White Noise

1

0.39s+1

Sensor Dynamics Quantizer

s+7.555

s+2.542

Noise Filter

Θ Θ~

(output)(input)

Figure 6.3: Simulink model of the SH50056 tilt sensor.

The dynamic model of the tilt sensor is limited in different ways. The sensor model is based onmeasurement where the sensor is placed approximately 10[cm] from the axis of rotation, and isfor this reason only valid in this special case. The tilt sensor has a high sensitivity to translatoryaccelerations, which causes a significant change in the dynamics if the sensor is exposed to trans-latory accelerations. The sensor model is based on a steady antenna base, and should not be usedduring heavy accelerations.

32

Page 41: Project Antenna

Chapter 6. Sensors

6.1.3 Verification of the Tilt sensor model

In figure 6.4 a plot of the input angle, Θ, the model output estimate,Θ, and the measured sensoroutput, is shown. The model output and the measurement shows good accordance from a visualpoint of view.

0 20 40 60 80 100 120−0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

Time [s]

Ang

le [r

ad]

Measured Tilt OutputSimulated Model OutputActual Angle

Figure 6.4: Measured tilt output and simulated model output in comparison with the actual angle of theantenna base.

6.1.4 Tilt Sensor Alternative

As an alternative to the electrolytic tilt sensor the solid state MEMS sensors based on accelerom-eters, might be worth to consider. The MEMS have easy PCB mounting and a good cost-performance ratio, which along with a higher bandwidth could offer a better overall performancein some cases. The accelerometer based MEMS sensors uses the gravity to determine the orien-tation of an object in the vertical plane.

The Principle of Operation for Accelerometer Based Tilt Sensors

When introducing the acceleromter based tilt sensor principle, different implementation technicscould be applied: e.g. dual- or tri-axis sensing. In figure 6.5 the operational principle for dual-axissensoring is shown. With dual axis the sensor is able to determine the tilt angle in two axis.

x

y

x

a) b)

Sensing Axis

Gravity Vector

Gravity komponent

on the x-axis

Figure 6.5: a) Tilt sensor with dual-axis measurement (x and y). b) The projection of the gravity accelerationto the sensitive axis x indicates the tilt angle θ up to 90 [deg].

33

Page 42: Project Antenna

6.1. Tilt Sensor

The tilt angle θ can be calculated as

θ = arcsin(xaccel) (6.6)

where xaccel is the output from the x-axis measurement.

A few years ago accelerometers where more expensive and a typically configuration used thedual-axis principle. Thus, this principle has the disadvantage that the sensing accuracy decreasesrapidly, due to geometry, when the sensing axis is tilted beyond 45 [deg]. On to that it is notpossible to determine an inversion of the sensing element, which could lead to fatal errors whencontrolling a plant. Now a day, a more typically configuration is the tri-axis sensor, seen infigure6.6.

x

y

z

x

za) b)

Sensing Axis

Gravity Vector

Gravity komponent

on the x- and z-axis

Figure 6.6: a) Tilt sensor with tri-axis measurement (x,y, and z). b) The projection of the gravity accelerationto the sensitive axis x and z indicates a unique tilt angle, θ, for all tilt angles

When introducing the Z-axis in the sensing, it is possible to determine any attitude of an objectin R3 (on earth), and even keep a high sensitivity gain. θ can be calculated as

θ = arctan

(xaccel

zaccel

)(6.7)

where xaccel is the output from the x-axis measurement and zaccel is the output from the z-axismeasurement.

Accelerometer- vs. Electrolytic based Tilt Sensor

The SCA-100T sensor from VTI Technologies is a dual axis acceleromter based tilt sensor, withthe specifications specified in table 6.3. Here the specifications are compared with the currentused tilt sensor from Spectron and another alternative from Kionix - the KXM52-1050 tri-axisaccelerometer.

The accelerometer based sensors provides high bandwidth and large angle range, but are alsoassociated with some disadvantages. The axis of the sensing element, sense the translatory accel-erations along its axis. The sensor does not distinguish between an acceleration caused by gravityor a translatory acceleration of the sensor itself. For this reason a necessary condition for precisedetermination of the tilt angle, will require zero translatory acceleration of the sensor and therebyonly changes in the attitude of the sensing object with respect to gravity. This assumption, how-ever, is for some applications, including the F77 antenna system, unrealistic since the sensors isplaced in a frame that has translatory movements.

From the Inmarsat specifications 3.3 on page 9, it is known that the largest translatory accelerationis the tangential acceleration of 0.5 [g] caused by the roll, pitch, and yaw angular motions of the

34

Page 43: Project Antenna

Chapter 6. Sensors

Spectron VTI Technologies KionixSH50056 SCA100T KXM52-1050

Range ±60 deg ±90 deg (1 g) ±360 deg (2 g)Cross sensitivity @ room temperature 4 % 4% 3%Bandwidth @ room temperature 0-0.4 Hz 0-28 Hz (LP limited) min. 0-1500 HzBuilt-in temp. sensor No Yes NoInterface analog SPI and analog SPI or analogPrice (USA) 50 $ 20-30 $ 40 $

Table 6.3: Specifications for the currently used tilt sensor SH50056, and two alternatives from VTI Tech-nologies and Kiniox.

ship and the fact that the antenna system has a parallel displacement from the roll, pitch and yawaxis. The tangential acceleration will be directly added to the gravity component in the sensitiveaxis by superposition, as illustrated in figure 6.7, and cause an error in the measurement.

Sensing Axis

Gravity Vector

Tangential Acceleration

xg

ta Resulting Measured comp.

Figure 6.7: The projection of the gravity acceleration indicates the tilt angle. In this case a tangentialacceleration is added to the acceleration caused by gravity.

This error will be significant in the F77 antenna system, and is not trivial eliminated. If thetangential acceleration only acted on one principal axis, e.g. the x axis of an tri-axis sensor, itwould be possible to eliminate the error using the measurement from the z-axis. This howeveris an optimistic and probably not usable solution, since there will be translatory movement inboth the x- and the z-axis, and for this reason it could be recommendable to use filters like e.g. aKalman filter. Such a filter could suppress the error by the use of information from the rate gyrosensors. This topic will be discussed in section 6.6.1.

The tangential acceleration, caused by the angular acceleration of the ship, can be calculated withthe knowledge of the radius from the sensor and to the ship-fixed axes as:

at =αr

g(6.8)

where α is the angular acceleration, r is the distance from the sensor to the axis of rotation, and gis gravity.

35

Page 44: Project Antenna

6.1. Tilt Sensor

6.1.5 Modelling the SCA100T Tilt Sensor

The model of the SCA100T sensor has been obtained from measurements. The one step PEMmethod has been used with an ARX model structure and the model order

na = 1 nb = 1 (6.9)

nc = 0 nk = 1 (6.10)

(6.11)

The estimate of parameters for the ARX modelled tilt sensor, can be seen in table 6.4

Model Structure a1 b1 τ k σ Final Prediction Error (FPE)ARX -0.02165 0.9775 3e-3 0.9990 9.24e-5 4.89e-5

Table 6.4: Discrete ARX model (Ts = 0.01) for the SCA100T tilt sensor.

Converting the discrete ARX model to the s-domain, the transfer function for the SCA100T tiltsensor becomes

GSCA100T (s) =0.999

2.60e−3s + 1(6.12)

The sensitivity of the SCA100T tilt sensor is approx. 19[mV/deg], depending of the setup (one ordual axis) or the angle, and the input range to the ADC is ±10[V]. To avoid anti aliasing a secondorder RC filter is implemented with a cut-off frequency of 500 [Hz] - more than one decay abovethe cut-off frequency of the tilt sensor. Besides avoiding anti aliasing the filter is used to attenuatenoise from e.g. the computer, motors, power supplies etc.

The ADC samples the the tilt sensor output, with a resolution of 12-bit within a range of ±5[V].The quantized voltage resolution then becomes:

ADC Quantization =ADC range

2n=

10[V ]212

= 2.44[mV/bit] 0.128[deg/bit] (6.13)

The matlab Simulink model in figure 6.8, is based on a one axis tilt setup. The quantization blockis only valid when the tilt angle is zero, since the sensitivity changes with the tilt angle. This couldbe avoided be using a dual axes measurement. However the error has no practical consequences,since the noise in the sensor measurement is much larger that the error caused by the quantizationof the ADC.

As can be seen in figure 6.9 a comparison between the model output, the measured output, andthe real tilt angle show good accordance. The Final Prediction Error is 4.89e-5 which indicates asufficient good model for simulation and control design.

It is concluded that a first order ARX prediction model, is sufficient for modelling the SCA100Ttilt sensor.

36

Page 45: Project Antenna

Chapter 6. Sensors

0.999

0.0026s+1

Sensor Dynamics

α to atconv.

Angular to tangential

acceleration

asin(u)

Sensorconditioning

White Noise

Θ

Zero-OrderHold

Quantizer

Θ~

ωb

Figure 6.8: Simulink model of the SCA100T tilt sensor, including tangential acceleration.

0 2 4 6 8 10 12

0.6

0.4

0.2

0

0.2

0.4

time [s]

Tilt

An

gle

[ra

d]

Model Output

Maesured Output

Real Angle

Figure 6.9: Comparison between sensor measurement, model and real angle.

6.2 Rate Gyro Sensor

To describe the motions of etc. robotics, satellites or ships, the angular velocity play an importantrole. A rate gyro is a device, that is capable of outputting a signal that is proportional with theangular velocity. Years ago the devices were large and mechanical, but today the significantsmaller solid-state devices are more widely used.

The rate gyro sensor currently used in the Fleet F77 tracking antenna, is of type ENC-03JA fromMurata. The sensor is a one-axis sensor, based on the piezoelectric principle. The specificationsof the ENC-03JA can be seen in table 6.5.

In figure 6.10 the rate gyro setup is shown.

37

Page 46: Project Antenna

6.2. Rate Gyro Sensor

SW driver

Noise

Low-pass FilterGyro Sensor Analog to Digital Converter

I / O

ωb

.vg vg,n

vn

vg,f sg ωb

~.

Figure 6.10: Overview of the gyro sensor and peripherals.

The input to the gyro sensor is an actual angle velocityΘ which is added to some white gaussiannoise Vn, and low-pass filtered by an analog filter. The signal is sampled by a 12-bit Analog to

Digital Converter (ADC), and converted to a measured angular velocity ˜Θ.

6.2.1 Rate Gyro Dynamics

The dynamics of the rate gyro sensor is in this application strait forward. The vendor SprectronLtd., describe the dynamic behavior of the gyro in terms of the phase delay, which increases withhigher input frequency. The phase delay vs. the input frequency is shown in figure 6.11. From avisual point of view, the sensor seems to have first order characteristic with cut-off frequency of52 Hz. This is in accordance to the specified bandwidth of 50 Hz, see table 6.5.

-60

-50

-40

-30

-20

-10

0

0 10 20 30 40 50 60 70

Frequency [Hz]

Ph

ase D

ela

y [

deg

]

Figure 6.11: Phase delay vs. frequency for ENC-03JA rate gyro sensor provided Spectron Ltd.

From table 3.1, the Inmarsat specification for the maximum frequency of the angular velocity isgiven as 1.01 [rad/s]. To ensure an acceptable measurement from the sensor, it has been chosenthat the sensor must be 5 times faster than the system to measure. This is approximatly 5.05[rad/s], thus <1 [Hz]. From figure 6.11 it can be seen, that the phase delay is < 0.5 [deg] equal to1.4 [ms], at a frequency of 1 [Hz]. With a phase shift of only 0.5 [deg] the sensor dynamic willbe ignored, and only the gain will be determined. The sensor is highly temperature depended,and for this reason, the model is only valid temperatures near 20 degrees Celsius. The sensor hasa deviation of ± 20 %FS within the temperature range of -5 to +75 degrees Celsius. Hence atemperature sensor is needed for accurate measurements.

38

Page 47: Project Antenna

Chapter 6. Sensors

6.2.2 Filter, ADC, and Software

The sensitivity of the ENC-3JA is 0.67[mV/deg], see table 6.5. The input range to the ADC is ±5[V], and to utilize the resolution of the ADC, the output signal from the sensor must be amplified.From the Inmarsat specification, see section 3.3 on page 9, the range of the angular velocity isless than 60 [deg/s] (± 30 [deg/s]). From this the amplification of Vg,ωn can be calculated as:

AVg,ENC=

ADC rangeωel,max · sensorsensitivity

=10[V ]

60[deg /s] · 0.67[mV/deg /s] 250[.] (6.14)

With this amplification the resulting sensitivity becomes 168 [mv/deg/s].

To avoid anti aliasing a second order RC filter is implemented with a cut-off frequency of 500[Hz]- approximately one decay above the cut-off frequency of the gyro sensor. Besides avoiding antialiasing the filter is used to attenuate noise from e.g. the computer, motors, power supplies etc.

The ADC samples the amplified signal from the gyro, with a resolution of 12-bit within a rangeof ± 5[V]. The quantized voltage resolution then becomes:

ADC Quantization =Vmax − Vmin

2n=

5 − (−5)[V ]212

= 2.44[mV/bit] 14.6e−3[deg/s/bit](6.15)

Since the sensitivity of the ENC-3JA, and the voltage on the power supplies deviates, the trans-

form from the integer value Sg sampled by the ADC, to the measured angular output ˜Θ, must becalculated from empirical data. The transfer function is a straight line, see equation 6.16, wherethe coefficients are calculated using least square approximation.

˜Θ = 1.29 · 10−4 · Sg − 6.33 · 10−3[rad/s] (6.16)

The variance of the measurement noise, is calculated from equation 6.17, to be: 8.52e−8

σ2 =

√∑Nn=0(xn − µ)2

N − 1= 8.52 · 10−8 (6.17)

6.2.3 Rate Gyro Model

The modelling of the ENC-03JA rate gyro is done as a first order low-pass filer with a cut-offfrequency of 52 Hz and a second first order low-pass filter with a cut-off frequency of 50 Hz. Thetransfer function is calculated as

GENC(s) =326.7

s + 326.7· 314.2s + 314.2

=1.026e5

s2 + 640.9s + 1.026e5(6.18)

In figure 6.12 the simulink diagram of the sensor including the software driver is shown. Thequantisiser is the 12-bit ADC, and the sampler (ZOH) is determined by the driver software.

The model is valid only at a temperature of 20 degree Celsius, since all the empirical data arefrom experiments performed at room temperature (near 20 degree Celsius)

39

Page 48: Project Antenna

6.2. Rate Gyro Sensor

Zero-OrderHold

White Noise

Quantizer

ωel ωel~

(output)(input)

Sensitivity Gain

Sg,ω102.6e3

s2 + 640.9 s + 102.6e3

Sensor Dynamic

Figure 6.12: Simulink model of the ENC-03JA rate gyro.

6.2.4 Model verification

The model of the ENC-3JA rate gyro sensor, is verified by comparing the model output with theactual angular velocity and the sensor measurements. The input from the actual angle is feed tothe simulink model for comparison with the real sensor output.

0 10 20 30 40 50 60 70 80

−0.25

−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

Time [s]

Ang

le [r

ad]

Measured Gyro OutputSimulated Model OutputActual Angular Velocity

Figure 6.13: Model verification of the simulink gyro sensor model.

In figure 6.13 the three angles are compared. The measurement are performed with the currentplacement on the F77 antenna. It is clear, that the measurement is superposed with a light dampedoscillating signal. This signal does not belong to noise in the sensor, but to the eigenfrequencyof the antenna element itself. Because the actuators on the antenna are stepper motors, andoperate with discrete steps, the antenna element begins to oscillate, with its eigenfrequency atlow frequency stepper motor input.

In figure 6.14 the eigenfrequency is exposed more clearly. The eigenfrequency is calculated byinspection to be 11.3 [Hz]. From figure 6.14 it could seen like if there are a small delay betweenthe model output and the measured output. However, this delay is caused by the elasticity of theantenna element itself.

40

Page 49: Project Antenna

Chapter 6. Sensors

41.8 41.9 42 42.1 42.2 42.3 42.4 42.5−0.05

−0.04

−0.03

−0.02

−0.01

0

0.01

0.02

0.03

0.04

0.05

Time [s]

Ang

le [r

ad]

Measured Gyro OutputSimulated Model OutputActual Angular Velocity

Figure 6.14: The natural frequency of the antenna element can easy be seen in the figure, as the deviationbetween the Model output and the measuremt.

10 10.05 10.1 10.15 10.2 10.25−0.03

−0.02

−0.01

0

0.01

0.02

0.03

Time [s]

Ang

le [r

ad]

Measured Gyro OutputSimulated Model OutputActual Angular Velocity

Figure 6.15: The "discrete" step from the actuator (100 [Hz]), can be seen as the superposed signal on themeasurements.

41

Page 50: Project Antenna

6.2. Rate Gyro Sensor

If the step driver frequency of the actuators becomes low, the steps in the actuators, becomestransients on the measured output from the sensor. In figure 6.15 the measurement is exposed toa step driver frequency of 100 [Hz]. The 100 [Hz] driver signal can be seen as the superposedsignal on the eigenfrequency of the antenna element.

6.2.5 Alternative Rate Gyro Sensors

As stated in the project strategy one of the purposes of this project was to reconsider the entiresystem design, including the sensors. For this reason different sensor has been considered in orderto find some good alternatives to the currently used ENC-03JA rate gyro sensor from murata.

In general there are three types of gyro rate sensors: piezoelectric, fiber-optic gyro’s (FOG’s),and ring laser gyro’s (LRG’s). The most common used solid-state gyro is the piezoelectric type,which uses either silicon, quartz or ceramic for the Coriolis "turning Fork" principle see reference[Jakobs, ] for more information. The piezoelectric sensors are refereed to as MEMS (MicroElectro Mechanical Systems). This has to do with the vibrating turning fork principle, which iselectromechanical. The FOG’s and LRG’s are typically more precise devices, however the pricesare 10-100 times higher, and are only used where very high precision devices are recommended.

Murata, Gyrostar Analog Devices Analog DevicesENC-03JA ADXRS150 ADXRS401

Range ±300 deg/s ±150 deg/s ±75 deg/sSensitivity 0.67 mV/deg/s 12.5 mV/deg/s 15 mV/deg/sBandwidth 50 Hz 2 kHz 2 kHzBuilt-in temp. sensor No Yes YesOperating temp. range -5 - +75 C -40 - +85 C -40 - +85 CNon-linearity ±5% FS ±0.1% FS ±0.1% FSPrice (USA) 33 $ 30 $ 22.50 $

Table 6.5: Specifications for the currently used gyroscope ENC-03JA, and two alternatives from AnalogDevices.

As an alternative to the ENC-03JA sensor, Analog Devices has developed the ADXRS-series,which are reliable and cost-effective piezoelectric solid-state gyro sensors, with a good perfor-mance. The three gyros in table 6.5 are all sensitive to temperature changes. For this reason theADXRS-series all has a built-in temperature sensor, that allows the developer the compensate forchanges in temperature. The ADXRS series also offers custom bandwidth adjustment by the useof a 2’nd order low-pass filter, which enables the developer to suppress noise from mechanicalvibrations.

6.2.6 Modelling the ADXRS150 Rate Gyro Sensor

The model of the ADXRS150 rate gyro sensor is obtained from measurements with known an-gular velocity. The rate gyro setup including peripherals are the same as for the ENC-03JA rategyro, as shown in figure 6.10. As illustrated in figure 6.16 the ADXRS150 sensor contains asensing element based on coriolis force, an internal low-pas filter, an internal amplifier, and anoutput low-pass filter. Finally the sensor output is amplified to obtain a good signal to noise ratioin the analog-to-digital conversion.

42

Page 51: Project Antenna

Chapter 6. Sensors

Internal

Amplifier

External

Amplifier

Low-pas

filter

Low-pass

filter

Sensing

element

ADXRS150 Rate Gyro by Analog Devices

ωb vg

Figure 6.16: Block diagram of the ADXRS150 rate gyro sensor including external amplifier.

The first low-pas filter in figure 6.16 is placed after the demodulation in the sensor, and reduceshigh frequency artifacts before the output amplification. The filter is of first order and has onepole which can not be precisely placed. This is the case since the filter is a RC-coupling with anexternal capacitor and an internal resister, where the internal resister has a tolerance of ± 35%.However this is not a problem since the purpose of the filter is to prevent saturation of the amplifierstage. The pole is usually 10 times greater than the pole of the output filter [Devices, 2004].

The amplifier stage has a fixed gain to obtain the sensitivity of 12.5 [mV/deg/s]. It is possible toincrease the sensor range by adding an external resistance, however this is not needed since themaximum angular velocity 30 [deg/s] < 150 [deg/s], see section 3.3.

The second low-pass filter in figure 6.16 is the output filter, referred to as the bandwidth filter inthe datasheet [Devices, 2004]. The filter has the same structure as the first RC-filter except fromthe internal resister tolerance, which is only ± 1 %. This makes it possible to design a precisefirst order analog filter, to filter out electric and mechanical noise.

Finally an external amplifier is added to the sensor block. This is done to utilize the resolution ofthe analog-to-digital converter in an optimal way. The amplification is calculated as

AVg,AD=

ADC rangeωel,range · sensorsensitivity

=5[V ]

60[deg /s] · 13.75[mV/deg /s] 6.06[.] (6.19)

where the range ωel,range is specified by inmarsat, see section 3.3, ADC range is specified bythe DT2811 PC-card in section 5.1 and the sensor sensitivity is from data sheet [Devices, 2004]based on worst case (typical value + 10%). The quantization caused by the analog-to-digital con-version equals the one from the ENC-03JA and is here recalled: 14.6e−3 [deg/s/bit], see equation6.15. The external amplification have two stages: a differential instrumentation amplifier withcommon-mode noise rejection and an ordinary operational amplifier. The design specificationscan be seen in figure 6.6.

Parameter ValueLow-pass filter 1, fn,1 400 HzLow-pass filter 2, fn,2 40 HzInternal amplifier UnchangedExternal amplifier 6 [.]

Table 6.6: Design specifications for the ADXRS150 rate gyro implementation.

43

Page 52: Project Antenna

6.2. Rate Gyro Sensor

Modelling the ADXRS150 sensor with subsystems

In order to use the new sensor for simulations, a model must be derived. It has been chosen tomodel the ADXRS150 rate gyro sensor including the amplifiers, filters, analog-to-digital conven-

tion and software driver. This is done to obtain the best estimate of the measured angle ˜Θ, seefigure 6.10.

To estimate a model the one step PEM method has been used with an ARX model structure ofthe order

na = 1 nb = 1 (6.20)

nc = 0 nk = 1 (6.21)

(6.22)

The PEM methods used for ARX model structures are described in section 6.1 on page 29. Theestimate of parameters for the ARX modelled tilt sensor, can be seen in table 6.4

Model Structure a1 b1 τ k σ Final Prediction Error (FPE)ARX -0.1176 0.8843 5e-3 1.0023 2.265e-4 0.733236

Table 6.7: Discrete ARX model (Ts = 0.01) for the ADXRS150 rate gyro sensor.

Converting the discrete ARX model to the s-domain, the transfer function for the ADXRS150rate gyro sensor becomes

GADXRS150(s) =1.0023

4.673e−3s + 1(6.23)

The simulink implementation of the ADXRS150 rate gyro can be seen in figure 6.17

Zero-OrderHold

White Noise

Quantizer(output)(input)

Sensitivity Gain

AVg,AD1.0023

4.673e-3 s + 1

Sensor Dynamic

Θ.

Θ~.

Figure 6.17: Comparison between sensor measurement, model and real angle.

As can be seen in figure 6.18 a comparison between the model output, the measured output, andthe real angular velocity show good accordance.

44

Page 53: Project Antenna

Chapter 6. Sensors

0 1 2 3 4 5 6 7 8

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

Time [s]

Ang

ular

Vel

ocity

[rad

/s]

Rate Gyro Model Verification

Model OutputMeasured OutputTrue angular Velocity

Figure 6.18: Comparison between sensor measurement, model and real angle.

6.2.7 Rate Gyro Recommendations

The ENC-03JA gyro sensor, is a suitable sensor for the Fleet F77 satellite tracking antenna, anddo meet the requirement at the moment. However the price is high compared to the specifications,and especially the sensitivity (0.67 [mV/deg/s]) is poor. The recommendations must therefore be,to look for an alternative to this sensor, for instance the newer ADXRS150 or ADXRS401 fromAnalog Devices. From the Inmarsat specification in section 3.3 on page 9 it can be seen that themaximum angular velocity is 30/s, and for this reason there is no need for a range of 300/s,that ENC-03JA offers. It is suggested to change the gyro to ADXRS150 or ADXRS401 and usethe built-in temperature sensor, and thereby remove the LM61CIM3 temperature sensor on boardP00307-1, see diagram on cd. By the use of the internal 2’nd order low-pass filter, it is possibleto suppress noise from the stepper motors, hence remove external PCB mounted filters.

6.3 Squint Sensor

The function of the SpaceCom squint sensor is to measure the error angles between satellite signaldirectional vector σ and the electrical reference direction ε, i.e. the directional vector whichprovides a maximum signal reception, this is defined as the boresight vector and is typicallythe normal vector of the antenna array plane. The sensor output is provided as two values Se,E(elevation error) and Se,CE (cross-elevation error), which are an indication of the geometric anglesϕe and θe which can be seen in figure 6.19.

The indication Se,E and Se,CE, of the error angles are not provided directly in radians or degreesas a unit, but as a integer value. In order to use this sensor data in the control of the system, a

45

Page 54: Project Antenna

6.3. Squint Sensor

Satellite Direction Vector

(SAT vector)

Elevation Axis

Cross-elevation Axis

Satellite Direction Vector

(SAT vector)

Normal Vector to Antenna

Element

(Boresight Vector)

z

xy y

z x

Cross-elevation frame

Satellite frame

ϕe

θe

Normal Vector to the Antenna Element

(Boresight Vector)

σ σ

ε ε

Figure 6.19: Geometric illustration of the squint sensor output angles ϕ e and θe.

mapping of the raw data must be performed, such that it can be related to other physical parame-ters.

6.3.1 Principle of Operation

In this section a brief explanation of the principle that SpaceCom uses for angle estimation, ofthe target direction is made. The SpaceCom antenna is divided into four elements as shown infigure 6.20. By phase shifting the signal between the elements 1 and 4, the antenna characteristicin this direction is altered. The phase shift is performed in two steps, first the signal of element 1is delayed relative to element 4, where after the signal to element 4 is delayed relative to element1. By measuring the signal intensity while performing the two phase shifts in direction 1 - 4, itis possible to determine how much signal power that comes from the two section of the antenna.From this measurement it is possible to determine the direction to the satellite. This is alsodone for the 2 - 3 elements as well, whereby a complete estimation of the direction of the target(satellite) can be made. The phase shift delay between the elements are constant predeterminedvalues.

1 2

43

Figure 6.20: The F77 antenna array is divided into four elements.

In order to visualize the effect of the phase shifts figure 6.21 shows how the antenna characteristicis altered in 1-4 direction. This change is the same for the direction of 2-3.

In each of the altered direction the signal intensity is integrated over a certain time, and thedifference of the measurements in the two directions are stored in data packages by the sensor,and transmitted via a standard RS-232 connection.

46

Page 55: Project Antenna

Chapter 6. Sensors

Element 4

Element 1

Boresight Axis

Figure 6.21: Varying the F77 antenna array characteristics by phaseshifts of the antenna elements.

The data packages consists of three bytes, and are transmitted at 9600 baud with a frequencyof 100 Hz. The packages are sent in the following order: four data-packages of cross elevationerrors and one data-package containing an elevation error. The structure of the package can beseen in figure 6.22.

Data

MSB

Data

LSB

Data

MSB

Data

LSB

Type 1 Type 2Type 2 Type 2 Type 2 Type 1

Header

Type 1

Header

Type 2

Type 2 Type 2

Figure 6.22: The output structure of the RS-232 squint sensor protocol.

The package header for the two sensor outputs Se,CE and Se,E are 0x01 and 0x02 respectively.The error value is sent as a 16-bit integer value, using twos compliment to represent both positiveand negative values.

6.3.2 Signal Map

The obvious way of examining the relationship between this signed integer value, and the cor-responding geometric angle, is to collect a mesh of squint sensor output data and the associatedelevation and cross-elevation error angles ϕe and θe, relative to a optimal signal vector σ.

Such a set of mesh map data should consist of uniformly distributed samples of Se,E and Se,CE,i.e. θ1 ≤ ϕe ≤ θ2 and θ1 ≤ θe ≤ θ2, with θ1 and θ2 defining the lower and upper bounds of themap respectively.

An obvious way for acquiring such a set of mesh map data, would be to use the mechanical systemof the F77 antenna itself. When considering the kinematics of the mechanical system, it can beseen that this method for obtaining the mesh map data is valid. This is basically because theactuator cross-elevation angle θc−elev directly affect the squint sensor produced cross-elevationerror angle θCE, and subsequently the elevation actuator angle θelev directly affects the squintsensor elevation angle ϕe.

The pointing-error requirement of maximum 1 degree, means that a general map is not needed.For this reason, only a [−1, 5;1, 5] region, will be included in the mapping. The arrangementand execution of the mesh map measurement, is specified in appendix B on page B139. In orderto get an average map, two sets of measurements have been performed, with respectively cross-elevation and elevation sweeps. The results of this measurements can be seen in figure 6.23.

47

Page 56: Project Antenna

6.3. Squint Sensor

0 100 200 300 400 500 600 700 800 900430

0

430

Raw

Squ

int

φ e,E

[int

16]

Samples

Elevation Sweep

0 100 200 300 400 500 600 700 800 900

1.5

0

1.5

Join

t Ang

le θ

E [d

eg]

0 100 200 300 400 500 600 700 800 900 190

0

190

Raw

Squ

int

φ e,C

E [i

nt16

]

Samples

Elevation Sweep

0 100 200 300 400 500 600 700 800 900

1.5

0

1.5

Join

t Ang

le θ

CE [d

eg]

0 100 200 300 400 500 600 700 800 900 480

0

480

Raw

Squ

int

φ e,E

[int

16]

Samples

Cross Elevation Sweep

0 100 200 300 400 500 600 700 800 900

1.5

0

1.5

Join

t Ang

le θ

E [d

eg]

0 100 200 300 400 500 600 700 800 900 200

0

200

Raw

Squ

int

φ e,C

E [i

nt16

]

Samples

Cross Elevation Sweep

0 100 200 300 400 500 600 700 800 900

1.5

0

1.5

Join

t Ang

le θ

CE [d

eg]

Figure 6.23: Raw squint sensor output when performing a cross-elevation and elevation sweeps in a[−1, 5;1, 5] region.

Inspection of the raw data, reveals a cross-correlation effect on the Se,E output, which is apparentwhen performing cross-elevation sweeps. This could suggest a inherent sensor non-linearity, itdoes however appears to be linear dependent on Se,CE. A linear correlated mapping based onequation 6.24 is chosen.

[θe

ϕe

]=

[a bc d

] [Se,CE

Se,E

]+

[ef

](6.24)

By performing curve fitting in a least-square sense, i.e. applying equation 6.25, with the processeddata and the mapping function in equation 6.24, the error mapping results in figure 6.24 have beenobtained.

minparm

12|F (parm,Se) − ϕe|2 = min

parm

12

m∑i=1

(F (parm,Sei) − ϕei)2 (6.25)

48

Page 57: Project Antenna

Chapter 6. Sensors

Variance, σ QuantizationElevation 0.1229e−5 [rad] 1 [int/lsb]

Cross-Elevation 0.2259e−5 [rad] 16 [int/lsb]

Table 6.8: Variance and Quantization level of the the squint sensor.

With the vector Se consisting of the two squint sensor output components, the ϕe vector consist-ing of the kinematics transformed θelev and θc−elev input signals, each vector with a length m,and F (parm,Se) the vector function which maps the input data.

1. 5 1 0. 5 0 0.5 1 1.50

0.1

0.2

0.3

0.4

0.5

Mapping error (Elevation sweep) | φe(squint mapping),CE

φe(actual),CE

|

Range [deg]

Err

or [d

eg]

1.5 1 0.5 0 0.5 1 1.50

0.1

0.2

0.3

0.4

0.5

Mapping error (Elevation sweep) | φe(squint mapping),E

φe(actual),E

|

Range [deg]

Err

or [d

eg]

1.5 1 0.5 0 0.5 1 1.50

0.1

0.2

0.3

0.4

0.5

Mapping error (Cross Elevation sweep) | φe(squint mapping),CE

φe(actual),CE

|

Range [deg]

Err

or [d

eg]

1.5 1 0.5 0 0.5 1 1.50

0.1

0.2

0.3

0.4

0.5

Mapping error (Cross Elevation sweep) | φe(squint mapping),E

φe(actual),E

|

Range [deg]

Err

or [d

eg]

-

- -

-

Figure 6.24:

This mapping results in typical error variation in pointing-error mapping, of approximately 0.2degrees in the. This can primarily be contributed to test enviornment sensor noise.

The quantization and variance of the squint sensor output, is read from the captured data of thesensor measurement. The parameter can be seen in table 6.8.

6.4 Simulink Model of the Squint Sensor

The squint sensor is implemented in matlab Simulink for simulation purpose. The simulationmodel is based on steady state satellite position, with pitch and roll, azimuth, elevation and cross-elevation angles as inputs.

As illustrated in figure 6.25 a satellite direction vector is defined in the stability frame and isrotated to the CE frame. This rotation is performed, by the use of the euler angles, Θ and the jointangles θact such that the direction of the satellite is given in the CE frame.

49

Page 58: Project Antenna

6.5. Kalman Filtering

From the satellite vector in the CE frame, defined as SAT vector, the error angles ϕe and θe canbe calculated as the projection of the SAT vector on to the xy-plane and xz-plane of the CE frame.This is discussed in details in the kinematics section, 9.1. These angles are the actual error angles,that is fed to the dynamic model of the squint sensor itself.

Noise is added to the measurement with the variance specified in table 6.8.

It is known from the squint sensor description, that the dynamics of the sensor can be modelled asa pure time delay, probably caused be signal processing and communication, and a fixed samplingtime of approximately 100[Hz]. As discussed in section 6.3, every fifth measurement is elevationerror angle, whereas the others are measurements of the cross-elevation error angle. This isimplemented in the matlab Simulink m-file S-function,squintDataPrep.c located on theCD. This function have a sample frequency of 100[Hz], which is approximately the same as theactual sensor output.

Finally the signal is quantized with the quantization observed from the measurement in appendixB.

TimeDelay

(0.03[s])

TimeDelay

(0.03[s])

Measurement Noise Elev

Measurement NoiseC-elev

Elev

(samp)

C-Elev

(samp)

Elev

C-Elev

Elevation and Cross-Elevation Sampler

Elev Quantizer

C-Elev Quantizer

θe

ϕe

θe

ϕe

Θθact

Euler anglesJoint angles

Satellite Direction

σ Rotation From

The Stability Frame

to The CE frame

Figure 6.25: Simulink model of the squint sensor provided by SpaceCom A/S.

6.5 Kalman Filtering

Sensor output is often a mixture of the original signal which is measured and some noise added tothe measurement. The source of the noise could be electrical interference from the surroundingenvironment, or from the sensor itself. If the sensor is placed in a mechanical system, then e.g.vibrations will contribute with a unwanted noise part to the measurement. Since these noisecontributions are mainly from an external source, it is not possible to avoid their influence on themeasurement, which means that it is preferable that the measurement is filtered in some way.The simple lowpass/bandpass filtering will in in many cases be suitable, though it has somedisadvantages in form of phase delay and obliterating of information in the measured signal.Another scenario, not noise related, is where some measurement are available and it would bepreferable with an estimate of states that are not measurable, e.g. a position measurement isavailable and an estimate of the velocity is wanted.

Kalman filtering can in many cases reduce the mentioned problems and still perform an outputthat is usable for e.g. a controller.The output from a Kalman filter basically consists of two things, a weighting between an estimate,based on a model of the system and the actual measurement of the state if it is available. By the

50

Page 59: Project Antenna

Chapter 6. Sensors

use of a model it is also capable of estimating nonmeasurable states. The theory used in thefollowing, regarding Kalman filtering is based on [Mohinder S Grewal, 2001].

In figure 6.26, a block diagram of a discrete version of the Kalman filter can be seen. It alsoshows the relationship between the system model, measurement model and the Kalman filter.

Φk-1Φk-1

H Kk

Hz-1 z-1

xk(-) xk-1(+)^ ^

xk(+)^zk

v

xk

xk-1

w

system measurement Kalman filter

zk^

zk~

Figure 6.26: Structure of the Kalman filter and the system model.

6.5.1 Kalman Filter Principle

This section will consist of a short description of the theory in a linear Kalman filter. In thefollowing the syntaxis is as follows: "(+)" indicates the a posteriori value, meaning the valuebased on information until present time. "(-)" is the a priori value, this is the value based oninformation until present time minus one time step.

The purpose of the linear Kalman filter is to have an optimal linear estimate of the state. Thisestimate is a weighting between a model based estimate and measurements. The optimal linearestimate xk(+) is shown in equation 6.26.

xk(+) = K1kxk(−) + Kkzk (6.26)

The values of K1k and Kk, which is a weighting of the priori model based value and the measure-

ment respectively, must satisfy the orthogonality principle to have an optimal linear estimator,since this minimizes the mean squared error, when the error estimate is orthogonal to the mea-surement [Mohinder S Grewal, 2001]. This orthogonality condition can be seen in equation 6.27

E〈[xk − xk(+)]zTk 〉 = 0 (6.27)

By choosing K1k as in equation 6.28, then equation 6.27 is satisfied.

K1k = I − KkHk (6.28)

When substituting equation 6.28 into equation 6.26, then equation 6.29 is obtained. It can be seenthat this equation gives the estimate of the state, based on two elements, the a priori model basedestimate and a contribution dependent on the measurement. The last contribution is based on theerror between the measurement and the a priori model based estimate. This error is weightedwith Kk - the Kalman gain.

51

Page 60: Project Antenna

6.5. Kalman Filtering

xk(+) = xk(−) + Kk[zk − Hkxk(−)] (6.29)

The error covariance matrix Pk, is defined as in equation 6.30. The definition "error covariance",is since it is based on xk, which is the error between xk and the real state xk. The covariance hasan important role in the Kalman filter, since the optimization is based on this, to fulfill equation6.27. With the definition of the error covariance, the Kalman gain Kk, can be expressed as inequation 6.31 [Mohinder S Grewal, 2001].

Pk = E[xkxTk ] (6.30)

Kk = Pk(−)HTk [HkPk(−)HT

k + Rk]−1 (6.31)

Subtracting xk from both sides of equation 6.29 yields equation 6.32, and by substituting equation6.32 into equation 6.30, the error covariance matrix can be obtained as in equation 6.33.

xk(+) = (I − KkHk)xk(−) + Kkvk (6.32)

Pk(+) = [I − KHk]Pk(−) (6.33)

Equation 6.33 consists of both the priori and the posteriori error covariance value, which is depen-dent on respectively xk(+) and xk(−). Expressing xk(−) as xk(−) − xk, one can yield equation6.34.

Pk(−) = Φk−1Pk−1(+)ΦTk−1 + Q (6.34)

6.5.2 Kalman Filter Computational procedure

From section 6.5.1, the equations necessary to get an optimal linear estimate has been derived.The computational procedure to obtain this estimate is listed in equation 6.35 to 6.39.

xk(−) = Φk−1xk−1(+) (6.35)

Pk(−) = Φk−1Pk−1(+)ΦTk−1 + Q (6.36)

Kk = Pk(−)HTk [HkPk(−)HT

k + Rk]−1 (6.37)

xk(+) = xk(−) + Kk[zk − Hkxk(−)] (6.38)

Pk(+) = [I − KHk]Pk(−) (6.39)

Equation 6.35 to 6.37 is referred to as the prediction part, whereas equation 6.38 to 6.39 is referredto as the update part.With these equations defined, the Kalman filter is ready for implementation.

In figure 6.26, a block diagram of a discrete version of the Kalman filter can be seen. It graphicallyshows the relationship of the equations above.

52

Page 61: Project Antenna

Chapter 6. Sensors

6.5.3 Kalman Filtering of Squint Sensor Output

In this project, the only exact indication of the error in orientation of the antenna plate, regardingthe satellite, is from the squint sensor. To enhance the performance of the total system, it is ofgreat importance that this signal is reliable, since the overall performance of the system is directlydependent of the quality of the squint sensor signal. For this purpose it is chosen to implement aKalman filter, and let this filter have both the squint signal and the rate gyro signals as measure-ments. With these sensors and the Kalman filter including a model of the system, it is possible toperform sensor fusion of the signals, and use the advantage of this to get a more "clean" squintsensor signal, which basically can enhance the total performance. The wanted output states fromthe Kalman filter can be seen in equation 6.40. In this setup all the states are available for mea-surement. The squint sensor measures the two angle states, and the rate gyros measures the anglevelocity states.The Kalman filter in this project will be a linear version, and the description of the Kalman filteroperational principle will be in a discrete interpretation, since the filter is meant for implementa-tion in C.

x =

x1

x2

x3

x4

=

θe

θe

ϕe

ϕe

(6.40)

where

θe = error angle in cross elevationθe = error angular velocity in cross elevationϕe = error angle in elevationϕe = error angular velocity in elevation

The physical placement of the rate gyros are on the base frame of the antenna. To be able to talkabout measurement of elevation and cross-elevation angular velocity, a kinematic rotation fromthe base frame to the antenna plate frame must be performed. When writing measurement ofangular velocity in this section regarding the Kalman filter, such a kinematic rotation has beenperformed, see section 9.1. Figure 6.27 shows the principle of using the measurements availableand a Kalman filter to have an estimate of the states. Besides the measurements it can be seenthat "u" is given to the Kalman filter as input, this represents the contribution to the systemdynamics from the actuators motion. In equation 6.41 it can be seen that this input is a functionΓ, dependable on the actual angle of the actuators (θk−1) and the acceleration (αk−1) given tothem. With these three input and the Kalman filter theory it is possible to have an optimal linearestimate of the states.

u = Γ(θk−1, αk−1) (6.41)

The description of the dynamic model of the system will be based on the syntax seen in equation6.42 and 6.43, where equation 6.42 describes the states of the system and equation 6.43 describesthe measurement. w and v are respectively the process noise in the model and the measurementnoise.

53

Page 62: Project Antenna

6.5. Kalman Filtering

Rate gyro

squint

Kinematic

Rotation

Kalman

filter

u

xk

z

z^

Figure 6.27: Kalman filter overview

xk = Φk−1xk−1 + Γ(θk−1, αk−1) + wk−1 (6.42)

wk ∼ N (0, Q)z = Hxk + vk (6.43)

vk ∼ N (0, R)

In equation 6.44 to 6.51 the propagation of the wanted states and the measurements equations arewritten. The relation between the error angle states and the error angle velocity states is a simpleintegration of the velocity to give the angle.

θe,k = θe,k−1 + θe,k−1Ts + w1 (6.44)

θe,k = θe,k−1 + ε[z]Ts + w2 (6.45)

ϕe,k = ϕe,k−1 + ϕe,k−1Ts + w3 (6.46)

ϕe,k = ϕe,k−1 + ε[y]Ts + w4 (6.47)

z1,k = θe,k + v1 (6.48)

z2,k = θe,k + v2 (6.49)

z3,k = ϕe,k + v3 (6.50)

z4,k = ϕe,k + v4 (6.51)

The influence from the actuators can be seen in equation 6.45 and 6.47, which are the propagationof the error velocity states. Here the contributions from the actuators is expressed as componentsof ε, which is the acceleration of the line of sight vector in the antenna frame, regarding actuatorcontributions. Since the actuators are controlled with accelerations, their influence is added tothe propagation of the velocity states. The Γ matrix which is used in equation 6.42 can be seen inequation 6.52.

Γ =

0ε[z]Ts

0ε[y]Ts

(6.52)

From equation 6.44 to 6.51, Φ and H can be setup in a state space interpretation. Φ describesthe dynamics of the system and H simply indicates which states are available for measurement.These matrices can be seen in equation 6.53.

54

Page 63: Project Antenna

Chapter 6. Sensors

Φ =

1 Ts 0 00 1 0 00 0 1 Ts0 0 0 1

H =

1 0 0 00 1 0 00 0 1 00 0 0 1

(6.53)

From equation 6.42 and 6.43 it can be seen that respectively w and v are added to the modeldescription of the states and output. The variances of the these noise contributions are expressedin Q and R, which is shown in equation 6.54. σ2

sq,ce/e is the variance regarding process noise

of the squint sensor model, and σ2rg,ce/e is the variance regarding process noise of the rate gyro

model.In equation 6.45 and 6.47 the state extrapolation of the error angular velocity states can be seen,here it is stated that the present value is equal to the old value of the state, plus w and eventuallya actuator contribution. The dynamic of the disturbance, measured by the rate gyros, must berepresented by the process noise. It is seen as reasonable that this is the case since the disturbancecan have random frequency and amplitude and is considered as unknown.

R =

σ2sq,ce 0 0 00 σ2

rg,ce 0 00 0 σ2

sq,e 00 0 0 σ2

rg,e

Q =

σ2m1 0 0 00 σ2

m2 0 00 0 σ2

m3 00 0 0 σ2

m4

(6.54)

The variances stated in R in equation 6.54 has been found from measurements of the rate gyros,and the squint sensor. The variance value for the Q matrix is found through initially a guess, andthen simulating the total Kalman filter to ses its performance. Of course knowing the ranges ofthe disturbances gives an indication of a guess that is reasonable.The values for R and Q can be seen in equation 6.55 and 6.56.

R =

4.5313e − 006 0 1.5274e − 007 00 9.5561e − 006 0 0

1.5274e − 007 0 2.5611e − 005 00 0 0 9.5561e − 006

(6.55)

Q =

0.00000001 0 0 00 0.000001 0 00 0 0.00000001 00 0 0 0.000001

(6.56)

6.6 Elevation and Cross-elevation Error Angular Velocity

To filter the output from the squint sensor, it has been chosen to use Kalman filtering. TheKalman filter is a model based filter, as described in section 6.5, that improves the performanceof measurements, by using a model for prediction.

The motivation for introducing the Kalman filter, was to improve the performance of the twomeasured error angle θe and ϕe e.g. for noise attenuation or compensating for time delays.

The error angles are directly measurable from the squint output, therefore naturally included inthe model states. On the base of the antenna system, two rate gyro are mounted. These sensors

55

Page 64: Project Antenna

6.6. Elevation and Cross-elevation Error Angular Velocity

provides information of the angular velocities around the pitch and roll axes. These sensors canbe used to provide information of the angular velocity of the two error angles θe and ϕe. Thus θe

and ϕe are included in the Kalman states.

The states of the Kalman filter is here recalled

x =

x1

x2

x3

x4

=

θe

θe

ϕe

ϕe

(6.57)

As illustrated in figure 6.28 the cross elevation error angle, is defined as the angle between theprojection of the SAT vector (ζ) on to the xy-plane in the CE frame (projxy,CE (ζ)), and the x-axisof the CE frame. The elevation error angle, is defined as the angle between the SAT vector (ζ)and xy-plane in the CE frame.

Satellite Direction Vector

(SAT vector)

Elevation Axis

Cross-elevation Axis

Satellite Direction Vector

(SAT vector)

Normal Vector to Antenna

Element

(Boresight Vector)

z

xy y

z x

Cross-elevation frame

Satellite frame

ϕe

θe

Normal Vector to the Antenna Element

(Boresight Vector)

ζ ζ

Figure 6.28: Definition of the error angles ϕ e and θe.

Those angles can be measured directly, however their derivatives are not trivially measured orcalculated. The first idea might be to rotate the velocity vector, ωb, from the body-fixed frame(where they are measured) and to the CE frame and decompose the vector into the x,y and zcomponents e.g. θe can be calculated as

θe = (RCEb ωb)k (6.58)

However this is basically wrong, since θe and ϕe also have contributions from the x-axis compo-nent, if the SAT vector does not coincide with the Boresight vector. This problem is discussed indetails in the kinematic section 9.1. The solution is to rotate the velocity vector, ωe to a satellitefixed frame, denoted SAT frame in the kinematics, and decompose, ωe in the x,y and z axes. Theelevation error angle,ϕe, will lie in the xz-plane of the SAT frame, thus the rotation around they-axis becomes the momentary angular velocity, ϕe.

The cross-elevation error angle, θe, is parallel to the xy-plane of the SAT frame, and therefore therotation around the z-axis becomes the momentary angular velocity, θe.

In figure 6.29 the result of the Kalman filtered squint signal, using the rate gyros, is seen.

56

Page 65: Project Antenna

Chapter 6. Sensors

0 5 10 15 20 25 15

10

5

0

5

10

15

Time[s]

Ele

vation E

rror

Angle

[deg]

Elevation

0 5 10 15 20 25 4

3

2

1

0

1

2

3

Time[s]

Cro

ss

Ele

vation E

rror

Angle

[deg]

Elevation

15 16 17 18 19 20 11

10

9

8

7

6

5

4

3

2

Time[s]

Ele

vation E

rror

Angle

[deg]

Scaled Elevation

10 10.5 11 11.5 12 12.5 13 13.5 14 0.5

0

0.5

1

1.5

2

2.5

Time[s]

Cro

ss

Ele

vation E

rror

Angle

[deg]

Scaled Cross Elevation

Squint Output

Kalman Estimate

Squint Output

Kalman Estimate

Squint Output

Kalman Estimate

Squint Output

Kalman Estimate

Figure 6.29: Simulation Results of the measured error angles and the Kalman filtered estimate.

6.6.1 Kalman Filtering of Tilt using Rate Gyro Signals

As described in section 6.1, the tilt sensor is highly sensitive to translatory accelerations. Theseaccelerations will act as disturbances on the measurements, and a mismatch in the relationshipbetween the tilt and rate gyro information will occur.To get a more true indication of the real state, Kalman filtering is evident since it can performsensor fusion of the two sensor types. This combined with a model of the relationship betweenthe tilt and rate gyro sensors, result in an optimal linear estimate of the state, which will beweighted with the actual measurements. The wanted states can be seen in equation 6.59. Thetilt sensor measures the pitch and roll angle in the base frame and the rate gyros, measures theangular velocities in the base frame. With these sensors available all the states in equation 6.59are available for measurement.

x =

x5

x6

x7

x8

=

θp

θp

φr

φr

(6.59)

θp = pitch angleθp = pitch angular velocityφr = roll angleφr = roll angular velocity

In figure 6.30 an overview of the Kalman filter regarding tilt and rate gyro is shown. In this filterthere is no external input to the system since there is no actuator contributions to the system, that

57

Page 66: Project Antenna

6.6. Elevation and Cross-elevation Error Angular Velocity

can effect the movements in the pitch and roll axes.

Tilt

Rate gyro

Kalman

filter

z

z

xk^

Figure 6.30: Kalman filter overview

The description of the dynamic model of the system regarding tilt and rate gyro, will be based onthe syntax seen in equation 6.60 and 6.61, where equation 6.60 describes the states of the systemand equation 6.61 describes the measurement.

xk = Φ2,k−1xk−1 + wk−1 (6.60)

wk ∼ N (0, Q2)z = H2xk + vk (6.61)

vk ∼ N (0, R2)

In equation 6.62 to 6.69 the propagation of the wanted states and the measurements equationsare written. The relation between the angle states and the angular velocity states is a simpleintegration of the velocity to give the angle. The dynamic of the velocity states are the trivialdynamic, where xk = xk−1. This is since the actual disturbance system is unknown.

x5,k = x5,k−1 + x6,k−1Ts + w5 (6.62)

x6,k = x6,k−1 + w6 (6.63)

x7,k = x7,k−1 + x8,k−1Ts + w7 (6.64)

x8,k = x8,k−1 + w8 (6.65)

z5,k = x5,k + v5 (6.66)

z6,k = x6,k + v6 (6.67)

z7,k = x7,k + v7 (6.68)

z8,k = x8,k + v8 (6.69)

Equation 6.62 to 6.69 leads to a state space interpretation of Φ2 and H2, which can be seen inequation 6.70. H2 is a unity matrix, since all states are available for measurement.

Φ2 =

1 Ts 0 00 1 0 00 0 1 Ts0 0 0 1

H2 =

1 0 0 00 1 0 00 0 1 00 0 0 1

(6.70)

58

Page 67: Project Antenna

Chapter 6. Sensors

The variances for the measurement noise of the tilt and rate gyros, have been found through testsof the actual sensors. These variances are stated in equation 6.71. The variances of the processnoise are stated in equation 6.72.

R2 =

9.24e−5 0 0 00 9.5561e−6 0 00 0 9.24e−5 00 0 0 9.5561e−6

(6.71)

Q2 =

1e−8 0 0 00 1e−4 0 00 0 1e−8 00 0 0 1e−4

(6.72)

With these model definitions and the theory presented in section 6.5.1, it is possible to performan linear estimate of the states, with a linear Kalman filter.

Figure 6.31 shows the Kalman estimate of one of the tilt states, and three scenarios are shown.A: When integrating a velocity, it is possible to get the position, if the initial position is known.However, since no real life measurement is ideal, this can not practically be used, since an in-tegration of e.g a rate gyro signal with an offset - results in an erroneous tilt state. This can beseen in figure 6.31 A. Here the Kalman estimate is only based on a rate gyro measurement, toexpress the tilt state. The gyro measurement has been slightly offset and it is seen that the Kalmanestimate of the tilt state is not usable.B: This scenario is based on the problem in A and here the Kalman estimate is based on both ona tilt measurement and a rate gyro measurement. In this case the tilt sensor is modelled as havingideal dynamics to show the principle of using both sensors. Also here the rate gyro measurementis slightly offset. It is seen in figure 6.31 B, that the estimate of the tilt state is nearly ideal, thushaving measurement noise on both sensors.C: The third case is to simulate the estimate of the tilt state, when using the SCA100 accelerom-eter based tilt sensor, along with the rate gyro and a Kalman filter. In this case the tilt sensor isinfluenced by maximum acceleration(0,5g) and it can be seen in figure 6.31 C, that the measure-ment of the tilt angle in this case, is nearly twice the real tilt angle. With such a deviation of thetilt angle it is not possible to have a perfect Kalman estimate, still the estimate is considerablybetter than the measured tilt angle. Also in this case the rate gyro measurement has been slightlyoffset.The Simulink simulation can be seen in kalmantest.mdl on the CD.

The tangential acceleration influencing the SCA100T tilt sensor is not modelled in the Kalmanfilter. This causes that the Kalman model estimate and the measurement of the tilt state are notalike, which results in Kalman filter estimate that is not optimal. If integrating a model descriptionin the Kalman filter on how the acceleration influences the measurement, it is possible to havean optimal estimate of the tilt state. How the acceleration influences, is dependable on the radiusfrom the sensor placement to the axis of rotation.The satellite tracking antenna system is meant for placement on many kinds of ships and dueto that fact the radius is not known. However it could be possible to setup an adaption law tominimize the error due to the acceleration, and from this estimate the radius could be found.With a correct radius, it is possible to fully model the SCA100T tilt sensor.

The model output of the SH50056 tilt sensor has also been filtered with a Kalman filter to ob-tain an optimal estimate. The result of this is seen in figure 6.32. This sensor is however also

59

Page 68: Project Antenna

6.6. Elevation and Cross-elevation Error Angular Velocity

10 20 30 40 50 60-40

-20

0

20

40

time[s]

am

plit

ud

e [

de

g]

10 20 30 40 50 60 70

-20

0

20

time[s]

am

plit

ud

e [

de

g]

0 10 20 30 40 50 60 70-60

-40

-20

0

20

40

time[s]

am

plit

ud

e [

de

g]

Kalman estimateReal angle

Kalman estimateReal angle

Measured tiltKalman estimateReal angle

70

A

B

C

Figure 6.31: Kalman filter output:A: Tilt output based only on rate gyro with an offset.B: Tilt output based on rate gyro with an offset and a tilt measurement indicating real value.C: Tilt output based on rate gyro with an offset and a tilt measurement influenced by maximumtangential accelerations.

influenced by accelerations, and since it is a fluid based sensor type, this project have not beinglooking closer into modelling the acceleration contribution. This missing information about thesensor, results in that the estimate seen in figure 6.32, not is fully valid, since the model of theSH50056 tilt sensor does not contribute with any effect, due to acceleration.It can be seen that the Kalman estimate is able to compensate for the phase of the measurement.

30 35 40 45

-20

0

20

40

time[s]

ampl

itude

[deg

]

Real angleMeasured angleKalman estimate

50

Figure 6.32: Kalman filtering of the SH50056 tilt sensor, without acceleration contribution:

To show that the Kalman filter is able to have an optimal estimate of the tilt state, even if thestates does not start from zero, a simulation of this problem is illustrated in figure 6.33. It is seenthat the estimate at start, is based on the model, which is a integration of the gyro state. However

60

Page 69: Project Antenna

Chapter 6. Sensors

after a settling time of approximately 8 [s], the estimate is equal to the real state.

2 4 6 8 10 12 14 16

-60

-50

-40

-30

-20

-10

0

10

20

time[s]

ampl

itude

[deg

]

Rate gyro integratedKalman estimateReal angle

Figure 6.33: Kalman filtering of the SH50056 tilt sensor, without acceleration contribution:

61

Page 70: Project Antenna
Page 71: Project Antenna

Chapter 7Actuator

This chapter will consists of a description of the actuators mounted on the antenna system. Theactuators are three stepper motors, one on each axis of rotation.Earlier project group 03gr1030i, have been working with the exact same mechanical antennasystem, and preformed a well documented work regarding the actuators. The main results andconclusions of that work will be reused in this report.In the following there is a short description of the stepper motor, and a model of the stepper motorwill be derived and verified.Figure 7.1 shows the placement of the actuator system according to the surrounding items.

Software

driver

Power drive

(IMT 901)

Actuator

(Stepper motor )

Mechanical

system

PC Antenna system

Control signal

direction

Figure 7.1: Model of the actuator system

7.1 Stepper motor

A stepper motor is a motor which rotates in steps with a predetermined angle. When taking aboutstepper motors, the subject can be divided into three categories - variable reluctance(VR), perma-nent magnet (PM), and hybrid (HY) stepper motors.The variable reluctance stepper motor has no permanent magnet in the rotor, which means that itcan move without constraint, but on the other hand it has a low degree of motor torque.The permanent magnet stepper motor has a higher torque level, but operates typically at lowspeeds, and with big steps (45 - 90).The hybrid stepper motor principle combines the best from the variable reluctance and the per-manent magnet, which results in a stepper motor that can operate at high speed, has a high torquelevel and a high step resolution, due to teeth on both rotor and stator.

In the antenna system provided by SpaceCom A/S the actuators consists of two different modelsof hybrid stepper motors, two "Nanotec st4018m0706", and one "Mae HY200-2220". The Nan-otec motors are used on the elevation and cross-elevation axis, and the Mae motor is used on the

63

Page 72: Project Antenna

7.1. Stepper motor

azimuth axes. Both motor types has two phases (A and B) and 50 rotor teeth (Hr), which resultsin a step resolution of 1.8/step in full stepping mode. Full stepping means that the current in thephases goes from positive in A (A+) to positive in B (B+), A-, B- etc. To reverse the directionof the rotor the sequence must be reversed (B-, A-, B+, A+). To be able to give the input to themotor in the right order a power drive is used. If the power drive is able to variate the currentin the phases, e.g. half in each, then the step resolution can be increased to e.g. half steppingmode, forth stepping mode, etc. If the step mode is 10 or more, it is normally referred to as microstepping.The power drives to the stepper motors are of type "Nanotec IMT901", and is able to run up toeight stepping mode, making the rotor step resolution 0, 225/step.

7.1.1 Modelling a hybrid stepper motor

To be able to fully control the dynamics of the stepper motors, it is necessary to have a modeldescribing these dynamics. The input to the stepper motor is the terminal voltage supplied fromthe power drives, and the output is an angular velocity of the rotor. To describe the dynamics,models for both the electrical and mechanical part are needed. These will be derived in the thefollowing.

Electrical model

The dynamics of the electrical part of the hybrid stepper motor can be expressed as in equation(7.1) to (7.2), where vA(t) and vB(t) denotes the phase A and B terminal voltage.

vA(t) = RiA(t) + LdiA(t)

dt+ M

diB(t)dt

+ eA(t) (7.1)

vB(t) = RiB(t) + LdiB(t)

dt+ M

diA(t)dt

+ eB(t) (7.2)

The resistance is denoted R[Ω], L[H] is the inductance in the windings, M [H] the mutual induc-tance in the windings and i[A] the current in the winding. The mutual inductance is consideredsmall, compared to the inductance, and is for that reason left out of the equation in the following.The last contribution to the electrical part is the electro motive force (e.m.f.), which is denotedrespectively eA(t) and eB(t) for phase A and B.A more thoroughly explanation of the e.m.f. can be seen in equation (7.3) and (7.4).

eA(t) = Kmwhscos(hrθhs(t)) (7.3)

eB(t) = Kmwhssin(hrθhs(t)) (7.4)

The e.m.f. is a function of the rotor’s angular velocity (whs[rad/s]) and the rotor position(θhs),multiplied to the motor constant Km[vs/rad]. The e.m.f. is a function of velocity as it is inducedwhen the rotor is rotating. The contribution from the rotor position is approximated to a cosineof the rotor position multiplied to the number of rotor teeth (hr). Phase A and B is shifted π/2,hence the sine in eB(t).With these four equations (7.1 to 7.4), the electrical part of the hybrid stepper motor can bemodelled. In figure 7.2 a graphical implementation of these four equations can be seen.

64

Page 73: Project Antenna

Chapter 7. Actuator

Product

ProductProduct

Product

1s

Integrator

1s

Integrator

R

1/L

Km

Hr

R

1/L

Km

sin

cos

fhs

whs

fhs

whs

iA

iB

vA

vA

Hr

Figure 7.2: Electrical model of the hybrid stepper motor

Mechanical model

The torque acting on the rotor shaft is a contribution from the torque produced from phase A (τA)and B (τB), along with the negative torque contribution in form of viscous (τvic) and Coulomb(τst) friction. The resulting torque(τres) acting on the rotor shaft is expressed in equation 7.5.

τres = −τvic − τc + τA + τB (7.5)

The resulting torque on the rotor shaft can also be expressed as the moment of inertia (Jhs) of therotating parts, multiplied with the angular acceleration (αhs) of the rotor shaft, which is shown inequation 7.6.

τres(t) = Jhsαhs(t) = Jhsθhs(t) (7.6)

The negative torque contribution in form of the viscous friction is proportional with the angularvelocity (whs) of the rotor, and can be interpreted as a constant multiplied with the angular ve-locity. This is expressed in equation 7.7.The Coulomb friction which also has a negative torque contribution, to the resulting torque, issmall compared to the other contributions, and can be left out.

τvic(t) = Dhswhs(t) = Dhsθhs(t) (7.7)

When combining equation 7.5 to 7.7, we get an expression, as in equation 7.8, were the elementsare constants and angular velocity and acceleration, plus the contribution from τA(t) and τB(t).

Jhsdwhs(t)

dt= −Dhswhs + τA(t) + τB(t) (7.8)

The torque produced by the phases is a function of the position of the rotor and the holding torque.The position contribution is approximated as a sine, and is furthermore dependent on the phaseof either phase A or B.τphase (τA or τB) is described in equation 7.9, and the holding torque (τHT ), which is the motorconstant (Km) multiplied with the current, is shown in equation 7.10.

65

Page 74: Project Antenna

7.1. Stepper motor

τphase(t) = τHT (t)sin(hrθhs(t) − φw) (7.9)

τHT (t) = Kmiphase(t) (7.10)

The equations for the individual phases can be seen in equation 7.11 and 7.12. The extra contri-bution in τB (-π/2) is due to the fact that the phase of phase B is -π/2

τA(t) = −KmiAsin(hrθhs(t)) (7.11)

τB(t) = −KmiBsin(hrθhs(t) − π/2) (7.12)

When having equation 7.8, 7.11, 7.12, the modelling of the mechanical part is performed. Andas with the electrical part, also the mechanical part is presented in a graphical layout, which canbe seen in figure 7.3.

Product

Product

Product

Product

1s

Integrator

1s

Integrator

Dhs

-Km

-Km

Hr

-cos

Hr

sin

1/Jhs

iA

iB

fhs

whs

Figure 7.3: Mechanical model of the hybrid stepper motor

As can be seen in figure 7.2 the input to the electrical part is the voltage and the output is thecurrent. When looking at the mechanical part in figure 7.2 it is seen that current output fromthe electrical part is the input to the mechanical part. The output from the mechanical part isthe angular velocity, which completes the principle modelling of the hybrid stepper motor. Theremaining part is to determine the value of the constants from the equations (R,L,Km, Jhs,Dhs)These constants have been determined by experiments by group 03gr1030i and is found to be asin tabular 7.1.1. Jhs is found in the respective data sheets for the stepper motors and not byexperiments.

HS model R[Ω] L[H] km[v· s/rad] Jhs[kg· m2] Dhs[Nm·s/rad]

ST40180706 21 34 · 10−3 0, 73 48 · 10−7 4 · 10−3

HY200-2220 11 35 · 10−3 0, 60 124 · 10−7 8 · 10−3

Table 7.1: Constants used in the model of the hybrid stepper motor.

In appendix C a brief description of the principle of the experiments to determine the constantscan be seen.

66

Page 75: Project Antenna

Chapter 8F77 Antenna model

From a control point of view, a model describing the physical system, is to prefer. The descriptionof the behavior of the system, gives a deeper understanding of both the physical system, but alsoa more clear view of the control problem. When having a model it gives the opportunities ofperforming model-based control, and also to perform realistic simulation scenarios, shorteningtotal developing time.This chapter will consists of a derivation of a model of the provided F77 antenna system. Themodel theory will be presented and results provided by project group 03gr1030i, will be discussedand verified.

To fully describe the system, the model must consist of both a dynamic, and a kinematic part.The dynamics describe the response of the system from a force acting on the system, whereas thekinematics describe the motion of the system, without regard to the force that cause it.

Dynamics kinematics

F=ma

N=Iw

v

w

s

Figure 8.1: Relationship between the dynamic and kinematic part of the model

8.0.2 Manipulator Kinematic description

The kinematic description of the antenna system, will in the following be presented according tothe theory presented in [Craig, 1989].The F77 antenna system provided has three degrees of freedom, azimut, elevation and cross-elevation axes, realized with three revolute joints. These joint are connected with links, andby manipulating these, the antenna can move in R

3. To be able to describe the movements ofthe links, relatively to a fixed coordinate system, each link is attached with a coordinate sys-tem(frame), starting with the non-moving base of the manipulator "frame(0)". At the end of thechain of links is the end-effector, in this case the antenna element, also named "the tool frame".By use of these frames it is possible to compute the position and orientation of the end-effectorrelative to the base frame. The information needed to compute these parameters are the linklength "a", the link twist "α", the link displacement "d", and the joint angle "θ". A graphicaldescription of the parameters can be seen in figure 8.2.

67

Page 76: Project Antenna

Link i -1

Axis i Axis i - 1

zi-1

di

Yi-1

Xi-1

αi-1θi

Yi

Xi

zi

Link i

a

Figure 8.2: Relationship between the link and joint parameters

The frames attached to the links, are attached according to the Denavit-Hartenberg notation, andthe result of this placement can be seen in figure 8.3. The four parameters describing the links onthe antenna system are listed in table 8.1. The frame assignment on the antenna can also be seenin figure 3.5.

x

y

z

z

y

y

z

x

x

Base frame

Azi frame

E frame

CE frame

Figure 8.3: frame attachment on the antenna system

i αi−1 ai−1 di θi

1 0 0 0 θ1

2 -90 0 l1 θ2

3 -90 l2 0 θ3

Table 8.1: Link parameters

To map a position vector defined in frame(i+1), according to frame(i), two parameters must

68

Page 77: Project Antenna

Chapter 8. F77 Antenna model

be known. The rotational matrix (ii+1R), defining the rotation about the three axes to rotateframe(i+1) into the same orientation as frame(i), and also a vector which locates the origin offrame(i+1) according to frame(i), noted (iPi+1). Having a point ρ defined in frame(i+1) its posi-tion according to frame (i), can be found from equation 8.1.

iρ =ii+1 R i+1ρ +i Pi+1 (8.1)

The interpretation of the 3 × 3 rotation matrix is shown in equation 8.2, and the 3 × 1 vectorlocating the origin of frame(i+1) relative to frame(i) is given in equation 8.3.

ii+1R =

cos(θi+1) −sin(θi+1) 0

sin(θi+1)cos(αi) cos(θi+1)cos(αi) −sin(αi)sin(θi+1)sin(αi) cos(θi+1)sin(αi) cos(αi)

(8.2)

iPi+1 =

ai

−sin(αi)di+1

cos(αi)di+1

(8.3)

Since the map transform always consists of both equation 8.2 and 8.3, a 4 × 4 transformationmatrix(ii+1T ) can be set up including these. The forth row in the transformation matrix, consistsof three zeros and a one, to ensure a homogeneous transform. The principle of the transformationmatrix can be seen in equation 8.4.

ii+1T =

[ii+1R

iPi+1

0 0 0 1

](8.4)

When inserting the link parameters defined in table 8.1, into equation 8.4, we are able to definethe transformation matrices between each link in the system. These transformation matrices forthe antenna system links, can be seen in equation 8.5 to 8.8.

01T =

cos(θ1) −sin(θ1) 0 0sin(θ1) cos(θ1) 0 0

0 0 1 00 0 0 1

(8.5)

12T =

cos(θ2) −sin(θ2) 0 00 0 1 0

−sin(θ2) −cos(θ2) 0 l10 0 0 1

(8.6)

23T =

cos(θ3) −sin(θ3) 0 l20 0 1 0

−sin(θ3) −cos(θ3) 0 00 0 0 1

(8.7)

03T = 0

1T · 12T · 2

3T (8.8)

69

Page 78: Project Antenna

8.1. Dynamic description

8.1 Dynamic description

The study of the antenna system has until now, been to describe the kinematic motion of thesystem. In this section, the focus will be on the dynamical part, which can be divided into twoparts. The first part, also known as inverse dynamics, is where a trajectory point is given, and theproblem is to find the required joint torque. The second part is the opposite, where the joint torqueis given, and the topic is to find the resulting motion. The first part is useful for controlling thesystem, since it deliverers information about how to control the actuators to follow a trajectorypoint. From a simulation viewpoint, the second part is advantageous, since it reveals what motionyou can accomplish with a given joint torque. The first part containing information about torquerequired to follow a trajectory point, is what will be elaborated on in the following.

8.1.1 Iterative Newton-Euler formulation

With the knowledge of the kinematics, and mass distribution of the antenna system, it is possibleto calculate the required torque to cause motion[Craig, 1989]. The algorithm for computing therequired torque, will in the following shortly be described. The algorithm consists of two iterativeparts, an outward iterative part to compute velocity and acceleration, and an inward iterative partto compute force and torque.

Outward iterations

As the name implies, outward iterations are iterations on the links, starting with link 1, and"outward" to link n. The purpose of these iterations are to compute the angular velocity, the linearand angular acceleration of the center of mass of each link, as well as the force and torque on eachlink. The outward equations to the algorithm are presented in equation 8.9 to 8.14[Craig, 1989].

i+1ωi+1 = i+1i R iωi + θi+1

i+1Zi+1 (8.9)i+1ωi+1 = i+1

i R iωi + i+1i R iωi × θi+1

i+1Zi+1 + θi+1i+1Zi+1 (8.10)

i+1vi+1 = i+1i R (iωi × iPi+1 + iωi × (iωi × iPi+1) + ivi) (8.11)

i+1vci+1 = i+1ωi+1 × i+1Pci+1 + i+1ωi+1 × (i+1ωi+1 × i+1Pci+1) (8.12)

+ i+1vi+1

i+1Fi+1 = mi+1i+1vci+1 (8.13)

i+1Ni+1 = ci+1Ii+1i+1ωi+1 + i+1ωi+1 × ci+1Ii+1

i+1ωi+1 (8.14)

i+1ωi+1 is the angular velocity of frame(i+1),i+1ωi+1 is the angular acceleration of frame(i+1),i+1vi+1 is the linear acceleration of frame(i+1),i+1vci+1 is the linear acceleration of the center of mass of link(i+1),i+1Fi+1 is the force acting on the center of mass of link(i+1),i+1Ni+1 is the torque acting on the center of mass of link(i+1).i+1i R is the 3×3 rotation matrix.iPi+1 is the 3×1 vector indicating the origin of frame(i+1) relative to frame(i).i+1Pci+1 is the 3×1 vector locating center of mass of link(i+1) relative to frame(i+1).

70

Page 79: Project Antenna

Chapter 8. F77 Antenna model

ci+1Ii+1 is the inertia tensor from center of mass of link(i+1)

The angular velocity and acceleration for the base frame(ω0 and ω0) are both equal to zero, sincethis is our reference frame. To introduce the influence from gravity into the algorithm,0v0 can beset equal to G, where G being the gravity vector. This is equivalent to saying that the base frameof the system is accelerating upwards with 1G, which causes exactly the same effect on the links,as gravity[Craig, 1989].

Inward iterations

Computation of the inward iterations, has the purpose of computing the joint torques, based onthe computations from the outward iterations. Inward implies that the iterations starts from linkn, and "inward" to link 1. The inward equations to the algorithm are presented in equation 8.15to 8.17[Craig, 1989].

ifi = ii+1R

i+1fi+1 + iFi (8.15)ini = iNi + i

i+1Ri+1ni+1 + iPci × iFi + iPi+1 × i

i+1Ri+1fi+1 (8.16)

τi = inTi

iZi (8.17)

ifi is the force exerted on link(i) by link(i+1)ini is the torque exerted on link(i) by link(i+1)τi is the joint torque on link(i)

The values of the link weight and length, the vector indicating center of mass (iPci) and thecenter of mass inertia tensor (ciIi) can be seen in section 8.1.3.

8.1.2 Friction contribution

The joint torque results from the iterations, can symbolically be rewritten into equation 8.18[Craig, 1989], which includes the following for a three link system - M(θ), as being a 3×3 massmatrix of the system. V (θ, θ) is an 3×1 vector of centrifugal and Coriolis terms, and G(θ) beingan 3×1 vector describing the gravity terms.

τ = M(θ)θ + V (θ, θ) + G(θ) (8.18)

Equation 8.18 describes the torque required for an ideal system regarding frictions. In mostsystems with rotational elements, frictions in form of both Coulomb and viscous friction appear,respectively named Fc(θ) and Fv(θ). Coulomb friction appearing as the friction which must beresisted before any movement can be achieved, and the viscous friction representing the frictionpresent when movement is preformed. The viscous friction is proportional with the velocity ofthe system element. When including these elements in the required torque equation, it can berepresented as in equation 8.19.

τ = M(θ)θ + V (θ, θ) + G(θ) + Fv(θ) + Fc(θ) (8.19)

71

Page 80: Project Antenna

8.1. Dynamic description

Fc(θ) and Fv(θ) can be expressed as in equation 8.20 and 8.21, where C and D are 3×3 matricescontaining parameters for respectively Coulomb and viscous friction.The rewriting of equation 8.19 can be seen in equation 8.22

Fc(θ) = C · sign(θ) (8.20)

Fv(θ) = D · θ (8.21)

τ = M(θ)θ + V (θ, θ) + G(θ) + C · sign(θ) + D · θ (8.22)

Equation 8.22 express the torque required to the system, with a certain user defined velocity.

8.1.3 Antenna Parameters

Project group [03gr1030i, 2003] which has been working with the same F77 antenna system,has performed multiple tests on the antenna system, to determine the viscous and Coulomb fric-tion, and also the inertia of the system. Furthermore they have also disassembled the system tomeasure the individual items in the system, for use in the kinematic and dynamic equations pre-viously described. The results of that work are presented in appendix F. Their work have beenevaluated and is found satisfactory. Based on this result it is evaluated that the conclusions statedby [03gr1030i, 2003] regarding the maximum acceleration and velocity the stepper motors arecapable of performing, are correct. It is here stated that the maximum acceleration and velocityof the antenna plate is as follows.

• Maximum acceleration is 10 [rad/s2]

• Maximum velocity is 1 [rad/s]

These values of max acceleration and velocity are valid for all the stepper motors (Azimuth, Ele-vation and Cross-elevation). The values stated, all have a great margin to the absolute maximumvalue, meaning that the stepper motors will perform as the given input under all conditions, whendriven within the limits stated. If the stepper motors are held under these limitations, then thetorque delivered by the stepper motors is exactly the needed torque to ensure synchronizationbetween the given number of steps to the actuator and the number of steps moved. This meansthat the dynamics of the antenna can be left out, when operation the stepper motors within thespecified limits.

72

Page 81: Project Antenna

Chapter 9Kinematics

9.1 Kinematics

To get an overview of all the kinematics used in this project, this chapter will summarize thekinematic variables and specify where and why all the kinematics are needed. The F77 antennasystem is a mechanical system with 3 degrees of freedom and is placed aboard a ship also with3 degrees of freedom. The antenna element, which is to be controlled, is placed in one frameand the disturbance is defined in another - furthermore the sensors and actuators of the antennasystem are located in different frames of the system.

The disturbance from the ship motions, will be described as a velocity vector, ωb, with a directionthat indicates the principal axes of rotation of the angular velocity, and the length of the vectordescribes the angular velocity of the disturbance about the principal axis. This vector will be givenin the body-fixed frame, and is rotated to the SAT frame (will be described later) to perform akalman filtering of the elevation and cross-elevation error angles.

The controller output will be given as an acceleration vector in the body-fixed frame and rotatedto the actuators in the azimuth frame, the elevation frame, and the cross-elevation frame.

In figure 9.1 the three categories of kinematic rotations is illustrated.

Pitch

Angle

Roll

Angle

Yaw

Angle

Azimuth

Angle

Elev.

Angle

C-elev.

AngleSat. Elev.

Angle

Sat. C-elev.

Angle

Body (ship)

Kinematics

Antenne

Kinematics

Satellite Vector

Kinematics

θpφp ψp θazi θelev θc-elev θeϕe

Stability Frame Body Frame Cross-elevation Frame SAT Frame

Figure 9.1: Overview of the three classes of kinematic rotation used in this report.

The body kinematics uses the euler angles, φ, θ, and ψ to describe the orientation of the bodyframe with respect to the stability frame. With these three angles it is possible, by body kinemat-ics, to rotate any vector from the stability frame to the body frame and vise versa.

73

Page 82: Project Antenna

9.1. Kinematics

The antenna kinematics makes it possible to rotate any vector from the body frame to frame 3,also defined as the antenna element frame. This is done by the three joint angles: θazi, θelev, andθc−elev.

When using satellite vector kinematics, it is possible to express the angular velocity of the orien-tation error, Oe. To do so, the two angles elevation (ϕe) and cross-elevation (θe) are needed.

In the following section these three rotations will be described in details.

9.1.1 Body Kinematics

Angular Velocity Transformation

The pitch, roll and yaw angular velocities (ωb) are defined as rotation velocities around the x,yand z axes of the body-fixed frame, whereas the velocities of the euler anglesΘ are the velocityof the body-fixed frame with respect to the stability frame. For this reason ωb can not be directlyintegrated to obtain the actual euler angles.

Consider the body-fixed velocity vector ωb = [p,q,r] and the euler rate vector Θ = [φ, θ, ψ].The angular rates are related through a transformation matrix TΘ(Θ) where the argument Θ =[φ, θ, ψ].

Θ = TΘ(Θ)ωb (9.1)

By inspection the transformation matrices can be derived

T−1Θ (Θ) =

1 0 −sin(θ)

0 cos(φ) cos(θ)sin(φ)0 −sin(φ) cos(θ)cos(φ)

(9.2)

TΘ(Θ) =

1 sin(φ)tan(θ) cos(φ)tan(θ)

0 cos(φ) −sin(φ)0 sin(φ)sec(θ) cos(φ)sec(θ)

(9.3)

By expanding equation 9.1 differential equations for the euler angles and thereby the attitude ofthe ship-fixed frame appears.

φ = p + qsin(φ)tan(θ) + rcos(φ)tan(θ) (9.4)

θ = qcos(φ) − rsin(φ) (9.5)

ψ = qsin(φ)cos(θ)

+ rcos(φ)cos(θ)

, θ = ±90[deg] (9.6)

It should be noted that these differential equations only are valid for pitch angles θ of ± 90[deg] and that the transform matrix T−1

Θ (Θ) = TΘ(Θ). For surface vessels these assumptions

contributes with no limitation, however cause should be taking into account when using thistransform in underwater vehicles or aircrafts.

Euler Angle Transformation

Having a velocity vector, ωb, given in the body-fixed frame, it is possible by the euler anglerotation matrix, to rotate the vector and thereby be expressed with respect to the stability-frame.

ωss,b =s

b R(Θ)ωbs,b (9.7)

74

Page 83: Project Antenna

Chapter 9. Kinematics

The rotation matrix nb R(Θ) expresses the rotations of a vector from the body-fixed frame to the

stability-frame.

The euler rotation matrix can be calculated as a multiplication of three one axis rotation aroundthe tree principal axes x, y ,and z. These rotations can be seen in equation 9.9

Rx,φ =

1 0 0

0 cφ −sφ0 sφ cφ

(9.8)

Ry,θ =

cθ 0 sθ

0 1 0−sθ 0 cθ

Rz,ψ =

cψ −sψ 0

sψ cψ 00 0 1

(9.9)

this yieldssbR(Θ) = Rz,ψ · Ry,θ · Rx,φ (9.10)

when using the zyx-convention. The euler rotation matrix, bsR, that rotates a vector from the

stability-frame to the body-frame can mathematically be described as the inverse transformationas:

sbR(Θ)−1 =b

s R(Θ) = Rx,φ · R

y,θ · Rz,ψ (9.11)

9.1.2 Satellite Vector Kinematics

As discussed in section 6.5 the orientation error velocity ωOe is not available for measurement.The orientation error velocity is defined as the error angle between the SAT vector and the bore-sight vector of the antenna element. However, the angular velocity is needed to obtain a goodperformance in the kalman filter, hence obtain a good squint state (Oe). The orientation error,Oe is defined by two angles: elevation error angle, ϕe, and cross-elevation error angle,θe. ϕe isdefined as the angle between the SAT vector and the xz-plane in the cross-elevation frame, whileθe is defined as the angle between the SAT vector and the xy-plane in the cross-elevation frame.This is illustrated in figure 9.2.

The determination the ϕe and θe angles can be done by a projection of the SAT vector onto thexz-plane and to the xy-plane of the cross-elevation frame. However, the angles can also be de-termined by a projection of the SAT vector onto the x-axis if the ysat and the zsat component areignored separately in the SAT vector, when determining the ϕe and θe error angles respectably.The two new vectors where the ysat and zsat is ignored is denoted: Esat and CEsat, see deffinition9.12. The angle between the Esat vector and the x-axis of the cross-elevation frame is the eleva-tion error angle,ϕe, and the angle between the CEsat vector and the x-axis of the cross-elevationframe is the cross-elevation error angle, θe.

ESAT =

xsat

0zsat

and CESAT =

xsat

ysat

0

(9.12)

75

Page 84: Project Antenna

9.1. Kinematics

The two angles can now be found by simple use of the dot product rule:

X • Y = |X||Y|cos(θ) (9.13)

where θ is the angle between the two vectors X and Y.

As earlier stated, the angle between ESAT and the unit vector of x-axis direction in the cross-elevation frame is equal to the angle between the SAT vector and the xz-plane in the cross-elevation frame.

The elevation error angle, ϕe, can be calculated as:

ϕe = arc cos

(xc−elev • ESAT

|xc−elev||ESAT|)

(9.14)

where

xc−elev =

1

00

(9.15)

The cross-elevation error angle, θe can now be calculated

θe = arc cos

(xc−elev • CESAT

|xc−elev||CESAT|)

(9.16)

Orientation Error Velocity

Since the orientation error velocity, ωOe , is not directly available for measurement, the measurableangular velocity of the base frame (rate gyro measurement) and the actuator velocity in all joints(integration of the actuator input), is used to describe the velocity of the SAT vector in the cross-elevation frame - this is possible if all the joints- and euler angles are known, which is the case forthe F77 antenna system. It is important to remember that the satellite position, and thereby theSAT vector direction is static in the stability frame with the assumption that the distance to thesatellite is much larger that the translatory movement of the antenna element. Thus, the angularvelocity of the SAT vector, with respect to the cross-elevation frame, is equal to the velocity ofthe orientation error, Oe, in the cross-elevation frame.

Until now the kinematic rotation from the stability frame to the body frame, bsR, and from the

body frame to the cross-elevation frame (antenna element frame),3bR, has been discussed.

If the SAT vector and the boresight vector coincides it is possible, by a kinematic rotation fromthe body fixed frame and the cross-elevation frame of the angular velocity ωb

s including all jointvelocities, ωact, to describe the angular velocity of the Orientation error.

ωOe can by described as

ωOe = ωactuator + ωbody = R1ωact + R2ωb (9.17)

where ωactuator is the actuator contribution and ωbody is the body contribution to the Orientationerror velocity - in this report denoted ωact and ωb.

However, if the SAT vector does not coincides with the boresight vector, the rotation of ωbs to the

cross-elevation frame, will miss the information of the deviation between the SAT vector and theboresight vector, hence the elevation and cross-elevation error angles.

76

Page 85: Project Antenna

Chapter 9. Kinematics

Satellite Direction Vector

(SAT vector)

Elevation Axis

Cross-elevation Axis

Satellite Direction Vector

(SAT vector)

Normal Vector to Antenna

Element

(Boresight Vector)

z

xy

yz

x

Cross-elevation frame

Satellite frame

ϕe

θe

Normal Vector to the Antenna Element

(Boresight Vector)

Figure 9.2: Definition of the orientation error angles elevation ϕ e and cross-elevation θe.

To prevent this lack of information a new coordinate system is needed. The xsat-axis of thenew frame is attached to the SAT vector, and the ysat and zsat indicates the elevation and cross-elevation angles between the SAT vector and the boresight vector, as illustrated in figure 9.2.When the boresight vector coincides with the SAT vector the SAT frame coincides with the cross-elevation frame.

The rotation from the cross-elevation frame to the SAT frame, is performed by two principalrotations about the z and y axis with the zyx-convention.

sat3 R(Θ) = R

y,θceR

z,ψe(9.18)

where

Rz,ψe =

cos(ψe) −sin(ψe) 0

sin(ψe) cos(ψe) 00 0 1

Ry,θce =

cos(θce) 0 sin(θce)

0 1 0−sin(θce) 0 cos(θce)

(9.19)

Is is now possible to rotate the angular velocity, ωbb, from the body fixed frame to the SAT frame.

The contribution from the actuators must also be considered. This is done by adding the angularvelocity of the i’th joint to ωi

b. As an example the angular velocity vector in the azimuth framebecomes

ω1b =1

0 Rω0b + k ωazi (9.20)

where

k =

0

01

The velocity of orientation error then becomes

ωOe =SAT3 R(k ωc−elev +3

2 R(k ωelev +21 R(k ωazi +1

0 Rω(Θ)))) (9.21)

77

Page 86: Project Antenna

9.1. Kinematics

Advantages and Disadvantages Introduced by the SAT Frame

This subsection will discus the advantages and disadvantages by including the rotation matrix,satce R,

thus the SAT frame.

The actual direction of the SAT vector is unknown, however the squint sensor is able to mea-sure these angles with respect the the cross elevation frame. This means that the kinematicrotations,sat

ce R , of angular velocity of the orientation error, ωOe is based on measurements fromthe squint sensor. This basically means that the squint sensor measurement will be used to rotatethe angular velocity of the Orientation error angles to the SAT frame. Therefore a cross couplingbetween the squint sensor and the gyro measurement is introduced.

Appendix E on page E147 describes the error introduced if the sat frame is left out and thefollowing assumption is made:

Assumption 1:The Orientation error angles are small and for this reason the kinematic rotationfrom the cross-elevation frame to the SAT frame are neglected.

The worst case error introduced by assumption 1 is shown in table 9.1, with the two Orienta-tion error angles 1 [deg] and 3 [deg] for both elevation and cross-elevation errors. For furtherinformation about the result, see appendix E on page E147.

Condition Error VelocityOe[deg] ωOe [deg/s] εe[deg/s] εce[deg/s]

[11

] 10.3

23.50

0.41 0.19

[33

] 10.3

23.50

1.22 0.6

Table 9.1: Error in velocity rotation introduced by the assumption in appendix E.

It can be seen that the error introduced is small compared to the magnitude of the velocity vectorrotated to the SAT frame. However, this assumption must be seen in contrast to the error intro-duced if the squint measurement is used for kinematic rotations. The squint measurement will notbe exact, and noise will be introduced to the rotation matrix. The accuracy, dynamic and noise ofthe squint sensor have exhaustive been analyzed in chapter B on page B139.

In figure 9.3 a plot of the actual angular velocity of the Orientation error, the angular velocity ofthe orientation error when using assumption 1, and finally the angular velocity of the orientationerror when using the squint sensor for the kinematic rotation.

78

Page 87: Project Antenna

Chapter 9. Kinematics

0 2 4 6 8 10 12 14 16 18

−10

−8

−6

−4

−2

0

2

4

6

8

10

Time [s]

Ang

ular

Vel

ocity

[deg

/s]

Orientation Error Velocity in theSAT frame using the squint angle

Orientation Error Velocity in theCross−elevation frame

Orientation Error Velocity in theSAT frame

Figure 9.3: Plot of the actual angular velocity of the Orientation error, the angular velocity of the orientationerror when using assumption 1, and finally the angular velocity of the orientation error whenusing the squint sensor for the kinematic rotation.

From figure 9.3 it can be concluded that the optimal way of describing the velocity vector of theorientation error, must be to introduce the SAT frame, and use the squint sensor measurement forthe kinematic rotation is shown.

79

Page 88: Project Antenna
Page 89: Project Antenna

Chapter 10Control Strategy

This chapter will discuss the control strategy in this project and define which parts of the controlstrategy, and what will be in the scope of this project.

10.1 Control Principle

To be able to track the satellite signal from an Inmarsat geostationary satellite, onboard a ship,multiple elements of control can be performed. Since the main disturbance influencing the systemis from the ship’s movements caused by waves, a controller which can attenuate this disturbanceas much as possible, would be to prefer, as an optimal attenuation of all the disturbances resultsin zero error in orientation of the antenna element.Other terms than disturbances caused by the waves, can result in an orientation error of the an-tenna element, this can e.g. be when the ship moves translatory. This "disturbance" is very smallsince the distance moved is insignificant, relative to the radius to the satellite. The disturbance inthis case, is that the angle to the satellite seen from the ship, slowly changes as the ship sails.

It is chosen to use the internal model principle for the controller part regarding disturbance at-tenuation of the wave generated disturbances. This choice is based on, that the internal modelprinciple can assure a robust performance and a tracking error which asymptotically decays to-wards zero. To ensure these properties a model of the disturbance is needed. The dynamicsof the disturbance must be within a known family of functions. This will de discussed in thedevelopment of the internal model based controller.

To have an optimal attenuation of all disturbances, a controller part which attenuates the contribu-tion from disturbances that are not caused by wave influence, must also be developed. This finalsatellite tracking control, will be performing as a "fine tuning", based on the squint sensor, thatmeasures the actual error angles of the orientation of the antenna plate. For the satellite trackingcontrol, classic control principles will be suitable to obtain an acceptable performance.The principle of having a main disturbance attenuation controller and secondly a tracking con-troller, is the main control strategy in this project. This control strategy, is illustrated in figure10.1.

The final tracking control will only be briefly discussed and not developed. This tracking controlpart is found to be a standard control problem, whereas the internal model approach, presents"control ideas", that this project group have not been working on previously. This means that

81

Page 90: Project Antenna

10.1. Control Principle

the main focus, will be on the development of the disturbance attenuation controller, using theinternal model properties.

SatelliteTracking

Stabilizer

Internal Model

y u

Internal Model Control

Satellite Tracking Control

Figure 10.1: The control strategy, which is split into two parts - a disturbance attenuation (internal modelcontrol), and a tracking control.

The internal model control part in figure 10.1, which is meant as a disturbance controller, is splitinto two. The principle of the internal model controller is to have a part that compensates for thedisturbance, via a model of this disturbance, hence the name "internal model". Secondly there isa stabilizer part that is capable of following a reference. In this case the reference for this controlpart is zero, since the internal model controller, must attenuate the disturbance, which must bebrought to zero.When looking into the structure of the internal model controller, then it can be stated that it isboth able to perform a disturbance attenuation and a tracking, since there is both a disturbanceand a stabilizing part. This is true, but in this case, it is chosen to have the disturbance attenuationcontroller in the base frame, were the disturbances as they influence on the ship, are measurable.Similar with the tracking controller, it is chosen to have this placed were the squint sensor is ableto measure the error angles in the orientation of the antenna plate.

Gyro/Tilt

sensor

Dist.

Controller

Tracking

controller

Squint

sensor

Kinematic

Rotation

Body frame Antenna plate frameStability frame

Kinematic

Rotation

Figure 10.2: Overview of stability, body and antenna plate frame, and placement of sensors and the twocontrollers.

Figure 10.2 shows in which frames the sensors have their physical placement, and in which framesthe two controllers will output actuator contributions.

82

Page 91: Project Antenna

Chapter 10. Control Strategy

10.1.1 Disturbance Attenuation Controller

The control strategy for compensation of the disturbance acting on the system, is to use theInternal Model Principle, where having a model of the disturbance system, makes it possible topreform a compensation of this disturbance.If it is possible to perform a perfect compensation of the disturbance acting on the ship, thenthe antenna plate, seen from an initial frame, will have the same orientation, with respect tothe satellite. Then the propagation of the error between the antenna plate orientation and thesatellite will be zero. This means that a total compensation of the disturbance, will basicallysolve the tracking of the satellite, when the ship stays within a geographic limited area, where thechange in the angle to the satellite is small. This can be stated, since the Inmarsat satellite is ageostationary satellite.The actuators available to compensate for the disturbance are placed on the antenna system, andit is with these, that the compensation of the disturbance must be performed, thus the disturbanceis acting on the body fixed frame.It is decided to mount two rate gyros on the antenna base frame. The base frame has a fixedorientation with respect to the body frame, and with this placement of the rate gyros, they are ableto measure angular velocities in the body axes, i.e. the disturbances. Since the main contributionsto the disturbance are in pitch and roll axes, the rate gyros will be placed in these axes. The controlstrategy regarding the compensation of disturbances, is now to model the disturbance acting inthe pitch and roll axes, and design a controller which will be able to perform a compensationbased on the measurements of the disturbance contribution in pitch and roll axes.If actuators where available to perform rotations around the pitch and roll axes in the base frame,the compensation could be placed in this frame to stabilize the base frame, meaning that theoutput from the controller would be given to these actuators, and the antenna system would alsoin this case, seen from an initial frame, have the same fixed orientation. Even though there areno actuators available to perform rotation in the pitch and roll axes, the controller could still beacting in the base frame, outputting fictive actuator input to stabilize a "controllable" frame. Infigure 10.3 the definition of the controllable frame is visualized. The figure only illustrates thescenario of having a disturbance in one axis, in this case the disturbance is rotation around thepitch axis. For a disturbance in roll or yaw, the principle is also valid.

X (roll)Y (pitch)

Z (yaw)

Controllable frame

θc

θθbe

Body fixed frameBody fixed frame

Stability frame

Figure 10.3: Definition of controllable frame, contra body fixed and stability frame. (θ be = θ − θc)

As can be seen in figure 10.3, θbe = θ − θc, where θ is the angle from the stability frame to thebody frame and θc is the angle of the fictive actuator in the pitch axis, based on the input given tothis actuator. θbe describes the contribution from the disturbance that have not been compensatedby the disturbance attenuation controller.

83

Page 92: Project Antenna

10.1. Control Principle

Equation 10.1 shows the kinematic relationship between the stability frame, the controllableframe and the body frame.

bsR(θ) =c

s R(θbe)bcR(θc) (10.1)

To perform a real life compensation, instead of the fictive scenario in the body frame, thesefictive actuator input must be rotated up in the antenna system, via frame rotations. The antennaactuators, in elevation and cross-elevation, will now receive components from the fictive pitch androll input, with respect to their positions in the antenna frames. These components in elevationand cross-elevation will compensate for the disturbance acting on the pitch and roll axes.The advantages of having this part of the controller placed in the body frame, are that it is inthis frame, that the disturbance influences the system, and also here that the measurement of thedisturbance is performed. Furthermore when working with the internal model principle, then itis a necessity to have a model describing the disturbance. This model can for ships be seen as amodel consisting of multiple sinusoids, when looking at the base frame[Perez and Blanke, ].If this disturbance were rotated up in the antenna system via kinematic rotations, then the modelof the disturbance would be as the original model, but filtered with a nonlinear time varying filter,depending on the actual joint angles in the antenna system. For this reason it is chosen to havethe controller of the disturbances placed in the body frame, where a realistic model descriptionof the disturbance can be expressed.

Internal Model Based Control

When choosing the control principle for a system, many consideration must be taken into ac-count. In this project many of these considerations have been regarding the disturbances actingon the system, since this is the primarily source of getting an error in the orientation of the an-tenna system, regarding the satellite signal. The disturbances acting on a ship, are not known atany time, but they are known to belong to a set of disturbances specified by Inmarsat, see table3.1With a disturbance scenario as this, the internal model principle has great advantages, since it foran unknown disturbance, however known to belong to a set of known disturbances, is able to en-sure asymptotic decay to zero of the tracking error, when having a model of the known set of dis-turbances. Furthermore the internal model principle is robust and is able to ensure robustness withparameter uncertainties in the system model and with an unknown disturbance[Alberto Isodori, 2003].

10.1.2 Satellite Tracking

If the disturbance attenuation controller has an optimal control output, regarding the disturbanceand the ship stays within a geographic limited area, then automatically the satellite is tracked.This is however not possible since the disturbance attenuation controller only measures the maincontributions of the total disturbance (pitch and roll), and not any disturbance in the yaw axis. Themissing disturbance information can however be measured by the squint sensor. The output fromthis sensor can be used to track the satellite signal, and this controller can be based on classicalcontrol principles, which this project evaluates will have an acceptable performance in this case,where the satellite tracking consists of a "fine tuning" of the orientation error.

84

Page 93: Project Antenna

Chapter 11Internal Model Controller Design

In the following chapter the design of an Internal Model Based Controller will be carried out.The new design philosophy in internal model based control, is to ensure robust asymptotic track-ing and/or disturbance attenuation in guidance or stabilizing applications, with highly uncertainconditions. However this advanced nonlinear control principle is out of the scope of this project,and for this reason the philosophy of the internal model based control, will be implemented usinglinear control principles.

The F77 antenna system will be modelled as a linear system including both system dynamics andactuator dynamics. The controller will be a linear robust controller with an internal model thatattenuate disturbances from waves, wind etc. in the pitch and roll axis. This excludes disturbancesfrom turning and yawing. Since the parameters of the internal model changes over time, it isnecessary to adapt these online.

As presented earlier, the entire system itself is very easily modelled, as a result of the used actu-ators (stepper motors) which cancels out all system dynamics, as long as the velocity and accel-erations do not exceed the actuator limitations.

11.1 System Description

Consider the following time invariant system of the form

x(t) = Ax(t) + Bu(t) + Pw(t)y(t) = Cx(t) + Qw(t)e(t) = Cex(t) + Qew(t) (11.1)

Where x(t) ∈ Rn is the state vector, u(t) ∈ Rm is the control input, w(t) ∈ Rr is the disturbanceinput, y(t) ∈ Rp is the measured output, and e(t) ∈ Rq is the tracking error. The matrix A containsthe unforced system dynamics, B contains the input dynamics, P contains the disturbance effecton the system states, C contains the output dynamics from the states and Q contains the feedforward from the disturbance w. A graphical representation can be seen in figure 11.1.

85

Page 94: Project Antenna

11.2. Controller Description

1s

Q

C

A

P

BOutput (y)Input (u)

Disturbance (w)

Figure 11.1: State space representation of the F77 antenna system with disturbance.

The disturbance, w, e.g. caused by the ship motions with respect to the stability frame, is gener-ated by waves, wind, ocean current etc. These disturbances can be described as an autonomouslinear time-invariant system, often called a exosystem of the form

w = Sw (11.2)

Where S is a matrix or matrix function describing the propagation of the disturbances. S can takeany form (even nonlinear) and any dimension, but is often within a family of functions. If it isassumed that it is possible to propagate the disturbance with two sinusoidals, the propagation canbe described with S of the form

S =

0 Ω1 0 0−Ω1 0 0 0

0 0 0 Ω2

0 0 −Ω2 0

(11.3)

where Ωn is the frequency of the n’th disturbance. This structure results in a redundant distur-bance description, since the disturbance states are coupled in pair e.g. w1 and w2 contain thesame information, simply with a phase of 180 [deg].

The implementation of the system is carried out as two SISO systems, one for each of the axispitch and roll. This is possible since the pitch and roll axis are fully decoupled in the systemmatrices and by the assumption, that there is no correlation between the disturbance in pitch androll axis.

In the following sections the controller design of the pitch controller will be carried out, and inthe end, the results from a corresponding design of the roll controller will be presented.

11.2 Controller Description

The system 11.1 changes to

x = Ax + Bu + Pw

y = Cx + Qw (11.4)

86

Page 95: Project Antenna

Chapter 11. Internal Model Controller Design

To control system 11.4 a dynamic feedback controller of the form 11.5 is applied to the system.The controller processes the output, y, and calculates the input, u, that stabilizes the system, byintroducing new states. The controller is a linear time-invariant system of the form:

ξ = Fξ + Gy

u = Hξ + Ky (11.5)

where state ξ ∈ Rv. To see the interconnection between controller, disturbance and system, theforced closed-loop system with the dynamic feedback controller and the exosystem can be statedas:

w = Sw

x = (A + BKC)x + BHξ + (P + BKQ)wξ = Fξ + GCx + GQw (11.6)

From equations 11.6 the unforced closed-loop system becomes

x = (A + BKC)x + BHξ

ξ = Fξ + GCx (11.7)

11.2.1 Solving the Disturbance Attenuation Problem

In this section it will be discussed how to design a controller, that stabilizes the system s.t. theerror asymptotically decays to zero, as time goes to infinity.

To solve the disturbance attenuation problem, the system (11.4) with the exosystem (11.2), shouldhave a controller of the form (11.5) such that:

Requirements

1: The equilibrium (x,ξ) = (0,0) of the unforced closed-loop system, (11.7), is stable.

2: The forced closed-loop system, equations 11.6, must satisfy equation 11.8, that states thetracking error must go to zero, as time goes to infinity.

lim e(t) = 0 (11.8)t→∞

where e(t) is the tracking error: e(t) = y(t)-yref (t).

The pair (A,B) is stabilizable and the pair (C,A) is detectable. This is a necessary and sufficientcondition for the existence of the matrices F,G,H,K such that the matrix

J =(

(A + BKC) BHGC F

)(11.9)

87

Page 96: Project Antenna

11.2. Controller Description

has all eigenvalues with negative real part, reference [Alberto Isodori, 2003, p. 6]. If this is thecase, requirement one is fulfilled, see 11.2.1.

To fulfill the second requirement an assumption must be made. If there exists a q×p matrix Esuch that e = Ey. This property is usually referred to as the property that "e is readable from y",and means that it is possible to calculate a unique

e = C1x + Q1w (11.10)

where C1 and Q1 are obtained from a partition of C and Q

It should be noted that the number q of components of e is equal to the number m of componentsof u. In other words this means that the number of independent variables, e, that should be trackedmust not exceed the number of independent inputs u.

C =[

C1

C2

]Q =

[Q1

Q2

](11.11)

This will lead to

y1 = e = C1x + Q1w

y2 = C2x + Q2w (11.12)

This means, that the set of variables accessible for measurement includes all the componentsof the regulated output ey1 . It is possible that even more components are available from themeasurements, and this set of components are contained in the column vector y2.

The controller matrices G and K, in equation 11.5, can now be partitioned into two, consistentlywith the partition of y.

G = [G1 G2]K = [K1 K2] (11.13)

From the new partition the controller 11.5 can be rewritten as

ξ = Fξ +[

G1

G2

]+

[ey2

]

u = Hξ +[

K1

K2

]+

[ey2

](11.14)

To fulfill the second condition, the triplet of matrices Π ,Σ ,and R must exist in the followingequation.

ΠS = (A + BKC)Π + BHΣ + P + BKQ

ΣS = FΣ + GCΠ + GQ (11.15)

such that0 = C1Π + Q1 (11.16)

The equations tells wether it is possible or not, for any initial condition, to achieve asymptoticallydecay to zero of the error.

88

Page 97: Project Antenna

Chapter 11. Internal Model Controller Design

To ensure asymptotically decay of the error state, e, with any disturbance S, it must be possibleto compensate for the disturbance with the controller, and still ensure stability in the closed-loop system. Note that S has eigenvalues with zero real part and that the first condition must befulfilled. To verify this, consider now the change of coordinates:

wx

ξ

=

w

x − Πwξ − Σw

(11.17)

The equations for the closed-loop system can, in view of the new coordinate system be writtenas:

ω = Sw

˙x = (A + BKC)(x + Πw)+BH(ξ + Σw) + (P + BKQ)w − ΠSw

˙ξ = F (ξ + Σw) + GCx + Πw) + GQw − ΣSw (11.18)

If the equation 11.15 holds, w cancels out and the resulting system equations can be written as:

w = Sw[˙x˙ξ

]=

[(A + BKC) BH

GC F

] [x

ξ

]= J

[x

ξ

](11.19)

In the new coordinates the error, e, can be written as:

e = C1x + (C1Π + Q1)w (11.20)

Integration of the closed-loop system in the new coordinates 11.6 yields:

e(t) = [C1 0]eJt

[x(0)

ξ(0)

]+ (C1Π + Q1)eStw(0) (11.21)

It has already been proven that J has eigenvalues with negative real part, and for this reason thecondition limt→∞e(t) = 0 holds for any initial value of w,x and ξ iff.

limt→∞ (C1Π + Q1)eSt = 0 (11.22)

and since S has eigenvalues with zero real parts the lemma holds iff. C1Π + Q1 = 0, [Alberto Isodori, 2003,p.8].

The equation 11.15, can be rewritten to:

ΠS = AΠ + BR + P

0 = C1Π + Q1 (11.23)

and

ΣS = FΣ + G2(C2Π + Q2) (11.24)

R = HΣ + K2(C2Π + Q2) (11.25)

89

Page 98: Project Antenna

11.3. Change of Coordinates

Another condition that must be fulfilled, is the nonresonance condition. This condition insure thatthe closed loop system does not have a resonance frequency that coincides with the exosystem -this could be fatal to the closed-loop system stability [Alberto Isodori, 2003, p. 17].

det

(A − λI B

C1 0

)= 0 (11.26)

must be nonsingular for all λ which are eigenvalues of S. This simply means that the determinantof 11.26 is the transmission zeros of system

x = Ax + Bu

e = C1x (11.27)

if the system is controllable and observable. So, this basically says that none of the eigenvaluesof the exosystem are transmission zeros of system 11.27.

11.3 Change of Coordinates

By taking a closer look at the system 11.28, it might be convenient to divide the state variablesinto two state variables: one state variable that depend on the input and another state variable thatdoes not. Consider the system

x = Ax + Bu + Pw

e = C1x + Q1w (11.28)

with a relative degree between input, u, and output, e, of some integer r. Then it is possible, bychange of coordinates, to rewrite the system to the form (restricted to m = 1)

x1 = A11x1 + A12x2 + P1w (11.29)

x2 = Ax2 + B(A21x1 + A22x2 + bu) + P2w (11.30)

e = Cx2 + Q1w (11.31)

where dim(x1)=n − r, dim(x2) = r. Here n is the system order. x1 involve the system states,that does not depend directly on the input, while x2 contains the states that directly depend on theinput. A, B, and C are defined as

A =

0 1 0 · · · 00 0 1 · · · 0...

......

. . ....

0 0 0 · · · 10 0 0 · · · 0

, B =

00...01

, C =

[1 0 0 · · · 0

](11.32)

90

Page 99: Project Antenna

Chapter 11. Internal Model Controller Design

Changes of Coordinates

In the following section several change of coordinates will be carried out. this is needed toinclude the disturbance w in the internal model - this means that the w term will disappear in thestate equations, and be included in the system state x and the controller states ξ. The interestedreader might want to take a closer view at all the calculation needed to perform all the changesof coordinates described in this section. These changes of coordinates are exhaustive analyzed inappendix G. In the following section the result of the calculations will be presented, as done inthe literature e.g. [Alberto Isodori, 2003].

By a proper changes of coordinates, it is possible to remove the disturbance from the error statee. Consider e.g. the changes of coordinates

x2 = x2 + Zw (11.33)

Z =

Q1

CP2 + Q1S· · ·

CAr−2P2 + CAr−3P2S + . . . + Q1Sr−1

(11.34)

with the change of coordinates the system takes the form

x1 = A11x1 + A12x2 + P1w

˙x2 = Ax2 + B(A21x1 + A22x2 + bu) + p2w

e = Cx2 (11.35)

If Π is partitioned in proportion to the partition of y

Π =[

Π1

Π2

](11.36)

then it can be proven that if none of the eigenvalues of A11 is eigenvalues of S, the sylvesterequation 11.37 has a unique solution Π1, [Alberto Isodori, 2003, p.27].

Π1S = A11Π1 + P1 (11.37)

Setting Π2 = 0 and

R =1b

(−A21Π1 − p2) (11.38)

Thus constructed, it can be proven that R and Π satisfies equation 11.23 on page 89. The solutionΠ1 can be used to changes the variables s.t.

x1 = x1 − Π1w (11.39)

this transforms system 11.35 with definition 11.38 into

x1 = A11x1 + A12x2

˙x2 = Ax2 + B(A21x1 + A22x2) + Bb(u − Rw)e = Cx2 (11.40)

91

Page 100: Project Antenna

11.4. Design of the controller

11.4 Design of the controller

The idea of an internal model approach, is to be able to have an tracking error, which asymp-totically go towards zero. This can be fulfilled by having a model of the disturbance, and builda controller upon that model. This makes it possible to generate a control signal which exactlycompensates for the disturbance influencing on the system. The disturbance system must bea neutrally stable system, which means that the eigenvalues of the system must have zero realpart[Alberto Isodori, 2003].

Lemma 1:[Alberto Isodori, 2003, p.32], Let F0 be any s × s Hurwitz matrix and let G0 be anys×1 vector such that the pair(F0, G0) is controllable. Let Φ be any s×s matrix whose eigenvalueshave nonnegative real part, and let Γ be any 1 × s vector such that the pair(Γ,Φ) is observable.Then there exists a 1 × s vector Ψ and a nonsingular s × s matrix T that satisfy equation 11.41and 11.42.

(F0 + G0Ψ)T = TΦΨT = Γ

(11.41)

TΦ = F0T + G0Γ (11.42)

andR = ΨT (11.43)

When having a model of a system, in this case a neutrally stable disturbance system e.g. asinusoid, as shown in S in equation 11.44. Ω1 expresses the frequency in radians. Then it ispossible to describe this sinusoid by its coefficients of the characteristic polynomial(see equation11.45) and a series of integrations. The resulting system which can be seen in equation 11.46,represents the same dynamics as equation 11.44, since they have the same eigenvalues. Thedifference is that the new system does not express information about the states in equation 11.44,but the new interpretation expresses the dynamics of the original disturbance system.If the disturbance system consisted of e.g. multiple sinusoids, then the model S2 in equation 11.44will describe the dynamic of each sinusoid, and by adding these states together, each representinga sinusoid, we would get the total dynamics of the multiple sinusoids. In the expression inequation 11.46, the total dynamics would be available in one state, but it is not possible to getinformation about the individual sinusoids.

S1 =[

0 Ω1

−Ω1 0

]S2 =

0 Ω1 0 0−Ω1 0 0 0

0 0 0 Ω2

0 0 −Ω2 0

(11.44)

Ss + as−1Ss−1 + · · · + a1S + a0I = 0 (11.45)

Φ =

0 I 0 · · · 0 00 0 I · · · 0 0...

......

. . ....

...0 0 0 · · · 0 I

−a0I −a1I −a2I · · · −as−2I −as−1I

Γ =[

I 0 0 · · · 0 0]

(11.46)

92

Page 101: Project Antenna

Chapter 11. Internal Model Controller Design

The controller of the form 11.47, where ξ′ represents the states of the controller, will be able tohave an output oscillating with the exact same frequency as the disturbance described in Φ, sincethe eigenvalues of (F0 + G0Ψ) are equal to the eigenvalues of Φ.

ξ′ = F0ξ′ + G0u

u = Ψξ′ + v (11.47)

The controller of the antenna system consists of two subcontrollers: the canonical internal modelcontroller, equations 11.47 without v, and the stabilizer generating the input v in equation 11.47,see figure 10.1. It is possible by a proper coordinate transformation (ξ’ = ξ’ - Tw) and theproperties of the transformation matrix T to write the system with controller and including theexosystem as

˙ξ′ = (F0 + G0Ψ)ξ′ + G0v

˙x1 = A11x1 + A12x2

˙x2 = Ax2 + B(A21x1 + A22x2) + Bb(Ψξ′ + v) (11.48)

Where v is the input from the stabilize controller of the form

ξ′′ = Lξ′′ + My

v = Nξ′′ + Ky (11.49)

This form is convenient, since the controller input acts on the ˙x2 states only. Another advantageis that the disturbance, the exosystem, is built into the controller dynamics, and for this reason itis possible to enure stability, even with the disturbance included.

This controller can be simplified, if all the components of x2 are available for measurements.This means that y = x2, and the resulting controller becomes

ξ′ = (F0 + G0Ψ)ξ′ + G0Ny (11.50)

u = Ψξ′ + Ny (11.51)

Suppose b is positive and suppose that the eigenvalues of A11 have negative real part. Then, thereis a r-dimensional row vector N s.t. the eigenvalues of the following equation have negative realpart.

[A11 A12

BA21 BA22

]+

[0

Bb

] [0 N

](11.52)

If the above condition holds, the controller stabilizes the system in a robustly sense.

Note if b ≥ b, the high-frequency gain of the system is positive and by the hypothesis of A11

having negative real part the zeros of the transfer function between the input u and the output ehave negative real part.

Consider now the change of coordinates

93

Page 102: Project Antenna

11.4. Design of the controller

χ = ξ′ − 1bG0CAr−1x2 (11.53)

which yields

χ = (F0 + G0Ψ)χ + G0v − 1bG0(A21x1 + A22x2 + b(Ψχ + v)) (11.54)

when inserting ˙x2. Using the new variables in system 11.48 it reduces to

[χ˙x1

]=

[F0 F01

0 A11

] [χx1

]+

[F02

A12

]x2 (11.55)

˙x2 = Ax2 + B([Ψb A21][

χx1

]+ F22x2 + bv) (11.56)

As a final verification of the stability of the closed-loop system, the eigenvalues of equation 11.57must have a negative real part, and N must satisfy this condition. N must also satisfy equation11.58.

F0 F01 F02

0 A11 A12

BΨb (B)A21 A + BF22

+

0

0Bb

[0 0 N ] (11.57)

Equation 11.57 can be directly used to determine N in the design of a controller that stabilizessystem, [Alberto Isodori, 2003, p.34]

N = −1kN (11.58)

11.4.1 Adaptation of controller parameters

If the frequency of which the internal model controller oscillates, and the disturbance frequencyis not exactly the same, the output will have an steady state error, since the compensation fromthe internal model controller will not match the real life disturbance. Of course the stabilizingpart will try to reduce this error, but still this will result in a steady state error. Even thoughthe frequency range of the disturbance acting on a ship at sea is specified in 3.4.3, the actualfrequency of the disturbance is of course not known, since it is vital to know this frequency tobe able to reduce the output error to zero an estimate of the disturbance frequency is crucial toavoid an steady state error. An interpretation of the disturbance system, which is considered tobe a neutrally stable system, with a changing frequency, can be seen in equation 11.59, where denotes the uncertainty of the disturbance frequency.

w = S()w (11.59)

Since the disturbance system is considered neutrally stable, uncertainty in will reflect uncer-tainty in the imaginary part of the eigenvalues of S(). This means that by changing the imag-inary part of the controller eigenvalues, to those of S(), it is able compensate for the actual

94

Page 103: Project Antenna

Chapter 11. Internal Model Controller Design

disturbance. The change of the controller eigenvalues can be done by changing Ψ, so by havingan estimate of the Ψ vector (Ψ) representing the actual disturbance frequency, the eigenvalues ofthe internal model controller, will go towards the eigenvalues of the actual disturbance system.Since the disturbance system can change at any time, it is necessary to perform an on-line estimateof the Ψ vector. This problem can be overcome, by choosing an adaptation law to continuouslypropagate the estimate Ψ of Ψ.Ψ = Ψ will tune the internal model controller to have the same frequency as the disturbanceacting on the system. The idea of having a on-line adaptation ofΨ can be realized by choosingan adaption law of the form, which can be seen in equation 11.60.

˙Ψ = −γ(Ny)(ξ′)T (11.60)

To propagate Ψ, the adaption law uses the output from the system (y), the controller states (ξ),Naccording to equation 11.58 and γ which is a gain factor in the adaptation. This propagation ofΨ must be an on going process, to continuously adapt to the correct eigenvalues of the controller,meaning the eigenvalues of the actual disturbance system.

11.5 Verification of controller principle

To demonstrate the behavior of an internal model controller, a simple control system which fulfillthe requirements in lemma 1 have been set up.The disturbance system is chosen to consist of one frequency, and is set to 0.2 rad/s, which ac-cording to equation 11.46, yields equation 11.64. The system used is presented in equation 11.61and 11.62. With these initial steps a controller of the type seen in equation 11.66 can be set up tocompensate for the disturbance described in Φ.

A =[

0 10 0

]B =

[01

](11.61)

P =[

1 00 0

]Q =

[0 01 0

]C =

[1 00 1

](11.62)

F0 and G0 fulfills the requirements of lemma 1, and can be seen in equation 11.63.By the use of equation 11.41 and 11.42, T and Ψ have been found, and are shown in equation11.65.

F0 =[ −1 0−6 −1

]G0 =

[10

](11.63)

Φ =[

0 1−0.04 0

]Γ =

[1 0

](11.64)

T =[

0.9615 −0.9615−5.3254 11.0946

]Ψ =

[2 0.1733

](11.65)

95

Page 104: Project Antenna

11.5. Verification of controller principle

ξ′ = (F0 + G0Ψ)ξ′

u = Ψξ′(11.66)

The controller designed from equation 11.66, where ξ′ represents the states of the controller, willbe able to have an output oscillating with the exact same frequency as the disturbance describedin Φ, since the eigenvalues of (F0 +G0Ψ) are equal to the eigenvalues of Φ, as stated in equation11.67, when using the Ψ vector found from equation 11.41.

eig(F0 + G0Ψ) = eig(Φ) =[ −0.0000 + 0.2000i−0.0000 − 0.2000i

](11.67)

This controller only compensates for the disturbance influencing the system. To stabilize thesystem, regarding to a reference, the controller must also have a stabilizing part. This stabilizingpart is added to the controller in equation 11.68. Here N is a vector with the feedback gain ofeach controller state. N is chosen to be [-5 -6].

ξ′ = (F0 + G0Ψ)ξ′ + G0Nyu = Ψξ′ + Ny

(11.68)

Disturbance

x'=(x'=(F0+G0Y)x'+Y)x'+G0Ny

uim=Yx'=Yx'

system

ust=Ny

y

++

+

+u.

y

Figure 11.2: Internal model controller principle, for a disturbance system with a constant frequency.

With a configuration as in equation 11.68 the controller is able to stabilize the system, with adisturbance Φ.In figure 11.2 a diagram of the control principle is illustrated, with the two controller parts. Theexample presented is able to compensate for a disturbance with a constant known frequency asin equation 11.69. This example illustrates the functionality of the internal model controller butis of course not practically usable, since the scenario is limited to a disturbance set, consisting ofonly one frequency, which has to be known.

w = Sw

S =[

0 0.2−0.2 0

](11.69)

96

Page 105: Project Antenna

Chapter 11. Internal Model Controller Design

To overcome this problem, the adaptation part has to be added to the system. This makes itpossible to have an estimate of the Ψ parameters in the controller, that will change the controllereigenvalues into the ones of the real exosystem.Figure 11.3 shows a model of the internal model controller with adaption of controller parameters.The parameters needed for the adaption law, is chosen as: N = −0.5N and γ= 2.5.

Disturbance

Y=-g(Y=-g(Ny)(x'))(x').^

x'=(x'=(F0+G0Y)x'+Y)x'+G0Ny^

uim=Yx'=Yx'^

system

ust=Ny

y

++

+

+u

Y^x

-

.y

T

Figure 11.3: Internal model controller principle, with adaptive parameters, capable of adjusting to a distur-bance system with changing frequencies.

Verification

To verify the control scenario and the Matlab implementation methods, simple tests have beenset up to clearly illustrate the behavior of the internal model controller. The first test is to verifythat the internal model controller is able to adapt to a disturbance system different from the oneof the initial design. In this simple test the disturbance system is viewed as being consisting ofone sinusoid, and the system model used, is the one representing one axis of the antenna system.

Figure 11.4 shows the diagram of the internal model based controller added to the system. Thefour dashed boxes in figure 11.4represents the system, the disturbance system, the controller andthe adaptation respectively. The system diagram seen in figure 11.4 has been implemented inMatlab Simulink.

The internal model controller is based on the parameters given in equation 11.63 to 11.65, whichmeans that it is initially designed for a disturbance system with a frequency of 0.2 rad/s, whereasthe real frequency is set to 0.5 rad/s. The adaptation is turned on at time equal 50. The setupscenario before time reaches 50, is as can be seen in figure 11.2, whereas it after 50, is as in 11.3.Figure 11.5, shows the result of this test.

97

Page 106: Project Antenna

11.5. Verification of controller principle

1s

1s

1s

1s

N

k

N

S

QC

A

Ψ

F0+G0Ψ

G0N

P

Bu x

y

x

ξ ξ

ΨΨΨ − update

system disturbance

controller adaptation

Figure 11.4: Internal model based control with disturbance system and "online" parameter adaptation.

0 20 40 60 80 100-1

-0.5

0

0.5

1

time [s]

am

plit

ude[r

ad/s

]

10 20 30 40 50 60 70 80 90 100

-0.01

0

0.01

time [s]

am

plit

ude[r

ad] , [r

ad/s

]

disturbance(velocity )

output(error position)

output(error velocity )

0

Figure 11.5: Internal model controller, adjusting to a disturbance with constant frequency, adaptation isturned on at time equal 50.

98

Page 107: Project Antenna

Chapter 11. Internal Model Controller Design

In figure 11.5, it can be seen that the internal model controller compensates for the disturbanceacting on the system, both before and after adaptation is turned on. With no adaptation, the com-pensation results in a steady state error, which can be expected, since the controller is oscillatingwith another frequency than the disturbance system. The Matlab implementation can be seen incontroller_and_system.mdl

30 40 50 60 70 80 90 100

1.99

2

2.01

time [s]

30 40 50 60 70 80 90 100

0.18

0.19

0.2

0.21

time [s]

Psi 1

Psi 2

Figure 11.6: The Psi parameters adapting to the disturbance frequency, adaptation is turned on at timeequal 50.

In figure 11.6, the adaption of the Ψ vector, which directly changes the eigenvalues of the con-troller, is shown. It can be seen that these parameters at time equal to 50 starts to propagatetowards a new steady value, representing the value for which the internal model controller willoscillate with the same frequency as the disturbance system. To show that these adapted param-eters are the true parameters, a simple test can be performed. From figure 11.6 the value of theparameters are read and as is shown in equation 11.70, these parameters inserted in the controllergives that the eigenvalues of this "new" controller is nearly the same as the eigenvalues of thedisturbance. As time goes to infinity the parameters will adjust, and the controller eigenvalueswill exactly match the disturbance eigenvalues.

Ψ =[

1.99850.2081

]

eig(F0 + G0Ψ) =[ −0.0007 + 0.5001i−0.0007 − 0.5001i

] (11.70)

The second test is to ensure that the internal model controller is also able to having the error goingtowards zero, when the disturbance system continuously changes frequency. The remaining setupis the same as for the first test. The result can be seen in figure 11.7.

99

Page 108: Project Antenna

11.6. F77 Antenna Controller Design

0 20 40 60 80 1001

-0.5

0

0.5

1

time [s]

ampl

itude

[rad

/s]

10 20 30 40 50 60 70 80 90 100

-0.05

0

0.05

time [s]

ampl

itude

[rad

] , [r

ad/s

]

disturbance(velocity )

output(error position)output(error velocity )

0

Figure 11.7: Internal model controller, adjusting to a disturbance with changing frequency, adaptation isturned on at time equal 50.

Figure 11.7 shows that even though the disturbance is slowly changing frequency, the controllercompensates for the disturbance. With no adaptation on, the steady state error increases as thedisturbance system increases its frequency. This increase in steady state error, is a consequence ofhaving the disturbance system drifting away form the disturbance for which the controller was ini-tially designed. The Matlab implementation can be seen in controller_and_system.mdl

These two simple test has shown with a satisfactory result, that both the internal model principleand the Matlab implementation of this are suitable for a control scenario consisting of a systeminfluenced by a sinusoid disturbance system.

11.6 F77 Antenna Controller Design

In this section a design of an Internal Model Controller for the F77 antenna provided by Space-Com A/S will be carried out. The design will make use of the theory presented in section 11 onpage 85, and will be implemented in the matlab environment for exhaustive simulation and ver-ification. The design will be documented for the Pitch controller only since the Roll controllerin almost the same. The Internal Model Controller that is to be designed is a linear controllerdesigned for one axis, in this case the pitch axis. This causes no coupling between the pitch andthe roll axes, thus the controller controls a SISO system.

The F77 antenna system with disturbance has the following state equations

x1 = x2 + w1 (11.71)

x2 = up (11.72)

x3 = x4 + w3 (11.73)

x4 = ur (11.74)

100

Page 109: Project Antenna

Chapter 11. Internal Model Controller Design

and can be described as a linear time invariant system of the form

x = Ax + Bu + Pw (11.75)

y = Cx + Qw (11.76)

Since the goal of this controller is to stabilize the antenna plane in the stability frame with respectto pitch and roll disturbances, the state variables of the system are chosen to be the error anglesbetween controllable frame and the stability frame, hence restricted to the first and second axissince these correspond to the pitch and roll movements. The statevariables are defined as epitch,epitch, eroll, and eroll.

x =

x1

x2

x3

x4

=

epitch

epitch

eroll

eroll

(11.77)

where epitch is the pitch error angle and eroll the roll error angle, and epitch and eroll are theirderivatives.

The disturbance, w, is caused by the ship motions with respect to the stability frame, and isgenerated by waves, wind, ocean current etc. The disturbance can be described as an exosystemof the form

w = Sw (11.78)

Where S is a matrix or matrix function describing the propagation of the disturbances. In thiscase the disturbance is sinusoidal, hence S is a skew symmetric matrix. However, S has not onespecific frequency, but a subset of frequencies within range [0:1.1] [rad/s]. As an assumption, seesection 3.4 on page 10, the disturbance is modelled as two sinusoidals. The propagation matrix Scan be described as

S =

0 Ω1 0 0−Ω1 0 0 0

0 0 0 Ω2

0 0 −Ω2 0

(11.79)

where Ωn is the frequency of the n’th disturbance. This structure result in a redundant disturbancedescription, since the disturbance states are coupled in pair e.g. w1 and w2 contains the sameinformation, simply with a phase of 180 [deg].

The implementation of the system is carried out as two SISO systems, one for each of the axispitch and roll. This is possible since the pitch and roll axis are fully decoupled in the systemmatrices and by the assumption, that there is no correlation between the disturbance in pitch androll axis.

In the following sections the controller design of the pitch controller will be carried out, and inthe end, the results from a corresponding design of the roll controller will be presented.

11.7 Pitch Controller Design

The system matrices A and B can then be described as

101

Page 110: Project Antenna

11.8. Robustness

A =[

0 10 0

]B =

[01

](11.80)

and the disturbance matrices P and Q and the output matrix C can be described as in equation11.81. Since the exosystem is viewed as velocities, P only influences on the propagation of theposition state. Whereas Q only influences on the velocity state, since it expresses the disturbanceon the output state. The exosystem consists of two sinusoids. For both sinusoids to influence thesystem, P and Q must have two nonzero elements.

P =[

1 0 1 00 0 0 0

]Q =

[0 0 0 01 0 1 0

]C =

[1 00 1

](11.81)

The disturbance propagation matrix S is implemented as a sinusoidal function with two harmon-ics.

S =

0 Ω1(1) 0 0−Ω1(1) 0 0 0

0 0 0 Ω2(2)0 0 −Ω2(2) 0

(11.82)

where Ω1(1) ∈[0:1.1] [rad/s] and Ω2(2) ∈[0:1.1] [rad/s].

11.8 Robustness

When speaking of controllers that stabilizes a system, a good design would take into account someuncertainties in the model of the plant - at least parametric uncertainties. The uncertainties in themodel parameters is often unknown, however the designer typically have an idea of boundariesof the parameter uncertainties.

It has been chosen to include parameter uncertainties in the system matrix A and the output matrixC. The matrices is now defined as:

A(µ) =[

0 a12(µ)0 0

]C =

[c11(µ) 0

0 c22(µ)

](11.83)

where

a12(µ) = a12,0 · µ, with a12,0 = 1c11(µ) = c11,0 · µ, with c11,0 = 1c22(µ) = c22,0 · µ, with c22,0 = 1and µ ∈ P = [0.9 : 1.1]

11.8.1 Design of Potential Controller Structure

Let A(µ), B, P, C(µ) and Q be the system matrices that characterizes the system 11.75, and let Aand C depend on µ, where µ ∈ P. Even through the plant has uncertainties and thereby changes

102

Page 111: Project Antenna

Chapter 11. Internal Model Controller Design

µ = 0.9 µ = 1.1λ11 = −2.961λ12 = −0.533λ13 = −0.029 + 0.1028iλ14 = −0.029 − 0.1028iλ15 = −0.224 + 0.7847iλ16 = −0.224 − 0.7847i

λ21 = −3.0820λ22 = −0.4418λ23 = −0.0328 + 0.10361iλ24 = −0.0328 − 0.10361iλ25 = −0.20530 + 0.79327iλ26 = −0.20530 − 0.79327i

Table 11.1: Eigenvalues of the matrix J for µ = 0.9 and µ = 1.1

the closed loop response, the controller should for all cases of µ∈ P insure stability in the closed-loop system. For this reason it must be possible by any matrices F, G, H, K to stabilizes the closedloop system. From section 11.2.1 it is known that the following condition must be satisfied:

The equilibrium (x,ξ) = (0,0) of the unforced closed-loop system, (11.7), is stable.

This can be ensured if the matrix J has eigenvalues in the left half plane (LHP).

J =(

(A(µ) + B(µ)KC(µ)) B(µ)HGC(µ) F

)(11.84)

To prove that the matrices F,G,K,H exists while the condition for J is satisfied a example has beenimplemented in matlab. The implementation script is included in the matlab m-file: stabilitycalc.m.The matrices G and K are chosen while the matrices F,H are calculated from the equations (11.9-11.25). The resulting matrices satisfying the equations is:

F =

1.00 2.08 0 0−0.50 −1.00 0 0

0 0 0.50 2.600 0 −0.10 −0.50

G =

0 01 00 00 1

K =[ −2 −3

]H =

[ −1 −1 −1 −1]

(11.85)

With these matrices it is possible to calculate the eigenvalues of the matrix J in equation 11.84:

All roots have negative real part, and for this reason the closed-loop system is stable, hence thepair (A,B) is stabilizable and the pair (C,A) is detectable - this fulfills the condition. .

By assumption 3, see section 11 on page 85, the number q of components of e is equal to thenumber m of components of u. Hence only one error state can be tracked asymptotically to zero.It has been chosen to define the error state, e, as the error position state, ep, thus

e = ep = C1x + Q1w (11.86)

where

C =[

C1

C2

]=

[1 00 1

](11.87)

Q =[

Q1

Q2

]=

[1 0 1 00 0 0 0

](11.88)

103

Page 112: Project Antenna

11.8. Robustness

After the C and Q partition, the system equations can be written as

x = Ax + Bu + Pw

e = C1x + Q1w

y2 = C2x + Q2w (11.89)

Where y2 is the remaining components of the measurable state vector y: y =[e y2].

To ensure that the error state, e, asymptotically decays to zero as time goes to infinity, condition2 from section 11.2.1 on page 87 must hold:

The forced closed-loop system, equation 11.6, must satisfy equation 11.8, that states thetracking error must go to zero as time goes to infinity.

The condition holds if there exists a triplet matrices Π, Σ and R s.t. the equations 11.23-11.25are satisfied. This is guarantied if, [Alberto Isodori, 2003]

det(

A(µ) − λSI BC1(µ) 0

)= 0 (11.90)

where lambda are the eigenvalues of the exosystem, S, [Alberto Isodori, 2003, P.17]. The rootsof the determinant must for all values of µ ∈ P be different from zero. Worst case scenario is forµ = 0.9, which results in the following roots:

r1 = 0.81r2 = 0.81r3 = 0.81r4 = 0.81

(11.91)

which are different from zero. Hence the nonresonance condition is fulfilled .

The ensure robust stability in the closed-loop system, the system and controller design must beverified. From the theory in section11, it is known that the system and controller can be rewrittento the form

˙ξ′ = (F0 + G0Ψ))ξ′ + G0Ny

˙x1 = A11x1 + A12x2

˙x2 = Ax2 + B(A21x1 + A22x2) + Bb(Ψξ′ + u)u = Ψξ′ + Ny (11.92)

where y = x2. When the controller, system and feedback law is written is this form, it is possibleto determine the vector N, s.t. the resulting matrix from equation 11.57 has all eigenvalues in theleft half plane.

First the system

x = A(µ)x + Bu + Pw

e = C1(µ) + Q1 (11.93)

104

Page 113: Project Antenna

Chapter 11. Internal Model Controller Design

must be partitioned in two: internal states, x1 and external states, x2. x1 has the dimension n-rand x2 has the dimension r, where n is the system order and r is defined as:

C1(µ) A(µ)r−rB = ... = C1(µ)A(µ)r−2B = 0C1(µ) A(µ)r−1B = 0 (11.94)

hence r = 2. This can be verified as:

C1(µ) A(µ)2−2B =[

c11(µ) 0] [

1 00 1

] [01

]= 0

C1(µ) A(µ)2−1B =[

c11(µ) 0] [

0 a12(µ)0 0

] [01

]= 0 (11.95)

In practical this means that the dimension of x1 is zero, thus the t’system has no internal states(except the internal model states, of course). The F77 antenna system can now be written as

x1 = A11x1 + A12x2 + P1w

x2 = Ax2 + B(A21x1 + A22(µ)x2 + bu) + P2w (11.96)

e = Cx2 + Q1w (11.97)

Where A, B, and C is defined as

A =[

0 10 0

], B =

[01

], C =

[1 0

](11.98)

and

b = C1(µ)A(µ)r−1B (11.99)

From the F77 state description in equation 11.75, the matrices A11, A12, A21, A22, P1, and P2

can be determined, if the system is rewritten to the form 11.96. (NA: not available)

A11 = NA A12 = NAA21 = NA A22(µ) = [µ2 0]

P1 = NA P2 = P =[

1 0 1 00 0 0 0

] (11.100)

where µ2 ∈ [-0.19;0.21].

As defined in section 11, the existence of a vector N that satisfies equation 11.52 is required if theclosed-loop system is controllable.

eig([

A + ¯BA22

]+

[Bb

][N ]

) ∈ Left half plane. (11.101)

As an example of this property N has been chosen to N = [-1 -5], and the resulting eigenvaluesthen becomes:

λ1 = −0.1125λ2 = −8.8875

thus negative real part and the condition is fulfilled.

105

Page 114: Project Antenna

11.9. Disturbance Attenuation Controller

11.9 Disturbance Attenuation Controller

In section 11.5, it was shown that it is possible to design a controller that compensates for adisturbance system consisting of one sinusoid. Furthermore the following verification of theinternal model principle showed the advantages of this principle, in form of an stabilizing errorwhich asymptotically went towards zero, with an unknown disturbance influencing the system.To have a realistic scenario of a disturbance system influencing a ship at sea, this system mustconsist of two sinusoids[Perez and Blanke, ]. With this knowledge, the disturbance attenuationcontroller will be designed, to be able to compensate for a disturbance consisting of two sinusoids.The initial frequencies of these two disturbance contributions, for which the controller will bedesigned are chosen to respectively 0.1[rad/s] and 0.18[rad/s]. This choice is based on table 3.1where it is stated that the maximum frequency of the disturbance system is approximately 1[rad/s]

0 100 200 300 400 5002

-1.5

1

-0.5

0

0.5

1

1.5

2

Figure 11.8: Two sinusoids, with frequencies of respectively 0.2 rad/s and 0.5 rad/s added together

Figure 11.8 shows the dynamic of the disturbance, for which the disturbance attenuation con-troller initially will be designed, in equation 11.102 a model describing the dynamics of thisdisturbance is derived.

S =

0 0.1 0 0−0.1 0 0 0

0 0 0 0.180 0 −0.18 0

(11.102)

Based on the theory of equation 11.45 and 11.46, the dynamics of 11.102 can be expressed as inequation 11.103.The matrices F0 and G0 shown in 11.104 are chosen so the requirements from lemma 1 arefulfilled. From the method described in equation 11.41 and 11.42, T and Ψ must be found, to addthe dynamics of the disturbance system into the controller. T and Ψ are found via standard linearequations, having x unknown variables and x equations. The calculation of these variables can beseen in Psicacl.m on the CD. The result of these calculations are stated in 11.105.

106

Page 115: Project Antenna

Chapter 11. Internal Model Controller Design

Φ =

0 1 0 00 0 1 00 0 0 1

−0.000324 0 −0.0424 0

Γ =

1000

T

(11.103)

F0 =

−2 0 0 0−12 −2 0 00 0 −0.1 00 0 −0.5 −0.1

G0 =

1010

(11.104)

T =

0.499 −0.249 0.123 −0.618−2.999 2.999 −2.211 1.4766.179 −61792 117.924 −1179.245−2.781 336.775 −278.124 8677.465

Ψ =

4.1960.3730.3700.469

T

(11.105)

To verify that the solution found are valid, the eigenvalues of the controller withΨ, must be thesame as the eigenvalues of the disturbance system. This is shown in equation 11.106, and it canbe seen that the eigenvalues found are those of the disturbance system.

eig(F0 + G0Ψ) =

−0.0000 + 0.1000i−0.0000 − 0.1000i−0.0000 + 0.1800i−0.0000 − 0.1800i

(11.106)

The parameters found in equation 11.105, ensures that the internal model controller part is able tooscillate as the disturbance system, since the eigenvalues are placed only on the imaginary axis.

The state equations of the F77 antenna system can by proper changes of variables be rewritten tothe form of equation 11.55.

χ = F0χ +1bG0A22(µ)x2 (11.107)

˙x2 = Ax2 + B(Ψbχ + A22(µ)x2 + bv) (11.108)

For a given F0 and G0 it is now possible, by inspection, to determine the variables F01, F02, andF22 for the antenna system

F02(µ) =1bG0A22(µ)

F22(µ) = A22(µ)F01 = NA (11.109)

If the F77 antenna system is rewritten to the form of equation 11.57, N = [N1 N2] can be de-termined s.t. the eigenvalues of the resulting matrix from equation 11.110 have negative realpart.

[F0 F02

BΨb A + BF22

]+

[0

Bb

][0 N ] (11.110)

107

Page 116: Project Antenna

11.9. Disturbance Attenuation Controller

Furthermore N must satisfy equation 11.111.

N = −2kN (11.111)

Choosing N from Root Locus

N can be any matrix that satisfies 11.111 and 11.110. I order to design an optimal feedback matrixN for LTI systems, many techniques can be used - e.g. pole placement, frequency analysis likebode plots etc. It has been chosen to apply the root locus design method to analyze the negativefeedback loop using a plot of the trajectories of the closed-loop poles when the feedback gain Kvaries from 0 to infinity, see equation 11.112.

a(s) + K b(s) = 01 + K L(s) = 0 (11.112)

In equation 11.113 all matrix values included in equation 11.110 are inserted.

−2 0 0 0 0 0−12 −2 0 0 0 00 0 − 1

10 0 0 00 0 −1

2 − 110 0 0

0 0 0 0 0 14.1963 0.3733 3.7043e−3 0.46981 N1 N2

(11.113)

Since the root locus only works on SISO systems, it is not possible to determine the two parameterin N. Thus one of the parameters N1 or N2 must have a fixed value, while the other can bedetermined by the root locus plot. From experiments a reasonable value of N1 is found to be -1.The characteristic polynomial of matrix 11.113 can be calculated to

s6 +(

215

− N2)

s5 +(

581100

− 215

N2)

s4 +(

12625

− 481100

N2)

s3 . . .

+(

9720

− 2125

N2)

s2 +(

2125

− 125

N2)

s +125

= 0 (11.114)

The 180 root locus can be calculated as

1 + K(s) = 0 (11.115)

where

K = −N2

and L(s) =s5 21

5 s4 + 4.81s3 + 2125s2 + 1

25s

s6 + 215 s5 + 5.81s4 126

25 s3 + 9720s2 + 21

25s + 125

(11.116)

L(s) is the closed-loop system of the F77 antenna.

108

Page 117: Project Antenna

Chapter 11. Internal Model Controller Design

3 2.5 2 1.5 1 0.5 0 0.5

1.5

1

0.5

0

0.5

1

1.5Root Locus

Real Axis

Ima

gin

ary

Axis

Figure 11.9: Internal model based control with disturbance and online parameter adaptation.

The plot of the root locus for N1 = -1 can be seen en figure 11.9. The break-in point is K = 2 orN2 = −2. It has been chosen to design the closed-loop system with one fast pole and and oneslower pole, hence N2 = -10 as illustrated in figure 11.9.

The calculation for the choice of N, can be found in the matlab file: Ncalc.m.

If N1 is chosen to have a smaller value e.g. -5, the two poles on the imaginary axis, at K =0,will have a larger imagenary value, but still zero real part. Also the break in point will move tothe left. The opposite will happened, if the value of N1 is chosen larger, that is, the poles on theimagenary axis will move towards each other at K=0 and the break in point will move to the right.At N1=0, the break in point will be in origin, thus if N1 is chosen positive the closed-loop systembecomes unstable.

From the designed N = [-1 -10], N can be calculated from equation 11.111 where k is a tun-ingsparameter. If the value of k becomes too high, the adaptation will be too aggressive, on theother hand, if the value gets too small, the adaption will be very slow.

From experiments the value of k is found to be 2. Thus, N = [2 18]. This means that N has realpositive coefficients, and has negative or pairwise conjugate roots with negative real parts, andtherefore satisfies the conditions from section 11.

As a final verification the eigenvalues of matrix 11.113 with the values of N inserted, is calculated,

109

Page 118: Project Antenna

11.10. Simulation Model of Controller

resulting in

λ1 = −0.2087 (11.117)

λ2 = −4.7913 (11.118)

λ3 = −2.0000 (11.119)

λ4 = −2.0000 (11.120)

λ5 = −0.1000 (11.121)

λ6 = −0.1000 (11.122)

(11.123)

According to the adaptation law in equation 11.60, γ must be chosen. This is the gain whichinfluences the speed of which the controller parameters adapt. γ is for this controller chosen tobe equal to 8.

11.10 Simulation Model of Controller

The simulation of the controller, has been build up in Matlab Simulink. The structure of thissimulation is seen in figure 11.10. The structure is similar to a standard control structure, howeveras can be seen, an adaptation part is added. This adaptation part is dependable on both the systemoutput and the controller states. The output from the adaptation part is used to update the Ψparameters in the controller. The "ship disturbance" part output the two sinusoid disturbances,which influences the system.In the "antenna system" part two SISO systems have been build up, representing the pitch and rollsystem. The other parts showed in figure 11.10 also consists of both pitch and roll contributions.

Ψ

y

u

ξξ

controller

ξ

y

Ψ

adaptation

w

Ship Disturbance

w

u

y

Antenna system

y

Figure 11.10: Structure of the simulated control system

110

Page 119: Project Antenna

Chapter 11. Internal Model Controller Design

Actuator Input

As it was stated in the control strategy, the output from the disturbance attenuation controller,indicates rotation about the pitch and roll axes. Since it is not possible to perform any rotationsabout these axes, the controller output must be rotated to the respective frames, where the actu-ators are available. These are placed in respectively the azimuth, elevation and cross-elevationframe. In figure 11.11 it is illustrated how the controller output must be rotated to the respectiveframes,where the actuators are placed.

Rotation ActuatorsController

Pitch

Roll

Azimuth

Elevation

Cross-elevation

Figure 11.11: Illustrates how the controller output is rotated to the frames, where the actuators are placed.

An azimuth or a cross-elevation rotation, results in the same movement of the antenna plate,seen from the satellite. This is true if the rotation, is within the range of the cross-elevationmovement. Due to this fact, controller output will only be rotated to the elevation and cross-elevation actuators. In a final tracking control system, the azimuth actuator has to be taken intoaccount, to be able to turn 360 degree.

In equation 11.124, it is seen how the controller output is rotated to the respective actuators. Bothactuators are dependable on the acceleration vector α, consisting of the acceleration in the threebody axes. They both depend on the same accelerations, since e.g. a pitch contribution, canbecome both an elevation and/or an cross-elevation contribution, depending on the joint angles.The yaw contribution in α is set to zero, since there is no disturbance attenuation controller in theyaw axis.

Eact = Rceb (Θ)αj

CEact = Rceb (Θ)αk (11.124)

α =

αpitch

αroll

0

, j =

0

10

, k =

0

01

111

Page 120: Project Antenna
Page 121: Project Antenna

Chapter 12Test of Controller

The purpose of this chapter, is to test the designed disturbance attenuation controller. The testscenario is divided into two parts, a part where the controller is tested with ideal sensor signalsto show the theoretical performance and a "real life" part where the sensors used, are the onesdescribed in the sensor chapter. The two test scenarios and their results are discussed afterwards.

12.1 Disturbance Attenuation Controller with Ideal Measurements

To show the theoretical behavior of the disturbance attenuation controller, it is chosen to performtests that illustrate the optimal performance of the internal model principle, with the parametersfound in this report. The measurements needed in the controller are for these tests ideal, meaningthat it are measurements that describe the actual state without noise contributions.

12.1.1 Pitch Axes Disturbance Controller

To test the performance of the disturbance attenuation controller in the pitch axis, the worst casescenarios must be set up. From the Inmarsat specification, the worst case disturbances in the pitchaxis are as stated in table 12.1

Maximum range Maximum velocity Minimum time period10 deg (0.18 rad) 10 deg/s (0.18 rad/s) 6 s

Table 12.1: Inmarsat specifications for pitch axis.

These worst case values can all be integrated into one disturbance, when looking at one sinusoidas the disturbance. To have a more complex disturbance system, this must consist of two sinu-soids. When this is the case, two tests must be performed to cover both worst case velocity andworst case range. This is due to the fact, that the range is exceeded, when looking at a disturbancesystem consisting of two disturbances, including maximum velocity.The frequencies of the disturbance system and the frequencies for which the controller is initiallydesigned, are presented in table 12.2. The maximum frequency possible is 1.05 [rad/s] (6 s. timeperiod)

113

Page 122: Project Antenna

12.1. Disturbance Attenuation Controller with Ideal Measurements

Initial controller setup 0.1 [rad/s] 0.18 [rad/s]Disturbance system 0.4 [rad/s] 1.1 [rad/s]

Table 12.2: Frequencies for which the controller is initially designed and the frequencies of the actual dis-turbance system influencing the pitch axis.

Two Sinusoid Disturbances

This test will be a worst case test, regarding the range of the disturbance. The adaptation of thecontroller parameters is activated from the beginning of the simulation. Figure 12.1, presents thedisturbance system and the output from the system with controller. The errors presented are seenaccording to the pitch axis. This means that an error in pitch, seen from the antenna frame, canbe both in elevation and cross-elevation according to the antenna joint angles. However the valueof the error will not be bigger in the antenna frame, than the one seen in the pitch axis, since theonly difference is kinematic rotations to see the error from another frame.From the errors illustrated in figure 12.1, it can be seen that the controller preforms according tothe internal model theory, which states that the tracking error asymptotically goes towards zero.In this worst case scenario, this is however a slow minimizing of the error. The explanation of this,is that one time period of the disturbance system, in this case is rather long, see figure 12.1. Thishas the influence, that the adaptation of the controller parameters will adapt with a speed similarto the time period to the disturbance system, meaning that the adaptation speed is dependable onthe total time period of the disturbance system. Other choices of the disturbance frequencies, canresult in a faster decay towards zero, if the time period of the resulting disturbance is less thanthe one illustrated in figure 12.1.When the simulation starts, the disturbance system velocity is at its maximum and the position iszero. Even though the error velocity is at maximum at start time, the controller is rather fast tominimize the main effect of this disturbance. A scenario as this will of course not be realistic in"real life", though it is suitable for a worst case test.

114

Page 123: Project Antenna

Chapter 12. Test of Controller

0 20 40 60 80 100 120 140 160 180 200-20

-10

0

10

20

time[s]

am

plit

ude

pitch dist. position [deg]pitch dist. velocity [deg/s]

5 10 15 20 25 30 35 40 45 50 55

-1

0

1

2

time[s]

am

plit

ude

pitch error position [deg]pitch error velocity [deg/s]

40 60 80 100 120 140 160 180

-0.1

0

0.1

0.2

time[s]

am

plit

ude

pitch error position [deg]pitch error velocity [deg/s]

0

20 200

60

Disturbance system time period

Figure 12.1: Two sinusoid disturbance system influencing the pitch axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses. In this test the adaption of the controller parameters is activated from thebeginning.

To show the effect, of the adaptation of the controller parameters, the same test with a two si-nusoid disturbance system, has been performed on the pitch system. This time the adaptation ofthe parameters is activated after 100 [s]. The result of this test can be seen in figure 12.2. Asexpected, this results in a steady state error. After adaptation is activated, it is seen that the errorgoes towards zero, with the same speed as in figure 12.2.

115

Page 124: Project Antenna

12.1. Disturbance Attenuation Controller with Ideal Measurements

0 20 40 60 80 100 120 140 160 180 200-20

-10

0

10

20

time[s]

ampl

itude

0 20 40 60 80 100 120 140 160 180-2

0

2

4

time[s]

ampl

itude

20 40 60 80 100 120 140 160 180 200-0.2

-0.1

0

0.1

0.2

time[s]

ampl

itude

pitch dist. position [deg]pitch dist. velocity [deg/s]

pitch error position [deg]pitch error velocity [deg/s]

pitch error position [deg]pitch error velocity [deg/s]

200

Figure 12.2: Two sinusoid disturbance system influencing the pitch axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses. Adaptation of the controller parameters is activated after 100 [s].

One Sinusoid Disturbance

As mentioned earlier the test with a disturbance system consisting of two sinusoids, was not ableto test for both worst case velocity and range. To perform such a test, it is necessary to have adisturbance system consisting of one sinusoid. The frequency of the disturbance of this test isstated in table 12.3

Initial controller setup 0.1 [rad/s] 0.18 [rad/s]Disturbance system 1.1 [rad/s] -

Table 12.3: Frequencies for which the controller is initially designed and the frequency of the actual distur-bance system influencing the pitch axis.

The result of this test can be seen in figure 12.3. In this test the adaption of controller parametersis activated from start. On the figure it can be seen, that the error rapidly goes towards zero, astime goes to infinity. Since the disturbance system only consists of one sinusoid, the adaptation iscapable of adjusting the parameters faster, than in the case with two sinusoid disturbance. Whenlooking at the time period of respectively the one and two sinusoid disturbance system, it is clearthat the adaption will perform faster when having the one sinusoid disturbance system.

116

Page 125: Project Antenna

Chapter 12. Test of Controller

0 20 40 60 80 100 120 140 160 180 200-20

-10

0

10

20

time[s]

am

plit

ude

pitch dist. position [deg]pitch dist. velocity [deg/s]

0 10 20 30 40 50 60-4

-2

0

2

4

time[s]

am

plit

ude

pitch error position [deg]pitch error velocity [deg/s]

40 60 80 100 120 140 160 180

-4

-2

0

2

4

x 10 -3

time[s]

am

plit

ude

pitch error position [deg]pitch error velocity [deg/s]

20 200

Figure 12.3: One sinusoid disturbance system influencing the pitch axis and system output with the distur-bance attenuation controller. The last part is also the system output, zoomed in to show thebehavior as time elapses. In this test the adaption of the controller parameters is activatedfrom the beginning.

12.1.2 Roll Axes Disturbance Controller

To test the performance of the disturbance attenuation controller in the roll axis, the worst casescenarios must be set up, as for the pitch axis. From the Inmarsat specification, the worst casedisturbances in the roll axis, are as stated in table 12.4

Maximum range Maximum velocity Minimum time period30 deg (0.52 rad) 23.5 deg/s (0.41 rad/s) 8 s

Table 12.4: Inmarsat specifications for roll axis.

The frequencies of the disturbance system and the frequencies for which the controller is initiallydesigned, are presented in table 12.5. The maximum frequency possible is 0.78 [rad/s] (8 s. timeperiod)

Initial controller setup 0.1 [rad/s] 0.18 [rad/s]Disturbance system 0.2 [rad/s] 0.8 [rad/s]

Table 12.5: Frequencies for which the controller is initially designed and the frequencies of the actual dis-turbance system influencing the roll axis.

The test scenarios for the roll axis, are similar to the ones of the pitch axis. A worst case scenarioaccording to table 12.4 is chosen, and the frequencies of the disturbance system, are as stated in

117

Page 126: Project Antenna

12.1. Disturbance Attenuation Controller with Ideal Measurements

table 12.5. The output from this simulation can be seen in figure 12.4. Compared with the similarpitch test presented in figure 12.1, it is seen that the response of the system is similar, howeverthe error decays faster towards zero, due to the shorter time period of this disturbance system.

0 20 40 60 80 100 120 140 160 180 200-40

-20

0

20

40

time[s]

am

plit

ude

20 40 60 80 100 120 140 160 180 200-4

-2

0

2

4

6

time[s]

am

plit

ude

20 40 60 80 100 120 140 160 180 200

-0.05

0

0.05

0.1

0.15

time[s]

am

plit

ude

roll dist. position [deg]roll dist. velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

Figure 12.4: Two sinusoid disturbance system influencing the roll axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses. In this test the adaption of the controller parameters is activated from thebeginning.

To see the performance of the controller, with and without the adaptation on, this has been simu-lated and is illustrated in figure 12.5. Here the adaptation is activated after 100 [s] and it is clearlyseen, that the adaptation of the controller parameters has a significant role in the control scenario.

118

Page 127: Project Antenna

Chapter 12. Test of Controller

0 20 40 60 80 100 120 140 160 180 200-40

-20

0

20

40

time[s]

am

plit

ude

0 10 20 30 40 50

-4

-2

0

2

4

6

time[s]

am

plit

ude

40 60 80 100 120 140 160 180

-0.5

0

0.5

time[s]

am

plit

ude

roll dist. position [deg]roll dist. velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

60

20 200

Figure 12.5: Two sinusoid disturbance system influencing the pitch axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses. Adaptation of the controller parameters is activated after 100 [s].

12.2 Disturbance Attenuation Controller with Sensor Input

The previous test section, showed the advantages of using the internal model principle in a sys-tem influenced by significant disturbances, when having perfect measurements. However perfectmeasurements are not a realistic scenario, and a test of the controller, using the sensors describedin this report must be performed.The tests performed in the following, will be influenced of the same disturbances as in the testregarding ideal input to the controller.

12.2.1 Pitch Axes Disturbance Controller

The sensors used for this simulation are the rate gyro(ADXRS150) and the tilt sensor(SCA100T),which are described in the sensor chapter. The tilt sensor is susceptible of tangential accelera-tions and to have a more precise indication of the tilt state, this measurement has been through aKalman filter.The system output with these sensors, can be seen in figure 12.6. The figure shows the output,using two different sets of feedback gains (N). The reason for this, is due to the tilt sensor mea-surements, that in these worst case tests has a considerable offset compared to the real tilt angle.When this offset goes into the controller, the response will be an erroneous input signal comparedto the ideal input signal. To overcome this problem the tilt signal can be weighted less in the feed-back gain, to minimize the influence from the offset in the tilt measurement. However this is notwithout any costs, since this will result in a slower attenuation of the error in position.

119

Page 128: Project Antenna

12.2. Disturbance Attenuation Controller with Sensor Input

As this disturbance attenuation controller is intended as an inner loop stabilizer, and the final con-trol also consists of an outer loop tracking control, it is not seen as any problem, that the positionstate in the inner loop has a slow response. Whereas it is important to have the error velocityattenuated.

0 20 40 60 80 100 120 140 160 180 200-15

-10

-5

0

5

10

15

time[s]

am

plit

ude

0 20 40 60 80 100 120 140 160 180

-0.5

0

0.5

1

1.5

time[s]

am

plit

ude

0 20 40 60 80 100 120 140 160 180

-0.5

0

0.5

1

1.5

time[s]

am

plit

ude

pitch dist. position [deg]pitch dist. velocity [deg/s]

pitch error position [deg]pitch error velocity [deg/s]

pitch error position [deg]pitch error velocity [deg/s]

200

200

N = [-1 -10]

N = [-0.5 -10]

Figure 12.6: Two sinusoid disturbance system influencing the pitch axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses.

With the sensors used, it is not possible to have an error that attends zero, this is however clearsince it are not ideal measurements used.To show that the adaptation of parameters and by this the internal model controller are performingoptimal, the adapted parameters have been read after the simulation. With these parameters putinto the controller, it is verified which disturbance frequencies the controller has been adapted to.The result of this can be seen in equation 12.1 to eq:control-test-eig-Psi, where equation 12.2 isthe eigenvalues of the real disturbance.

120

Page 129: Project Antenna

Chapter 12. Test of Controller

Ψ =

4.1130.5070.1380.111

(12.1)

eig(S) =

−0.000 + 1.100i−0.000 − 1.100i−0.000 + 0.400i−0.000 − 0.400i

(12.2)

eig(F0 + G0Ψ) =

−0.022 + 1.085i−0.022 − 1.085i−0.003 + 0.397i−0.003 − 0.397i

(12.3)

From equation 12.3, it can be seen that the adaption of the controller parameters, are performingsatisfactory, even though that the measurement of the tilt state is erroneously. This indicates thatthe internal model principle is able to have an optimal performance, with erroneous measure-ments.

12.2.2 Roll Axes Disturbance Controller

The test scenario set up for the pitch axis, will also be used to test the roll axis, however with thedisturbances for the roll axis.The result of this test can be seen in figure 12.7. Also in the roll axis, it can be seen that lessweighting on the position state, result in less error, however a slower response.As for the pitch axis controller, the value of the adaptive controller parameters have been read, tosee if the adaptation is able to recognize the disturbance frequencies. The value of the parametersand the eigenvalues for both the real disturbances and the internal model controller part can beseen in equation 12.4 to 12.6. Also the adaptation of the parameters for the roll axis is satisfactory,as they come very close to the optimal value.

Ψ =

4.1510.4350.0480.019

(12.4)

eig(S) =

−0.000 + 0.800i−0.000 − 0.800i−0.000 + 0.200i−0.000 − 0.200i

(12.5)

eig(F0 + G0Ψ) =

−0.006 + 0.817i−0.006 − 0.817i−0.007 + 0.204i−0.007 − 0.204i

(12.6)

121

Page 130: Project Antenna

12.2. Disturbance Attenuation Controller with Sensor Input

0 20 40 60 80 100 120 140 160 180 200-30

-20

-10

0

10

20

30

time[s]

am

plit

ude

0 20 40 60 80 100 120 140 160 180

-1

-0.5

0

0.5

1

1.5

2

time[s]

am

plit

ude

0 20 40 60 80 100 120 140 160 180

-1

-0.5

0

0.5

1

time[s]

am

plit

ude

roll dist. position [deg]roll dist. velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

roll error position [deg]roll error velocity [deg/s]

200

200

N = [-1 -10]

N = [-0.5 -10]

Figure 12.7: Two sinusoid disturbance system influencing the roll axis and system output with disturbanceattenuation controller. The last part is also the system output, zoomed in to show the behavioras time elapses.

12.2.3 Orientation Error of the Antenna Plate

An error seen in the base frame, does not express the value of the orientation error seen from theantenna plate. To illustrate what the orientation error with respect to the satellite vector is, thepitch and roll errors must be rotated to the antenna frame and seen with respect to a static satellitevector. The errors in pitch and roll from the test scenario previously described have been rotatedto the antenna frame, and the errors in orientation, is seen in figure 12.8, and 12.9.Three scenarios have been set up, to view the error in orientation. The reason to show differentscenarios, is that the error in orientation, due to pitch and roll errors, are dependable on the jointangles.

In figure 12.8, the test scenario is that the satellite vector is aligned with the boresight vector fromstart of the simulation. Furthermore the alignment of the antenna, is that all the joint angles arezero. With a scenario as this, a disturbance in roll only, will result in that there is no orientationerror to the satellite, since roll only will introduce an x-component error in the antenna frame.Rotation about x in the antenna frame, has no influence in the orientation to the satellite. As seenin figure 12.8 the main error is in elevation, due to the alignment of the antenna relative to thebody frame. It is also seen that the errors in orientation, are less or equal the values from pitchand roll, due to the fact, that it is only rotation of angles.

122

Page 131: Project Antenna

Chapter 12. Test of Controller

20 40 60 80 100 120 140 160 180

-1

0

1

time[s]

am

plit

ud

e

Roll error [deg]

0 20 40 60 80 100 120 140 160 180 200-1

0

1

time[s]

am

plit

ud

e

Pitch error [deg]

0 20 40 60 80 100 120 140 160 180 200-1

0

1

time[s]

am

plit

ud

e

Elevation error [deg]

0 20 40 60 80 100 120 140 160 180 200-0.02

0

0.02

time[s]

am

plit

ud

e Cross elevation error [deg]

200

Figure 12.8: Upper two graphs show the errors from the pitch and roll controllers. The lower graphs showthe errors in orientation to the satellite

In figure 12.9, a similar test scenario is performed. Here the elevation joint, has an angle of 45degree. With an alignment as this, pitch or roll errors will give both elevation and cross-elevationerrors in the orientation to the satellite.

0 20 40 60 80 100 120 140 160 180 2001

0

1

time[s]

am

plit

ude

0 20 40 60 80 100 120 140 160 180

1

0

1

time[s]

am

plit

ud

e

Elevation error [deg]

Cross elevation error [deg]

Figure 12.9: The graphs show the errors in orientation to the satellite

12.2.4 Test with the SH50056 Tilt Sensor

The SH50056 tilt sensor modelled in the sensor chapter, is the type of tilt sensor that is currentlyused on the F77 antenna system. A test of the system including this sensor must also be per-

123

Page 132: Project Antenna

12.3. Conclusion

formed to show the total performance.This sensor has some disadvantages in form of a low bandwidth and it is influenced by accelera-tions. Since the sensor measurement is based on fluid, it has been found, that it was out of scopeto model the dynamics of this sensor, regarding the acceleration contribution. This means that thefollowing test including the SH50056 sensor will have a better performance than real life, whenthe accelerations is not taken into account.In figure 12.10, the test scenario from the roll axis, is compared to the system output using theSH50056 tilt sensor. Both output have been found, by the use of the feedback gain N=[-1 -10].It is seen that the system using the SH50056 tilt sensor has the best performance. However whentaken into account, that this sensor is not fully modelled, it is the believe of this project group,that the improvement do not match the missing part regarding acceleration contribution.

0 20 40 60 80 100 120 140 160 180

-1.5

1

-0.5

0

0.5

1

1.5

2

time[s]

ampli

tude

roll error position [deg]roll error velocity [deg/s]

20 40 60 80 100 120 140 160 180

-1

-0.5

0

0.5

1

1.5

2

2.5

time[s]

ampli

tude

roll error position [deg]roll error velocity [deg/s]

200

2000

Based on SCA100T (Tilt)

Based on SH50056 (Tilt)

Figure 12.10: Two sinusoid disturbance system influencing the pitch axis and system output with distur-bance attenuation controller. The last part is also the system output, zoomed in to show thebehavior as time elapses.

12.3 Conclusion

The two test scenarios consisting of testing with ideal input and sensor measurements, have beenperformed. The test with ideal input, showed that the theory presented, regarding the internalmodel was confirmed via simulations. The tests showed that the error went towards zero asthe time went towards infinity. It was also shown, that without any adaptation of the controllerparameters, the error became a steady state error.

The test using sensor measurements, showed that an acceptable performance, could be achievedusing erroneous measurements, due to the sensor dynamics. Furthermore the tests showed that,even though the error was not able to go towards zero, the adaptation of the controller parameterswas still able to adapt to the real disturbance. This shows that the internal model principle is fullyfunctional to be implemented in a control system, as on the F77 antenna system.From the project definition, it was stated that the development of antenna systems to the newmaritime market, resulted in a need for a high precision antenna satellite tracking system. FromSpaceCom A/S, it is evaluated that the term "high precision", is approximately one degree oferror in orientation to the satellite. From the tests it is seen, that the error in pitch and roll canbe held below one degree. This error is however not the error in orientation to the satellite, stillthe value of the error will not increase, since it is only depending on rotations to express it asorientation error. The orientation error has also been shown, and it is seen that not all errors in

124

Page 133: Project Antenna

Chapter 12. Test of Controller

the base frame, influences the orientation error.In the final control system, a tracking control part must be developed. With the performance fromthe disturbance attenuation controller, it is evaluated by this project group, that the final trackingerror, can be held within one degree of orientation error.

125

Page 134: Project Antenna
Page 135: Project Antenna

Chapter 13Conclusion

This project group has developed an antenna stabilizing controller, that attenuate disturbancescaused by ship motions at sea. A complete Simulink simulation model is developed and newsensors are introduced. A suggestion on another location of these sensors are presented andthe developed disturbance attenuation controller, is based on this new location. Furthermore ageneralized internal model based controller, has been developed.

The project has been in co-operation with the Danish company SpaceCom A/S, who has a leadingposition in the development and production of satellite tracking antennas for maritime use. Theirpresent flagship, is the F77 tracking antenna, that comply with the Inmarsat specification for theFleet 77 communication service. A copy of this antenna has been at disposal for this projectgroup, for test and verification of the simulation model and controller performance.

The objective from SpaceCom A/S was to

Review the total F77 antenna system for possible changes or improvements whichcan help to fulfill the requirements to the next generation of marine satellite trackingantenna systems from SpaceCom A/S. These improvements can be within the me-chanical system, the sensors, the actuators or the control system - to achieve a controlsolution that meets the requirements for sustainable communication under variousexternal disturbances (winds, waves)

where the mechanical system is out of scope in this project.

This project group have been looking into new design ideas for optimization and developmentof future tracking antennas. The overall conclusion, is that these new design ideas have beendeveloped successfully, and have potential to improve the overall performance of the antennasystem significantly. The work has not been concentrated in one specific area of the antennasystem, neither to improve the overall performance by fine tuning the existing system. In contraststhis project have been looking deeper into extensive and long-lasting developing solutions. Sincethis master’s thesis has limited developing resources, the focus have been on the development ofnew design strategies, leaving out e.g. the final tracking control and implementation.

Sensors

This project has looked critical into the currently used sensors and their respective sensing axis. Ithas been suggested to place the sensors on the base of the antenna platform, to have a more exact

127

Page 136: Project Antenna

measurement of the disturbance, caused by the ship motions. This new location is in accordancewith the used internal model based controller approach, used in this project. In addition to this,the new location is not affected by accelerations, caused by the actuators. The accelerations inthe system, causes the largest contributions to the error in the measurements.

Two different tilt sensors has been examined: an accelerometer based (SCA100T), and a elec-trolytic based sensor (SH50056). A kalman filter for sensor fusion has been developed, to im-prove the overall performance of the tilt measurements. It has been proven that it, up to a point, ispossible to the remove the translatory contribution in the SCA100T sensor, caused by tangentialaccelerations of the antenna. The kalman estimate is extensively based on the gyro measurement,however any drift from integrating the rate gyro, can be compensated by the tilt measurementand thereby accomplish a good tilt estimate. In a worst case scenario, the error in the SCA100Tmeasurement is 85%. This is decreased by the kalman estimate to approximately 20%.

The SH50056 tilt sensor has been modelled, however its dynamic during heavy acceleration hasnot been analyzed, since no satisfactory data were available. For this reason the sensor model, isonly valid for small accelerations of the base frame. Also for this sensor a kalman filter has beendeveloped. The sensor has a large time constant, and it has been verified, that it is possible toremove the time delay of 0.4 [s], at room temperature, with a kalman estimate.

Two different rate gyro sensors, both based on the MEMS technology, has been examined. Thedifferences in the sensors are the signal conditioning, where the ENC-03JA rate gyro has no signalconditioning, the ADXRS150 has a built in temperature sensor, amplifier and two low-pass filters.Use of the ADXRS150 could exclude additional hardware in the existing antenna configuration.

The squint sensor is modelled regarding a time delay and a linear map, that converts the measure-ment from an integer value to an error angle around the elevation and cross-elevation in radians.The cross correlation between the elevation and the cross elevation axes is included. With thismap the typically measurement error is approximately 0.2[deg] with a time delay of 30[ms]. Thisis concluded to be a satisfying result, to obtain an overall tracking error below 1[deg].

Actuators

The dynamic model of the antenna system and the dynamic models of the actuators have beenderived by [03gr1030i, 2003], and their work have critically been analyzed. From measurementsit can be concluded that the actuators do not saturate, when using the maximum accelerations andthe maximum velocities calculated by group [03gr1030i, 2003].

Controller

A disturbance attenuation controller has been developed, using the internal model approach. Thetheory of this control principle, has been presented, and the ability to have a robust performanceand a tracking error which asymptotically decays towards zero, have been verified through calcu-lations and simulations.These simulations showed that this control principle, is capable of improving the performance ofthe F77 antenna system, regarding the ability to have less orientation error. From SpaceCom itis stated, that the error in orientation, is to be below one degree, to fulfil the requirements of thefuture antenna development. The simulations performed, shows that this requirement of less thanone degree in orientation, can be achieved, by the use of the sensors and control design presentedin this report.

128

Page 137: Project Antenna

Chapter 13. Conclusion

The final tracking control has not been developed in this project, however the performance in-cluding this tracking control, will not decrease the performance, rather increase the performance.

13.1 Perspective

To enhance the overall performance of the F77 tracking antenna system, the measurement fromthe tilt sensors, located on the base frame could be optimized with knowledge of the radius fromthe tangential acceleration. This is possible by the use of adaptive filtering, where the radius isthe unknown parameter. With an estimate of this unknown parameter, it is possible to get a muchmore precise kalman estimate. Another optimization could be to leave out the tilt informationwhen being in high seas. This could be performed by introducing some fuzzy logic, that filtersout the tilt measurement, when large velocities are detected from the rate gyro measurements.The controller developed in this project, has not been implemented in the antenna system, dueto the priorities stated in the project strategy. However this implementation, is not seen as anyproblem. If the controller was to be implemented, this project group suggests that the disturbanceattenuation controller is expanded to also include the yaw axis. Since rotation in this axis can berather slow, other sensor types than a rate gyro, can be evaluated e.g. a digital compass.The output from the developed controller, is to be rotated to the frames, where the actuators areplaced. To perform such a rotation the joint angles must be known, this can be solved by keepingtrack of the steps given to the actuators, however, if the actuator is not optimal, this can over timebecome a wrong angle indication. This problem could be solved by introducing encoders on theactuators, expressing the joint angle.

129

Page 138: Project Antenna
Page 139: Project Antenna

Bibliography

[03gr1030i, 2003] 03gr1030i, A. (June,2003). Design of a Satellite Tracking Control System.Aalborg University.

[Alberto Isodori, 2003] Alberto Isodori, Lorenzo Marconi, A. S. (2003). Robust AutonomousGuidance: An Internal Model Approach. Springer. ISBN: 1-85233-695-1.

[Craig, 1989] Craig, J. J. (1989). Introduction to Robotics, Mechanics and Control. Addison-Wesley Publishing Company. ISBN: 0201095289.

[Devices, 2004] Devices, A. (2004). ADXRS150, 150deg/s Single Chip Yaw Rate Gyro withSignal Conditioning - Data sheet. Analog Devices.

[Fossen, 2002] Fossen, T. I. (2002). Marine Control Systems - Guidance, Navigation, and Con-trol of Ships, Rigs and Underwater Vehicles. Marine Cybernetics. ISBN: 82-92356-00-2.

[Frank Wattenberg, ] Frank Wattenberg, Department of Mathemat-ics, M. S. U. B. M. . Spherical coordinate systems.http://www.math.montana.edu/frankw/ccp/multiworld/multipleIVP/spherical/body.htm.

[Glass and Electronics, ] Glass, S. and Electronics, I. Tilt sensor theory, spectron glass and elec-tronics, inc. http://www.spectronsensors.com/appsheets/SAN-201-1703.pdf.

[Haverre and Moan, 1985] Haverre, S. and Moan, T. (1985). On some uncertainties related toshort term stochastic modelling of ocean waves. CML Publications Ltd.

[Jakobs, ] Jakobs, J. Attitude control. http://fastascent.com/Projects/Attitude_Control/Rate_Gyro_s/rate_gyro_s.html.

[Mohinder S Grewal, 2001] Mohinder S Grewal, A. P. A. (2001). Kalman Filtering, Theory andPractice Using Matlab, second edition. Wiley Interscience. ISBN: 0-471-39254-5.

[Perez and Blanke, ] Perez, T. and Blanke, M. A simple method to tune shaping filters for sim-ulation of ship motion in irregular seas. Dept. of Electrical and Computer Engineering TheUniversity of Newcastle, NSW, 2308, Australia, and Section of Automation at Ørsted.DTUTechnical University of Denmark, Building 326 DK-2800 Kgs. Lyngby, Denmark.

[Puccio, ] Puccio, M. R. Tilt sensor theory, spectron glass and electronics, inc.http://sensorsmag.com/articles/0904/41/main.shtml.

[Vic Elliott, ] Vic Elliott, CEng MIEE, C. L. U. Electrolytic principle of operation.http://www.clino.co.uk/tiltpr.htm.

131

Page 140: Project Antenna
Page 141: Project Antenna

Appendix AInmarsat Specification

This section will determine the specifications of the body-fixed disturbance based on the specifi-cations specified by Inmarsat.

A.1 Roll

The roll disturbance is by assumption sinusoid, and is calculated as a one-axis disturbance. Thespecifications from inmarsat is given as in section 3.3 as

Ar = 30[deg] = 0.524[rad]Tr = 8[s]

fr =18

= 0.125 ⇒ ωr = 0.7854 (A.1)

where Ar is the amplitude of the maximum roll angle, Tr is the time period of the roll motion, andfr is the frequency of the ship motion. From the Inmarsat specification, it is possible to calculatemaximum angular velocity and the maximum angular acceleration of the roll motion. This canbe done as:

φ = Ar sin(ωr t)φ = 0.524 sin(0.7854 t)

φmax = 0.524[rad] = Ar (A.2)

p =dφ

dt= ωr Ar cos(ωr t)

p = 0.4115 cos(0.7854 t)pmax = 0.4115[rad/s] (A.3)

p =dp

dt= −ω2

r Ar sin(ωr t)

p = −0.323 cos(0.7854 t)pmax = 0.323[rad/s2] (A.4)

A133

Page 142: Project Antenna

A.2. Pitch

A.2 Pitch

The pitch disturbance is by assumption sinusoid, as the roll disturbance, and is calculated as aone-axis disturbance. The specifications from inmarsat is given in section 3.3 as

Ap = 10[deg] = 0.175[rad]Tp = 6[s]

fp =16

= 0.167 ⇒ ωp = 1.049 (A.5)

where Ap is the amplitude of the maximum pitch angle, Tp is the time period of the pitch motion,and fp is the frequency of the ship motion. From the Inmarsat specification, it is possible tocalculate maximum angular velocity and the maximum angular acceleration of the pith motion.This can be done as:

θ = Ap sin(ωp t)θ = 0.175 sin(1.049 t)

θmax = 0.175[rad] = Ap (A.6)

q =dθ

dt= ωp Ap cos(ωp t)

q = 0.1836 cos(1.049 t)qmax = 0.1836[rad/s] (A.7)

q =dq

dt= −ω2

p Ap sin(ωp t)

q = −0.1927 sin(1.049 t)qmax = 0.1927[rad/s2] (A.8)

A.3 Yaw

The yaw disturbance is by assumption sinusoid, as the roll disturbance, and is calculated as aone-axis disturbance. The specifications from inmarsat is given in section 3.3 as

Ay = 8[deg] = 0.140[rad]Ty = 50[s]

fy =150

= 0.020 ⇒ ωy = 0.126 (A.9)

where Ay is the amplitude of the maximum yaw angle, Ty is the time period of the yaw motion,and fy is the frequency of the ship motion. From the Inmarsat specification, it is possible tocalculate maximum angular velocity and the maximum angular acceleration of the yaw motion.This can be done as:

A134

Page 143: Project Antenna

Appendix A. Inmarsat Specification

ψ = Ay sin(ωy t)ψ = 0.140 sin(0.126 t)

ψmax = 0.140[rad] = Ay (A.10)

r =dψ

dt= ωy Ay cos(ωy t)

r = 0.0176 cos(0.126 t)rmax = 0.0176[rad/s] (A.11)

r =dr

dt= −ω2

y Ay sin(ωy t)

r = −0.0022 sin(0.126 t)rmax = 0.0022[rad/s2] (A.12)

A135

Page 144: Project Antenna
Page 145: Project Antenna

Appendix A. Inmarsat Specification

A.4 Nomenclature

Vector Description

Θe =

φ

θψ

Attitude of the body (euler angles)

ωb =

p

qr

Body fixed angular velocity

Θj =

θazi

θelev

θc−elev

Joint angle positions

ωj =

ωazi

ωelev

ωc−elev

Joint angular velocity

Oe =

[ϕe

θe

]Orientation error

ωsat3,sat =

[ωOelev

ωOc−elev

]Angular velocity of the orientation error

A137

Page 146: Project Antenna

A.4. Nomenclature

Variable Descriptionε Boresight vector, Line of sight vector, or

Normal Vector to the antenna element.σ Satellite vector, direction of the satellite given in the CE frame.θAE Spherical direction of the antenna element in the horizontal planeϕAE Spherical direction of the antenna element in the vertical planeθe Error angle in cross-elevationϕe Error angle in elevationp Angular velocity around the roll axisq Angular velocity around the pitch axisr Angular velocity around the yaw axisφ Pitch angleθ Roll Angleψ Yaw Anglep Angular velocity around the roll axisq Angular velocity around the pitch axisr Angular velocity around the yaw axisφ Measured pitch angleθ Measured roll Angleψ Measured yaw Angleθazi Angle of the azimuth jointθelev Angle of the elevation jointθc−elev Angle of the cross elevation jointωazi or θazi Angular velocity of the azimuth jointωelev or θelev Angular velocity of the azimuth jointωc−elev or θc−elev Angular velocity of the azimuth jointFrames Frame DescriptionAzi frame Azimuth frameE frame Elevation frameCE frame Cross-Elevation frameSAT frame Satellite frameBody frame Body fixed frame attached to the ship-fixed frameBase frame Coincides with the body frameStability frame Frame that coincides with the Body frame in total calm sea.ECEF frame Earth Centered Earth Fixed frameinitial frame Coincides with the ECEF frame

A138

Page 147: Project Antenna

Appendix BSquint Sensor Measurement

Application of the squint sensor as a control input given in SI units requires that the integer valuessent by the sensor must be mapped to an angle value. In order to obtain this map, measurementsof the SpaceCom F77 antenna must be obtained, during transmission from a reference antenna.Furthermore this sensor must be analyzed with respect to noise and dynamics.In this section these issues are analyzed.

B.0.1 Signal Map

Use of the squint sensor as a controller input, requires that the output integer from the sensormust be mapped to an angle. Because the success criteria for error angles are set to 1, the limitsfor this map are chosen to ± 1.5 in the elevation and cross-elevation angle.

Theory

Having validated the stepping motor drivers, so that the increments sent, are also the incrementsperformed, a software driver that scans a grid of positions within the limits, must be developed.In order to analyze the sensor characteristic it is chosen to include two types of scans, a horizontaland a vertical scan.The idea is to perform measurements, during transmission from a reference antenna, at a specifiedgrid within the chosen limits, by horizontal or vertical scanning. The reference antenna is a LP(Log Period) antenna, which is the only antenna available at the university.

Logging of exact position and error integers are performed by the use of the step motor driversand the squint sensor respectively. These squint sensor measurements can then be mapped to theexact positions, using error minimizing algorithms for determination of mapping constants, oncethe structure of the map have been chosen.

Experiment Arrangement and Execution

The xPC environment is used for actuation of the links, controller implementation and data col-lection.

B139

Page 148: Project Antenna

As illustrated in figure B.1, the F77 antenna is aligned horizontally and vertically with the ref-erence antenna prior to the measurement execution. The measurement procedure is described inthe following.

d

Figure B.1: Setup used for measurements of the squint sensor, where d=6.1[m].

1. In order to ensure that the boresight vector of the F77 antenna is pointing towards thestrongest signal, a controller is developed that minimizes the error angles. At the pointwhere the error angle is zero, the driver block is initialized (0,0). This point is the originof the of the measurement grid

2. After this initialization the antenna element is driven to one of the four limits in both ele-vation and cross-elevation, e.g. (1.5,1.5)

3. Measurements of the defined grid can now be performed by scanning through a horizontalor vertical line, using specified increments for the elevation or the cross-elevation actuator.After each increment a 2 seconds delay is inserted before the actual logging of data in orderto avoid, that vibrations will influence the measurement.

4. When the limit for the scan direction is reached an increment of the actuator, not used forscanning, is performed.

5. The scan direction is then reversed, and scanning is again performed until the limit for thisdirection is reached

6. Item 4 and 5 are repeated until all measurements within the limits are obtained.

The sizes of the increments are given in table B.1

Link Increment SizeElevation 0.09

Cross-Elevation 0.1

Table B.1: Step increments for grid of measurements

Equipment

Table B.2 lists the used equipment.

B140

Page 149: Project Antenna

Appendix B. Squint Sensor Measurement

Type Model Serial Nr. AUC Nr.Signal Generator HP 8780A 08419LP Antenna Watkins-Johnson WJ-48010 08742Power Supply Hameg HM-7042-3 -

Table B.2: Equipment used to examine noise on gyro measurements

Results and Discussion

Measurement data of the squint sensor errors and the exact position is obtained. These data mustbe used in the determination process of a mapping function, that takes the integer values as inputand give the error angles as output.

Theory

In section 6.3 a cross-correlation between the elevation and the cross-elevation error angle wasfound and the determination of the covariance for the two error angles, is calculated according toequation B.1

σ2x,y =

∑Ni=1(xi − x)(yi − y)

N − 1(B.1)

Experiment Arrangement and Execution

Measurements for determination of the variance, are performed by logging data, while the F77antenna and the reference antenna are aligned.

Results and Discussion

Variance A plot of the variance measurement for the squint sensor is illustrated in figure B.2.

0 2 4 6 8 10 12 14 16 18-8

-6

-4

-2

0

2x 10

-3

Map

ped

Se,

CE [r

ad]

Time [s]

0 2 4 6 8 10 12 14 16 18 -4

-2

0

2

4x 10

-3

Map

ped

Se,

E [r

ad]

Time [s]

Figure B.2: Variance measurement of the squint sensor given in radians.

B141

Page 150: Project Antenna

Calculations of the variances (σ2sq,CE and σ2

sq,E) are performed according to equation 6.17 onpage 39 and the results are listed in equation B.2 and B.3.

σ2sq,CE = 0.2259e − 5 [rad] (B.2)

σ2sq,E = 0.1229e − 5 [rad] (B.3)

During determination of the signal map the squint sensor was found to hold a cross correlationbetween the two output integers. This cross-correlation is found using equation B.1 and are givenin equation B.4

σ2sq,CE/E = 0.0198e − 5 [rad] (B.4)

The quantization is read from the measurements to be

Elevation Quantization : 1[bit/lsb] (B.5)

Cross − Elevation Quantization : 16[bit/lsb] (B.6)

B142

Page 151: Project Antenna

Appendix CStepper motor experiments

To determine the constants used in the model of the hybrid stepper motor, different experimentcan be performed, to find the resistance R[Ω], the inductance L[H], the motor constant Km[V·s/rad] and the viscous friction constant D[Nm·s/rad]

C.1 Principle of constant determination

The used hybrid stepper motor has two phases, these phases have identical physical characteris-tics, which means that it is sufficient to perform the following tests on one of the phases.

Resistance:Determination of the resistance (R[Ω]) can be done by locking the rotor and apply a constantvoltage to the terminals and measure the current. When evaluating equation C.1 it can be seenthat the contribution from eA(t) is zero, since there is no rotation. By also keeping the voltageconstant, the resulting equation becomes as in equation C.2

vA(t) = RiA(t) + LdiA(t)

dt+ eA(t) (C.1)

vA(t) = RiA(t) (C.2)

Now the equation is simplified into that Ohm’s law can be used to determine the resistance.

Inductance:Determination of the inductance (L[H]) can similarly as with the previous experiment be done bylocking the rotor. Instead of applying a constant voltage, a voltage step can be used. By analyzingthe measured current step response pursuant to equation C.3, the inductance can be found.

vA(t) = RiA(t) + LdiA(t)

dt(C.3)

Motor constant:To find the motor constant (Km[V· s/rad]) an experiment with an extra motor can be used. This

C143

Page 152: Project Antenna

C.1. Principle of constant determination

extra motor must then drive the rotor of the original one, to give it an angular velocity. Thevoltage measured across the terminals are then the e.m.f. induced be the motor. With this setup,equation C.1 can be reduced to equation C.4, since the load impedance is big compared to thecontributions from RiA(t) + LdiA(t)

dt .

vA(t) = eA(t) (C.4)

The angular velocity of the rotor is equal to the frequency of the e.m.f. measured, divided by thenumber of rotor teeth. If the e.m.f. is approximated to be cosine, then Km is the only unknownin equation C.5.

eA(t) = Kmwhscos(hrθhs(t)) (C.5)

Viscous friction:The viscous friction constant (D[Nm·s/rad]) can be found by performing a step response on themotor, and if the previous mentioned experiments have been performed this is the last elementneeded to complete the model, which means that simple estimation can lead to a reasonable result.Since this is a hybrid stepper motor with a step resolution of min. 1.8/step, the test setup must becarefully considered to avoid external disturbances, not to influence the very small step response.

C144

Page 153: Project Antenna

Appendix DStability Calculations

To verify that the error asymptotically decays to zero as time goes to infinity, equations D.5 - D.8must hold.

ξ = Fξ + G1e + G2y2 (D.1)

u = Hξ + K1e + K2y2 (D.2)

x = A(µ)x + B(µ)u + P (µ)w (D.3)

y = C(µ)x + Q(µ)w (D.4)

Suppose a controller of the form (D.1-D.2) robustly stabilizes (D.3-D.4), then this controller isrobust and the error asymptotically decays to zero as time goes to infinity iff. there for any µ ∈ Pexist the tripletmatrices Π Σ and R s.t.:

ΠS = A(µ)Π + B(µ)R + P (µ) (D.5)

0 = C1(µ)Π + Q1(µ) (D.6)

and

ΣS = FΣ + G2(C2(µ)Π + Q2(µ)) (D.7)

R = HΣ + K2(C2(µ)Π + Q2(µ)) (D.8)

The matrices A, B ,P, G2, K2, C1, Q1 and S are given by the system, the exosystem, and thecontroller dynamic.

A =[

0 10 0

]B =

[01

]P =

[1 0 1 00 0 0 0

]G2 = 0 K2 = 0 (D.9)

C1 =[

1 00 1

]Q1 =

[0 0 0 01 0 1 0

]S =

0 Ω1 0 0−Ω1 0 0 0

0 0 0 Ω2

0 0 −Ω2 0

(D.10)

D145

Page 154: Project Antenna

From

0 = C1(µ)Π + Q1(µ) (D.11)

it is possible to calculate Π

Π =[

0 0 0 0−1 0 −1 0

](D.12)

and from equation

ΠS = A(µ)Π + B(µ)R + P (µ) (D.13)

it is possible to determine R as

R =[

0 −0.1 0 −0.2]

(D.14)

Finally it must be possible to determine Σ from any F and H matrices that stabilizes the systemD.3 - D.4. The H matrix has been chosen while the F matrix partly has been chosen and partlycalculated by the equations

ΣS = FΣ + G2(C2(µ)Π + Q2(µ)) (D.15)

R = HΣ + K2(C2(µ)Π + Q2(µ)) (D.16)

as

F =

1 2.08 0 0−0.5 −1 0 0

0 0 0.5 2.60 0 −0.1 −0.5

H =

[ −1 −1 −1 −1]

(D.17)

From equations (D.8-D.8) Σ has been determined

Σ =

0 0 0.06897 0.37240 0 −0.06896 −0.1724

0.005882 0.1235 0 0−0.005882 −0.02353 0 0

(D.18)

D146

Page 155: Project Antenna

Appendix E

Advantages and DisadvantagesIntroduced by the SAT Frame

In this appendix the matlab simulation of the advantages and disadvantages in introducing theSAT frame (Satellite frame).

0 2 4 6 8 10 12 14 16 18

−10

−8

−6

−4

−2

0

2

4

6

8

10

Time [s]

Ang

ular

Vel

ocity

[deg

/s]

Orientation Error Velocity in theSAT frame using the squint angle

Orientation Error Velocity in theCross−elevation frame

Orientation Error Velocity in theSAT frame

Figure E.1: Definition of the orientation error angles elevation ϕ e and cross-elevation θe.

E147

Page 156: Project Antenna

0 2 4 6 8 10 12 14 16 18 20−25

−20

−15

−10

−5

0

5

10

15

20

25

Time [s]

Ang

ular

Vel

ocity

[deg

/s]

Orientation Error Velocity in theSAT frame using the squint angle

Orientation Error Velocity in theCross−elevation frame

Orientation Error Velocity in theSAT frame

Figure E.2: Definition of the orientation error angles elevation ϕ e and cross-elevation θe.

0 2 4 6 8 10 12 14 16 18

−10

−5

0

5

10

Time [s]

Ang

ular

Vel

ocity

[deg

/s]

Orientation Error Velocity in theSAT frame using the squint angle

Orientation Error Velocity in theCross−elevation frame

Orientation Error Velocity in theSAT frame

Figure E.3: Definition of the orientation error angles elevation ϕ e and cross-elevation θe.

E148

Page 157: Project Antenna

Appendix E. Advantages and Disadvantages Introduced by the SAT Frame

0 2 4 6 8 10 12 14 16 18 20−25

−20

−15

−10

−5

0

5

10

15

20

25

Time [s]

Ang

ular

Vel

ocity

[deg

/s]

Orientation Error Velocity in theSAT frame using the squint angle

Orientation Error Velocity in theCross−elevation frame

Orientation Error Velocity in theSAT frame

Figure E.4: Definition of the orientation error angles elevation ϕ e and cross-elevation θe.

E149

Page 158: Project Antenna
Page 159: Project Antenna

Appendix FAntenna Parameters

Project group [03gr1030i, 2003] which has been working with the same F77 antenna system, hasperformed multiple tests on the antenna system, to determine the viscous and Coulomb friction,and also the inertia of the system. Furthermore they have also disassembled the system to measurethe individual items in the system, for use in the kinematic and dynamic equations. The resultsof that work are presented here.

weightlink 1 (m1) 7.16 kglink 2 (m2) 1.75 kglink 3 (m3) 3.01 kg

(F.1)

lengthframe 1 - 2 (l1) 6.84·10−1mframe 2 - 3 (l2) 2.30·10−2m

(F.2)

F.1 and F.2 shows the mass and the length of the links respectively.

1P1 =

5.35 · 10−2

4.96 · 10−3

2.65 · 10−1

2P2 =

−5.88 · 10−2

6.46 · 10−3

−1.61 · 10−3

3P3 =

1.95 · 10−2

5.08 · 10−4

3.07 · 10−2

(F.3)

Equation F.3 shows the vectors indicating center of mass, and in equation F.4 to F.6, the center ofmass inertia tensors are shown.

C1I1 =

0 0 0

0 0 00 0 9.43 · 10−2

(F.4)

C2I2 =

5.00 · 10−3 1.49 · 10−3 −2.43 · 10−4

1.49 · 10−3 5.84 · 10−3 −8.30 · 10−6

−2.43 · 10−4 −8.30 · 10−6 8.58 · 10−3

(F.5)

C3I3 =

1.69 · 10−1 −3.74 · 10−5 −1.19 · 10−3

−3.74 · 10−5 8.36 · 10−2 −7.24 · 10−6

−1.19 · 10−3 −7.24 · 10−6 8.68 · 10−2

(F.6)

F151

Page 160: Project Antenna

Equation F.8 and F.7 are respectively the Coulomb and viscous friction.

C =

0.12 0 0

0 0.05 00 0 0.29

(F.7)

D =

0 0 0

0 0 00 0 0

(F.8)

M, G and V needed for equation 8.22, can be seen in the following.

M =[2.08 · 10−1 + 7.77 · 10−3 cos(θ2)2 + 5.87 · 10−5 sin(θ2) cos(θ2)

+ 8.43 · 10−2 cos(θ3)2 − 8.43 · 10−2 cos(θ3)2 cos(θ2)2

+ 1.34 · 10−4 sin(θ3) cos(θ3) − 1.34 · 10−4 cos(θ3) sin(θ3) cos(θ2)2

− 5.98 · 10−3 sin(θ2) cos(θ3) cos(θ2) + 1.08 · 10−4 sin(θ2) sin(θ3) cos(θ2)− 7.03 · 10−5 sin(θ3) cos(θ2)2 + 2.70 · 10−3 cos(θ3) cos(θ2)2,

4.76 · 10−4 sin(θ2) + 8.43 · 10−2 cos(θ3) sin(θ3) sin(θ2)− 1.34 · 10−4 cos(θ3)2 sin(θ2) − 3.52 · 10−5 %4 − 1.35 · 10−3 %3− 2.99 · 10−3 %2 − 5.42 · 10−5 %1 − 9.90 · 10−6 cos(θ2),

3.52 · 10−5 %2 − 1.35 · 10−3 %1 + 2.99 · 10−3 %4− 5.42 · 10−5 %3 − 8.69 · 10−2 cos(θ2)

][4.76 · 10−4 sin(θ2) + 8.43 · 10−2 cos(θ3) sin(θ3) sin(θ2)

− 1.34 · 10−4 cos(θ3)2 sin(θ2) − 3.51 · 10−5 %4 − 1.35 · 10−3 %3− 2.99 · 10−3 %2 − 5.42 · 10−5 %1 − 9.90 · 10−1 10−5 cos(θ2),− 7.03 · 10−5 sin(θ3) + 2.70 · 10−3 cos(θ3) + 1.88 · 10−1

− 8.42 · 10−2 cos(θ3)2 − 1.34 · 10−4 sin(θ3) cos(θ3),

2.99 · 10−3 sin(θ3) + 5.42 · 10−5 cos(θ3)]

[3.52 · 10−5 %2 − 1.35 · 10−3 %1 + 2.99 · 10−3 %4 − 5.42 · 10−5 %3

− 8.69 · 10−2 cos(θ2), 2.99 · 10−3 sin(θ3) + 5.42 · 10−5 cos(θ3) ,

8.69 · 10−2]

%1 := cos(θ3) cos(θ2) %2 := sin(θ3) cos(θ2)%3 := sin(θ3) sin(θ2) %4 := cos(θ3) sin(θ2)

F152

Page 161: Project Antenna

Appendix F. Antenna Parameters

G =[(−sin(θ2)(cos(θ3) (9.24 · 10−2 %2 + .9.24 · 10−2 %1 − 1.53 · 10−3 %5)

− sin(θ3) (9.24 · 10−2 %4 − 9.24 · 10−2 %3 + 5.87 · 10−2 %5)+ 1.13 · 10−2 cos(θ1) − .0028175%5) − cos(θ2)(.102900 cos(θ1)− .00152908%4 + 1.53 · 10−3 %3 − 5.87 · 10−2 %2− 5.87 · 10−2 %1 + .0230 sin(θ3) (3.01%4 − 3.01%3)+ .0230 cos(θ3) (−3.01%2 − 3.01%1) − .0028175 cos(θ2) sin(θ1))

+ .383060 cos(θ1) − .0355136 sin(θ1))g]

[(3.37 · 10−2 %5 − 1.13 · 10−2 cos(θ2) sin(θ1)

− sin(θ3) (9.24 · 10−2 %2 + 9.24 · 10−2 %1 − 1.53 · 10−3 %5)

− cos(θ3) (9.24 · 10−2 %4 − 9.24 · 10−2 %3 + 5.87 · 10−2 %5))g]

[(−1.53 · 10−3 %4 + 1.53 · 10−3 %3 − 5.87 · 10−2 %2 − 5.87 · 10−2 %1) g]%1 := cos(θ3) cos(θ1) %2 := sin(θ3) cos(θ2) sin(θ1)%3 := sin(θ3) cos(θ1) %4 := cos(θ3) cos(θ2) sin(θ1)%5 := sin(θ2) sin(θ1)

V =[2.69 · 10−3 sin(θ2) θd3 θd2 + 5.98 · 10−3 cos(θ3) θd1 θd2

+ 2.99 · 10−3 sin(θ2) θd22 sin(θ3) + 1.08 · 10−4 sin(θ2) cos(θ3) cos(θ2) θd1 θd3

− 1.20 · 10−2 cos(θ3) θd1 θd2 cos(θ2)2 + 1.69 · 10−1 cos(θ3) sin(θ3) θd1 θd3 cos(θ2)2

− 1.69 · 10−1 cos(θ3) sin(θ3) θd1 θd3 − 1.34 · 10−4 θd1 θd3

− 2.69 · 10−4 θd1 θd3 cos(θ3)2 cos(θ2)2 + 2.69 · 10−4 θd1 θd3 cos(θ3)2

+ 5.42 · 10−5 sin(θ2) cos(θ3) θd22 + 1.17 · 10−4 θd1 θd2 cos(θ2)2

+ 2.17 · 10−4 sin(θ3) θd1 θd2 cos(θ2)2 − 5.87 · 10−5 θd1 θd2

− 1.08 · 10−4 sin(θ3) θd1 θd2 + 4.76 · 10−4 cos(θ2) θd22

+ 3.52 · 10−5 cos(θ2) cos(θ3) θd32 − 1.35 · 10−3 cos(θ2) sin(θ3) θd2

2

− 7.03 · 10−5 cos(θ3) cos(θ2)2 θd1 θd3

− 5.40 · 10−3 cos(θ2) cos(θ3) sin(θ2) θd1 θd2

+ 1.69 · 10−1 cos(θ2) cos(θ3)2 θd2 sin(θ2) θd1

+ 1.41 · 10−4 cos(θ2) sin(θ3) sin(θ2) θd1 θd2

+ 2.67 · 10−4 cos(θ2) sin(θ3) sin(θ2) θd1 cos(θ3) θd2

+ 1.35 · 10−3 cos(θ2) sin(θ3) θd32 − 3.52 · 10−5 cos(θ2) cos(θ3) θd2

2

+ 8.43 · 10−2 cos(θ2) cos(θ3) θd22 sin(θ3) − 1.34 · 10−4 cos(θ2) cos(θ3)2 θd2

2

− 2.70 · 10−3 sin(θ3) cos(θ2)2 θd1 θd3 − 2.50 · 10−1 10−10 θdd1

+ 1.34 · 10−4 θd1 θd3 cos(θ2)2 + 9.90 · 10−1 10−5 sin(θ2) θd22

− 5.42 · 10−5 sin(θ2) cos(θ3) θd32 + 2.67 · 10−4 sin(θ2) cos(θ3) θd3 sin(θ3) θd2

− 1.55 · 10−2 sin(θ2) cos(θ2) θd1 θd2 + 1.69 · 10−1 sin(θ2) cos(θ3)2 θd2 θd3

− 2.99 · 10−3 sin(θ2) sin(θ3) θd32 + 5.98 · 10−3 sin(θ2) sin(θ3) cos(θ2) θd1 θd3

− 0.50 · 10−11 θdd1 cos(θ2)2]

F153

Page 162: Project Antenna

[2.70 · 10−3 cos(θ3) sin(θ2) θd1

2 cos(θ2)

− 7.03 · 10−5 sin(θ3) sin(θ2) θd12 cos(θ2) − 1.71 · 10−1 sin(θ2) θd1 θd3

− 5.87 · 10−5 cos(θ2)2 θd12 + 1.34 · 10−4 θd3 θd2

+ 7.78 · 10−3 sin(θ2) θd12 cos(θ2) + 5.98 · 10−3 cos(θ3) cos(θ2)2 θd1

2

− 1.08 · 10−4 sin(θ3) cos(θ2)2 θd12 + 2.99 · 10−3 cos(θ3) θd3

2

− 5.41 · 10−5 sin(θ3) θd32 − 2.70 · 10−3 θd3 sin(θ3) θd2

− 2.70 · 10−3 θd3 cos(θ3) sin(θ2) θd1 + 7.03 · 10−5 sin(θ3) sin(θ2) θd1 θd3

+ 1.69 · 10−1 θd3 cos(θ3)2 sin(θ2) θd1 + 2.94 · 10−5 θd12

− 8.43 · 10−2 cos(θ3)2 sin(θ2) θd12 cos(θ2)

− 1.34 · 10−4 cos(θ3) sin(θ3) sin(θ2) θd12 cos(θ2)

+ 2.69 · 10−4 cos(θ3) sin(θ3) sin(θ2) θd1 θd3 + 1.69 · 10−1 cos(θ3) θd3 sin(θ3) θd2

− 5.98 · 10−3 cos(θ3) cos(θ2) θd1 θd3 + 1.08 · 10−4 sin(θ3) cos(θ2) θd1 θd3

+ 2.74 · 10−1 10−10 cos(θ3) sin(θ3) cos(θ2) θd1 θd2 − 7.03 · 10−5 cos(θ3) θd2 θd3

− 2.69 · 10−4 cos(θ3)2 θd2 θd3 − 3.00 · 10−3 cos(θ3) θd12

+ 5.42 · 10−5 θd12 sin(θ3)

][1.35 · 10−3 sin(θ3) θd2

2 + 3.52 · 10−5 cos(θ3) θd22

+ 1.71 · 10−1 sin(θ2) θd1 θd2 − 6.72 · 10−5 θd22

− 1.08 · 10−4 sin(θ3) θd2 cos(θ2) θd1 − 1.69 · 10−1 cos(θ3)2 sin(θ2) θd1 θd2

− 5.41 · 10−5 cos(θ3) sin(θ2) θd12 cos(θ2) + 5.98 · 10−3 cos(θ3) θd2 cos(θ2) θd1

− 7.03 · 10−5 sin(θ3) sin(θ2) θd1 θd2 − 2.99 · 10−3 sin(θ3) sin(θ2) θd12 cos(θ2)

+ 2.70 · 10−3 cos(θ3) sin(θ2) θd1 θd2 − 2.69 · 10−4 cos(θ3) sin(θ2) θd1 sin(θ3) θd2

+ 1.34 · 10−4 cos(θ3)2 θd22 − 6.72 · 10−5 cos(θ2)2 θd1

2

− 1.34 · 10−4 cos(θ3)2 θd12 + 1.34 · 10−4 cos(θ3)2 θd1

2 cos(θ2)2

− 8.43 · 10−2 cos(θ3) θd12 sin(θ3) cos(θ2)2 − 8.43 · 10−2 sin(θ3) θd2

2 cos(θ3)+ 8.43 · 10−2 cos(θ3) θd1

2 sin(θ3) + 3.52 · 10−5 cos(θ3) cos(θ2)2 θd12

+ 1.35 · 10−3 sin(θ3) cos(θ2)2 θd12 + 6.72 · 10−5 θd1

2]

F154

Page 163: Project Antenna

Appendix GChange of Coordinates

The idea of changing the coordinates, is to include and isolate the input from the disturbance w,in one state in which the controller input is acting. From this form it is possible, by knowledgeof the exosystem, to feed a proper control input to the system, such that the disturbance is outcompensated. In the following sections, the disturbance will be isolated in the last state of thesecond state equation, and the form of the control input will be indicated.

G.1 Including Q1w in The Second State Equation

Consider the system

x1 = A11x1 + A12x2 + P1w (G.1)

x2 = Ax2 + B(A21x1 + A22x2 + bu) + P2w (G.2)

e = Cx2 + Q1w (G.3)

where (for m=1 i.e. one dimensional input,u)

A =

0 1 0 · · · 00 0 1 · · · 0...

......

. . ....

0 0 0 · · · 10 0 0 · · · 0

, B =

00...01

, C =

[1 0 0 · · · 0

](G.4)

and

x2 = x2 + ZwZ =

Q1

CP2 + Q1S· · ·

CAr−2P2 + CAr−3P2S + . . . + Q1Sr−1

(G.5)

Consider now the change of coordinates

G155

Page 164: Project Antenna

G.2. Including P1w in The Second State Equation

x2 = x2 + Zw

(G.6)

x2 = x2 − Zw

⇓dx2dt = x2 = ˙x2 − Zw (G.7)

x1 = A11x1 + A12(x2 − Zw) + P1w

˙x2 − Zw = A(x2 − Zw) + B(A21x1 + A22(x2 − Zw) + bu) + P2w

e = C(x2 − Zw) + Q1w

x1 = A11x1 + A12x2 + (P1 − A12Zw))w˙x2 = Ax2 + B(A21x1 + A22x2 + bu) + (−AZ − BA22Z + ZS + P2)we = Cx2 (G.8)

if the propertyw = Sw (G.9)

is used.

In the second state equation the contribution from w can be written in terms of a new variable,p2in the from

Bp2w (G.10)

by the use of the propertyI = BB(BB)−1 (G.11)

This results in the state representation

x1 = A11x1 + A12x2 + P1w (G.12)˙x2 = Ax2 + B(A21x1 + A22x2 + bu + p2w) (G.13)

e = Cx2 (G.14)

where

P1 = P1 − A12Zw (G.15)

p2 = (−B(BB)−1AZ − A22Z + B(BB)−1ZS + B(BB)−1P2) (G.16)

G.2 Including P1w in The Second State Equation

If Π, from equation 11.23 on page 89 is partitioned in proportion to the partition of y in sec-tion 11 on page 85 as

G156

Page 165: Project Antenna

Appendix G. Change of Coordinates

Π =[

Π1

Π2

](G.17)

then it can be proven that if none of the eigenvalues of A11 is eigenvalues of S, the sylvesterequation 11.37 on page 91 has a unique solution Π1, [Alberto Isodori, 2003, p.27].

Π1S = A11Π1 + P1 (G.18)

Setting Π2 = 0 and

R =1b

(−A21Π1 − p2) (G.19)

Thus constructed, it can be proven that R and Π satisfies equation 11.23 on page 89. The solutionΠ1 can be used to changes the variables s.t.

x1 = x1 − Π1w

(G.20)

x1 = x1 + Π1w

⇓dx1dt = x1 = ˙x1 + Π1w (G.21)

The first state equation, equation G.12, can be written in terms of the new variables as

˙x1 + Π1w = A11(x1 + Π1w) + A12x2 + P1w

˙x1 = A11(x1 + Π1w) + A12x2 + P1w − Π1w (G.22)

Using the property

w = Sw and afterwardsΠ1S = A11Π1 + P1 (G.23)

equation G.22, can be written as

˙x1 = A11x1 + A12x2 + (P1 + A11Π1Π1S)w

˙x1 = A11x1 + A12x2

The second state equation, equation G.13, can be can also be written in terms of the new variable,x1, as

˙x2 = Ax2 + B(A21(x1 + Π1w) + A22x2 + bu + p2w)

˙x2 = Ax2 + B(A21x1 + A22x2 + bu) + B(p2 + A21Π1)w

G157

Page 166: Project Antenna

G.2. Including P1w in The Second State Equation

Using equation G.19

˙x2 = Ax2 + B(A21x1 + A22x2 + bu) − BbRw

˙x2 = Ax2 + B(A21x1 + A22x2) + Bb(u − Rw)

The output equation G.14 remain unchanged. All the state equations is here summarized

x1 = A11x1 + A12x2

˙x2 = Ax2 + B(A21x1 + A22x2) + Bb(u − Rw)e = Cx2 (G.24)

Both inputs to the system,both the controller input,u, and the disturbance input,w, are included inthe second states equation, and interact with the system states thought the vector or matrixB. Forthe case where m=1 (one dimensional control input),B can be written as equation G.4. Then it ispossible, by a proper control input (Rw), to compensate for the exosystem. This idea is describedin the internal model theory in section 11.

G158