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

limon_spb

Может быть кто-то[Сэр Алекс? 😃] сможет подсказать мне по коду Пирата?

Залез здесь немного в библиотеки, стало интересно, какая фильтрация применяется… Наткнулся на github.com/MegaPirateNG/…/AP_LeadFilter

Согласно описанию эта либа удялет задержку GPS

1ый непонятный момент: зачем в AP_LeadFilter.h строка

#include <AP_LeadFilter.h>

В С++ уже давно, но иногда чувствую себя новичком 😃

2ой Непонятный для меня момент.
задача, как я её понял:
Дана позиция(pos), известно время между измерениями(lag_in_seconds), известна скорость на предыдущем такте(_last_velocity), известна скорость на этом такте(vel). Нужно спрогнозировать позицию в следующем такте.
Как решается там:

int32_t
AP_LeadFilter::get_position(int32_t pos, int16_t vel, float lag_in_seconds)
{
    // assumes a 1 second delay in the GPS
    int16_t accel_contribution = (vel - _last_velocity) * lag_in_seconds * lag_in_seconds;
    int16_t vel_contribution = vel * lag_in_seconds;

    // store velocity for next iteration
    _last_velocity = vel;

    return pos + vel_contribution + accel_contribution;
}

Здесь, как я понял, предполагается, что движение равноускорено, т.е. из школьных воспоминаний
S = So + Vo * t + a * t*t/2;

Т.е. получается, что accel_contribution должно вычисляться по формуле (если не сокращать ничего):

int16_t accel_contribution = (vel - _last_velocity) / lag_in_seconds * lag_in_seconds * lag_in_seconds / 2.0;

где
(vel - _last_velocity) / lag_in_seconds - это вычисленное ускорение.
lag_in_seconds * lag_in_seconds / 2.0 - время в квадрате пополам.
Ну а в реальном коде это немного не так… Стало очень интересно, в чем дело 😃😃

limon_spb
limon_spb:

Стало очень интересно, в чем дело

Вопрос снимается - оказывается эта библиотечка нигде не используется и даже вроде выпилена из APM коптера.

RTemka

Вопрос не совсем по теме.
Как подключены датчики в AMP 2.5.
SPI или i2c ?

SovGVD
blind_oracle:

i2c

гугл вот такую цитату дал “The IMU board is busy communicating with the processor board on the SPI bus”

blind_oracle
SovGVD:

угл вот такую цитату дал “The IMU board is busy communicating with the processor board on the SPI bus”

Это про PX4 наверное, там две платы, хотя могу ошибаться.
Ошибаюсь, это APM1 судя по всему, двуслойный.

А вообще баро вроде как тоже по SPI подключен, я думал там всё i2c.

/*
        APM_MS5611.cpp - Arduino Library for MS5611-01BA01 absolute pressure sensor
        Code by Jose Julio, Pat Hickey and Jordi Muñoz. 

        This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.

        Sensor is conected to standard SPI port
2fast2real

Кто нибудь знает аналоги 3др модемов, милливатт так на 300-500, хочется увеличить дистанцию телеметрии.

blind_oracle
2fast2real:

Кто нибудь знает аналоги 3др модемов, милливатт так на 300-500, хочется увеличить дистанцию телеметрии.

Можно попробовать Digi XBee, с хорошими антеннами обещают до 28 миль на открытой местности.
www.digi.com/products/…/xbee-pro-900hp

У меня есть модули послабее (брал на ебае) - довольно интересные штуки, можно делать mesh-сеть и т.п.

Но для нужд коптера можно просто взять две и завязать в бридж и будет как 3DR. В качестве бонуса для параноиков умеет шифровать траффик в AES.

2fast2real

Жаль у них 433 МГц нету, у меня видео везде на 900 МГц

blind_oracle
2fast2real:

Жаль у них 433 МГц нету, у меня видео везде на 900 МГц

Есть 868Мгц до 80км радиусом: www.digi.com/products/…/xbee-pro-868

Не шибко частота сдвинута от 900, но и то хлеб 😃

2fast2real

Блин нету модемов нормальных, то частота не та то скорость слишком медленная, а так на али их полно, но все до 19200 😦

blind_oracle

ИМХО и 19200 вполне неплохо, ты же не видео передаешь 😃

RTemka

Народ после последнего обновления планнера у всех проблема коннекта пропала ?
Или случайное совпадение.

obion
egor-mav:

Но все равно не реагирует на стики…

Разобрался с проблемой?
У меня похоже такая же проблема случилась после того как турниговский приёмник поменял на FrSKY D8R-II Plus.

Приёмник в обычном PWM режиме подключен, в RCInput_MPNG.cpp установлен SERIAL_PPM_DISABLED.
В Mission Planner не реагирует на стики.
Если для теста подключать сервы напрямую в приёмник, то всё работает.

Может кто-то сталкивался?
Пока нету возможности перешить приёмник в CPPM.

nikr
RTemka:

Народ после последнего обновления планнера у всех проблема коннекта пропала ?
Или случайное совпадение.

Ага, на последнем планере коннектится нормально.

obion
obion:

Разобрался с проблемой?
У меня похоже такая же проблема случилась после того как турниговский приёмник поменял на FrSKY D8R-II Plus.

Приёмник в обычном PWM режиме подключен, в RCInput_MPNG.cpp установлен SERIAL_PPM_DISABLED.
В Mission Planner не реагирует на стики.
Если для теста подключать сервы напрямую в приёмник, то всё работает.

Может кто-то сталкивался?
Пока нету возможности перешить приёмник в CPPM.

Дело было не в бобине, коротил иногда питанием на input пины.

2fast2real

наклоняю самуль в любую сторону и задержу его там на пару секунд, то когда возвращаю его в горизонт гироскопы медленно доплывают до горизонта и сервы за ним следом так же медленно доходят до уровня, работает с большой задержкой, т.е. самуль уже в горизонте а элевоны через секунд 10 только доходят до горизонта, кто знает в чем причина? Вортекс и последний пират.

Sir_Alex
2fast2real:

наклоняю самуль в любую сторону и задержу его там на пару секунд, то когда возвращаю его в горизонт гироскопы медленно доплывают до горизонта и сервы за ним следом так же медленно доходят до уровня, работает с большой задержкой, т.е. самуль уже в горизонте а элевоны через секунд 10 только доходят до горизонта, кто знает в чем причина? Вортекс и последний пират.

Выглядит так, как будто гира не работает. Посмотрите показания qx,qy,qz на закладке Status. Меняются ли там цифры при наклонах (если коптер не трогать, там должны быть нули)

2fast2real

Это крыло, не теряйтесь я щас до гаража доеду и гляну, минут 20 и я отвечу

Посмотрел, меняются

через полчаса будет видео…

hudognik

Извиняюсь , если вопрос повторяется… подскажите пожалуста , кто использует minimosd extra , с мегапиратом , как вывести вольтаж без датчика тока? осдшку прошил , всё показывает , но мигают алармы что батарея пустая , низкое рсси , и нет жпс фикса (ну про фикс на подоконнике понятно) . вольтаж показывает 10 вольт , хотя батарея свежезаряженая подключена. плата питается от отдельного бека , перемычка снята . короче делал всё как в этом туторе

. заранее спасибо.