Table of contents
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
17.Sensors controller commands
19.Future improvements

19.           Future improvements

An inertial navigation platform built of low cost sensors is basically possible. Although the achieved precision is sufficient to measure the actual spatial representation (angles & acceleration), further improvements have to be realized in algorithms and hardware to get also sufficient accuracy for position measurement. (refer to the section 14.4.1)

Due to the use of the component INA2126 instead of the initial component AMP04, we had also to remove the system to filter and amplified the output of the accelerometer. A greater operational range and the reduction of the white noise will improve the result. For that reason, it could be interesting to use an analogical instead of a numeric filter. In addition, to use a gyro with a greater operating range will probably avoiding that it saturates if the MMR turn too quickly (and consequently to drive an error in the angle’s determination).

To increase the distinction between operating cases (tilt, acceleration, perturbation…) will greatly improve the overall efficiency. For example, an accelerometer that could measure the acceleration according to z-axis will differentiate the acceleration to a tilt. A second solution could be to use the value of the acceleration from the odometry to differentiate the case.

The most important part missing on the project is the implementation on the robot. The time has been not enough to realise this part. The first step would be to modify the program ‘smrd.c’ to adapt our device. To that purpose, an easy solution could be to replace the address of the port on viewport or Xcompass by the address of the daemon. This later could then interface the port. A second solution could be to use the execute() method on utils.a that create a pipe to a process to communicate with.

 Once the connection established, the value from the odometry and from the GPS (for the MMR) will increase the accuracy. All the positioning system present on the MMR could be use together. The GPS will give an absolute position of the MMR on the earth this value could setup the declination to obtain the geographic north.

To finish, it modification on the calculation of the magnetic field have to be done to compensate the transverse magnetic field effect. Magnetic sensors are generally sensitive to an applied magnetic field in a single direction (refer to the section 18.4).

contact - link to this site