• No results found

Cell Phone Based Radar

N/A
N/A
Protected

Academic year: 2021

Share "Cell Phone Based Radar"

Copied!
57
0
0

Loading.... (view fulltext now)

Full text

(1)

2009:014 CIV

M A S T E R ' S T H E S I S

Cell Phone Based Radar

Teresa Cardin

Luleå University of Technology MSc Programmes in Engineering

Electrical Engineering

Department of Computer Science and Electrical Engineering

Division of EISLAB

(2)
(3)

Preface

The project has been performed at Ericsson in Skellefteå, Sweden, during the autumn of 2008. The goal has been to investigate whether it is possible to implement a cell phone based radar.

I would like to thank Anders Hedlund and David Degerfeldt at Ericsson, whom

has supported me throughout the project.

(4)
(5)

Abstract

The purpose of this project is to find out whether it is possible to use the cell phone system as a bistatic radar system. Would it be, a small and easy to handle radar would be available and possibly replace the systems of today in aircrafts, ships and other vehicles. Or it could form a great supportive tool in optimizing the cell phone networks.

The bistatic radar is hard to implement, but a perfect way to create radar that is really hard to knock out in case of war for example. In the cell phone system, there is already a structure that might be possible to use for this purpose.

The result showed it is possible to create a radar using the cell phone system, though more investigation needs to be done to get better functionality in the system.

In this report, one possible way to create a cell phone based radar, will be

introduced and analyzed.

(6)
(7)

Contents

List of Figures 9

List of Tables 10

1 Introduction 15

1.1 Background . . . . 15

1.2 Purpose . . . . 16

1.3 Related Work . . . . 17

1.4 Limitations . . . . 17

1.5 Structure of the report . . . . 17

2 Theory 19

2.1 Spherical coordinates . . . . 19

2.2 Geographical coordinates . . . . 20

2.3 Cellular systems . . . . 21

2.3.1 Cells . . . . 21

2.3.2 Scrambling codes . . . . 21

2.3.3 Impulse response . . . . 22

2.3.4 Cell file . . . . 23

2.3.5 Chip type . . . . 23

2.4 Gaussian function . . . . 23

2.5 Bistatic radar . . . . 24

2.5.1 Bistatic radar applied to cell phone services . . . . 24

2.6 Shortest and longest distance for reflection detection . . . . 27

2.7 Sources of errors . . . . 28

3 Simulations 31

4 Measurements 35

5 Discussion and conclusions 39

A Chart of functions 43

B Gaussian function implementation 45

C Code for calculating ellipses 47

(8)

D Code for estimating the reflection point 51

(9)

List of Figures

1.1 Descriptive picture of the bistatic system . . . . 15

1.2 Descriptive picture over important factors in the system . . . . . 16

2.1 Spherical coordinates . . . . 19

2.2 Illustrative picture of cells and cell site . . . . 21

2.3 Block diagram of transmission system . . . . 22

2.4 Typical measured impulse response . . . . 22

2.5 Different Gaussian curves . . . . 23

2.6 Bistatic angle . . . . 24

2.7 Ellipse, arbitrary units . . . . 25

2.8 Deciding the position of the reflection point. . . . 26

3.1 Schematic figure of simulation steps . . . . 31

3.2 Result when the position of the base-stations, cell phone and reflection point where decided manually. . . . 32

3.3 Constructed impulse response . . . . 32

3.4 The Gaussian bells of an impulse response from a signal generator 33 3.5 Same as figure 3.2, but with only one base-station . . . . 33

4.1 Measured impulse response . . . . 36

4.2 Measured reflection point. . . . 36

4.3 Google Earth representation of measured reflection point. . . . . 37

4.4 Reflection point from the second drive test . . . . 38

4.5 Google Earth representation from second drive test . . . . 38

(10)
(11)

List of Tables

2.1 Path loss at certain distances . . . . 27

2.2 Received signal strength at certain distances . . . . 28

(12)
(13)

Abbreviations

GPS Global Positioning System

SC Scrambling Code

WGS84 World Geodetic System 1984

WCDMA Wide Band Code Division Multiple Access 3GPP Third Generation Partnership Project TEMS Tems Mobile System

CDMA Code Division Multiple Access

(14)
(15)

Chapter 1

Introduction

1.1 Background

Figure 1.1: Descriptive picture of the bistatic system

To be helpful to the network operators, Ericsson has developed "transformed"

cell phones, called TEMS phones, which works as a measuring tool. More about TEMS products can be found in [1]. With this unit, it is possible to evaluate the quality of reception, transmission and other interesting factors affecting the cell phone network. Other important advantages are that they form a physically small tool, that is easy to carry around and simple to use. This way it gets easier and cheaper for the network operators, since they have the possibility to minimize the number of base-stations, and also make it possible for them to troubleshoot areas faster and more efficiently.

Some time ago, a consideration came up whether it could be possible to use the cell phone system as radar system. A natural consequence would then be the possibility to recognise from where possible disturbances in the radio- environment originate. Therefore also the source of the disturbancies, would be detectable.

Naturally there are other advantages of the possibility of a "radar cell phone".

The radar equipment in an aeroplane, for example, occupies a lot of space and

(16)

weighs much compared to the size and weight of a cell phone. What if, in the future, the only thing needed to make it possible to navigate an airplane would be a cell phone? Or if a captain would only need a cell phone to avoid running aground? Or maybe a radar cell phone could be used in cars to discover distances, velocities and positioning of other vehicles on the road?

1.2 Purpose

The purpose of this project is to find out whether it is possible to use the cell phone as radar to extract more information about the environment. Further on, what kind of information would it be? If the information of the network and its surroundings would be more detailed, would it then be possible to find out which signals and reflections that contain useful information? Would it be possible to detect the cause of the disturbances? Would this type of radar help enhancing the knowledge regarding signals and reflections, and hence make it possible to use the cell phone more efficiently as a measuring tool? Or would it make it possible to create small and cheap radars, using a cell phone?

Focus is finding the distance between the cell phone and the reflective object.

The direction is also interesting, otherwise the distance is of limited use. It is of great interest to find the shortest and longest distance, that is d

min

and d

max

, from where it is possible to detect objects. See figure 1.2.

Figure 1.2: Descriptive picture over important factors in the system

Awareness regarding the differences between the bistatic radar and the mono-

static is favourable. The monostatic radar has both transmitter and receiver

at the same place, while the bistatic radar has the transmitter and the receiver

