Создание собственной системы стабилизации

soliada
oleg70:

Я бы сначала определился относительно софта, предполагаемого для использования - готовый чужой с адаптацией, или свой…, при втором варианте все зависит от вашей фантазии, а при первом желательно максимально придерживаться оригинала (во избежание лишних “телодвижений” с кодом)…

Ну собственно Софт Сергея,как и его схема,т.е по сути клон Ф4БУ,только в другом форм факторе.Хочется в самолет,а туда “квадратный ежик”))) как то не очень хорошо помещается,плюс хочется заменить кое какие комплектующие.

SergDoc:

Бегло глянул…Да,век живи,век учись…

oleg70
soliada:

Хочется в самолет,

А если в самолет то ставьте проц. и MPU6000 c “баро” , и за вибрации особо не переживайте - нихчего с вашей платой не случится… ну а если “морковка” , то и бильярдный шар сломать можно 😃.

soliada:

Ну собственно Софт Сергея,как и его схема,т.е по сути клон Ф4БУ

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

SergDoc
soliada:

Ну собственно Софт Сергея

Вот так вот и не надо - это арду 😃 и большинство правок в коде принадлежит rual 😃

soliada
SergDoc:

Вот так вот и не надо - это арду и большинство правок в коде принадлежит rual

Главное кто идейный вдохновитель)))

oleg70:

Ды не мучайтесь Вы, возьмите уж тогда у Сергея и плату, уж нитакая она и большая, лучше вряд ли выйдет…

Да у Сергея нет свободных,все равно придется делать десяток,плюс хочется меньше размером,чтоб не извращаться с размещением,плюс присутствуют детали в не очень удобных корпусах,плюс… Мне проще нарисовать под те детали,что есть у меня,один фиг валяются без дела.

SergDoc
soliada:

Главное кто идейный вдохновитель)))

Sir Alex ))))) это ему арду на Ф4 хотелось 😃))) я вообще вием промышлял )))

Да кстати Алексей (Sir Alex) ты где пропал? я тут всю голову себе об АЦП сломал, а rual говорит - лошадью ходи 😃)))

Sir_Alex
SergDoc:

Да кстати Алексей (Sir Alex) ты где пропал?

Да блин, навалилось всего и всякого, не до хобби сейчас… можен к концу недели разгребусь и смогу что нить делать под F4BY.

SergDoc

откуда эти дурацкие пины беруться 100 - 101 и т.п. ?

strizhmax
SergDoc:

откуда эти дурацкие пины беруться 100 - 101 и т.п. ?

Запушил бы в бранч какой-нибудь, — посмотреть что предпринято и что не получается.

oleg70

Идея передавать GPS через Si4431 c борта на наземную станцию провалилась…(😦)… При включении передачи на плате видимо идут зверские наводки, даже залить в STM прошивку не получается пока антенну не “заземлишь”…(!)

strizhmax
SergDoc:

откуда эти дурацкие пины беруться 100 - 101 и т.п. ?

Корпус 100-ногий?

SergDoc

Там засада - виртуальные порты - как они получаются и работают ли вообще - х.з. т.е. шимы, светодиоды, пищалка построены по тому же принципу(им присвоены также виртуальные порты которые беруться из файловых устройств NuttX, но они работают, а эта зараза (АЦП) ни в какую - в NuttX я вижу порты - их значения, а Арду их не воспринимает так как я хочу… он тупо хочет виртуальный пор под номером 100 который соответствует 10-му порду АЦП в STM, а больше ничего признавать не хочет 😦 я сегодня в него не лезу - расслабляюсь 😃

strizhmax

Ты какой-то код а арду дописывал? Или тот же контроль за батарейкой?

SergDoc

Арду кроме HAL_PX4 в неприкосновенности 😃 в гит по моим коммитам видно, что я делал…
кстати так и не понял - делал тестовый бранч - он так в гит и отобразился? хотя толкнулся туда…

strizhmax

2 SergDoc
Я кажись разобрался, но у меня нет железа для проверки!
Ты в итоге какую прошивку в P4BY льешь PX4_V1 или PX4_V2?
Какой у тебя проц (STM32F40XYZ)? К какой ноге проца подключена батарейка?

SergDoc

F407VGT6 прошивка версии V1, далее выяснил что за 16 канал АЦП - датчик температуры проца, по простому - имеем абстрактную железку - Арду - этакий чёрный ящик с кучей штырьков вот 100 - штырёк этой (абстрактной) железяки нужно прицепить не к 10 входу АЦП PX4 (PC0), а к 13-му(PC3) и пока непонятно как… а “проводок” который связывает эти две “абстрактные” железяки где-то тут github.com/SergDoc/ardupilot/blob/…/AnalogIn.cpp или же в PX4Firmware я не всё переделал тут я вход с батарейки поменял (в гит пока не сливал)…

strizhmax

Все, теперь все встало на места.

Смотрю я в схему New_Multirotor_CPU_imu_V1.3.pdf и вижу что батарея подключена к PC4 (вывод 33). В этом случае правок все же побольше.

Но если батарея подлючена к PC3 (вывод 18), то:

  1. Заменяем
    # define AP_BATT_VOLT_PIN 13

  2. Тут непонятно. По схеме R21=10K, R22=1K, тогда делитель будет 11 к 1.

{ 13, (5.7*3.3)/4096 }, // FMU battery on multi-connector pin 5,

  1. Не трогаем, нет у нас виртуальности.
    #define PX4_ANALOG_ORB_BATTERY_VOLTAGE_PIN 103

  2. В файле ardupilot\libraries\AP_HAL_PX4\AnalogIn.cpp в методе PX4AnalogIn::init

удаляем

  • _battery_handle = orb_subscribe(ORB_ID(battery_status));
    заменяем на
  • _battery_handle = -1;

Без железа проверить трудно, но в голове все заработало.

rual
strizhmax:

Все, теперь все встало на места.

strizhmax:
  1. Заменяем
    # define AP_BATT_VOLT_PIN 13

Это в каком файле?

strizhmax:
  1. Не трогаем, нет у нас виртуальности.
    #define PX4_ANALOG_ORB_BATTERY_VOLTAGE_PIN 103

Поясни, что за “виртуальность”, для чего нужна и почему её нет?

strizhmax:
  1. В файле ardupilot\libraries\AP_HAL_PX4\AnalogIn.cpp в методе PX4AnalogIn::init

удаляем

  • _battery_handle = orb_subscribe(ORB_ID(battery_status));
    заменяем на
  • _battery_handle = -1;

Это как работает?

Уффф… Наконец доделал первую F4BY, на стапелях ещё пара, осталось впаять датчики )

mahowik:

6 мая начнется курс

Классно, но я английским сильно не владею… Хотя обязательно посмотрю, может что новое увижу…

strizhmax
rual:

Это в каком файле?

ardupilot/libraries/AP_BattMonitor/AP_BattMonitor.h

rual:

Поясни, что за “виртуальность”, для чего нужна и почему её нет?

Дело в том, что в PX4v1 данные для батареи брались не с самой платы, а с PX4IO. Поэтому они и ввели виртуальный порт.

rual:

Это как работает?

Скорее как это работалО. Мы это выключили. Если интересно, то копать в сторону uORB.

P.S. Думал куплю раму, мотор, ESC и мозг. Соберу и полечу, и в код ни за что не полезу.
Еще за пределами квартиры ни разу не взлетнул, а в код залез по самые уши.