A2plus Workbench/ru

Введение
Верстак A2plus - это внешний верстак для создания сборок деталей в FreeCAD.

Эта документация описывает версию A2plus 0.4.10 или новее.

Установка
Верстак A2plus - это дополнение к FreeCAD. Его легко установить через меню. A2plus находится в стадии активной разработки и будет часто получать новые функции. Поэтому вы должны регулярно обновлять его, используя меню. Код A2plus размещается и разрабатывается на GitHub, а также может быть установлен вручную путем копирования его в каталог MOD FreeCAD.

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

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

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

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

Сборка
Сборка деталей осуществляется путем добавления ограничений между деталями. После введения ограничения A2plus переместит детали в соответствии с ограничением, если это возможно. Для сложных ограничений между частями A2plus может не справится с расположением деталей. Поэтому также ознакомьтесь с разделом Устранение неполадок, чтобы узнать, как решить такие случаи.

Ограничения между деталями добавляются удерживанием клавиши и выбором ребра или грани двух частей. Ограничение будет добавлено в дереве модели к выделенным деталям.

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


 * Чтобы переместить деталь в сборке, выберите ее в дереве модели и используйте кнопку на панели инструментов [[Image: A2p MovePart.svg|24px]]. Когда вы разместите деталь там, где вам это нравится, щелкните левой кнопкой мыши. Если перемещенная деталь уже имеет ограничения, она будет размещена соответствующим образом при нажатии кнопки на панели инструментов [[Image: A2p solver.svg|24px]], потому что это инициирует разрешение всех ограничений сборки.
 * Чтобы отобразить ограничение, выберите его в дереве модели и используйте кнопку на панели инструментов [[Image: A2p ViewConnection.svg|24px]]. Это сделает всю сборку прозрачной и выделит две вещи, которые связаны в ограничении. Чтобы вернуться к обычному виду, щелкните левой кнопкой мыши по сборке.
 * Чтобы показать только определенные детали в сборке, выберите эти детали в дереве модели и используйте кнопку на панели инструментов [[Image: A2p Isolate Element.svg|24px]]. В качестве альтернативы вы можете скрыть определенную деталь, выбрав ее в дереве модели и нажав, чтобы переключить ее видимость.
 * Для переключения вида прозрачности всей сборки вы можете использовать кнопку панели инструментов [[Image: A2p ToggleTransparency.svg|24px]].

Ограничения
При создании ограничения, после нажатия кнопки на панели инструментов ограничения, такой диалог будет отображаться :. Для определенных ограничений это позволяет вам изменить направление ограничения. С помощью кнопки вы можете заранее проверить, может ли это новое ограничение быть решено с помощью A2plus. Если нет, загляните в раздел Устранение неполадок.

A2plus поддерживает следующие ограничения:

Точка на точке
Выберите Вершины (точки) в каждой детали. Кнопка на панели инструментов добавляет ограничение. Это сделает точки совпадающими.

Точка на линии
Выберите вершину (точку), или край окружности (выберет ее центр), или поверхность сферы (также выберет ее центр) и край детали. Кнопка на панели инструментов добавляет ограничение. Это поместит точку на край.

Точка на плоскости
Выберите вершину (точку), или край окружности (выберет ее центр), или поверхность сферы (также выберет ее центр) и плоскость. Кнопка на панели инструментов добавляет ограничение. Диалог ограничений позволяет указать смещение между точкой и плоскостью. Это смещение также можно переключать между обеими сторонами плоскости. Если смещение равно нулю, ограничение поместит вершину на плоскость.

Сфера на Сфере
Выберите поверхность сфер или вершины (точки) на обеих деталях. Кнопка на панели инструментов добавляет ограничение. Это совместит центры сфер, центр сферы и точку, либо вершины.

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

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

Параллельные оси
Выберите поверхность сферы или края линий на обеих частях. Кнопка на панели инструментов добавляет ограничение. Диалог ограничений позволяет указать направление оси. Ограничение сделает оси или линии параллельными.

Ось на Плоскости
Выберите поверхность цилиндра или  края линии и плоскость. Кнопка на панели инструментов добавляет ограничение. Ограничение сделает ось или линию параллельной плоскости.

Плоскости Параллельны
Выберите две плоскости. Кнопка на панели инструментов добавляет ограничение. Диалог ограничений позволяет вам указать направление ограничения. Ограничение сделает плоскости параллельными.

Плоскость на Плоскости
Выберите две плоскости. Кнопка на панели инструментов добавляет ограничение. Диалог ограничений позволяет указать направление ограничения и смещение между плоскостями. Это смещение также можно перевернуть. Если смещение равно нулю, ограничение сделает плоскости совпадающими.

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

Совпадение в Центре масс
Выберите либо две замкнутые области, либо две плоскости. Кнопка на панели инструментов добавляет ограничение. Диалог ограничений позволяет указать смещение между краями или плоскостями. Это смещение также можно перевернуть. Кроме того, вы можете установить направление ограничения и заблокировать вращение частей. Если смещение равно нулю, ограничение поместит области или плоскости в одну плоскость.

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