separated by a fairly long distance. It is not easy to build a bistatic radar sys-

tem, but in this case it is favourable to use the idea. Most of the information

needed, already exists in the cell phone system. It is a huge benefit being able

to use the idea, since there is no need to reveal your own position. The receiver

is not at the same site as the transmitter, which is a great benefit. Also there

is more than one transmitter and every one of them is at different sites. That

makes it really hard to knock out the system, in case of war for example. In the

(17)

cell phone system both the position of the cell phone and the positions of the base-stations are known, which makes it possible to use the idea. Figure 1.1 is a descriptive picture of the scenario, but with only one base-station. Also, the thought of the cell phone as only necessary instrument, makes the radar small, simple and easy to handle. No extra equipment is needed, but the cell phone and the already present base-stations.

1.3 Related Work

The subject of bistatic radar has been and is today a subject of great interest, mostly in research. The principles, practice and potential have been discussed in [2], long with a presentation of different passive coherent location techniques.

That is, the use of ground-based broadcasting and communications signals as illuminators in the bistatic radar system. These signals could for example be from FM radio or television transmissions.

In [3] is it possible to find out more regarding interesting results from experi- ments with bistatic synthetic aperture radar. This technology uses space-born illuminators, such as satellites for broadcasting, communications and navigation.

Especially the benefits of using the global navigation satellite system, with its optimization of synchronization, are pointed out along with its disadvantages.

That is, their low-power transmitters.

1.4 Limitations

The goal is to get working radar and the only thing which really restricts this project is the time, twenty weeks. Since there was only twenty weeks available, the focus has been on trying to get a working model for the system. The focus has not been spending a lot of time on every detail, but to use simplest possible method to extract the data needed. Only bistatic radar theories have been used.

Of course it is possible to investigate other theories, but since there is a time restriction in this project, they where not considered. Another restriction is the use of wide band code division multiple access third generation partnership project technology, (WCDMA 3GPP) [4, 5].

1.5 Structure of the report

In chapter 2 the most important theories are being presented. The results from

the simulations and measurements are to be found in chapter 3 and 4. The

report is finished with a discussion and some conclusions at chapter 5. In the

appendices the most important sections of the code is to be found.

(18)
(19)

Chapter 2

Theory

The following sections describes shortly the most important principles that has been used throughout this project.

Spherical and geographical coordinates are important to understand, since all calculations of distances between base-stations, cell phones and reflections has been performed in spherical coordinates. The positions of the same are given with geographical coordinates. Some basic concepts regarding cell phones and their networks are also presented, since they will be needed to understand what has been done. The basics regarding bistatic radar are of course needed, since that is the basic idea of the project. The Gaussian function is used to analyze the impulse responses and is therefore also presented.

2.1 Spherical coordinates

Figure 2.1: Spherical coordinates

Spherical coordinates are a system for describing positions on a sphere. See

figure 2.1. Define θ to be the azimuthal angle in the xy-plane from the x-axis

with 0 ≤ θ ≤ 2π , φ to be the polar angle from the z-axis with 0 ≤ φ ≤ π,

and r to be distance (radius) from a point to the origin. This is the convention

commonly used in mathematics.

(20)

The spherical coordinates, (r, θ, φ ), are related to the Cartesian coordinates, (x, y, z), by,

θ = arctan y

x , θ ∈ [0, 2π] (2.1)

φ = arccos z

x

2

+ y

2

+ z

2

, φ ∈ [0, π], x

2

+ y

2

+ z

2

∈ [0, ∞] (2.2) r = x

2

+ y

2

+ z

2

, x

2

+ y

2

+ z

2

∈ [0, ∞] (2.3)

And the Cartesian coordinates are related to the spherical by,

x = r cos θ sin φ (2.4)

y = r sin θ sin φ (2.5)

z = r cos φ (2.6)

2.2 Geographical coordinates

The earth is not a perfect sphere, but more close to an ellipsoid. The coordinate system of the earth is a spherical one, where a position on earth is pointed out by the two angles latitude and longitude. The latitude is the angle from a point on the earth’s surface and the equatorial plane, measured from the centre of earth. The North Pole is at +90

or 90

N, while the South Pole is at −90

or 90

S. The equator is at the 0

latitude.

The longitude is the angle east or west of the reference meridian at Green- wich, London. This specific meridian is the zero-longitude reference line. All meridians are halves of great circles around the earth and they are not parallel.

Probably most important to know is that they converge towards the north and south poles, because of the ellipsoidal shape of earth. The antipodal of Green- wich is at both +180

(180

W) and −180

(180

E). A more comprehensive description of geographic coordinates can be found in [6].

Although, it is not enough to know the longitude and the latitude, the geodetic datum is also important to know. A geodetic datum is a reference from which measurements are made. In this case, a datum is a set of reference points on the surface of earth, against which position-measurements are made. There are different types of datums, actually it exists hundreds of different types of local datums, since the earth is not a perfect sphere. But one of the contemporary datums, datums used to cover larger areas, is World Geodetic System 1984 (WGS84). This is the standard datum used today by the Global Positioning System (consumer grade GPS receiver). The geodetic datum is described better in [7].

The latitude and longitude could be written in following ways, always with latitude and longitude in the same order:

• DMS Degreees, Minutes, Seconds, ex (64

44

0

02”N, 23

55

0

30”W)

• DM Degrees, Decimal Minutes, ex (64

44.0

0

, −23

55.0

0

)

• DD Decimal Degrees, ex (64.7333333333

,−23.9166666667

),

(21)

Degrees, minutes, seconds is the standard format in all charts and maps. Dec- imal degrees is the most convenient format when a need for calculation exist, why it is used in this project.

2.3 Cellular systems

A cell phone is a short-range, electronic device used for mobile voice or data communication over a network of radio base stations. Most current cell phones connect to a cellular network of base stations (cell sites), which in turn is inter- connected to the public switched telephone network.

The communication between the cell phone and the base station is based on ra- dio technology, where the electrical signals of the sound is transmitted through electromagnetic waves. An important concept is "line of sight", which is the shortest path between the cell phone and the base station. The "line of sight"’

is easy to calculate, but due to the radio environment very hard to find. The propagation of the radio wave is affected by a number of elements, objects that reflects, attenuates, amplifies or distort the original wave among other things.

More information about cellular systems can be found in [4, 8, 12].

2.3.1 Cells

Figure 2.2: Illustrative picture of cells and cell site

