Specification requirements

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

4.    Specification requirements

The main objective of this project is to realise an electromagnetic compass. As this kind of device has never been developed in IAU, we started by studying the different component available on the market.

4.1.                     Development suggestions

 

After initial researches on the Internet and thanks to the document: Where am I? [2], our attention was kept by a solution based on three magnetoresistive sensors. This kind of sensors is able to measure, with good accuracy, the value of a magnetic field. To get a good resolution, it is important to determine precisely the component of the earth field on horizontal plan. The azimuth can be calculated from these two values. However, the result will be extremely sensible to an inclination. To counter-act this effect, an inclinometer and a third axis for the magneto-sensor are required.

To detect the tilt angle on the robot, one of the possibilities could be to implement accelerometer 2 axis. Indeed, the inclination value can be deducted from the earth gravity. At this point, acceleration on the robot will also be interpreted as a tilt. A third axis one the accelerometer will clarify the situation. A further possibility could be to adjoin a gyro, which will determine the angular rate of the robot when this one turns. Indirectly, by comparison with the angle calculated from the compass, we are able to determine if the variation on the accelerometer is due to acceleration or a tilt.

 In addition, the angular rate could be use to confirm the value given by the magnetic field sensors. By integrating this measure, we also obtain the angle position of the robot. This result could confirm the result of the magnetic north, but also be an alternative of this last one if the robot meets an important magnetic interference that disturbs the sensor.

4.2.                     Component requirements

Once the overview of the system elaborated, the choice of the components has been done according to the following factors:

  • The price (cheaper as possible)
  • The specifications (corresponding as close as possible to our needs)
    . Example: The temperature range has to be between -10 and 40°C because the MMR is used outdoors.
  • The performance (best as possible)
  • The size (the PCB has not to exceed 8 by 10 centimetres)
  • The package (SO or DIP)

In addition, we selected the component among those that can be supply by a 0-5V power. This specification avoids the multiplication of the reference voltages.

A great part of the design depends on the specific components used. To reduce the cost of our cards we also tried to reuse many components as possible already available in IAU. Consequently, we orientated the choice of the basic components (resistor, zener, diode, capacitors, and transistors) between those already presents.

As most of the outdoors system, the electromagnetic compass has to be waterproofed. Therefore, we have to choose a box to wrap the all system. The different connectors to communicate with an outside computer or for supplying the system will use the same connectors as the ones implemented on the MMR. An important characteristic is not to perturb the magnetic earth field.

4.3.                     Autonomous system

The navigation system has to be able to works autonomously: to compute, at any moment, the angle to magnetic north by itself. A foreign system could then request this value via an RS485 connection. This specification requires the presence of a dedicate MCU which will, according to the request, collect the measure from the sensor, process the information and reply the corresponding value. The communication is setup at 115200 baud.

4.4.                     Software compatibility

This program has to be developed on Linux operating system and communicate with the connection RS232 and RS485 directly from a PC.


contact - link to this site