Activity
Не смотря на апрельские снегопады за окном? есть надежда, что скоро удастся полетать. В связи с этим, достал из шкафа аппарат и доделал его складные шасси.
Для привода использовал самую легкую и слабую серву, а чтобы ей было полегче складывать шасси вверх, подпружинил рычаги. Ну и продолжил ось сервы до соседней стенки на которой закрепил прощадку с отверстием для оси. Это чтобы качалку не перегибало под нагрузкой и не закусывало.
Управление сделал через ардуину, чтобы немного замедлить движения (напрямую с приемника слишком быстро дергает) и расширить угол поворота.
Хотел еще конечно режим “авто”, но дальномер некуда воткнуть - вся нижняя область перекрывается шасси и нет свободного пространства для замера.
фото1
фото2


не знаю, как летает, но красиво.
Спасибо! Тоже пока не знаю. Но сетап тот же, а жесткость выше, чем на первом (крепления лучей скручены между собой через стойки).
В этот раз впаял дополнительные конденсаторы в точке спайки проводов. И выкос сделал градусов пять. Благо на Н-раме это легко.
Шасси хочу переделать в такой вид:
фото-1

фото-2

И резать хочу из карбона 1.5 мм, а не из 3 мм, как сейчас. Снижение толщины и вырезы должны существенно повлиять на вес. К сожалению не владею примочками Солидвокса, которые просчитывают прочностные характеристики материалов, но надеюсь карбон 1.5 мм не подведет.
Всем привет! Почти на пол года выпал из “авиации”, но вот в январе появилось время и попилил ту версию корпуса которую выкладывал в августе. Н-образные лучи и складные шасси. Теперь это скорее Voyager-3, чем Inspire. Шасси сделал немного по-другому, чем на августовской картинке.
фото-1

