ArduCopter Mega: порт на обычную Arduino (тестим)

mahowik
Sir_Alex:

если явно медленнее, то у вас проблемы с таймером.

маловероятно, еслиб таймер съехал то все уплыло бы, драйвера pwm, ppm и т.д.
да и как это возможно? кварц бракованный?

Кстати, смотрел видос, видел новый drift мод. Это когда yaw и roll смикшены. Оч. удобно! Считаю это должно быть в каждом контроллере.
Это в 3.1 версии или уже в 3.0?

omegapraim

у меня тоже армится долго, у меня тоже проблемы с таймером?))))) Как мне кажется проблема глобальнее но требует решения ибо может под этим всем кроется бяка которая не позволяет летать из коробки…

Shuricus
mahowik:

Считаю это должно быть в каждом контроллере.

Мне тоже очень понравилось, только удивило, что зачем-то ЖПС должен при этом работать!

Sir_Alex:

Ну лично я не замечал на своем Криусе… А проблемы с таймером можно определить по вспышкам светодиода A - если все нормально, то он моргает 1 раз в сек

Да, так и моргает. У меня первая плата. И еще странно, что #define DISARM_DELAY никак не влияет. В файле motors. Это же оно?

omegapraim:

у меня тоже армится долго, у меня тоже проблемы с таймером?)))))

Дима, не армится, а дизармится! ) Армится он нормально - держишь пять секунд, отпускаешь и еще через секунду арм. Там еще проверки проходят.
А вот дизармится должен через 2сек. А срабатывает ровно через пять. Это не правильно! При том что через МП происходит мгновенно, кнопкой.

Sir_Alex:

Если GPS не подключен, надо выставить протокол NONE в файле APM_Config.h - или выбрать его во FlashTool’e

Спасибо - не знал!

Sir_Alex
mahowik:

маловероятно, еслиб таймер съехал то все уплыло бы, драйвера pwm, ppm и т.д. да и как это возможно? кварц бракованный?

  1. Действительно может быть кварц немного съехавший. Но конечно не на столько
  2. Я под словом таймер, скорее имел ввиду тайминг главного цикла. А практически все вычисления завязаны на том, что главный цикл выполняется на 100Гц, поэтому если главный цикл тормозит по какой то причине, то и все остальное то же.
  3. Конкретно тайминги АРМА/ДИЗАРМА задаются в файле motors.pde. (Функция проверки вызывается с частотой 10Hz - значит что бы отсчитать 2 сек, надо выставить тайминг = 20 - оно и так стоит по умолчанию)
omegapraim:

у меня тоже армится долго, у меня тоже проблемы с таймером?))))) Как мне кажется проблема глобальнее но требует решения ибо может под этим всем кроется бяка которая не позволяет летать из коробки…

Первый арм происходит медленно, потому что в первый раз идет калибровка гиры и акселя, а так же барометра (запоминается текущая высота земли = 0).

Shuricus
Sir_Alex:
  1. Конкретно тайминги АРМА/ДИЗАРМА задаются в файле motors.pde. (Функция проверки вызывается с частотой 10Hz - значит что бы отсчитать 2 сек, надо выставить тайминг = 20 - оно и так стоит по умолчанию)

Я поставил 5 вместо 20 - ничего не изменилось. Это не с проста!

mahowik
Sir_Alex:
  1. Я под словом таймер, скорее имел ввиду тайминг главного цикла. А практически все вычисления завязаны на том, что главный цикл выполняется на 100Гц, поэтому если главный цикл тормозит по какой то причине, то и все остальное то же.

скорее всего тут ответ…

SergDoc
mahowik:

Это в 3.1 версии или уже в 3.0?

3.1, блин сколько разговоров про неё надо наверно портировать себе…

Flutter
SergDoc:

3.1, блин сколько разговоров про неё надо наверно портировать себе…

