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

hobbo
mixachev:

Просто подключай и в полет.

Подключил, но вий не видит гпс-модуль. Причем питание на модуль подается вроде корректно. И создается ощущение что попутаны сигнальные провода от i2c-gps до gps: дело в том, что на гпс разъем промаркирован gnd,rx,tx,vcc а на i2c-gps разъем промаркирован gnd,tx,rx,vcc. При этом кабель, соединяющий эти два рязъема, почему-то прямой. Может быть действительно попутаны провода?

Leon11t

Должно быть gps tx-crius rx, gps rx-crius tx, vcc-vcc, gnd-dnd. Просто акуратно выньте два проводка из клемника и поменяйте местами. Кабель не должен быть абсолютно ровным.

mixachev
Leon11t:

Должно быть gps tx-crius rx, gps rx-crius tx, vcc-vcc, gnd-dnd. Просто акуратно выньте два проводка из клемника и поменяйте местами. Кабель не должен быть абсолютно ровным.

Что вы советуете ? Кабель у него нормальный и ничего не попутано. Tx Rx поменяны местами на самой плате.

hobbo:

Может быть действительно попутаны провода?

В прошивке ВИЯ GPS раскоментировал?

hobbo
mixachev:

Кабель у него нормальный и ничего не попутано.

Я тоже надеюсь, что кабель нормальный. Но тогда выходит что подписи на платах где-то все-таки попутаны, т.к. фактически выходит что tx от i2c-модуля подключается на rx от gps-модуля.
А в исходнике дефайны gps и i2c конечно я раскомментировал.

mixachev
hobbo:

фактически выходит что tx от i2c-модуля подключается на rx от gps-модуля

Так и есть. Tx -передает а сдругой стороны Rx принимает. Так работает UART.

hobbo

Ок, можно мне что-то тогда посоветовать или куда-то меня носом ткнуть?
ЗЫ
…получается что у i2c и uart разные распайки?

ЗЫЗЫ
И еще одна непонятка… Разъясните плиз…
У меня сейчас на crius se в порт uart подключен bluetooth с рцтаймера. Его кабель промаркирован так: rx, tx, vcc, gnd. Соответственно так он и подключен и успешно работает. А вот у, казалось бы, такого же uart-кабеля, идущего в комплекте с gps-модулем раскладка иная: gnd, rx, tx, vcc. Ессно, при попытке подключения gps-модуля непосредственно к uart ничего не происходит, т.к. банально не совпадает по питанию (хорошо еще что ничего не подохло).
И вот тут я перестаю понимать… 😃

mixachev
hobbo:

У меня сейчас на crius se в порт uart подключен bluetooth с рцтаймера.

Посмотри внимательно маркировку на bluetooth сзади и на маркировку на плате ВИЯ .И посмотри куда какой провод идет. Там тоже Rx-Tx a Tx- Rx. У меня данные в конфигураторе на ANDROIDE появляются после захвата спутников.

Leon11t
mixachev:

Что вы советуете ? Кабель у него нормальный и ничего не попутано. Tx Rx поменяны местами на самой плате.

В прошивке ВИЯ GPS раскоментировал?

Ну этого я незнал. На блютусе из таймера мне пришлось делать именно то что я написал про ГПС. По идеи так и должно быть и на криусе ничего не должно быть переплутано первоначально.

hobbo

А в конфигураторе “лампочка” GPS сразу загорается или только когда спутники поймаются?

Leon11t
hobbo:

Извиняюсь за нубство, но насколько я понял, для того чтобы i2c-gps nav module с рцтаймера заработал с их же gps-приемником, нужно поменять скорость на приемнике на 115200 и на i2c-gps модуле тоже. На приемнике скорость поменял, подключенный к u-center на окне ловит шесть спутников. Подскажите пожалуйста, как правильно подключить i2c-gps модуль к ftdi, чтобы перепрошить его? Спасибо!

Можете дать ссылку на гпс модуль из таймера. У вас crius all in one 1.0 или crius se?

Leon11t
hobbo:

rctimer.com/index.php?gOo=goods_details.dwt&goodsi…
у меня CRIUS SE (с гудлака)

