Table of contents
3.Introduction
4.Specification requirements
5.Solutions suggestions
6.The magnetic fields sensors
7.The inclination measurement system
8.The gyroscope
9.The data acquisition system
10.Communication system
11.The power supply
12.Realisation of the PCB
13.The embedded system
14.Static Library Util.a
15.ViewPort
16.Xcompass
17.Sensors controller commands
18.Test
19.Future improvements
20.Conclusion
21.References
To realise our
compass, we have typically two possible approaches:
- To buy and extend a commercial compass according to our requirements.
- To build the entire system according to the specification.
Let’s have a look on the cheapest solution on the market.
This compass module has been specifically designed to assist robots’
navigation. Therefore, it produces a unique number that represents the
direction the robot is facing. The compass uses the Philips KMZ51 magnetic
field sensor to detect the Earth magnetic field. The output from two of them is
used to compute the direction of the horizontal component of the Earth magnetic
field. This device requires 5V-power supply and uses an I2C interface to
communicate with the other system. This last specification will require many
modifications to use it with a RS485 connection.
Figure 2: The CMPS03 magneto module
Figure 3: The Vector 2X
This device can be use as compass or
magneto sensors. The module will apply correction for hard iron distortion to
compensate for magnetic interference in harsh environments but it does not
provide tilt compensation. The maximum resolution of the angle is 1° that could be
sufficient for our application. As the previous system, it requires 5V-power
supply, but it uses an SPI interface to communicate.
Consequently, we will have the same
modification to do for using the Vector 2X with the MMR or the SMR.
The Honeywell HMC2003 is a
high sensitivity, three axis magnetic sensor hybrid assembly used to
measure low magnetic field strengths. Honeywell’s most
sensitive magneto-resistive
sensors (HMC1001 and
HMC1002) are utilized to
provide the reliability and precision of this magnetometer design. The
HMC2003
interface is all analogue
with critical nodes brought out to the pin interfaces for maximum user flexibility.
Although the characteristics of this
device are very interesting, the price for this kind of device is so
expensive (200$). In addition, the cost of each magneto sensors used to
realise this system is inferior to 20$.
Figure 4: The HMC2003
It appears that to buy a commercial
system is not the best solution for the assignment. In addition the price
varies from product to product. The two first suggestions are not very
expensive (about 22£ for the CMPS03 and 50$ for the Vector 2X); but we would
have to add the cost of the modifications. Nevertheless, these different compasses
give a good base to design our own system based on the above considerations.
Another solution to realise our
navigation system could be to use several gyros on each axis. In this way, the
drift, which is the major problem with the gyro, could be compensated. Many
application based on this sensor have already been developed in IAU. The
adjustments of an existing model are not very easy, and could require lots of
work to adapt it to our specification.
|