- Как cделать орнитоптер своими руками
- Видеообзор
- 1. Выбор начальных параметров размаха крыльев, веса и частоты взмахов.
- 2. Выбор Махательного Механизма
- 3. Выбор компонентов. Мотор, ESC и Aккумулятор.
- Выбор мотора
- Источник питания
- Регулятор оборотов (ESC)
- Опыт создания первого робота на Ардуино (робот-«охотник»)
- Общее описание робота
- Структура робота
- Отдельные блоки
- Программа управления
- Нюансы педагогики
- Дальнейшее развитие
Как cделать орнитоптер своими руками
Эта инструкция — история о том, как я сделал прототип орнитоптера.
Для тех, кто не знает, орнитоптер — это механизм, который летает за счёт взмахов крыльями, как настоящая птица. Идея состояла в том, чтобы создать орнитоптер с нуля, управлять им дистанционно и, конечно, заставить его летать.
Пожалуйста, не судите строго — я не профессионал авиамоделирования. Так что не всё работает так, как мне бы хотелось, но всё же работает.
Реальный результат можно увидеть в многосерийном видео на нашем канале Youtube. Если вам понравится это руководство, пожалуйста, подпишитесь на канал.
Инструкция со временем будет исправляться и улучшаться новыми материалами, как и Орнитоптер.
Видеообзор
1. Выбор начальных параметров размаха крыльев, веса и частоты взмахов.
С какой частотой птицы обычно машут крыльями?
Это зависит от площади крыла самой птицы. Например, для аиста достаточно махать крыльями с частотой 2 взмаха в секунду, воробей должен делать 13 взмахов в секунду, а колибри — до 80. Я хотел сделать большой орнитоптер, поэтому площадь крыла тоже будет большой. Для расчета площади крыла нужно знать размах крыльев. Итак, размах крыльев стал первым выбранным параметром. Я решил сделать орнитоптер с размахом крыльев в диапазоне 1200-1400 мм.
Я искал в интернете существующие конструкции орнитоптеров и анализировал их размеры. Большинство орнитоптеров сделаны в строке определенного размера. Орнитоптеры Hobbie могут быть отсортированы по размаху крыльев (от 660 до 3000 мм) и весу в полете. Мой орнитоптер с размахом крыльев 1200-1400 мм будет где-то посередине этой шкалы, не большой, но и не маленький.
Я искал информацию о конструкции на форумах авиамоделирования, в спецификациях об орнитоптерах и во множестве видео на Youtube. Я выяснил, что орнитоптеры с таким размахом крыльев должны выполнять от 5 до 7 взмахов в секунду и иметь полетный вес в диапазоне от 300 до 500 г. Я выбрал среднее значение веса полета — 400 г. Поскольку у меня нет опыта в создании самолетов и махалетов, я выбрал все значения эмпирически и в основном надеялся на удачу.
Зная приблизительную частоту взмахов (от 5 до 7 Гц), я могу разработать механизм взмахов.
В итоге для орнитоптера мною были выбранны следующие параметры:
2. Выбор Махательного Механизма
Махательный Механизм является наиболее важной частью орнитоптера. Он преобразует электроэнергию от батареи в махательное движение крыльев. Разработать и собрать такой механизм достаточно сложная задача,так как он должен выдерживать огромные усилия, которые меняют направление несколько раз в секунду, и в то же время быть чрезвычайно легким и долговечным.
Существует большое количество махательных механизмов. Вот самые используемые.
Кривошип (Staggered Crank)
Конструкция кривошипа является самой базовой среди махательных механизмов. Части ступенчатого вала находятся на необходимиом растоянии и под необходимым углом для достижения симметричного взмаха. Это часто используемая конструкция среди любителей, которые собирают орнитоптеров из подручных материалаов.
Кривошип с одной передачей (Single Gear Crank)
Несмотря на то что конструкция кривошипа с одной передачей выглядит простой, она сложнее, чем кажется. Центральная точка, где соединительный стержень и шарниры крыльев соединены друг с другом, должна расширяться и сжиматься при закрывании механизма. Сжатие и расширение с очень высокой частотой может привести к износу компонента.
Кривошип с дмумя передачами (Dual Gear Crank)
Эта конструкция имеет две шестерни, которые управляют петлями каждого крыла по отдельности. Существует несколько вариантов конструкции трансмиссии. Шестерня может приводить в движение обе вспомогательные передачи. Таким образом, вторичные шестерни будут вращаться в одном направлении друг с другом. В другой конструкции ведущая шестерня вращает вторичную шестерню, а эта вторичная шестерня вращает другую вторичную шестерню. Вторичные передачи будут вращаться против часовой стрелки друг к другу. Эта конструкция намного проще в реализации и уменьшает несоосность крыла.
Поперечный вал (Transverse Shaft)
Поперечная конструкция вала является еще одним вариантом кривошипно-шатунного механизма. Эта конструкция обеспечивает максимально симметричный взмах. Однако это самый тяжелый и сложный дизайн. Вращающиеся зубчатые колеса и крылья находятся не в одной плоскости, поэтому соединительный стержень должен вращаться. Стержень соединителя имеет шариковый подшипник внутри, и это добавляет вес только к самому компоненту. Количество зубчатых колес, используемых в этой конструкции, больше, чем в любой другой конструкции. Конструкция поперечного вала обычно используется для больших орнитоптеров, где вес можно преодолеть с помощью больших крыльев.
Я решил выбрать конструкцию с поперечным валом. Размер моего орнитоптера позволяет использовать дополнительную массу механизма. Кроме того, такую конструкцию легко изготовить из листового материала, так как плоскости зубчатых колес параллельны плоскости корпуса.
3. Выбор компонентов. Мотор, ESC и Aккумулятор.
Выбор мотора
Мотор должен быть небольшого размера. Моторы большого размера имеют большой вес, что очень критично для конструкции. В то же время электродвигатель должен быть прочным, чтобы обеспечить достаточный крутящий момент для преодоления сопротивления воздуха.
Для увеличения крутящего момента и достижения необходимой частоты взмахов я собираюсь использовать редуктор. В этом случае я могу взять более слабый двигатель с более высоким числом оборотов в минуту (об / мин).
Принимая во внимание размеры орнитоптера, хобби электромоторы размером 300 — 400 должны идеально подходить. Хобби-моторы такого размера могут быть коллекторными или бесколлекторными. В основном вы можете найти их в средних RC катерах и вертолетах.
Я выбрал этот мотор:
Его можно заменить на:
Обратите внимание на важную деталь. Вам нужен аутраннер. Монтажные отверстия двигателя должны быть на одной стороне с выходным валом. Таким образом, корпус, который находится рядом с выходным валом, должен быть неподвижным.
Основные характеристики двигателя:
Краткое объяснение названия:
Первые, 4 цифры в описании (2627) — это размеры двигателя. Первая пара цифр показывает диаметр двигателя (26 мм), а вторая пара показывает длину (27 мм). Значение «кВ» относится к постоянной скорости двигателя. Он измеряется числом оборотов в минуту (об / мин), которое совершает двигатель, когда на него подается 1 В (один вольт) без нагрузки. Например: Этот 2627 4200 кВ бесколлекторник может быть запитан батареей 2S (7.4В) или 3S (11.1В). При значении 4200 кВ и без нагрузки этот двигатель имеет следующие скорости:
Источник питания
В моем орнитоптере батарея — это один из самых тяжелых компонентов, поэтому очень важно выбрать правильную.
Для питания двигателя я использую Li-Po аккумулятор. Коэффициент отношения емкости к массе у таких аккумуляторов достаточно высок. Кроме того, они способны выдавать высокое значение тока, которое требуется для бесколлекторных двигателей.
Существует заметная разница в весе между 2-х и 3-х ячеечными батареями одинаковой емкости. Поэтому я думаю, что лучше использовать 2-ячеечную батарею.
Основные характеристики батареи:
Довайте проверим, достаточно ли максимального тока батареи.
Умножив скорость разряда на емкость, можно рассчитать максимальное значение тока, которое может выдавать аккумулятор:
30C * 0,9Ah = 27 Amp.
Максимальный ток 27 А превышает значение, которое может потреблять двигатель (22 А), поэтому все в порядке. Так же очень важана емкость аккумулятора. Этот параметр влияет на продолжительность полета орнитоптера.
Однако, в моем случае, гораздо важнее выбирать батарею в зависимости от веса.
Регулятор оборотов (ESC)
Для управления и регулирования скорости бесколлекторного мотора нужен контроллер. Любой хобби ESC подходит для этого. Единственное, что нужно проверить — это длительный и пиковый ток. Чтобы уменьшить вес орнитоптера, лучше выбрать контроллер в мини-форме.
Источник
Опыт создания первого робота на Ардуино (робот-«охотник»)
В данной статье я хочу описать процесс сборки своего первого робота на ардуино. Материал будет полезен другим таким же новичкам, как и я, которые захотят изготовить какую-нибудь «самобеглую тележку». Статья представляет собой описание этапов работы с моими дополнениями по различным нюансам. Ссылка на итоговый код (скорее всего, не самый идеальный) дана в конце статьи.
По мере возможности я привлекал к участию своего сына (8 лет). Что именно с ним получалось, а что нет — на это я выделил часть статьи, возможно, кому-то пригодится.
Общее описание робота
Вначале несколько слов о самом роботе (идея). Собирать что-то типовое на старте не очень хотелось. В то же время, набор компонентов был довольно стандартным — шасси, двигатели, ультразвуковой датчик, датчик линии, светодиоды, пищалка. Вначале из этого «супового набора» был придуман робот, который охраняет свою территорию. Он едет на нарушителя, который пересек линию круга, а потом возвращается в центр. Однако в этом варианте была нужна прочерченная линия, плюс лишняя математика, чтобы постоянно оставаться в круге.
Поэтому после некоторых обдумываний я несколько изменил идею и решил делать робота-«охотника». На старте он поворачивается вокруг своей оси, выбирая поблизости цель (человека). Если «жертва» обнаружена, «охотник» включает мигалку и сирену, и начинает ехать на нее. Когда человек отходит/отбегает, робот выбирает новую цель и преследует ее, и так далее. Такому роботу не нужен ограниченный круг, и он может работать на открытой территории.
Как видите, это во многом напоминает игру «догонялки». Хотя в итоге робот и не получился достаточно резвым, но он честно взаимодействует с окружающими его людьми. Особенно это нравится детям (иногда, правда, кажется, что они вот-вот растопчут его, аж сердце ёкает. ). Думаю, для популяризации технического конструирования это хорошее решение.
Структура робота
Итак, мы определились с идеей, перейдем к компоновке. Список элементов формируется из того, что должен уметь робот. Тут всё вполне очевидно, поэтому сразу посмотрим на нумерацию:
«Мозги» робота — плата arduino uno (1); была в заказанном из Китая наборе. Для наших целей ее вполне хватает (ориентируемся на количество используемых пинов). Из этого же набора мы взяли готовое шасси (2), на которое крепятся два ведущих колеса (3) и одно заднее (свободно вращающееся) (4). Также в наборе был готовый батарейный отсек (5). Спереди у робота стоит ультразвуковой датчик (HC-SR04) (6), сзади — драйвер двигателей (L298N) (7), по центру — светодиод-мигалка (8), и чуть в стороне — пищалка (9).
На этапе компоновки мы смотрим:
— чтобы все влезло
— чтобы было сбалансировано
— чтобы было рационально размещено
Частично это уже сделали за нас китайские коллеги. Так, тяжелый батарейный отсек поставлен в центр, и примерно под ним стоят ведущие колеса. Все остальные платы легкие, их можно размещать по периферии.
- В шасси из набора есть много заводских отверстий, но какая в них логика — я так и не разобрался. Двигатели и аккумуляторный блок закрепились без проблем, дальше началась «подгонка» со сверлением новых отверстий, чтобы закрепить ту или иную плату.
- Весьма выручили латунные стойки и прочий крепеж из запасников (иногда приходилось выкручиваться).
- Шины от каждой платы пропускал через зажимы (опять же нашел в запасниках). Весьма удобно, все провода лежат красиво и не болтаются.
Отдельные блоки
Теперь пройдусь по блокам и расскажу персонально про каждый.
Понятно, что робот должен иметь хороший источник энергии. Варианты могут быть разные, я выбрал вариант с 4 аккумуляторами АА. В сумме они дают примерно 5 В, и такое напряжение можно прямо подать на пин 5V платы arduino (минуя стабилизатор).
Некоторая настороженность, конечно, у меня была, но это решение вполне работоспособно.
Так как питание нужно везде, то для удобства я сделал по центру робота два разъема: один «раздает» землю (справа), а второй — 5 В (слева).
Двигатели и драйвер
Сначала про крепление двигателей. Крепление заводское, но сделано с большими допусками. Другими словами, двигатели могут «вихлять» на пару миллиметров влево-вправо. Для нашей задачи это не критично, а вот где-то может и влиять (робота начнет уводить в сторону). На всякий случай я выставил двигатели строго параллельно и зафиксировал клеем.
Для управления двигателями, как я писал выше, используется драйвер L298N. По документации у него три пина на каждый двигатель: один для изменения скорости и пара пинов для направления вращения. Тут есть один важный момент. Оказывается, если напряжение питания 5 В, то регулировка скорости просто не работает! То есть либо совсем не крутит, либо крутит по максимуму. Вот такая особенность, из-за которой я «убил» пару вечеров. В конце концов, нашел упоминание где-то на одном из форумов.
Вообще говоря, низкая скорость вращения мне требовалась при развороте робота — чтобы он имел запас времени просканировать пространство. Но, так как с такой задумкой ничего не вышло, пришлось делать по другому: небольшой поворот — остановка — поворот — остановка и т. д. Опять же, не столь изящно, но работоспособно.
Еще здесь добавлю, что после каждого преследования робот выбирает случайное направление нового поворота (по или против часовой стрелки).
Еще одна железяка, где пришлось искать компромиссное решение. Ультразвуковой датчик на реальных препятствиях дает нестабильные цифры. Собственно, это было ожидаемо. Идеально он работает где-нибудь на соревнованиях, где есть гладкие, ровные и перпендикулярные поверхности, а вот если перед ним «мелькают» чьи-то ноги — тут нужно вводить дополнительную обработку.
В качестве такой обработки я поставил медианный фильтр на три отсчета. Исходя из тестов на реальных детях (во время тестов ни один ребенок не пострадал!), его оказалось вполне достаточно для нормализации данных. Физика здесь простая: у нас есть сигналы, отраженные от нужных объектов (дающие требуемое расстояние) и отраженные от более далеких, например, стен. Вторые представляют собой случайные выбросы в измерениях вида 45, 46, 230, 46, 46, 45, 45, 310, 46… Именно их медианный фильтр и отсекает.
После всей обработки у нас получается расстояние до ближайшего объекта. Если оно меньше некоторой пороговой величины — тогда мы включаем сигнализацию и едем прямо на «нарушителя».
Мигалка и сирена
Пожалуй, самые простые элементы из всего перечисленного. Их видно на фотографиях выше. По железу здесь писать нечего, поэтому теперь перейдем к коду.
Программа управления
Расписывать детально код я смысла не вижу, кому нужно — ссылка в конце статьи, там всё достаточно читабельно. А вот общую структуру было бы неплохо объяснить.
Первое, что пришлось осмыслить: робот — это устройство реального времени. Точнее, вспомнить, потому что и раньше, и сейчас все равно занимаюсь электроникой. Значит, сразу забываем про вызов delay(), который очень любят использовать в скетчах-примерах, и который просто «замораживает» программу на указанный промежуток времени. Вместо этого, как советуют опытные люди, вводим таймеры на каждый блок. Прошел требуемый промежуток — выполнили действие (увеличили яркость светодиода, включили двигатель и так далее).
Таймеры могут быть взаимосвязаны. Так, например, пищалка работает синхронно с мигалкой. Это чуть упрощает программу.
Естественно, всё разбиваем на отдельные функции (мигалка, звук, поворот, движение вперед и так далее). Если так не делать, то потом уже не разобраться, что откуда и куда.
Нюансы педагогики
Все, что было описано выше, я делал в свободное время по вечерам. В неспешном режиме я потратил на робота где-то недели три. На этом можно было бы и завершиться, но я еще обещал вам рассказать о работе с ребенком. Что выполнимо в таком возрасте?
Работа по инструкции
Каждую деталь мы сначала проверяли отдельно — светодиоды, пищалка, моторы, датчики и т. д. Есть большое количество готовых примеров — какие-то прямо в среде разработки, другие можно найти в интернете. Это, несомненно, радует. Берем код, подключаем деталь, убеждаемся, что работает, далее уже начинаем изменять под свою задачу. Подключения по схеме и под некоторым моим контролем ребенок делает сам. Это хорошо. Работать четко по инструкции тоже надо уметь.
Порядок работы («от частного к общему»)
Вот это сложный пункт. Нужно приучать, что большой проект («сделать робота») состоит из мелких задач («подключить датчик», «подключить моторы». ), а те, в свою очередь, из еще более мелких шагов («найти программу», «подключить плату», «загрузить прошивку». ). Выполняя более-менее понятные задачи нижнего уровня, мы «закрываем» задачи среднего уровня, а из них уже складывается общий результат. Объяснял, но, думаю, осознание придет еще не скоро. Где-то, наверное, к подростковому возрасту.
Сверление, резьбы, винты, гайки, пайка и запах канифоли — куда же без этого. Ребенок получил базовый скилл «Работа с паяльником» — удалось спаять несколько соединений (я чуть-чуть помогал, не скрою). Не забывайте про объяснение техники безопасности.
Работа на компьютере
Программу для робота писал я, но каких-то попутных результатов все-таки удалось достичь.
Первое: английский. В школе его только-только начали, поэтому мы «со скрипом» разбирали, что такое pishalka, migalka, yarkost и прочий транслит. Поняли хотя бы это. Я осознанно не стал использовать родные английские слова, так как до этого уровня мы еще не дошли.
Второе: эффективная работа. Учили горячие комбинации клавиш, как быстро выполнять типовые операции. Периодически, когда писали программу, мы менялись с сыном местами, и я говорил, что нужно сделать (замену, поиск и т.д.). Приходилось повторять снова и снова: «выдели двойным кликом», «зажми Shift», «зажми Ctrl» и так далее. Процесс обучения здесь не быстрый, но, я думаю, навыки постепенно отложатся «в подкорку».
Третье: слепая печать. Комментарии в коде я доверил печатать ребенку (пусть тренируется). Сразу поставили правильно руки, чтобы пальцы постепенно запоминали расположение клавиш.
Как видите, у нас все еще только-только начинается. Навыки и знания будем оттачивать и дальше, в жизни пригодятся.
Кстати, про перспективу…
Дальнейшее развитие
Робот сделан, ездит, мигает и пищит. Что же теперь? Воодушевившись достигнутым, мы планируем дорабатывать его дальше. Есть задумка сделать дистанционное управление — по типу лунохода. Было бы интересно, сидя за условным пультом, контролировать движение робота, который ездит совсем в другом месте. Но это уже будет отдельная история…
И в конце, собственно, герои этой статьи (видео по клику):
Источник