Smart Pen: Final Project for ECE5725

Author: Ziqi Yang (zy259), Haowen Tao (ht398)

Result

As can be seen from the final result, we were able to meet many of the goals outlined in the previous sections. Although the whole system is not capable of fully restoring the exact movement of the IMU module, it could return a recognizable result of the overall pattern of the movement. Our final version was able to restore the lines very well, but with the flaw on the restore of the turning, we cannot do the restoration on more complex patterns.

Several pictures of the result of handwriting pattern restoration can be seen below:

Letter ‘B’
Letter ‘A’
Number ‘9’

Conclusion

This project tries to restore the movement of an inertial measurement unit using the accelerometer and gyroscope data output, and output the result to to the TFT screen. The LSM9DS0 and BNO055 is used to report the movement parameters including acceleration and rotation speed to the Raspberry Pi and the Raspberry Pi is used to do the sensor fusion and plot the result.

The following functions were functions were successfully implemented:

1.Data calibration and data fusion using IMU raw data.

2.Raw acceleration filtering

3.Simple fast movements restoring: straight lines, curved lines and some simple characteristics

There are several flaws in the current setup:

1.The drift of error grows over time, and the accumulated error will distort the restored image, and it will get worse as the record time goes on.

2.The angles of the turns during the movement cannot be accurately restored.

3.Datas obtained from different recording cannot be combined together the movement between each recording cannot be restored.

In conclusion, our team implemented a handwriting tracking system using Raspberry Pi and IMU BNO055, which can track movements in a small range, such as english characters. The whole system works in a very functional way. By pressing the button on our module, users can easily start the recording process and repressing the button again will immediately stop the recording. And then their writing trajectory will be automatically displayed on the RPi TFT screen.

Our experiments and results have shown that the system will be more accurate and suitable if writings have more straight lines and arc curves.


Future Work

In the work of gait tracking using IMU, the quaternion and acceleration data is reset, and error is corrected when the foot touch the ground, thus the error will not accumulate from one step to another. A similar method could be used, every time the IMU is detected touched the ground, the quaternion and acceleration will be recalibrated.

Another way to reduce the error is to add a feedback loop, just like the way an optical mouse works, a small camera could be used to track its own movement, the result of the camera tracking could be used as a feedback of the IMU movements.