8 способов создания отверстий в Blender
Из этого урока Вы узнаете 8 различных техник создания отверстий в blender. В уроке будет показано, как создавать отверстия на плоских объектах, объемных, с помощью модификаторов и кривых.
7 комментариев на «“8 способов создания отверстий в Blender”»
А как же способ создание отверстия сабсёрфом? (:sly:)
Способ №9: если предусмотрено использование модификатора сабсерф в том мэше, где будет отверстие
1) Квадратную (к примеру) грань подразделяем с числом разрезов =2 (получится 9 граней).
2) Удаляем центральную грань.
3) Вышеобозначенный модификатор с количеством подразделений от 2 и выше будет преобразовывать квадратное отверстие в круглое с приемлемой детализацией.
Кстати, тем, кому не нравится округление от сабсёрфа, можно сделать фаску по краям.
Очень удобно вырезать отверстие инструментом Knife project (разрезать по проекции). И думать не надо)
[…] Нижняя строка модификатор Subdivision Surface с уровнем 1: Добавление отверстий на плоской […]
Я плакать буду.Я делал отверстия незная этого урока и так мучался. Ну а теперь буду в курсе. Спасибо.
Способ №10 для цилиндра.
1) Делаем проекцию окружности на цилиндр, как в седьмом способе.
2) Выделяем проекцию, затем выделяем цилиндр.
3) Переходим в режим редактирования, жмем Knife Project в левом меню в Tools->Transform.
4) Удаляем внутренние грани.
По сути тот же восьмой способ, только без ручной работы.
Неплохой обзор на инструменты вырезки.
Спасибо!
Авторизация
Рубрики
О сайте
На данном сайте Вы сможете найти множество уроков и материалов по графическому
редактору Blender.
Контакты
Для связи с администрацией сайта Вы можете воспользоваться следующими контактами:
Следите за нами
Подписывайтесь на наши страницы в социальных сетях.
На сайте Blender3D собрано огромное количество уроков по программе трехмерного моделирования Blender. Обучающие материалы представлены как в формате видеоуроков, так и в текстовом виде. Здесь затронуты все аспекты, связанные с Blender, начиная от моделирования и заканчивая созданием игр с применением языка программирования Python.
Помимо уроков по Blender, Вы сможете найти готовые 3D-модели, материалы и архивы высококачественных текстур. Сайт регулярно пополняется новым контентом и следит за развитием Blender.
Knife
The Knife tool can be used to interactively subdivide (cut up) geometry by drawing lines or closed loops to create holes.
Usage
When using Knife, the cursor changes to an icon of a scalpel and the header changes to display options for the tool. You can draw connected straight lines by clicking LMB , marked with small green squares. Red squares are already defined cuts. Surrounding red squares mean that there is a cut already in that position, so no additional vertex will be created (besides the first one).
If multiple objects are selected before entering Edit Mode, then knife cuts will affect all of those objects.
Mesh before knife cut.
Knife cut active.
After confirming knife cut.
Tool Settings
Only cut geometry visible on screen.
Only Selected Shift — K
Only cuts through selected geometry.
Show cut points on non-visible geometry too, when Occlude Geometry is deactivated.
Which visible measurements to show.
Distance, Angle, None, Both
Whether or not dragged lines should be constrained to particular angles, and if so, which coordinate system the angle is relative to.
None, Screen, Relative
Angle Snapping Increment
When angle snapping is on, the angle will be constrained to a multiple of this angle.
Controls
Confirms the cut. Return will leave selected every edge except the new edges created from the cut.
Cancels the cut.
Draw a Continuous Line LMB drag.
So you can draw a free-hand line over a surface, points will be created at edge intersections.
Close Loop double-click LMB
This is a quick way to close the loop you are currently cutting.
Begins a new cut. This allows you to define multiple distinct cut lines. If multiple cuts have been defined, they are recognized as new snapping points.
Creating multiple cuts.
Result of starting new cuts while in the tool.
Hold to snap the cursor to the midpoint of edges, meaning that all cuts will be performed at the exact center of each cut edge.
Ignore Snap Ctrl
Hold to make the tool ignore snapping, unlike the default where mouse cursor snaps to near edges.
Allow the Cut tool to cut through to occluded faces, instead of only the visible ones.
Angle Constrain A
Constrains the cut line to certain degree increments. The increment can be specified in the Tool Settings (see above), or can be typed when angle constraining is active. The default angles are in the plane of the screen, but typing A again makes it relative to the last cut edge. If the last cut edge is ambiguous (because the cut was on a vertex), typing R cycles through the possible reference edges.
Constraining cut angle.
Result of constraining cut angle.
Constrains the cut line to one of the coordinate system axes. Initially it will be the global axis with the given name, but pressing the same key again switches to the object’s local axis system. Additionally, if the scene transformation orientation is set to a custom orientation (e.g. from a face), the constraints will be in that coordinate system.
Visible Measurements S
Shows measurements of the cuts being made: angles with respect to a mesh edge, lengths, or both. Pressing S repeatedly cycles between what can be shown.
Only Distance, Only Angles, Both, None
Both Angles and Distance.
Undoes the previous cut segment. The starting point for the next cut is adjusted accordingly. If a cut is a drag cut, the entire drag cut is undone.
Toggles whether or not cuts to segments behind the visible geometry are shown.
Known Limitations
Duplicate Vertices
If you experience problems where duplicate vertices are being created by cuts, this is often caused by too large a near/far clipping range.
Try increasing the Clip Start to avoid this problem, see Depth Troubleshooting for details.
Unconnected Cuts
Cuts that begin or end in the middle of a face, will be ignored.
This is constrained by the kinds of geometry Blender can represent.
© Copyright : This page is licensed under a CC-BY-SA 4.0 Int. License. Last updated on 11/27/2022.
Как сделать отверстие в блендере

