This program is developed for research projects related to Automated Guided Vehicles (AGV). It involves cooperation in the development of several components. This software is designed to extract satellite data using GNSS-RTK and process it to create accurate routes for AGVs.
This project focuses on using GNSS-RTK to assist in guiding AGVs along predetermined routes with high accuracy. The data is processed to track AGV position, plot paths on maps, and determine distances to target points. The program is designed for real-time navigation and provides feedback when the AGV is within proximity to a target point.

The program's architecture consists of the following main components:
- GNSS-RTK Receiver: The SimpleRTK2B Lite is used to receive satellite data.
- Data Processing: The software processes data to extract latitude, longitude, and other relevant information.
- AGV Path Planning: The program creates accurate paths based on GNSS data, ensuring the AGV follows a designated route.
- GUI Interface: The Tkinter-based GUI visualizes AGV position on a map, displays real-time coordinates, and tracks progress toward target points.
The workflow follows these steps:
- Connect the GNSS-RTK receiver to the computer for data collection.
- Process the satellite signals according to the NMEA 0183 standard.
- Display the current latitude and longitude on a map and update the AGV's position.
- Calculate the distance between the AGV's current position and target points.
- Move the AGV along the planned path, triggering an update when it reaches a target within a specified radius.
The flow chart shows the step-by-step operation of the program, divided into two main parts:
-
Data Collection & Display
- Connect the SimpleRTK2B Lite device to the computer.
- Receive and display satellite data (latitude, longitude, and number of satellites).
- Export the collected data to a text file.
-
AGV Path Navigation
- Ensure the SimpleRTK2B Lite device is properly connected to avoid errors.
- The map visualizes the AGV's position and generates a route.
- The AGV follows the path, updating when it reaches a target point within a 4-meter radius.
-
Software:
- Ubuntu 20.04 LTS (required)
- Python 3.8.10 (recommended)
-
Hardware:
- SimpleRTK2B Lite
- Clone this repository:
git clone https://github.com/SupakunZ/GNSS_RTK.git
- Navigate to the project folder:
cd GNSS_RTK
-
Install dependencies as detailed in the
Documentation.pdf
-
Run the program:
- Make sure the SimpleRTK2B Lite device is connected.
- Use the GUI to track AGV position and monitor real-time data.
- Set target points for the AGV to follow.
GNSS_RTK/
: The main directory for the project.documentation/
: Documentation files for installation and usage.src/
: Source code for the GNSS-RTK program.data/
: Contains files for data storage and logs.tests/
: Testing files and test results.
- Real-time AGV Position Tracking: The program tracks the AGV's position using GNSS data and displays it on a map.
- Route Creation: Automatically generates paths for the AGV to follow based on GNSS data.
- Map Display Options: Users can switch between different map views, such as OpenStreetMap and Google Maps.
- Proximity Alerts: Alerts when the AGV is within a specified distance (4 meters) of the target point.
Result.GnssRTK_compress.mp4
- 📄
Documentation.pdf
– Detailed instructions for installing the program. - 📄
Appendix.pdf
– Installation guides for third-party tools used in this project. - 📹
Result GnssRTK.mp4
– Demonstration video, located in thetests/
folder.