Как и ожидалось, масса уменьшилась почти на 300 грамм. Думаю можно еще снизить, за счет переделки шасси. И старый обтекатель весит 40 грамм - можно сделать его потоньше. Ну и пластиковые детали печатались со 100% заполнением, и можно сделать их полегче. Уже перерисовал их в немного измененном дизайне и карбоновые детали шасси перерисовал, но все это еще не печатал и не резал.
Пока не летал. На улице мороз, а в помещении не хочется рисковать. Ну и еще с шасси есть кое-какие работы, которые надо закончить. Серву взял самую маленькую и легкую, поэтому надо на шасси пружинку натянуть, чтобы слабой серве было легче подтягивать их вверх - жду с алика.
Для того, что бы поднимать 300 гр (камеру+подвес), взлетный вес коптера может быть до 1500 гр, запросто.
Сетап тоже известный
Не ну так резко нельзя от сложного к простому - ломка может возникнуть))
Да и где конструкторский кайф черпать, когда все уже придумано)
А за ссылочку на раму благодарю! Когда-нибудь и до нее созрею
В общем решил я, что в этой части проекта можно поставить итоговую точку,а дальше собрать нечто попроще и понадежнее. Ибо изготовление капитальных шарниров выйдет крайне недешево, а летать на 3D-печатных опасно. Ну и вопрос веса опять же никуда не ушел.
Накидал модель следующей версии:
Некоторая часть деталей унаследуется от текущей рамы.
Основное отличие в том, что поперечные лучи будут крепиться к корпусу, как у Voyager от Walkera. И будут скручиваться между собой на стойки, поэтому жесткость конечно ожидается гораздо большей, чем у трансформера.
Удалось найти фабричные алюминиевые крепления лучей, которые позволяют обеспечить и угол наклона вверх и стреловидность - она мне чисто внешне нравится. Надеюсь в действительности все будет как и в теории. Заказал, жду.
Хотел совсем отказаться от механики и подвижных частей, но потом не удержался и сделал складные шасси. Заказал для этого микросерву - весит мало, надеюсь потянет.
Материалы в модели тщательно не прописывал, но ориентировочное снижение массы - 300 грамм.
когда ноги поднимаете дрон ведет, или с управляете так?
Это я подруливал. Одному было не удобно и в камеру смотреть и на дрон, и управлять, поэтому видео немного корявое.
А сам подъем на положение не влияет. На одном из предыдущих видео это лучше видно.
Да, тут я с вами полностью согласен.Очень достойная работа. А если учесть, что это первый коптер, то это просто супер.
Артем, благодарю за оценку!
Причиной унитазинга оказался отклеившийся GPS. Сегодня на тестах вел себя как надо и спутники ловил.
На видео немного повертел - маневрирует без дрожаний, только инерция есть - как я понимаю из-за заниженных гейнов.
А в голове почти полностью созрела новая вариация рамы. Надо компьютерную модель накидать.
Будет второй, третий коптер, наверняка они будут легче…
Да, с тех пор как была поднята тема веса, закралась идея сделать следующую вариацию. Мне нравится как выглядят H-образные рамы, поэтому есть желание сделать что-то похожее по принципу на Voyager от Walkera. Ряд увесистых деталей уйдет за ненадобностью, шарниры превратятся в простые крепления и станут легче. Мотормаунты можно будет заменить площадками… Корпус я бы оставил существующий, он мне нравится (и по виду и по расстановке компонентов), только детали крепления лучей сделать новые (после освобождения от привода в корпусе освободится дополнительное пространство). И габариты можно бы немного уменьшить.
Но это дело будущего, так как по основной деятельности заканчивается вынужденная пауза и скоро надо возвращаться к работе. Когда снова буду посвободнее, решу каким путем идти дальше - шлейфовать и совершенствовать этот, или начать облегченный вариант. В целом же считаю первоначальную цель достигнутой.
Сходил на очередные тесты. Немного увеличил вертикальный гейн.
Было довольно ветрено с порывами. В этот раз я на более просторной поляне запускал, возможно это сыграло роль и спутники держал стабильно. Но при порывах просидал по высоте (но может это и не из-за ветра). Первый раз сам выровнялся, а во второй пришлось поднять, чтоб на брюхо не сел.
Через некоторое время начал унитазить довольно размашистыми кругами. Надо почитать инструкцию по излечению.
Очень здорово выглядит! Сергей, сколько же все это теперь весит? И какой подвес будет?
Спасибо! Взвесил - 2719 г. Пустой корпус весил 780 г. С подвесом и камерой трешка рисуется. Не “фантастически легкий” конечно, но в самом начале предполагал, что может получиться гораздо хуже, поэтому устраивает).
Ну и практически все, что можно было урезать, я урезал. Остался короткий список:
- Подвижное крепление подвеса - 18 грамм. Четыре стойки с винтами, как альтернатива, весят 7 грамм. Т.е. 11 грамм выигрыша;
- Алюминиевая вставка на корпусе сервы - 9 грамм;
- На приводном винте (который с шагом 12 мм) будет капролоновая гайка, она гамм 5 может сэкономит;
- Литые пластиковые шарниры могут оказаться полегче, но тоже не факт.
На счет подвеса, конечно хотелось бы Zenmuse H3(H4)-3D, но за новый цена кусучая, а б/у-шных на барахолке не нашел. Видимо востребованы и не залеживаются.
Следующий по приоритету Tarot 3D III. Отзывы о нем вроди как неплохие и цена заметно демократичнее.
Но всерьез я пока не выбирал, так как следующими на очереди стоят шарниры. То что 3D-печатные не сломались от нагрузок на испытаниях (кроме случая краша) это конечно здорово, но для уверенной эксплуатации они не годятся.
По-хорошему надо сделать качественные мастер-модели (например лазерной 3D-печатью полиамида) и отдать в конторку для литья в вакуумной камере. Что тоже, собственно, не дешевая затея.
Собрал и установил механизм опускающейся/поднимающейся площадки крепления подвеса. Сама пластина крепления подвеса - быстросъемная, чтобы легко убирать при транспортировке.
После установки обтекателя, LED стал недоступен, потребовалось перенести. Решил прикрепить сзади - кроме удобства подключения, он еще закрыл “потраха” ардуины.
На батарейной полке имелось два отверстия, делал их на всякий случай, если придется GPS на стойку сзади выносить. В итоге GPS остался спереди, а эти отверстия подошли для крепления площадки LED, сделанной из пластинки полистирола и двух приклеенных нейлоновых стоек.
Так как провод LED я укорачивал, надо было или перепаять родной, или сделать удлинитель. Остановился на втором варианте, чтобы можно было легко отсоединять при необходимости.
Провода идущие вдоль корпуса и антенны приемника спрятаны с глаз за боковыми станками батарейной полки. Проходят между полкой и крепежными стойками. На стадии компьютерной модели заложил там достаточный зазор - сидят хорошо, не пережаты.
А как вы ее собственно делаете? Это печать на пленке какой-то или что?
На обтекателе делал аэрографом. Развел в трех баночках три оттенка; сначала светлым полностью закрасил, потом налепил малярного скотча и закрасил пятна среднего оттенка. Потом еще скотча и закрасил темные. Краску использовал акриловую (“Ладога” в тюбиках). После каждой покраски подсушивал обычным феном, чтобы долго не ждать. В конце прошел пару раз лаком из баллончика, для закрепления, и оставил на ночь.
Это был первый опыт - в другой раз возьму скотч поприличнее и предварительно намечу контуры пятен карандашом - будет удобнее.
А для аккума напечатал на пленке. Сначала в Corel нарисовал контур ласкута, которым закроются все стороны кроме нижней (на ней этикетка с характеристиками). Потом нарисовал в нем похожую текстуру. Отослал файл в типографию, мне там на виниловой самоклейке распечатали два экземпляра и по контуру ласкутов плоттером вырезали. Обошлось в 180 руб.
Когда наклеивал, вначале чуть-чуть брызнул водой (немного подмыленой, как для влажного наклеивания) на пленку, чтобы спокойно приложить и сориентировать по сторонам. В сложных местах (как например вокруг проводов) чтобы хорошо прилегала, немного нагревал термофеном. Пленка становилась мягче и под струей воздуха прижималась к поверхности. Потом пальцами доглаживал.
когда дрон упал куда-то в дерево, пригодились бы яркие краски, хотя бы акцентами.
на этот счет можно мотормаунты красными оставить как есть… А вставку на сервомашинке я уже залепил)
на вид весьма зачетно, но я бы не стал использовать текстуры - придает игрушечность конечному результату.
Черный. Или черный с красным низом - чтобы был “красный макасин”
я из черного полистирола делал и вначале примерил как есть. Потом еще на один слой черной краской прошел, чтобы выровнять цвет. Но блин как-то все в одно пятно сливалось. Разнообразия захотелось)
Но спасибо, за мнение. Если у кого-то еще какие-то дизайнерские мысли появятся - пишите, буду рад почитать. У меня с идеями расцветки скудновато было.
Возможно, что еще один обтекатель сделаю. Этот был, можно сказать, пробным.
Дальность всего два метра…
Дааа, HC-SR04 у меня тоже есть - полный треш, как и сказано в ролике).
US-100 действительно предпочтительнее, если между ними выбирать.
Меня немного беспокоит в вашем коде то, что после чтения данных сонара там идет задержка. Во время этой задержки, подозреваю, все действия ардуины стопорятся. Может, поэтому реакция нечеткая?
При экспериментах в квартире реакция хорошая. Все прям как надо - нет претензий.
Из этого думаю, что причина скорее в качестве замеров. На улице летал над песком, было довольно ветрено.
Сделал текстуру для аккума и заматал его. Чтоб под цвет.
Немного по-тестировал в полете автоматический режим. Работает на четверочку с минусом из-за сонара (при его цене, ждать многого не стоило). Так то в целом все правильно работает, но замер высоты не точный и поэтому реакция не четкая.
Думаю, может попробовать лазерный, типо этого. Хоть он всего до 2 метров действует, но при четкой работе этого могло бы хватить. Если конечно испытания нового винта будут успешными.
Кстати до меня только что дошло, что раньше я ссылками не дублировал картинки, а отображаются они не всегда, поэтому вот залил архив предыдущих фото на всякий случай.
Захотелось сделать обтекатель. Вначале думал, что буду его печатать, потом пришла идея, что было бы здорово вакуумной формовкой сделать, но в итоге решил попробовать сделать простой формовкой из миллиметрового полистирола в домашних условиях.
Заказал две половинки-матрицы из дерева у парня у которого карбон резал. Матрицы крепил на невысокую стойку, чтобы приподнять над полом; клал пластик на матрицу, дул сверху термофеном и одной рукой (одетой в зимнюю перчатку, чтобы не жгло) разглаживал и приминал пластик к матрице. Особенно обращал внимание, чтобы по нижней кромке матрицы прилегание было плотным. В процессе, по краям листа делал разрезы, чтобы разогретому пластику было легче свисать.
После остывания снял половинки с матриц, подрезал по кромке, склеил по центральной линии и изнутри дополнительно проклеил полоской такого же полистирола, чтобы стык был прочным.
Матрицу предварительно не готовил (не шпаклевал, не шкурил), так как думал, что для начала просто потренируюсь. В итоге кое-что начало получаться с первого раза и решил продолжить, но на формах отпечатались небольшие огрехи матрицы. Прошелся по ним шпаклевкой и шкуркой. А за одно и по матрице, на будущее. Никаких специальных шпаклевок не искал - пошел в Леруа полимерно-эластичную купил.
По-грунтовал, потом начал прикидывать как покрасить: однотонный черный, или белый, или с какими-нибудь полосками… Попалось в сети фото суперкара раскрашенного под серый угловатый камуфляж - понравилось, захотел сделать так же.

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

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