Простое создание отверстий в мешах в Blender




Как сделать отверстие в цилиндре blender
3D Blender уроки моделирования Как вырезать в кубе цилиндрическое отверстие


Простое создание отверстий в мешах в Blender




Object Mode and Edit Mode

You can make a planar mesh three-dimensional by moving one or more of the vertices out of its plane (applies to Plane, Circle and Grid). A simple circle is often used as a starting point to create even the most complex of meshes.
These options can be specified in the Adjust Last Operation panel, which appears when the object is created. Options included in more than one primitive are:
Generates a default UV unwrapping of new geometry. This will be defined in the first UV layer (which will get added if needed).
The standard plane is a single quad face, which is composed of four vertices, four edges, and one face. It is like a piece of paper lying on a table; it is not a three-dimensional object because it is flat and has no thickness. Objects that can be created with planes include floors, tabletops, or mirrors.
An icosphere is a polyhedral sphere made up of triangles. Icospheres are normally used to achieve a more isotropical layout of vertices than a UV sphere, in other words, they are uniform in every direction.
How many recursions are used to define the sphere. At level 1 the icosphere is an icosahedron, a solid with 20 equilateral triangular faces. Each increase in the number of subdivisions splits each triangular face into four triangles.
Subdividing an icosphere raises the vertex count very quickly even with few iterations (10 times creates 5,242,880 triangles), Adding such a dense mesh is a sure way to cause the program to crash.
Sets the radius of the tip of the cone. Which will create a frustum (a pyramid or cone with the top cut off). A value of 0 will produce a standard cone shape.
A doughnut-shaped primitive created by rotating a circle around an axis. The overall dimensions can be defined by two methods.
Number of segments for the main ring of the torus. If you think of a torus as a «spin» operation around an axis, this is how many steps are in the spin.
Radius of the torus“ cross section.
This adds a stylized monkey head to use as a test mesh, use Subdivision Surface for a refined shape.
This is intended as a test mesh, similar to:
This is a gift from old NaN to the community and is seen as a programmer’s joke or «Easter Egg». It creates a monkey’s head once you press the Monkey button. The Monkey’s name is «Suzanne» and is Blender’s mascot.
In addition to the basic geometric primitives, Blender has a number of script generated meshes to offer as pre-installed add-ons. These are available when enabled in the Preferences (select the Category Add Mesh, then check any desired items).
Приёмы работы в Blender. Часть 1