A cell site is a site where antennas and other electronic communication equipment are placed to create one or several cells in a cell phone network. A cell is the geographical area in which the radio base station is supposed to offer coverage. Se figure 2.2. This geographical division is what made it possible to lower the effect of the transmitters and reuse the same frequencies without any conflicts between different transmitters.

2.3.2 Scrambling codes

Scrambling codes (SC) are code division multiple access (CDMA) specific and

another reason why it is possible to reuse the frequencies in the cell phone

network. A scrambling code is a means of identifying a cell. In WCDMA 3GPP

[4, 5] the scrambling codes are divided in 512 groups, called primary scrambling

code and also fifteen groups of secondary scrambling code. Each cell is typically

assigned one primary scrambling code. They are used to recognize from which

base-station a signal is received. In this project the carrier frequency is 2127.6

MHz and the chip rate is 3.84 · 10

6

chip/s, since the WCDMA standard 25.101,

(22)

band one is used [5]. The scrambling code is a long-code and is made out of 38400 chips, which identifies the base-station.

2.3.3 Impulse response

Figure 2.3: Block diagram of transmission system

An impulse response is a time representation of a received signal. The im- pulse response then describes how the system has affected the transmitted sig- nal, in form of attenuation, amplification, phase shift, noise etcetera. A block diagram describing this can be found in figure 2.3.

These are used to find the distance the reflection has traveled. Figure 2.4 shows a typical measured impulse response.

The transmitted signal x(t) is being sent through a channel with impulse re- sponse H(t). The result will be y(t), which actually is what in this work is called the impulse response.

Figure 2.4: Typical measured impulse response

The probes collecting the impulse responses, are a software modification in

a TEMS phone[1].

(23)

2.3.4 Cell file

A cell file is a xml-file, where typically the network operators collect data re- garding the cell phone networks base-stations. They give information regarding antenna height, latitude, longitude, altitude, scrambling code, neighbors etc.

2.3.5 Chip type

The chip type tells how the impulse response has been sampled. There are two different resolutions of the sampling, which are called chip and half chip. In this work the great interest lies on how far the signal could travel during a chip or a half chip. This distance is calculated by,

c

0

f

chip

= 299792458

3.84 · 10

6

≈ 78m (2.7)

in the case where the resolution is a chip. c

0

is the speed of light in vacuum and f

chip

is the chip rate. In the half chip case the distance is calculated by,

c

0

2 · f

chip

= 299792458

2 · 3.84 · 10

6

≈ 39m (2.8)

2.4 Gaussian function

Figure 2.5: Different Gaussian curves

The Gaussian function is more commonly known as the standard distribu-

tion:

(24)

f (x) = a · e (x − b)

2

c

2

, (2.9)

a defines the highest point of "the bell", b the centre point of "the bell" and c is the width of "the bell". e is the natural logarithm.

The graph of a Gaussian function is a symmetrical "bell-shaped" curved, which quickly diminish as the function moves towards plus or minus infinity. This shape has given it a second name "the bell function". Figure 2.5 shows some different Gaussian curves. In this project the Gaussian function is used as a kind of filter when analyzing the impulse responses. As is possible to see in figure 2.4 above, a great need for some kind of filter is needed. This filtering is done by,

f (x) = N

0

+ a

1

· e (x − b

1

)

2

c

21

+ a

2

· e (x − b

2

)

2

c

22

+ . . . + a

n

· e (x − b

n

)

2

c

2n

, (2.10) where a, b, c > 0 and n being the number of bells needed.

2.5 Bistatic radar

Figure 2.6: Bistatic angle

The bistatic radar uses two sites, separated by a reasonably large distance. A transmitter is placed in one site and a receiver in another. The target tracking is similar to the one used by the monostatic radar, that is the target is illuminated by the transmitter and the echoes (reflections) are detected and processed by the receiver. To determine the position of the target, consideration has to be taken to the total propagation time of the signal, the orthogonal angle measurements from the receiver and the estimated position of the transmitter. Then it is possible to solve the so called bistatic triangle (transmitter - target - receiver triangle). Figure 2.6 shows the bistatic triangle and the bistatic angle. For more information regarding the bistatic radar, see [13].

2.5.1 Bistatic radar applied to cell phone services

In this case the bistatic radar is made out of a cell phone and a couple of base-

stations. The antenna of the cell phone is not a directional one and therefore not

(25)

possible to use for deciding the direction of the signal. When a base-station sends a signal to a cell phone, it could be assumed that there is a "line of sight" signal, which travels in a straight line between the base-station and the cell phone. It could also be assumed that there will be some reflections as the signals bounce towards buildings for example. The positions of the base-stations are known with good accuracy, since these are stored in a cell-file, typically created by the network operators. The position of the cell phone is also assumed to be known, either through a built in GPS in the phone or through an external one. The length of the "line of sight" signal is then given by,

L

los

= p

(x

2

− x

1

)

2

+ (y

2

− y

1

)

2

+ (z

2

− z

1

)

2

, (2.11) (x

1

, y

1

, z

1

) being the position of the cell phone in Cartesian coordinates and (x

2

, y

2

, z

2

) the position of the base-station. The first peak in the impulse re- sponse is assumed to be the line of sight signal. All following peaks are reflec- tions. In our case an impulse response is divided into either 128 or 256 samples.

The signal will then travel about 39 m during one half chip or about 78 m dur- ing one entire chip. Knowing this, it is easy to calculate the total path length, L

path

, of the reflection. It should be,

L

path

= L

los

+ a · b, (2.12)

where L

path

= pathlength, L

los

= line of sight, a = number of chips or half chips between ”line of sight” and ref lection and b = 39 or 78 m.

Figure 2.7: Ellipse, arbitrary units

Using this, an ellipse can be calculated in the Cartesian coordinates, (x, y, z),

which when transformed back to geographical coordinates, forms an ellipse on

the surface of earth. With the help of three or more base-stations it is possible

to find the point of reflection, which would be where the three ellipses cross each

(26)

other. To draw the ellipse, one knows that,

L

path

= 2a (2.13)

This gives

a = L

path

2 (2.14)

c in figure 2.7, is L

los

, which makes it possible to calculate b, b =

q

a

2

+ L

2los

(2.15)

From there, the equations to calculate the ellipse in Cartesian coordinates, (x, y, z), is:

x = 0 (2.16)

y = b cos(t) (2.17)

z = a sin(t) (2.18)

