Inspire-подобная рама своими руками с нуля

ssilk

Называется это выкос. Обычно делается внутрь, считается, что расходящиеся потоки воздуха добавляют стабильности. Но, это вопрос научных изысканий. А вот чего есть точно, так это меньший угол наклона для достижения той же горизонтальной скорости, что и в “классической” конструкции. А вот для чего инженеры DJI сделали выкос наружу, единого мнения нет, во всяком случае я не помню.

Slevin757

Сходил испытал. Амплитуда вибрации моторов заметно уменьшилась, но не исчезла. В нижнем и среднем положении лучей ее нет - не понимаю почему появляется в верхнем. И почему на вчерашних испытаниях ее не было. Буду думать.

Slevin757

“Понедельник легким не бывает”
Вчера вечером вынес GPS на стойку. Провода не перепаивал - сделал удлинитель из родного провода и прозвонил.
С утра решил по быстрому выйти проверить. Потом случился неожиданный сюрприз - взлет произошел хуже чем при ручном режиме. При том что индикатор показал обнаружение спутников, коптер не держал ни точку ни высоту и сильно кренился в сторону и вперед. Но эта проблема продолжалась не долго - ровно до первого дерева. Попытки его удержать кажется только усугубили ситуацию. В общем брякнулся и сложился в кучку.
Как следствие, два сломанных шарнира (один плечевой и один Т-образный). Собственно они наследовались еще из примерочного прототипа, были сделаны порошковой 3D-печатью и то что они дожили до сего дня Уже подвиг. И из жизни ушли героически - будучи самым хрупким звеном, сработали как предохранители и уберегли от поломок остальные детали. Даже пропеллеры уцелели. Электронику подключил, проверил, работает.

Art_Nesterov

Сергей. что то вы сделали не так… Я подозреваю, что не нужно было взлетать в ЖПС режиме. Все автоматические режимы, нужно летать, когда есть уверенность, что оно работает правильно. “Правильно” - правильная ориентация компаса + калибровка, отсутствие наводок на компас. Пробовать это можно после хорошей настройки пидов ( гейнов в назе). И всегда нужно быть готовым перейти на ручное управление.

Slevin757
Art_Nesterov:

когда есть уверенность, что оно работает правильно

Артем, а увод в сторону (в неавтоматическом режиме) говорит о каких-то изъянах в геометрии корпуса, или об ошибках настройки электроники? Уместно ли подправить этот увод тримерами на аппаратуре? или так дела не делаются и надо искать физическую причину?

Хотя конечно я ещё моторы на стенде не испытал. Но все же интересно, можно триммерами пользоваться или не стоит.

Art_Nesterov

Триммеры на аппаратуре трогать не нужно, все должно быть в “0”. Настраивается только в полетном контроллере.
На счет увода в сторону, может быть несколько причин - геометрия, криво стоит аксель (чуть не ровно закреплен полетный контроллер), ветер. На самом деле, коптер без удержания позиции по ЖПС не обязан висеть в точке. По любой из выше упомянутых причин или сумме причин, он может немного дрейфовать.
Хорошо, когда все точно. Но при первых взлетах , нужно быть готовым любым фокусам.

ssilk
Slevin757:

можно триммерами пользоваться или не стоит

Нельзя. При триммировании изменятся и конечные точки. Можно, конечно, и их подправить, но это совсем уж колхоз…
Если есть серьезный дрейф куда нибудь в режиме ATTI то это явно с геометрией что то не так. При неправильных гейнах коптер бы дергало на небольшие расстояния в разные стороны…
Есть вероятность, что лучи неодинаково поднимаются, отсюда перекос ВМГ… Регулировки длины тяг не просто так придумали(в самолетах и вертолетах), промерьте…
Чтобы исключить влияние электроники, нужно:
Окалибровать стики в самой аппе.
Проверить соответствие центров стиков и ползунков в ассистенте.
Откалибровать стики в ассистенте, если нужно.
Проверить установку контроллера, плотность прилегания, люфты и так далее… Может быть какой то провод натягивается и приподнимает контроллер.
Перекалибровать контроллер, предварительно установив плоскость вращения пропов в горизонталь. Калибровать по схеме Basic - Advanced - Basic. Можно даже сделать сначала сброс параметров. Только запишите настройки на всякий случай.
Если с механикой все нормально - переходите к настройке гейнов, назначьте регулировки на крутилки, бейсик на одну, аттитьюд на другую. Сначала настраивайте бейсик, чтобы даже звук моторов был тихим и одинаковым. Потом аттитьюд - после отклонения и возврата стика коптер должен выравниваться одним плавным четким движением, без раскачек…
Потом можно переназначить крутилки на вертикал и яв. Вертикал - если коптер медленно болтается по высоте на большое расстояние - недостаточные значения гейна, если резко скачет сантиметров на 10 - слишком высокие… С явом сложнее всего, его гейны зависят от первых двух, чуть неверно настроен один из них и яв настроить невозможно…
Ну вот после этого всего можно подключать модуль ЖПС/компас, калибровать и так далее.
Да, самое главное, взлетать сразу после подключения батарейки нельзя, надо подождать минуты 2-3 ПОСЛЕ отлова спутников и отмаргивания записи домашней точки. Отмаргиваний может быть два, одно домашняя точка, второе - курс, это если включены курс/хоум лок.

