Pull to refresh

Comments 23

Если использовать битовую упаковку, то получим
Lat: ±179.999, приводим к ±179999 (±101011111100011111), 19 бит
Lon: ±89.999, приводим к ±89999 (±10101111110001111), 18 бит
Alt: 0-5115, приводим к 0-1023, 10 бит
Vario: ±15 (±11111111), 5 бит
Итого 19+18+10+5 = 13 нибблов с уменьшением шага по высоте до 5 метров и увеличением диапазона высот.

Если же широту и долготу считать не как абсолютные величины, а как дельту от опорной точки (вам ведь не надо залетать за тысячи километров от станции слежения), то можно передавать их как ±2.047, используя по 12 бит (три ниббла) на значение.
Тогда в полёте нельзя будет сделать сброс и перезапуститься.
Я же предлагаю передавать дельту не от последней точки, а от фиксированной опорной. Если полёты всё время в одной и той же местности, то её можно просто установить, например, на центр аэродрома.
Передавать дельту — был альтернативный вариант, но я отказался от такого решения. Кстати для конкретной локализации очень неплохой вариант, который позволяет укоротить пакет, соответственно и общий цикл.
Вот смотрю я на приемную часть.
Приёмник — их было два, тестировались по очереди: Rado Shack и YAESU FT-11r В качестве преобразователя уровней двухканальный ОУ от оптического привода. Декодер – их тоже было два: ESP8266 для беспроводного соединения с сервером, и Arduino UNO с ETHERNET шильдом для проводного соединения с сервером. Вариант на ESP8266 мне понравился больше, так как от него не было цифрового шума, и как ни странно обработка пакетов на ESP8266 была быстрее!

Не было идей взять SDR приемник, хотя бы тот же RTL-SDR, и декодирование проводить силами ноутбука? Есть даже готовые варианты декодеров для протокола Oregon — github.com/jaycedowell/rtl_osv21 (первое, что попалось).

Судя по github, использованная модуляция — FSK. Если использовать хотя бы MFSK, то, скорее всего, можно добиться повышения скорости передачи данных, и возможно — повысить SNR.
Не использовал такое решение по ряду причин.
Основная то, что декодирование нужно было проводить силами отдельного устройства, которое всегда работает автономно, при этом недорого стоит. Декодер на esp8266 отдаёт готовый post в базу на сервер — это старый ноутбук куда записываю всё. А к серверу, веб интерфейсу, подключаться можно уже любыми устройствами. Минимум проводов + wifi. Наш РП почти всегда находится на улице, потому и смотреть в экран приходится там же. В общем, недорого и удобно.
UFO just landed and posted this here
Верно подмечено — LPD недорого стоят, ардуинки тоже. Но вот внешних круговых антенн тоже 10 штук понадобится. Иначе на резинку приём будет плохой. Да и потом, свести данные со всех бортов, необходимо в одно место. Руководитель полётов один, у него одна карта интерактивная, на которой отображены 10 бортов. Поэтому 10 транспондеров — одна базовая станция.
UFO just landed and posted this here
Интересно, нельзя ли сделать разделение каналов на разных звуковых частотах, раз уж вы используете стандартные радиостанции.
С разными звуковыми частотами пришлось бы использовать квадратурный выход. Думаю это усложнит задачу.
Не смотрели на lora модули? Вроде как раз неплохо подходят под эту задачу (частоты высоковаты но для открытого пространства вроде норм).
Да смотрел, ещё как смотрел. Но по ряду причин отказался. Товарищ одноклубник параллельно развивает эту тему на lora. Но там уже концепция проекта другая. Кстати оттестированы были пара модулей lora, результат впечатлил. Но на большие расстояниях они пока так же не летали, не более 7 км, при мощности 1 Ватт.
Странно, почему для такой задачи не использованы копеечные lora модули на какой-нибудь SX1276?

Вероятно, как обычно, дьявол кроется в деталях.
То же могу сказать и по поводу SDR.
Железный приёмник это таки железный приёмник, с соответствующими характеристиками.
Ну и сравните продолжительность перезагрузки недорогого ноута с перезагрузкой 8266.
При том, что сам приёмник в исполнении «кирпич» вряд-ли придётся перезагружать в процессе полётов.
Но даже замена аккумулятора в нём — не намного дольше перезарядки АК.

