Ардупилот на платах OpenPilot Revolution / RevoMini (записей: 1756)

  • Аватар профиля m--s s s6 пунктов в 7 г. назад
    [2017-11-10 12:31:26] night_ghost писал(а): все части HAL теперь собираются с оптимизацией -O2, что заметно УМЕНЬШИЛО место

    Я бы попробовал собрать все с -O2 и -flto, ещё больше уменьшит бинарник, мне кажется. 

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-10 14:39:29] m-s писал(а): и -flto, ещё больше уменьшит бинарник, мне кажется.

    лто портит код так что ничего не работает, так что отпадает

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-10 14:11:48] m-s писал(а): Огонь.

    там куда не залезь, так "чем дальше в лес тем толще партизаны". От некоторых открытий аж плющит, да. А потом "а почему время цикла у вас такое плохое?"

    UPD. Бинарники готовы

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-10 14:22:37] m-s писал(а): блок после we reserve some space не нужен и вреден

    посмотрел и... ничего не понял, что там вообще делается. Вообще мне вся подсистема выдачи МАВлинк представляется чудовищно переусложненной. Но вроде как-то работает - так что особым желанием туда лезть я не горю.

    Как бы это делал я: массив структур-описателей сообщений, состоящих из размера, приоритета, ссылки на генератор, требуемой частоты и времени последней отправки. Тогда достаточно в цикле проходить по массиву и отправлять те сообщения, чья очередь наступила и которые лезут в выходной буфер. Если сделать приоритеты динамическими как у меня в планировщике, то исключается и неотправка низкоприоритетных сообщений при насыщении канала, как это происходит сейчас.

  • Аватар профиля m--s s s6 пунктов в 7 г. назад
    [2017-11-10 20:10:22] night_ghost писал(а): UPD. Бинарники готовы

    Попробую вечером. Должно помочь, в px4 как-то же работает.

    Если не поможет , выпилю этот блок, который сообщения дропает.

  • Аватар профиля m--s s s6 пунктов в 7 г. назад

    Вообще да, там ужас-ужас. В принципе большая часть сообщение действительно идёт через очередь. Но не все (

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-11 12:12:49] m-s писал(а): Если не поможет , выпилю этот блок, который сообщения дропает.

    не надо, лучше тогда попробовать увеличить буфер передачи до килобайта

  • Аватар профиля m--s s s6 пунктов в 7 г. назад
    [2017-11-10 20:10:22] night_ghost писал(а): UPD. Бинарники готовы

    Ура, починилось!

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-12 05:44:37] m-s писал(а): починилось!

    Вот и ладушки.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад

    новые бинарники с последними изменениями из апстрима, включая Plane 3.8.3.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад

    В качестве промежуточного итога - бонусы отказа от ОС.

    Код Ардукоптера для Пиксхока перевалил за мегабайт и перестал лезть в память старым версиям процессоров. Все платы семейства Revolution сотоварищи имеют тот же самый мегабайт, вот только даже у Ардукоптера последней версии со всеми плюшками в виде OSD и USB MassStorage остается еще 145кб свободного места.

    PS, что на данный момент меня расстраивает больше всего, так это снижение точности в канале выхода на моторы: все расчеты ведутся во флоате, а затем преобразуются к историческому диапазону 1100-1900 (всего 800 шагов) и в таком виде передаются в HAL. Тогда как разрешение современных ESC составляет 2000 шагов, и логичнее было передавать в HAL именно Float значение, дабы он уже сам разбирался с управлением моторами.

  • Аватар профиля m--s s s6 пунктов в 7 г. назад

    Кстати максимальный размер мавлинк пакета не 255, а 280 байт(с учётом id, crc и прочего). Может поэтому у людей логи через мавлинк не закачиваются...

    Может попробовать 512 буфер + 256 запас?

  • Аватар профиля m--s s s6 пунктов в 7 г. назад
    [2017-11-14 05:31:55] night_ghost писал(а): В качестве промежуточного итога - бонусы отказа от ОС. Код Ардукоптера для Пиксхока перевалил за мегабайт и перестал лезть в память старым версиям процессоров. Все платы семейства Revolution сотоварищи имеют тот же самый мегабайт, вот только даже у Ардукоптера последней версии со всеми плюшками в виде OSD и USB MassStorage остается еще 145кб свободного места. 

    Кажется это давно не новость)

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 7 г. назад
    [2017-11-14 07:51:16] m-s писал(а): Может попробовать 512 буфер + 256 запас?

    Тогда уж 512+512, чтоб 2 пакета почти законно и еще один влез насильно. Закончу очередную пепяку - пересоберу.

    [2017-11-14 07:57:18] m-s писал(а): Кажется это давно не новость

    Что именно "это"? Что не лезет или что места еще много?

  • Аватар профиля m--s s s6 пунктов в 7 г. назад
    [2017-11-14 11:02:58] night_ghost писал(а): Что именно "это"? Что не лезет или что места еще много?

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

    И да, пару лет уже даже китайцы с нормальным 2мб процессором продают.

← Форум группы   Все форумы К последней записи
Постов на странице:

Вы автоматически вступите в эту группу, когда ответите в теме.

Добавить ответ:

-
Рейтинг@Mail.ru