- Alt+G — сброс положения
- Alt+R — сброс вращения
- Alt+S — сброс размера
- G (Grab) — движение
- R (Rotate) — вращение (второе нажатие — второй режим вращения)
- S (Scale) — размер
- Кнопки X, Y, Z ограничивает манипуляцию только по одной оси
- Shift+X, Shift+Y, Shift+Z исключают из манипуляций выбранную ось
- « / » (View Local) (цифровая клавиатура) — режим, когда пропадают все объекты кроме выделенного
- «. » (View Selected) (цифровая клавиатура) — приблизиться к выбранному
- Home (View all) – зум, что бы всё влезло в экран
- С (Circle Select) — выбор окружностью
- B (Border Select) — выбор рамкой
- F (Face) (режим Tab) — создать полигон на основе точек, или объединить уже выбранные полигоны в один
- K (Knife) (режим Tab) — разрезать полигон
- J (Join) — объединить объекты
- P (seParate) (режим Tab) — разделить объект
- Ctrl+R (Loop cut and slide) (режим Tab) — разрезание цепочки квадратных полигонов вдоль
- Del или X > Dissolve edges / faces (режим Tab) — удаление разрезания цепочки квадратных полигонов вдоль
- E (Extrude) (режим Tab) — выдавливание
- Ctrl+B (Bevel) — фаска или скругление
- W (Specials) (режим Tab) — полезное меню с пунктами которых нигде больше нет. Мне часто нужно «Bridge edge loops» – мост между двумя цепочками граней.
- Ctrl+«+» и Ctrl+«-» (режим Tab) — прибавить в выбор соседние с уже выбранными полигоны или снять выбор с крайних полигонов
- Shift-F (Fly) — режим полёта вида, управление как в игре, W, S, A, D, E, Q



Модификаторы Subdivision Surface и Multiresolution – в чём разница?
- Утюг нужно загнать в группу Ctrl+G (Create New Group)
- Дать имя группе — «Утюг»
- Сохранить файл «Утюг»
- Открыть файл «Комната»
- Дать команду «File → Link»
- Найти файл «Утюг»
- Зайти в папку «Group» и выбрать группу «Утюг»
Подскажите как сделать отверстия в Blender
Примерное расположение отверстий и сетка модели: 

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

А можно и не удалять ничего, и сразу кнопку выдавить.
Создание печатной детали с пазами в Blender 3d
Пост предполагает, что с блендером вы хоть чуть-чуть, но знакомы.
Собсно, о чём речь:

Задача — сделать деталь с фигурными пазами в Блендере так, чтобы она после печати вставлялась в пазы без доведения молотком, напильником или силушкой богатырской. Размер детали, как вы видите, 2 сантиметра.
Вообще, по-хорошему, такое делать надо в Fusion, но после бодания с Fusion 360, я умудрился словить в ней глюк с вытягиванием фигурных поверхностей, выяснил, что Autodesk отменил Хобби-лицензию, и конечный результат всё равно вставлялся очень и очень туго. Поэтому плюнул, и по старинке блендером, без удобных параметрических кривых. Получилось неплохо.
И так. Как это делается.
Моделим ДЫРКУ резьбы через subdivision surface, simple deform, solidify (comlex) и вычитаем из желаемого булевскими операциями. Затем пилим на два объекта.
Во-первых, очень желательно поставить единицы измерения в миллиметры. Делается это так:

Далее, булевскими операциями делаем бублик цилиндр с дыркой.
Для этого делаем большой цилиндр, в котором будем делать дырку, и тонкий и длинный цилиндр, которым будем делать дырку. Деталь создаём без резьбы (Shft+A->Mesh->Cylinder). При исполнении команды всплывает окно с настройками, выставляем там нужное число сегментов и параметры.
И да, просмотр решётки включается/выключается Shift+Z, и фокус на объект (зумим в камеру, чтобы его стало видно), делается точкой на numpad клавиатуре.
Процесс выглядит вот так:

Сегментов делаем много, чтобы на принте не была видна ребристость. Получается «волчок». Из диска волчка вычитаем ось волчка, добавлением булевского модификатора на большой цилиндр. (Modifiers —> Add Modifier —> Boolean). Получается бублик. Ось волчка прячем, чтобы не закрывала вид.
Процесс выглядит вот так:

Теперь, самая интересная часть.
Моделим «резьбу».
Для этого делаем, например, круг (Shift+A->Mesh->Circle), ставим ему шесть сегментов, чтобы у нас получился шестиугольник, идём в режим редактирования (Tab), выделяем всё (A, может отличаться по настройкам), делаем Extrude (E), раздвигаем точки так, чтобы пересекало границы большого цилиндра, и получаем шестигранную призму без крышек.

