ArduCopter Mega: порт на обычную Arduino (тестим)
код моторов для вот такой рамы
rcopen.com/files/4e4228769970730077a3b762_sm
roll_out = g.rc_1.pwm_out*0.868;
pitch_out = g.rc_2.pwm_out*0.5;
roll_outr = g.rc_1.pwm_out*0.5;
pitch_outr = g.rc_2.pwm_out*0.868;
// left
motor_out[CH_3] = g.rc_3.radio_out + roll_out + pitch_out; // FRONT
motor_out[CH_2] = g.rc_3.radio_out* 0.98 + roll_outr - pitch_outr; // BACK
// right
motor_out[CH_1] = g.rc_3.radio_out - roll_out + pitch_out; // FRONT
motor_out[CH_4] = g.rc_3.radio_out* 0.98 - roll_outr - pitch_outr; // BACK
А хоть у кого-нибудь работает нормально AllInOne с GPS и код MegaPirate?
После замены неисправной платы allinone (с ума сходила гира по оси X) вот так начал летать коптер на стоковых пидах. прошивка 2_0_38.
www.youtube.com/watch?v=I54mDkPMifk
Но есть проблема : так и не смог запустить гпс. Волшебная лампочка “все хорошо” на плате моргает, как бы говорит мне что фикс есть, но по RAWGPS по прежнему тишина. Подключено RX-TX2 TX-RX2, какие могут быть варианты? Может неисправный пин на ардуине?
Подключено RX-TX2 TX-RX2, какие могут быть варианты? Может неисправный пин на ардуине?
Может у вас не та скорость выбрана для 2го порта (RX2,TX2)?
Может у вас не та скорость выбрана для 2го порта (RX2,TX2)?
Возможно, буду очень признателен если подскажете как это сделать и какая скорость нужна для корректной работы гпс?
У меня нету точной инфы по GPS, но в зависимости от того, как разработчик подключил GPS, скорости могут быть: 4800, 9600, 38400, 57600. Попробуйте все варианты. Я так понимаю, прошивка у вас 2.0.38, значит открываем файл system.pde и в районе строки 72, меняем скорость
Serial2.begin(38400, 128, 16);
Кроме того, в папке libraries/GPS_UBLOX/examples есть пример работы с GPS. Замените в файле GPS_UBLOX.cpp - Serial1 на Serial2 (По умолчанию там скорость 38400, попробуйте то же разные скорости… думаю надо 57600), скомпилируйте и залейте в Ардуину, после запуска, можно терминалом (на скорости 57600) подключится и посмотреть, что выдает GPS.
P.S. Скорость по умолчанию для UBLOX NEO-6Q - 9600
Сегодня оттесчу свой квадр на 38-й прошивке и если все нормольно, вечером зацеплю сонар
Хочу попробовать переписать библиотеку гпс для работы через i2c шину. Кто в этом разбирается, может там есть какие затыки, и не стоит тратить время на это? Наверное же не просто так тут это реализовано через ttl serial интерфейс.
Romb89, В теории, можем временно поменятся платами, вы мне с GPS а я вам без. Тем временем поиграюсь с GPS, может что то получится накопать. Ну или переделаю под i2c.
Мне и самому интересно поиграться с ним и переделать под i2c 😁
Мучил вчера свою платку и заметил такую вещь:
- Отключаем gps модуль
- Запускаем test - adc, бегут данные
- Втыкаем gps в любой serial (даже в Serial1, который вроде в коде вообще не используется)
- Показания виснут, они продолжаю бежать, но выдаются одни и те же цифры. Можно вообще отключить allinone, цифры всё равно бегут.
- Если после этого запустить test-altitude или test-compass, вообще всё зависает. Скорее всего они не могут инициализироваться.
Соответственно у меня возникает вопрос, как подключение gps на не используемый порт может влиять на работоспособность шины i2c? Может в самой ардуине косяк какой?
Ну как вариант, все же попробовать отрезать GPS от i2c.
У меня нету точной инфы по GPS, но в зависимости от того, как разработчик подключил GPS, скорости могут быть: 4800, 9600, 38400, 57600. Попробуйте все варианты. Я так понимаю, прошивка у вас 2.0.38, значит открываем файл system.pde и в районе строки 72, меняем скорость
Serial2.begin(38400, 128, 16);
Кроме того, в папке libraries/GPS_UBLOX/examples есть пример работы с GPS. Замените в файле GPS_UBLOX.cpp - Serial1 на Serial2 (По умолчанию там скорость 38400, попробуйте то же разные скорости… думаю надо 57600), скомпилируйте и залейте в Ардуину, после запуска, можно терминалом (на скорости 57600) подключится и посмотреть, что выдает GPS.
P.S. Скорость по умолчанию для UBLOX NEO-6Q - 9600
Спасибо, заменил на 9600 и кое что начало проясняться.
Сразу после прошивки rawgps принимает данные, но если написать в терминале test-gps получаю вот такой результат:
test] gps
Hit Enter to exit.
G*?G*?G*!G!.G!G!G!G!.G!G!G!G!.G!G!G!G!.G!G!G!G!.G!G!G!G
При том что диод сигнализирует о наличии спутников.
После этого rawgps молчит до следующей перепрошивки.
При том что диод сигнализирует о наличии спутников.
Если диод моргает, то это означает что от GPS поступают данные (но не значит, что он привязался), а вот если горит постоянно, значит все гуд и есть FIX. Единственно, я не знаю, должен ли test gps выдавать что нибудь, если нет привязки.
Если диод моргает, то это означает что от GPS поступают данные (но не значит, что он привязался), а вот если горит постоянно, значит все гуд и есть FIX. Единственно, я не знаю, должен ли test gps выдавать что нибудь, если нет привязки.
Может мы говорим о разных диодах. Если я заношу коптер в комнату, диод гаснет - на окно - моргает.
Диод, который возле самого чипа gps моргает, если видит спутники.
test gps в любом случае должен что-то выдавать, даже если спутников нету.
Если test-rawgps что-то выдает, а test-gps нет, то скорее всего что-то не так со скоростью порта.
G*?G*?G*!G!.G!G!G!G!.G!G!G!G!.G!G!G!G!.G!G!G!G!.G!G!G!G
Это значит что автопоиск не может идентифицировать ваш модуль. Первое что приходит в голову, проверить правильность подключения по tx/rx. Тут выше писали, что у разных версий платы, разная распиновка.
Может мы говорим о разных диодах. Если я заношу коптер в комнату, диод гаснет - на окно - моргает.
У Ардупирата есть три светодиода:
#define A_LED_PIN 13 - Светодиод самой ардуины, показывает общее состояние коптера. После запуска и инициализации, горит - если двигатели активированы и моргает если деактивированы.
#define B_LED_PIN 31 - Хз, вроде отвечает за режимы полета или на проблемы с ними…
#define C_LED_PIN 30 - Молчит - GPS не найден. Моргает - GPS найден, но нет привязки. Горит - есть привязка к координатам.
Облетал 2.0.38 прошивку. Времени было немного - вылетал один пак. Ну что могу сказать? Это самая стабильная прошивка на которой я летал. Коптер висит как прибитый. Очень четко отрабатывает команды. С моим никаким опытом пилотирования я летал перед собой и не так как хотел коптер 😃 , а так как хотел я. Сейчас приделаю сонар, и может быть, вечером испытаю с сонаром. В общем впечатления от прошивки очень и очень положительные.
Сейчас, сейчас, я уже доделываю трикоптер для пирата 😃
Через часа два заливаю и летаю если успею затемно…
трикоптер для пирата
Ну трикоптер не знаю, а квадр очень понравился.
Не знаю не видел или видел и не понравился??
Не знаю не видел
Не видел
трикоптер для пирата
ждемс фото/видео отчета и главное фоток самого коптера (поворотный механизм в частности)
я тут выпал на недельку из-за нового девайса, поэтому вопрос - что за прошивка 2.0.38 и откуда качать - завтра буду летать и тестить loiter и alt_hold, так как барометр теперь работает как надо =)