Slevin757
ssilk:

Чтобы исключить влияние электроники, нужно:

Сергей, благодарю за подробнейший инструктаж! Буду делать по пунктам.
Обнаружил, что стол на котором я делал калибровки не идеален по горизонту. Еще одно слабое звено вскрылось)

Оценив повреждения еще раз, решил, что они не критичные и тюбик “космофена” вернул сломанные шарниры к жизни. С виду и не скажешь, что была авария, хотя подходя утром к нему казалось, что все в труху. По хорошему надо бы печатаные детали в силикон отлить, но пока извлеку максимум опыта из того что есть.
А потом глядишь дело дойдет до апгрейда до версии 2.0.: отлитые детали, конденсаторы, бегунок с упорными подшипниками, другой аккумулятор, обтекатель и прочее.

Пробное включение показало, что спутники плохо ловились. Находит, сигнализирует зеленым морганием, а через короткое время снова красные проблескивают. Утром я дождался зеленых, расслабился, поставил (индикатором от себя) и начал взлетать. А дальше от неожиданности и зарулил.

zealot01

У меня подобное было когда не дождался инициализации контроллера и переставил коптер:). Горизонт акселем определился неправильно и коптер ушел в бок на старте. Теперь сразу ставлю как надо , если хочу подвинуть перетыкаю питание.

Slevin757

да вот, как говорится, все приходит с опытом…

Воронов
Slevin757:

тюбик “космофена”

Внимательнее с космофеном, - дает хрупкое соединение, может развалиться в воздухе. Для верности я бы подстраховал склеенные детали какими-нибудь стяжками хотя бы…

ssilk

Космофен это просто название, как Момент… А сами клеи разные, в том числе эластичные… На Титан похоже чем то, если понимаете о чем я…)

Slevin757

В данном случае космофен был цианакрилатный.

Воронов:

Внимательнее с космофеном, - дает хрупкое соединение

Конечно средство аварийное, но и сам материал шарниров “не фонтан”.
я стянул одно из мест склейки черной изолентой, но не по всем таким местам это было возможно сделать.

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

Вчера и сегодня занимался настройками. Еще раз спасибо Сергею за развернутые рекомендации.

Перекалибровал Назу, выставив по цифровому уровню.
Перекалибровал стики на аппе и в ассистенте. Некоторые бегунки получили на 2 - 4 пункта в тороне от центра. Поправил тримерами и перекалибровал еще раз.

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

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

yadi.sk/i/J5f8vyQh3a282T

GPS вывел на стойку, но пока эффект не супер впечатляющий. Толи деревья мешают, толи что, но время от времени теряются спутники и коптер начинает плавать.
Хотя тоже странно - обычно одно красное мигание (6 спутников) и мне казалось что это должно быть вполне себе достаточное количество для удержания.

skm
Slevin757:

Толи деревья мешают, толи что, но время от времени теряются спутники и коптер начинает плавать.

А это нормально.
У меня не так давно работа была по съемке здания с инспайра.
Приходилось взлетать из узкого, метров 15-20 диаметром колодца образованного высоким сталинским зданием осаженном густыми тополями.
Внизу при взлете инспайр унитазило метра на два с 9 спутниками, по мере подьема до крыши и выше их добралось до 17, с 11 всякий унитазинг прекратился.

Slevin757:

(6 спутников) и мне казалось что это должно быть вполне себе достаточное количество для удержания.

Нет, это крайне мало, меньше 7 на назе/вуконге лучше вообще не летать чуть далече, ибо мало ли ли какой сбой, и с пяти дрон уже начнет неконтролируемо сдувать ветром.

Slevin757
skm:

Внизу при взлете инспайр унитазило метра на два с 9 спутниками

Да, похожая ситуация. В парке облюбовал полянку между высокими деревьями. С одной стороны там удобно, с другой вот ньюанс вылез.

Slevin757

Заказал для пробы приводной винт Т6 с шагом 12 мм. Хочется ускорить подъем/спуск лучей и интересно потянет ли такой шаг серва.