Этой штукой мы будет делать ещё одну дырку в бублике. Только поскольку в детали как бы резьба и пазы. призму надо будет скрутить, и придать ей толщину. Иначе булевские операции её не возьмут.
Для этого, на призму добавляем модификатор «Subdivision Surface», который будет дробить полигоны на более мелкие, ставим максимальное количество разделений (шесть), тип поверхности простой — чтобы он не пытался её «сгладить» а просто наклепал фасок. Фасок надо много, иначе после перекрута боковые стороны останутся плоскими, и деталь просто заклинит.
Для скрктки детали на всё это кидается модификатор «simple deform», в котором мы указываем, что хотим скрутить меш по оси Z на нужное нам число градусов (в примере — 120).
После этого добавляем скрученной призме толщину, добавляя ещё один модификатор — Solidify.
Тут важный момент:
Во-первых, нужно тип генерящейся «кожи» выставить «complex», иначе результат не получится вырезать из детали.
Во-вторых, толщина должна быть равна ширине печатаемого пластика. Ну, плюс-минус. Т.е. если печатаем 0.2мм, толщину выставляем 0.2мм.
Выглядит процесс вот так:

Ну и, наконец, вычитаем дырку из детали. Добавляем на деталь модификатор «Boolean», выбираем дырку как вычитаемую деталь, и вроде как и всё. Но тут есть такой момент. Поскольку у нас деталь маленькая, скорее всего, булевскую операцию проглючит, и она сделает хрень. Чтобы это исправить, нужно Overlap Threshold выставить в ноль. Тогда модификатор вырежет дырку, как положено. После этого геометрию, которую вырезали, прячем.
Выглядит весь процесс вот так:

И, последняя манипуляция.
Берём получившуюся деталь с дыркой. Делаем её копию. Применяем все модификаторы (На каждом модифкаторе жмём стрелку вниз и выбираем Apply) и получаем меш. Переходим в режим редактирования меша (Tab), в режим любого примитива (точка — 1, рёбра — 2, фаска — 3), если что-то выделено, снимаем выделения. Затем, наводим курсор на либо внешнюю, либо на внутреннюю часть распиленной модели, жмём L (это выделит весь отрезанный кусок целиком), а затем выделяем её в отдельный объект, нажав P. Растаскиваем объекты в стороны, делаем экспорт в STL, и можно печатать.
Выглядит процесс вот так:

Делается всё очень быстро, но описывать процесс муторно.
Готовая деталь выглядит приблизительно вот так и вставляется в пазы:


Затеялось это всё ради эксперимента, так как я уже пару раз напарывался на печатные готовые предметы где резьба была неточно подогнана и её требовалось масштабирваь перед печатью. Изначально хотел всё сделать в Fusion, но выяснилось, что Fusion глючит при попытке сделать Sweep скетча с офсетными кривыми, и кроме того, я не смог быстро найти функцию, которая позволила бы сделать из двухмерного счетка ЛИСТ материала с заданной толщиной. Такая функция там, возможно и есть, но я её не нашёл.
Подход с использованием модификатора Solidify, в принципе, должен позволять делать пазы с любыми деталями произвольной формы. Также возможно, что нет смысла ставить толщину дырки равной толщине печатного слоя, и можно чуть-чуть поменьше, т.к. она чуть-чуть болтается.
Но вот, в принципе, и всё.

1.8K поста 10.3K подписчика
Правила сообщества
Запрещено хамство и оскорбления, уважайте чужой опыт и труд
Имхо сложно и долго. Вот почти тоже, но с двумя модификаторами: boolean и lattice. Зазор подгонялся тупо скейлом на 0,95

По поводу «а зачем так, можно же подогнать масштабированием».
«Так» сделано для того, чтобы можно было сделать легко вырез любой формы с первой попытки. Примеры. Защёлкнулась с первого раза без доведения напильником. Поскольку модель частично параметрическая, будет очень легко переделать под др толщину слоя и т.д.





Восстановление модели ГАЗ-24 "Волга" с помощью 3D технологий. Часть 4
Всем привет! Я продолжаю восстановление советских моделей из коллекции моделиста И.
Героем публикации вновь станет модель автомобиля ГАЗ-24 «Волга» (по счёту это уже четвёртый проект по восстановлению Волжанок), но немного с другими запросами под восстановление.
История с моделькой началась в 1987 году. Её подарили моему заказчику, когда он пошёл в 1-й класс. Конечно, с ней связана масса воспоминаний, но, увы, время и детские руки модель не пощадили. Поэтому я поспешу взбодрить и этого пациента!
Модель приехала ко мне в таком виде:
❌ Деформирована задняя ось;
❌ Отсутствует рулевое колесо;
❌ Сломаны оба задних фонаря;