Обработка ограничений
Возможные ограничения для выбора отображаются на панели инструментов и в диалоговом окне «Инструменты ограничения» при включении соответствующих кнопок. Диалоговое окно «Инструменты ограничения» открывается с помощью кнопки панели инструментов. Он должен оставаться открытым, чтобы можно было быстро добавить несколько ограничений в сборку.

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

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

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

Кнопка на панели инструментов влияет на ограничение, которое было недавно добавлено. Это переворачивает направление ограничения.

Списки деталей
Чтобы создать списки деталей сборок, разные детали сборки должны получить информацию о детали, которая может быть прочитана A2plus. Это делается путем редактирования детали с помощью кнопки на панели инструментов. В открывшейся части нажмите кнопку панели инструментов и  электронная таблица с именем #PARTINFO#.

Структура электронной таблицы выглядит следующим образом:



Заполните серые поля имеющейся информацией. Эта информация будет отображена в окончательном списке деталей.

В сборке или узле сборки используйте кнопку на панели инструментов. Он спросит вас, хотите ли вы выполнить рекурсивную итерацию по всем узлам сборки. Нажмите «Да». Это создаст новую электронную таблицу с именем #PARTSLIST#. Он содержит информацию из различных электронных таблиц PARSTINFO# деталей в списке в виде:



Положение (POS) автоматически устанавливается в соответствии с внешним видом деталей в дереве модели. Часть верхнего уровня получит POS 1. Количество (QTY) автоматически рассчитывается из сборки. Если в сборке находится две детали, то QTY будет равно 2.

Если вы обновили информацию о детали, вы можете обновить список деталей, снова нажав кнопку на панели инструментов.

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

Структура сборки
Кнопка на панели инструментов создает файл HTML со структурой вашей сборки. Файл по умолчанию будет создан в текущем каталоге вашей сборки. Структура выглядит следующим образом:

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

Метки деталей
Кнопка присваивает каждой детали сборки в 3D-виде уникальное имя. Метки деталей можно удалить кнопкой.

Вид всей сборки
Иногда необходимо объединить всю сборку в одну форму. Затем эту форму можно использовать, например, для 3D-печати в Mesh Workbench или для создания чертежей в  TechDraw Workbench. Он создается с помощью кнопки панели инструментов. Форма по умолчанию не отображается. Используйте ту же кнопку на панели инструментов, чтобы обновить форму в случае изменений в сборке.

Настройки
Доступ к настройкам a2plus можно получить через меню FreeCAD выбрав раздел «A2plus». Вы можете установить следующие параметры:

Метод решения по умолчанию

 * Использовать решения частичных систем Решатель начинает с детали, для которой свойство установлено в значение true, а часть ограничена этим. Все остальные части не рассчитываются. Если решение может быть найдено, добавляется следующая часть ограничений для расчета и так далее.
 * Использовать «магнитный» решатель, решая все детали одновременно. Решатель пытается переместить все детали сразу в направлении к детали, у которой свойство установлено в true. Обратите внимание, что в большинстве случаев это займет больше времени для расчета.
 * Принудительно фиксировать положение Для всех деталей в сборке свойство устанавливается в значение  true . Тогда никакие расчеты фактически не выполняются, поскольку все детали всегда будут привязаны к позициям, в которых они были созданы.

Поведение решателя по умолчанию

 * Решить автоматически, если изменено ограничения  Решатель будет запущен автоматически. Аналогично включению кнопки на панели инструментов [[Image: A2p ToggleAutoSolve.svg|24px]].

Поведение при обновлении импортированных деталей

 * Пересчитать импортированные детали перед их обновлением Все детали сборки, включая узлы сборок, будут открыты в FreeCAD для реконструкции с использованием значений из электронных таблиц. Эта функция предназначена для полного параметрирования конструкции. Примечание: Эта функция очень экспериментальная и не рекомендуется для важных проектов. Известные проблемы:
 * Сборка может быть уничтожена из-за неправильных ссылок на топологические имена в деталях
 * Основные электронные таблицы могут быть повреждены, когда они редактируются, а файл детали уже закрыт. Это может привести к краху FreeCAD.


 * 'Включить рекурсивное обновление импортированных деталей'  Открывает все узлы сборки рекурсивно для их обновления.


 * Использовать экспериментальное топологическое именование При импорте деталей в сборку алгоритм генерирует топологические имена для каждого узла сборки импортируемой фигуры. Топологические имена записываются в . Когда импортируемая деталь должна быть обновлена, эти топологические имена используются для обновления подэлементов ограничений. Таким образом, сборки становятся более устойчивыми к изменчивым числам подэлементов в FreeCAD.  'Примечание:'  Это увеличивает размеры файлов и время расчета при импорте деталей. Если необходимо использовать топологическое именование, оно должно быть активировано до создания сборки.


 * Наследовать прозрачность для каждой поверхности из деталей и узлов Использовать настройки цвета и прозрачности из импортированных деталей. Примечание: Эта функция очень экспериментальная и не рекомендуется для важных проекты.


 * Не импортировать невидимые фигуры Это позволит скрыть невидимые базовые / строительные фигуры. Примечание: Никакие ограничения не должны быть связаны с опорными / конструктивными формами в вышестоящих или других сборочных узлах. В противном случае вы можете сломать сборку.


 * Использовать сплошное объединение для импорта деталей и сборочных узлов Все импортированные детали будут напрямую объединены в объединение. Эта функция полезна для моделирования FEM или 3D-печать, если разрешено только одно тело. Альтернативой является создание позже вида всей сборки.

