Манипулятор для робота Arduino + FreeCad, часть 4 Леонид Захаров's blog / 31.05.2016 Продолжая создавать узлы и механизмы для роботов Arduino, я решил построить захват для алюминиевой баночки из-под безалкогольного напитка, с использованием одной сервомашинки. В итоге получился механизм, нарисованный в редакторе FreeCad, распечатанный на 3D принтере, собранный с помощью саморезов 2,5х10мм и 2х10мм. В качестве датчика были использованы излучатель и приемник от датчика линии TSRT5000. Можно было бы использовать просто датчик без переделок, но хотелось, чтобы он работал, даже если банка будет черной. Надо признаться, что эксперимент с датчиком не слишком удачен. Мощность излучателя недостаточна, поэтому разница между показаниями невысока, однако работает неплохо (см. видео). Еще один нюанс: детали из пластика PLA достаточно «скользкие», поэтому баночка выскальзывала из захватов. Вопрос решился достаточно просто — подклейкой на внутренней поверхности захватов небольших кусочков мелкой шкурки.Во время создания механизма в редакторе я использовал приемы, которые ранее не описывал, поэтому заодно решил осветить и этот вопрос.Во-первых, рассмотрим, насколько удобно создавать детали на одном общем чертеже всего механизма. В этом случае можно смело рисовать механизм «на глазок», так как единственный важный размер — это диаметр баночки.Во-вторых, отметим, что иногда удобно для изменения положения элемента чертежа использовать полярные координаты.При описании постройки предполагается, что читатели уже пробовали свои силы в создании деталей с помощью редактора FreeCad, а также изучил мои предыдущие статьи на эту тему:Основы работы в 3D редакторе FreeCAD. Часть 1Основы работы в 3D редакторе FreeCAD. Часть 2Основы работы в 3D редакторе FreeCad. Часть 3Предполагается также, что установлен плагин FCGear. Итак, запустим FreeCad, выберем рабочий стол Part и приступим:Создадим Цилиндр: R=33мм, H=10мм, Angle (A) =135.Создадим Цилиндр001: R=43мм, H=10мм, Angle (A) =135 (рис 01).Выполним: Цилиндр001 - Цилиндр = Cut.Продублируем Cut, получим Cut001.Повернем Cut001 на угол, равный -135 градусов (рис 02).Переключим рабочий стол (верстак) на Gear и создадим шестерню InvoluteGear: H=10мм, Teeth=24 (рис 03).Переключим рабочий стол (верстак) на Part и изменим положение шестерни InvoluteGear: Х=46мм.Продублируем шестерню, получим InvoluteGear001.Изменим положение шестерни InvoluteGear, повернув ее на угол 15 градусов вокруг оси Z, изменив координату центра вращения: Х=-46мм, то есть именно на то расстояние, на которое мы смещали шестерню относительно центра координат (рис 04).Сделаем то же самое с InvoluteGear001, только повернем ее в противоположную сторону, на угол -15 градусов.Как видите, зуб попадает на зуб, поэтому повернем шестерню InvoluteGear001, только теперь уже вокруг своей оси. Во-первых, мы видим, что наши углы поворота пересчитаны в координаты X и Y, только поворот стоит вокруг некоего центра координат. Поэтому выбираем ось Z и добавляем еще 7 градусов (рис 05). Все это мы делаем «на глазок», в конце-концов мы создаем собственное устройство и основным размером для нас является только внутренний диаметр захвата.Теперь отрежем лишнее от захватов, тоже «на глазок»: Создадим Куб: L=13мм, W=8,5мм, H=10мм, изменим положение: X=31мм.Создадим Куб001: L=13мм, W=8,5мм, H=10мм, изменим положение: X=31мм, Y=-8,5мм.Выполним: Cut — Куб = Cut002.Выполним: Cut001 — Куб001 = Cut003.Выполним: Cut002 + InvoluteGear = Fusion.Выполним: Cut003 + InvoluteGear001 = Fusion001 (рис 06).Продолжим пользоваться поворотом вокруг осей, смещая центр поворота:Создадим Цилиндр004: R=5мм, H=10мм, изменим положение: Х=38мм, установим центр поворота: Х=-38мм, повернем вокруг Z на 135 градусов (рис 07).Создадим Цилиндр005: R=5мм, H=10мм, изменим положение: Х=38мм, установим центр поворота: Х=-38мм, повернем вокруг Z на -135 градусов.Создадим Цилиндр006: R=5мм, H=16мм, изменим положение: Х=46мм, установим центр поворота: Х=-46мм, повернем вокруг Z на 15 градусов.Создадим Цилиндр007: R=5мм, H=10мм, изменим положение: Х=46мм, установим центр поворота: Х=-46мм, повернем вокруг Z на -15 градусов (рис 08).Создадим Куб001: L=6мм, W=20,5мм, H=6мм, изменим положение: X=41,4мм, Y=1,5мм, Z=10мм.Создадим Цилиндр008: R=1,1мм, H=23мм, изменим положение: Х=44,5мм, Y=24мм, Z=13мм, повернем вокруг Х на 90 градусов (рис 09).Выполним: Fusion + Цилиндр004 + Куб002= Fusion002.Выполним: Цилиндр006 + Цилиндр008 = Fusion003.Выполним: Fusion002 - Fusion003 = Cut004 (рис 10).Выполним: Fusion001 + Цилиндр005 = Fusion004.Выполним: Fusion004 - Цилиндр007 = Cut005.Теперь получилось две необходимые нам детали, которые мы подогнали друг к другу. Не менее важно подогнать под эти детали подставку с осями, на которых захваты будут вращаться.Поэтому нарисуем на этом же чертеже еще одну деталь — оси. Не забываем оставить необходимые допуски.Создадим Цилиндр009: R=4,8мм, H=10,6мм,Создадим Цилиндр010: R=5,8мм, H=1мм, изменим положение: Z=-1ммСоздадим Цилиндр011: R=1,1мм, H=11мм,Выполним: Цилиндр009 + Цилиндр010 = Fusion005.Выполним: Fusion005 - Цилиндр011 = Cut006.Продублируем Cut006, получим Cut007.Изменим положение: Cut006: Х=46мм, установим центр поворота: Х=-46мм, повернем вокруг Z на -15 градусов. (рис 11)«Раскроем» Cut007 и изменим параметры: Цилиндр012: H=16,6мм, Цилиндр014: H=17мм.Изменим положение Cut007: Х=46мм, установим центр поворота: Х=-46мм, повернем вокруг Z на 15 градусов.Выполним: Cut006 + Cut007 = Fusion007. (рис 12).Теперь у нас есть и часть третьей детали. Сохраняем проект.Далее есть два пути. Можно продолжать дальше, пристраивая снизу к осям, на которых будут вращаться захваты необходимую нам платформу, продолжая этот общий чертеж механизма, просто потом экспортируя в stl-файл каждую деталь отдельно. Но можно удалить оба захвата, сохранить файл под другим именем и работать с платформой отдельно.Создание всего механизма рассматривать далее не будем, потому что ничего нового для построения не используется, однако если кому-то интересна конструкция для изготовления, могу выложить stl-файлы всех деталей в комментариях. 3D моделирование 3D принтер 3d модель 3d редактор arduino технопарк