Вопросы по iNav

rc468
EHOT:

если надо поенять - поднимает ли борт термичкой ли мотором

А вот зачем это понимать? Задача в приципе какая стоит - чтобы борт не поднимался? Для этого используется тяга моторов? Снижение тяги приводит к прекращению подъема? Тогда какая разница, чем он поднимается?

EHOT

Задача конкретная - иметь возможность выполнить скрипт под текущие нужды без модификации прошивки тчк

rc468

Про задачу понятно 😃 вопрос отдельный

schs
rc468:

Вот например коптер увеличивает высоту

Для коптера парения в термиках нет, насколько мне известно.

rc468:

Контроллеру все равно, там термик или не термик, правильно?

обрабатываюся многие параметры. Можете почитать в документации подробнее.
ardupilot.org/plane/docs/soaring.html

rc468
schs:

обрабатываюся многие параметры. Можете почитать в документации подробнее.

подробнее там, если в итоге, то срабатывает тупо по параметрам высоты.
ну вот реально тупо - SOAR_ALT_MIN, SOAR_ALT_MAX и SOAR_ALT_CUTOFF.
вот и вопрос - зачем тогда все остальное.
высота падает - включаем тягу
высота растет - выключаем тягу
по какой причине растет или падает высота - какая разница?

shakalby

подскажите как добавить пресеты по этой ссылке? есть статья ?
Rate Dynamics где найти такой пункт?
команды писать в CLI консоле?

Koloboff

Ссылка на эмуфлайт. При чем здесь айнав?

shakalby

github.com/iNavFlight/inav/releases листайте в низ до Оценить динамику
Релизы кто ни будь читает изменения)))?

летал на новой прошивке 7 дюймовый, на 4 айнаве последнем, при подлете к дому, точнее к стене дрон тянет в стену. раньше такого не было( тоесть он сильно гуляет по навигации режиму на метр - два его носит медленно. Что то они там намудрили с нави режимами

kasatka60

Собирай логи и пиши разрабам, пусть правят.

shakalby

кто ни будь ставил сонар или датчик лидара???
как они работают на препятствие ???

EHOT

я лазерный определитель дальности получу сегодня, пробовать буду

R0K

Использую попроше VL53L0X на своём экранопланчике.Над водой утромболее или менее, когда солнце, то проблемы. Вот американец использует

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

shakalby

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

SadSoldier
EHOT:
  • Есть ли реализация iNav для Linux или другой ОС (ОСРВ)?

Нет. Inav/Betafligth это однопоточная встраиваемая программа для SMT32. Embedded bare application.

EHOT:
  • сть ли возможность выполнить какой либо скрипт - Lua, Basic, Python… Типа как Lua в OpenTx?

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

EHOT:
  • Или свернуть шею к Ардупилот +NAVIO 2 ?

Можно просто сразу свернуть шею своему самолету. Скоротать путь до креша.

EHOT:
  • Например отключить мотор самолета, если и так поднимает термичкой.

Если все так просто, то и доработайте. Код Inav тут, в свободном доступе github.com/iNavFlight/inav Мне даже интересно, как при имеющейся сенсорике (бортовые вольметр, амперметр, датчики линейного и углового ускорений, координат, давления) определить “если и так поднимает термикой”.

Предполагаю, необходим интеллектуальный датчик термики.

Koloboff
SadSoldier:

Встраивать интерпретатор кода в однопоточную летную программу, работающую на голом железе, это что-то из разряда “безумие и отвага”.

Расскажите это ардупилоту 😄

SadSoldier
Koloboff:

Расскажите это ардупилоту

Ardupilot построен на базе ChibiOS

ChibiOS/RT — компактная многозадачная операционная система реального времени (ОСРВ) для встроенных систем. Данная ОСРВ характеризуется высокой мобильностью, маленьким объёмом и, в основном, по своей архитектуре оптимизирована для чрезвычайно эффективного переключения между задачами.

В ней множество потоков исполнения, переключаемых планировщиком потоков-заданий

    xTaskCreate(_timer_thread, "APM_TIMER", TIMER_SS, this, TIMER_PRIO, &_timer_task_handle);
    xTaskCreate(_rcout_thread, "APM_RCOUT", RCOUT_SS, this, RCOUT_PRIO, &_rcout_task_handle);
    xTaskCreate(_rcin_thread, "APM_RCIN", RCIN_SS, this, RCIN_PRIO, &_rcin_task_handle);
    xTaskCreate(_uart_thread, "APM_UART", UART_SS, this, UART_PRIO, &_uart_task_handle);
    xTaskCreate(_io_thread, "APM_IO", IO_SS, this, IO_PRIO, &_io_task_handle);
    xTaskCreate(_storage_thread, "APM_STORAGE", STORAGE_SS, this, STORAGE_PRIO, &_storage_task_handle); //no actual flash writes without this, storage kinda appears to work, but does an erase on every boot and params don't persist over reset etc.

Если встанет поток с интерпретатором скрипта, то у зарработчика системы есть возможность хотя бы просто не планировать интерпретатор к исполнению. Хотя сам интерпретатор это тоже прекрасная возможность выстрелить в ногу.

Inav/Betaflight/Emuflight и прочие наследники Cleanflight это однониточная программы. Один поток команд в цикле. Если что-то заблокирует этот поток, даже будет придерживать этот поток на несколько циклов обработки данных с сенсоров, то летная система в общем случае итого рухнет в последнем состоянии. Что, кстати, иногда и происходит, по разным причинам.

PS

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

kasatka60
SadSoldier:

Ardupilot построен на базе ChibiOS

Смотря на каком полетнике.

SadSoldier
kasatka60:

Смотря на каком полетнике.

Причем здесь полетники, если дело в реализации используемой RTOS? =) Понимаю, вам трудно ориентироватся в исходном коде.

Интерграция ChibiOS была начата 2018 году.

$ git log ardupilot/modules/ChibiOS/

commit 6d8d8630bc4afb6106938713c56320b4a3abd3ad
Author: bugobliterator <siddharthbharatpurohit@gmail.com>
Date:   Sat Jan 13 04:23:06 2018 +0530

    modules: update ChibiOS

commit b8e246f347482517042d61bf00646b242c4e5527
Author: Andrew Tridgell <andrew@tridgell.net>
Date:   Fri Jan 5 17:50:07 2018 +1100

    added ChibiOS submodule

До релизов 4.x и до сих пор в ветке 3.x используется своя реализация многопоточной операционной системы. К примеру, вы можете увидеть список планируемых заданий для версии 3.8.x github.com/ArduPilot/ardupilot/…/ArduCopter.cpp#L8…

То есть, если поднять историю, то Arducopter строился как много-ниточная система. В отличие от наследников Cleanflight, которые были и отстаются однопотоковыми встраиваемыми программами.

Kirill-G

С новым годом всех!!! Счастья, здоровья, чистого неба и мягких посадок!!!