Настройки интерфейса пользователя

 * Показать ограничения на панели инструментов Если эта опция не используется, кнопки панели инструментов для различных ограничений не видны, чтобы сэкономить место на панели инструментов. Новые ограничения по-прежнему можно установить с помощью диалогового окна «Инструменты ограничения» (кнопка на панели инструментов [[Image: A2p DefineConstraints.svg|24px]]).

Хранение файлов

 * Использовать относительные пути для импортированных деталей Использует относительные пути к файлам деталей.
 * Использовать абсолютные пути для импортированных деталей Использует абсолютные пути к файлам деталей.
 * Все файлы находятся в этой папке проекта: Все файлы проекта должны находиться в указанной папке. Не имеет значения, находятся ли они в подпапках этой папки.  'Примечание:'  Одинаковые файлы не могут присутствовать несколько раз в папке (например, в разных подпапках). Эта опция полезна для работы на разных машинах, потому что тогда нужно только скопировать папку проекта.

Устранение неисправностей
Рано или поздно у вас возникнет проблема, что A2plus не может решить установленные вами ограничения. Чтобы преодолеть это, существуют разные стратегии:

Проверка направления ограничения
Sometimes constraints seem to be consistently defined but they can nevertheless not be solved. An example: Assume you have a constraint set for two planes. Now you want to set for the same planes the constraint and A2plus cannot solve this. Then the constraint directions of and  are different. Use the same direction for both constraints to fix this.

Удаление ограничений
Most cases of unsolvable constraints occur directly when adding a new constraint. The solution is then to delete the constraint you added the last. A2plus will also propose this.

Sometimes the deletion strategy is the only one, for example when you edited a part in FreeCAD so that faces or edges connected to constraints are missing. You should then delete one constraint after another that is connected to the changed part. Use the toolbar button after every deletion to see if you reached a solvable state.

When you got an assembly that can be solved, add step by step the constraints you need.

Перемещение деталей
In some cases the solver only needs better start values to solve the constraints. Take for example the case that you have an axle part and a wheel part. You add a constraint and get no info that the solver failed but the parts are not moved accordingly and in the Report view widget of FreeCAD you see "REACHED  POS-ACCURACY :0.0". A solution for this is to move the parts closer to that position you like to get by the constraint.

Note: Assure that at least one part of the constraint has the property set to false.

Настройка свойства Tip
If you miss some features of your part after the import to an A2plus assembly, check the property. A2plus imports bodies of parts with all their features up to the tip feature. This is sensible because setting the tip to a certain feature means that all features behind the tip should not appear in the final part. So if you miss a part feature in A2plus, open the part via the toolbar button, then select a body and look at its property. If the tip is not at the feature where you want it, right-click on the feature where the tip should be and choose. Finally save the part and reload the assembly using the toolbar button.

Восстановление дерева сборки
If you cannot see a clear reason why some constraints cannot be resolved, you can try to use the toolbar button. This will resolve all constraints and re-group then again under the different parts.

Avoiding Accented Characters
On some operating systems you can get problems if the file names or the file paths of parts or the assembly contain accented characters. Therefore avoid such characters and also special characters in general.

Fixing Position
This strategy is no longer necessary for assemblies created with A2plus 0.3.11 or newer because A2plus issues now a warning for missing fixed positions.

When you set a constraint between two parts and no part has the property set to true or is connected by a constraint to a part with  set to true, the constraint cannot be solved. The same happens if both parts of the constraint have set to true.

Then A2plus outputs the info about the failed solution, but sometimes you only see that the parts are not moved accordingly and in the Report view widget of FreeCAD you see "REACHED POS-ACCURACY :0.0". This means the solver finished without errors but it could actually not solve the constraints.

Therefore check that at least one of your parts in the assembly has set to true. Then assure that you only set constraints to a part which is somehow connected to the fixed part. To visualize these dependencies, see section Assembly Structure.

Rotating Parts
This strategy is no longer necessary for assemblies created with A2plus 0.4.0 or newer because A2plus rotates the parts now automatically a bit in the background to get a sufficient start angle for the solver.

The solver often fails for the constraint if the two selected planes have currently an angle of 0° or 180°. (The parts are not moved accordingly and in the Report view widget of FreeCAD you see "REACHED POS-ACCURACY :0.0".) A solution for this is to rotate one part by a few degrees using FreeCAD's transform feature (right-click on the part in the model tree and select in the context menu ).

Note: Assure that at least one part of the constraint has the property set to false.