To get a vision of what is happening here, look at figure 2.1 and figure 2.7. In our application, the cell phone is at distance c from the centre of the ellipse. Then the ellipse where rotated, using the rotation matrixes which could be found in [9]. When the calculations are made the ellipses have to be in the same plane, otherwise the reflection point would not be found. Therefore the ellipses need to be rotated. How this is implemented, could be found in appendix C.

Figure 2.8: Deciding the position of the reflection point.

To decide the position of the reflection, two methods were used. One is the method described above, through calculating distances, although it is used more as verification whether the other method is correct or not. An example of this could be seen in figure 2.8. The position of the reflection point is the point where the three ellipses cross each other. The three blue-green dots are different base-stations and the light green one is the cell phone.

The second method is through optimization. A 512x512 matrix is created, which

is built up by the lowest and highest longitudes and latitudes of the positions

(27)

of the base-stations in the area and the cell phone. Thereafter the distances of the points at every position in the matrix is calculated and compared to the calculated distance to the reflection. The point in which the error is the smallest is the reflection point.

This distance is calculated by,

L = e q

l

2x

+ l

2y

+ l

2z

(2.19) where l

x

, l

y

, l

z

are the (x, y, z) component of the calculated distance in each point of the matrix, in Cartesian coordinates.

The error is then calculated using,

e = |L − e L| (2.20)

where L is the calculated distance that the reflection has traveled. More con- cerning this implementation is found in appendix D.

2.6 Shortest and longest distance for reflection detection

In theory, the shortest distance, d

min

, would be about two half chips, that is about 78 m. It needs to be at least one half chip between the first and the last half chip, from which the path length later is determined. Otherwise it won’t be possible to decide whether the value at that specific point is a new peak or if that value is part of a higher peak.

The longest distance, d

max

, depends on a lot of things, one being the receiver sensibility. If there is too much path loss of the signal, the receiver won’t acknowledge them. The formula for path loss is:

L = 20 log

 d

2

h

1

· h

2



(2.21) This function is from Ericsson’s internal documentation. In table 2.1 it is pos- sible to see the calculated path loss:

Distance (meters) Path loss (dB)

10 40

100 80

1000 (1 km) 120

10000 (10 km) 160

Table 2.1: Path loss at certain distances

The effect of the signal sent is about 33 dBm. Simple mathematics then gives:

It is not possible to define a definite longest distance, d

max

, but it is pos- sible to see that the signal received from a distance of 10 km is at noise-level.

Actually all signals lower than -100 dBm are very hard to detect and therefore

every signal from -100 dBm and below are considered as noise. That would

give a maximum path length of about 2.2 km. The conclusion will be that the

(28)

Distance (meters) Strength of received signal (dBm)

10 −7

100 −47

1000 (1 km) −87

10000 (10 km) −127

Table 2.2: Received signal strength at certain distances

probability of finding a reflection further away than 2 km is not very likely. See table 2.2. This is also what practical experience tells.

If the impulse response where to set the limits they would be:

1. In the 128 samples impulse response case: 4900 m. (128 samples - 2 (the first and last sample), 126 samples and 39 meters each)

2. The extended impulse response with 256 samples would give a maximum of about 9900 m.

But then other causes which could attenuate the signal have not been considered.

Also the position of the base-stations limits the longest distance for reflection detection. If there is about 1 km between the base-station and the cell phone, it is very likely that the reflection is found within that distance.

2.7 Sources of errors

One major error source is the fact that the method used to calculate the dis- tances between cell phone, reflection and base station, is based on the assump- tion that the first peak in the impulse response is the "line of sight" signal. This may not always be the case. As a matter of fact, it is very difficult, to know whether or not the first peak is the "line of sight" signal. In reality the "line of sight" signal might not even arrive, since it could have been attenuated below receiver sensibility limit. Therefore the first peak in the impulse response might not be the "line of sight" signal, since all the peaks in the impulse response might be reflections. It is assumed that all following peaks, after the first one, is reflections.

Further on, at least three different impulse responses is needed to find the re- flection point. As little as it is known which peak is the "line of sight" signal, as little is it known whether the assumed reflections actually originate from the same point. That is, if the reflections from at least three different impulse re- sponses, actually originate from the same point in the environment.

Since the Gaussian function works as a filter, sometimes pure noise pass by as reflections, why sometimes what is assumed to be a reflection, might only be noise. Also, the width of the Gaussian bells, most of the time is too large and therefore a bell could swallow both the "line of sight" signal and the reflection.

Because of this, the chosen manner to analyze the impulse responses, through Gaussian bells, is not be the optimal method to use. This method was cho- sen, because an efficient and easy method to analyze the impulse responses was needed and therefore much effort was not put down find the optimal choise.

There is also a great error source in the impulse responses themselves. The

(29)

impulse response is a number of sampled values and therefore nothing is known regarding what happens between the samples. That makes it hard to determine whether a value is part of a greater peak or if it is a new peak.

Last, there are of course, the errors introduced in measurements and calcula- tions. They are for example the position of the cell phone, not correct GPS-data, unknown surroundings and no consideration of changes in altitude. Possible rounding errors in calculations and in constants are also a source of error.

The errors introduced in the analysis of the impulse response could actually

be quite big, since reflections could be found where there really are none. The

errors from calculations though are not very big.

(30)
(31)

Chapter 3

Simulations

Figure 3.1: Schematic figure of simulation steps

All the simulations have been performed in Matlab. Also a signal generator with a fading simulator has been used, to produce impulse responses similar to real ones. In figure 3.1 a schematic chart of the simulation steps can be found.

1. In order to control the entire environment, all the points where the base-

stations, the cell phone and the reflection were set out "by hand", using the

ginput function in Matlab. From there all the distances where calculated

and thereafter also the point in which the error was the smallest. If that

point was the same as the chosen point of reflection, the calculations was

correct. This can be seen in figure 3.2. The black circles are the base-

stations, the black triangle is the cell phone. The point in witch all the

ellipses crosses each other is the reflection point. The distance from edge

to edge in this picture is about 3 kilometers.

(32)

Figure 3.2: Result when the position of the base-stations, cell phone and reflec- tion point where decided manually.

2. Second step was to create impulse responses and develop a method to handle them. An area in which to work in was chosen. Based on the positions of the base-stations in that specific area and the chosen point of reflection, the distances from the base-stations to the cell phone and from the base-stations to the reflection point and to the cell phone was calculated (the real distances). Then impulse responses were created to match those demands. An estimation of the reflection point was done, based on the constructed impulse responses. An example of one can be found in figure 3.3.

Figure 3.3: Constructed impulse response