Этот гпс использует uart для связи из криусом. Для того чтоб его подключить к ваему криусу нужен uart-i2c переходник. При ктом сам гпс нужно настроить вот по етой инструкции: Default parameter
•Baud rate : 9600
If this GPS receiver used for I2C-GPS NAV Board, it must be changed to baud rate 115200 / update rate 5hz.
Тогда схема подключения должна бить такой: Гпс-переходник-криус.
Гпс без переходника надо подключить к ftdi. Но в зависимости од уровней напряжения, такая схема может не работать. И ftdi нужно будет подключать к конвертеру уровней или использоват старый шнур од телефона из уровнями 3,3 вольт. ftdi выдает 5 воль.

Olegsi
Sir_Alex:

Зачем вам этот переходник? Подключите прямо к контроллеру своему, залейте скетч SerialPassthru.pde из дистрибутива MPNG. Предварительно скорость GPS только надо подправить в скетче. Далее через U-Center заливайте свой конфиг.

скретч SerialPassthru.pde не могу залить, не понимаю, что там прописать. нужно ли копировать все библиотеки в папку АРДУИНО как при заливке пирата или чистую использовать?
подскажите, что в скетч прописывать?
#include <FastSerial.h>
/*
// You can use this sketch to communicate with devices connected to Arduino board
// In exampe, you can configure GPS or Bluetooth modules
*/
FastSerialPort0(Serial);
FastSerialPort2(Serial2);
void setup(void)
{
// Computer <-> Arduino speed
Serial.begin(38400);
// Arduino <-> your device
Serial2.begin(9600);

Serial.println(“Started”);
}
void
loop(void)
{
byte c;
if (Serial2.available()){
c = Serial2.read();
Serial.write©;
}
if (Serial.available()){
c = Serial.read();
Serial2.write©;
}
}

hobbo

Про дефолтные характеристики моего гпс-модуля я читал. На 115200 его сразу настроил. Подключаю именно так: гпс-переходник-криус. Через ftdi подключать не хочется, т.к. есть желание иметь следующую конфигурацию:

  • конфигурирование через блютус (занят uart)
  • гпс через i2c посредством переходника i2c-gps
  • перепрошивать контроллер через ftdi
    Словом, хочется собрать такое, чтоб ничего не перетыкать при смене прошивки и настройке.
    Так мне никто не ответил (сам проверить пока не имею возможности), “загорится” ли в конфиругаторе “лампочка” GPS сразу или только после того как будет сигнал со спутников?
devv
hobbo:

“загорится” ли в конфиругаторе “лампочка” GPS сразу или только после того как будет сигнал со спутников?

вроде “GPS” загорит когда в прошивке его подключим
Когда “ловит” то мигает круг вокруг стрелки компаса
ну и окончанием являются циферки с координатами, колвом спутников и т.д.

Olegsi
Olegsi:

скретч SerialPassthru.pde не могу залить, не понимаю, что там прописать. нужно ли копировать все библиотеки в папку АРДУИНО как при заливке пирата или чистую использовать?

нашел загвоздку- библиотеки от пирата в папку и Ардуиной закинул и пошла загрузка

hobbo

