Chapter 3. System Design
3.1. GLOBE mobile
The design and implementation of the GLOBE mobile is first presented. Figure 3 shows the
hardware and software architecture of the GLOBE mobile. While a user takes a picture,
sensor data are collected. They are the location of the GLOBE mobile based on GPS sensor,
the height above sea level of the GLOBE mobile based on GPS sensor, the direction and angle
of the GLOBE mobile based on the 3-Axis accelerometer, and compass sensor. Besides the
angle, height and location of the GLOBE mobile are estimated, and the parameters for the
camera lens are also needed. The information for camera lens can be pre-configured based on
the parameters of the camera lens or dynamically obtained by querying the camera module.
The information are used to estimate the view angle of the photo, the rough 3D field space
that a user took in a photo. Since the most of the camera cannot provide accurate focus
distance, we do not use the distance between objects and camera in the current
implementation. Only the view angle of the photo is used for estimating the field space of a
photo. After the information of a photo is collected, these information are sent to the GLOBE
server to compute the 3D field space of the photo, query the objects in the photos and other
related photos. Figure 4 shows the message sequence chart between the GLOBE mobile and
the GLOBE server. These procedures are to query possible objects in the photos, other related
photos, and information about the objects. After the GLOBE mobile receives the responses, it
draws the rectangles of the objects directly on the photo. Users can select the object they feel
interested and retrieve the information about the object or other related photos. Users can
learn more about the objects or sites they see and visit. The GLOBE mobile also combine
with Microsoft Virtual Earth Mobile so that the user can also see the direction and estimated
view field for this photo. If the GLOBE mobile does not have wireless connectivity, it also
records the parameters of the sensors and camera lens for all photos. The users can search and
retrieve the information and knowledge of the sites they visited while they come back home.
We are now implementing pre-fetch download functions. The function supports users to plan
their trip on GLOBE client, can pre-fetch all related information and objects before the trip.
Then, even users do not have wireless accesses during a trip, they can also perform query on
the local cache to learn the information about the objects they see.
Figure 3. Hardware and software architecture of the GLOBE mobile
Figure 4. Message sequence charts between GLOBE mobile、client and server
The GLOBE system calculates the 3D geographic location of the object through the numeric
values of longitude, latitude, angle, height, direction and distance, whose attributes will affect
the accuracy of calculation (See Figure 5).
Figure 5. The function of calculation
The calculation of numeric value on angle: the accelerator obtains the angle by
transforming the numeric value of the amplitude of vibration caused by three leaf springs
on the axis of X,Y, and Z into angle-transformation formula. In real situation, when the
three leaf springs on the axis of X,Y, and Z vibrate to a limited level, lower sensitivity ,
wider range of angle vibration, and increased errors will come to existence. For example,
when the range of angle vibration is between 80 and 90 or 0 and 10, the errors will
increase. Some adjustments need to be made to improve the accuracy. For software
design, besides, in order to provide a more reliable and accurate system, the system
software can do evaluation and modification by following the specification of the Figure
6, use resolution and sensitivity as the standard of data transmission and access, employ
the switch-able g- range as the standard of determining the modified data, and provide
wake-up timing to receive valid data.
Figure 6. The specification of accelerator
The calculation of numeric value on height: the numeric value of height is the numeric
value of height that the GPS receiver gets. Due to the quantity of detected satellite, the
numeric value of height that the GPS receiver gets is often erroneous. In other words,
when the number of detected satellite increases, the numeric value of height is much
more accurate; as the number of detected satellite decreases, the numeric value of height
is much less accurate. Therefore, the system employs the barometer as an auxiliary tool.
When the detected satellite is numerous, we can transfer the measured height into
barometric pressure and then obtain more accurate height by using the figure of altitude
v.s. barometric pressure. This accurate height can also verify the number of detected
satellite and the status of barometric pressure and altitude. The following Figure 7 offers
the transformation between barometric pressure and altitude.
Figure 7. Altitude above Sea Level vs. Barometric Pressure
The calculation of numeric values on latitude and longitude value: the GPS receiver’s
errors are caused by timing errors of the satellite and receiver, accuracy of the satellite’s
location, geometric distribution of the satellite, delayed errors of satellite signal passing
aerosphere, and multi-layer effect of reflective wave. Therefore, in order to improve the
accuracy of latitude and longitude, choosing a good receiver and better design technique
on GPS such as AGPS is the first step (see Table 1). Furthermore, by using the number of
the detected satellite as a standard of determining the latitude and longitude, the accuracy
of data will increase.
Table 1. GPS errors condition
Usage Environment Outdoors outskirts In-vehicle Outdoors urban area Indoors
Sensitivity( dbm ) -130 -135 -140~-145 -145~-155
GPS A-GPS GPS A-GPS GPS A-GPS GPS A-GPS
FFTT ( sec ) 45 4 45 5 X 10 X 20
Error( m ) <10 <10 <20 <15 X <25 X <30
The calculation of numeric values on compass: declination is the difference between
magnetic North and true North. Inclination or dip angle is downward angle from
horizontal of the local field 90° at the magnetic poles and 0° at the magnetic equator.
Horizontal intensity defines the horizontal component of the total field intensity
(combined X-Y fields). Vertical intensity defines the vertical component of the total field
intensity (Z field). Magnitude and direction is the same everywhere. They free from
interference Hard and Soft Iron effects. Turn the two orthogonal sensors in a circle while
held in a single plane (Usually horizontal). Plot the X and Y sensor outputs on a plane.
The result is a circle for X and Y describing Cos and Sin of the Azimuth or heading angle
(see Figure 8 (a) for Calibration Plot in Undistorted Field), respectively. The heading is
ArcTan(X/Y). A magnetic dipole source on the compass platform adds a constant vector
to the Earth’s field relative to X and Y sensors. Calibration circle is pulled off center (see
Figure 8 (b) for Hard Iron Distortion). It is caused by permanent magnets, DC currents
and batteries. We need to compensate by subtracting the X and Y offsets from the sensor
readings. Besides, permeable objects on the compass platform attract and distort the local
field effect changes and orientation (see Figure 8 (c) for Soft Iron Distortion). They will
change calibration circle to an ellipse. It is caused by Nickel, Iron, other magnetic
materials, SMT component plating, lead frames and RF shielding materials. We also
need to compensate with X and Y scaling as well as rotation angle.
(a) (b)
(c)
Figure 8. (a) Calibration Plot in Undistorted Field (b) Hard Iron Distortion (c) Soft Iron Distortion
Both hard and soft iron corrections usually are needed, especially true in watches and mobile phones due to battery and shielding proximity etc.
-600