По радиочасти:


  1. Не думали использовать DSSS кодирование? Это прилично улучшит приём, и можно будет уйти на нелицензируемый и сравнительно чистый на улице диапазон 2.4ГГц, мощность передатчика должна быть не больше 100мВт.
  2. По антеннам — ваши антенны имеют диаграмму направленности в виде бублика, обещанные 3.5dBi усиления будет при высоте над горизонтом до 30 градусов. Тут есть резон использовать квадрифилярную антенну (QFH) на вышке, а на планере уж либо штыревые, как у вас, либо попробовать разместить что-то типа клевера (CloverLeaf), разместить можно внутри фюзеляжа, если он не металлический.

По синхронизации времени:


  1. Почему не стали использовать вывод 1PPS от GPS модуля? Это же прямо то, что вам нужно для синхронизации: дёрнет прерывание чётко по началу секунды. По прерыванию запускаете таймер на нужную задержку и посылаете пакет данных. В принципе, не будет большой проблемой попадать в десяток миллисекунд с началом передачи.
  2. Для того, чтобы не уходили часы — поставьте на плату термометр и сделайте таблицу компенсации ухода частоты. Эталон же под рукой — GPS 1PPS, дальше каждый экземпляр может у себя таблицу подсчитывать и записывать в eeprom. Можно ещё любые недорогие часы реального времени поставить (RTC), стоят копейки, термокомпенсация будет из коробки. Это же решит проблему старта, когда GPS ещё не отдуплился, батарейку только надо будет поставить.
Не думали использовать DSSS кодирование? Это прилично улучшит приём, и можно будет уйти на нелицензируемый и сравнительно чистый на улице диапазон 2.4ГГц, мощность передатчика должна быть не больше 100мВт.

2.4ГГц — не думаю что получится на 30 км работать.

По антеннам.
Квадрифилярную антенну использовать — идея! Но пока нет такой. Надо бы попробовать сделать. А вот что касается антенн на планерах, то тут есть трудности. Борт планёра — авиационный дюраль. По этому, пока так, как на фото. Установить рядом с основной антенной на «спину» планёра можно опять же только резинку, ну или полуволновый штырь. Других мест нет. Там нужно устанавливать проходной изолятор. Пока не стал этого делать так как портить не хочется. Сначала отладить бы всё…

По синхронизации времени:

По синхронизации времени — спасибо за идею! Вопрос изучаю. Стоит попробовать.
Борт планёра — авиационный дюраль. По этому, пока так, как на фото. Установить рядом с основной антенной на «спину» планёра можно опять же только резинку, ну или полуволновый штырь. Других мест нет. Там нужно устанавливать проходной изолятор. Пока не стал этого делать так как портить не хочется.

Всё же надо постараться поставить антенну снизу, а не сверху, чтобы он не экранировал прохождение сигнала крыльями. Резинку можно разместить перед задним шасси, либо перед передним — там есть место, в принципе. В качестве проходного разъёма, и заодно и крепления, вполне себе удобно использовать SMA разъём. В планере надо будет сверлить отверстие диаметром порядка 5мм — это основной минус, конечно. Плюс — в случае чего, оторвёт нафиг антенну, разъём скорее всего выживет и не повредит обшивку планера.

Всё же надо постараться поставить антенну снизу, а не сверху, чтобы он не экранировал прохождение сигнала крыльями. Резинку можно разместить перед задним шасси, либо перед передним — там есть место, в принципе.
Увы, в нижней части на фюзеляже Бланика без вариантов.
ArduPilot + передача телеметрии через LoRa модуль?
А это не изобретение велосипеда? Есть же уже куча летных приборов с Fanet/Flarm.
И планеристы, и парапланеристы с ними летают.
Велосипед! Более того — радиолюбительство в чистом виде:) Я сделал так, как понимаю и делюсь небольшим опытом. Возможно кому то полезно будет. И потом, решения такого же как у меня, я не нашёл. Если угодно, то это решение под свои задачи. У меня получилось сделать из того что есть, недорого и эффективно.
Sign up to leave a comment.

Articles