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

  • Аватар профиля An_private An_private в 8 г., 9 мес. назад

    Да, что-то я туплю не по детски. Так привык, что раз OSD, то atmega8 - уже и забыл, что на таких платах max7456 программируется прямо с основного проца... :roll:

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    Ага заметно :mrgreen:  ОСД содержит Мегу328, мега8 была в регулях

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    небольшое обновление

    • поймана бага из мейнстрима, иногда приводившая к HardFault при старте
    • Наконец-то удалось добиться работы праметров HAL - теперь расположением моторов и назначением пинов можно будет управлять без пересборки!
    • Оптимизирована обработка MAVlink - теперь не через вызов delay_cb а параллельным процессом

    Бинарники будут после тестирования.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад
    • Добавлена поддержка серв на неиспользуемых пинах InputPort. Инициализация при первом использовании, так что если пин прописан лишь единожды то никаких конфликтов
    • доработана обработка исключений до уровня, когда по радиомодему приходит человечьим языком сообщение об исключении - где, почему и как

    также протестировано изменение обработки МавЛинк - параметры по USB сейчас загружаются/сохраняются в разы быстрее.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    добавлена обработка битов ошибок регистра FASH_SR, включая автоматический сброс защиты записи

    UPD. Выложены бинарники

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    Исправлена обработка прерывания TX UART для только RX случая.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    Исправлена эмуляция EEPROM - добавлена обработка всех ошибок

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    "перечитывл пейджер, много размышлял" (С) Посмотрел код dfu-util, обнаружил что там таки есть поддержка нестандартных фич STM32, просто они вообще не документированы - из принципа. И сделано они слегка через задницу, так что строка записи с разлочкой чипа выглядеть должна как-то так:

    dfu-util -a 0 --dfuse-address 0x08000000:unprotect:force -D файло.bin

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    Исправлен баг с апстрима, препятствующий разделение функций вывода как серво и что-либо еще

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 9 мес. назад

    Сервы на InputPort работают!

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Подключение приёмника по S-Bus поддерживается? Что-то цепляю R9DS по S-Bus на пин S-BUS/PPM и не вижу никакой реакции. Или надо где-то в настройках выбирать S-BUS?

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Поддерживается, автодетектится на обоих PPM входах. Проверял, работало. 

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Хм. Странно тогда. Инвертер нужен? Или автоматом полярность?

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Попробовал через инвертер. Те же, хм. Ну, вы поняли. У меня Revo F4, подаю сигнал на контакт, помеченный SBUS/PPM. Вроде тут промахнуться сложно.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Полярность автоматом - там чистА программный разбор.  

    [2017-03-15 09:41:42] anprivate писал(а): подаю сигнал на контакт, помеченный SBUS/PPM

    Я не видел на Рево такой надписи, подавать надо на InputPort ноги 3 или 4 (1 и 2  это земля и питание), они же PWM 1 & 2

    PS  Версия какая? И какой приемник?

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    У меня такой.

    http://www.banggood.com/Raceflight-Betaflight-CC3D-REVO-F4-STM32F405-Flight-Controller-with-VbatBuzzer-p-1087561.html?p=0609202427422013084W

    Там есть SBUS/PPM в одном ряду с выходными разъемами.

    Версия.. Хм... Не помню :) В MP рапортует так:

    RevoMini 00390056 30365110 36373239
    Frame: QUAD
    APM:Copter V3.5-dev

    Сейчас попробую обновиться на последнюю.

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Прошил последнюю. То же самое.

    Сразу после включения показывает Ch3in - 900, остальные 1000.

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

    Приёмник Radiolink R9D, без проблем работает с APM.

    Могу снять логи - что идёт на выходе SBUS.

     

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад
    [2017-03-15 12:19:02] anprivate писал(а): У меня такой.

    Ааа. Это нифига не Revo а вовсе Аирбот, на нем SBUS не проверялся. Там есть какая-то заморочка с этим входом, он запараллелен с УАРТ1 ЕМНИМС. Посмотрю.

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Запутался я в этой системе обозначений :) вроде всё revo, но вот что к чему относится... :)

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Китайцы... раскрученное название, вот и тырят.  Контроллер имеет серьезные отличия в разноговке, оттого и вынесен в отдельную ветку. Таргет Рево - это исключетельно 2 платы: классическая OpenPilot Revolution и её уменьшенная версия RevoMini, отличающаяся чуть более простой схемотехникой и отсутствием RFMки.

    Кстати, большой Revolution это единственный (из попадавшихся мне) контроллер на STM32, не засоряющий эфир радиопомехами.

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад
    [2017-03-15 12:19:02] anprivate писал(а): В MP рапортует так

    Хм, действительно нехорошо как-то, это номер проца и версия ардупилота. Придется добавить дату сборки, дабы понятно было

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Дата сборки будет в новых версиях, насчет PPM/SBUS накопал следующий кусок схемы.

    то есть подключен или нет вход PPM зависит от наличия резисторов на плате, причем инвертер там уже есть (транзистор).  На плате есть пятаки Ch1 и Ch2 - для начала можно попробовать подать на них 

    PS. СтОит добавить поддержку SBUS через UART1?

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Любопытно. Это кто-то схему снимал или это "официальная" схема? А каким портам/ногам процессора соответствуют поименованные входы? Чтобы проще прозванивать было. А целиком схемы нету?

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    (шепотом) У Алексея Козина есть :)

    RC_CH1  это PB8, нога 61. А SBUS_IN это вход инвертера на транзисторе, коллектор которого подтянут 10к на + и подключен к PA10 нога 43 - UART1_RX

    В то время как на Рево Входы Ch1 и Ch2 это ноги PB14 и PB15, оттого и не летает :)  Сейчас переделаю

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    Ага. Ясно :) Резисторы там есть, инвертер тоже. Так что можно как использовать софтовый UART на PB8, так и хардверный на UART1_RX. Буду ждать новую версию :)

    А то хотел с новым R12DS поэкспериментировать и выяснил, что у меня нет ничего, понимающего 16-ти канальный S-BUS :) Лепить декодер на ардуинке как-то неохота пока...

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Софтовый он не совсем софтовый - там на таймере ловятся изменения состояния ноги для всех протоколов, так что надежность декодирования не страдает от прерываний. А потом уже софт разбирается, на что похожи отловленные импульсы - на PPM, DSM или SBUS. И если получает валидный кадр то "защелкивается" на этом протоколе.

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

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад
    [2017-03-16 07:52:05] night_ghost писал(а): там на таймере ловятся изменения состояния ноги для всех протоколов

    Ну ясное дело, что input capture используется :) Всё равно это считается софтово.

    [2017-03-16 07:52:05] night_ghost писал(а): Поменял ноги, назначил таймеры, пустил на сборку. Минут через 20 можно будет пробовать.

    Класс, очень жду :)

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад
    [2017-03-16 07:56:11] anprivate писал(а): Всё равно это считается софтово.

    Ну эт если декодить в прерывании как всякие Клинфлаи СофтУАРТ делают, отчего он у них выше 19200 нормально не работает :) А тут 115200 вполне работает.

    Бинарники готовы, но я их пока не тестировал - пока подключен другой контроллер.

  • Аватар профиля An_private An_private в 8 г., 8 мес. назад

    А можно куда-нибудь положить бинарник? Я бы пока посмотрел - работает ли

     

  • Аватар профиля Night_Ghost Night_Ghost287 пунктов в 8 г., 8 мес. назад

    Как обычно - на Гитхабе в архиве

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

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

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

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