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

Serj=

Удалось кому-то подружить датчик тока и напряжения с последними версиями прошивки?
У меня с 2.7R4 и AttoPilot90A такая фигня:


И напряжение не меняется при изменении напряжения на аккумуляторе.

SovGVD
Serj=:

в нем при FS на канале газа надо настроит сигнал в 960 - 970 mS

только прошивку надо соответствующую (проскакивала N страниц назад), где такой вариант FS активирован, т.к. с multiwii вариантом это всё не сработает

kren-DEL
SovGVD:

только прошивку надо соответствующую (проскакивала N страниц назад), где такой вариант FS активирован, т.к. с multiwii вариантом это всё не сработает

Спасибо, буду пробовать на текущей, а потом отпишусь:) Когда эксперементировал вчера - выяснил что включается РТЛ именно при падении сигнала меньше 975, осталось настроить сигнал на фс меньше, чем 975…

Sir_Alex
SovGVD:

только прошивку надо соответствующую (проскакивала N страниц назад), где такой вариант FS активирован, т.к. с multiwii вариантом это всё не сработает

В 2.8 это штатный режим FS. Разумеется для этого нужен приемыш с данной функцией.
FS от мультивии надо немного переделать, что бы при потере сигнала, он начинал выдавать на канале Throttle значение ниже 975

Serj=
Sir_Alex:

что бы при потере сигнала, он начинал выдавать на канале Throttle значение ниже 975

и устанавливал 1500 по всем управляющим каналам, у многих еще тупые приемыши.

Sir_Alex
Serj=:

и устанавливал 1500 по всем управляющим каналам, у многих еще тупые приемыши.

Проблема в том, что у меня уже FrSky…

kren-DEL

Провёл серию испытаний на приёмнике D8R-IIPlus:
срабатывание FS по газу был настроен на 990, затем с помощью кривых газа был поднят сигнал до 1000, т.е. при включённой аппе подаётся сигнал по 3 каналу 1000 при выключенной 986 (так забиндил FS)
Результат:

  1. при отключении аппы включается РТЛ режим, канал 3 выдаёт 986
  2. при включении аппы (появляется сигнал) РТЛ режим продолжает работать, но режим остаётся РТЛ, ессно коптер несётся домой
  3. для переключения в управляемый режим достаточно переключить коптер на любой другой режим и он устанавливается (например стаб)
  4. при отключении аппы, когда коптер заармирован он улетает согласно п.1

Пы.сы.
Обнаружил тоже багу:
при появлении сигнала если поставить газ на 0(в самый низ), то независимо оттого, что работает РТЛ все двигатели отключаются 😦, но стоит чуть двинуть стик - всё нормально начинает работать…
это всё проведено виртуально 😃 на компе по показаниям сенсоров

Serj=
Sir_Alex:

Проблема в том, что у меня уже FrSky…

Глеб сделал эту фишку.
У меня работает.
Только нашелся один баг в FS без GPS.

kren-DEL:

затем с помощью кривых газа был поднят сигнал до 1000

Проще оттримировать газ вниз, установить FS и вернуть газ обратно.

kren-DEL
Serj=:

Проще оттримировать газ вниз, установить FS и вернуть газ обратно.

завтра попробую 😃 спсибо

Sir_Alex
Serj=:

Глеб сделал эту фишку.

Что то вылетело из головы. 😒

Так может тогда проще сделать так:

uint16_t APM_RC_PIRATES::InputCh(uint8_t ch)
{
  uint16_t result;
  uint16_t result2;

  result=readRawRC(ch);

  // Limit values to a valid range
  if(failsafeCnt >= 20 && ch==2) {
result=950;
 }
 result = constrain(result,MIN_PULSEWIDTH,MAX_PULSEWIDTH);
  radio_status=1; // Radio channel read
  return(result);
}

В этом случае будет врубаться штатный FS, по каналу Throttle…

SovGVD
Sir_Alex:

В этом случае будет врубаться штатный FS, по каналу Throttle…

угу, НО НАДО на 0 1 3 каналах 1500 ставить - иначе коптер будет эти стики “слушать” и отлетать от нужной точки

upd: а constrain(result,MIN_PULSEWIDTH,MAX_PULSEWIDTH); не зарежут 950?

как то вот так

uint16_t APM_RC_PIRATES::InputCh(uint8_t ch)
{
  uint16_t result;
  uint16_t result2;
  	result=readRawRC(ch);

  result = constrain(result,MIN_PULSEWIDTH,MAX_PULSEWIDTH);
  if(failsafeCnt >= 20 && ch!=2 && ch<=3) {
	result=1500;
  } else if(failsafeCnt >= 20 && ch==2) {
	result=950;
  }
  radio_status=1; // Radio channel read
  return(result);
}

тут и резаться ничего не будет и FS штатный будет работать (для turnigy 9x)

Sir_Alex
SovGVD:

upd: а constrain(result,MIN_PULSEWIDTH,MAX_PULSEWIDTH); не зарежут 950?

#define MIN_PULSEWIDTH 900

SovGVD:

угу, НО НАДО на 0 1 3 каналах 1500 ставить - иначе коптер будет эти стики “слушать” и отлетать от нужной точки

Странно, разве на RTL влияют стики?

SovGVD
Sir_Alex:

Странно, разве на RTL влияют стики?

не знаю, но кто-то писал что при отваливании пульта (FS) стики зависают и коптер летит непонятно как, к тому же там не только RTL может быть, а еще LAND

Sir_Alex

У меня всё руки не доходят до просто полетать (уже пол года не взлетал), не говоря уже о авторежимах… так что не знаю, как влияют стики на них 😃

kren-DEL
Serj=:

Влияет, при RTL коптером можно управлять

мдя, а я то думаю, отчего при подаче полного газа на приёмыш и отключении пульта моторы не сбрасывают обороты… жесть конечно, получается если на полной скорости залететь за препятствие то коптер автоматом переключится на РТЛ и на той-же скорости будет “пилить” домой?
Короче, надо провести будет полевые испытания…

DVE

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

Если есть опасение что влетит куда-нибудь - можно настроить высоту, на которой будет осуществляться RTH, поставить например 50м.

DVE

Да, дерево 50м еще поискать надо, а секвойи у нас не растут 😃