Тогда я попрошу уважаемых форумчан посмотреть, все ли я сделал правильно в отношении перенастройки gps-модуля:

  • настройку делаю по этому мануалу: homepage3.nifty.com/…/MultiWii FC and GPS.html

  • подключаю gps-модуль к ftdi и к usb на ноуте:

    при подключении действительно нужно соблюдать последовательность Tx-Rx Rx-Tx. иначе u-center “не видит” gps-модуль.

  • запускаем u-center, выбираем com-порт (у меня com6) и скорость (по-умолчанию была 9600, сейчас уже установлена 115200):

    жмем кнопку Send

  • устанавливаем:
    baudrate=115200
    target=‘1-UART1’
    Protocol in=‘0+1 - UBX+NMEA’
    Protocol out=‘0+1 - UBX+NMEA’
    в блоке PRT (Ports):

    (тут я прошу меня простить за невежество, я даже толком не знаю что это за параметры. просто пытаюсь настроить модуль по найденному мануалу)
    жмем кнопку Send

  • устанавливаем:
    Time Source=‘1 - GPS time’
    Measurement Period=‘200ms’
    Measurement Frequency=‘5.00Hz’
    Navigation Rate=‘1cyc’
    Navigation Frequency=‘5.00Hz’
    в блоке RATE (Rates)

    жмем кнопку Send

  • сохраняем сделанные изменения:
    выбираем все Devices (0 - BBR, 1 - FLASH, 2 - I2C-EEPROM, 4 - SPI-FLASH)

    жмем кнопку Send

  • открываем ardiuno ide (у меня 1.0.1), загружаем multiwii (у меня 2.1), в config.h снимаем комментарии в строках:
    #define GPS_BAUD 115200
    #define I2C_GPS

    и прошиваем…
    прошивается у меня почему-то с выводом сообщения avrdude: stk500_getsync(): not in sync: resp=0x00
    хотя все изменения, сделанные в иходнике (например, активация aux1) происходят. в свойствах arduino ide у меня выбрано устройство Arduino Pro Mini w/ATmega328 на com6.

После этого, подключаем bluetooth-модуль, даем питание от бортового аккумулятора, запускаем конфигуратор, коннектимся по com-порту (у меня com3):

видно, что gps-модуль не обнаружен контроллером…

СТОП! СТОП! СТОП! СТОП!..

Дико извиняюсь перед всем сообществом… бес попутал… вторую ночь не спал… выбрал в arduino ide тип контроллера nano, все прошилось без ошибок и теперь GPS светится в конфигураторе зеленым… заодно узнал, что avrdude: stk500_getsync(): not in sync: resp=0x00 означает - контроллер не отвечает.
Еще раз прошу прощения и всем спасибо!

…буду ковырять дальше 😉

ЗЫ
Одна надежда, - если на форуме найдутся такие же горе-экспериментаторы, может быть этот длинный пост поможет им.

crown
hobbo:

все прошилось без ошибок и теперь GPS светится в конфигураторе зеленым

Светится то светится а сам gps работает? данные передает? у меня схожая проблема в конфиге все светится но плата переходника как мигала одиночными желтыми вспышками так и мигает, хотя сам модуль настроен так же на 115000 и 5гц, платку прошивал расcкоментировав только строчку ublox

hobbo
crown:

а сам gps работает?

Да, данные с гпс-модуля принимаются. Вот скрины из двух конфигураторов:

на окне (правда сам приемник лежит пока отдельно, почти у самой рамы) ловит до 9 спутников через минуту-полторы после включения:

crown
hobbo:

Да, данные с гпс-модуля принимаются. Вот скрины из двух конфигураторов:

а платку I2C NAV прошивал, или не трогал?

rx9abc

Все сделал так же как и Hobbo, но результата пока нет.
После долгих попыток понять в чем же дело пришел к следующему:

  1. модуль GPS работает. При подключении к у-центру через FTDI показывает спутники, настраивается, изменяет и записывает настройки (115200, 5 Гц). Все сделал так же как и в посте Hobbo и ссылке в его посте.
    Залил файл настроек u-blox-config.ublox.txt из архива I2C_GPS_NAV-v2.1rc2.zip
  2. Так же настроил плату МультиВии, т.е.

#define GPS_BAUD 115200
#define I2C_GPS

В конфигураторе GPS горит зеленым.
3. Осталась плата переходника. И чтобы я не делал она 1 сек к 1 сек моргает красным диодом. Я её тоже, кстати, перепрошил вот этим I2C_GPS_NAV-v2.1rc2.zip.
Причем, как написано в r33-documentation.pdf:
Глава Compiling the code, заменял в ардуино файлы twi.c и twi.h
глава Clearing the EEPROM, чистил EEPROM.

Ничего не помогает.
Чтобы такого сделать с этим переходником? А может GPS модуль надо как то хитро настроить и тогда переходник сможет его (GPS) понять?

PS: Заработало! В очередной раз зашел в конфигуратор, а он показывает данные с GPS. Я конечно безмерно этому рад, но плата переходника так и продолжает моргать красным диодом 1 к 1.