фото
Вернул выкос на моторы. Хочу проверить полет с ним на тех же гейнах.
GPS пока на своей полке, так как разительных отличий, по сравнению с выносом на стойку, не заметил. Нужно еще по-тестировать.
Зачинил схемку с ардуиной-про-мини. Получилось не с первого раза, из-за того, что свежие ардуины с Алика глючили и не хотели работать. В итоге спаял на старенькой. Заказал Ардуину-мини со встроенным программатором и микро-USB. Хочу сделать модуль поаккуратнее.
Сигнал и питание на плату будет идти с приемника, а на выходе сигнал на серву. Потестировал, все работало как надо и принимало 90* при переключении тумблера SG в среднее положение.
Сделал перемычки TX, RX, GND для коннектора дальномера (VCC совпало). И перемычки VCC, GND для запитки от приемника, чтоб одним стандартным трехжильным проводом соединить.
Вначале (на глючных ардуинах) я откидывал лапки микропроцессора для тех контактов на которые я вывожу перемычки (думал предостеречься от влияния сигналов и напряжения на процессор) но в последнем варианте не стал, так как никакого влияния не обнаружил.
Получился самостоятельный модуль который можно снимать и ставить в промежуток между приемником и сервой для управления шасси - возможно кому-то еще окажется полезным (Масса 13 грамм). На этот случай выкладываю:
Итоговый скетч
У меня там ширина импульса сдвинута относительно номинальной, из-за того что я раздвигал конечные точки на аппе, чтобы отрегулировать угол подъема спуска. Когда окончательно перейду на этот модуль, то верну конечные точки в исходную.
скетч для считывания ширины импульса
С утра испробовал вариант кода с микшером. Режимы у меня на SD, а на соседнюю SG в ее центральном положении настроил смещение ширины сигнала. И в коде прописал, что если сигнал в пределах смещения, то на серве 90*.
Потестировал - работало хорошо.
По сути это тоже получился вариант с кнопкой, только кнопка на пульте. Пожалуй так даже удобнее - не нужно дополнительных проводов и соединений.
Андрею еще раз большая благодарность за рабочий код!!!
Что касается транспортного положения, то остановлюсь на управлении с пульта.
Тесты на макетной плате прошли хорошо, теперь надо на Ардуину-мини перенести и спаять схему.
Посмотри по ардуине видео курсы джереми блума, там все просто
Не слыхал про такого, но погляжу на досуге, может умища наберусь)
pinMode(pin,INPUT_PULLUP); // вход с подтяжкой
Попробовал с INPUT_PULLUP - серва стояла в 90* не реагируя ни на кнопку, ни на тумблер.
Я по этой ссылке сделал код, попробуйте ее открыть
Испробовал - кнопка стопорит исправно. Но вращение сервы не такое ровное как во вчерашнем коде без кнопки. Время от времени проскакивают запинки.
Поковырял на пульте программный микшер - в принципе как вариант можно испробовать. Но это уже завтра, ибо утро вечера мудренее)
Мы его добьем Должно работать.
Основательный подход))
и сигнал HIGH появляется только однократно, а не все время пока она нажата?
не не, со стопорением все очень хорошо, на сигнал грех жаловаться. В момент стопорения серва в полном покое и не гудит.
Вспомнил странность про которую писал выше, когда вы предложили протестировать чисто код стопорения… Я кнопку оджимал, а серва не торопилась крутиться. Могла сразу начать, а могла секунд пять стоять на месте, а потом начинать вращение… Мне это показалось крайне странным.
То есть как бы даже Через Чур стопорила, если можно так сказать… может это “черезчурстопорение” и вызывает пинки в работе сервы в режимах когда она должна вращаться.
Может микшером каналов на аппаратуре добавить еще одну четвертую ширину импульса для этого канала. Задействовать дополнительный тумблер для транспортного положения.
Подумал, может то что я под нужды кнопки взял два соседних контакта могло дать какую-то наводку, или еще что-то.
Попробовал развести немного в стороны, но это не повлияло
Если код кнопки даже в коротком, изолированном виде дает нестабильную работу, то может другое логическое условие придумать? Не HIGH на контакте, а что-нибудь иное, более конкретное. Импульсы программа распознает корректно.
нет ли в отжатом положении какого-то дребезга кнопки?
ну у меня самой кнопки пока нет - ее роль выполняли провода со штекерами мама-папа
Попробуйте сделать что-то типа 160 или 30, посмотрите как отреагирует.
я перед экспериментами раскрутил серву (тестовая серва непрерывного вращения), подкрутил энкодер, чтобы четко при 90* стопорилась без гудения. Поэтому встает то она хорошо, а вот влияет нехорошо.
Попробовал в конец и в начало с Else. Чертовщина какая-то. Весь цикл прекрасно работает пока этот фрагмент не вставлю. Хоть в начало, хоть в конец - все одно - стопорит хорошо, но в “отжатом” положении серва плохо крутится.
Пожалуй надо придумать другой способ входа в транспортный режим, без кнопки.
…
Андрей, за код премного благодарю! “Авто” и “Ручной” работают как надо. Без вашей помощи не допетрил бы.
А на счет транспортного подумаю еще.
добавил команду myservo.write(servo_mode), чтоб приняла к исполнению, получилось:
if (digitalRead(button) == HIGH) {
// если кнопка транспортного положения нажата
servo_mode = 90; // лучи в среднем положении
myservo.write(servo_mode);
}
else
{
servo_mode = 0; // в любом другом положении
myservo.write(servo_mode);
}
Вообще-то странно себя ведет. Может сразу запуститься после отпускания кнопки, а может постоять на месте приличное время. Не ожидал сюрприза в таком простом фрагменте.
Погодите, именно этот фрагмент?
С ним будет дергаться, потому что в нем запись происходит. В нем должно быть только servo_mode = 90 и больше ничего.
таааакс, сейчас переделаю)
А вы можете наоборот все убрать и оставить только кнопку?
Сама по себе стопорит она нормально. Но своим присутствием этот фрагмент кода влияет на остальной цикл и серва начинает неровно крутиться, стопориться, дергалься
if (digitalRead(button) == HIGH)
{myservo.write(90);
servo_mode = 90;}
Мне кажется хорошо бы воткнуть его вначале, чтобы программа проверила его, и если кнопка включена, то оставшаяся часть кода была бы проигнорирована за ненадобностью.
А если кнопка не нажата, то цикл выполнялся бы полностью.
А вы можете наоборот все убрать и оставить только кнопку?
сейчас попробую…
Тааакс… Подправил граничные условия в одном месте, вернул старый скетч эхолота и стер фрагмент про кнопку - пошло на пользу. Мотор ровно крутит в обе стороны и в обоих режимах. На сонар реагирует корректно.
Теперь надо фрагмент про кнопку правильно вставить.
…
Нее, если в то место вставляю, то картина портится.
Попробую в начало
…
Не, чет не то… Без кнопки все прям прекрасно работает. А фрагмент с кнопкой все резко портит. Андрей, кажется вы писали про оператор Continue, но потом редактировали. Он может помочь при размещении кода кнопки в начале цикла?
…
Текущее работоспособное состояние цикла без кнопки:
void loop()
{
duration = pulseIn(pin, HIGH);
if (duration > 1800)
{
servo_mode = 0;
} else if ((duration > 1300)&(duration <= 1700))
{
servo_mode = 180;
}
else
{
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)
{
servo_mode = 0;
}
else
{
servo_mode = 180;
}
}
if (servo_mode != last_servo_mode)
{
myservo.write(servo_mode);
last_servo_mode = servo_mode;
}
}
Вот так?
… if (Len_mm <= dist) {
servo_mode = 0;
}
else
{
servo_mode = 180;
}
}
if (digitalRead(button) == HIGH) {
// если кнопка транспортного положения нажата
myservo.write(90); // лучи в среднем положении
servo_mode = 90;
}
if (servo_mode != last_servo_mode) {
myservo.write(servo_mode);
last_servo_mode = servo_mode;
}
}
На кнопку стал правильно реагировать, но вращение мотора испортилось. После первой рекомендации он в АВТО плохо себя вел, но зато в ручном крутил отлично. А сейчас в обоих режимах в одну сторону крутит, а в другую дергается.
А у вас кнопка или переключатель имеет приоритет?
Кнопка в приоритете. Так как нажимается только при подготовке к полету и при завершении.
я тут пока испробовал код по первой рекомендации - в транспортном положении стоит ровно, не гудит и не дергается. А в остальных режимах дергает.
Сейчас разберусь в коде второй рекомендации. Благодарю, что потратили время на написание.
Но вслед за этим проверяется длина сигнала и может сработать что-то еще.
А может тогда дописать еще одно условие после проверки кнопки?
if (digitalRead(button) != HIGH)
{
… и пошло дальше
== это равно
!= это не равно
А, блин, точно, он же к логическому оператору относится, а не к имени))… программист из меня еще тот
Попробуйте не писать в цикле одни и те же значения.
А сделать следующим образом:
О! Круто! не знал про такой прием. Испробую!
Стесняюсь спросить - а что означает восклицательный знак после имени переменной?) “servo_mode != 90”
теперь в серву что то можно записать
Я имел ввиду перезапись и обновление переменных на ардуине в соответствии с управляющими командами.
Считывал ширину входящего сигнала ардуиной, получилось что значения немного плавают, поэтому ставил граничные условия вроде “if ((duration > 1200) & (duration < 1800))” вместо четчих чисел. Чтобы сигнал с приемника точно попал в пределы.
Нужно ли эти значения постоянно записывать в серву в цикле или достаточно записать один раз, чтобы серва приняла нужное положение и удерживала его?
Мои познания в программировании ограничиваются универским курсом и гуглом, но на сколько я понимаю, если записать что-то окончательно, то потом программа перестанет обновлять переменную и схема перестанет реагировать на новые команды. Такой вариант как прямое управление с пульта тут не сработает - все тело программы это цикл.
А автоматическом режиме нужно будет всегда летать выше пороговой высоты, а то получится - “лучи вверх”-“лучи вниз”…
Да, по логике так оно и будет. Но если вариант с новым винтом (шаг 12 мм) сработает, то опускание шасси будет происходить за секунды и я смогу выставить пороговую высоту небольшой, около 1 - 1.5 м. На такой высоте не планирую много летать, а в исключительных случаях можно будет перейти в ручной режим.
Если же на старом винте придется остаться, то метра 2.5. придется поставить. Но опять же в отдельных случаях ручным попользуюсь.
На сколько я понимаю, чтобы вывести на пульт информацию надо будет одним каналом пожертвовать. Жалко) Хотя за идею спасибо, возможно в будущем к ней добавятся еще какие-то показания для передачи.
Кстати когда то брал для колхоза с автоподьемом ног такую вот штучку
Любопытная штуковина. Разброс цен на них какой-то странный.
Накрапал скетч для ардуины:
#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); // лучи поднимаются вверх
}
}
На счет его работоспособности пока утвердительного мнения нет. Вроди бы все работает (и кнопка и управление с пульта и автомат). Но в транспортном положении серва периодически подергивается, а должна тико стоять.
Ну и в одну сторону крутится ровно, а в другую с дерганьями (то ровно, то дергается, то встанет, то опять раскрутится). Хотя вне схемы крутится как надо.
Затрудняюсь предполагать в чем может быть дело. Для меня ардуиновская тематика, это почти как шаманизм. Заморочился с ней для удобства, но если не получится достичь стабильной работы, то опять откажусь.
Заказал для пробы приводной винт Т6 с шагом 12 мм. Хочется ускорить подъем/спуск лучей и интересно потянет ли такой шаг серва.
На случай если потянет, есть желание сделать автоматический режим для шасси, вернувшись к теме с ультразвуковым дальномером и ардуиной. Возможность пользоваться транспортным положением тоже нравится, поэтому его надо сохранить. Для этого думаю сделать небольшую кнопку (с фиксацией) на корпусе, чтобы переводить в транспортное положение после полетов.
Логику работы вижу так:

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










