GPS-приемники для квадрокоптеров

Shuricus

Кто-то писал, что что 10 спутников, что 20 - разницы никакой.
Наза висит в точке на шести. И не жужжит.

RicLab
RicLab:

Такой никто не пробывал Gms-g9.

Пришел таки мне этот модуль!😁
Под него была сделана тестовая плата.

Статический тест проводил в городе, так как в полевых условиях провести тест пока нет возможности.

Стабильно ловит 15-16 спутников. В поле наверно будет больше.😉

HATUUL
RicLab:

Под него была сделана тестовая плата.

Если не сложно,можно попотробней про схему и детали.Тоже в дороге этот модуль.

HATUUL

Дмитрий.
Как я понял вы свой модуль брали у продавца на алиекспрес,за какое время дошла посылка?

П.с.
Блин чето ступил не по детски.Точнее не проверил.
Ардупайлот с мтк3333 дружит?

Вроде Алексей Козин писал ,что да.Можете подтвердить.

omegapraim

Хоть и не ко мне обращались, скажу что работает, но не совсем. Есть там запрос пакета RNC так вот этот пакет модуль выдает как RMC в коде ардупилота надо пару буков поменять, но лучше дописать автопрограммирование модуля на примере мультивия.

RicLab
HATUUL:

Как я понял вы свой модуль брали у продавца на алиекспрес,за какое время дошла посылка?

Заказывал здесь, на алиэкспрес нашел позже.
По арду не подскажу, так как пользуюсь только Маховием.

omegapraim

а в маховие та же петрушка все будет работать, но если подрубить осд то не будет показывать скрость и еще кое какие параметры, исправляется сменой одной буквы на вкладке GPS

korall

Пришел вот такой модуль, с подключением вопросов нет .Но никак не пойму для чего в комплекте 4 обрезка печатной платы, сначала подумал ,что таким оригинальным способом китайцы избавляются от производственного мусора, а нет ,оказалось ,что они заявлены в комплектации под названием “4 x Shielding plates”, что это? если можно фото на это хозяйство в сборе.

gorbln

Пирамидку из этого надо спаять, с гпс приёмником на вершине. Помогает уменьшить влияние всяких помех и металлических предметов рядом с приёмником.

alexeykozin
omegapraim:

Хоть и не ко мне обращались, скажу что работает, но не совсем. Есть там запрос пакета RNC так вот этот пакет модуль выдает как RMC в коде ардупилота надо пару буков поменять, но лучше дописать автопрограммирование модуля на примере мультивия.

откуда такая инфа?
вот код
github.com/diydrones/ardupilot/…/AP_GPS_NMEA.cpp
вот константа
// NMEA message identifiers ////////////////////////////////////////////////////
//
const char AP_GPS_NMEA::_gprmc_string[] PROGMEM = “GPRMC”;

вот идентификация строки

if (!strcmp_P(_term, _gprmc_string)) {
_sentence_type = _GPS_SENTENCE_GPRMC;

вот пример выдачи строки mediatek 3339 globaltop PA6C
$GPRMC,185305.000,A,5543.8384,N,03744.5632,E,0.85,135.66,250314,A*69

тут прошивка под 3339 медиатек с конфигом под апм (38400 бауд, 5 гц выдача, требуемый набор строк)
files.msdatabase.ru/gps

$GPRMC соответствует стандарту нмеа

3333 чипсет не пробовал. 3339 использую пачками, крайний раз заказал 40штук в “аврора мобайл” (москва/питер)

omegapraim

Простите не могу привести даташит моего приемника по личным причинам, но у меня в нем есть воттакая заметка:

Note:

  1. When only GPS is fix or no fix, EB-800A will output $GPRMC / $GPGLL / $GPGSA.
  2. When GPS + GLONASS is fix, EB-800A will output $GNRMC / $GNGLL / $GNGSA.
alexeykozin
omegapraim:

Простите не могу привести даташит моего приемника по личным причинам, но у меня в нем есть воттакая заметка: Note: 1) When only GPS is fix or no fix, EB-800A will output $GPRMC / $GPGLL / $GPGSA. 2) When GPS + GLONASS is fix, EB-800A will output $GNRMC / $GNGLL / $GNGSA.

все верно, все по стандарту
GP соответствует GPS фиксу
GN глонасс
я пользуюсь односистемными приемниками gps поэтому и проблем нет

пробовал смешанные глонас приемники трех видов (два вида геостар и один навис).
вывод печальный
3339 серии из под двойного железобетона на горячую секунд за 20, дальний от окна угол фиксится и не дрейфует далее 20м в долгосрочном тесте
ublox 6 чуть дольше но тоже фиксится
оба приемыша под открытым небом дают 2м точность в 20 минутном тесте
все опробованные двусистемные приемыши лочатся только если с активной антенной высунуть из окна при этом гуляя время от времени от 200м до 2 км.

omegapraim

Ну мы же сейчас говорим именно о гибридках, собственно поэтому и счел нужным предупредить, прицендет имеет место быть и это надо в коде менять для правильной расшифровки.

gorbln
omegapraim:

и это надо в коде менять для правильной расшифровки