3. When this worked, some impulse responses from a signal generator was

collected and used to develop a method of analyzing them. In the impulse

responses there is a lot of noise and therefore an effective function for

(33)

analyzing them is needed. In this step the Gaussian function is used. For each peak in the impulse response, the Gaussian function adds a "bell", until the constructed response of the Gaussian bells is close enough to the real impulse response. See figure 3.4.

This gives a simpler representation of the impulse responses and also the points of the peaks are given by each b from each bell. Then it is very easy to calculate how much further the reflection has traveled compared to the "line of sight" signal. How this is implemented is shown in appendix B. From there the distances were calculated as before and the point of reflection was found.

Figure 3.4: The Gaussian bells of an impulse response from a signal generator The results from the simulations are shown in figure 3.2 and there it can be seen that theoretically it is possible to calculate the position of the reflection with high accuracy. Figure 3.5 shows an example of how it could look like when there is only one base-station and a cell phone involved in the calculations.

Figure 3.5: Same as figure 3.2, but with only one base-station

(34)
(35)

Chapter 4

Measurements

The measurements were performed during two drive tests in Skellefteå, Sweden.

A computer was connected to a cell phone and a GPS. TEMS Investigation, with an impulse response probe added, was used to record logg-files, with all the col- lected data. TEMS Investigation is a tool for troubleshooting, optimization and maintenance of wireless networks. To find out more about TEMS Investigation, visit [10].The data collected was:

1. Latitudes 2. Longitudes 3. Altitudes 4. Heading Degrees 5. Speed

6. Time

7. Scrambling code

8. Chip types (needed to know the length of the impulse responses) 9. The impulse responses

During the tests, the logg-files where only recorded during active phone calls.

In the first test, the car was in motion most of the time, while in the second both the car and the cell phone was as still as possible during the recordings.

Since the format of the recorded data was different compared to the data gen- erated, quite a lot of changes had to be done only to be able to extract the data needed. Then not useful impulse responses was sorted out. The remaining ones that was recorded within a second and had the same scrambling code was added to each other. This ought to amplify the reflections and attenuate the noise.

Then they were run through the Gaussian filter.

When this was finished a strange twist on the ellipses was discovered. It worked

fine as long as the base-station, the reflection and the cell phone together formed

a much stretched ellipse. If not the case, the ellipse was twisted and it was not

possible to find a reflection point anywhere near the correct area. It had to do

(36)

Figure 4.1: Measured impulse response

with the fact that all the calculations were restricted to the xy-plane. Therefore it had to be changed to the three-dimensional plane (x, y, z).

This did not solve the problem entirely, so in another attempt to solve this, a number of methods where investigated. One method was found, which gave an almost perfect result in all quadrants but one. Therefore the method was not possible to use, since the time needed to find out what went wrong was not at hand. Because of this a little twist in the ellipses still remains.

All the longitudes and latitudes were converted into Cartesian coordinates to

Figure 4.2: Measured reflection point.

be able to perform all the calculations. Then they where transformed back into

spherical coordinates (longitudes and latitudes) to plot the reflection point in

a normal map. In figure 4.1 a measured impulse response from the first drive

test is to be seen. In figure 4.2 a corresponding measured reflection point from

the same test. As is possible to see, there is an ellipse of dark blue, which is the

(37)

area where it is most probable to find the reflection point. As also is possible to see, there is a dot of white and red in the picture. This is where the error is the smallest in the matrix of coordinates. In this case, where only one base- station is available it is not possible to draw the conclusion that this actually is the reflection point. If this plot is compared to figure 3.5 in chapter 3, it is possible to se that the area where it is possible for the reflection to be, is a lot bigger here, than before. In figure 4.3 the result is then plotted in Google Earth using kml-files. Here the ellipses, base-stations, cell phone and reflection are plotted. Also an overlay is generated from the matrix, which through a colour scale shows the error in every point in the area. The area is Morö Backe and Morö Höjden, Skellefteå, Sweden. The blue dot is the base-station, the red one is the cell phone and the green one is the reflection point. More information about Google Earth and kml-files can be found at [11].

Figure 4.3: Google Earth representation of measured reflection point.

The second drive test occurred rather late in the project. From those mea- surements, the impulse responses was plotted and looked through manually.

Then, manually, it was possible to distinguish probable "line of sight" signals

and their probable reflections. Three impulse responses from three different

base-stations were used and the result is shown in figure 4.4. In this figure is it

rather easy to distinguish the reflection point. In figure 4.5 is it possible to see

this in Google Earth.

(38)

Figure 4.4: Reflection point from the second drive test

Figure 4.5: Google Earth representation from second drive test

(39)

Chapter 5

Discussion and conclusions

In this thesis it has been shown that it is possible to implement a bistatic radar system using the cell phone system. This is shown through measurements, sim- ulations and theory. The accuracy of the estimated position of the reflection needs to be more analyzed, since the approach in this work does not give satis- fying accuracy.

First and foremost it is the analyze of the impulse responses that presents trou- ble. It is very hard to distinguish a signal from all the noise. Of course, in most of the impulse responses, there is a peak or two that clearly distinguish them- selves from the noise. But there is no possibility to determine whether any of them actually are the "line of sight" signal or the signal of the reflection. Some more investigation needs to be done, in order to develop a better method. Here the first peak is simply assumed to be the "line of sight" signal and all following peaks are reflections.

Not only is better knowledge regarding the "line of sight" signal needed, but also regarding the reflections. More information regarding the point of origin for the reflections is needed. Otherwise is it very hard to know whether the estimated reflection point is reliable or not. Especially if used in situations with greater distances. The reason is that in some environments it is possible for a signal to bounce towards not only one object, but several. If this is the case, the signals from the three different base-stations required to solve the equations might have bounced towards different objects in the same area. This, of course, would introduce errors in the calculations.

But the chosen manner in which the impulse responses are analyzed also presents trouble. The Gaussian function was chosen as analyzing method. This is a very powerful tool to delete noise. It has been found, through looking at a lot of impulse responses and their matching Gaussian function, that every now and then it finds signals that actually ought to be considered as noise. Also, the Gaussian bells often swallow both the "line of sight" signal and the reflection in the same bell as pointed out on chapter 2.7 and shown in chapter 4. These things bring forth insecurity in the analyzing process. Therein lays a lot of work to be done. Only by finding better ways to analyze the impulse responses, the accuracy of the estimated reflection point would be much improved.

In this work, most of the usable estimations have ended up as ellipses. This