Ну почему только себе:(. И сэр Алекс что-то замолчал насчет портирования. Хочунемогу Drift.

SergDoc
Flutter:

Ну почему только себе

Ну тут как бэ пока у меня одного контроллер собственный на stm32f4, на котором Арду работает, надеюсь после НГ будет несколько - будет веселее 😃

SergDoc
Flutter:

А как насчет Меги (Crius AIO)?

У меня то её нет 😃 Алексей же собирался вчера занятся портированием 😃

RTemka

Народ с опытом окирпичивания MinimOsd можно ее оживить.
Дернулся программатор при заливке и все приехали 😦
Или перепаять атмегу.

SergDoc
RTemka:

Дернулся программатор при заливке и все приехал

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

Antarius

Простите, отстал от темы.
Где взять 3.0 rc5 или в какой из третьих новых версий появился автотюнинг?
На crius AIO 1.0 зальется?

5yoda5

Здравствуйте.
Скажите пожалуйста, а есть ли возможность на ардупирате (ардупилоте) принудительно запустить движки, в обход преарм чека без предварительного отключения преарм чека?
То есть, процедура преарм чек - вещь хорошая, не отключаем её. Полетели. Предположим, повисли на дереве (криво-косо), движки встали, произошел диазрм. Штатный арминг естественно не срабатывает. Принудительно запускаем движки (КАК???), и коптер падает с дерева.
А?

Flutter
Antarius:

Где взять 3.0 rc5 или в какой из третьих новых версий появился автотюнинг?
На crius AIO 1.0 зальется?

В ожидании портированной 3.1 скачал ArduCopter-3.1.0-R1-rc5 с RcGroups (правда, Алексей говорит, что до выхода оф.релиза пирата это опасно из-за перегрузки проца). Там не было PPMSum, не тот порядок каналов, всё подогнал под себя, и мой аппаратик замечательно летает. Проверил только Loiter, RTL. Ради чего всё затевалось, Drift, да и Super Simple у меня работают через раз:( Тоже crius AIO 1.0, залилось без проблем. Так что, на свой страх и риск.
Автотюнинг начиная с 3.1. Я не пробовал.

Sir_Alex
Flutter:

В ожидании портированной 3.1 скачал ArduCopter-3.1.0-R1-rc5 с RcGroups (правда, Алексей говорит, что до выхода оф.релиза пирата это опасно из-за перегрузки проца). Там не было PPMSum, не тот порядок каналов, всё подогнал под себя, и мой аппаратик замечательно летает. Проверил только Loiter, RTL. Ради чего всё затевалось, Drift, да и Super Simple у меня работают через раз Тоже crius AIO 1.0, залилось без проблем. Так что, на свой страх и риск. Автотюнинг начиная с 3.1. Я не пробовал.

Даже тот кто делал этот порт, уже потерял коптер, так что пользуетесь на свой страх и риск.

Flutter
Sir_Alex:

Даже тот кто делал этот порт, уже потерял коптер, так что пользуетесь на свой страх и риск.

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

Sir_Alex
Flutter:

Алексей, дык о том и речь, жду-не-дождусь, если возможно, ускорьте процесс.

Первый блин комом получился. Залил альфа версию 3.1 в новенький контроллер от WhyteSpy… так он издох. Я так и не понял что произошло, но он больше не грузится. Даже бутлоадер не работает.
Попробовал в Криус залить, то же не запускается прошивка, но хотя бы бутлодырь жив…

men68
Sir_Alex:

Даже тот кто делал этот порт, уже потерял коптер, так что пользуетесь на свой страх и риск.

А использование PPMSUM повышает загрузку процессора? Приходится ведь еще декодировать поток.

Sir_Alex
men68:

А использование PPMSUM повышает загрузку процессора? Приходится ведь еще декодировать поток.

Любой код повышает. На CRIUS v2 если подключать через PL1 (отдельный пин PPMSUM) - нагрузка будет меньше, т.к. используется хардварная часть, которая измеряет длительность импульса.
А разницы с APM особой не будет, т.к. APM то же принимает сигналы управления по PPMSUM. Сам PPM формирует второй чип (PPM Encoder), Который переводит все возможные сигналы в PPMSUM.