На случай если потянет, есть желание сделать автоматический режим для шасси, вернувшись к теме с ультразвуковым дальномером и ардуиной. Возможность пользоваться транспортным положением тоже нравится, поэтому его надо сохранить. Для этого думаю сделать небольшую кнопку (с фиксацией) на корпусе, чтобы переводить в транспортное положение после полетов.

Логику работы вижу так:

yadi.sk/i/O5E5oRYu3a42MR

На одном из трехпозиционных тумблеров получатся режимы: “Авто”, ручной “Полет”, ручной “Приземление”

CZC

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

skm
CZC:

а то получится

У инспайра же не “получается”

Кстати у меня сейчас хоть и не инспайр, а мозг даже поумнее будет, но ноги тоже автоматом поднимаются-опускаются самим мозгом.
При этом делают это похоже с помощью двух систем - по баро, и по команде “посадка”. По команде “посадка” ноги опускаются автоматом даже на высоте метров 50
И тоже ноги самопроизвольно никуда не бегают

PS. Кстати когда то брал для колхоза с автоподьемом ног такую вот штучку - goodluckbuy.com/ultrasonic-wave-ranging-module-led…
Работает до 4м, настраиваются пороги. Но не пригодилось

CZC

Я просто проанализировал блок-схему.

Slevin757
CZC:

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

Да, по логике так оно и будет. Но если вариант с новым винтом (шаг 12 мм) сработает, то опускание шасси будет происходить за секунды и я смогу выставить пороговую высоту небольшой, около 1 - 1.5 м. На такой высоте не планирую много летать, а в исключительных случаях можно будет перейти в ручной режим.

Если же на старом винте придется остаться, то метра 2.5. придется поставить. Но опять же в отдельных случаях ручным попользуюсь.

На сколько я понимаю, чтобы вывести на пульт информацию надо будет одним каналом пожертвовать. Жалко) Хотя за идею спасибо, возможно в будущем к ней добавятся еще какие-то показания для передачи.

skm:

Кстати когда то брал для колхоза с автоподьемом ног такую вот штучку

Любопытная штуковина. Разброс цен на них какой-то странный.

Накрапал скетч для ардуины:

#include <Servo.h>

Servo myservo;

int button = 6; // кнопка перевода в транспортное положение
int pin = 2; // вход с приемника
unsigned long duration; // длинна сигнала

unsigned int dist = 1200; // пороговое расстояние до земли

unsigned int HighLen = 0;
unsigned int LowLen = 0;
unsigned int Len_mm = 0;

void setup()
{
myservo.attach(3);

pinMode(5, OUTPUT);
pinMode(button, INPUT);
pinMode(pin, INPUT);
digitalWrite(5, HIGH);
Serial.begin(9600);
}

void loop()

{

if (digitalRead(button) == HIGH) // если кнопка транспортного положения нажата
myservo.write(90); // лучи в среднем положении

duration = pulseIn(pin, HIGH); // считывается длинна сигнала

if (duration > 1800) // если тумблер в нижнем положении
myservo.write(0); // лучи опускаются вниз

if ((duration > 1200) & (duration < 1800)) // если тумблер посередине
myservo.write(180); // лучи поднимаются вверх

if (duration <= 1000) // если тумблер в верхнем положении
// замеряется расстояние до земли:
{
Serial.flush();
Serial.write(0x55);
delay(10);
if (Serial.available() >= 2)
{
HighLen = Serial.read();
LowLen = Serial.read();
Len_mm = HighLen * 256 + LowLen;
Serial.print(Len_mm, DEC);
Serial.println(“mm”);
}

if (Len_mm <= dist) // если расстояние ниже, равно пороговому
myservo.write(0); // лучи лучи опускаются вниз

if (Len_mm > dist) // если расстояние выше порогового
myservo.write(180); // лучи поднимаются вверх
}

}

На счет его работоспособности пока утвердительного мнения нет. Вроди бы все работает (и кнопка и управление с пульта и автомат). Но в транспортном положении серва периодически подергивается, а должна тико стоять.
Ну и в одну сторону крутится ровно, а в другую с дерганьями (то ровно, то дергается, то встанет, то опять раскрутится). Хотя вне схемы крутится как надо.
Затрудняюсь предполагать в чем может быть дело. Для меня ардуиновская тематика, это почти как шаманизм. Заморочился с ней для удобства, но если не получится достичь стабильной работы, то опять откажусь.

rc468
Slevin757:

myservo.write(0); // лучи опускаются вниз

Slevin757:

myservo.write(90); // лучи в среднем положении

Slevin757:

myservo.write(180); // лучи поднимаются вверх

Нужно ли эти значения постоянно записывать в серву в цикле или достаточно записать один раз, чтобы серва приняла нужное положение и удерживала его?