is because there haven’t been enough data from different base-stations in the

same area. The assumption has been made that during one second, the cell

(40)

phone has not moved enough to affect the calculations much. Therefore, all the impulse responses collected during one second has been matched to the first position of the cell phone and these have been used to estimate the reflection point. It seems that during that period of time, a lot of data has been recorded, but very little of that data has actually been usable. Therefore most of the calculations have ended up in an ellipse and the knowledge that somewhere on that ellipse should the reflection point be. Therefore the number of useable impulse responses occurring during one second needs to be increased.

Why a lot of the recorded data has not been useful, got to do with the kind of chip type that has arrived. Depending on the environment, whether the phone is moving or not, etc different methods of sampling the impulse responses is used. Better knowledge regarding what kind of chip type will be used in dif- ferent situations and environments, would definitely improve the results, since more of the recorded data would be useable. Something else that greatly would improve the result is a higher sample rate. Using a higher sample rate, it would be easier to estimate whether a value is part of a peak or whether it is a new peak. It would also make it possible to get better accuracy in the estimation of the reflection point.

In theory the shortest distance of reflection detection is about 78 meters. Most of the time, the estimations have resulted in an ellipse, with it’s closest point to the cell phone about a hundred meters away. The longest distances from cell phone to the edge of the ellipse have been about one kilometre. This of course is dependent of the positions of the base-stations, which actually are the ones determining the longest distance of detection, except the signal path loss. In a city environment, it is very likely that the working range of bistatic radar in a cell phone would be from less than a hundred meter to a couple of hundreds of meters. This, of course, makes it even more important to improve the analysis of the impulse response.

With the present approach, it is possible to at least find out at what distance

from the cell phone the reflection point ought to be. If better methods for an-

alyzing the impulse responses were developed, it would probably be possible to

predict the reflection point with much better accuracy.

(41)

Bibliography

[1] TEMS

TM

Optimization Solutions - Making Wireless Better. [Online]

Available: http://www.ericsson.com/solutions/tems/.

Accessed: 2009-01-13

[2] Griffiths, H.D. "From a different perspective:principles, practice and poten- tial of bistatic radar", Proceedings of the International Radar Conferens, 2003

[3] Cherniakov, M.; Saini, R.; Zuo, R.; Antoniou, M. "Space surface bistatic SAR with space-borne non-cooperative transmitters", European Radar Conference, 2005

[4] Erik Dahlman, Stefan Parkvall, Johan Sköld, Per Beming (2007). 3G Evo- lution: HSPA and LTE for Mobile Broadband. London, Elsevier Ltd, 2007.

[5] 3GPP specification: 25.101. [Online]

Available: http://www.3gpp.org/ftp/Specs/html-info/25101.htm Accessed: 2009-01-13

[6] Geographic coordinate system - Wikipedia, the free encyclopedia. [Online]

Available: http://en.wikipedia.org/wiki/Geographic_coordinate_system . Accessed: 2009-01-13

[7] Datum (geodesy) - Wikipedia, the free encyclopedia. [Online]

Available: http://en.wikipedia.org/wiki/Datum_(geodesy) . Accessed: 2009-01-13

[8] Harri Holma, Antti Toskala (2007). WCDMA FOR UMTS - HSPA EVO- LUTION AND LTE, fourth Edition. John Wiley & Sons Ltd, 2007 [9] Lennart Råde, Bertil Westergren. Mathematics Handbook for Science and

Engineering. 5th edition. Lennart Råde, Bertil Westergren and Studentlit- teratur 1988, 2004

[10] TEMS

TM

Investigation. [Online]

Available: http://www.ericsson.com/solutions/tems/realtime_diagnostics/

investigation.shtml Accessed: 2009-01-13 [11] Google Earth. [Online]

Available: http://earth.google.com/

Accessed: 2009-01-13

(42)

[12] Lee, William C. Y. Mobile communications design fundamentals / New York : Wiley, cop. 1993

[13] Nathanson, F.E. (1999). Radar Design Principles - Signal Processing and the environment (2nd Edition). SciTech Publishing.

Online version available at:

http://knovel.com.proxy.lib.ltu.se/web/portal/browse/

display?_EXT_KNOVEL_DISPLAY_bookid=321&VerticalID=0Radar

handbook

(43)

Appendix A

Chart of functions

(44)
(45)

Appendix B

Gaussian function implementation

function BestVars = test_curves(impResp) idImp = find(impResp ~= 0);

impResp1 = impResp1(idImp);

x = linspace(1,length(impResp),length(impResp));

nrOfBells = 1;

Vari = [1];

while (nrOfBells <= 3)

BestVars = AnalysedResponsGlupsk(impResp, x, Vari);

Vari = BestVars;

nrOfBells = nrOfBells + 1;

end

if(size(BestVars,2) < 10)

toAdd = 10 - size(BestVars,2);

addBestVar = zeros(1,toAdd);

BestVars = [BestVars addBestVar];

end

(46)
(47)

Appendix C

Code for calculating ellipses

function [ELong, ELat] = DrawEllipses(r0, r, pathlenght, lineofsight, rLaLo, r0LaLo, m)

% =====================================================

% r0 = cell phone position in x,y,z

% r = position of base stations in x,y,z

% pathlenght is the total length of the distance

% between base - cell - refl

% lineofsight is the length the line of sight signal,

% that is the distance between cell and base

% =====================================================

kmlStr =’’;

N=256;

t = (0:N)*2*pi/N;

R = 6378140;

for k = 1:size(pathlenght,2)

% =================================================

% The midpoint of the ellipse,

% h in direction of x-axis, c ii y-axis and d in

% z-axis

% =================================================

x0 = r(k,1) + ((r0(1) - r(k,1))/2);

y0 = r(k,2) + ((r0(2) - r(k,2))/2);

z0 = r(k,3) + ((r0(3) - r(k,3))/2);

mittLat = 90 - acosd(z0./sqrt(x0.^2 + y0.^2 + z0.^2));

mittLong = atand(y0./x0);

% ==================================================

% The length of the half-axis of the ellipses

% ==================================================

a = pathlenght(k)/2;

b = sqrt((pathlenght(k)/2)^2 - (lineofsight(k)/2)^2);

(48)

% ==================================================

% x,y,z coordinates before twisting of ellipses

% ==================================================

xprim = zeros(size(t));

yprim = b*cos(t);

zprim = a*sin(t);

% =================================================

% Turn around the x-axis

% =================================================