❌ Отсутствует колпак на левом заднем колесе;
❌ Сколы краски на кузовных деталях;
❌ Загрязнения разного рода.

Модель «Волги» постномерная, и, на мой взгляд, очень красивого цвета. Если объяснить на пальцах, то отличия от номерной модели (А14) тут следующие:
✔️ Крепление боковых дверей происходит уже не в отверстия в донышке, а в пластиковую деталь салона.
✔️ Имеется накладка в багажное пространство.
✔️ Ручка переключения КП сделала воедино с половинкой детали, имитирующей двигатель.
«Волга» была разобрана, а все детали тщательно промыты. ⚠️ При разборке стараемся не прикладывать больших усилий, чтобы не повредить детали.

Для осуществления работы, в CAD-редакторе было спроектировано рулевое колесо. Я решил слегка доработать геометрию руля и сделать сферообразные выступы на его обратной стороне.
Кстати, этот руль универсальный и подходит не только для ГАЗ-24 и ГАЗ-24-02, но и для микроавтобуса РАФ-2203.

А Задний фонарь вам уже хорошо знаком. Это уже четвёртая по счёту «Волга», для которой я буду печатать комплект новеньких (малых) задних фонарей.
Внимание, спойлер! Для следующего проекта — восстановления ГАЗ-24-02 — Эскорт, фонари будут уже другого размера!

Далее, в прикладной программе для 3D-принтера был создан управляющий файл, где я задал пространственное расположение деталей, построил необходимые поддержки и определил количество деталей.
Печать осуществлялась на фотополимерном принтере Photon mono 4K от Anycubik из двух разных смол линейки Basic: Green — для рулевого колеса и Clear для задних фонарей.
После печати, детали не забываем промыть и окончательно полимеризовать УФ-излучением .
А вот и результат печати ⬇️.


Теперь детали нужно окрасить. TAMIYA нам в помощь:
Для рулевого колеса я применил черную эмалевую краску X-1 Black а сверху прошёлся лаком Х-22 Clear.
для задних фонарей я использовал оранжевый лак LP-53.

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

Деформированую ось я заменил на шпильку (заранее укоротил её до нужной длины). С одной стороны у шпильки имеется аккуратная шляпка, которая прекрасно фиксирует колёсный диск. А с другой стороны шпильки я напаял небольшой шарик из припоя ПОС-61. Далее, это дело без проблем закрывается хромированным колпаком.

Итак, «Волга» доукомплектована распечатанными на 3D-приниере рулём и задними фонарями, а из хомяковских запасов я выделил недостающий хромированный колпак.
Кто найдёт ошибку на фото ниже? Какую деталь я упустил из вида 😉? Причём, заметил я это только на этапе сборки с мыслью: «что-то здесь не так!».

Конечно, я забыл озвучить, что у Волги стояли задние бампера от универсала ГАЗ-24-02! Поэтому, заменим его на подходящий!

А теперь, чтобы придать «Волге» окончательный вид, нужно устранить сколы краски на кузовных элементах. Для этого я использовал смесь эмалевых красок от TAMIYA: X-14 Sky Blue, X-5 Green и X-1 White.

Вот так, получилось взбодрить и вернуть модель «дварцатьчетвёрки» в строй благодаря 3D-печати и парочке приёмов в рамках работ по восстановлению и реставрации. А фотографии ниже скажут о результате работ немного больше 😉


P. S. После успешной реализации проекта по воссозданию электрифицированной «Чайки» ГАЗ-13, у меня уже закрадываются мысли, а не попробовать ли электрифицировать и другие саратовские модели 🤔? А как считаете вы: будут ли такие проекты интересными?
А пока, я в вами прощаюсь. Всем добра и хорошего настроения.
С уважением, Сержик Моделист.

Поезд


Шприцевой насос или как я себя занимал во время болезни
Прежде чем рассказать о шприцевом насосе начну немного издалека, о том, что побудило меня заняться рукоделием