Так а приёмник при ГПС+Глонасс фиксе ГПСные-то строчки выдаёт? или полностью переходит на выдачу сообщений с заголовком $GNRMC? Это объясняло бы прикол с пропаданием фикса у меня на арде

vatanuki
omegapraim:

Простите не могу привести даташит моего приемника по личным причинам

этот даташит EB-800A?

omegapraim:
  1. When only GPS is fix or no fix, EB-800A will output $GPRMC / $GPGLL / $GPGSA.

если хотите скрыть, прячте под ХХХХХ 😃

RicLab
omegapraim:

а в маховие та же петрушка все будет работать, но если подрубить осд то не будет показывать скрость и еще кое какие параметры, исправляется сменой одной буквы на вкладке GPS

У меня вроде все показывает после арминга.

omegapraim

все скрываться больше нету сил)))))) Он самый) вчера так задолбался что уже мелочей не видел)))))

Все касается только этих трех пакетов.

Еще вопрос, а какие именно пакеты использует ардукоптер, я заметил только VTG, GGA после автопрограммирования. Эти пакеты остаются неизменными, кстати поставил сейчас на арду модуль, все ловит с нужными настройками. Надо собрать прошивку, кто попробует до выходных, могу это сделать вечером.

alexeykozin
omegapraim:

Еще вопрос, а какие именно пакеты использует ардукоптер, я заметил только VTG, GGA после автопрограммирования. Эти пакеты остаются неизменными, кстати поставил сейчас на арду модуль, все ловит с нужными настройками. Надо собрать прошивку, кто попробует до выходных, могу это сделать вечером.

по идее
const char AP_GPS_NMEA::_gprmc_string[] PROGMEM = “GPRMC”;
const char AP_GPS_NMEA::_gpgga_string[] PROGMEM = “GPGGA”;
const char AP_GPS_NMEA::_gpvtg_string[] PROGMEM = “GPVTG”;

в поиске строки

if (!strcmp_P(_term, _gprmc_string)) {
_sentence_type = _GPS_SENTENCE_GPRMC;

игнорировать 2 символ
либо сравнивать первый символ и 3-5
либо оценивать последовательность с 3 символа

omegapraim

Я просто менял P на N и все работало))))))) Я не программер поэтому ничего сложнее написать не смогу, а господа из соседней ветки слишком заняты и не хотят заниматься такой мелочью.

Сегодня с утра подрубил к арду приемник, все запустилось и координаты казал исправно, без модификации. но модифицировать надо все равно.

HATUUL

Вчера поковырялся в програмных дебрях ардупайлота,походу менять надо в библиотеках,в конфиге можно переводить на МТК19 ,8к кушает,думаю надо добавить тстроку с изменением а не менять саму строку,короче одному и за раз не справиться.

Тем более с меня легче балерину сделать чем програмиста…

Ура приемник выслали.RT199336221HK

П.С.Дима omegapraim спасибо тебе большое,за то что делаешь !

omegapraim

Все Димы в этой ветке сейчас почувствовали гордость и поднятие ЧСВ))))) Я предлагаю разобраться, но один я не справлюсь ибо нужно проводить тесты, а я в ардукоптере еще нуб, просто переназначить строки без проблем, а вот дописать что то уже серьезнее ибо тут не ляськи масяськи, а есть риск улета если неправильно будет расшифровываться. В общем я сейчас доделаю подвес для рамы и вплотную займусь арду.

Обратился за помощью к Sir Alex если повезет, поможет разобраться)))) В мультивие все решалось легко, но в арду совершенно все иначе.

HATUUL

Ну у меня есть еще время до прихода модуля,буду потихоньку играться.

alexeykozin

у кого глонас / галилео/ гпс под ардукоптер
попробуйте diydrones.com/group/…/nmea-extension
 я наглазок набросал какие правки кода сделать, по идее должно работать…
но не тестил
если кто проверит - отпишитесь

omegapraim

в выходные проверю, после отпишусь.

Вы поправили так же как и предлагали путем игнорирования первых двух символов из пакета?

Чет не компилится, вот че пишет.

Building for ArduPilot Mega 2.x
Excluding arduino core from include paths
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:95: error: expected unqualified-id before ‘…’ token
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:98: error: expected unqualified-id before ‘else’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:99: error: expected unqualified-id before ‘else’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:101: error: ‘to’ does not name a type
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:105: error: redefinition of ‘const char AP_GPS_NMEA::_gpgga_string []’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:92: error: ‘const prog_char AP_GPS_NMEA::_gpgga_string [6]’ previously defined here
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:106: error: redefinition of ‘const char AP_GPS_NMEA::_gpvtg_string []’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:93: error: ‘const prog_char AP_GPS_NMEA::_gpvtg_string [6]’ previously defined here
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:109: error: expected unqualified-id before ‘if’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:110: error: expected unqualified-id before ‘else’
C:\ArduPilot-Arduino-1.0.3-windows\ardupilot-mpng\libraries\AP_GPS\AP_GPS_NMEA.cpp:111: error: expected unqualified-id before ‘else’

да и на всякий случай напишу, что оригинальные папки арду просто вставил вместо папок с мегапиратом, предварительно все из папки удалив, HAL поставил апм 2ххх ну и конечно тип микрухи нужный.