alfaX = atan2(((rLaLo(k,2) - r0LaLo(2))*cos(rLaLo(k,1))), (rLaLo(k,1) - r0LaLo(1)));

cosAlfaX = cos(alfaX);

sinAlfaX = sin(alfaX);

Xprim = xprim + R;

Yprim = cosAlfaX.*yprim - sinAlfaX.*zprim;

Zprim = sinAlfaX.*yprim + cosAlfaX.*zprim;

% =================================================

% Regards to the elevation, turn around the y-axis

% =================================================

cosAlfaY = cos(-mittLat*(pi/180));

sinAlfaY = sin(-mittLat*(pi/180));

XPrim = cosAlfaY.*Xprim + sinAlfaY.*Zprim;

YPrim = Yprim;

ZPrim = - sinAlfaY.*Xprim + cosAlfaY.*Zprim;

% =================================================

% Regards to the azimuth-angle, turn around the

% z-axis,as well as transform of coordinate-system

% =================================================

cosAlfa = cos(mittLong*(pi/180));

sinAlfa = sin(mittLong*(pi/180));

X = cosAlfa.*XPrim - sinAlfa.*YPrim;

Y = sinAlfa.*XPrim + cosAlfa.*YPrim;

Z = ZPrim;

% Retransformation to latitude and longitude ELat = 90 - acosd(Z./sqrt(X.^2 + Y.^2 + Z.^2));

ELong = atand(Y./X);

%keyboard;

%figure(1);

%hold on;

%plot( X, Y,’-r’);

% Genererar kml fil till GE kmlStr = ge_plot(ELong, ELat,...

’lineWidth’,1.0, ...

(49)

’lineColor’,’f2222ff1’,...

’msgToScreen’,true,...

’extrude’,0,...

’altitudeMode’,’clampToGround’);

%kmlStr = STRCAT(KmlStr, kmlStr);

kmlFileName =

[’H:\GEPlots\PlottedEllipses’ num2str(m) num2str(k) ’.kml’];

ge_output(kmlFileName,kmlStr,...

’name’,kmlFileName,...

’msgToScreen’,true);

end

(50)
(51)

Appendix D

Code for estimating the reflection point

function ReflectionPosition(r0, SC, a, b, diff)

% =================================================

% Calculate the position of the reflectionen, with

% help of known data as the cell phones position,

% the position of the cells etc

% =================================================

% =================================================

% Adds the Google Earths toolbox...

% =================================================

addpath(’H:\googleearthtoolbox’);

% =================================================

% Create a structure for information in the

% cell-file

% =================================================

cellList = GetCellList(’H:\Skelleftea.xml’);

% ================================================

% Gets info about the position of the cells,

% some other calculations

% ================================================

[SCLatLong, idNoExist] = GetLongLats(cellList, SC);

if ~isempty(SCLatLong) r = SCLatLong;

if ~isempty(idNoExist) diff = diff(idNoExist);

end

(52)

latmin = min(r(:,1));

latmax = max(r(:,1));

longmin = min(r(:,2));

longmax = max(r(:,2));

if(latmin>r0(1)) latmin = r0(1);

end

if(latmax<r0(1)) latmax = r0(1);

end

if(longmin>r0(2)) longmin = r0(2);

end

if(longmax<r0(2)) longmax = r0(2);

end

latmin = latmin-((latmax-latmin)*1.6);

% ===================================

% Extends the intresting area some

% more

%====================================

latmax = latmax+((latmax-latmin)*1.6);

longmin = longmin-((longmax-longmin)*2.6);

longmax = longmax+((longmax-longmin)*2.6);

% =====================================

% Transform to spherical coordinates

% =====================================

R = 6378140; % Radius of earth

rXYZ = [R.*sind((90-r(:,1))).*cosd(r(:,2)) R.*sind((90-r(:,1))).*sind(r(:,2))

R.*cosd((90 - r(:,1)))];

r0XYZ = [R.*sind((90-r0(:,1))).*cosd(r0(:,2)) R.*sind((90-r0(:,1))).*sind(r0(:,2))

R.*cosd((90-r0(:,1)))];

% =========================

% Calculates Line Of Sight

% =========================

lineofsight = LineOfSight(rXYZ,r0XYZ);

% =====================================

% Calculates pathlenght based on diff

% =====================================

(53)

pathlenght = PathLenght(lineofsight, diff);

% =====================================

% Calculate ellipses

% =====================================

DrawEllipses(r0XYZ, rXYZ, pathlenght, lineofsight, r, r0, b);

% =====================================

% Calculation of error in each point

% in range

% =====================================

latvec = linspace(latmin,latmax,512);

% Creates a vector in x-direction with 128

% points between 0 and 1

longvec = linspace(longmin,longmax,512);

% Creates a vector in y-direction with 128

% points between 0 and 1

[longmat, latmat]= meshgrid( longvec, latvec);

% Creates a grid with

% vectors above

xmat = R.*sind((90-latmat)).*cosd(longmat);

ymat = R.*sind((90-latmat)).*sind(longmat);

zmat = R.*cosd((90-latmat));

Emat = zeros(size(latmat));

Emat(:) = ComputeError([xmat(:) ymat(:) zmat(:)], r0XYZ, rXYZ, pathlenght);

% Calculates the error in every point in

% the matrix that is created by xvec and yvec filenameGE = [’H:\GEPlots\GenerateGoogle’

num2str(a) num2str(b) ’.kml’];

GenerateGoogle(longmin, longmax, latmin, latmax, log(Emat), filenameGE);

figure(3) clf;

height=zeros(size(Emat));

hPlot = surf(longmat, latmat, height, log(Emat));

hold on;

plot(r(:,2),r(:,1),’ow’);

% Plots the point where the "base stations" are situated

plot(r0(2), r0(1), ’^w’);

(54)

% Plots the cell phone in the figure shading interp

colormap(jet(2048));

view(2)

xlabel(’long’) ylabel(’lat’);

zlabel(’Error’);

% ============================================

% Optimization, find the point among the

% guessed that gives the least error,

% w0(idx) is this point

% ============================================

options = optimset(’TolX’, 1e-10, ’TolFun’, 1e-10, ’Display’, ’iter’);

Nw = size(rXYZ,1)+2;

w0 = zeros(Nw,3);

for k = 1: size(rXYZ,1)

w0(k,:) = fminsearch(’ComputeError’,rXYZ(k,:), options, r0XYZ, rXYZ, pathlenght);

% Calculate the smallest error in all

% values from startpoint r(k,:) and