К моему большому огорчению этой осенью я обнаружил у себя опухоль на корне языка. Глубоко в душе надеялся, что пронесёт, и мне показалось, но не пронесло, буквально через день был диагноз — рак горла 3 ст. Потом оказалось, что первая, а чуть позже вторая, т.к. это понятие чисто субъективное. Начал лечение, сначала 5 курсов химии, не помогло, потом операция в январе, а теперь таргетная и лучевая, как говорят для закрепления результатов операции, чтобы не было рецидива. Жесть как неприятно и долго. Отнимает много сил и времени. После операции еще не все устаканилось, глотать я пока не научился, отчасти из-за этого горло мне временно отключили, глотать, говорить, втягивать сопли носом и ощущать запахи я не могу. Дышу через трахеостому.

Питаюсь через назогастральный зонд. Это такая тонкая трубочка как на фото ниже, диаметром примерно 4,7 мм, которая идет через нос в желудок

Еда подается через шприц Жане, это в основном шприцы на 150-200 мл. Через такую тонкую трубку много не съешь, а главное — еду надо вводить неспеша как при обычном питании, мы же не за 5 секунд порцию поглощаем, а шприцом это делать медленно тяжело и скучно, еда густая, рассчитать усилие непросто. Я как как бывший сисадмин ленивый, поэтому решил сделать приспособу которая меня будет кормить в буквальном смысле — шприцевой насос.
После модернизации своего Сапфира (3д принтер) у меня осталось много разного железа подходящего для сооружения такой помпы — шаговый двигатель, драйвера россыпью, ходовой винт, нашлась ардуина и прочая рассыпуха. Погуглил там, сям, посмотрел на thingiverse. Готового решения не нашел, но вдохновился идеями и решил делать сам. Времени до госпитализации на лучевую терапию оставалось 5-6 дней.
За ночь набросал проект в 3D редакторе

Начал печатать. Кое-что приходилось корректировать по месту, т.к. печать — самое затратное по времени мероприятие.До конца не знал каким у меня будет пульт управления, ну и всю электронику и софт отложил на последние дни. К слову сказать промежуточных фото у меня нет, из-за дефицита времени. Поэтому прошу прощения пост из серии — как нарисовать сову.
Думал сделать на ардуино, но у меня оказалась одна палата Arduino Nano которая была прошита скетчем печатающим в бесконечном цикле слово «Test» в последовательный порт. Быстро найти решение как прошить плату у которой с момента загрузки занят порт, я не нашел. Попробовал перепаять проц ( у меня их есть с десяток) не вышло, не завелось, подозреваю надо было хорошо отмыть флюс в ацетоне, но мне негде и времени на эксперименты не оставалось. Поэтому взял за основу ESP8266, а конкретно Wemos D3 mini. Собрал схему на бредборде, залил туда ESPHome, можете называть меня извращенцем, но я его знаю, а времени у меня не было. Все завелось с первого раза. Перенес все на две макетных платы 60х40 мм, одна с дисплеем и органами управления — энкодер и 2 тактовых кнопки. Вторая с драйвером TMC2208, Wemos и понижайкой для питания последней, т.к. драйвер переваривает от 8 до 36 вольт. Не сочтите за мажорство, я пробовал драйвера 4988 и LV8825 не понравились, первый откровенно дергает и громко шумит, второй получше, а вот 2208 просто идеал — крутит тихо и равномерно.
По поводу софта — для тех кто не знает ESPHome ( esphome.io ) , это часть умного дома Home Assistant которая использует за основу ESP , умеет общаться со множеством периферии, поддерживает самописные модули на С++. Кода как такового нет, работа модуля описывается конфигом на yaml который к моему счастью умеет в лямбды и скрипты. Выглядит примерно так

За код дисплея не бросайте в меня камнями, с точки зрения оптимизации он не эффективен (каждый раз проходится по всем условиям if, хотя сработать должно только одно) , но зато понятен и безглючен, а это для меня важнее.
В устройстве реализованы следующие фичи:
Рабочий ход со скоростью от 1 до 5000 импульсов за секунду
Обратный ход со скоростью от 1 до 5000 импульсов за секунду
Быстрый возврат по двойному клику с максимальной скоростью
Регулирование скорости и останов происходит при помощи энкодера. Вращение — регулировка, нажатие — стоп.
Оставлен доступ по WiFi можно посмотреть такие параметры как скорость, состояние кнопок и энкодера. А главное — можно заменить прошивку по OTA.
Видео основного процесса
Несколько фото с разных ракурсов




Если кого-то заинтересует, выложу со временем исходники на thingiverse, подскажу, если будут вопросы.


