FPGA based Environmental Data Acquisition System

Global Positioning System (GPS) provides geolocation and time information to a GPS receiver anywhere on the Earth. However, obstacles such as mountains and buildings may block the GPS signals or make the positioning information not accurate.

In order to get a precise location of the GPS receiver, even when there are obstacles in the line of sight, students from Transylvania University develop an enhanced GPS receiver using an accelerometer. The use of an accelerometer is to complement loss of GPS signal or inaccurate GNSS signal measurement with motion analyzer.

This enhanced GPS receiver consists of Digilent Pmod GPS receiver, Pmod ACL2 3-axis MEMS Accelerometer, Pmod WiFi module and Arty Z7 Zynq 7000 SoC Development PlatformThe Arty Z7: APSoC Zynq-7000 is used to process the physical data acquired by Pmod ACL2 and Pmod GPS while Pmod WiFi is for wireless communication between the enhanced GPS receiver and the computer 

Students use Digilent Pmod IP to implement Pmod ACL2, Pmod WiFi and Pmod GPS on Xilinx Zynq.  

Students use Digilent Pmod IP to implement Pmod ACL2, Pmod WiFi and Pmod GPS on Xilinx Zynq.  

The Vector Direction Algorithm uses X axis (linear speed vector) and Y axis (angular speed vector). “X” will be added to the GPS coordinate “x’’ and with some complex math operations. “y’’ coordinate is based on “Y’’ axis. “x” and “y” represent new coordinates for the actual position. To ensure correct data working on the device, the last 3 couple of points (coordinates) received from GPS receiver will be used to create the path. The algorithm is written in C++. 

GPS coordinates and accelerometer X, Y, Z values are computed using the Vector Direction Algorithm. The positioning can be viewed through a graphic user interface (GUI) on the PC. As for the application, an OpenGL library is used: LWJGL (Lightweight Java Game Library) which ensures data synchronization with user commands. In this way 2 of the main targets are achieved: time and reliability.