% givesthe coordinates for this point end;

w0(k+1,:) = fminsearch(’ComputeError’, mean(rXYZ), options, r0XYZ, rXYZ, pathlenght);

% Calculate the smallest error in all values

% beginning in the midvalue of r and

% gives the coordinates for this point

w0(k+2,:) = fminsearch(’ComputeError’, r0XYZ, options, r0XYZ, rXYZ, pathlenght);

% Calculate the smallest error in all values

% beginning in r0 and gives the

% coordinates for this point

Ew = ComputeError(w0, r0XYZ, rXYZ, pathlenght);

[Emin, idx] = min(Ew);

% Decides which of the errors that is the

% absolutely smallest error, that is w0(idx)

% will be the point closest to the reflection

% =====================================

% Transformer back to the coordinate

% system of earth

% =====================================

(55)

x = w0(idx,1);

y = w0(idx,2);

z = w0(idx,3);

rW0Lat = 90 - acosd(z/sqrt(x.^2 + y.^2 + z.^2));

rW0Long = atand(y/x);

rW0 = [rW0Lat rW0Long];

% ====================================

% Plots above...

% ====================================

figure(3);

hold on;

plot(rW0(2),rW0(1),’dr’);

marg = AngularDistance(1);

h = rW0(2);

k = rW0(1);

R = marg;

N = 256;

t = (0:N)*2*pi/N;

plot( R*cos(t)+h, R*sin(t)+k,’w’);

% ==========================================

% Genererates code to a file to be able to

% plot the positions of the base-stations

% in Google Earth

% ==========================================

fid = fopen([’H:\GEPlots\MobCellRefl’ num2str(a) num2str(b) ’.kml’],’w’);

fprintf(fid,’<?xml version="1.0" encoding="UTF-8"?> \n’);

fprintf(fid,’<kml xmlns="http://earth.google.com/

kml/2.2"> \n’);

fprintf(fid,’<Document> \n’);

fprintf(fid,’<name>Mobil, celler och reflektioner</name> \n’);

fprintf(fid,’<Style id="a"> \n’);

fprintf(fid,’ <IconStyle> \n’);

fprintf(fid,’ <Icon><href>http://maps.google.com/

mapfiles/ms/icons/red-dot.png</href></Icon> \n’);

fprintf(fid,’ </IconStyle> \n’);

fprintf(fid,’</Style> \n’);

fprintf(fid,’<Style id="b"> \n’);

fprintf(fid,’ <IconStyle> \n’);

fprintf(fid,’ <Icon><href>http://maps.google.com/

mapfiles/ms/icons/green-dot.png</href></Icon> \n’);

fprintf(fid,’ </IconStyle> \n’);

fprintf(fid,’</Style> \n’);

fprintf(fid,’<Style id="c"> \n’);

fprintf(fid,’ <IconStyle> \n’);

(56)

fprintf(fid,’ <Icon><href>http://maps.google.com/

mapfiles/ms/icons/blue-dot.png</href></Icon> \n’);

fprintf(fid,’ </IconStyle> \n’);

fprintf(fid,’</Style> \n’);

NrCoords = size(r,1);

for k=1:NrCoords

tmp = cellList(k).CELLNAME;

m = find(tmp.value == ’_’);

n = find(tmp.value == ’ ’);

lp = length(n);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>%s</name> \n’, tmp.value(n(lp):m(1)-1));

fprintf(fid,’ <styleUrl>#c</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, r(k,2), r(k,1));

fprintf(fid,’ <description>

<![CDATA[Cellnummer: %s]]>

</description>\n’, tmp.value(m(1)+1:end));

fprintf(fid,’ </Placemark> \n’);

end

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Mobilens position</name> \n’);

fprintf(fid,’ <styleUrl>#a</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, r0(2), r0(1));

fprintf(fid,’ <description>

<![CDATA[Mobilens postition]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Reflektionens position</name> \n’);

fprintf(fid,’ <styleUrl>#b</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, rW0(2), rW0(1));

fprintf(fid,’ <description>

<![CDATA[Reflektionens position]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Sydvästra hörnet</name> \n’);

fprintf(fid,’ <styleUrl>#a</styleUrl> \n’);

(57)

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, longmin, latmin);

fprintf(fid,’ <description>

<![CDATA[Sydvästra hörnet]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Sydöstra hörnet</name> \n’);

fprintf(fid,’ <styleUrl>#a</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, longmin, latmax);

fprintf(fid,’ <description>

<![CDATA[Sydöstra hörnet]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Nordvästra hörnet</name> \n’);

fprintf(fid,’ <styleUrl>#a</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, longmax, latmin);

fprintf(fid,’ <description>

<![CDATA[Nordvästra hörnet]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’ <Placemark> \n’);

fprintf(fid,’ <name>Nordöstra hörnet</name> \n’);

fprintf(fid,’ <styleUrl>#a</styleUrl> \n’);

fprintf(fid,’ <Point> <coordinates>

%.7f,%.7f,100 </coordinates>

</Point> \n’, longmax, latmax);

fprintf(fid,’

<description><![CDATA[Nordöstra hörnet]]>

</description> \n’);

fprintf(fid,’ </Placemark> \n’);

fprintf(fid,’</Document> \n’);

fprintf(fid,’</kml> \n’);

fclose(fid)

end

References

Related documents

You suspect that the icosaeder is not fair - not uniform probability for the different outcomes in a roll - and therefore want to investigate the probability p of having 9 come up in

To clarify the distinction between the unknown genetics of the original Swedish family and the CSF1R mutation carriers, we propose to use molecular classification of HDLS type 1

information content, disclosure tone and likelihood of opportunistic managerial discretion impact equity investors reaction to goodwill impairment announcements?” In order to

The demand is real: vinyl record pressing plants are operating above capacity and some aren’t taking new orders; new pressing plants are being built and old vinyl presses are

46 Konkreta exempel skulle kunna vara främjandeinsatser för affärsänglar/affärsängelnätverk, skapa arenor där aktörer från utbuds- och efterfrågesidan kan mötas eller

Our data strongly suggests that RhoD is an important regulator of the actin cytoskeleton, therefore being actively involved in cell adhesion and cell migration via its

With a reception like this thereʼs little surprise that the phone has been ringing off the hook ever since, and the last year has seen them bring their inimitable brand

Prolonged UV-exposure of skin induces stronger skin damage and leads to a higher PpIX production rate after application of ALA-methyl ester in UV-exposed skin than in normal