Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

🛝 NavigationSystem

NavigationSystem — это модульная система для сбора, обработки и интеграции навигационных данных на базе Raspberry Pi, с поддержкой:

  • GNSS (через UART),
  • магнитометра (I2C),
  • LoRa (SPI),
  • инерциальной навигации (EKF),
  • Deep Coupling INS/GNSS,
  • RTK / PPP (через внешние источники),
  • фильтра Калмана.

⚙️ Возможности

  • 🛱️ Поддержка GPS/GNSS через последовательный порт (NMEA)
  • 🧩 Магнитометр HMC5883L / QMC5883 (I2C)
  • 📶 LoRa-модули (SX127x по SPI)
  • 📀 Фильтр Калмана (EKF) для инерциальной навигации
  • 📈 Интеграция данных IMU + GNSS (Deep Coupling)
  • 🌐 Готовность к RTK/PPP интеграции
  • 🧹 Гибкая архитектура для подключения дополнительных сенсоров

🛠️ Требования

  • Raspberry Pi 4 / 3 / Zero 2 W
  • Python 3.7+
  • GNSS-приемник (UART)
  • HMC5883L или аналог (I2C)
  • LoRa-модуль SX1278 / SX1276 (SPI)

📦 Установка

sudo apt update
sudo apt install python3-pip python3-smbus i2c-tools
pip install numpy pyserial spidev smbus2

Включи интерфейсы:

sudo raspi-config
# Enable: I2C, Serial, SPI

🚀 Запуск

  1. Подключи оборудование к Raspberry Pi (см. ниже).
  2. Клонируй репозиторий:
git clone https://github.com/VohminV/NavigationSystem.git
cd NavigationSystem
  1. Запусти:
python3 main.py

📰 Аппаратные подключения

Компонент Интерфейс Пины Raspberry Pi Протокол
GNSS-приёмник UART GPIO14 (TX), GPIO15 (RX) NMEA
Магнитометр I2C GPIO2 (SDA), GPIO3 (SCL) HMC5883L
LoRa-модуль SPI GPIO10 (MOSI), GPIO9 (MISO), GPIO11 (SCLK), GPIO8 (CS) SX1278

🔪 Структура

NavigationSystem/
├── navigation_system.py   # Основной класс навигации
├── main.py                # Пример запуска
├── README.md
└── LICENSE

🛠️ Настройка

Пример конфигурации:

config = {
    'i2c_bus': 1,
    'serial_port': '/dev/ttyS0',
    'baudrate': 9600,
    'spi_bus': 0,
    'spi_device': 0,
    'magnetometer_address': 0x1E  # HMC5883L
}

📤 Отправка через LoRa

Сообщения в формате:

POS:<долгота>,<широта>,HEAD:<курс>

Пример:

POS:37.12345,55.67890,HEAD:135.4

🔭 Планы

  • Поддержка RTK/PPP через NTRIP/базу GNSS
  • Web-интерфейс для отображения маршрута
  • Запись логов на SD/отправка на сервер

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages