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

rc468
Slevin757:

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

Мы его добьем 😉 Должно работать. Может быть просто кнопка какая-то особенная и сигнал HIGH появляется только однократно, а не все время пока она нажата? Можно добавить код, который проверяет, как долго кнопка находилась в положении HIGH, и меняет режим сервы, только если прошло полсекунды, например.

Slevin757
rc468:

Мы его добьем Должно работать.

Основательный подход))

rc468:

и сигнал HIGH появляется только однократно, а не все время пока она нажата?

не не, со стопорением все очень хорошо, на сигнал грех жаловаться. В момент стопорения серва в полном покое и не гудит.

Вспомнил странность про которую писал выше, когда вы предложили протестировать чисто код стопорения… Я кнопку оджимал, а серва не торопилась крутиться. Могла сразу начать, а могла секунд пять стоять на месте, а потом начинать вращение… Мне это показалось крайне странным.
То есть как бы даже Через Чур стопорила, если можно так сказать… может это “черезчурстопорение” и вызывает пинки в работе сервы в режимах когда она должна вращаться.

Может микшером каналов на аппаратуре добавить еще одну четвертую ширину импульса для этого канала. Задействовать дополнительный тумблер для транспортного положения.

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

Если код кнопки даже в коротком, изолированном виде дает нестабильную работу, то может другое логическое условие придумать? Не HIGH на контакте, а что-нибудь иное, более конкретное. Импульсы программа распознает корректно.

Slevin757

Поковырял на пульте программный микшер - в принципе как вариант можно испробовать. Но это уже завтра, ибо утро вечера мудренее)

rc468
Slevin757:

Если код кнопки даже в коротком, изолированном виде дает нестабильную работу, то может другое логическое условие придумать?

Дело в том, что чудес не бывает. Код должен работать. Причина сбоя в какой-то хитрости появления сигнала HIGH.
Давайте займемся только кнопкой.
Я по этой ссылке сделал код, попробуйте ее открыть, а то здесь теряется все форматирование. Там и чатик есть.
collabedit.com/4qfup

CZC

А не пробовали использовать встроенный резистор подтяжки на ардуине. Он как раз служит для того чтобы устранять дребезг контактов.

pinMode(pin,OUTPUT); // выход
pinMode(pin,INPUT); // вход
pinMode(pin,INPUT_PULLUP); // вход с подтяжкой

Slevin757
CZC:

pinMode(pin,INPUT_PULLUP); // вход с подтяжкой

Попробовал с INPUT_PULLUP - серва стояла в 90* не реагируя ни на кнопку, ни на тумблер.

rc468:

Я по этой ссылке сделал код, попробуйте ее открыть

Испробовал - кнопка стопорит исправно. Но вращение сервы не такое ровное как во вчерашнем коде без кнопки. Время от времени проскакивают запинки.

CZC

Вы же понимаете что pullup подтягивает линию к высокому уровню, и поэтому кнопка должна замыкать линию на землю?

zealot01
CZC:

А не пробовали использовать встроенный резистор подтяжки на ардуине. Он как раз служит для того чтобы устранять дребезг контактов.

Он подтягивает уровень сигнала к единице при размыкании кнопки, дребезг кнопки не устраняет

zealot01
Slevin757:

Вспомнил странность про которую писал выше, когда вы предложили протестировать чисто код стопорения… Я кнопку оджимал, а серва не торопилась крутиться. Могла сразу начать, а могла секунд пять стоять на месте, а потом начинать вращение…

Таки да, возможно отсутствует подтягивающий резистор (к земле или питанию) цифрового входа от кнопки ардуины.
Посмотри по ардуине видео курсы джереми блума, там все просто:)

Slevin757

С утра испробовал вариант кода с микшером. Режимы у меня на SD, а на соседнюю SG в ее центральном положении настроил смещение ширины сигнала. И в коде прописал, что если сигнал в пределах смещения, то на серве 90*.
Потестировал - работало хорошо.
По сути это тоже получился вариант с кнопкой, только кнопка на пульте. Пожалуй так даже удобнее - не нужно дополнительных проводов и соединений.

Андрею еще раз большая благодарность за рабочий код!!!

Что касается транспортного положения, то остановлюсь на управлении с пульта.

Тесты на макетной плате прошли хорошо, теперь надо на Ардуину-мини перенести и спаять схему.

zealot01:

Посмотри по ардуине видео курсы джереми блума, там все просто

Не слыхал про такого, но погляжу на досуге, может умища наберусь)

Slevin757

Зачинил схемку с ардуиной-про-мини. Получилось не с первого раза, из-за того, что свежие ардуины с Алика глючили и не хотели работать. В итоге спаял на старенькой. Заказал Ардуину-мини со встроенным программатором и микро-USB. Хочу сделать модуль поаккуратнее.


yadi.sk/i/dBM8Do3c3a8Axu

Сигнал и питание на плату будет идти с приемника, а на выходе сигнал на серву. Потестировал, все работало как надо и принимало 90* при переключении тумблера SG в среднее положение.
Сделал перемычки TX, RX, GND для коннектора дальномера (VCC совпало). И перемычки VCC, GND для запитки от приемника, чтоб одним стандартным трехжильным проводом соединить.
Вначале (на глючных ардуинах) я откидывал лапки микропроцессора для тех контактов на которые я вывожу перемычки (думал предостеречься от влияния сигналов и напряжения на процессор) но в последнем варианте не стал, так как никакого влияния не обнаружил.

Получился самостоятельный модуль который можно снимать и ставить в промежуток между приемником и сервой для управления шасси - возможно кому-то еще окажется полезным (Масса 13 грамм). На этот случай выкладываю:
Итоговый скетч
У меня там ширина импульса сдвинута относительно номинальной, из-за того что я раздвигал конечные точки на аппе, чтобы отрегулировать угол подъема спуска. Когда окончательно перейду на этот модуль, то верну конечные точки в исходную.
скетч для считывания ширины импульса

Slevin757

Убираясь на столе, не глядя воткнул сонар в ардуину не правильно, а буквой “Г”. Потом присмотрел и решил, что так гораздо удобнее разместить и закрепить. Перепаял пины и перемычки.


фото

Закрепилось все карбоновой планкой - сонар можно легко снять не откручивая винты (в частности на время заливки скетча на ардуину) и воткнуть в разъем обратно. Только надо придумать как провести/закрепить провод аккума, чтобы он сонару не мешал.
Когда приедет ардуина с микро-USB, гребенка торчать не будет и перемычки перепаяю внутрь.
В домашних условиях схему потестировал, работает. А парке еще не пробовал - погода совсем не летная.
Поправил в скетче крайние углы спуска/подъема и середину, чтобы серва касалась стола. Получилось 45*, 94*, 160*

Люфт в подшипнике привода оказался из-за муфты которая соединяет с сервой - сползла на миллиметр. Пропаял ее для надежности, люфт почти полностью ушел.

Забрал вчера оставшиеся карбоновые детали с резки, поставил по местам.


фото
Вернул выкос на моторы. Хочу проверить полет с ним на тех же гейнах.

GPS пока на своей полке, так как разительных отличий, по сравнению с выносом на стойку, не заметил. Нужно еще по-тестировать.

Slevin757

Захотелось сделать обтекатель. Вначале думал, что буду его печатать, потом пришла идея, что было бы здорово вакуумной формовкой сделать, но в итоге решил попробовать сделать простой формовкой из миллиметрового полистирола в домашних условиях.
Заказал две половинки-матрицы из дерева у парня у которого карбон резал. Матрицы крепил на невысокую стойку, чтобы приподнять над полом; клал пластик на матрицу, дул сверху термофеном и одной рукой (одетой в зимнюю перчатку, чтобы не жгло) разглаживал и приминал пластик к матрице. Особенно обращал внимание, чтобы по нижней кромке матрицы прилегание было плотным. В процессе, по краям листа делал разрезы, чтобы разогретому пластику было легче свисать.
После остывания снял половинки с матриц, подрезал по кромке, склеил по центральной линии и изнутри дополнительно проклеил полоской такого же полистирола, чтобы стык был прочным.
Матрицу предварительно не готовил (не шпаклевал, не шкурил), так как думал, что для начала просто потренируюсь. В итоге кое-что начало получаться с первого раза и решил продолжить, но на формах отпечатались небольшие огрехи матрицы. Прошелся по ним шпаклевкой и шкуркой. А за одно и по матрице, на будущее. Никаких специальных шпаклевок не искал - пошел в Леруа полимерно-эластичную купил.

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

фото

вот как в итоге получилось:

фото

Думаю, может на аккум еще наклейку с такой же текстурой сделать…

Slevin757

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

Slevin757

Немного по-тестировал в полете автоматический режим. Работает на четверочку с минусом из-за сонара (при его цене, ждать многого не стоило). Так то в целом все правильно работает, но замер высоты не точный и поэтому реакция не четкая.

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

rc468
Slevin757:

замер высоты не точный и поэтому реакция не четкая.

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

Slevin757
CZC:

Дальность всего два метра…

Дааа, HC-SR04 у меня тоже есть - полный треш, как и сказано в ролике).
US-100 действительно предпочтительнее, если между ними выбирать.

rc468:

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

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

Сделал текстуру для аккума и заматал его. Чтоб под цвет.


фото

tuskan

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

Черный. Или черный с красным низом - чтобы был “красный макасин”😁

Slevin757
tuskan:

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

я из черного полистирола делал и вначале примерил как есть. Потом еще на один слой черной краской прошел, чтобы выровнять цвет. Но блин как-то все в одно пятно сливалось. Разнообразия захотелось)

Но спасибо, за мнение. Если у кого-то еще какие-то дизайнерские мысли появятся - пишите, буду рад почитать. У меня с идеями расцветки скудновато было.
Возможно, что еще один обтекатель сделаю. Этот был, можно сказать, пробным.

rc468
Slevin757:

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

Раскраска мне нравится, но для случаев, когда дрон упал куда-то в дерево, пригодились бы яркие краски, хотя бы акцентами.